PageSourceSearch

https://doloffer.com/assets/chunks/chunk-4AuopvbJ.js

js doloffer.com collected 2026-10-04 00:18:57 UTC 1,396,584 bytes, 30,683 lines download raw bytes

1import { r as Kt, R as ZL } from "./chunk-DC5fQwvS.js";
2import { a2 as qL, a3 as KL, a9 as jL, a4 as JL, a5 as QL, e as Di, V as t2, aR as e2, n as r2, av as a2 } from "./chunk-DWeE5Y0G.js";
3import { e as Mi } from "./chunk-BK_-Fl4Z.js";
4const n2 = (r) => {
5  const { value: e, formatter: t, precision: a, decimalSeparator: n, groupSeparator: i = "", prefixCls: o } = r;
6  let s;
7  if (typeof t == "function") s = t(e);
8  else {
9    const l = String(e), u = l.match(/^(-?)(\d*)(\.(\d+))?$/);
10    if (!u || l === "-") s = l;
11    else {
12      const f = u[1];
13      let h = u[2] || "0", v = u[4] || "";
14      h = h.replace(/\B(?=(\d{3})+(?!\d))/g, i), typeof a == "number" && (v = v.padEnd(a, "0").slice(0, a > 0 ? a : 0)), v && (v = `${n}${v}`), s = [Kt.createElement("span", { key: "int", className: `${o}-content-value-int` }, f, h), v && Kt.createElement("span", { key: "decimal", className: `${o}-content-value-decimal` }, v)];
15    }
16  }
17  return Kt.createElement("span", { className: `${o}-content-value` }, s);
18}, i2 = (r) => {
19  const { componentCls: e, marginXXS: t, padding: a, colorTextDescription: n, titleFontSize: i, colorTextHeading: o, contentFontSize: s, fontFamily: l } = r;
20  return { [e]: { ...jL(r), [`${e}-header`]: { paddingBottom: t, [`${e}-title`]: { color: n, fontSize: i } }, [`${e}-skeleton`]: { paddingTop: a }, [`${e}-content`]: { color: o, fontSize: s, fontFamily: l, [`${e}-content-value`]: { display: "inline-block", direction: "ltr" }, [`${e}-content-prefix, ${e}-content-suffix`]: { display: "inline-block" }, [`${e}-content-prefix`]: { marginInlineEnd: t }, [`${e}-content-suffix`]: { marginInlineStart: t } } } };
21}, o2 = (r) => {
22  const { fontSizeHeading3: e, fontSize: t } = r;
23  return { titleFontSize: t, contentFontSize: e };
24}, s2 = qL("Statistic", (r) => {
25  const e = KL(r, {});
26  return i2(e);
27}, o2), Mg = Kt.forwardRef((r, e) => {
28  const { prefixCls: t, className: a, rootClassName: n, style: i, valueStyle: o, value: s = 0, title: l, valueRender: u, prefix: f, suffix: h, loading: v = false, formatter: c, precision: p, decimalSeparator: d = ".", groupSeparator: g = ",", onMouseEnter: y, onMouseLeave: m, styles: _, classNames: S, ...b } = r, { getPrefixCls: x, direction: w, className: T, style: C, classNames: A, styles: M } = JL("statistic"), I = x("statistic", t), [L, P] = s2(I), R = { ...r, decimalSeparator: d, groupSeparator: g, loading: v, value: s }, [E, O] = QL([A, S], [M, _], { props: R }), k = Kt.createElement(n2, { decimalSeparator: d, groupSeparator: g, prefixCls: I, formatter: c, precision: p, value: s }), B = Di(I, { [`${I}-rtl`]: w === "rtl" }, T, a, n, E.root, L, P), F = Di(`${I}-header`, E.header), H = Di(`${I}-title`, E.title), U = Di(`${I}-content`, E.content), K = Di(`${I}-content-prefix`, E.prefix), J = Di(`${I}-content-suffix`, E.suffix), nt = Kt.useRef(null);
29  Kt.useImperativeHandle(e, () => ({ nativeElement: nt.current }));
30  const It = t2(b, { aria: true, data: true });
31  return Kt.createElement("div", { ...It, className: B, style: { ...O.root, ...C, ...i }, ref: nt, onMouseEnter: y, onMouseLeave: m }, l && Kt.createElement("div", { className: F, style: O.header }, Kt.createElement("div", { className: H, style: O.title }, l)), Kt.createElement(e2, { paragraph: false, loading: v, className: `${I}-skeleton`, active: true }, Kt.createElement("div", { className: U, style: { ...o, ...O.content } }, f && Kt.createElement("span", { className: K, style: O.prefix }, f), u ? u(k) : k, h && Kt.createElement("span", { className: J, style: O.suffix }, h))));
32}), l2 = [["Y", 1e3 * 60 * 60 * 24 * 365], ["M", 1e3 * 60 * 60 * 24 * 30], ["D", 1e3 * 60 * 60 * 24], ["H", 1e3 * 60 * 60], ["m", 1e3 * 60], ["s", 1e3], ["S", 1]];
33function u2(r, e) {
34  let t = r;
35  const a = /\[[^\]]*]/g, n = (e.match(a) || []).map((l) => l.slice(1, -1)), i = e.replace(a, "[]"), o = l2.reduce((l, [u, f]) => {
36    if (l.includes(u)) {
37      const h = Math.floor(t / f);
38      return t -= h * f, l.replace(new RegExp(`${u}+`, "g"), (v) => {
39        const c = v.length;
40        return h.toString().padStart(c, "0");
41      });
42    }
43    return l;
44  }, i);
45  let s = 0;
46  return o.replace(a, () => {
47    const l = n[s];
48    return s += 1, l;
49  });
50}
51function f2(r, e, t) {
52  const { format: a = "" } = e, n = new Date(r).getTime(), i = Date.now(), o = Math.max(t ? n - i : i - n, 0);
53  return u2(o, a);
54}
55const h2 = 1e3 / 60;
56function v2(r) {
57  return new Date(r).getTime();
58}
59const eT = (r) => {
60  const { value: e, format: t = "HH:mm:ss", onChange: a, onFinish: n, type: i, ...o } = r, s = i === "countdown", [l, u] = Kt.useState(null), f = r2(() => {
61    const c = Date.now(), p = v2(e);
62    u({});
63    const d = s ? p - c : c - p;
64    return a == null ? void 0 : a(d), s && p < c ? (n == null ? void 0 : n(), false) : true;
65  });
66  Kt.useEffect(() => {
67    let c;
68    const p = () => {
69      f() || window.clearInterval(c);
70    }, d = () => {
71      c = window.setInterval(p, h2);
72    }, g = () => {
73      window.clearInterval(c);
74    };
75    return d(), () => {
76      g();
77    };
78  }, [e, s]), Kt.useEffect(() => {
79    u({});
80  }, []);
81  const h = (c, p) => l ? f2(c, { ...p, format: t }, s) : "-", v = (c) => a2(c, { title: void 0 });
82  return Kt.createElement(Mg, { ...o, value: e, valueRender: v, formatter: h });
83}, c2 = (r) => Kt.createElement(eT, { ...r, type: "countdown" }), p2 = Kt.memo(c2);
84Mg.Timer = eT;
85Mg.Countdown = p2;
86var Op = function(r, e) {
87  return Op = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t, a) {
88    t.__proto__ = a;
89  } || function(t, a) {
90    for (var n in a) Object.prototype.hasOwnProperty.call(a, n) && (t[n] = a[n]);
91  }, Op(r, e);
92};
93function rT(r, e) {
94  if (typeof e != "function" && e !== null) throw new TypeError("Class extends value " + String(e) + " is not a constructor or null");
95  Op(r, e);
96  function t() {
97    this.constructor = r;
98  }
99  r.prototype = e === null ? Object.create(e) : (t.prototype = e.prototype, new t());
100}
101var ks = function() {
102  return ks = Object.assign || function(e) {
103    for (var t, a = 1, n = arguments.length; a < n; a++) {
104      t = arguments[a];
105      for (var i in t) Object.prototype.hasOwnProperty.call(t, i) && (e[i] = t[i]);
106    }
107    return e;
108  }, ks.apply(this, arguments);
109};
110function d2(r, e) {
111  var t = {};
112  for (var a in r) Object.prototype.hasOwnProperty.call(r, a) && e.indexOf(a) < 0 && (t[a] = r[a]);
113  if (r != null && typeof Object.getOwnPropertySymbols == "function") for (var n = 0, a = Object.getOwnPropertySymbols(r); n < a.length; n++) e.indexOf(a[n]) < 0 && Object.prototype.propertyIsEnumerable.call(r, a[n]) && (t[a[n]] = r[a[n]]);
114  return t;
115}
116function t0(r, e, t, a) {
117  function n(i) {
118    return i instanceof t ? i : new t(function(o) {
119      o(i);
120    });
121  }
122  return new (t || (t = Promise))(function(i, o) {
123    function s(f) {
124      try {
125        u(a.next(f));
126      } catch (h) {
127        o(h);
128      }
129    }
130    function l(f) {
131      try {
132        u(a.throw(f));
133      } catch (h) {
134        o(h);
135      }
136    }
137    function u(f) {
138      f.done ? i(f.value) : n(f.value).then(s, l);
139    }
140    u((a = a.apply(r, e || [])).next());
141  });
142}
143function e0(r, e) {
144  var t = { label: 0, sent: function() {
145    if (i[0] & 1) throw i[1];
146    return i[1];
147  }, trys: [], ops: [] }, a, n, i, o = Object.create((typeof Iterator == "function" ? Iterator : Object).prototype);
148  return o.next = s(0), o.throw = s(1), o.return = s(2), typeof Symbol == "function" && (o[Symbol.iterator] = function() {
149    return this;
150  }), o;
151  function s(u) {
152    return function(f) {
153      return l([u, f]);
154    };
155  }
156  function l(u) {
157    if (a) throw new TypeError("Generator is already executing.");
158    for (; o && (o = 0, u[0] && (t = 0)), t; ) try {
159      if (a = 1, n && (i = u[0] & 2 ? n.return : u[0] ? n.throw || ((i = n.return) && i.call(n), 0) : n.next) && !(i = i.call(n, u[1])).done) return i;
160      switch (n = 0, i && (u = [u[0] & 2, i.value]), u[0]) {
161        case 0:
162        case 1:
163          i = u;
164          break;
165        case 4:
166          return t.label++, { value: u[1], done: false };
167        case 5:
168          t.label++, n = u[1], u = [0];
169          continue;
170        case 7:
171          u = t.ops.pop(), t.trys.pop();
172          continue;
173        default:
174          if (i = t.trys, !(i = i.length > 0 && i[i.length - 1]) && (u[0] === 6 || u[0] === 2)) {
175            t = 0;
176            continue;
177          }
178          if (u[0] === 3 && (!i || u[1] > i[0] && u[1] < i[3])) {
179            t.label = u[1];
180            break;
181          }
182          if (u[0] === 6 && t.label < i[1]) {
183            t.label = i[1], i = u;
184            break;
185          }
186          if (i && t.label < i[2]) {
187            t.label = i[2], t.ops.push(u);
188            break;
189          }
190          i[2] && t.ops.pop(), t.trys.pop();
191          continue;
192      }
193      u = e.call(r, t);
194    } catch (f) {
195      u = [6, f], n = 0;
196    } finally {
197      a = i = 0;
198    }
199    if (u[0] & 5) throw u[1];
200    return { value: u[0] ? u[1] : void 0, done: true };
201  }
202}
203/*! *****************************************************************************
204Copyright (c) Microsoft Corporation.
205
206Permission to use, copy, modify, and/or distribute this software for any
207purpose with or without fee is hereby granted.
208
209THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
210REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
211AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
212INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
213LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
214OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
215PERFORMANCE OF THIS SOFTWARE.
216***************************************************************************** */
217var Np = function(r, e) {
218  return Np = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t, a) {
219    t.__proto__ = a;
220  } || function(t, a) {
221    for (var n in a) Object.prototype.hasOwnProperty.call(a, n) && (t[n] = a[n]);
222  }, Np(r, e);
223};
224function N(r, e) {
225  if (typeof e != "function" && e !== null) throw new TypeError("Class extends value " + String(e) + " is not a constructor or null");
226  Np(r, e);
227  function t() {
228    this.constructor = r;
229  }
230  r.prototype = e === null ? Object.create(e) : (t.prototype = e.prototype, new t());
231}
232var g2 = /* @__PURE__ */ function() {
233  function r() {
234    this.firefox = false, this.ie = false, this.edge = false, this.newEdge = false, this.weChat = false;
235  }
236  return r;
237}(), y2 = /* @__PURE__ */ function() {
238  function r() {
239    this.browser = new g2(), this.node = false, this.wxa = false, this.worker = false, this.svgSupported = false, this.touchEventsSupported = false, this.pointerEventsSupported = false, this.domSupported = false, this.transformSupported = false, this.transform3dSupported = false, this.hasGlobalWindow = typeof window < "u";
240  }
241  return r;
242}(), yt = new y2();
243typeof wx == "object" && typeof wx.getSystemInfoSync == "function" ? (yt.wxa = true, yt.touchEventsSupported = true) : typeof document > "u" && typeof self < "u" ? yt.worker = true : !yt.hasGlobalWindow || "Deno" in window ? (yt.node = true, yt.svgSupported = true) : m2(navigator.userAgent, yt);
244function m2(r, e) {
245  var t = e.browser, a = r.match(/Firefox\/([\d.]+)/), n = r.match(/MSIE\s([\d.]+)/) || r.match(/Trident\/.+?rv:(([\d.]+))/), i = r.match(/Edge?\/([\d.]+)/), o = /micromessenger/i.test(r);
246  a && (t.firefox = true, t.version = a[1]), n && (t.ie = true, t.version = n[1]), i && (t.edge = true, t.version = i[1], t.newEdge = +i[1].split(".")[0] > 18), o && (t.weChat = true), e.svgSupported = typeof SVGRect < "u", e.touchEventsSupported = "ontouchstart" in window && !t.ie && !t.edge, e.pointerEventsSupported = "onpointerdown" in window && (t.edge || t.ie && +t.version >= 11), e.domSupported = typeof document < "u";
247  var s = document.documentElement.style;
248  e.transform3dSupported = (t.ie && "transition" in s || t.edge || "WebKitCSSMatrix" in window && "m11" in new WebKitCSSMatrix() || "MozPerspective" in s) && !("OTransition" in s), e.transformSupported = e.transform3dSupported || t.ie && +t.version >= 9;
249}
250var Ig = 12, aT = "sans-serif", tn = Ig + "px " + aT, _2 = 20, S2 = 100, x2 = "007LLmW'55;N0500LLLLLLLLLL00NNNLzWW\\\\WQb\\0FWLg\\bWb\\WQ\\WrWWQ000CL5LLFLL0LL**F*gLLLL5F0LF\\FFF5.5N";
251function b2(r) {
252  var e = {};
253  if (typeof JSON > "u") return e;
254  for (var t = 0; t < r.length; t++) {
255    var a = String.fromCharCode(t + 32), n = (r.charCodeAt(t) - _2) / S2;
256    e[a] = n;
257  }
258  return e;
259}
260var w2 = b2(x2), Lr = { createCanvas: function() {
261  return typeof document < "u" && document.createElement("canvas");
262}, measureText: /* @__PURE__ */ function() {
263  var r, e;
264  return function(t, a) {
265    if (!r) {
266      var n = Lr.createCanvas();
267      r = n && n.getContext("2d");
268    }
269    if (r) return e !== a && (e = r.font = a || tn), r.measureText(t);
270    t = t || "", a = a || tn;
271    var i = /((?:\d+)?\.?\d*)px/.exec(a), o = i && +i[1] || Ig, s = 0;
272    if (a.indexOf("mono") >= 0) s = o * t.length;
273    else for (var l = 0; l < t.length; l++) {
274      var u = w2[t[l]];
275      s += u == null ? o : u * o;
276    }
277    return { width: s };
278  };
279}(), loadImage: function(r, e, t) {
280  var a = new Image();
281  return a.onload = e, a.onerror = t, a.src = r, a;
282} };
283function nT(r) {
284  for (var e in Lr) r[e] && (Lr[e] = r[e]);
285}
286var iT = hr(["Function", "RegExp", "Date", "Error", "CanvasGradient", "CanvasPattern", "Image", "Canvas"], function(r, e) {
287  return r["[object " + e + "]"] = true, r;
288}, {}), oT = hr(["Int8", "Uint8", "Uint8Clamped", "Int16", "Uint16", "Int32", "Uint32", "Float32", "Float64"], function(r, e) {
289  return r["[object " + e + "Array]"] = true, r;
290}, {}), Do = Object.prototype.toString, mh = Array.prototype, T2 = mh.forEach, C2 = mh.filter, Lg = mh.slice, A2 = mh.map, r0 = (function() {
291}).constructor, Jl = r0 ? r0.prototype : null, Pg = "__proto__", D2 = 2311;
292function Rg() {
293  return D2++;
294}
295function _h() {
296  for (var r = [], e = 0; e < arguments.length; e++) r[e] = arguments[e];
297  typeof console < "u" && console.error.apply(console, r);
298}
299function rt(r) {
300  if (r == null || typeof r != "object") return r;
301  var e = r, t = Do.call(r);
302  if (t === "[object Array]") {
303    if (!oo(r)) {
304      e = [];
305      for (var a = 0, n = r.length; a < n; a++) e[a] = rt(r[a]);
306    }
307  } else if (oT[t]) {
308    if (!oo(r)) {
309      var i = r.constructor;
310      if (i.from) e = i.from(r);
311      else {
312        e = new i(r.length);
313        for (var a = 0, n = r.length; a < n; a++) e[a] = r[a];
314      }
315    }
316  } else if (!iT[t] && !oo(r) && !ui(r)) {
317    e = {};
318    for (var o in r) r.hasOwnProperty(o) && o !== Pg && (e[o] = rt(r[o
318]));
319  }
320  return e;
321}
322function ut(r, e, t) {
323  if (!tt(e) || !tt(r)) return t ? rt(e) : r;
324  for (var a in e) if (e.hasOwnProperty(a) && a !== Pg) {
325    var n = r[a], i = e[a];
326    tt(i) && tt(n) && !V(i) && !V(n) && !ui(i) && !ui(n) && !Bp(i) && !Bp(n) && !oo(i) && !oo(n) ? ut(n, i, t) : (t || !(a in r)) && (r[a] = rt(e[a]));
327  }
328  return r;
329}
330function Sh(r, e) {
331  for (var t = r[0], a = 1, n = r.length; a < n; a++) t = ut(t, r[a], e);
332  return t;
333}
334function z(r, e) {
335  if (Object.assign) Object.assign(r, e);
336  else for (var t in e) e.hasOwnProperty(t) && t !== Pg && (r[t] = e[t]);
337  return r;
338}
339function Q(r, e, t) {
340  for (var a = _t(e), n = 0, i = a.length; n < i; n++) {
341    var o = a[n];
342    (t ? e[o] != null : r[o] == null) && (r[o] = e[o]);
343  }
344  return r;
345}
346var M2 = Lr.createCanvas;
347function vt(r, e) {
348  if (r) {
349    if (r.indexOf) return r.indexOf(e);
350    for (var t = 0, a = r.length; t < a; t++) if (r[t] === e) return t;
351  }
352  return -1;
353}
354function Eg(r, e) {
355  var t = r.prototype;
356  function a() {
357  }
358  a.prototype = e.prototype, r.prototype = new a();
359  for (var n in t) t.hasOwnProperty(n) && (r.prototype[n] = t[n]);
360  r.prototype.constructor = r, r.superClass = e;
361}
362function Xt(r, e, t) {
363  if (r = "prototype" in r ? r.prototype : r, e = "prototype" in e ? e.prototype : e, Object.getOwnPropertyNames) for (var a = Object.getOwnPropertyNames(e), n = 0; n < a.length; n++) {
364    var i = a[n];
365    i !== "constructor" && (t ? e[i] != null : r[i] == null) && (r[i] = e[i]);
366  }
367  else Q(r, e, t);
368}
369function ce(r) {
370  return !r || typeof r == "string" ? false : typeof r.length == "number";
371}
372function D(r, e, t) {
373  if (r && e) if (r.forEach && r.forEach === T2) r.forEach(e, t);
374  else if (r.length === +r.length) for (var a = 0, n = r.length; a < n; a++) e.call(t, r[a], a, r);
375  else for (var i in r) r.hasOwnProperty(i) && e.call(t, r[i], i, r);
376}
377function G(r, e, t) {
378  if (!r) return [];
379  if (!e) return xh(r);
380  if (r.map && r.map === A2) return r.map(e, t);
381  for (var a = [], n = 0, i = r.length; n < i; n++) a.push(e.call(t, r[n], n, r));
382  return a;
383}
384function hr(r, e, t, a) {
385  if (r && e) {
386    for (var n = 0, i = r.length; n < i; n++) t = e.call(a, t, r[n], n, r);
387    return t;
388  }
389}
390function Ct(r, e, t) {
391  if (!r) return [];
392  if (!e) return xh(r);
393  if (r.filter && r.filter === C2) return r.filter(e, t);
394  for (var a = [], n = 0, i = r.length; n < i; n++) e.call(t, r[n], n, r) && a.push(r[n]);
395  return a;
396}
397function sT(r, e, t) {
398  if (r && e) {
399    for (var a = 0, n = r.length; a < n; a++) if (e.call(t, r[a], a, r)) return r[a];
400  }
401}
402function _t(r) {
403  if (!r) return [];
404  if (Object.keys) return Object.keys(r);
405  var e = [];
406  for (var t in r) r.hasOwnProperty(t) && e.push(t);
407  return e;
408}
409function I2(r, e) {
410  for (var t = [], a = 2; a < arguments.length; a++) t[a - 2] = arguments[a];
411  return function() {
412    return r.apply(e, t.concat(Lg.call(arguments)));
413  };
414}
415var $ = Jl && j(Jl.bind) ? Jl.call.bind(Jl.bind) : I2;
416function lt(r) {
417  for (var e = [], t = 1; t < arguments.length; t++) e[t - 1] = arguments[t];
418  return function() {
419    return r.apply(this, e.concat(Lg.call(arguments)));
420  };
421}
422function V(r) {
423  return Array.isArray ? Array.isArray(r) : Do.call(r) === "[object Array]";
424}
425function j(r) {
426  return typeof r == "function";
427}
428function Y(r) {
429  return typeof r == "string";
430}
431function Sf(r) {
432  return Do.call(r) === "[object String]";
433}
434function wt(r) {
435  return typeof r == "number";
436}
437function tt(r) {
438  var e = typeof r;
439  return e === "function" || !!r && e === "object";
440}
441function Bp(r) {
442  return !!iT[Do.call(r)];
443}
444function ke(r) {
445  return !!oT[Do.call(r)];
446}
447function ui(r) {
448  return typeof r == "object" && typeof r.nodeType == "number" && typeof r.ownerDocument == "object";
449}
450function Il(r) {
451  return r.colorStops != null;
452}
453function lT(r) {
454  return r.image != null;
455}
456function uT(r) {
457  return Do.call(r) === "[object RegExp]";
458}
459function po(r) {
460  return r !== r;
461}
462function ne() {
463  for (var r = [], e = 0; e < arguments.length; e++) r[e] = arguments[e];
464  for (var t = 0, a = r.length; t < a; t++) if (r[t] != null) return r[t];
465}
466function st(r, e) {
467  return r ?? e;
468}
469function Ar(r, e, t) {
470  return r ?? e ?? t;
471}
472function xh(r) {
473  for (var e = [], t = 1; t < arguments.length; t++) e[t - 1] = arguments[t];
474  return Lg.apply(r, e);
475}
476function bh(r) {
477  if (typeof r == "number") return [r, r, r, r];
478  var e = r.length;
479  return e === 2 ? [r[0], r[1], r[0], r[1]] : e === 3 ? [r[0], r[1], r[2], r[1]] : r;
480}
481function we(r, e) {
482  if (!r) throw new Error(e);
483}
484function ur(r) {
485  return r == null ? null : typeof r.trim == "function" ? r.trim() : r.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, "");
486}
487var fT = "__ec_primitive__";
488function Qs(r) {
489  r[fT] = true;
490}
491function oo(r) {
492  return r[fT];
493}
494var L2 = function() {
495  function r() {
496    this.data = {};
497  }
498  return r.prototype.delete = function(e) {
499    var t = this.has(e);
500    return t && delete this.data[e], t;
501  }, r.prototype.has = function(e) {
502    return this.data.hasOwnProperty(e);
503  }, r.prototype.get = function(e) {
504    return this.data[e];
505  }, r.prototype.set = function(e, t) {
506    return this.data[e] = t, this;
507  }, r.prototype.keys = function() {
508    return _t(this.data);
509  }, r.prototype.forEach = function(e) {
510    var t = this.data;
511    for (var a in t) t.hasOwnProperty(a) && e(t[a], a);
512  }, r;
513}(), hT = typeof Map == "function";
514function P2() {
515  return hT ? /* @__PURE__ */ new Map() : new L2();
516}
517var vT = function() {
518  function r(e) {
519    var t = V(e);
520    this.data = P2();
521    var a = this;
522    e instanceof r ? e.each(n) : e && D(e, n);
523    function n(i, o) {
524      t ? a.set(i, o) : a.set(o, i);
525    }
526  }
527  return r.prototype.hasKey = function(e) {
528    return this.data.has(e);
529  }, r.prototype.get = function(e) {
530    return this.data.get(e);
531  }, r.prototype.set = function(e, t) {
532    return this.data.set(e, t), t;
533  }, r.prototype.each = function(e, t) {
534    this.data.forEach(function(a, n) {
535      e.call(t, a, n);
536    });
537  }, r.prototype.keys = function() {
538    var e = this.data.keys();
539    return hT ? Array.from(e) : e;
540  }, r.prototype.removeKey = function(e) {
541    this.data.delete(e);
542  }, r;
543}();
544function Z(r) {
545  return new vT(r);
546}
547function go(r, e) {
548  for (var t = new r.constructor(r.length + e.length), a = 0; a < r.length; a++) t[a] = r[a];
549  for (var n = r.length, a = 0; a < e.length; a++) t[a + n] = e[a];
550  return t;
551}
552function Ll(r, e) {
553  var t;
554  if (Object.create) t = Object.create(r);
555  else {
556    var a = function() {
557    };
558    a.prototype = r, t = new a();
559  }
560  return e && z(t, e), t;
561}
562function kg(r) {
563  var e = r.style;
564  e.webkitUserSelect = "none", e.userSelect = "none", e.webkitTapHighlightColor = "rgba(0,0,0,0)", e["-webkit-touch-callout"] = "none";
565}
566function X(r, e) {
567  return r.hasOwnProperty(e);
568}
569function $t() {
570}
571var Os = 180 / Math.PI;
572const R2 = Object.freeze(Object.defineProperty({ __proto__: null, HashMap: vT, RADIAN_TO_DEGREE: Os, assert: we, bind: $, clone: rt, concatArray: go, createCanvas: M2, createHashMap: Z, createObject: Ll, curry: lt, defaults: Q, disableUserSelect: kg, each: D, eqNaN: po, extend: z, filter: Ct, find: sT, guid: Rg, hasOwn: X, indexOf: vt, inherits: Eg, isArray: V, isArrayLike: ce, isBuiltInObject: Bp, isDom: ui, isFunction: j, isGradientObject: Il, isImagePatternObject: lT, isNumber: wt, isObject: tt, isPrimitive: oo, isRegExp: uT, isString: Y, isStringSafe: Sf, isTypedArray: ke, keys: _t, logError: _h, map: G, merge: ut, mergeAll: Sh, mixin: Xt, noop: $t, normalizeCssArray: bh, reduce: hr, retrieve: ne, retrieve2: st, retrieve3: Ar, setAsPrimitive: Qs, slice: xh, trim: ur }, Symbol.toStringTag, { value: "Module" }));
573/*! *****************************************************************************
574Copyright (c) Microsoft Corporation.
575
576Permission to use, copy, modify, and/or distribute this software for any
577purpose with or without fee is hereby granted.
578
579THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
580REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
581AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
582INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
583LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
584OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
585PERFORMANCE OF THIS SOFTWARE.
586***************************************************************************** */
587var zp = function(r, e) {
588  return zp = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t, a) {
589    t.__proto__ = a;
590  } || function(t, a) {
591    for (var n in a) Object.prototype.hasOwnProperty.call(a, n) && (t[n] = a[n]);
592  }, zp(r, e);
593};
594function Ft(r, e) {
595  if (typeof e != "function" && e !== null) throw new TypeError("Class extends value " + String(e) + " is not a constructor or null");
596  zp(r, e);
597  function t() {
598    this.constructor = r;
599  }
600  r.prototype = e === null ? Object.create(e) : (t.prototype = e.prototype, new t());
601}
602function sn(r, e) {
603  return r == null && (r = 0), e == null && (e = 0), [r, e];
604}
605function _e(r, e) {
606  return r[0] = e[0], r[1] = e[1], r;
607}
608function Zr(r) {
609  return [r[0], r[1]];
610}
611function cT(r, e, t) {
612  return r[0] = e, r[1] = t, r;
613}
614function Vp(r, e, t) {
615  return r[0] = e[0] + t[0], r[1] = e[1] + t[1], r;
616}
617function xf(r, e, t, a) {
618  return r[0] = e[0] + t[0] * a, r[1] = e[1] + t[1] * a, r;
619}
620function Va(r, e, t) {
621  return r[0] = e[0] - t[0], r[1] = e[1] - t[1], r;
622}
623function tl(r) {
624  return Math.sqrt(Og(r));
625}
626var E2 = tl;
627function Og(r) {
628  return r[0] * r[0] + r[1] * r[1];
629}
630var k2 = Og;
631function O2(r, e, t) {
632  return r[0] = e[0] * t[0], r[1] = e[1] * t[1], r;
633}
634function N2(r, e, t) {
635  return r[0] = e[0] / t[0], r[1] = e[1] / t[1], r;
636}
637function B2(r, e) {
638  return r[0] * e[0] + r[1] * e[1];
639}
640function Ns(r, e, t) {
641  return r[0] = e[0] * t, r[1] = e[1] * t, r;
642}
643function mi(r, e) {
644  var t = tl(e);
645  return t === 0 ? (r[0] = 0, r[1] = 0) : (r[0] = e[0] / t, r[1] = e[1] / t), r;
646}
647function bf(r, e) {
648  return Math.sqrt((r[0] - e[0]) * (r[0] - e[0]) + (r[1] - e[1]) * (r[1] - e[1]));
649}
650var fa = bf;
651function pT(r, e) {
652  return (r[0] - e[0]) * (r[0] - e[0]) + (r[1] - e[1]) * (r[1] - e[1]);
653}
654var $a = pT;
655function z2(r, e) {
656  return r[0] = -e[0], r[1] = -e[1], r;
657}
658function Bs(r, e, t, a) {
659  return r[0] = e[0] + a * (t[0] - e[0]), r[1] = e[1] + a * (t[1] - e[1]), r;
660}
661function he(r, e, t) {
662  var a = e[0], n = e[1];
663  return r[0] = t[0] * a + t[2] * n + t[4], r[1] = t[1] * a + t[3] * n + t[5], r;
664}
665function ha(r, e, t) {
666  return r[0] = Math.min(e[0], t[0]), r[1] = Math.min(e[1], t[1]), r;
667}
668function va(r, e, t) {
669  return r[0] = Math.max(e[0], t[0]), r[1] = Math.max(e[1], t[1]), r;
670}
671const V2 = Object.freeze(Object.defineProperty({ __proto__: null, add: Vp, applyTransform: he, clone: Zr, copy: _e, create: sn, dist: fa, distSquare: $a, distance: bf, distanceSquare: pT, div: N2, dot: B2, len: tl, lenSquare: Og, length: E2, lengthSquare: k2, lerp: Bs, max: va, min: ha, mul: O2, negate: z2, normalize: mi, scale: Ns, scaleAndAdd: xf, set: cT, sub: Va }, Symbol.toStringTag, { value: "Module" }));
672var Ii = /* @__PURE__ */ function() {
673  function r(e, t) {
674    this.target = e, this.topTarget = t && t.topTarget;
675  }
676  return r;
677}(), G2 = function() {
678  function r(e) {
679    this.handler = e, e.on("mousedown", this._dragStart, this), e.on("mousemove", this._drag, this), e.on("mouseup", this._dragEnd, this);
680  }
681  return r.prototype._dragStart = function(e) {
682    for (var t = e.target; t && !t.draggable; ) t = t.parent || t.__hostTarget;
683    t && (this._draggingTarget = t, t.dragging = true, this._x = e.offsetX, this._y = e.offsetY, this.handler.dispatchToElement(new Ii(t, e), "dragstart", e.event));
684  }, r.prototype._drag = function(e) {
685    var t = this._draggingTarget;
686    if (t) {
687      var a = e.offsetX, n = e.offsetY, i = a - this._x, o = n - this._y;
688      this._x = a, this._y = n, t.drift(i, o, e), this.handler.dispatchToElement(new Ii(t, e), "drag", e.event);
689      var s = this.handler.findHover(a, n, t).target, l = this._dropTarget;
690      this._dropTarget = s, t !== s && (l && s !== l && this.handler.dispatchToElement(new Ii(l, e), "dragleave", e.event), s && s !== l && this.handler.dispatchToElement(new Ii(s, e), "dragenter", e.event));
691    }
692  }, r.prototype._dragEnd = function(e) {
693    var t = this._draggingTarget;
694    t && (t.dragging = false), this.handler.dispatchToElement(new Ii(t, e), "dragend", e.event), this._dropTarget && this.handler.dispatchToElement(new Ii(this._dropTarget, e), "drop", e.event), this._draggingTarget = null, this._dropTarget = null;
695  }, r;
696}(), cr = function() {
697  function r(e) {
698    e && (this._$eventProcessor = e);
699  }
700  return r.prototype.on = function(e, t, a, n) {
701    this._$handlers || (this._$handlers = {});
702    var i = this._$handlers;
703    if (typeof t == "function" && (n = a, a = t, t = null), !a || !e) return this;
704    var o = this._$eventProcessor;
705    t != null && o && o.normalizeQuery && (t = o.normalizeQuery(t)), i[e] || (i[e] = []);
706    for (var s = 0; s < i[e].length;
706 s++) if (i[e][s].h === a) return this;
707    var l = { h: a, query: t, ctx: n || this, callAtLast: a.zrEventfulCallAtLast }, u = i[e].length - 1, f = i[e][u];
708    return f && f.callAtLast ? i[e].splice(u, 0, l) : i[e].push(l), this;
709  }, r.prototype.isSilent = function(e) {
710    var t = this._$handlers;
711    return !t || !t[e] || !t[e].length;
712  }, r.prototype.off = function(e, t) {
713    var a = this._$handlers;
714    if (!a) return this;
715    if (!e) return this._$handlers = {}, this;
716    if (t) {
717      if (a[e]) {
718        for (var n = [], i = 0, o = a[e].length; i < o; i++) a[e][i].h !== t && n.push(a[e][i]);
719        a[e] = n;
720      }
721      a[e] && a[e].length === 0 && delete a[e];
722    } else delete a[e];
723    return this;
724  }, r.prototype.trigger = function(e) {
725    for (var t = [], a = 1; a < arguments.length; a++) t[a - 1] = arguments[a];
726    if (!this._$handlers) return this;
727    var n = this._$handlers[e], i = this._$eventProcessor;
728    if (n) for (var o = t.length, s = n.length, l = 0; l < s; l++) {
729      var u = n[l];
730      if (!(i && i.filter && u.query != null && !i.filter(e, u.query))) switch (o) {
731        case 0:
732          u.h.call(u.ctx);
733          break;
734        case 1:
735          u.h.call(u.ctx, t[0]);
736          break;
737        case 2:
738          u.h.call(u.ctx, t[0], t[1]);
739          break;
740        default:
741          u.h.apply(u.ctx, t);
742          break;
743      }
744    }
745    return i && i.afterTrigger && i.afterTrigger(e), this;
746  }, r.prototype.triggerWithContext = function(e) {
747    for (var t = [], a = 1; a < arguments.length; a++) t[a - 1] = arguments[a];
748    if (!this._$handlers) return this;
749    var n = this._$handlers[e], i = this._$eventProcessor;
750    if (n) for (var o = t.length, s = t[o - 1], l = n.length, u = 0; u < l; u++) {
751      var f = n[u];
752      if (!(i && i.filter && f.query != null && !i.filter(e, f.query))) switch (o) {
753        case 0:
754          f.h.call(s);
755          break;
756        case 1:
757          f.h.call(s, t[0]);
758          break;
759        case 2:
760          f.h.call(s, t[0], t[1]);
761          break;
762        default:
763          f.h.apply(s, t.slice(1, o - 1));
764          break;
765      }
766    }
767    return i && i.afterTrigger && i.afterTrigger(e), this;
768  }, r;
769}(), F2 = Math.log(2);
770function Gp(r, e, t, a, n, i) {
771  var o = a + "-" + n, s = r.length;
772  if (i.hasOwnProperty(o)) return i[o];
773  if (e === 1) {
774    var l = Math.round(Math.log((1 << s) - 1 & ~n) / F2);
775    return r[t][l];
776  }
777  for (var u = a | 1 << t, f = t + 1; a & 1 << f; ) f++;
778  for (var h = 0, v = 0, c = 0; v < s; v++) {
779    var p = 1 << v;
780    p & n || (h += (c % 2 ? -1 : 1) * r[t][v] * Gp(r, e - 1, f, u, n | p, i), c++);
781  }
782  return i[o] = h, h;
783}
784function a0(r, e) {
785  var t = [[r[0], r[1], 1, 0, 0, 0, -e[0] * r[0], -e[0] * r[1]], [0, 0, 0, r[0], r[1], 1, -e[1] * r[0], -e[1] * r[1]], [r[2], r[3], 1, 0, 0, 0, -e[2] * r[2], -e[2] * r[3]], [0, 0, 0, r[2], r[3], 1, -e[3] * r[2], -e[3] * r[3]], [r[4], r[5], 1, 0, 0, 0, -e[4] * r[4], -e[4] * r[5]], [0, 0, 0, r[4], r[5], 1, -e[5] * r[4], -e[5] * r[5]], [r[6], r[7], 1, 0, 0, 0, -e[6] * r[6], -e[6] * r[7]], [0, 0, 0, r[6], r[7], 1, -e[7] * r[6], -e[7] * r[7]]], a = {}, n = Gp(t, 8, 0, 0, 0, a);
786  if (n !== 0) {
787    for (var i = [], o = 0; o < 8; o++) for (var s = 0; s < 8; s++) i[s] == null && (i[s] = 0), i[s] += ((o + s) % 2 ? -1 : 1) * Gp(t, 7, o === 0 ? 1 : 0, 1 << o, 1 << s, a) / n * e[o];
788    return function(l, u, f) {
789      var h = u * i[6] + f * i[7] + 1;
790      l[0] = (u * i[0] + f * i[1] + i[2]) / h, l[1] = (u * i[3] + f * i[4] + i[5]) / h;
791    };
792  }
793}
794var n0 = "___zrEVENTSAVED", vv = [];
795function H2(r, e, t, a, n) {
796  return Fp(vv, e, a, n, true) && Fp(r, t, vv[0], vv[1]);
797}
798function Fp(r, e, t, a, n) {
799  if (e.getBoundingClientRect && yt.domSupported && !dT(e)) {
800    var i = e[n0] || (e[n0] = {}), o = W2(e, i), s = U2(o, i, n);
801    if (s) return s(r, t, a), true;
802  }
803  return false;
804}
805function W2(r, e) {
806  var t = e.markers;
807  if (t) return t;
808  t = e.markers = [];
809  for (var a = ["left", "right"], n = ["top", "bottom"], i = 0; i < 4; i++) {
810    var o = document.createElement("div"), s = o.style, l = i % 2, u = (i >> 1) % 2;
811    s.cssText = ["position: absolute", "visibility: hidden", "padding: 0", "margin: 0", "border-width: 0", "user-select: none", "width:0", "height:0", a[l] + ":0", n[u] + ":0", a[1 - l] + ":auto", n[1 - u] + ":auto", ""].join("!important;"), r.appendChild(o), t.push(o);
812  }
813  return t;
814}
815function U2(r, e, t) {
816  for (var a = t ? "invTrans" : "trans", n = e[a], i = e.srcCoords, o = [], s = [], l = true, u = 0; u < 4; u++) {
817    var f = r[u].getBoundingClientRect(), h = 2 * u, v = f.left, c = f.top;
818    o.push(v, c), l = l && i && v === i[h] && c === i[h + 1], s.push(r[u].offsetLeft, r[u].offsetTop);
819  }
820  return l && n ? n : (e.srcCoords = o, e[a] = t ? a0(s, o) : a0(o, s));
821}
822function dT(r) {
823  return r.nodeName.toUpperCase() === "CANVAS";
824}
825var Y2 = /([&<>"'])/g, $2 = { "&": "&amp;", "<": "&lt;", ">": "&gt;", '"': "&quot;", "'": "&#39;" };
826function xe(r) {
827  return r == null ? "" : (r + "").replace(Y2, function(e, t) {
828    return $2[t];
829  });
830}
831var X2 = /^(?:mouse|pointer|contextmenu|drag|drop)|click/, cv = [], Z2 = yt.browser.firefox && +yt.browser.version.split(".")[0] < 39;
832function Hp(r, e, t, a) {
833  return t = t || {}, a ? i0(r, e, t) : Z2 && e.layerX != null && e.layerX !== e.offsetX ? (t.zrX = e.layerX, t.zrY = e.layerY) : e.offsetX != null ? (t.zrX = e.offsetX, t.zrY = e.offsetY) : i0(r, e, t), t;
834}
835function i0(r, e, t) {
836  if (yt.domSupported && r.getBoundingClientRect) {
837    var a = e.clientX, n = e.clientY;
838    if (dT(r)) {
839      var i = r.getBoundingClientRect();
840      t.zrX = a - i.left, t.zrY = n - i.top;
841      return;
842    } else if (Fp(cv, r, a, n)) {
843      t.zrX = cv[0], t.zrY = cv[1];
844      return;
845    }
846  }
847  t.zrX = t.zrY = 0;
848}
849function Ng(r) {
850  return r || window.event;
851}
852function rr(r, e, t) {
853  if (e = Ng(e), e.zrX != null) return e;
854  var a = e.type, n = a && a.indexOf("touch") >= 0;
855  if (n) {
856    var o = a !== "touchend" ? e.targetTouches[0] : e.changedTouches[0];
857    o && Hp(r, o, e, t);
858  } else {
859    Hp(r, e, e, t);
860    var i = q2(e);
861    e.zrDelta = i ? i / 120 : -(e.detail || 0) / 3;
862  }
863  var s = e.button;
864  return e.which == null && s !== void 0 && X2.test(e.type) && (e.which = s & 1 ? 1 : s & 2 ? 3 : s & 4 ? 2 : 0), e;
865}
866function q2(r) {
867  var e = r.wheelDelta;
868  if (e) return e;
869  var t = r.deltaX, a = r.deltaY;
870  if (t == null || a == null) return e;
871  var n = Math.abs(a !== 0 ? a : t), i = a > 0 ? -1 : a < 0 ? 1 : t > 0 ? -1 : 1;
872  return 3 * n * i;
873}
874function Wp(r, e, t, a) {
875  r.addEventListener(e, t, a);
876}
877function K2(r, e, t, a) {
878  r.removeEventListener(e, t, a);
879}
880var ya = function(r) {
881  r.preventDefault(), r.stopPropagation(), r.cancelBubble = true;
882};
883function o0(r) {
884  return r.which === 2 || r.which === 3;
885}
886var j2 = function() {
887  function r() {
888    this._track = [];
889  }
890  return r.prototype.recognize = function(e, t, a) {
891    return this._doTrack(e, t, a), this._recognize(e);
892  }, r.prototype.clear = function() {
893    return this._track.length = 0, this;
894  }, r.prototype._doTrack = function(e, t, a) {
895    var n = e.touches;
896    if (n) {
897      for (var i = { points: [], touches: [], target: t, event: e }, o = 0, s = n.length; o < s; o++) {
898        var l = n[o], u = Hp(a, l, {});
899        i.points.push([u.zrX, u.zrY]), i.touches.push(l);
900      }
901      this._track.push(i);
902    }
903  }, r.prototype._recognize = function(e) {
904    for (var t in pv) if (pv.hasOwnProperty(t)) {
905      var a = pv[t](this._track, e);
906      if (a) return a;
907    }
908  }, r;
909}();
910function s0(r) {
911  var e = r[1][0] - r[0][0], t = r[1][1] - r[0][1];
912  return Math.sqrt(e * e + t * t);
913}
914function J2(r) {
915  return [(r[0][0] + r[1][0]) / 2, (r[0][1] + r[1][1]) / 2];
916}
917var pv = { pinch: function(r, e) {
918  var t = r.length;
919  if (t) {
920    var a = (r[t - 1] || {}).points, n = (r[t - 2] || {}).points || a;
921    if (n && n.length > 1 && a && a.length > 1) {
922      var i = s0(a) / s0(n);
923      !isFinite(i) && (i = 1), e.pinchScale = i;
924      var o = J2(a);
925      return e.pinchX = o[0], e.pinchY = o[1], { type: "pinch", target: r[0].target, event: e };
926    }
927  }
928} };
929function He() {
930  return [1, 0, 0, 1, 0, 0];
931}
932function Pl(r) {
933  return r[0] = 1, r[1] = 0, r[2] = 0, r[3] = 1, r[4] = 0, r[5] = 0, r;
934}
935function wh(r, e) {
936  return r[0] = e[0], r[1] = e[1], r[2] = e[2], r[3] = e[3], r[4] = e[4], r[5] = e[5], r;
937}
938function qr(r, e, t) {
939  var a = e[0] * t[0] + e[2] * t[1], n = e[1] * t[0] + e[3] * t[1], i = e[0] * t[2] + e[2] * t[3], o = e[1] * t[2] + e[3] * t[3], s = e[0] * t[4] + e[2] * t[5] + e[4], l = e[1] * t[4] + e[3] * t[5] + e[5];
940  return r[0] = a, r[1] = n, r[2] = i, r[3] = o, r[4] = s, r[5] = l, r;
941}
942function Pr(r, e, t) {
943  return r[0] = e[0], r[1] = e[1], r[2] = e[2], r[3] = e[3], r[4] = e[4] + t[0], r[5] = e[5] + t[1], r;
944}
945function ln(r, e, t, a) {
946  a === void 0 && (a = [0, 0]);
947  var n = e[0], i = e[2], o = e[4], s = e[1], l = e[3], u = e[5], f = Math.sin(t), h = Math.cos(t);
948  return r[0] = n * h + s * f, r[1] = -n * f + s * h, r[2] = i * h + l * f, r[3] = -i * f + h * l, r[4] = h * (o - a[0]) + f * (u - a[1]) + a[0], r[5] = h * (u - a[1]) - f * (o - a[0]) + a[1], r;
949}
950function Th(r, e, t) {
951  var a = t[0], n = t[1];
952  return r[0] = e[0] * a, r[1] = e[1] * n, r[2] = e[2] * a, r[3] = e[3] * n, r[4] = e[4] * a, r[5] = e[5] * n, r;
953}
954function _i(r, e) {
955  var t = e[0], a = e[2], n = e[4], i = e[1], o = e[3], s = e[5], l = t * o - i * a;
956  return l ? (l = 1 / l, r[0] = o * l, r[1] = -i * l, r[2] = -a * l, r[3] = t * l, r[4] = (a * s - o * n) * l, r[5] = (i * n - t * s) * l, r) : null;
957}
958function gT(r) {
959  var e = He();
960  return wh(e, r), e;
961}
962const Q2 = Object.freeze(Object.defineProperty({ __proto__: null, clone: gT, copy: wh, create: He, identity: Pl, invert: _i, mul: qr, rotate: ln, scale: Th, translate: Pr }, Symbol.toStringTag, { value: "Module" }));
963var ft = function() {
964  function r(e, t) {
965    this.x = e || 0, this.y = t || 0;
966  }
967  return r.prototype.copy = function(e) {
968    return this.x = e.x, this.y = e.y, this;
969  }, r.prototype.clone = function() {
970    return new r(this.x, this.y);
971  }, r.prototype.set = function(e, t) {
972    return this.x = e, this.y = t, this;
973  }, r.prototype.equal = function(e) {
974    return e.x === this.x && e.y === this.y;
975  }, r.prototype.add = function(e) {
976    return this.x += e.x, this.y += e.y, this;
977  }, r.prototype.scale = function(e) {
978    this.x *= e, this.y *= e;
979  }, r.prototype.scaleAndAdd = function(e, t) {
980    this.x += e.x * t, this.y += e.y * t;
981  }, r.prototype.sub = function(e) {
982    return this.x -= e.x, this.y -= e.y, this;
983  }, r.prototype.dot = function(e) {
984    return this.x * e.x + this.y * e.y;
985  }, r.prototype.len = function() {
986    return Math.sqrt(this.x * this.x + this.y * this.y);
987  }, r.prototype.lenSquare = function() {
988    return this.x * this.x + this.y * this.y;
989  }, r.prototype.normalize = function() {
990    var e = this.len();
991    return this.x /= e, this.y /= e, this;
992  }, r.prototype.distance = function(e) {
993    var t = this.x - e.x, a = this.y - e.y;
994    return Math.sqrt(t * t + a * a);
995  }, r.prototype.distanceSquare = function(e) {
996    var t = this.x - e.x, a = this.y - e.y;
997    return t * t + a * a;
998  }, r.prototype.negate = function() {
999    return this.x = -this.x, this.y = -this.y, this;
1000  }, r.prototype.transform = function(e) {
1001    if (e) {
1002      var t = this.x, a = this.y;
1003      return this.x = e[0] * t + e[2] * a + e[4], this.y = e[1] * t + e[3] * a + e[5], this;
1004    }
1005  }, r.prototype.toArray = function(e) {
1006    return e[0] = this.x, e[1] = this.y, e;
1007  }, r.prototype.fromArray = function(e) {
1008    this.x = e[0], this.y = e[1];
1009  }, r.set = function(e, t, a) {
1010    e.x = t, e.y = a;
1011  }, r.copy = function(e, t) {
1012    e.x = t.x, e.y = t.y;
1013  }, r.len = function(e) {
1014    return Math.sqrt(e.x * e.x + e.y * e.y);
1015  }, r.lenSquare = function(e) {
1016    return e.x * e.x + e.y * e.y;
1017  }, r.dot = function(e, t) {
1018    return e.x * t.x + e.y * t.y;
1019  }, r.add = function(e, t, a) {
1020    e.x = t.x + a.x, e.y = t.y + a.y;
1021  }, r.sub = function(e, t, a) {
1022    e.x = t.x - a.x, e.y = t.y - a.y;
1023  }, r.scale = function(e, t, a) {
1024    e.x = t.x * a, e.y = t.y * a;
1025  }, r.scaleAndAdd = function(e, t, a, n) {
1026    e.x = t.x + a.x * n, e.y = t.y + a.y * n;
1027  }, r.lerp = function(e, t, a, n) {
1028    var i = 1 - n;
1029    e.x = i * t.x + n * a.x, e.y = i * t.y + n * a.y;
1030  }, r;
1031}(), Ql = Math.min, tu = Math.max, cn = new ft(), pn = new ft(), dn = new ft(), gn = new ft(), Xo = new ft(), Zo = new ft(), ht = function() {
1032  function r(e, t, a, n) {
1033    a < 0 && (e = e + a, a = -a), n < 0 && (t = t + n, n = -n), this.x = e, this.y = t, this.width = a, this.height = n;
1034  }
1035  return r.prototype.union = function(e) {
1036    var t = Ql(e.x, this.x), a = Ql(e.y, this.y);
1037    isFinite(this.x) && isFinite(this.width) ? this.width = tu(e.x + e.width, this.x + this.width) - t : this.width = e.width, isFinite(this.y) && isFinite(this.height) ? this.height = tu(e.y + e.height, this.y + this.height) - a : this.height = e.height, this.x = t, this.y = a;
1038  }, r.prototype.applyTransform = function(e) {
1039    r.applyTransform(this, this, e);
1040  }, r.prototype.calculateTransform = function(e) {
1041    var t = this, a = e.width / t.width, n = e.height / t.height, i = He();
1042    return Pr(i, i, [-t.x, -t.y]), Th(i, i, [a, n]), Pr(i, i, [e.x, e.y]), i;
1043  }, r.prototype.intersect = function(e, t) {
1044    if (!e) return false;
1045    e instanceof r || (e = r.create(e));
1046    var a = this, n = a.x, i = a.x + a.width, o = a.y, s = a.y + a.height, l = e.x, u = e.x + e.width, f = e.y, h = e.y + e.height, v = !(i < l || u < n || s < f || h < o);
1047    if (t) {
1048      var c = 1 / 0, p = 0, d = Math.abs(i - l), g = Math.abs(u - n), y = Math.abs(s - f), m = Math.abs(h - o), _ = Math.min(d, g), S = Math.min(y, m);
1049      i < l || u < n ? _ > p && (p = _, d < g ? ft.set(Zo, -d, 0) : ft.set(Zo, g, 0)) : _ < c && (c = _, d < g ? ft.set(Xo, d, 0) : ft.set(Xo, -g, 0)), s < f || h < o ? S > p && (p = S, y < m ? ft.set(Zo, 0, -y) : ft.set(Zo, 0, m)) : _ < c && (c = _, y < m ? ft.set(Xo, 0, y) : ft.set(Xo, 0, -m));
1050    }
1051    return t && ft.copy(t, v ? Xo : Zo), v;
1052  }, r.prototype.contain = function(e, t) {
1053    var a = this;
1054    return e >= a.x && e <= a.x + a.width && t >= a.y && t <= a.y + a.height;
1055  }, r.prototype.clone = function() {
1056    return new r(this.x, this.y, this.width, this.height);
1057  }, r.prototype.copy = function(e) {
1058    r.copy(this, e);
1059  }, r.prototype.plain = function() {
1060    return { x: this.x, y: this.y, width: this.width, height: this.height };
1061  }, r.prototype.isFinite = function() {
1062    return isFinite(this.x) && isFinite(this.y) && isFinite(this.width) && isFinite(this.height);
1063  }, r.prototype.isZero = function() {
1064    return this.width === 0 || this.height === 0;
1065  }, r.create = function(e) {
1066    return new r(e.x, e.y, e.width, e.height);
1067  }, r.copy = function(e, t) {
1068    e.x = t.x, e.y = t.y, e.width = t.width, e.height = t.height;
1069  }, r.applyTransform = function(e, t, a) {
1070    if (!a) {
1071      e !== t && r.copy(e, t);
1072      return;
1073    }
1074    if (a[1] < 1e-5 && a[1] > -1e-5 && a[2] < 1e-5 && a[2] > -1e-5) {
1075      var n = a[0], i = a[3], o = a[4], s = a[5];
1076      e.x = t.x * n + o, e.y = t.y * i + s, e.width = t.width * n, e.height = t.height * i, e.width < 0 && (e.x += e.width, e.width = -e.width), e.height < 0 && (e.y += e.height, e.height = -e.height);
1077      return;
1078    }
1079    cn.x = dn.x = t.x, cn.y = gn.y = t.y, pn.x = gn.x = t.x + t.width, pn.y = dn.y = t.y + t.height, cn.transform(a), gn.transform(a), pn.transform(a), dn.transform(a), e.x = Ql(cn.x, pn.x, dn.x, gn.x), e.y = Ql(cn.y, pn.y, dn.y, gn.y);
1080    var l = tu(cn.x, pn.x, dn.x, gn.x), u = tu(cn.y, pn.y, dn.y, gn.y);
1081    e.width = l - e.x, e.height = u - e.y;
1082  }, r;
1083}(), yT = "silent";
1084function tP(r, e, t) {
1085  return { type: r, event: t, target: e.target, topTarget: e.topTarget, cancelBubble: false, offsetX: t.zrX, offsetY: t.zrY, gestureEvent: t.gestureEvent, pinchX: t.pinchX, pinchY: t.pinchY, pinchScale: t.pinchScale, wheelDelta: t.zrDelta, zrByTouch: t.zrByTouch, which: t.which, stop: eP };
1086}
1087function eP() {
1088  ya(this.event);
1089}
1090var rP = function(r) {
1091  Ft(e, r);
1092  function e() {
1093    var t = r !== null && r.apply(this, arguments) || this;
1094    return t.handler = null, t;
1095  }
1096  return e.prototype.dispose = function() {
1097  }, e.prototype.setCursor = function() {
1098  }, e;
1099}(cr), qo = /* @__PURE__ */ function() {
1100  function r(e, t) {
1101    this.x = e, this.y = t;
1102  }
1103  return r;
1104}(), aP = ["click", "dblclick", "mousewheel", "mouseout", "mouseup", "mousedown", "mousemove", "contextmenu"], dv = new ht(0, 0, 0, 0), mT = function(r) {
1105  Ft(e, r);
1106  function e(t, a, n, i, o) {
1107    var s = r.call(this) || this;
1108    return s._hovered = new qo(0, 0), s.storage = t, s.painter = a, s.painterRoot = i, s._pointerSize = o, n = n || new rP(), s.proxy = null, s.setHandlerProxy(n), s._draggingMgr = new G2(s), s;
1109  }
1110  return e.prototype.setHandlerProxy = function(t) {
1111    this.proxy && this.proxy.dispose(), t && (D(aP, function(a) {
1112      t.on && t.on(a, this[a], this);
1113    }, this), t.handler = this), this.proxy = t;
1114  }, e.prototype.mousemove = function(t) {
1115    var a = t.zrX, n = t.zrY, i = _T(this, a, n), o = this._hovered, s = o.target;
1116    s && !s.__zr && (o = this.findHover(o.x, o.y), s = o.target);
1117    var l = this._hovered = i ? new qo(a, n) : this.findHover(a, n), u = l.target, f = this.proxy;
1118    f.setCursor && f.setCursor(u ? u.cursor : "default"), s && u !== s && this.dispatchToElement(o, "mouseout", t), this.dispatchToElement(l, "mousemove", t), u && u !== s && this.dispatchToElement(l, "mouseover", t);
1119  }, e.prototype.mouseout = function(t) {
1120    var a = t.zrEventControl;
1121    a !== "only_globalout" && this.dispatchToElement(this._hovered, "mouseout", t), a !== "no_globalout" && this.trigger("globalout", { type: "globalout", event: t });
1122  }, e.prototype.resize = function() {
1123    this._hovered = new qo(0, 0);
1124  }, e.prototype.dispatch = function(t, a) {
1125    var n = this[t];
1126    n && n.call(this, a);
1127  }, e.prototype.dispose = function() {
1128    this.proxy.dispose(), this.storage = null, this.proxy = null, this.painter = null;
1129  }, e.prototype.setCursorStyle = function(t) {
1130    var a = this.proxy;
1131    a.setCursor && a.setCursor(t);
1132  }, e.prototype.dispatchToElement = function(t, a, n) {
1133    t = t || {};
1134    var i = t.target;
1135    if (!(i && i.silent)) {
1136      for (var o = "on" + a, s = tP(a, t, n); i && (i[o] && (s.cancelBubble = !!i[o].call(i, s)), i.trigger(a, s), i = i.__hostTarget ? i.__hostTarget : i.parent, !s.cancelBubble); ) ;
1137      s.cancelBubble || (this.trigger(a, s), this.painter && this.painter.eachOtherLayer && this.painter.eachOtherLayer(function(l) {
1138        typeof l[o] == "function" && l[o].call(l, s), l.trigger && l.trigger(a, s);
1139      }));
1140    }
1141  }, e.prototype.findHover = function(t, a, n) {
1142    var i = this.storage.getDisplayList(), o = new qo(t, a);
1143    if (l0(i, o, t, a, n), this._pointerSize && !o.target) {
1144      for (var s = [], l = this._pointerSize, u = l / 2, f = new ht(t - u, a - u, l, l), h = i.length - 1; h >= 0; h--) {
1145        var v = i[h];
1146        v !== n && !v.ignore && !v.ignoreCoarsePointer && (!v.parent || !v.parent.ignoreCoarsePointer) && (dv.copy(v.getBoundingRect()), v.transform && dv.applyTransform(v.transform), dv.intersect(f) && s.push(v));
1147      }
1148      if (s.length) for (var c = 4, p = Math.PI / 12, d = Math.PI * 2, g = 0; g < u; g += c) for (var y = 0; y < d; y += p) {
1149        var m = t + g * Math.cos(y), _ = a + g * Math.sin(y);
1150        if (l0(s, o, m, _, n), o.target) return o;
1151      }
1152    }
1153    return o;
1154  }, e.prototype.processGesture = function(t, a) {
1155    this._gestureMgr || (this._gestureMgr = new j2());
1156    var n = this._gestureMgr;
1157    a === "start" && n.clear();
1158    var i = n.recognize(t, this.findHover(t.zrX, t.zrY, null).target, this.proxy.dom);
1159    if (a === "end" && n.clear(), i) {
1160      var o = i.type;
1161      t.gestureEvent = o;
1162      var s = new qo();
1163      s.target = i.target, this.dispatchToElement(s, o, i.event);
1164    }
1165  }, e;
1166}(cr);
1167D(["click", "mousedown", "mouseup", "mousewheel", "dblclick", "contextmenu"], function(r) {
1168  mT.prototype[r] = function(e) {
1169    var t = e.zrX, a = e.zrY, n = _T(this, t, a), i, o;
1170    if ((r !== "mouseup" || !n) && (i = this.findHover(t, a), o = i.target), r === "mousedown") this._downEl = o, this._downPoint = [e.zrX, e.zrY], this._upEl = o;
1171    else if (r === "mouseup") this._upEl = o;
1172    else if (r === "click") {
1173      if (this._downEl !== this._upEl || !this._downPoint || fa(this._downPoint, [e.zrX, e.zrY]) > 4) return;
1174      this._downPoint = null;
1175    }
1176    this.dispatchToElement(i, r, e);
1177  };
1178});
1179function nP(r, e, t) {
1180  if (r[r.rectHover ? "rectContain" : "contain"](e, t)) {
1181    for (var a = r, n = void 0, i = false; a; ) {
1182      if (a.ignoreClip && (i = true), !i) {
1183        var o = a.getClipPath();
1184        if (o && !o.contain(e, t)) return false;
1185      }
1186      a.silent && (n = true);
1187      var s = a.__hostTarget;
1188      a = s || a.parent;
1189    }
1190    return n ? yT : true;
1191  }
1192  return false;
1193}
1194function l0(r, e, t, a, n) {
1195  for (var i = r.length - 1; i >= 0; i--) {
1196    var o = r[i], s = void 0;
1197    if (o !== n && !o.ignore && (s = nP(o, t, a)) && (!e.topTarget && (e.topTarget = o), s !== yT)) {
1198      e.target = o;
1199      break;
1200    }
1201  }
1202}
1203function _T(r, e, t) {
1204  var a = r.painter;
1205  return e < 0 || e > a.getWidth() || t < 0 || t > a.getHeight();
1206}
1207var ST = 32, Ko = 7;
1208function iP(r) {
1209  for (var e = 0; r >= ST; ) e |= r & 1, r >>= 1;
1210  return r + e;
1211}
1212function u0(r, e, t, a) {
1213  var n = e + 1;
1214  if (n === t) return 1;
1215  if (a(r[n++], r[e]) < 0) {
1216    for (; n < t && a(r[n], r[n - 1]) < 0; ) n++;
1217    oP(r, e, n);
1218  } else for (; n < t && a(r[n], r[n - 1]) >= 0; ) n++;
1219  return n - e;
1220}
1221function oP(r, e, t) {
1222  for (t--; e < t; ) {
1223    var a = r[e];
1224    r[e++] = r[t], r[t--] = a;
1225  }
1226}
1227function f0(r, e, t, a, n) {
1228  for (a === e && a++; a < t; a++) {
1229    for (var i = r[a], o = e, s = a, l; o < s; ) l = o + s >>> 1, n(i, r[l]) < 0 ? s = l : o = l + 1;
1230    var u = a - o;
1231    switch (u) {
1232      case 3:
1233        r[o + 3] = r[o + 2];
1234      case 2:
1235        r[o + 2] = r[o + 1];
1236      case 1:
1237        r[o + 1] = r[o];
1238        break;
1239      default:
1240        for (; u > 0; ) r[o + u] = r[o + u - 1], u--;
1241    }
1242    r[o] = i;
1243  }
1244}
1245function gv(r, e, t, a, n, i) {
1246  var o = 0, s = 0, l = 1;
1247  if (i(r, e[t + n]) > 0) {
1248    for (s = a - n; l < s && i(r, e[t + n + l]) > 0; ) o = l, l = (l << 1) + 1, l <= 0 && (l = s);
1249    l > s && (l = s), o += n, l += n;
1250  } else {
1251    for (s = n + 1; l < s && i(r, e[t + n - l]) <= 0; ) o = l, l = (l << 1) + 1, l <= 0 && (l = s);
1252    l > s && (l = s);
1253    var u = o;
1254    o = n - l, l = n - u;
1255  }
1256  for (o++; o < l; ) {
1257    var f = o + (l - o >>> 1);
1258    i(r, e[t + f]) > 0 ? o = f + 1 : l = f;
1259  }
1260  return l;
1261}
1262function yv(r, e, t, a, n, i) {
1263  var o = 0, s = 0, l = 1;
1264  if (i(r, e[t + n]) < 0) {
1265    for (s = n + 1; l < s && i(r, e[t + n - l]) < 0; ) o = l, l = (l << 1) + 1, l <= 0 && (l = s);
1266    l > s && (l = s);
1267    var u = o;
1268    o = n - l, l = n - u;
1269  } else {
1270    for (s = a - n; l < s && i(r, e[t + n + l]) >= 0; ) o = l, l = (l << 1) + 1, l <= 0 && (l = s);
1271    l > s && (l = s), o += n, l += n;
1272  }
1273  for (o++; o < l; ) {
1274    var f = o + (l - o >>> 1);
1275    i(r, e[t + f]) < 0 ? l = f : o = f + 1;
1276  }
1277  return l;
1278}
1279function sP(r, e) {
1280  var t = Ko, a, n, i = 0, o = [];
1281  a = [], n = [];
1282  function s(c, p) {
1283    a[i] = c, n[i] = p, i += 1;
1284  }
1285  function l() {
1286    for (; i > 1; ) {
1287      var c = i - 2;
1288      if (c >= 1 && n[c - 1] <= n[c] + n[c + 1] || c >= 2 && n[c - 2] <= n[c] + n[c - 1]) n[c - 1] < n[c + 1] && c--;
1289      else if (n[c] > n[c + 1]) break;
1290      f(c);
1291    }
1292  }
1293  function u() {
1294    for (; i > 1; ) {
1295      var c = i - 2;
1296      c > 0 && n[c - 1] < n[c + 1] && c--, f(c);
1297    }
1298  }
1299  function f(c) {
1300    var p = a[c], d = n[c], g = a[c + 1], y = n[c + 1];
1301    n[c] = d + y, c === i - 3 && (a[c + 1] = a[c + 2], n[c + 1] = n[c + 2]), i--;
1302    var m = yv(r[g], r, p, d, 0, e);
1303    p += m, d -= m, d !== 0 && (y = gv(r[p + d - 1], r, g, y, y - 1, e), y !== 0 && (d <= y ? h(p, d, g, y) : v(p, d, g, y)));
1304  }
1305  function h(c, p, d, g) {
1306    var y = 0;
1307    for (y = 0; y < p; y++) o[y] = r[c + y];
1308    var m = 0, _ = d, S = c;
1309    if (r[S++] = r[_++], --g === 0) {
1310      for (y = 0; y < p; y++) r[S + y] = o[m + y];
1311      return;
1312    }
1313    if (p === 1) {
1314      for (y = 0; y < g; y++) r[S + y] = r[_ + y];
1315      r[S + g] = o[m];
1316      return;
1317    }
1318    for (var b = t, x, w, T; ; ) {
1319      x = 0, w = 0, T = false;
1320      do
1321        if (e(r[_], o[m]) < 0) {
1322          if (r[S++] = r[_++], w++, x = 0, --g === 0) {
1323            T = true;
1324            break;
1325          }
1326        } else if (r[S++] = o[m++], x++, w = 0, --p === 1) {
1327          T = true;
1328          break;
1329        }
1330      while ((x | w) < b);
1331      if (T) break;
1332      do {
1333        if (x = yv(r[_], o, m, p, 0, e), x !== 0) {
1334          for (y = 0; y < x; y++) r[S + y] = o[m + y];
1335          if (S += x, m += x, p -= x, p <= 1) {
1336            T = true;
1337            break;
1338          }
1339        }
1340        if (r[S++] = r[_++], --g === 0) {
1341          T = true;
1342          break;
1343        }
1344        if (w = gv(o[m], r, _, g, 0, e), w !== 0) {
1345          for (y = 0; y < w; y++) r[S + y] = r[_ + y];
1346          if (S += w, _ += w, g -= w, g === 0) {
1347            T = true;
1348            break;
1349          }
1350        }
1351        if (r[S++] = o[m++], --p === 1) {
1352          T = true;
1353          break;
1354        }
1355        b--;
1356      } while (x >= Ko || w >= Ko);
1357      if (T) break;
1358      b < 0 && (b = 0), b += 2;
1359    }
1360    if (t = b, t < 1 && (t = 1), p === 1) {
1361      for (y = 0; y < g; y++) r[S + y] = r[_ + y];
1362      r[S + g] = o[m];
1363    } else {
1364      if (p === 0) throw new Error();
1365      for (y = 0; y < p; y++) r[S + y] = o[m + y];
1366    }
1367  }
1368  function v(c, p, d, g) {
1369    var y = 0;
1370    for (y = 0; y < g; y++) o[y] = r[d + y];
1371    var m = c + p - 1, _ = g - 1, S = d + g - 1, b = 0, x = 0;
1372    if (r[S--] = r[m--], --p === 0) {
1373      for (b = S - (g - 1), y = 0; y < g; y++) r[b + y] = o[y];
1374      return;
1375    }
1376    if (g === 1) {
1377      for (S -= p, m -= p, x = S + 1, b = m + 1, y = p - 1; y >= 0; y--) r[x + y] = r[b + y];
1378      r[S] = o[_];
1379      return;
1380    }
1381    for (var w = t; ; ) {
1382      var T = 0, C = 0, A = false;
1383      do
1384        if (e(o[_], r[m]) < 0) {
1385          if (r[S--] = r[m--], T++, C = 0, --p === 0) {
1386            A = true;
1387            break;
1388          }
1389        } else if (r[S--] = o[_--], C++, T = 0, --g === 1) {
1390          A = true;
1391          break;
1392        }
1393      while ((T | C) < w);
1394      if (A) break;
1395      do {
1396        if (T = p - yv(o[_], r, c, p, p - 1, e), T !== 0) {
1397          for (S -= T, m -= T, p -= T, x = S + 1, b = m + 1, y = T - 1; y >= 0; y--) r[x + y] = r[b + y];
1398          if (p === 0) {
1399            A = true;
1400            break;
1401          }
1402        }
1403        if (r[S--] = o[_--], --g === 1) {
1404          A = true;
1405          break;
1406        }
1407        if (C = g - gv(r[m], o, 0, g, g - 1, e), C !== 0) {
1408          for (S -= C, _ -= C, g -= C, x = S + 1, b = _ + 1, y = 0; y < C; y++) r[x + y] = o[b + y];
1409          if (g <= 1) {
1410            A = true;
1411            break;
1412          }
1413        }
1414        if (r[S--] = r[m--], --p === 0) {
1415          A = true;
1416          break;
1417        }
1418        w--;
1419      } while (T >= Ko || C >= Ko);
1420      if (A) break;
1421      w < 0 && (w = 0), w += 2;
1422    }
1423    if (t = w, t < 1 && (t = 1), g === 1) {
1424      for (S -= p, m -= p, x = S + 1, b = m + 1, y = p - 1; y >= 0; y--) r[x + y] = r[b + y];
1425      r[S] = o[_];
1426    } else {
1427      if (g === 0) throw new Error();
1428      for (b = S - (g - 1), y = 0; y < g; y++) r[b + y] = o[y];
1429    }
1430  }
1431  return { mergeRuns: l, forceMergeRuns: u, pushRun: s };
1432}
1433function tf(r, e, t, a) {
1434  t || (t = 0), a || (a = r.length);
1435  var n = a - t;
1436  if (!(n < 2)) {
1437    var i = 0;
1438    if (n < ST) {
1439      i = u0(r, t, a, e), f0(r, t, a, t + i, e);
1440      return;
1441    }
1442    var o = sP(r, e), s = iP(n);
1443    do {
1444      if (i = u0(r, t, a, e), i < s) {
1445        var l = n;
1446        l > s && (l = s), f0(r, t, t + l, t + i, e), i = l;
1447      }
1448      o.pushRun(t, i), o.mergeRuns(), n -= i, t += i;
1449    } while (n !== 0);
1450    o.forceMergeRuns();
1451  }
1452}
1453var Ye = 1, bs = 2, ji = 4, h0 = false;
1454function mv() {
1455  h0 || (h0 = true, console.warn("z / z2 / zlevel of displayable is invalid, which may cause unexpected errors"));
1456}
1457function v0(r, e) {
1458  return r.zlevel === e.zlevel ? r.z === e.z ? r.z2 - e.z2 : r.z - e.z : r.zlevel - e.zlevel;
1459}
1460var lP = function() {
1461  function r() {
1462    this._roots = [], this._displayList = [], this._displayListLen = 0, this.displayableSortFunc = v0;
1463  }
1464  return r.prototype.traverse = function(e, t) {
1465    for (var a = 0; a < this._roots.length; a++) this._roots[a].traverse(e, t);
1466  }, r.prototype.getDisplayList = function(e, t) {
1467    t = t || false;
1468    var a = this._displayList;
1469    return (e || !a.length) && this.updateDisplayList(t), a;
1470  }, r.prototype.updateDisplayList = function(e) {
1471    this._displayListLen = 0;
1472    for (var t = this._roots, a = this._displayList, n = 0, i = t.length; n < i; n++) this._updateAndAddDisplayable(t[n], null, e);
1473    a.length = this._displayListLen, tf(a, v0);
1474  }, r.prototype._updateAndAddDisplayable = function(e, t, a) {
1475    if (!(e.ignore && !a)) {
1476      e.beforeUpdate(), e.update(), e.afterUpdate();
1477      var n = e.getClipPath();
1478      if (e.ignoreClip) t = null;
1479      else if (n) {
1480        t ? t = t.slice() : t = [];
1481        for (var i = n, o = e; i; ) i.parent = o, i.updateTransform(), t.push(i), o = i, i = i.getClipPath();
1482      }
1483      if (e.childrenRef) {
1484        for (var s = e.childrenRef(), l = 0; l < s.length; l++) {
1485          var u = s[l];
1486          e.__dirty && (u.__dirty |= Ye), this._updateAndAddDisplayable(u, t, a);
1487        }
1488        e.__dirty = 0;
1489      } else {
1490        var f = e;
1491        t && t.length ? f.__clipPaths = t : f.__clipPaths && f.__clipPaths.length > 0 && (f.__clipPaths = []), isNaN(f.z) && (mv(), f.z = 0), isNaN(f.z2) && (mv(), f.z2 = 0), isNaN(f.zlevel) && (mv(), f.zlevel = 0), this._displayList[this._displayListLen++] = f;
1492      }
1493      var h = e.getDecalElement && e.getDecalElement();
1494      h && this._updateAndAddDisplayable(h, t, a);
1495      var v = e.getTextGuideLine();
1496      v && this._updateAndAddDisplayable(v, t, a);
1497      var c = e.getTextContent();
1498      c && this._updateAndAddDisplayable(c, t, a);
1499    }
1500  }, r.prototype.addRoot = function(e) {
1501    e.__zr && e.__zr.storage === this || this._roots.push(e);
1502  }, r.prototype.delRoot = function(e) {
1503    if (e instanceof Array) {
1504      for (var t = 0, a = e.length; t < a; t++) this.delRoot(e[t]);
1505      return;
1506    }
1507    var n = vt(this._roots, e);
1508    n >= 0 && this._roots.splice(n, 1);
1509  }, r.prototype.delAllRoots = function() {
1510    this._roots = [], this._displayList = [], this._displayListLen = 0;
1511  }, r.prototype.getRoots = function() {
1512    return this._roots;
1513  }, r.prototype.dispose = function() {
1514    this._displayList = null, this._roots = null;
1515  }, r;
1516}(), wf;
1517wf = yt.hasGlobalWindow && (window.requestAnimationFrame && window.requestAnimationFrame.bind(window) || window.msRequestAnimationFrame && window.msRequestAnimationFrame.bind(window) || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame) || function(r) {
1518  return setTimeout(r, 16);
1519};
1520var zs = { linear: function(r) {
1521  return r;
1522}, quadraticIn: function(r) {
1523  return r * r;
1524}, quadraticOut: function(r) {
1525  return r * (2 - r);
1526}, quadraticInOut: function(r) {
1527  return (r *= 2) < 1 ? 0.5 * r * r : -0.5 * (--r * (r - 2) - 1);
1528}, cubicIn: function(r) {
1529  return r * r * r;
1530}, cubicOut: function(r) {
1531  return --r * r * r + 1;
1532}, cubicInOut: function(r) {
1533  return (r *= 2) < 1 ? 0.5 * r * r * r : 0.5 * ((r -= 2) * r * r + 2);
1534}, quarticIn: function(r) {
1535  return r * r * r * r;
1536}, quarticOut: function(r) {
1537  return 1 - --r * r * r * r;
1538}, quarticInOut: function(r) {
1539  return (r *= 2) < 1 ? 0.5 * r * r * r * r : -0.5 * ((r -= 2) * r * r * r - 2);
1540}, quinticIn: function(r) {
1541  return r * r * r * r * r;
1542}, quinticOut: function(r) {
1543  return --r * r * r * r * r + 1;
1544}, quinticInOut: function(r) {
1545  return (r *= 2) < 1 ? 0.5 * r * r * r * r * r : 0.5 * ((r -= 2) * r * r * r * r + 2);
1546}, sinusoidalIn: function(r) {
1547  return 1 - Math.cos(r * Math.PI / 2);
1548}, sinusoidalOut: function(r) {
1549  return Math.sin(r * Math.PI / 2);
1550}, sinusoidalInOut: function(r) {
1551  return 0.5 * (1 - Math.cos(Math.PI * r));
1552}, exponentialIn: function(r) {
1553  return r === 0 ? 0 : Math.pow(1024, r - 1);
1554}, exponentialOut: function(r) {
1555  return r === 1 ? 1 : 1 - Math.pow(2, -10 * r);
1556}, exponentialInOut: function(r) {
1557  return r === 0 ? 0 : r === 1 ? 1 : (r *= 2) < 1 ? 0.5 * Math.pow(1024, r - 1) : 0.5 * (-Math.pow(2, -10 * (r - 1)) + 2);
1558}, circularIn: function(r) {
1559  return 1 - Math.sqrt(1 - r * r);
1560}, circularOut: function(r) {
1561  return Math.sqrt(1 - --r * r);
1562}, circularInOut: function(r) {
1563  return (r *= 2) < 1 ? -0.5 * (Math.sqrt(1 - r * r) - 1) : 0.5 * (Math.sqrt(1 - (r -= 2) * r) + 1);
1564}, elasticIn: function(r) {
1565  var e, t = 0.1, a = 0.4;
1566  return r === 0 ? 0 : r === 1 ? 1 : (!t || t < 1 ? (t = 1, e = a / 4) : e = a * Math.asin(1 / t) / (2 * Math.PI), -(t * Math.pow(2, 10 * (r -= 1)) * Math.sin((r - e) * (2 * Math.PI) / a)));
1567}, elasticOut: function(r) {
1568  var e, t = 0.1, a = 0.4;
1569  return r === 0 ? 0 : r === 1 ? 1 : (!t || t < 1 ? (t = 1, e = a / 4) : e = a * Math.asin(1 / t) / (2 * Math.PI), t * Math.pow(2, -10 * r) * Math.sin((r - e) * (2 * Math.PI) / a) + 1);
1570}, elasticInOut: function(r) {
1571  var e, t = 0.1, a = 0.4;
1572  return r === 0 ? 0 : r === 1 ? 1 : (!t || t < 1 ? (t = 1, e = a / 4) : e = a * Math.asin(1 / t) / (2 * Math.PI), (r *= 2) < 1 ? -0.5 * (t * Math.pow(2, 10 * (r -= 1)) * Math.sin((r - e) * (2 * Math.PI) / a)) : t * Math.pow(2, -10 * (r -= 1)) * Math.sin((r - e) * (2 * Math.PI) / a) * 0.5 + 1);
1573}, backIn: function(r) {
1574  var e = 1.70158;
1575  return r * r * ((e + 1) * r - e);
1576}, backOut: function(r) {
1577  var e = 1.70158;
1578  return --r * r * ((e + 1) * r + e) + 1;
1579}, backInOut: function(r) {
1580  var e = 2.5949095;
1581  return (r *= 2) < 1 ? 0.5 * (r * r * ((e + 1) * r - e)) : 0.5 * ((r -= 2) * r * ((e + 1) * r + e) + 2);
1582}, bounceIn: function(r) {
1583  return 1 - zs.bounceOut(1 - r);
1584}, bounceOut: function(r) {
1585  return r < 1 / 2.75 ? 7.5625 * r * r : r < 2 / 2.75 ? 7.5625 * (r -= 1.5 / 2.75) * r + 0.75 : r < 2.5 / 2.75 ? 7.5625 * (r -= 2.25 / 2.75) * r + 0.9375 : 7.5625 * (r -= 2.625 / 2.75) * r + 0.984375;
1586}, bounceInOut: function(r) {
1587  return r < 0.5 ? zs.bounceIn(r * 2) * 0.5 : zs.bounceOut(r * 2 - 1) * 0.5 + 0.5;
1588} }, eu = Math.pow, Xa = Math.sqrt, Tf = 1e-8, xT = 1e-4, c0 = Xa(3), ru = 1 / 3, Wr = sn(), or = sn(), so = sn();
1589function Ga(r) {
1590  return r > -Tf && r < Tf;
1591}
1592function bT(r) {
1593  return r > Tf || r < -Tf;
1594}
1595function ae(r, e, t, a, n) {
1596  var i = 1 - n;
1597  return i * i * (i * r + 3 * n * e) + n * n * (n * a + 3 * i * t);
1598}
1599function p0(r, e, t, a, n) {
1600  var i = 1 - n;
1601  return 3 * (((e - r) * i + 2 * (t - e) * n) * i + (a - t) * n * n);
1602}
1603function Cf(r, e, t, a, n, i) {
1604  var o = a + 3 * (e - t) - r, s = 3 * (t - e * 2 + r), l = 3 * (e - r), u = r - n, f = s * s - 3 * o * l, h = s * l - 9 * o * u, v = l * l - 3 * s * u, c = 0;
1605  if (Ga(f) && Ga(h)) if (Ga(s)) i[0] = 0;
1606  else {
1607    var p = -l / s;
1608    p >= 0 && p <= 1 && (i[c++] = p);
1609  }
1610  else {
1611    var d = h * h - 4 * f * v;
1612    if (Ga(d)) {
1613      var g = h / f, p = -s / o + g, y = -g / 2;
1614      p >= 0 && p <= 1 && (i[c++] = p), y >= 0 && y <= 1 && (i[c++] = y);
1615    } else if (d > 0) {
1616      var m = Xa(d), _ = f * s + 1.5 * o * (-h + m), S = f * s + 1.5 * o * (-h - m);
1617      _ < 0 ? _ = -eu(-_, ru) : _ = eu(_, ru), S < 0 ? S = -eu(-S, ru) : S = eu(S, ru);
1618      var p = (-s - (_ + S)) / (3 * o);
1619      p >= 0 && p <= 1 && (i[c++] = p);
1620    } else {
1621      var b = (2 * f * s - 3 * o * h) / (2 * Xa(f * f * f)), x = Math.acos(b) / 3, w = Xa(f), T = Math.cos(x), p = (-s - 2 * w * T) / (3 * o), y = (-s + w * (T + c0 * Math.sin(x))) / (3 * o), C = (-s + w * (T - c0 * Math.sin(x))) / (3 * o);
1622      p >= 0 && p <= 1 && (i[c++] = p), y >= 0 && y <= 1 && (i[c++] = y), C >= 0 && C <= 1 && (i[c++] = C);
1623    }
1624  }
1625  return c;
1626}
1627function wT(r, e, t, a, n) {
1628  var i = 6 * t - 12 * e + 6 * r, o = 9 * e + 3 * a - 3 * r - 9 * t, s = 3 * e - 3 * r, l = 0;
1629  if (Ga(o)) {
1630    if (bT(i)) {
1631      var u = -s / i;
1632      u >= 0 && u <= 1 && (n[l++] = u);
1633    }
1634  } else {
1635    var f = i * i - 4 * o * s;
1636    if (Ga(f)) n[0] = -i / (2 * o);
1637    else if (f > 0) {
1638      var h = Xa(f), u = (-i + h) / (2 * o), v = (-i - h) / (2 * o);
1639      u >= 0 && u <= 1 && (n[l++] = u), v >= 0 && v <= 1 && (n[l++] = v);
1640    }
1641  }
1642  return l;
1643}
1644function en(r, e, t, a, n, i) {
1645  var o = (e - r) * n + r, s = (t - e) * n + e, l = (a - t) * n + t, u = (s - o) * n + o, f = (l - s) * n + s, h = (f - u) * n + u;
1646  i[0] = r, i[1] = o, i[2] = u, i[3] = h, i[4] = h, i[5] = f, i[6] = l, i[7] = a;
1647}
1648function TT(r, e, t, a, n, i, o, s, l, u, f) {
1649  var h, v = 5e-3, c = 1 / 0, p, d, g, y;
1650  Wr[0] = l, Wr[1] = u;
1651  for (var m = 0; m < 1; m += 0.05) or[0] = ae(r, t, n, o, m), or[1] = ae(e, a, i, s, m), g = $a(Wr, or), g < c && (h = m, c = g);
1652  c = 1 / 0;
1653  for (var _ = 0; _ < 32 && !(v < xT); _++) p = h - v, d = h + v, or[0] = ae(r, t, n, o, p), or[1] = ae(e, a, i, s, p), g = $a(or, Wr), p >= 0 && g < c ? (h = p, c = g) : (so[0] = ae(r, t, n, o, d), so[1] = ae(e, a, i, s, d), y = $a(so, Wr), d <= 1 && y < c ? (h = d, c = y) : v *= 0.5);
1654  return f && (f[0] = ae(r, t, n, o, h), f[1] = ae(e, a, i, s, h)), Xa(c);
1655}
1656function uP(r, e, t, a, n, i, o, s, l) {
1657  for (var u = r, f = e, h = 0, v = 1 / l, c = 1; c <= l; c++) {
1658    var p = c * v, d = ae(r, t, n, o, p), g = ae(e, a, i, s, p), y = d - u, m = g - f;
1659    h += Math.sqrt(y * y + m * m), u = d, f = g;
1660  }
1661  return h;
1662}
1663function fe(r, e, t, a) {
1664  var n = 1 - a;
1665  return n * (n * r + 2 * a * e) + a * a * t;
1666}
1667function Up(r, e, t, a) {
1668  return 2 * ((1 - a) * (e - r) + a * (t - e));
1669}
1670function fP(r, e, t, a, n) {
1671  var i = r - 2 * e + t, o = 2 * (e - r), s = r - a, l = 0;
1672  if (Ga(i)) {
1673    if (bT(o)) {
1674      var u = -s / o;
1675      u >= 0 && u <= 1 && (n[l++] = u);
1676    }
1677  } else {
1678    var f = o * o - 4 * i * s;
1679    if (Ga(f)) {
1680      var u = -o / (2 * i);
1681      u >= 0 && u <= 1 && (n[l++] = u);
1682    } else if (f > 0) {
1683      var h = Xa(f), u = (-o + h) / (2 * i), v = (-o - h) / (2 * i);
1684      u >= 0 && u <= 1 && (n[l++] = u), v >= 0 && v <= 1 && (n[l++] = v);
1685    }
1686  }
1687  return l;
1688}
1689function CT(r, e, t) {
1690  var a = r + t - 2 * e;
1691  return a === 0 ? 0.5 : (r - e) / a;
1692}
1693function el(r, e, t, a, n) {
1694  var i = (e - r) * a + r, o = (t - e) * a + e, s = (o - i) * a + i;
1695  n[0] = r, n[1] = i, n[2] = s, n[3] = s, n[4] = o, n[5] = t;
1696}
1697function AT(r, e, t, a, n, i, o, s, l) {
1698  var u, f = 5e-3, h = 1 / 0;
1699  Wr[0] = o, Wr[1] = s;
1700  for (var v = 0; v < 1; v += 0.05) {
1701    or[0] = fe(r, t, n, v), or[1] = fe(e, a, i, v);
1702    var c = $a(Wr, or);
1703    c < h && (u = v, h = c);
1704  }
1705  h = 1 / 0;
1706  for (var p = 0; p < 32 && !(f < xT); p++) {
1707    var d = u - f, g = u + f;
1708    or[0] = fe(r, t, n, d), or[1] = fe(e, a, i, d);
1709    var c = $a(or, Wr);
1710    if (d >= 0 && c < h) u = d, h = c;
1711    else {
1712      so[0] = fe(r, t, n, g), so[1] = fe(e, a, i, g);
1713      var y = $a(so, Wr);
1714      g <= 1 && y < h ? (u = g, h = y) : f *= 0.5;
1715    }
1716  }
1717  return l && (l[0] = fe(r, t, n, u), l[1] = fe(e, a, i, u)), Xa(h);
1718}
1719function hP(r, e, t, a, n, i, o) {
1720  for (var s = r, l = e, u = 0, f = 1 / o, h = 1; h <= o; h++) {
1721    var v = h * f, c = fe(r, t, n, v), p = fe(e, a, i, v), d = c - s, g = p - l;
1722    u += Math.sqrt(d * d + g * g), s = c, l = p;
1723  }
1724  return u;
1725}
1726var vP = /cubic-bezier\(([0-9,\.e ]+)\)/;
1727function Bg(r) {
1728  var e = r && vP.exec(r);
1729  if (e) {
1730    var t = e[1].split(","), a = +ur(t[0]), n = +ur(t[1]), i = +ur(t[2]), o = +ur(t[3]);
1731    if (isNaN(a + n + i + o)) return;
1732    var s = [];
1733    return function(l) {
1734      return l <= 0 ? 0 : l >= 1 ? 1 : Cf(0, a, i, 1, l, s) && ae(0, n, o, 1, s[0]);
1735    };
1736  }
1737}
1738var cP = function() {
1739  function r(e) {
1740    this._inited = false, this._startTime = 0, this._pausedTime = 0, this._paused = false, this._life = e.life || 1e3, this._delay 
1740= e.delay || 0, this.loop = e.loop || false, this.onframe = e.onframe || $t, this.ondestroy = e.ondestroy || $t, this.onrestart = e.onrestart || $t, e.easing && this.setEasing(e.easing);
1741  }
1742  return r.prototype.step = function(e, t) {
1743    if (this._inited || (this._startTime = e + this._delay, this._inited = true), this._paused) {
1744      this._pausedTime += t;
1745      return;
1746    }
1747    var a = this._life, n = e - this._startTime - this._pausedTime, i = n / a;
1748    i < 0 && (i = 0), i = Math.min(i, 1);
1749    var o = this.easingFunc, s = o ? o(i) : i;
1750    if (this.onframe(s), i === 1) if (this.loop) {
1751      var l = n % a;
1752      this._startTime = e - l, this._pausedTime = 0, this.onrestart();
1753    } else return true;
1754    return false;
1755  }, r.prototype.pause = function() {
1756    this._paused = true;
1757  }, r.prototype.resume = function() {
1758    this._paused = false;
1759  }, r.prototype.setEasing = function(e) {
1760    this.easing = e, this.easingFunc = j(e) ? e : zs[e] || Bg(e);
1761  }, r;
1762}(), DT = /* @__PURE__ */ function() {
1763  function r(e) {
1764    this.value = e;
1765  }
1766  return r;
1767}(), pP = function() {
1768  function r() {
1769    this._len = 0;
1770  }
1771  return r.prototype.insert = function(e) {
1772    var t = new DT(e);
1773    return this.insertEntry(t), t;
1774  }, r.prototype.insertEntry = function(e) {
1775    this.head ? (this.tail.next = e, e.prev = this.tail, e.next = null, this.tail = e) : this.head = this.tail = e, this._len++;
1776  }, r.prototype.remove = function(e) {
1777    var t = e.prev, a = e.next;
1778    t ? t.next = a : this.head = a, a ? a.prev = t : this.tail = t, e.next = e.prev = null, this._len--;
1779  }, r.prototype.len = function() {
1780    return this._len;
1781  }, r.prototype.clear = function() {
1782    this.head = this.tail = null, this._len = 0;
1783  }, r;
1784}(), Rl = function() {
1785  function r(e) {
1786    this._list = new pP(), this._maxSize = 10, this._map = {}, this._maxSize = e;
1787  }
1788  return r.prototype.put = function(e, t) {
1789    var a = this._list, n = this._map, i = null;
1790    if (n[e] == null) {
1791      var o = a.len(), s = this._lastRemovedEntry;
1792      if (o >= this._maxSize && o > 0) {
1793        var l = a.head;
1794        a.remove(l), delete n[l.key], i = l.value, this._lastRemovedEntry = l;
1795      }
1796      s ? s.value = t : s = new DT(t), s.key = e, a.insertEntry(s), n[e] = s;
1797    }
1798    return i;
1799  }, r.prototype.get = function(e) {
1800    var t = this._map[e], a = this._list;
1801    if (t != null) return t !== a.tail && (a.remove(t), a.insertEntry(t)), t.value;
1802  }, r.prototype.clear = function() {
1803    this._list.clear(), this._map = {};
1804  }, r.prototype.len = function() {
1805    return this._list.len();
1806  }, r;
1807}(), d0 = { 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], ol
1807ive: [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] };
1808function Dr(r) {
1809  return r = Math.round(r), r < 0 ? 0 : r > 255 ? 255 : r;
1810}
1811function dP(r) {
1812  return r = Math.round(r), r < 0 ? 0 : r > 360 ? 360 : r;
1813}
1814function rl(r) {
1815  return r < 0 ? 0 : r > 1 ? 1 : r;
1816}
1817function _v(r) {
1818  var e = r;
1819  return e.length && e.charAt(e.length - 1) === "%" ? Dr(parseFloat(e) / 100 * 255) : Dr(parseInt(e, 10));
1820}
1821function ei(r) {
1822  var e = r;
1823  return e.length && e.charAt(e.length - 1) === "%" ? rl(parseFloat(e) / 100) : rl(parseFloat(e));
1824}
1825function Sv(r, e, t) {
1826  return t < 0 ? t += 1 : t > 1 && (t -= 1), t * 6 < 1 ? r + (e - r) * t * 6 : t * 2 < 1 ? e : t * 3 < 2 ? r + (e - r) * (2 / 3 - t) * 6 : r;
1827}
1828function Fa(r, e, t) {
1829  return r + (e - r) * t;
1830}
1831function er(r, e, t, a, n) {
1832  return r[0] = e, r[1] = t, r[2] = a, r[3] = n, r;
1833}
1834function Yp(r, e) {
1835  return r[0] = e[0], r[1] = e[1], r[2] = e[2], r[3] = e[3], r;
1836}
1837var MT = new Rl(20), au = null;
1838function Li(r, e) {
1839  au && Yp(au, e), au = MT.put(r, au || e.slice());
1840}
1841function Re(r, e) {
1842  if (r) {
1843    e = e || [];
1844    var t = MT.get(r);
1845    if (t) return Yp(e, t);
1846    r = r + "";
1847    var a = r.replace(/ /g, "").toLowerCase();
1848    if (a in d0) return Yp(e, d0[a]), Li(r, e), e;
1849    var n = a.length;
1850    if (a.charAt(0) === "#") {
1851      if (n === 4 || n === 5) {
1852        var i = parseInt(a.slice(1, 4), 16);
1853        if (!(i >= 0 && i <= 4095)) {
1854          er(e, 0, 0, 0, 1);
1855          return;
1856        }
1857        return er(e, (i & 3840) >> 4 | (i & 3840) >> 8, i & 240 | (i & 240) >> 4, i & 15 | (i & 15) << 4, n === 5 ? parseInt(a.slice(4), 16) / 15 : 1), Li(r, e), e;
1858      } else if (n === 7 || n === 9) {
1859        var i = parseInt(a.slice(1, 7), 16);
1860        if (!(i >= 0 && i <= 16777215)) {
1861          er(e, 0, 0, 0, 1);
1862          return;
1863        }
1864        return er(e, (i & 16711680) >> 16, (i & 65280) >>
1864 8, i & 255, n === 9 ? parseInt(a.slice(7), 16) / 255 : 1), Li(r, e), e;
1865      }
1866      return;
1867    }
1868    var o = a.indexOf("("), s = a.indexOf(")");
1869    if (o !== -1 && s + 1 === n) {
1870      var l = a.substr(0, o), u = a.substr(o + 1, s - (o + 1)).split(","), f = 1;
1871      switch (l) {
1872        case "rgba":
1873          if (u.length !== 4) return u.length === 3 ? er(e, +u[0], +u[1], +u[2], 1) : er(e, 0, 0, 0, 1);
1874          f = ei(u.pop());
1875        case "rgb":
1876          if (u.length >= 3) return er(e, _v(u[0]), _v(u[1]), _v(u[2]), u.length === 3 ? f : ei(u[3])), Li(r, e), e;
1877          er(e, 0, 0, 0, 1);
1878          return;
1879        case "hsla":
1880          if (u.length !== 4) {
1881            er(e, 0, 0, 0, 1);
1882            return;
1883          }
1884          return u[3] = ei(u[3]), $p(u, e), Li(r, e), e;
1885        case "hsl":
1886          if (u.length !== 3) {
1887            er(e, 0, 0, 0, 1);
1888            return;
1889          }
1890          return $p(u, e), Li(r, e), e;
1891        default:
1892          return;
1893      }
1894    }
1895    er(e, 0, 0, 0, 1);
1896  }
1897}
1898function $p(r, e) {
1899  var t = (parseFloat(r[0]) % 360 + 360) % 360 / 360, a = ei(r[1]), n = ei(r[2]), i = n <= 0.5 ? n * (a + 1) : n + a - n * a, o = n * 2 - i;
1900  return e = e || [], er(e, Dr(Sv(o, i, t + 1 / 3) * 255), Dr(Sv(o, i, t) * 255), Dr(Sv(o, i, t - 1 / 3) * 255), 1), r.length === 4 && (e[3] = r[3]), e;
1901}
1902function gP(r) {
1903  if (r) {
1904    var e = r[0] / 255, t = r[1] / 255, a = r[2] / 255, n = Math.min(e, t, a), i = Math.max(e, t, a), o = i - n, s = (i + n) / 2, l, u;
1905    if (o === 0) l = 0, u = 0;
1906    else {
1907      s < 0.5 ? u = o / (i + n) : u = o / (2 - i - n);
1908      var f = ((i - e) / 6 + o / 2) / o, h = ((i - t) / 6 + o / 2) / o, v = ((i - a) / 6 + o / 2) / o;
1909      e === i ? l = v - h : t === i ? l = 1 / 3 + f - v : a === i && (l = 2 / 3 + h - f), l < 0 && (l += 1), l > 1 && (l -= 1);
1910    }
1911    var c = [l * 360, u, s];
1912    return r[3] != null && c.push(r[3]), c;
1913  }
1914}
1915function Af(r, e) {
1916  var t = Re(r);
1917  if (t) {
1918    for (var a = 0; a < 3; a++) e < 0 ? t[a] = t[a] * (1 - e) | 0 : t[a] = (255 - t[a]) * e + t[a] | 0, t[a] > 255 ? t[a] = 255 : t[a] < 0 && (t[a] = 0);
1919    return Mr(t, t.length === 4 ? "rgba" : "rgb");
1920  }
1921}
1922function yP(r) {
1923  var e = Re(r);
1924  if (e) return ((1 << 24) + (e[0] << 16) + (e[1] << 8) + +e[2]).toString(16).slice(1);
1925}
1926function Vs(r, e, t) {
1927  if (!(!(e && e.length) || !(r >= 0 && r <= 1))) {
1928    t = t || [];
1929    var a = r * (e.length - 1), n = Math.floor(a), i = Math.ceil(a), o = e[n], s = e[i], l = a - n;
1930    return t[0] = Dr(Fa(o[0], s[0], l)), t[1] = Dr(Fa(o[1], s[1], l)), t[2] = Dr(Fa(o[2], s[2], l)), t[3] = rl(Fa(o[3], s[3], l)), t;
1931  }
1932}
1933var mP = Vs;
1934function zg(r, e, t) {
1935  if (!(!(e && e.length) || !(r >= 0 && r <= 1))) {
1936    var a = r * (e.length - 1), n = Math.floor(a), i = Math.ceil(a), o = Re(e[n]), s = Re(e[i]), l = a - n, u = Mr([Dr(Fa(o[0], s[0], l)), Dr(Fa(o[1], s[1], l)), Dr(Fa(o[2], s[2], l)), rl(Fa(o[3], s[3], l))], "rgba");
1937    return t ? { color: u, leftIndex: n, rightIndex: i, value: a } : u;
1938  }
1939}
1940var _P = zg;
1941function lo(r, e, t, a) {
1942  var n = Re(r);
1943  if (r) return n = gP(n), e != null && (n[0] = dP(e)), t != null && (n[1] = ei(t)), a != null && (n[2] = ei(a)), Mr($p(n), "rgba");
1944}
1945function al(r, e) {
1946  var t = Re(r);
1947  if (t && e != null) return t[3] = rl(e), Mr(t, "rgba");
1948}
1949function Mr(r, e) {
1950  if (!(!r || !r.length)) {
1951    var t = r[0] + "," + r[1] + "," + r[2];
1952    return (e === "rgba" || e === "hsva" || e === "hsla") && (t += "," + r[3]), e + "(" + t + ")";
1953  }
1954}
1955function nl(r, e) {
1956  var t = Re(r);
1957  return t ? (0.299 * t[0] + 0.587 * t[1] + 0.114 * t[2]) * t[3] / 255 + (1 - t[3]) * e : 0;
1958}
1959function SP() {
1960  return Mr([Math.round(Math.random() * 255), Math.round(Math.random() * 255), Math.round(Math.random() * 255)], "rgb");
1961}
1962var g0 = new Rl(100);
1963function Df(r) {
1964  if (Y(r)) {
1965    var e = g0.get(r);
1966    return e || (e = Af(r, -0.1), g0.put(r, e)), e;
1967  } else if (Il(r)) {
1968    var t = z({}, r);
1969    return t.colorStops = G(r.colorStops, function(a) {
1970      return { offset: a.offset, color: Af(a.color, -0.1) };
1971    }), t;
1972  }
1973  return r;
1974}
1975const xP = Object.freeze(Object.defineProperty({ __proto__: null, fastLerp: Vs, fastMapToColor: mP, lerp: zg, lift: Af, liftColor: Df, lum: nl, mapToColor: _P, modifyAlpha: al, modifyHSL: lo, parse: Re, random: SP, stringify: Mr, toHex: yP }, Symbol.toStringTag, { value: "Module" }));
1976var Mf = Math.round;
1977function il(r) {
1978  var e;
1979  if (!r || r === "transparent") r = "none";
1980  else if (typeof r == "string" && r.indexOf("rgba") > -1) {
1981    var t = Re(r);
1982    t && (r = "rgb(" + t[0] + "," + t[1] + "," + t[2] + ")", e = t[3]);
1983  }
1984  return { color: r, opacity: e ?? 1 };
1985}
1986var y0 = 1e-4;
1987function Ha(r) {
1988  return r < y0 && r > -y0;
1989}
1990function nu(r) {
1991  return Mf(r * 1e3) / 1e3;
1992}
1993function Xp(r) {
1994  return Mf(r * 1e4) / 1e4;
1995}
1996function bP(r) {
1997  return "matrix(" + nu(r[0]) + "," + nu(r[1]) + "," + nu(r[2]) + "," + nu(r[3]) + "," + Xp(r[4]) + "," + Xp(r[5]) + ")";
1998}
1999var wP = { left: "start", right: "end", center: "middle", middle: "middle" };
2000function TP(r, e, t) {
2001  return t === "top" ? r += e / 2 : t === "bottom" && (r -= e / 2), r;
2002}
2003function CP(r) {
2004  return r && (r.shadowBlur || r.shadowOffsetX || r.shadowOffsetY);
2005}
2006function AP(r) {
2007  var e = r.style, t = r.getGlobalScale();
2008  return [e.shadowColor, (e.shadowBlur || 0).toFixed(2), (e.shadowOffsetX || 0).toFixed(2), (e.shadowOffsetY || 0).toFixed(2), t[0], t[1]].join(",");
2009}
2010function IT(r) {
2011  return r && !!r.image;
2012}
2013function DP(r) {
2014  return r && !!r.svgElement;
2015}
2016function Vg(r) {
2017  return IT(r) || DP(r);
2018}
2019function LT(r) {
2020  return r.type === "linear";
2021}
2022function PT(r) {
2023  return r.type === "radial";
2024}
2025function RT(r) {
2026  return r && (r.type === "linear" || r.type === "radial");
2027}
2028function Ch(r) {
2029  return "url(#" + r + ")";
2030}
2031function ET(r) {
2032  var e = r.getGlobalScale(), t = Math.max(e[0], e[1]);
2033  return Math.max(Math.ceil(Math.log(t) / Math.log(10)), 1);
2034}
2035function kT(r) {
2036  var e = r.x || 0, t = r.y || 0, a = (r.rotation || 0) * Os, n = st(r.scaleX, 1), i = st(r.scaleY, 1), o = r.skewX || 0, s = r.skewY || 0, l = [];
2037  return (e || t) && l.push("translate(" + e + "px," + t + "px)"), a && l.push("rotate(" + a + ")"), (n !== 1 || i !== 1) && l.push("scale(" + n + "," + i + ")"), (o || s) && l.push("skew(" + Mf(o * Os) + "deg, " + Mf(s * Os) + "deg)"), l.join(" ");
2038}
2039var MP = function() {
2040  return yt.hasGlobalWindow && j(window.btoa) ? function(r) {
2041    return window.btoa(unescape(encodeURIComponent(r)));
2042  } : typeof Buffer < "u" ? function(r) {
2043    return Buffer.from(r).toString("base64");
2044  } : function(r) {
2045    return null;
2046  };
2047}(), Zp = Array.prototype.slice;
2048function la(r, e, t) {
2049  return (e - r) * t + r;
2050}
2051function xv(r, e, t, a) {
2052  for (var n = e.length, i = 0; i < n; i++) r[i] = la(e[i], t[i], a);
2053  return r;
2054}
2055function IP(r, e, t, a) {
2056  for (var n = e.length, i = n && e[0].length, o = 0; o < n; o++) {
2057    r[o] || (r[o] = []);
2058    for (var s = 0; s < i; s++) r[o][s] = la(e[o][s], t[o][s], a);
2059  }
2060  return r;
2061}
2062function iu(r, e, t, a) {
2063  for (var n = e.length, i = 0; i < n; i++) r[i] = e[i] + t[i] * a;
2064  return r;
2065}
2066function m0(r, e, t, a) {
2067  for (var n = e.length, i = n && e[0].length, o = 0; o < n; o++) {
2068    r[o] || (r[o] = []);
2069    for (var s = 0; s < i; s++) r[o][s] = e[o][s] + t[o][s] * a;
2070  }
2071  return r;
2072}
2073function LP(r, e) {
2074  for (var t = r.length, a = e.length, n = t > a ? e : r, i = Math.min(t, a), o = n[i - 1] || { color: [0, 0, 0, 0], offset: 0 }, s = i; s < Math.max(t, a); s++) n.push({ offset: o.offset, color: o.color.slice() });
2075}
2076function PP(r, e, t) {
2077  var a = r, n = e;
2078  if (!(!a.push || !n.push)) {
2079    var i = a.length, o = n.length;
2080    if (i !== o) {
2081      var s = i > o;
2082      if (s) a.length = o;
2083      else for (var l = i; l < o; l++) a.push(t === 1 ? n[l] : Zp.call(n[l]));
2084    }
2085    for (var u = a[0] && a[0].length, l = 0; l < a.length; l++) if (t === 1) isNaN(a[l]) && (a[l] = n[l]);
2086    else for (var f = 0; f < u; f++) isNaN(a[l][f]) && (a[l][f] = n[l][f]);
2087  }
2088}
2089function Gs(r) {
2090  if (ce(r)) {
2091    var e = r.length;
2092    if (ce(r[0])) {
2093      for (var t = [], a = 0; a < e; a++) t.push(Zp.call(r[a]));
2094      return t;
2095    }
2096    return Zp.call(r);
2097  }
2098  return r;
2099}
2100function ef(r) {
2101  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(",") + ")";
2102}
2103function RP(r) {
2104  return ce(r && r[0]) ? 2 : 1;
2105}
2106var ou = 0, rf = 1, OT = 2, ws = 3, qp = 4, Kp = 5, _0 = 6;
2107function S0(r) {
2108  return r === qp || r === Kp;
2109}
2110function su(r) {
2111  return r === rf || r === OT;
2112}
2113var jo = [0, 0, 0, 0], EP = function() {
2114  function r(e) {
2115    this.keyframes = [], this.discrete = false, this._invalid = false, this._needsSort = false, this._lastFr = 0, this._lastFrP = 0, this.propName = e;
2116  }
2117  return r.prototype.isFinished = function() {
2118    return this._finished;
2119  }, r.prototype.setFinished = function() {
2120    this._finished = true, this._additiveTrack && this._additiveTrack.setFinished();
2121  }, r.prototype.needsAnimate = function() {
2122    return this.keyframes.length >= 1;
2123  }, r.prototype.getAdditiveTrack = function() {
2124    return this._additiveTrack;
2125  }, r.prototype.addKeyframe = function(e, t, a) {
2126    this._needsSort = true;
2127    var n = this.keyframes, i = n.length, o = false, s = _0, l = t;
2128    if (ce(t)) {
2129      var u = RP(t);
2130      s = u, (u === 1 && !wt(t[0]) || u === 2 && !wt(t[0][0])) && (o = true);
2131    } else if (wt(t) && !po(t)) s = ou;
2132    else if (Y(t)) if (!isNaN(+t)) s = ou;
2133    else {
2134      var f = Re(t);
2135      f && (l = f, s = ws);
2136    }
2137    else if (Il(t)) {
2138      var h = z({}, l);
2139      h.colorStops = G(t.colorStops, function(c) {
2140        return { offset: c.offset, color: Re(c.color) };
2141      }
2141), LT(t) ? s = qp : PT(t) && (s = Kp), l = h;
2142    }
2143    i === 0 ? this.valType = s : (s !== this.valType || s === _0) && (o = true), this.discrete = this.discrete || o;
2144    var v = { time: e, value: l, rawValue: t, percent: 0 };
2145    return a && (v.easing = a, v.easingFunc = j(a) ? a : zs[a] || Bg(a)), n.push(v), v;
2146  }, r.prototype.prepare = function(e, t) {
2147    var a = this.keyframes;
2148    this._needsSort && a.sort(function(d, g) {
2149      return d.time - g.time;
2150    });
2151    for (var n = this.valType, i = a.length, o = a[i - 1], s = this.discrete, l = su(n), u = S0(n), f = 0; f < i; f++) {
2152      var h = a[f], v = h.value, c = o.value;
2153      h.percent = h.time / e, s || (l && f !== i - 1 ? PP(v, c, n) : u && LP(v.colorStops, c.colorStops));
2154    }
2155    if (!s && n !== Kp && t && this.needsAnimate() && t.needsAnimate() && n === t.valType && !t._finished) {
2156      this._additiveTrack = t;
2157      for (var p = a[0].value, f = 0; f < i; f++) n === ou ? a[f].additiveValue = a[f].value - p : n === ws ? a[f].additiveValue = iu([], a[f].value, p, -1) : su(n) && (a[f].additiveValue = n === rf ? iu([], a[f].value, p, -1) : m0([], a[f].value, p, -1));
2158    }
2159  }, r.prototype.step = function(e, t) {
2160    if (!this._finished) {
2161      this._additiveTrack && this._additiveTrack._finished && (this._additiveTrack = null);
2162      var a = this._additiveTrack != null, n = a ? "additiveValue" : "value", i = this.valType, o = this.keyframes, s = o.length, l = this.propName, u = i === ws, f, h = this._lastFr, v = Math.min, c, p;
2163      if (s === 1) c = p = o[0];
2164      else {
2165        if (t < 0) f = 0;
2166        else if (t < this._lastFrP) {
2167          var d = v(h + 1, s - 1);
2168          for (f = d; f >= 0 && !(o[f].percent <= t); f--) ;
2169          f = v(f, s - 2);
2170        } else {
2171          for (f = h; f < s && !(o[f].percent > t); f++) ;
2172          f = v(f - 1, s - 2);
2173        }
2174        p = o[f + 1], c = o[f];
2175      }
2176      if (c && p) {
2177        this._lastFr = f, this._lastFrP = t;
2178        var g = p.percent - c.percent, y = g === 0 ? 1 : v((t - c.percent) / g, 1);
2179        p.easingFunc && (y = p.easingFunc(y));
2180        var m = a ? this._additiveValue : u ? jo : e[l];
2181        if ((su(i) || u) && !m && (m = this._additiveValue = []), this.discrete) e[l] = y < 1 ? c.rawValue : p.rawValue;
2182        else if (su(i)) i === rf ? xv(m, c[n], p[n], y) : IP(m, c[n], p[n], y);
2183        else if (S0(i)) {
2184          var _ = c[n], S = p[n], b = i === qp;
2185          e[l] = { type: b ? "linear" : "radial", x: la(_.x, S.x, y), y: la(_.y, S.y, y), colorStops: G(_.colorStops, function(w, T) {
2186            var C = S.colorStops[T];
2187            return { offset: la(w.offset, C.offset, y), color: ef(xv([], w.color, C.color, y)) };
2188          }), global: S.global }, b ? (e[l].x2 = la(_.x2, S.x2, y), e[l].y2 = la(_.y2, S.y2, y)) : e[l].r = la(_.r, S.r, y);
2189        } else if (u) xv(m, c[n], p[n], y), a || (e[l] = ef(m));
2190        else {
2191          var x = la(c[n], p[n], y);
2192          a ? this._additiveValue = x : e[l] = x;
2193        }
2194        a && this._addToTarget(e);
2195      }
2196    }
2197  }, r.prototype._addToTarget = function(e) {
2198    var t = this.valType, a = this.propName, n = this._additiveValue;
2199    t === ou ? e[a] = e[a] + n : t === ws ? (Re(e[a], jo), iu(jo, jo, n, 1), e[a] = ef(jo)) : t === rf ? iu(e[a], e[a], n, 1) : t === OT && m0(e[a], e[a], n, 1);
2200  }, r;
2201}(), Gg = function() {
2202  function r(e, t, a, n) {
2203    if (this._tracks = {}, this._trackKeys = [], this._maxTime = 0, this._started = 0, this._clip = null, this._target = e, this._loop = t, t && n) {
2204      _h("Can' use additive animation on looped animation.");
2205      return;
2206    }
2207    this._additiveAnimators = n, this._allowDiscrete = a;
2208  }
2209  return r.prototype.getMaxTime = function() {
2210    return this._maxTime;
2211  }, r.prototype.getDelay = function() {
2212    return this._delay;
2213  }, r.prototype.getLoop = function() {
2214    return this._loop;
2215  }, r.prototype.getTarget = function() {
2216    return this._target;
2217  }, r.prototype.changeTarget = function(e) {
2218    this._target = e;
2219  }, r.prototype.when = function(e, t, a) {
2220    return this.whenWithKeys(e, t, _t(t), a);
2221  }, r.prototype.whenWithKeys = function(e, t, a, n) {
2222    for (var i = this._tracks, o = 0; o < a.length; o++) {
2223      var s = a[o], l = i[s];
2224      if (!l) {
2225        l = i[s] = new EP(s);
2226        var u = void 0, f = this._getAdditiveTrack(s);
2227        if (f) {
2228          var h = f.keyframes, v = h[h.length - 1];
2229          u = v && v.value, f.valType === ws && u && (u = ef(u));
2230        } else u = this._target[s];
2231        if (u == null) continue;
2232        e > 0 && l.addKeyframe(0, Gs(u), n), this._trackKeys.push(s);
2233      }
2234      l.addKeyframe(e, Gs(t[s]), n);
2235    }
2236    return this._maxTime = Math.max(this._maxTime, e), this;
2237  }, r.prototype.pause = function() {
2238    this._clip.pause(), this._paused = true;
2239  }, r.prototype.resume = function() {
2240    this._clip.resume(), this._paused = false;
2241  }, r.prototype.isPaused = function() {
2242    return !!this._paused;
2243  }, r.prototype.duration = function(e) {
2244    return this._maxTime = e, this._force = true, this;
2245  }, r.prototype._doneCallback = function() {
2246    this._setTracksFinished(), this._clip = null;
2247    var e = this._doneCbs;
2248    if (e) for (var t = e.length, a = 0; a < t; a++) e[a].call(this);
2249  }, r.prototype._abortedCallback = function() {
2250    this._setTracksFinished();
2251    var e = this.animation, t = this._abortedCbs;
2252    if (e && e.removeClip(this._clip), this._clip = null, t) for (var a = 0; a < t.length; a++) t[a].call(this);
2253  }, r.prototype._setTracksFinished = function() {
2254    for (var e = this._tracks, t = this._trackKeys, a = 0; a < t.length; a++) e[t[a]].setFinished();
2255  }, r.prototype._getAdditiveTrack = function(e) {
2256    var t, a = this._additiveAnimators;
2257    if (a) for (var n = 0; n < a.length; n++) {
2258      var i = a[n].getTrack(e);
2259      i && (t = i);
2260    }
2261    return t;
2262  }, r.prototype.start = function(e) {
2263    if (!(this._started > 0)) {
2264      this._started = 1;
2265      for (var t = this, a = [], n = this._maxTime || 0, i = 0; i < this._trackKeys.length; i++) {
2266        var o = this._trackKeys[i], s = this._tracks[o], l = this._getAdditiveTrack(o), u = s.keyframes, f = u.length;
2267        if (s.prepare(n, l), s.needsAnimate()) if (!this._allowDiscrete && s.discrete) {
2268          var h = u[f - 1];
2269          h && (t._target[s.propName] = h.rawValue), s.setFinished();
2270        } else a.push(s);
2271      }
2272      if (a.length || this._force) {
2273        var v = new cP({ life: n, loop: this._loop, delay: this._delay || 0, onframe: function(c) {
2274          t._started = 2;
2275          var p = t._additiveAnimators;
2276          if (p) {
2277            for (var d = false, g = 0; g < p.length; g++) if (p[g]._clip) {
2278              d = true;
2279              break;
2280            }
2281            d || (t._additiveAnimators = null);
2282          }
2283          for (var g = 0; g < a.length; g++) a[g].step(t._target, c);
2284          var y = t._onframeCbs;
2285          if (y) for (var g = 0; g < y.length; g++) y[g](t._target, c);
2286        }, ondestroy: function() {
2287          t._doneCallback();
2288        } });
2289        this._clip = v, this.animation && this.animation.addClip(v), e && v.setEasing(e);
2290      } else this._doneCallback();
2291      return this;
2292    }
2293  }, r.prototype.stop = function(e) {
2294    if (this._clip) {
2295      var t = this._clip;
2296      e && t.onframe(1), this._abortedCallback();
2297    }
2298  }, r.prototype.delay = function(e) {
2299    return this._delay = e, this;
2300  }, r.prototype.during = function(e) {
2301    return e && (this._onframeCbs || (this._onframeCbs = []), this._onframeCbs.push(e)), this;
2302  }, r.prototype.done = function(e) {
2303    return e && (this._doneCbs || (this._doneCbs = []), this._doneCbs.push(e)), this;
2304  }, r.prototype.aborted = function(e) {
2305    return e && (this._abortedCbs || (this._abortedCbs = []), this._abortedCbs.push(e)), this;
2306  }, r.prototype.getClip = function() {
2307    return this._clip;
2308  }, r.prototype.getTrack = function(e) {
2309    return this._tracks[e];
2310  }, r.prototype.getTracks = function() {
2311    var e = this;
2312    return G(this._trackKeys, function(t) {
2313      return e._tracks[t];
2314    });
2315  }, r.prototype.stopTracks = function(e, t) {
2316    if (!e.length || !this._clip) return true;
2317    for (var a = this._tracks, n = this._trackKeys, i = 0; i < e.length; i++) {
2318      var o = a[e[i]];
2319      o && !o.isFinished() && (t ? o.step(this._target, 1) : this._started === 1 && o.step(this._target, 0), o.setFinished());
2320    }
2321    for (var s = true, i = 0; i < n.length; i++) if (!a[n[i]].isFinished()) {
2322      s = false;
2323      break;
2324    }
2325    return s && this._abortedCallback(), s;
2326  }, r.prototype.saveTo = function(e, t, a) {
2327    if (e) {
2328      t = t || this._trackKeys;
2329      for (var n = 0; n < t.length; n++) {
2330        var i = t[n], o = this._tracks[i];
2331        if (!(!o || o.isFinished())) {
2332          var s = o.keyframes, l = s[a ? 0 : s.length - 1];
2333          l && (e[i] = Gs(l.rawValue));
2334        }
2335      }
2336    }
2337  }, r.prototype.__changeFinalValue = function(e, t) {
2338    t = t || _t(e);
2339    for (var a = 0; a < t.length; a++) {
2340      var n = t[a], i = this._tracks[n];
2341      if (i) {
2342        var o = i.keyframes;
2343        if (o.length > 1) {
2344          var s = o.pop();
2345          i.addKeyframe(s.time, e[n]), i.prepare(this._maxTime, i.getAdditiveTrack());
2346        }
2347      }
2348    }
2349  }, r;
2350}();
2351function ro() {
2352  return (/* @__PURE__ */ new Date()).getTime();
2353}
2354var kP = function(r) {
2355  Ft(e, r);
2356  function e(t) {
2357    var a = r.call(this) || this;
2358    return a._running = false, a._time = 0, a._pausedTime = 0, a._pauseStart = 0, a._paused = false, t = t || {}, a.stage = t.stage || {}, a;
2359  }
2360  return e.prototype.addClip = function(t) {
2361    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;
2362  }, e.prototype.addAnimator = function(t) {
2363    t.animation = this;
2364    var a = t.getClip();
2365    a && this.addClip(a);
2366  }, e.prototype.removeClip = function(t) {
2367    if (t.animation) {
2368      var a = t.prev, n = t.next;
2369      a ? a.next = n : this._head = n, n ? n.prev = a : this._tail = a, t.next = t.prev = t.animation = null;
2370    }
2371  }, e.prototype.removeAnimator = function(t) {
2372    var a = t.getClip();
2373    a && this.removeClip(a), t.animation = null;
2374  }, e.prototype.update = function(t) {
2375    for (var a = ro() - this._pausedTime, n = a - this._time, i = this._head; i; ) {
2376      var o = i.next, s = i.step(a, n);
2377      s && (i.ondestroy(), this.removeClip(i)), i = o;
2378    }
2379    this._time = a, t || (this.trigger("frame", n), this.stage.update && this.stage.update(
2379));
2380  }, e.prototype._startLoop = function() {
2381    var t = this;
2382    this._running = true;
2383    function a() {
2384      t._running && (wf(a), !t._paused && t.update());
2385    }
2386    wf(a);
2387  }, e.prototype.start = function() {
2388    this._running || (this._time = ro(), this._pausedTime = 0, this._startLoop());
2389  }, e.prototype.stop = function() {
2390    this._running = false;
2391  }, e.prototype.pause = function() {
2392    this._paused || (this._pauseStart = ro(), this._paused = true);
2393  }, e.prototype.resume = function() {
2394    this._paused && (this._pausedTime += ro() - this._pauseStart, this._paused = false);
2395  }, e.prototype.clear = function() {
2396    for (var t = this._head; t; ) {
2397      var a = t.next;
2398      t.prev = t.next = t.animation = null, t = a;
2399    }
2400    this._head = this._tail = null;
2401  }, e.prototype.isFinished = function() {
2402    return this._head == null;
2403  }, e.prototype.animate = function(t, a) {
2404    a = a || {}, this.start();
2405    var n = new Gg(t, a.loop);
2406    return this.addAnimator(n), n;
2407  }, e;
2408}(cr), OP = 300, bv = yt.domSupported, wv = function() {
2409  var r = ["click", "dblclick", "mousewheel", "wheel", "mouseout", "mouseup", "mousedown", "mousemove", "contextmenu"], e = ["touchstart", "touchend", "touchmove"], t = { pointerdown: 1, pointerup: 1, pointermove: 1, pointerout: 1 }, a = G(r, function(n) {
2410    var i = n.replace("mouse", "pointer");
2411    return t.hasOwnProperty(i) ? i : n;
2412  });
2413  return { mouse: r, touch: e, pointer: a };
2414}(), x0 = { mouse: ["mousemove", "mouseup"], pointer: ["pointermove", "pointerup"] }, b0 = false;
2415function jp(r) {
2416  var e = r.pointerType;
2417  return e === "pen" || e === "touch";
2418}
2419function NP(r) {
2420  r.touching = true, r.touchTimer != null && (clearTimeout(r.touchTimer), r.touchTimer = null), r.touchTimer = setTimeout(function() {
2421    r.touching = false, r.touchTimer = null;
2422  }, 700);
2423}
2424function Tv(r) {
2425  r && (r.zrByTouch = true);
2426}
2427function BP(r, e) {
2428  return rr(r.dom, new zP(r, e), true);
2429}
2430function NT(r, e) {
2431  for (var t = e, a = false; t && t.nodeType !== 9 && !(a = t.domBelongToZr || t !== e && t === r.painterRoot); ) t = t.parentNode;
2432  return a;
2433}
2434var zP = /* @__PURE__ */ function() {
2435  function r(e, t) {
2436    this.stopPropagation = $t, this.stopImmediatePropagation = $t, this.preventDefault = $t, this.type = t.type, this.target = this.currentTarget = e.dom, this.pointerType = t.pointerType, this.clientX = t.clientX, this.clientY = t.clientY;
2437  }
2438  return r;
2439}(), xr = { mousedown: function(r) {
2440  r = rr(this.dom, r), this.__mayPointerCapture = [r.zrX, r.zrY], this.trigger("mousedown", r);
2441}, mousemove: function(r) {
2442  r = rr(this.dom, r);
2443  var e = this.__mayPointerCapture;
2444  e && (r.zrX !== e[0] || r.zrY !== e[1]) && this.__togglePointerCapture(true), this.trigger("mousemove", r);
2445}, mouseup: function(r) {
2446  r = rr(this.dom, r), this.__togglePointerCapture(false), this.trigger("mouseup", r);
2447}, mouseout: function(r) {
2448  r = rr(this.dom, r);
2449  var e = r.toElement || r.relatedTarget;
2450  NT(this, e) || (this.__pointerCapturing && (r.zrEventControl = "no_globalout"), this.trigger("mouseout", r));
2451}, wheel: function(r) {
2452  b0 = true, r = rr(this.dom, r), this.trigger("mousewheel", r);
2453}, mousewheel: function(r) {
2454  b0 || (r = rr(this.dom, r), this.trigger("mousewheel", r));
2455}, touchstart: function(r) {
2456  r = rr(this.dom, r), Tv(r), this.__lastTouchMoment = /* @__PURE__ */ new Date(), this.handler.processGesture(r, "start"), xr.mousemove.call(this, r), xr.mousedown.call(this, r);
2457}, touchmove: function(r) {
2458  r = rr(this.dom, r), Tv(r), this.handler.processGesture(r, "change"), xr.mousemove.call(this, r);
2459}, touchend: function(r) {
2460  r = rr(this.dom, r), Tv(r), this.handler.processGesture(r, "end"), xr.mouseup.call(this, r), +/* @__PURE__ */ new Date() - +this.__lastTouchMoment < OP && xr.click.call(this, r);
2461}, pointerdown: function(r) {
2462  xr.mousedown.call(this, r);
2463}, pointermove: function(r) {
2464  jp(r) || xr.mousemove.call(this, r);
2465}, pointerup: function(r) {
2466  xr.mouseup.call(this, r);
2467}, pointerout: function(r) {
2468  jp(r) || xr.mouseout.call(this, r);
2469} };
2470D(["click", "dblclick", "contextmenu"], function(r) {
2471  xr[r] = function(e) {
2472    e = rr(this.dom, e), this.trigger(r, e);
2473  };
2474});
2475var Jp = { pointermove: function(r) {
2476  jp(r) || Jp.mousemove.call(this, r);
2477}, pointerup: function(r) {
2478  Jp.mouseup.call(this, r);
2479}, mousemove: function(r) {
2480  this.trigger("mousemove", r);
2481}, mouseup: function(r) {
2482  var e = this.__pointerCapturing;
2483  this.__togglePointerCapture(false), this.trigger("mouseup", r), e && (r.zrEventC
2483ontrol = "only_globalout", this.trigger("mouseout", r));
2484} };
2485function VP(r, e) {
2486  var t = e.domHandlers;
2487  yt.pointerEventsSupported ? D(wv.pointer, function(a) {
2488    af(e, a, function(n) {
2489      t[a].call(r, n);
2490    });
2491  }) : (yt.touchEventsSupported && D(wv.touch, function(a) {
2492    af(e, a, function(n) {
2493      t[a].call(r, n), NP(e);
2494    });
2495  }), D(wv.mouse, function(a) {
2496    af(e, a, function(n) {
2497      n = Ng(n), e.touching || t[a].call(r, n);
2498    });
2499  }));
2500}
2501function GP(r, e) {
2502  yt.pointerEventsSupported ? D(x0.pointer, t) : yt.touchEventsSupported || D(x0.mouse, t);
2503  function t(a) {
2504    function n(i) {
2505      i = Ng(i), NT(r, i.target) || (i = BP(r, i), e.domHandlers[a].call(r, i));
2506    }
2507    af(e, a, n, { capture: true });
2508  }
2509}
2510function af(r, e, t, a) {
2511  r.mounted[e] = t, r.listenerOpts[e] = a, Wp(r.domTarget, e, t, a);
2512}
2513function Cv(r) {
2514  var e = r.mounted;
2515  for (var t in e) e.hasOwnProperty(t) && K2(r.domTarget, t, e[t], r.listenerOpts[t]);
2516  r.mounted = {};
2517}
2518var w0 = /* @__PURE__ */ function() {
2519  function r(e, t) {
2520    this.mounted = {}, this.listenerOpts = {}, this.touching = false, this.domTarget = e, this.domHandlers = t;
2521  }
2522  return r;
2523}(), FP = function(r) {
2524  Ft(e, r);
2525  function e(t, a) {
2526    var n = r.call(this) || this;
2527    return n.__pointerCapturing = false, n.dom = t, n.painterRoot = a, n._localHandlerScope = new w0(t, xr), bv && (n._globalHandlerScope = new w0(document, Jp)), VP(n, n._localHandlerScope), n;
2528  }
2529  return e.prototype.dispose = function() {
2530    Cv(this._localHandlerScope), bv && Cv(this._globalHandlerScope);
2531  }, e.prototype.setCursor = function(t) {
2532    this.dom.style && (this.dom.style.cursor = t || "default");
2533  }, e.prototype.__togglePointerCapture = function(t) {
2534    if (this.__mayPointerCapture = null, bv && +this.__pointerCapturing ^ +t) {
2535      this.__pointerCapturing = t;
2536      var a = this._globalHandlerScope;
2537      t ? GP(this, a) : Cv(a);
2538    }
2539  }, e;
2540}(cr), BT = 1;
2541yt.hasGlobalWindow && (BT = Math.max(window.devicePixelRatio || window.screen && window.screen.deviceXDPI / window.screen.logicalXDPI || 1, 1));
2542var If = BT, Qp = 0.4, td = "#333", ed = "#ccc", HP = "#eee", T0 = Pl, C0 = 5e-5;
2543function yn(r) {
2544  return r > C0 || r < -C0;
2545}
2546var mn = [], Pi = [], Av = He(), Dv = Math.abs, ca = function() {
2547  function r() {
2548  }
2549  return r.prototype.getLocalTransform = function(e) {
2550    return r.getLocalTransform(this, e);
2551  }, r.prototype.setPosition = function(e) {
2552    this.x = e[0], this.y = e[1];
2553  }, r.prototype.setScale = function(e) {
2554    this.scaleX = e[0], this.scaleY = e[1];
2555  }, r.prototype.setSkew = function(e) {
2556    this.skewX = e[0], this.skewY = e[1];
2557  }, r.prototype.setOrigin = function(e) {
2558    this.originX = e[0], this.originY = e[1];
2559  }, r.prototype.needLocalTransform = function() {
2560    return yn(this.rotation) || yn(this.x) || yn(this.y) || yn(this.scaleX - 1) || yn(this.scaleY - 1) || yn(this.skewX) || yn(this.skewY);
2561  }, r.prototype.updateTransform = function() {
2562    var e = this.parent && this.parent.transform, t = this.needLocalTransform(), a = this.transform;
2563    if (!(t || e)) {
2564      a && (T0(a), this.invTransform = null);
2565      return;
2566    }
2567    a = a || He(), t ? this.getLocalTransform(a) : T0(a), e && (t ? qr(a, e, a) : wh(a, e)), this.transform = a, this._resolveGlobalScaleRatio(a);
2568  }, r.prototype._resolveGlobalScaleRatio = function(e) {
2569    var t = this.globalScaleRatio;
2570    if (t != null && t !== 1) {
2571      this.getGlobalScale(mn);
2572      var a = mn[0] < 0 ? -1 : 1, n = mn[1] < 0 ? -1 : 1, i = ((mn[0] - a) * t + a) / mn[0] || 0, o = ((mn[1] - n) * t + n) / mn[1] || 0;
2573      e[0] *= i, e[1] *= i, e[2] *= o, e[3] *= o;
2574    }
2575    this.invTransform = this.invTransform || He(), _i(this.invTransform, e);
2576  }, r.prototype.getComputedTransform = function() {
2577    for (var e = this, t = []; e; ) t.push(e), e = e.parent;
2578    for (; e = t.pop(); ) e.updateTransform();
2579    return this.transform;
2580  }, r.prototype.setLocalTransform = function(e) {
2581    if (e) {
2582      var t = e[0] * e[0] + e[1] * e[1], a = e[2] * e[2] + e[3] * e[3], n = Math.atan2(e[1], e[0]), i = Math.PI / 2 + n - Math.atan2(e[3], e[2]);
2583      a = Math.sqrt(a) * Math.cos(i), t = Math.sqrt(t), this.skewX = i, this.skewY = 0, this.rotation = -n, this.x = +e[4], this.y = +e[5], this.scaleX = t, this.scaleY = a, this.originX = 0, this.originY = 0;
2584    }
2585  }, r.prototype.decomposeTransform = function() {
2586    if (this.transform) {
2587      var e = this.parent, t = this.transform;
2588      e && e.transform && (e.invTransform = e.invTransform || He(), qr(Pi, e.invTransform, t), t = Pi);
2589      var a = this.originX, n = this.originY;
2590      (a || n) && (Av[4] = a, Av[5] = n, qr(Pi, t, Av), Pi[4] -= a, Pi[5] -= n, t = Pi), this.setLocalTransform(t);
2591    }
2592  }, r.prototype.getGlobalScale = function(e) {
2593    var t = this.transform;
2594    return e = e || [], t ? (e[0] = Math.sqrt(t[0] * t[0] + t[1] * t[1]), e[1] = Math.sqrt(t[2] * t[2] + t[3] * t[3]), t[0] < 0 && (e[0] = -e[0]), t[3] < 0 && (e[1] = -e[1]), e) : (e[0] = 1, e[1] = 1, e);
2595  }, r.prototype.transformCoordToLocal = function(e, t) {
2596    var a = [e, t], n = this.invTransform;
2597    return n && he(a, a, n), a;
2598  }, r.prototype.transformCoordToGlobal = function(e, t) {
2599    var a = [e, t], n = this.transform;
2600    return n && he(a, a, n), a;
2601  }, r.prototype.getLineScale = function() {
2602    var e = this.transform;
2603    return e && Dv(e[0] - 1) > 1e-10 && Dv(e[3] - 1) > 1e-10 ? Math.sqrt(Dv(e[0] * e[3] - e[2] * e[1])) : 1;
2604  }, r.prototype.copyTransform = function(e) {
2605    zT(this, e);
2606  }, r.getLocalTransform = function(e, t) {
2607    t = t || [];
2608    var a = e.originX || 0, n = e.originY || 0, i = e.scaleX, o = e.scaleY, s = e.anchorX, l = e.anchorY, u = e.rotation || 0, f = e.x, h = e.y, v = e.skewX ? Math.tan(e.skewX) : 0, c = e.skewY ? Math.tan(-e.skewY) : 0;
2609    if (a || n || s || l) {
2610      var p = a + s, d = n + l;
2611      t[4] = -p * i - v * d * o, t[5] = -d * o - c * p * i;
2612    } else t[4] = t[5] = 0;
2613    return t[0] = i, t[3] = o, t[1] = c * i, t[2] = v * o, u && ln(t, t, u), t[4] += a + f, t[5] += n + h, t;
2614  }, r.initDefaultProps = function() {
2615    var e = r.prototype;
2616    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;
2617  }(), r;
2618}(), Jr = ["x", "y", "originX", "originY", "anchorX", "anchorY", "rotation", "scaleX", "scaleY", "skewX", "skewY"];
2619function zT(r, e) {
2620  for (var t = 0; t < Jr.length; t++) {
2621    var a = Jr[t];
2622    r[a] = e[a];
2623  }
2624}
2625var A0 = {};
2626function qe(r, e) {
2627  e = e || tn;
2628  var t = A0[e];
2629  t || (t = A0[e] = new Rl(500));
2630  var a = t.get(r);
2631  return a == null && (a = Lr.measureText(r, e).width, t.put(r, a)), a;
2632}
2633function D0(r, e, t, a) {
2634  var n = qe(r, e), i = Ah(e), o = Ts(0, n, t), s = Ji(0, i, a), l = new ht(
2634o, s, n, i);
2635  return l;
2636}
2637function El(r, e, t, a) {
2638  var n = ((r || "") + "").split(`
2639`), i = n.length;
2640  if (i === 1) return D0(n[0], e, t, a);
2641  for (var o = new ht(0, 0, 0, 0), s = 0; s < n.length; s++) {
2642    var l = D0(n[s], e, t, a);
2643    s === 0 ? o.copy(l) : o.union(l);
2644  }
2645  return o;
2646}
2647function Ts(r, e, t) {
2648  return t === "right" ? r -= e : t === "center" && (r -= e / 2), r;
2649}
2650function Ji(r, e, t) {
2651  return t === "middle" ? r -= e / 2 : t === "bottom" && (r -= e), r;
2652}
2653function Ah(r) {
2654  return qe("\u56FD", r);
2655}
2656function Rr(r, e) {
2657  return typeof r == "string" ? r.lastIndexOf("%") >= 0 ? parseFloat(r) / 100 * e : parseFloat(r) : r;
2658}
2659function Lf(r, e, t) {
2660  var a = e.position || "inside", n = e.distance != null ? e.distance : 5, i = t.height, o = t.width, s = i / 2, l = t.x, u = t.y, f = "left", h = "top";
2661  if (a instanceof Array) l += Rr(a[0], t.width), u += Rr(a[1], t.height), f = null, h = null;
2662  else switch (a) {
2663    case "left":
2664      l -= n, u += s, f = "right", h = "middle";
2665      break;
2666    case "right":
2667      l += n + o, u += s, h = "middle";
2668      break;
2669    case "top":
2670      l += o / 2, u -= n, f = "center", h = "bottom";
2671      break;
2672    case "bottom":
2673      l += o / 2, u += i + n, f = "center";
2674      break;
2675    case "inside":
2676      l += o / 2, u += s, f = "center", h = "middle";
2677      break;
2678    case "insideLeft":
2679      l += n, u += s, h = "middle";
2680      break;
2681    case "insideRight":
2682      l += o - n, u += s, f = "right", h = "middle";
2683      break;
2684    case "insideTop":
2685      l += o / 2, u += n, f = "center";
2686      break;
2687    case "insideBottom":
2688      l += o / 2, u += i - n, f = "center", h = "bottom";
2689      break;
2690    case "insideTopLeft":
2691      l += n, u += n;
2692      break;
2693    case "insideTopRight":
2694      l += o - n, u += n, f = "right";
2695      break;
2696    case "insideBottomLeft":
2697      l += n, u += i - n, h = "bottom";
2698      break;
2699    case "insideBottomRight":
2700      l += o - n, u += i - n, f = "right", h = "bottom";
2701      break;
2702  }
2703  return r = r || {}, r.x = l, r.y = u, r.align = f, r.verticalAlign = h, r;
2704}
2705var Mv = "__zr_normal__", Iv = Jr.concat(["ignore"]), WP = hr(Jr, function(r, e) {
2706  return r[e] = true, r;
2707}, { ignore: false }), Ri = {}, UP = new ht(0, 0, 0, 0), Dh = function() {
2708  function r(e) {
2709    this.id = Rg(), this.animators = [], this.currentStates = [], this.states = {}, this._init(e);
2710  }
2711  return r.prototype._init = function(e) {
2712    this.attr(e);
2713  }, r.prototype.drift = function(e, t, a) {
2714    switch (this.draggable) {
2715      case "horizontal":
2716        t = 0;
2717        break;
2718      case "vertical":
2719        e = 0;
2720        break;
2721    }
2722    var n = this.transform;
2723    n || (n = this.transform = [1, 0, 0, 1, 0, 0]), n[4] += e, n[5] += t, this.decomposeTransform(), this.markRedraw();
2724  }, r.prototype.beforeUpdate = function() {
2725  }, r.prototype.afterUpdate = function() {
2726  }, r.prototype.update = function() {
2727    this.updateTransform(), this.__dirty && this.updateInnerText();
2728  }, r.prototype.updateInnerText = function(e) {
2729    var t = this._textContent;
2730    if (t && (!t.ignore || e)) {
2731      this.textConfig || (this.textConfig = {});
2732      var a = this.textConfig, n = a.local, i = t.innerTransformable, o = void 0, s = void 0, l = false;
2733      i.parent = n ? this : null;
2734      var u = false;
2735      if (i.copyTransform(t), a.position != null) {
2736        var f = UP;
2737        a.layoutRect ? f.copy(a.layoutRect) : f.copy(this.getBoundingRect()), n || f.applyTransform(this.transform), this.calculateTextPosition ? this.calculateTextPosition(Ri, a, f) : Lf(Ri, a, f), i.x = Ri.x, i.y = Ri.y, o = Ri.align, s = Ri.verticalAlign;
2738        var h = a.origin;
2739        if (h && a.rotation != null) {
2740          var v = void 0, c = void 0;
2741          h === "center" ? (v = f.width * 0.5, c = f.height * 0.5) : (v = Rr(h[0], f.width), c = Rr(h[1], f.height)), u = true, i.originX = -i.x + v + (n ? 0 : f.x), i.originY = -i.y + c + (n ? 0 : f.y);
2742        }
2743      }
2744      a.rotation != null && (i.rotation = a.rotation);
2745      var p = a.offset;
2746      p && (i.x += p[0], i.y += p[1], u || (i.originX = -p[0], i.originY = -p[1]));
2747      var d = a.inside == null ? typeof a.position == "string" && a.position.indexOf("inside") >= 0 : a.inside, g = this._innerTextDefaultStyle || (this._innerTextDefaultStyle = {}), y = void 0, m = void 0, _ = void 0;
2748      d && this.canBeInsideText() ? (y = a.insideFill, m = a.insideStroke, (y == null || y === "auto") && (y = this.getInsideTextFill()), (m == null || m === "auto") && (m = this.getInsideTextStroke(y), _ = true)) : (y = a.outsideFill, m = a.outsideStroke, (y == null || y === "auto") && (y = this.getOutsideFill
2748()), (m == null || m === "auto") && (m = this.getOutsideStroke(y), _ = true)), y = y || "#000", (y !== g.fill || m !== g.stroke || _ !== g.autoStroke || o !== g.align || s !== g.verticalAlign) && (l = true, g.fill = y, g.stroke = m, g.autoStroke = _, g.align = o, g.verticalAlign = s, t.setDefaultTextStyle(g)), t.__dirty |= Ye, l && t.dirtyStyle(true);
2749    }
2750  }, r.prototype.canBeInsideText = function() {
2751    return true;
2752  }, r.prototype.getInsideTextFill = function() {
2753    return "#fff";
2754  }, r.prototype.getInsideTextStroke = function(e) {
2755    return "#000";
2756  }, r.prototype.getOutsideFill = function() {
2757    return this.__zr && this.__zr.isDarkMode() ? ed : td;
2758  }, r.prototype.getOutsideStroke = function(e) {
2759    var t = this.__zr && this.__zr.getBackgroundColor(), a = typeof t == "string" && Re(t);
2760    a || (a = [255, 255, 255, 1]);
2761    for (var n = a[3], i = this.__zr.isDarkMode(), o = 0; o < 3; o++) a[o] = a[o] * n + (i ? 0 : 255) * (1 - n);
2762    return a[3] = 1, Mr(a, "rgba");
2763  }, r.prototype.traverse = function(e, t) {
2764  }, r.prototype.attrKV = function(e, t) {
2765    e === "textConfig" ? this.setTextConfig(t) : e === "textContent" ? this.setTextContent(t) : e === "clipPath" ? this.setClipPath(t) : e === "extra" ? (this.extra = this.extra || {}, z(this.extra, t)) : this[e] = t;
2766  }, r.prototype.hide = function() {
2767    this.ignore = true, this.markRedraw();
2768  }, r.prototype.show = function() {
2769    this.ignore = false, this.markRedraw();
2770  }, r.prototype.attr = function(e, t) {
2771    if (typeof e == "string") this.attrKV(e, t);
2772    else if (tt(e)) for (var a = e, n = _t(a), i = 0; i < n.length; i++) {
2773      var o = n[i];
2774      this.attrKV(o, e[o]);
2775    }
2776    return this.markRedraw(), this;
2777  }, r.prototype.saveCurrentToNormalState = function(e) {
2778    this._innerSaveToNormal(e);
2779    for (var t = this._normalState, a = 0; a < this.animators.length; a++) {
2780      var n = this.animators[a], i = n.__fromStateTransition;
2781      if (!(n.getLoop() || i && i !== Mv)) {
2782        var o = n.targetName, s = o ? t[o] : t;
2783        n.saveTo(s);
2784      }
2785    }
2786  }, r.prototype._innerSaveToNormal = function(e) {
2787    var t = this._normalState;
2788    t || (t = this._normalState = {}), e.textConfig && !t.textConfig && (t.textConfig = this.textConfig), this._savePrimaryToNormal(e, t, Iv);
2789  }, r.prototype._savePrimaryToNormal = function(e, t, a) {
2790    for (var n = 0; n < a.length; n++) {
2791      var i = a[n];
2792      e[i] != null && !(i in t) && (t[i] = this[i]);
2793    }
2794  }, r.prototype.hasState = function() {
2795    return this.currentStates.length > 0;
2796  }, r.prototype.getState = function(e) {
2797    return this.states[e];
2798  }, r.prototype.ensureState = function(e) {
2799    var t = this.states;
2800    return t[e] || (t[e] = {}), t[e];
2801  }, r.prototype.clearStates = function(e) {
2802    this.useState(Mv, false, e);
2803  }, r.prototype.useState = function(e, t, a, n) {
2804    var i = e === Mv, o = this.hasState();
2805    if (!(!o && i)) {
2806      var s = this.currentStates, l = this.stateTransition;
2807      if (!(vt(s, e) >= 0 && (t || s.length === 1))) {
2808        var u;
2809        if (this.stateProxy && !i && (u = this.stateProxy(e)), u || (u = this.states && this.states[e]), !u && !i) {
2810          _h("State " + e + " not exists.");
2811          return;
2812        }
2813        i || this.saveCurrentToNormalState(u);
2814        var f = !!(u && u.hoverLayer || n);
2815        f && this._toggleHoverLayerFlag(true), this._applyStateObj(e, u, this._normalState, t, !a && !this.__inHover && l && l.duration > 0, l);
2816        var h = this._textContent, v = this._textGuide;
2817        return h && h.useState(e, t, a, f), v && v.useState(e, t, a, f), i ? (this.currentStates = [], this._normalState = {}) : t ? this.currentStates.push(e) : this.currentStates = [e], this._updateAnimationTargets(), this.markRedraw(), !f && this.__inHover && (this._toggleHoverLayerFlag(false), this.__dirty &= ~Ye), u;
2818      }
2819    }
2820  }, r.prototype.useStates = function(e, t, a) {
2821    if (!e.length) this.clearStates();
2822    else {
2823      var n = [], i = this.currentStates, o = e.length, s = o === i.length;
2824      if (s) {
2825        for (var l = 0; l < o; l++) if (e[l] !== i[l]) {
2826          s = false;
2827          break;
2828        }
2829      }
2830      if (s) return;
2831      for (var l = 0; l < o; l++) {
2832        var u = e[l], f = void 0;
2833        this.stateProxy && (f = this.stateProxy(u, e)), f || (f = this.states[u]), f && n.push(f);
2834      }
2835      var h = n[o - 1], v = !!(h && h.hoverLayer || a);
2836      v && this._toggleHoverLayerFlag(true);
2837      var c = this._mergeStates(n), p = this.stateTransition;
2838      this.saveCurrentToNormalState(c), this._applyStateObj(e.join(","), c, this._normalState, false, !t && !this.__inHover && p && p.duration > 0, p);
2839      var d = this._textContent, g = this._textGuide;
2840      d && d.useStates(e, t, v), g && g.useStates(e, t, v), this._updateAnimationTargets(), this.currentStates = e.slice(), this.markRedraw(), !v && this.__inHover && (this._toggleHoverLayerFlag(false), this.__dirty &= ~Ye);
2841    }
2842  }, r.prototype.isSilent = function() {
2843    for (var e = this.silent, t = this.parent; !e && t; ) {
2844      if (t.silent) {
2845        e = true;
2846        break;
2847      }
2848      t = t.parent;
2849    }
2850    return e;
2851  }, r.prototype._updateAnimationTargets = function() {
2852    for (var e = 0; e < this.animators.length; e++) {
2853      var t = this.animators[e];
2854      t.targetName && t.changeTarget(this[t.targetName]);
2855    }
2856  }, r.prototype.removeState = function(e) {
2857    var t = vt(this.currentStates, e);
2858    if (t >= 0) {
2859      var a = this.currentStates.slice();
2860      a.splice(t, 1), this.useStates(a);
2861    }
2862  }, r.prototype.replaceState = function(e, t, a) {
2863    var n = this.currentStates.slice(), i = vt(n, e), o = vt(n, t) >= 0;
2864    i >= 0 ? o ? n.splice(i, 1) : n[i] = t : a && !o && n.push(t), this.useStates(n);
2865  }, r.prototype.toggleState = function(e, t) {
2866    t ? this.useState(e, true) : this.removeState(e);
2867  }, r.prototype._mergeStates = function(e) {
2868    for (var t = {}, a, n = 0; n < e.length; n++) {
2869      var i = e[n];
2870      z(t, i), i.textConfig && (a = a || {}, z(a, i.textConfig));
2871    }
2872    return a && (t.textConfig = a), t;
2873  }, r.prototype._applyStateObj = function(e, t, a, n, i, o) {
2874    var s = !(t && n);
2875    t && t.textConfig ? (this.textConfig = z({}, n ? this.textConfig : a.textConfig), z(this.textConfig, t.textConfig)) : s && a.textConfig && (this.textConfig = a.textConfig);
2876    for (var l = {}, u = false, f = 0; f < Iv.length; f++) {
2877      var h = Iv[f], v = i && WP[h];
2878      t && t[h] != null ? v ? (u = true, l[h] = t[h]) : this[h] = t[h] : s && a[h] != null && (v ? (u = true, l[h] = a[h]) : this[h] = a[h]);
2879    }
2880    if (!i) for (var f = 0; f < this.animators.length; f++) {
2881      var c = this.animators[f], p = c.targetName;
2882      c.getLoop() || c.__changeFinalValue(p ? (t || a)[p] : t || a);
2883    }
2884    u && this._transitionState(e, l, o);
2885  }, r.prototype._attachComponent = function(e) {
2886    if (!(e.__zr && !e.__hostTarget) && e !== this) {
2887      var t = this.__zr;
2888      t && e.addSelfToZr(t), e.__zr = t, e.__hostTarget = this;
2889    }
2890  }, r.prototype._detachComponent = function(e) {
2891    e.__zr && e.removeSelfFromZr(e.__zr), e.__zr = null, e.__hostTarget = null;
2892  }, r.prototype.getClipPath = function() {
2893    return this._clipPath;
2894  }, r.prototype.setClipPath = function(e) {
2895    this._clipPath && this._clipPath !== e && this.removeClipPath(), this._attachComponent(e), this._clipPath = e, this.markRedraw();
2896  }, r.prototype.removeClipPath = function() {
2897    var e = this._clipPath;
2898    e && (this._detachComponent(e), this._clipPath = null, this.markRedraw());
2899  }, r.prototype.getTextContent = function() {
2900    return this._textContent;
2901  }, r.prototype.setTextContent = function(e) {
2902    var t = this._textContent;
2903    t !== e && (t && t !== e && this.removeTextContent(), e.innerTransformable = new ca(), this._attachComponent(e), this._textContent = e, this.markRedraw());
2904  }, r.prototype.setTextConfig = function(e) {
2905    this.textConfig || (this.textConfig = {}), z(this.textConfig, e), this.markRedraw();
2906  }, r.prototype.removeTextConfig = function() {
2907    this.textConfig = null, this.markRedraw();
2908  }, r.prototype.removeTextContent = function() {
2909    var e = this._textContent;
2910    e && (e.innerTransformable = null, this._detachComponent(e), this._textContent = null, this._innerTextDefaultStyle = null, this.markRedraw());
2911  }, r.prototype.getTextGuideLine = function() {
2912    return this._textGuide;
2913  }, r.prototype.setTextGuideLine = function(e) {
2914    this._textGuide && this._textGuide !== e && this.removeTextGuideLine(), this._attachComponent(e), this._textGuide = e, this.markRedraw();
2915  }, r.prototype.removeTextGuideLine = function() {
2916    var e = this._textGuide;
2917    e && (this._detachComponent(e), this._textGuide = null, this.markRedraw());
2918  }, r.prototype.markRedraw = function() {
2919    this.__dirty |= Ye;
2920    var e = this.__zr;
2921    e && (this.__inHover ? e.refreshHover() : e.refresh()), this.__hostTarget && this.__hostTarget.markRedraw();
2922  }, r.prototype.dirty = function() {
2923    this.markRedraw();
2924  }, r.prototype._toggleHoverLayerFlag = function(e) {
2925    this.__inHover = e;
2926    var t = this._textContent, a = this._textGuide;
2927    t && (t.__inHover = e), a && (a.__inHover = e);
2928  }, r.prototype.addSelfToZr = function(e) {
2929    if (this.__zr !== e) {
2930      this.__zr = e;
2931      var t = this.animators;
2932      if (t) for (var a = 0; a < t.length; a++) e.animation.addAnimator(t[a]);
2933      this._clipPath && this._clipPath.addSelfToZr(e), this._textContent && this._textContent.addSelfToZr(e), this._textGuide && this._textGuide.addSelfToZr(e);
2934    }
2935  }, r.prototype.removeSelfFromZr = function(e) {
2936    if (this.__zr) {
2937      this.__zr = null;
2938      var t = this.animators;
2939      if (t) for (var a = 0; a < t.length; a++) e.animation.removeAnimator(t[a]);
2940      this._clipPath && this._clipPath.removeSelfFromZr(e), this._textContent && this._textContent.removeSelfFromZr(e), this._textGuide && this._textGuide.removeSelfFromZr(e);
2941    }
2942  }, r.prototype.animate = function(e, t, a) {
2943    var n = e ? this[e] : this, i = new Gg(n, t, a);
2944    return e && (i.targetName = e), this.addAnimator(i, e), i;
2945  }, r.prototype.addAnimator = function(e, t) {
2946    var a = this.__zr, n = this;
2947    e.during(function() {
2948      n.updateDuringAnimation(t);
2949    }).done(function() {
2950      var i = n.animators, o = vt(i, e);
2951      o >= 0 && i.splice(o, 1);
2952    }), this.animators.push(e), a && a.animation.addAnimator(e), a && a.wakeUp();
2953  }, r.prototype.updateDuringAnimation = function(e) {
2954    this.markRedraw();
2955  }, r.prototype.stopAnimation = function(e, t) {
2956    for (var a = this.animators, n = a.length, i = [], o = 0; o < n; o++) {
2957      var s = a[o];
2958      !e || e === s.scope ? s.stop(t) : i.push(s);
2959    }
2960    return this.animators = i, this;
2961  }, r.prototype.animateTo = function(e, t, a) {
2962    Lv(this, e, t, a);
2963  }, r.prototype.animateFrom = function(e, t, a) {
2964    Lv(this, e, t, a, true);
2965  }, r.prototype._transitionState = function(e, t, a, n) {
2966    for (var i = Lv(this, t, a, n), o = 0; o < i.length; o++) i[o].__fromStateTransition = e;
2967  }, r.prototype.getBoundingRect = function() {
2968    return null;
2969  }, r.prototype.getPaintRect = function() {
2970    return null;
2971  }, r.initDefaultProps = function() {
2972    var e = r.prototype;
2973    e.type = "element", e.name = "", e.ignore = e.silent = e.isGroup = e.draggable = e.dragging = e.ignoreClip = e.__inHover = false, e.__dirty = Ye;
2974    function t(a, n, i, o) {
2975      Object.defineProperty(e, a, { get: function() {
2976        if (!this[n]) {
2977          var l = this[n] = [];
2978          s(this, l);
2979        }
2980        return this[n];
2981      }, set: function(l) {
2982        this[i] = l[0], this[o] = l[1], this[n] = l, s(this, l);
2983      } });
2984      function s(l, u) {
2985        Object.defineProperty(u, 0, { get: function() {
2986          return l[i];
2987        }, set: function(f) {
2988          l[i] = f;
2989        } }), Object.defineProperty(u, 1, { get: function() {
2990          return l[o];
2991        }, set: function(f) {
2992          l[o] = f;
2993        } });
2994      }
2995    }
2996    Object.defineProperty && (t("position", "_legacyPos", "x", "y"), t("scale", "_legacyScale", "scaleX", "scaleY"), t("origin", "_legacyOrigin", "originX", "originY"));
2997  }(), r;
2998}();
2999Xt(Dh, cr);
3000Xt(Dh, ca);
3001function Lv(r, e, t, a, n) {
3002  t = t || {};
3003  var i = [];
3004  VT(r, "", r, e, t, a, i, n);
3005  var o = i.length, s = false, l = t.done, u = t.aborted, f = function() {
3006    s = true, o--, o <= 0 && (s ? l && l() : u && u());
3007  }, h = function() {
3008    o--, o <= 0 && (s ? l && l() : u && u());
3009  };
3010  o || l && l(), i.length > 0 && t.during && i[0].during(function(p, d) {
3011    t.during(d);
3012  });
3013  for (var v = 0; v < i.length; v++) {
3014    var c = i[v];
3015    f && c.done(f), h && c.aborted(h), t.force && c.duration(t.duration), c.start(t.easing);
3016  }
3017  return i;
3018}
3019function Pv(r, e, t) {
3020  for (var a = 0; a < t; a++) r[a] = e[a];
3021}
3022function YP(r) {
3023  return ce(r[0]);
3024}
3025function $P(r, e, t) {
3026  if (ce(e[t])) if (ce(r[t]) || (r[t] = []), ke(e[t])) {
3027    var a = e[t].length;
3028    r[t].length !== a && (r[t] = new e[t].constructor(a), Pv(r[t], e[t], a));
3029  } else {
3030    var n = e[t], i = r[t], o = n.length;
3031    if (YP(n)) for (var s = n[0].length, l = 0; l < o; l++) i[l] ? Pv(i[l], n[l], s) : i[l] = Array.prototype.slice.call(n[l]);
3032    else Pv(i, n, o);
3033    i.length = n.length;
3034  }
3035  else r[t] = e[t];
3036}
3037function XP(r, e) {
3038  return r === e || ce(r) && ce(e) && ZP(r, e);
3039}
3040function ZP(r, e) {
3041  var t = r.length;
3042  if (t !== e.length) return false;
3043  for (var a = 0; a < t; a++) if (r[a] !== e[a]) return false;
3044  return true;
3045}
3046function VT(r, e, t, a, n, i, o, s) {
3047  for (var l = _t(a), u = n.duration, f = n.delay, h = n.additive, v = n.setToFinal, c = !tt(i), p = r.animators, d = [], g = 0; g < l.length; g++) {
3048    var y = l[g], m = a[y];
3049    if (m != null && t[y] != null && (c || i[y])) if (tt(m) && !ce(m) && !Il(m)) {
3050      if (e) {
3051        s || (t[y] = m, r.updateDuringAnimation(e));
3052        continue;
3053      }
3054      VT(r, y, t[y], m, n, i && i[y], o, s);
3055    } else d.push(y);
3056    else s || (t[y] = m, r.updateDuringAnimation(e), d.push(y));
3057  }
3058  var _ = d.length;
3059  if (!h && _) for (var S = 0; S < p.length; S++) {
3060    var b = p[S];
3061    if (b.targetName === e) {
3062      var x = b.stopTracks(d);
3063      if (x) {
3064        var w = vt(p, b);
3065        p.splice(w, 1);
3066      }
3067    }
3068  }
3069  if (n.force || (d = Ct(d, function(M) {
3070    return !XP(a[M], t[M]);
3071  }), _ = d.length), _ > 0 || n.force && !o.length) {
3072    var T = void 0, C = void 0, A = void 0;
3073    if (s) {
3074      C = {}, v && (T = {});
3075      for (var S = 0; S < _; S++) {
3076        var y = d[S];
3077        C[y] = t[y], v ? T[y] = a[y] : t[y] = a[y];
3078      }
3079    } else if (v) {
3080      A = {};
3081      for (var S = 0; S < _; S++) {
3082        var y = d[S];
3083        A[y] = Gs(t[y]), $P(t, a, y);
3084      }
3085    }
3086    var b = new Gg(t, false, false, h ? Ct(p, function(I) {
3087      return I.targetName === e;
3088    }) : null);
3089    b.targetName = e, n.scope && (b.scope = n.scope), v && T && b.whenWithKeys(0, T, d), A && b.whenWithKeys(0, A, d), b.whenWithKeys(u ?? 500, s ? C : a, d).delay(f || 0), r.addAnimator(b, e), o.push(b);
3090  }
3091}
3092var at = function(r) {
3093  Ft(e, r);
3094  function e(t) {
3095    var a = r.call(this) || this;
3096    return a.isGroup = true, a._children = [], a.attr(t), a;
3097  }
3098  return e.prototype.childrenRef = function() {
3099    return this._children;
3100  }, e.prototype.children = function() {
3101    return this._children.slice();
3102  }, e.prototype.childAt = function(t) {
3103    return this._children[t];
3104  }, e.prototype.childOfName = function(t) {
3105    for (var a = this._children, n = 0; n < a.length; n++) if (a[n].name === t) return a[n];
3106  }, e.prototype.childCount = function() {
3107    return this._children.length;
3108  }, e.prototype.add = function(t) {
3109    return t && t !== this && t.parent !== this && (this._children.push(t), this._doAdd(t)), this;
3110  }, e.prototype.addBefore = function(t, a) {
3111    if (t && t !== this && t.parent !== this && a && a.parent === this) {
3112      var n = this._children, i = n.indexOf(a);
3113      i >= 0 && (n.splice(i, 0, t), this._doAdd(t));
3114    }
3115    return this;
3116  }, e.prototype.replace = function(t, a) {
3117    var n = vt(this._children, t);
3118    return n >= 0 && this.replaceAt(a, n), this;
3119  }, e.prototype.replaceAt = function(t, a) {
3120    var n = this._children, i = n[a];
3121    if (t && t !== this && t.parent !== this && t !== i) {
3122      n[a] = t, i.parent = null;
3123      var o = this.__zr;
3124      o && i.removeSelfFromZr(o), this._doAdd(t);
3125    }
3126    return this;
3127  }, e.prototype._doAdd = function(t) {
3128    t.parent && t.parent.remove(t), t.parent = this;
3129    var a = this.__zr;
3130    a && a !== t.__zr && t.addSelfToZr(a), a && a.refresh();
3131  }, e.prototype.remove = function(t) {
3132    var a = this.__zr, n = this._children, i = vt(n, t);
3133    return i < 0 ? this : (n.splice(i, 1), t.parent = null, a && t.removeSelfFromZr(a), a && a.refresh(), this);
3134  }, e.prototype.removeAll = function() {
3135    for (var t = this._children, a = this.__zr, n = 0; n < t.length; n++) {
3136      var i = t[n];
3137      a && i.removeSelfFromZr(a), i.parent = null;
3138    }
3139    return t.length = 0, this;
3140  }, e.prototype.eachChild = function(t, a) {
3141    for (var n = this._children, i = 0; i < n.length; i++) {
3142      var o = n[i];
3143      t.call(a, o, i);
3144    }
3145    return this;
3146  }, e.prototype.traverse = function(t, a) {
3147    for (var n = 0; n < this._children.length; n++) {
3148      var i = this._children[n], o = t.call(a, i);
3149      i.isGroup && !o && i.traverse(t, a);
3150    }
3151    return this;
3152  }, e.prototype.addSelfToZr = function(t) {
3153    r.prototype.addSelfToZr.call(this, t);
3154    for (var a = 0; a < this._children.length; a++) {
3155      var n = this._children[a];
3156      n.addSelfToZr(t);
3157    }
3158  }, e.prototype.removeSelfFromZr = function(t) {
3159    r.prototype.removeSelfFromZr.call(this, t);
3160    for (var a = 0; a < this._children.length; a++) {
3161      var n = this._children[a];
3162      n.removeSelfFromZr(t);
3163    }
3164  }, e.prototype.getBoundingRect = function(t) {
3165    for (var a = new ht(0, 0, 0, 0), n = t || this._children, i = [], o = null, s = 0; s < n.length; s++) {
3166      var l = n[s];
3167      if (!(l.ignore || l.invisible)) {
3168        var u = l.getBoundingRect(), f = l.getLocalTransform(i);
3169        f ? (ht.applyTransform(a, u, f), o = o || a.clone(), o.union(a)) : (o = o || u.clone(), o.union(u));
3170      }
3171    }
3172    return o || a;
3173  }, e;
3174}(Dh);
3175at.prototype.type = "group";
3176/*!
3177* ZRender, a high performance 2d drawing library.
3178*
3179* Copyright (c) 2013, Baidu Inc.
3180* All rights reserved.
3181*
3182* LICENSE
3183* https://github.com/ecomfe/zrender/blob/master/LICENSE.txt
3184*/
3185var nf = {}, Xn = {};
3186function qP(r) {
3187  delete Xn[r];
3188}
3189function KP(r) {
3190  if (!r) return false;
3191  if (typeof r == "string") return nl(r, 1) < Qp;
3192  if (r.colorStops) {
3193    for (var e = r.colorStops, t = 0, a = e.length, n = 0; n < a; n++) t += nl(e[n].color, 1);
3194    return t /= a, t < Qp;
3195  }
3196  return false;
3197}
3198var jP = function() {
3199  function r(e, t, a) {
3200    var n = this;
3201    this._sleepAfterStill = 10, this._stillFrameAccum = 0, this._needsRefresh = true, this._needsRefreshHover = true, this._darkMode = false, a = a || {}, this.dom = t, this.id = e;
3202    var i = new lP(), o = a.renderer || "canvas";
3203    nf[o] || (o = _t(nf)[0]), a.useDirtyRect = a.useDirtyRect == null ? false : a.useDirtyRect;
3204    var s = new nf[o](t, i, a, e), l = a.ssr || s.ssrOnly;
3205    this.storage = i, this.painter = s;
3206    var u = !yt.node && !yt.worker && !l ? new FP(s.getViewportRoot(), s.root) : null, f = a.useCoarsePointer, h = f == null || f === "auto" ? yt.touchEventsSupported : !!f, v = 44, c;
3207    h && (c = st(a.pointerSize, v)), this.handler = new mT(i, s, u, s.root, c), this.animation = new kP({ stage: { update: l ? null : function() {
3208      return n._flush(true);
3209    } } }), l || this.animation.start();
3210  }
3211  return r.prototype.add = function(e) {
3212    this._disposed || !e || (this.storage.addRoot(e), e.addSelfToZr(this), this.refresh());
3213  }, r.prototype.remove = function(e) {
3214    this._disposed || !e || (this.storage.delRoot(e), e.removeSelfFromZr(this), this.refresh());
3215  }, r.prototype.configLayer = function(e, t) {
3216    this._disposed || (this.painter.configLayer && this.painter.configLayer(e, t), this.refresh());
3217  }, r.prototype.setBackgroundColor = function(e) {
3218    this._disposed || (this.painter.setBackgroundColor && this.painter.setBackgroundColor(e), this.refresh(), this._backgroundColor = e, this._darkMode = KP(e));
3219  }, r.prototype.getBackgroundColor = function() {
3220    return this._backgroundColor;
3221  }, r.prototype.setDarkMode = function(e) {
3222    this._darkMode = e;
3223  }, r.prototype.isDarkMode = function() {
3224    return this._darkMode;
3225  }, r.prototype.refreshImmediately = function(e) {
3226    this._disposed || (e || this.animation.update(true), this._needsRefresh = false, this.painter.refresh(), this._needsRefresh = false);
3227  }, r.prototype.refresh = function() {
3228    this._disposed || (this._needsRefresh = true, this.animation.start());
3229  }, r.prototype.flush = function() {
3230    this._disposed || this._flush(false);
3231  }, r.prototype._flush = function(e) {
3232    var t, a = ro();
3233    this._needsRefresh && (t = true, this.refreshImmediately(e)), this._needsRefreshHover && (t = true, this.refreshHoverImmediately());
3234    var n = ro();
3235    t ? (this._stillFrameAccum = 0, this.trigger("rendered", { elapsedTime: n - a })) : this._sleepAfterStill > 0 && (this._stillFrameAccum++, this._stillFrameAccum > this._sleepAfterStill && this.animation.stop());
3236  }, r.prototype.setSleepAfterStill = function(e) {
3237    this._sleepAfterStill = e;
3238  }, r.prototype.wakeUp = function() {
3239    this._disposed || (this.animation.start(), this._stillFrameAccum = 0);
3240  }, r.prototype.refreshHover = function() {
3241    this._needsRefreshHover = true;
3242  }, r.prototype.refreshHoverImmediately = function() {
3243    this._disposed || (this._needsRefreshHover = false, this.painter.refreshHover && this.painter.getType() === "canvas" && this.painter.refreshHover());
3244  }, r.prototype.resize = function(e) {
3245    this._disposed || (e = e || {}, this.painter.resize(e.width, e.height), this.handler.resize());
3246  }, r.prototype.clearAnimation = function() {
3247    this._disposed || this.animation.clear();
3248  }, r.prototype.getWidth = function() {
3249    if (!this._disposed) return this.painter.getWidth();
3250  }, r.prototype.getHeight = function() {
3251    if (!this._disposed) return this.painter.getHeight();
3252  }, r.prototype.setCursorStyle = function(e) {
3253    this._disposed || this.handler.setCursorStyle(e);
3254  }, r.prototype.findHover = function(e, t) {
3255    if (!this._disposed) return this.handler.findHover(e, t);
3256  }, r.prototype.on = function(e, t, a) {
3257    return this._disposed || this.handler.on(e, t, a), this;
3258  }, r.prototype.off = function(e, t) {
3259    this._disposed || this.handler.off(e, t);
3260  }, r.prototype.trigger = function(e, t) {
3261    this._disposed || this.handler.trigger(e, t);
3262  }, r.prototype.clear = function() {
3263    if (!this._disposed) {
3264      for (var e = this.storage.getRoots(), t = 0; t < e.length; t++) e[t] instanceof at && e[t].removeSelfFromZr(this);
3265      this.storage.delAllRoots(), this.painter.clear();
3266    }
3267  }, r.prototype.dispose = function() {
3268    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 = true, qP(this.id
3268));
3269  }, r;
3270}();
3271function rd(r, e) {
3272  var t = new jP(Rg(), r, e);
3273  return Xn[t.id] = t, t;
3274}
3275function JP(r) {
3276  r.dispose();
3277}
3278function QP() {
3279  for (var r in Xn) Xn.hasOwnProperty(r) && Xn[r].dispose();
3280  Xn = {};
3281}
3282function tR(r) {
3283  return Xn[r];
3284}
3285function GT(r, e) {
3286  nf[r] = e;
3287}
3288var ad;
3289function FT(r) {
3290  if (typeof ad == "function") return ad(r);
3291}
3292function HT(r) {
3293  ad = r;
3294}
3295var eR = "5.6.1";
3296const rR = Object.freeze(Object.defineProperty({ __proto__: null, dispose: JP, disposeAll: QP, getElementSSRData: FT, getInstance: tR, init: rd, registerPainter: GT, registerSSRDataGetter: HT, version: eR }, Symbol.toStringTag, { value: "Module" }));
3297var M0 = 1e-4, WT = 20;
3298function aR(r) {
3299  return r.replace(/^\s+|\s+$/g, "");
3300}
3301function Dt(r, e, t, a) {
3302  var n = e[0], i = e[1], o = t[0], s = t[1], l = i - n, u = s - o;
3303  if (l === 0) return u === 0 ? o : (o + s) / 2;
3304  if (a) if (l > 0) {
3305    if (r <= n) return o;
3306    if (r >= i) return s;
3307  } else {
3308    if (r >= n) return o;
3309    if (r <= i) return s;
3310  }
3311  else {
3312    if (r === n) return o;
3313    if (r === i) return s;
3314  }
3315  return (r - n) / l * u + o;
3316}
3317function W(r, e) {
3318  switch (r) {
3319    case "center":
3320    case "middle":
3321      r = "50%";
3322      break;
3323    case "left":
3324    case "top":
3325      r = "0%";
3326      break;
3327    case "right":
3328    case "bottom":
3329      r = "100%";
3330      break;
3331  }
3332  return Y(r) ? aR(r).match(/%$/) ? parseFloat(r) / 100 * e : parseFloat(r) : r == null ? NaN : +r;
3333}
3334function Ut(r, e, t) {
3335  return e == null && (e = 10), e = Math.min(Math.max(0, e), WT), r = (+r).toFixed(e), t ? r : +r;
3336}
3337function Xe(r) {
3338  return r.sort(function(e, t) {
3339    return e - t;
3340  }), r;
3341}
3342function Tr(r) {
3343  if (r = +r, isNaN(r)) return 0;
3344  if (r > 1e-14) {
3345    for (var e = 1, t = 0; t < 15; t++, e *= 10) if (Math.round(r * e) / e === r) return t;
3346  }
3347  return UT(r);
3348}
3349function UT(r) {
3350  var e = r.toString().toLowerCase(), t = e.indexOf("e"), a = t > 0 ? +e.slice(t + 1) : 0, n = t > 0 ? t : e.length, i = e.indexOf("."), o = i < 0 ? 0 : n - 1 - i;
3351  return Math.max(0, o - a);
3352}
3353function Fg(r, e) {
3354  var t = Math.log, a = Math.LN10, n = Math.floor(t(r[1] - r[0]) / a), i = Math.round(t(Math.abs(e[1] - e[0])) / a), o = Math.min(Math.max(-n + i, 0), 20);
3355  return isFinite(o) ? o : 20;
3356}
3357function nR(r, e, t) {
3358  if (!r[e]) return 0;
3359  var a = YT(r, t);
3360  return a[e] || 0;
3361}
3362function YT(r, e) {
3363  var t = hr(r, function(c, p) {
3364    return c + (isNaN(p) ? 0 : p);
3365  }, 0);
3366  if (t === 0) return [];
3367  for (var a = Math.pow(10, e), n = G(r, function(c) {
3368    return (isNaN(c) ? 0 : c) / t * a * 100;
3369  }), i = a * 100, o = G(n, function(c) {
3370    return Math.floor(c);
3371  }), s = hr(o, function(c, p) {
3372    return c + p;
3373  }, 0), l = G(n, function(c, p) {
3374    return c - o[p];
3375  }); s < i; ) {
3376    for (var u = Number.NEGATIVE_INFINITY, f = null, h = 0, v = l.length; h < v; ++h) l[h] > u && (u = l[h], f = h);
3377    ++o[f], l[f] = 0, ++s;
3378  }
3379  return G(o, function(c) {
3380    return c / a;
3381  });
3382}
3383function iR(r, e) {
3384  var t = Math.max(Tr(r), Tr(e)), a = r + e;
3385  return t > WT ? a : Ut(a, t);
3386}
3387var nd = 9007199254740991;
3388function Hg(r) {
3389  var e = Math.PI * 2;
3390  return (r % e + e) % e;
3391}
3392function yo(r) {
3393  return r > -M0 && r < M0;
3394}
3395var oR = /^(?:(\d{4})(?:[-\/](\d{1,2})(?:[-\/](\d{1,2})(?:[T ](\d{1,2})(?::(\d{1,2})(?::(\d{1,2})(?:[.,](\d+))?)?)?(Z|[\+\-]\d\d:?\d\d)?)?)?)?)?$/;
3396function Ke(r) {
3397  if (r instanceof Date) return r;
3398  if (Y(r)) {
3399    var e = oR.exec(r);
3400    if (!e) return /* @__PURE__ */ new Date(NaN);
3401    if (e[8]) {
3402      var t = +e[4] || 0;
3403      return e[8].toUpperCase() !== "Z" && (t -= +e[8].slice(0, 3)), new Date(Date.UTC(+e[1], +(e[2] || 1) - 1, +e[3] || 1, t, +(e[5] || 0), +e[6] || 0, e[7] ? +e[7].substring(0, 3) : 0));
3404    } else 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);
3405  } else if (r == null) return /* @__PURE__ */ new Date(NaN);
3406  return new Date(Math.round(r));
3407}
3408function $T(r) {
3409  return Math.pow(10, Mh(r));
3410}
3411function Mh(r) {
3412  if (r === 0) return 0;
3413  var e = Math.floor(Math.log(r) / Math.LN10);
3414  return r / Math.pow(10, e) >= 10 && e++, e;
3415}
3416function Wg(r, e) {
3417  var t = Mh(r), a = Math.pow(10, t), n = r / a, i;
3418  return e ? n < 1.5 ? i = 1 : n < 2.5 ? i = 2 : n < 4 ? i = 3 : n < 7 ? i = 5 : i = 10 : n < 1 ? i = 1 : n < 2 ? i = 2 : n < 3 ? i = 3 : n < 5 ? i = 5 : i = 10, r = i * a, t >= -20 ? +r.toFixed(t < 0 ? -t : 0) : r;
3419}
3420function of(r, e) {
3421  var t = (r.length - 1) * e + 1, a = Math.floor(t), n = +r[a - 1], i = t - a;
3422  return i ? n + i * (r[a] - n) : n;
3423}
3424function id(r) {
3425  r.sort(function(l, u) {
3426    return s(l, u, 0) ? -1 : 1;
3427  });
3428  for (var e = -1 / 0, t = 1, a = 0; a < r.length; ) {
3429    for (var n = r[a].interval, i = r[a].close, o = 0; o < 2; o++) n[o] <= e && (n[o] = e, i[o] = o ? 1 : 1 - t), e = n[o], t = i[o];
3430    n[0] === n[1] && i[0] * i[1] !== 1 ? r.splice(a, 1) : a++;
3431  }
3432  return r;
3433  function s(l, u, f) {
3434    return l.interval[f] < u.interval[f] || l.interval[f] === u.interval[f] && (l.close[f] - u.close[f] === (f ? -1 : 1) || !f && s(l, u, 1));
3435  }
3436}
3437function Qr(r) {
3438  var e = parseFloat(r);
3439  return e == r && (e !== 0 || !Y(r) || r.indexOf("x") <= 0) ? e : NaN;
3440}
3441function Ug(r) {
3442  return !isNaN(Qr(r));
3443}
3444function XT() {
3445  return Math.round(Math.random() * 9);
3446}
3447function ZT(r, e) {
3448  return e === 0 ? r : ZT(e, r % e);
3449}
3450function I0(r, e) {
3451  return r == null ? e : e == null ? r : r * e / ZT(r, e);
3452}
3453function Mt(r) {
3454  throw new Error(r);
3455}
3456function L0(r, e, t) {
3457  return (e - r) * t + r;
3458}
3459var qT = "series\0", KT = "\0_ec_\0";
3460function Rt(r) {
3461  return r instanceof Array ? r : r == null ? [] : [r];
3462}
3463function fi(r, e, t) {
3464  if (r) {
3465    r[e] = r[e] || {}, r.emphasis = r.emphasis || {}, r.emphasis[e] = r.emphasis[e] || {};
3466    for (var a = 0, n = t.length; a < n; a++) {
3467      var i = t[a];
3468      !r.emphasis[e].hasOwnProperty(i) && r[e].hasOwnProperty(i) && (r.emphasis[e][i] = r[e][i]);
3469    }
3470  }
3471}
3472var P0 = ["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"];
3473function Mo(r) {
3474  return tt(r) && !V(r) && !(r instanceof Date) ? r.value : r;
3475}
3476function sR(r) {
3477  return tt(r) && !(r instanceof Array);
3478}
3479function jT(r, e, t) {
3480  var a = t === "normalMerge", n = t === "replaceMerge", i = t === "replaceAll";
3481  r = r || [], e = (e || []).slice();
3482  var o = Z();
3483  D(e, function(l, u) {
3484    if (!tt(l)) {
3485      e[u] = null;
3486      return;
3487    }
3488  });
3489  var s = lR(r, o, t);
3490  return (a || n) && uR(s, r, o, e), a && fR(s, e), a || n ? hR(s, e, n) : i && vR(s, e), cR(s), s;
3491}
3492function lR(r, e, t) {
3493  var a = [];
3494  if (t === "replaceAll") return a;
3495  for (var n = 0; n < r.length; n++) {
3496    var i = r[n];
3497    i && i.id != null && e.set(i.id, n), a.push({ existing: t === "replaceMerge" || ol(i) ? null : i, newOption: null, keyInfo: null, brandNew: null });
3498  }
3499  return a;
3500}
3501function uR(r, e, t, a) {
3502  D(a, function(n, i) {
3503    if (!(!n || n.id == null)) {
3504      var o = Fs(n.id), s = t.get(o);
3505      if (s != null) {
3506        var l = r[s];
3507        we(!l.newOption, 'Duplicated option on id "' + o + '".'), l.newOption = n, l.existing = e[s], a[i] = null;
3508      }
3509    }
3510  });
3511}
3512function fR(r, e) {
3513  D(e, function(t, a) {
3514    if (!(!t || t.name == null)) for (var n = 0; n < r.length; n++) {
3515      var i = r[n].existing;
3516      if (!r[n].newOption && i && (i.id == null || t.id == null) && !ol(t) && !ol(i) && JT("name", i, t)) {
3517        r[n].newOption = t, e[a] = null;
3518        return;
3519      }
3520    }
3521  });
3522}
3523function hR(r, e, t) {
3524  D(e, function(a) {
3525    if (a) {
3526      for (var n, i = 0; (n = r[i]) && (n.newOption || ol(n.existing) || n.existing && a.id != null && !JT("id", a, n.existing)); ) i++;
3527      n ? (n.newOption = a, n.brandNew = t) : r.push({ newOption: a, brandNew: t, existing: null, keyInfo: null }), i++;
3528    }
3529  });
3530}
3531function vR(r, e) {
3532  D(e, function(t) {
3533    r.push({ newOption: t, brandNew: true, existing: null, keyInfo: null });
3534  });
3535}
3536function cR(r) {
3537  var e = Z();
3538  D(r, function(t) {
3539    var a = t.existing;
3540    a && e.set(a.id, t);
3541  }), D(r, function(t) {
3542    var a = t.newOption;
3543    we(!a || a.id == null || !e.get(a.id) || e.get(a.id) === t, "id duplicates: " + (a && a.id)), a && a.id != null && e.set(a.id, t), !t.keyInfo && (t.keyInfo = {});
3544  }), D(r, function(t, a) {
3545    var n = t.existing, i = t.newOption, o = t.keyInfo;
3546    if (tt(i)) {
3547      if (o.name = i.name != null ? Fs(i.name) : n ? n.name : qT + a, n) o.id = Fs(n.id);
3548      else if (i.id != null) o.id = Fs(i.id);
3549      else {
3550        var s = 0;
3551        do
3552          o.id = "\0" + o.name + "\0" + s++;
3553        while (e.get(o.id));
3554      }
3555      e.set(o.id, t);
3556    }
3557  });
3558}
3559function JT(r, e, t) {
3560  var a = te(e[r], null), n = te(t[r], null);
3561  return a != null && n != null && a === n;
3562}
3563function Fs(r) {
3564  return te(r, "");
3565}
3566function te(r, e) {
3567  return r == null ? e : Y(r) ? r : wt(r) || Sf(r) ? r + "" : e;
3568}
3569function Yg(r) {
3570  var e = r.name;
3571  return !!(e && e.indexOf(qT));
3572}
3573function ol(r) {
3574  return r && r.id != null && Fs(r.id).indexOf(KT) === 0;
3575}
3576function pR(r) {
3577  return KT + r;
3578}
3579function dR(r, e, t) {
3580  D(r, function(a) {
3581    var n = a.newOption;
3582    tt(n) && (a.keyInfo.mainType = e, a.keyInfo.subType = gR(e, n, a.existing, t));
3583  });
3584}
3585function gR(r, e, t, a) {
3586  var n = e.type ? e.type : t ? t.subType : a.determineSubType(r, e);
3587  return n;
3588}
3589function yR(r, e) {
3590  var t = {}, a = {};
3591  return n(r || [], t), n(e || [], a, t), [i(t), i(a)];
3592  function n(o, s, l) {
3593    for (var u = 0, f = o.length; u < f; u++) {
3594      var h = te(o[u].seriesId, null);
3595      if (h == null) return;
3596      for (var v = Rt(o[u].dataIndex), c = l && l[h], p = 0, d = v.length; p < d; p++) {
3597        var g = v[p];
3598        c && c[g] ? c[g] = null : (s[h] || (s[h] = {}))[g] = 1;
3599      }
3600    }
3601  }
3602  function i(o, s) {
3603    var l = [];
3604    for (var u in o) if (o.hasOwnProperty(u) && o[u] != null) if (s) l.push(+u);
3605    else {
3606      var f = i(o[u], true);
3607      f.length && l.push({ seriesId: u, dataIndex: f });
3608    }
3609    return l;
3610  }
3611}
3612function hi(r, e) {
3613  if (e.dataIndexInside != null) return e.dataIndexInside;
3614  if (e.dataIndex != null) return V(e.dataIndex) ? G(e.dataIndex, function(t) {
3615    return r.indexOfRawIndex(t);
3616  }) : r.indexOfRawIndex(e.dataIndex);
3617  if (e.name != null) return V(e.name) ? G(e.name, function(t) {
3618    return r.indexOfName(t);
3619  }) : r.indexOfName(e.name);
3620}
3621function bt() {
3622  var r = "__ec_inner_" + mR++;
3623  return function(e) {
3624    return e[r] || (e[r] = {});
3625  };
3626}
3627var mR = XT();
3628function Hs(r, e, t) {
3629  var a = $g(e, t), n = a.mainTypeSpecified, i = a.queryOptionMap, o = a.others, s = o, l = t ? t.defaultMainType : null;
3630  return !n && l && i.set(l, {}), i.each(function(u, f) {
3631    var h = kl(r, f, u, { useDefault: l === f, enableAll: t && t.enableAll != null ? t.enableAll : true, enableNone: t && t.enableNone != null ? t.enableNone : true });
3632    s[f + "Models"] = h.models, s[f + "Model"] = h.models[0];
3633  }), s;
3634}
3635function $g(r, e) {
3636  var t;
3637  if (Y(r)) {
3638    var a = {};
3639    a[r + "Index"] = 0, t = a;
3640  } else t = r;
3641  var n = Z(), i = {}, o = false;
3642  return D(t, function(s, l) {
3643    if (l === "dataIndex" || l === "dataIndexInside") {
3644      i[l] = s;
3645      return;
3646    }
3647    var u = l.match(/^(\w+)(Index|Id|Name)$/) || [], f = u[1], h = (u[2] || "").toLowerCase();
3648    if (!(!f || !h || e && e.includeMainTypes && vt(e.includeMainTypes, f) < 0)) {
3649      o = o || !!f;
3650      var v = n.get(f) || n.set(f, {});
3651      v[h] = s;
3652    }
3653  }), { mainTypeSpecified: o, queryOptionMap: n, others: i };
3654}
3655var Jt = { useDefault: true, enableAll: false, enableNone: false }, _R = { useDefault: false, enableAll: true, enableNone: true };
3656function kl(r, e, t, a) {
3657  a = a || Jt;
3658  var n = t.index, i = t.id, o = t.name, s = { models: null, specified: n != null || i != null || o != null };
3659  if (!s.specified) {
3660    var l = void 0;
3661    return s.models = a.useDefault && (l = r.getComponent(e)) ? [l] : [], s;
3662  }
3663  return n === "none" || n === false ? (we(a.enableNone, '`"none"` or `false` is not a valid value on index option.'), s.models = [], s) : (n === "all" && (we(a.enableAll, '`"all"` is not a valid value on index option.'), n = i = o = null), s.models = r.queryComponents({ mainType: e, index: n, id: i, name: o }), s);
3664}
3665function QT(r, e, t) {
3666  r.setAttribute ? r.setAttribute(e, t) : r[e] = t;
3667}
3668function SR(r, e) {
3669  return r.getAttribute ? r.getAttribute(e) : r[e];
3670}
3671function xR(r) {
3672  return r === "auto" ? yt.domSupported ? "html" : "richText" : r || "html";
3673}
3674function od(r, e) {
3675  var t = Z(), a = [];
3676  return D(r, function(n) {
3677    var i = e(n);
3678    (t.get(i) || (a.push(i), t.set(i, []))).push(n);
3679  }), { keys: a, buckets: t };
3680}
3681function tC(r, e, t, a, n) {
3682  var i = e == null || e === "auto";
3683  if (a == null) return a;
3684  if (wt(a)) {
3685    var o = L0(t || 0, a, n);
3686    return Ut(o, i ? Math.max(Tr(t || 0), Tr(a)) : e);
3687  } else {
3688    if (Y(a)) return n < 1 ? t : a;
3689    for (var s = [], l = t, u = a, f = Math.max(l ? l.length : 0, u.length), h = 0; h < f; ++h) {
3690      var v = r.getDimensionInfo(h);
3691      if (v && v.type === "ordinal") s[h] = (n < 1 && l ? l : u)[h];
3692      else {
3693        var c = l && l[h] ? l[h] : 0, p = u[h], o = L0(c, p, n);
3694        s[h] = Ut(o, i ? Math.max(Tr(c), Tr(p)) : e);
3695      }
3696    }
3697    return s;
3698  }
3699}
3700var bR = ".", _n = "___EC__COMPONENT__CONTAINER___", eC = "___EC__EXTENDED_CLASS___";
3701function Yr(r) {
3702  var e = { main: "", sub: "" };
3703  if (r) {
3704    var t = r.split(bR);
3705    e.main = t[0] || "", e.sub = t[1] || "";
3706  }
3707  return e;
3708}
3709function wR(r) {
3710  we(/^[a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)?$/.test(r), 'componentType "' + r + '" illegal');
3711}
3712function TR(r) {
3713  return !!(r && r[eC]);
3714}
3715function Xg(r, e) {
3716  r.$constructor = r, r.extend = function(t) {
3717    var a = this, n;
3718    return CR(a) ? n = function(i) {
3719      N(o, i);
3720      function o() {
3721        return i.apply(this, arguments) || this;
3722      }
3723      return o;
3724    }(a) : (n = function() {
3725      (t.$constructor || a).apply(this, arguments);
3726    }, Eg(n, this)), z(n.prototype, t), n[eC] = true, n.extend = this.extend, n.superCall = MR, n.superApply = IR, n.superClass = a, n;
3727  };
3728}
3729function CR(r) {
3730  return j(r) && /^class\s/.test(Function.prototype.toString.call(r));
3731}
3732function rC(r, e) {
3733  r.extend = e.extend;
3734}
3735var AR = Math.round(Math.random() * 10);
3736function DR(r) {
3737  var e = ["__\0is_clz", AR++].join("_");
3738  r.prototype[e] = true, r.isInstance = function(t) {
3739    return !!(t && t[e]);
3740  };
3741}
3742function MR(r, e) {
3743  for (var t = [], a = 2; a < arguments.length; a++) t[a - 2] = arguments[a];
3744  return this.superClass.prototype[e].apply(r, t);
3745}
3746function IR(r, e, t) {
3747  return this.superClass.prototype[e].apply(r, t);
3748}
3749function Ih(r) {
3750  var e = {};
3751  r.registerClass = function(a) {
3752    var n = a.type || a.prototype.type;
3753    if (n) {
3754      wR(n), a.prototype.type = n;
3755      var i = Yr(n);
3756      if (!i.sub) e[i.main] = a;
3757      else if (i.sub !== _n) {
3758        var o = t(i);
3759        o[i.sub] = a;
3760      }
3761    }
3762    return a;
3763  }, r.getClass = function(a, n, i) {
3764    var o = e[a];
3765    if (o && o[_n] && (o = n ? o[n] : null), i && !o) throw new Error(n ? "Component " + a + "." + (n || "") + " is used but not imported." : a + ".type should be specified.");
3766    return o;
3767  }, r.getClassesByMainType = function(a) {
3768    var n = Yr(a), i = [], o = e[n.main];
3769    return o && o[_n] ? D(o, function(s, l) {
3770      l !== _n && i.push(s);
3771    }) : i.push(o), i;
3772  }, r.hasClass = function(a) {
3773    var n = Yr(a);
3774    return !!e[n.main];
3775  }, r.getAllClassMainTypes = function() {
3776    var a = [];
3777    return D(e, function(n, i) {
3778      a.push(i);
3779    }), a;
3780  }, r.hasSubTypes = function(a) {
3781    var n = Yr(a), i = e[n.main];
3782    return i && i[_n];
3783  };
3784  function t(a) {
3785    var n = e[a.main];
3786    return (!n || !n[_n]) && (n = e[a.main] = {}, n[_n] = true), n;
3787  }
3788}
3789function vi(r, e) {
3790  for (var t = 0; t < r.length; t++) r[t][1] || (r[t][1] = r[t][0]);
3791  return e = e || false, function(a, n, i) {
3792    for (var o = {}, s = 0; s < r.length; s++) {
3793      var l = r[s][1];
3794      if (!(n && vt(n, l) >= 0 || i && vt(i, l) < 0)) {
3795        var u = a.getShallow(l, e);
3796        u != null && (o[r[s][0]] = u);
3797      }
3798    }
3799    return o;
3800  };
3801}
3802var LR = [["fill", "color"], ["shadowBlur"], ["shadowOffsetX"], ["shadowOffsetY"], ["opacity"], ["shadowColor"]], PR = vi(LR), RR = function() {
3803  function r() {
3804  }
3805  return r.prototype.getAreaStyle = function(e, t) {
3806    return PR(this, e, t);
3807  }, r;
3808}(), sd = new Rl(50);
3809function ER(r) {
3810  if (typeof r == "string") {
3811    var e = sd.get(r);
3812    return e && e.image;
3813  } else return r;
3814}
3815function Zg(r, e, t, a, n) {
3816  if (r) if (typeof r == "string") {
3817    if (e && e.__zrImageSrc === r || !t) return e;
3818    var i = sd.get(r), o = { hostEl: t, cb: a, cbPayload: n };
3819    return i ? (e = i.image, !Lh(e) && i.pending.push(o)) : (e = Lr.loadImage(r, R0, R0), e.__zrImageSrc = r, sd.put(r, e.__cachedImgObj = { image: e, pending: [o] })), e;
3820  } else return r;
3821  else return e;
3822}
3823function R0() {
3824  var r = this.__cachedImgObj;
3825  this.onload = this.onerror = this.__cachedImgObj = null;
3826  for (var e = 0; e < r.pending.length; e++) {
3827    var t = r.pending[e], a = t.cb;
3828    a && a(this, t.cbPayload), t.hostEl.dirty();
3829  }
3830  r.pending.length = 0;
3831}
3832function Lh(r) {
3833  return r && r.width && r.height;
3834}
3835var Rv = /\{([a-zA-Z0-9_]+)\|([^}]*)\}/g;
3836function kR(r, e, t, a, n) {
3837  var i = {};
3838  return aC(i, r, e, t, a, n), i.text;
3839}
3840function aC(r, e, t, a, n, i) {
3841  if (!t) {
3842    r.text = "", r.isTruncated = false;
3843    return;
3844  }
3845  var o = (e + "").split(`
3846`);
3847  i = nC(t, a, n, i);
3848  for (var s = false, l = {}, u = 0, f = o.length; u < f; u++) iC(l, o[u], i), o[u] = l.textLine, s = s || l.isTruncated;
3849  r.text = o.join(`
3850`), r.isTruncated = s;
3851}
3852function nC(r, e, t, a) {
3853  a = a || {};
3854  var n = z({}, a);
3855  n.font = e, t = st(t, "..."), n.maxIterations = st(a.maxIterations, 2);
3856  var i = n.minChar = st(a.minChar, 0);
3857  n.cnCharWidth = qe("\u56FD", e);
3858  var o = n.ascCharWidth = qe("a", e);
3859  n.placeholder = st(a.placeholder, "");
3860  for (var s = r = Math.max(0, r - 1), l = 0; l < i && s >= o; l++) s -= o;
3861  var u = qe(t, e);
3862  return u > s && (t = "", u = 0), s = r - u, n.ellipsis = t, n.ellipsisWidth = u, n.contentWidth = s, n.containerWidth = r, n;
3863}
3864function iC(r, e, t) {
3865  var a = t.containerWidth, n = t.font, i = t.contentWidth;
3866  if (!a) {
3867    r.textLine = "", r.isTruncated = false;
3868    return;
3869  }
3870  var o = qe(e, n);
3871  if (o <= a) {
3872    r.textLine = e, r.isTruncated = false;
3873    return;
3874  }
3875  for (var s = 0; ; s++) {
3876    if (o <= i || s >= t.maxIterations) {
3877      e += t.ellipsis;
3878      break;
3879    }
3880    var l = s === 0 ? OR(e, i, t.ascCharWidth, t.cnCharWidth) : o > 0 ? Math.floor(e.length * i / o) : 0;
3881    e = e.substr(0, l), o = qe(e, n);
3882  }
3883  e === "" && (e = t.placeholder), r.textLine = e, r.isTruncated = true;
3884}
3885function OR(r, e, t, a) {
3886  for (var n = 0, i = 0, o = r.length; i < o && n < e; i++) {
3887    var s = r.charCodeAt(i);
3888    n += 0 <= s && s <= 127 ? t : a;
3889  }
3890  return i;
3891}
3892function NR(r, e) {
3893  r != null && (r += "");
3894  var t = e.overflow, a = e.padding, n = e.font, i = t === "truncate", o = Ah(n), s = st(e.lineHeight, o), l = !!e.backgroundColor, u = e.lineOverflow === "truncate", f = false, h = e.width, v;
3895  h != null && (t === "break" || t === "breakAll") ? v = r ? oC(r, e.font, h, t === "breakAll", 0).lines : [] : v = r ? r.split(`
3896`) : [];
3897  var c = v.length * s, p = st(e.height, c);
3898  if (c > p && u) {
3899    var d = Math.floor(p / s);
3900    f = f || v.length > d, v = v.slice(0, d);
3901  }
3902  if (r && i && h != null) for (var g = nC(h, n, e.ellipsis, { minChar: e.truncateMinChar, placeholder: e.placeholder }), y = {}, m = 0; m < v.length; m++) iC(y, v[m], g), v[m] = y.textLine, f = f || y.isTruncated;
3903  for (var _ = p, S = 0, m = 0; m < v.length; m++) S = Math.max(qe(v[m], n), S);
3904  h == null && (h = S);
3905  var b = S;
3906  return a && (_ += a[0] + a[2], b += a[1] + a[3], h += a[1] + a[3]), l && (b = h), { lines: v, height: p, outerWidth: b, outerHeight: _, lineHeight: s, calculatedLineHeight: o, contentWidth: S, contentHeight: c, width: h, isTruncated: f };
3907}
3908var BR = /* @__PURE__ */ function() {
3909  function r() {
3910  }
3911  return r;
3912}(), E0 = /* @__PURE__ */ function() {
3913  function r(e) {
3914    this.tokens = [], e && (this.tokens = e);
3915  }
3916  return r;
3917}(), zR = /* @__PURE__ */ function() {
3918  function r() {
3919    this.width = 0, this.height = 0, this.contentWidth = 0, this.contentHeight = 0, this.outerWidth = 0, this.outerHeight = 0, this.lines = [], this.isTruncated = false;
3920  }
3921  return r;
3922}();
3923function VR(r, e) {
3924  var t = new zR();
3925  if (r != null && (r += ""), !r) return t;
3926  for (var a = e.width, n = e.height, i = e.overflow, o = (i === "break" || i === "breakAll") && a != null ? { width: a, accumWidth: 0, breakAll: i === "breakAll" } : null, s = Rv.lastIndex = 0, l; (l = Rv.exec(r)) != null; ) {
3927    var u = l.index;
3928    u > s && Ev(t, r.substring(s, u), e, o), Ev(t, l[2], e, o, l[1]), s = Rv.lastIndex;
3929  }
3930  s < r.length && Ev(t, r.substring(s, r.length), e, o);
3931  var f = [], h = 0, v = 0, c = e.padding, p = i === "truncate", d = e.lineOverflow === "truncate", g = {};
3932  function y(F, H, U) {
3933    F.width = H, F.lineHeight = U, h += U, v = Math.max(v, H);
3934  }
3935  t: for (var m = 0; m < t.lines.length; m++) {
3936    for (var _ = t.lines[m], S = 0, b = 0, x = 0; x < _.tokens.length; x++) {
3937      var w = _.tokens[x], T = w.styleName && e.rich[w.styleName] || {}, C = w.textPadding = T.padding, A = C ? C[1] + C[3] : 0, M = w.font = T.font || e.font;
3938      w.contentHeight = Ah(M);
3939      var I = st(T.height, w.contentHeight);
3940      if (w.innerHeight = I, C && (I += C[0] + C[2]), w.height = I, w.lineHeight = Ar(T.lineHeight, e.lineHeight, I), w.align = T && T.align || e.align, w.verticalAlign = T && T.verticalAlign || "middle", d && n != null && h + w.lineHeight > n) {
3941        var L = t.lines.length;
3942        x > 0 ? (_.tokens = _.tokens.slice(0, x), y(_, b, S), t.lines = t.lines.slice(0, m + 1)) : t.lines = t.lines.slice(0, m), t.isTruncated = t.isTruncated || t.lines.length < L;
3943        break t;
3944      }
3945      var P = T.width, R = P == null || P === "auto";
3946      if (typeof P == "string" && P.charAt(P.length - 1) === "%") w.percentWidth = P, f.push(w), w.contentWidth = qe(w.text, M);
3947      else {
3948        if (R) {
3949          var E = T.backgroundColor, O = E && E.image;
3950          O && (O = ER(O), Lh(O) && (w.width = Math.max(w.width, O.width * I / O.height)));
3951        }
3952        var k = p && a != null ? a - b : null;
3953        k != null && k < w.width ? !R || k < A ? (w.text = "", w.width = w.contentWidth = 0) : (aC(g, w.text, k - A, M, e.ellipsis, { minChar: e.truncateMinChar }), w.text = g.text, t.isTruncated = t.isTruncated || g.isTruncated, w.width = w.contentWidth = qe(w.text, M)) : w.contentWidth = qe(w.text, M);
3954      }
3955      w.width += A, b += w.width, T && (S = Math.max(S, w.lineHeight));
3956    }
3957    y(_, b, S);
3958  }
3959  t.outerWidth = t.width = st(a, v), t.outerHeight = t.height = st(n, h), t.contentHeight = h, t.contentWidth = v, c && (t.outerWidth += c[1] + c[3], t.outerHeight += c[0] + c[2]);
3960  for (var m = 0; m < f.length; m++) {
3961    var w = f[m], B = w.percentWidth;
3962    w.width = parseInt(B, 10) / 100 * t.width;
3963  }
3964  return t;
3965}
3966function Ev(r, e, t, a, n) {
3967  var i = e === "", o = n && t.rich[n] || {}, s = r.lines, l = o.font || t.font, u = false, f, h;
3968  if (a) {
3969    var v = o.padding, c = v ? v[1] + v[3] : 0;
3970    if (o.width != null && o.width !== "auto") {
3971      var p = Rr(o.width, a.width) + c;
3972      s.length > 0 && p + a.accumWidth > a.width && (f = e.split(`
3973`), u = true), a.accumWidth = p;
3974    } else {
3975      var d = oC(e, l, a.width, a.breakAll, a.accumWidth);
3976      a.accumWidth = d.accumWidth + c, h = d.linesWidths, f = d.lines;
3977    }
3978  } else f = e.split(`
3979`);
3980  for (var g = 0; g < f.length; g++) {
3981    var y = f[g], m = new BR();
3982    if (m.styleName = n, m.text = y, m.isLineHolder = !y && !i, typeof o.width == "number" ? m.width = o.width : m.width = h ? h[g] : qe(y, l), !g && !u) {
3983      var _ = (s[s.length - 1] || (s[0] = new E0())).tokens, S = _.length;
3984      S === 1 && _[0].isLineHolder ? _[0] = m : (y || !S || i) && _.push(m);
3985    } else s.push(new E0([m]));
3986  }
3987}
3988function GR(r) {
3989  var e = r.charCodeAt(0);
3990  return e >= 32 && e <= 591 || e >= 880 && e <= 4351 || e >= 4608 && e <= 5119 || e >= 7680 && e <= 8303;
3991}
3992var FR = hr(",&?/;] ".split(""), function(r, e) {
3993  return r[e] = true, r;
3994}, {});
3995function HR(r) {
3996  return GR(r) ? !!FR[r] : true;
3997}
3998function oC(r, e, t, a, n) {
3999  for (var i = [], o = [], s = "", l = "", u = 0, f = 0, h = 0; h < r.length; h++) {
4000    var v = r.charAt(h);
4001    if (v === `
4002`) {
4003      l && (s += l, f += u), i.push(s), o.push(f), s = "", l = "", u = 0, f = 0;
4004      continue;
4005    }
4006    var c = qe(v, e), p = a ? false : !HR(v);
4007    if (i.length ? f + c > t : n + f + c > t) {
4008      f ? (s || l) && (p ? (s || (s = l, l = "", u = 0, f = u), i.push(s), o.push(f - u), l += v, u += c, s = "", f = u) : (l && (s += l, l = "", u = 0), i.push(s), o.push(f), s = v, f = c)) : p ? (i.push(l), o.push(u), l = v, u = c) : (i.push(v), o.push(c));
4009      continue;
4010    }
4011    f += c, p ? (l += v, u += c) : (l && (s += l, l = "", u = 0), s += v);
4012  }
4013  return !i.length && !s && (s = r, l = "", u = 0), l && (s += l), s && (i.push(s), o.push(f)), i.length === 1 && (f += n), { accumWidth: f, lines: i, linesWidths: o };
4014}
4015var ld = "__zr_style_" + Math.round(Math.random() * 10), ri = { shadowBlur: 0, shadowOffsetX: 0, shadowOffsetY: 0, shadowColor: "#000", opacity: 1, blend: "source-over" }, Ph = { style: { shadowBlur: true, shadowOffsetX: true, shadowOffsetY: true, shadowColor: true, op
4015acity: true } };
4016ri[ld] = true;
4017var k0 = ["z", "z2", "invisible"], WR = ["invisible"], vr = function(r) {
4018  Ft(e, r);
4019  function e(t) {
4020    return r.call(this, t) || this;
4021  }
4022  return e.prototype._init = function(t) {
4023    for (var a = _t(t), n = 0; n < a.length; n++) {
4024      var i = a[n];
4025      i === "style" ? this.useStyle(t[i]) : r.prototype.attrKV.call(this, i, t[i]);
4026    }
4027    this.style || this.useStyle({});
4028  }, e.prototype.beforeBrush = function() {
4029  }, e.prototype.afterBrush = function() {
4030  }, e.prototype.innerBeforeBrush = function() {
4031  }, e.prototype.innerAfterBrush = function() {
4032  }, e.prototype.shouldBePainted = function(t, a, n, i) {
4033    var o = this.transform;
4034    if (this.ignore || this.invisible || this.style.opacity === 0 || this.culling && UR(this, t, a) || o && !o[0] && !o[3]) return false;
4035    if (n && this.__clipPaths) {
4036      for (var s = 0; s < this.__clipPaths.length; ++s) if (this.__clipPaths[s].isZeroArea()) return false;
4037    }
4038    if (i && this.parent) for (var l = this.parent; l; ) {
4039      if (l.ignore) return false;
4040      l = l.parent;
4041    }
4042    return true;
4043  }, e.prototype.contain = function(t, a) {
4044    return this.rectContain(t, a);
4045  }, e.prototype.traverse = function(t, a) {
4046    t.call(a, this);
4047  }, e.prototype.rectContain = function(t, a) {
4048    var n = this.transformCoordToLocal(t, a), i = this.getBoundingRect();
4049    return i.contain(n[0], n[1]);
4050  }, e.prototype.getPaintRect = function() {
4051    var t = this._paintRect;
4052    if (!this._paintRect || this.__dirty) {
4053      var a = this.transform, n = this.getBoundingRect(), i = this.style, o = i.shadowBlur || 0, s = i.shadowOffsetX || 0, l = i.shadowOffsetY || 0;
4054      t = this._paintRect || (this._paintRect = new ht(0, 0, 0, 0)), a ? ht.applyTransform(t, n, a) : t.copy(n), (o || s || l) && (t.width += o * 2 + Math.abs(s), t.height += o * 2 + Math.abs(l), t.x = Math.min(t.x, t.x + s - o), t.y = Math.min(t.y, t.y + l - o));
4055      var u = this.dirtyRectTolerance;
4056      t.isZero() || (t.x = Math.floor(t.x - u), t.y = Math.floor(t.y - u), t.width = Math.ceil(t.width + 1 + u * 2), t.height = Math.ceil(t.height + 1 + u * 2));
4057    }
4058    return t;
4059  }, e.prototype.setPrevPaintRect = function(t) {
4060    t ? (this._prevPaintRect = this._prevPaintRect || new ht(0, 0, 0, 0), this._prevPaintRect.copy(t)) : this._prevPaintRect = null;
4061  }, e.prototype.getPrevPaintRect = function() {
4062    return this._prevPaintRect;
4063  }, e.prototype.animateStyle = function(t) {
4064    return this.animate("style", t);
4065  }, e.prototype.updateDuringAnimation = function(t) {
4066    t === "style" ? this.dirtyStyle() : this.markRedraw();
4067  }, e.prototype.attrKV = function(t, a) {
4068    t !== "style" ? r.prototype.attrKV.call(this, t, a) : this.style ? this.setStyle(a) : this.useStyle(a);
4069  }, e.prototype.setStyle = function(t, a) {
4070    return typeof t == "string" ? this.style[t] = a : z(this.style, t), this.dirtyStyle(), this;
4071  }, e.prototype.dirtyStyle = function(t) {
4072    t || this.markRedraw(), this.__dirty |= bs, this._rect && (this._rect = null);
4073  }, e.prototype.dirty = function() {
4074    this.dirtyStyle();
4075  }, e.prototype.styleChanged = function() {
4076    return !!(this.__dirty & bs);
4077  }, e.prototype.styleUpdated = function() {
4078    this.__dirty &= ~bs;
4079  }, e.prototype.createStyle = function(t) {
4080    return Ll(ri, t);
4081  }, e.prototype.useStyle = function(t) {
4082    t[ld] || (t = this.createStyle(t)), this.__inHover ? this.__hoverStyle = t : this.style = t, this.dirtyStyle();
4083  }, e.prototype.isStyleObject = function(t) {
4084    return t[ld];
4085  }, e.prototype._innerSaveToNormal = function(t) {
4086    r.prototype._innerSaveToNormal.call(this, t);
4087    var a = this._normalState;
4088    t.style && !a.style && (a.style = this._mergeStyle(this.createStyle(), this.style)), this._savePrimaryToNormal(t, a, k0);
4089  }, e.prototype._applyStateObj = function(t, a, n, i, o, s) {
4090    r.prototype._applyStateObj.call(this, t, a, n, i, o, s);
4091    var l = !(a && i), u;
4092    if (a && a.style ? o ? i ? u = a.style : (u = this._mergeStyle(this.createStyle(), n.style), this._mergeStyle(u, a.style)) : (u = this._mergeStyle(this.createStyle(), i ? this.style : n.style), this._mergeStyle(u, a.style)) : l && (u = n.style), u) if (o) {
4093      var f = this.style;
4094      if (this.style = this.createStyle(l ? {} : f), l) for (var h = _t(f), v = 0; v < h.length; v++) {
4095        var c = h[v];
4096        c in u && (u[c] = u[c], this.style[c] = f[c]);
4097      }
4098      for (var p = _t(u), v = 0; v < p.length; v++) {
4099        var c = p[v];
4100        this.style[c] = this.style[c];
4101      }
4102      this._transitionState(t, { style: u }, s, this.getAnimationStyleProps());
4103    } else this.useStyle(u);
4104    for (var d = this.__inHover ? WR : k0, v = 0; v < d.length; v++) {
4105      var c = d[v];
4106      a && a[c] != null ? this[c] = a[c] : l && n[c] != null && (this[c] = n[c]);
4107    }
4108  }, e.prototype._mergeStates = function(t) {
4109    for (var a = r.prototype._mergeStates.call(this, t), n, i = 0; i < t.length; i++) {
4110      var o = t[i];
4111      o.style && (n = n || {}, this._mergeStyle(n, o.style));
4112    }
4113    return n && (a.style = n), a;
4114  }, e.prototype._mergeStyle = function(t, a) {
4115    return z(t, a), t;
4116  }, e.prototype.getAnimationStyleProps = function() {
4117    return Ph;
4118  }
4118, e.initDefaultProps = function() {
4119    var t = e.prototype;
4120    t.type = "displayable", t.invisible = false, t.z = 0, t.z2 = 0, t.zlevel = 0, t.culling = false, t.cursor = "pointer", t.rectHover = false, t.incremental = false, t._rect = null, t.dirtyRectTolerance = 0, t.__dirty = Ye | bs;
4121  }(), e;
4122}(Dh), kv = new ht(0, 0, 0, 0), Ov = new ht(0, 0, 0, 0);
4123function UR(r, e, t) {
4124  return kv.copy(r.getBoundingRect()), r.transform && kv.applyTransform(r.transform), Ov.width = e, Ov.height = t, !kv.intersect(Ov);
4125}
4126var Ve = Math.min, Ge = Math.max, Nv = Math.sin, Bv = Math.cos, Sn = Math.PI * 2, lu = sn(), uu = sn(), fu = sn();
4127function Rh(r, e, t) {
4128  if (r.length !== 0) {
4129    for (var a = r[0], n = a[0], i = a[0], o = a[1], s = a[1], l = 1; l < r.length; l++) a = r[l], n = Ve(n, a[0]), i = Ge(i, a[0]), o = Ve(o, a[1]), s = Ge(s, a[1]);
4130    e[0] = n, e[1] = o, t[0] = i, t[1] = s;
4131  }
4132}
4133function O0(r, e, t, a, n, i) {
4134  n[0] = Ve(r, t), n[1] = Ve(e, a), i[0] = Ge(r, t), i[1] = Ge(e, a);
4135}
4136var N0 = [], B0 = [];
4137function YR(r, e, t, a, n, i, o, s, l, u) {
4138  var f = wT, h = ae, v = f(r, t, n, o, N0);
4139  l[0] = 1 / 0, l[1] = 1 / 0, u[0] = -1 / 0, u[1] = -1 / 0;
4140  for (var c = 0; c < v; c++) {
4141    var p = h(r, t, n, o, N0[c]);
4142    l[0] = Ve(p, l[0]), u[0] = Ge(p, u[0]);
4143  }
4144  v = f(e, a, i, s, B0);
4145  for (var c = 0; c < v; c++) {
4146    var d = h(e, a, i, s, B0[c]);
4147    l[1] = Ve(d, l[1]), u[1] = Ge(d, u[1]);
4148  }
4149  l[0] = Ve(r, l[0]), u[0] = Ge(r, u[0]), l[0] = Ve(o, l[0]), u[0] = Ge(o, u[0]), l[1] = Ve(e, l[1]), u[1] = Ge(e, u[1]), l[1] = Ve(s, l[1]), u[1] = Ge(s, u[1]);
4150}
4151function $R(r, e, t, a, n, i, o, s) {
4152  var l = CT, u = fe, f = Ge(Ve(l(r, t, n), 1), 0), h = Ge(Ve(l(e, a, i), 1), 0), v = u(r, t, n, f), c = u(e, a, i, h);
4153  o[0] = Ve(r, n, v), o[1] = Ve(e, i, c), s[0] = Ge(r, n, v), s[1] = Ge(e, i, c);
4154}
4155function XR(r, e, t, a, n, i, o, s, l) {
4156  var u = ha, f = va, h = Math.abs(n - i);
4157  if (h % Sn < 1e-4 && h > 1e-4) {
4158    s[0] = r - t, s[1] = e - a, l[0] = r + t, l[1] = e + a;
4159    return;
4160  }
4161  if (lu[0] = Bv(n) * t + r, lu[1] = Nv(n) * a + e, uu[0] = Bv(i) * t + r, uu[1] = Nv(i) * a + e, u(s, lu, uu), f(l, lu, uu), n = n % Sn, n < 0 && (n = n + Sn), i = i % Sn, i < 0 && (i = i + Sn), n > i && !o ? i += Sn : n < i && o && (n += Sn), o) {
4162    var v = i;
4163    i = n, n = v;
4164  }
4165  for (var c = 0; c < i; c += Math.PI / 2) c > n && (fu[0] = Bv(c) * t + r, fu[1] = Nv(c) * a + e, u(s, fu, s), f(l, fu, l));
4166}
4167var Ot = { M: 1, L: 2, C: 3, Q: 4, A: 5, Z: 6, R: 7 }, xn = [], bn = [], Or = [], Da = [], Nr = [], Br = [], zv = Math.min, Vv = Math.max, wn = Math.cos, Tn = Math.sin, ia = Math.abs, ud = Math.PI, Oa = ud * 2, Gv = typeof Float32Array < "u", Jo = [];
4168function Fv(r) {
4169  var e = Math.round(r / ud * 1e8) / 1e8;
4170  return e % 2 * ud;
4171}
4172function qg(r, e) {
4173  var t = Fv(r[0]);
4174  t < 0 && (t += Oa);
4175  var a = t - r[0], n = r[1];
4176  n += a, !e && n - t >= Oa ? n = t + Oa : e && t - n >= Oa ? n = t - Oa : !e && t > n ? n = t + (Oa - Fv(t - n)) : e && t < n && (n = t - (Oa - Fv(n - t))), r[0] = t, r[1] = n;
4177}
4178var ta = function() {
4179  function r(e) {
4180    this.dpr = 1, this._xi = 0, this._yi = 0, this._x0 = 0, this._y0 = 0, this._len = 0, e && (this._saveData = false), this._saveData && (this.data = []);
4181  }
4182  return r.prototype.increaseVersion = function() {
4183    this._version++;
4184  }, r.prototype.getVersion = function() {
4185    return this._version;
4186  }, r.prototype.setScale = function(e, t, a) {
4187    a = a || 0, a > 0 && (this._ux = ia(a / If / e) || 0, this._uy = ia(a / If / t) || 0);
4188  }, r.prototype.setDPR = function(e) {
4189    this.dpr = e;
4190  }, r.prototype.setContext = function(e) {
4191    this._ctx = e;
4192  }, r.prototype.getContext = function() {
4193    return this._ctx;
4194  }, r.prototype.beginPath = function() {
4195    return this._ctx && this._ctx.beginPath(), this.reset(), this;
4196  }, r.prototype.reset = function() {
4197    this._saveData && (this._len = 0), this._pathSegLen && (this._pathSegLen = null, this._pathLen = 0), this._version++;
4198  }, r.prototype.moveTo = function(e, t) {
4199    return this._drawPendingPt(), this.addData(Ot.M, e, t), this._ctx && this._ctx.moveTo(e, t), this._x0 = e, this._y0 = t, this._xi = e, this._yi = t, this;
4200  }, r.prototype.lineTo = function(e, t) {
4201    var a = ia(e - this._xi), n = ia(t - this._yi), i = a > this._ux || n > this._uy;
4202    if (this.addData(Ot.L, e, t), this._ctx && i && this._ctx.lineTo(e, t), i) this._xi = e, this._yi = t, this._pendingPtDist = 0;
4203    else {
4204      var o = a * a + n * n;
4205      o >
4205 this._pendingPtDist && (this._pendingPtX = e, this._pendingPtY = t, this._pendingPtDist = o);
4206    }
4207    return this;
4208  }, r.prototype.bezierCurveTo = function(e, t, a, n, i, o) {
4209    return this._drawPendingPt(), this.addData(Ot.C, e, t, a, n, i, o), this._ctx && this._ctx.bezierCurveTo(e, t, a, n, i, o), this._xi = i, this._yi = o, this;
4210  }, r.prototype.quadraticCurveTo = function(e, t, a, n) {
4211    return this._drawPendingPt(), this.addData(Ot.Q, e, t, a, n), this._ctx && this._ctx.quadraticCurveTo(e, t, a, n), this._xi = a, this._yi = n, this;
4212  }, r.prototype.arc = function(e, t, a, n, i, o) {
4213    this._drawPendingPt(), Jo[0] = n, Jo[1] = i, qg(Jo, o), n = Jo[0], i = Jo[1];
4214    var s = i - n;
4215    return this.addData(Ot.A, e, t, a, a, n, s, 0, o ? 0 : 1), this._ctx && this._ctx.arc(e, t, a, n, i, o), this._xi = wn(i) * a + e, this._yi = Tn(i) * a + t, this;
4216  }, r.prototype.arcTo = function(e, t, a, n, i) {
4217    return this._drawPendingPt(), this._ctx && this._ctx.arcTo(e, t, a, n, i), this;
4218  }, r.prototype.rect = function(e, t, a, n) {
4219    return this._drawPendingPt(), this._ctx && this._ctx.rect(e, t, a, n), this.addData(Ot.R, e, t, a, n), this;
4220  }, r.prototype.closePath = function() {
4221    this._drawPendingPt(), this.addData(Ot.Z);
4222    var e = this._ctx, t = this._x0, a = this._y0;
4223    return e && e.closePath(), this._xi = t, this._yi = a, this;
4224  }, r.prototype.fill = function(e) {
4225    e && e.fill(), this.toStatic();
4226  }, r.prototype.stroke = function(e) {
4227    e && e.stroke(), this.toStatic();
4228  }, r.prototype.len = function() {
4229    return this._len;
4230  }, r.prototype.setData = function(e) {
4231    var t = e.length;
4232    !(this.data && this.data.length === t) && Gv && (this.data = new Float32Array(t));
4233    for (var a = 0; a < t; a++) this.data[a] = e[a];
4234    this._len = t;
4235  }, r.prototype.appendPath = function(e) {
4236    e instanceof Array || (e = [e]);
4237    for (var t = e.length, a = 0, n = this._len, i = 0; i < t; i++) a += e[i].len();
4238    Gv && this.data instanceof Float32Array && (this.data = new Float32Array(n + a));
4239    for (var i = 0; i < t; i++) for (var o = e[i].data, s = 0; s < o.length; s++) this.data[n++] = o[s];
4240    this._len = n;
4241  }, r.prototype.addData = function(e, t, a, n, i, o, s, l, u) {
4242    if (this._saveData) {
4243      var f = this.data;
4244      this._len + arguments.length > f.length && (this._expandData(), f = this.data);
4245      for (var h = 0; h < arguments.length; h++) f[this._len++] = arguments[h];
4246    }
4247  }, r.prototype._drawPendingPt = function() {
4248    this._pendingPtDist > 0 && (this._ctx && this._ctx.lineTo(this._pendingPtX, this._pendingPtY), this._pendingPtDist = 0);
4249  }, r.prototype._expandData = function() {
4250    if (!(this.data instanceof Array)) {
4251      for (var e = [], t = 0; t < this._len; t++) e[t] = this.data[t];
4252      this.data = e;
4253    }
4254  }, r.prototype.toStatic = function() {
4255    if (this._saveData) {
4256      this._drawPendingPt();
4257      var e = this.data;
4258      e instanceof Array && (e.length = this._len, Gv && this._len > 11 && (this.data = new Float32Array(e)));
4259    }
4260  }, r.prototype.getBoundingRect = function() {
4261    Or[0] = Or[1] = Nr[0] = Nr[1] = Number.MAX_VALUE, Da[0] = Da[1] = Br[0] = Br[1] = -Number.MAX_VALUE;
4262    var e = this.data, t = 0, a = 0, n = 0, i = 0, o;
4263    for (o = 0; o < this._len; ) {
4264      var s = e[o++], l = o === 1;
4265      switch (l && (t = e[o], a = e[o + 1], n = t, i = a), s) {
4266        case Ot.M:
4267          t = n = e[o++], a = i = e[o++], Nr[0] = n, Nr[1] = i, Br[0] = n, Br[1] = i;
4268          break;
4269        case Ot.L:
4270          O0(t, a, e[o], e[o + 1], Nr, Br), t = e[o++], a = e[o++];
4271          break;
4272        case Ot.C:
4273          YR(t, a, e[o++], e[o++], e[o++], e[o++], e[o], e[o + 1], Nr, Br), t = e[o++], a = e[o++];
4274          break;
4275        case Ot.Q:
4276          $R(t, a, e[o++], e[o++], e[o], e[o + 1], Nr, Br), t = e[o++], a = e[o++];
4277          break;
4278        case Ot.A:
4279          var u = e[o++], f = e[o++], h = e[o++], v = e[o++], c = e[o++], p = e[o++] + c;
4280          o += 1;
4281          var d = !e[o++];
4282          l && (n = wn(c) * h + u, i = Tn(c) * v + f), XR(u, f, h, v, c, p, d, Nr, Br), t = wn(p) * h + u, a = Tn(p) * v + f;
4283          break;
4284        case Ot.R:
4285          n = t = e[o++], i = a = e[o++];
4286          var g = e[o++], y = e[o++];
4287          O0(n, i, n + g, i + y, Nr, Br);
4288          break;
4289        case Ot.Z:
4290          t = n, a = i;
4291          break;
4292      }
4293      ha(Or, Or, Nr), va(Da, Da, Br);
4294    }
4295    return o === 0 && (Or[0] = Or[1] = Da[0] = Da[1] = 0), new ht(Or[0], Or[1], Da[0] - Or[0], Da[1] - Or[1]);
4296  }, r.prototype._calculateLength = function() {
4297    var e = this.data, t = this._len, a = this._ux, n = this._uy, i = 0, o = 0, s = 0, l = 0;
4298    this._pathSegLen || (this._pathSegLen = []);
4299    for (var u = this._pathSegLen, f = 0, h = 0, v = 0; v < t; ) {
4300      var c = e[v++], p = v === 1;
4301      p && (i = e[v], o = e[v + 1], s = i, l = o);
4302      var d = -1;
4303      switch (c) {
4304        case Ot.M:
4305          i = s = e[v++], o = l = e[v++];
4306          break;
4307        case Ot.L: {
4308          var g = e[v++], y = e[v++], m = g - i, _ = y - o;
4309          (ia(m) > a || ia(_) > n || v === t - 1) && (d = Math.sqrt(m * m + _ * _), i = g, o = y);
4310          break;
4311        }
4312        case Ot.C: {
4313          var S = e[v++], b = e[v++], g = e[v++], y = e[v++], x = e[v++], w = e[v++];
4314          d = uP(i, o, S, b, g, y, x, w, 10), i = x, o = w;
4315          break;
4316        }
4317        case Ot.Q: {
4318          var S = e[v++], b = e[v++], g = e[v++], y = e[v++];
4319          d = hP(i, o, S, b, g, y, 10), i = g, o = y;
4320          break;
4321        }
4322        case Ot.A:
4323          var T = e[v++], C = e[v++], A = e[v++], M = e[v++], I = e[v++], L = e[v++], P = L + I;
4324          v += 1, p && (s = wn(I) * A + T, l = Tn(I) * M + C), d = Vv(A, M) * zv(Oa, Math.abs(L)), i = wn(P) * A + T, o = Tn(P) * M + C;
4325          break;
4326        case Ot.R: {
4327          s = i = e[v++], l = o = e[v++];
4328          var R = e[v++], E = e[v++];
4329          d = R * 2 + E * 2;
4330          break;
4331        }
4332        case Ot.Z: {
4333          var m = s - i, _ = l - o;
4334          d = Math.sqrt(m * m + _ * _), i = s, o = l;
4335          break;
4336        }
4337      }
4338      d >= 0 && (u[h++] = d, f += d);
4339    }
4340    return this._pathLen = f, f;
4341  }, r.prototype.rebuildPath = function(e, t) {
4342    var a = this.data, n = this._ux, i = this._uy, o = this._len, s, l, u, f, h, v, c = t < 1, p, d, g = 0, y = 0, m, _ = 0, S, b;
4343    if (!(c && (this._pathSegLen || this._calculateLength(), p = this._pathSegLen, d = this._pathLen, m = t * d, !m))) t: for (var x = 0; x < o; ) {
4344      var w = a[x++], T = x === 1;
4345      switch (T && (u = a[x], f = a[x + 1], s = u, l = f), w !== Ot.L && _ > 0 && (e.lineTo(S, b), _ = 0), w) {
4346        case Ot.M:
4347          s = u = a[x++], l = f = a[x++], e.moveTo(u, f);
4348          break;
4349        case Ot.L: {
4350          h = a[x++], v = a[x++];
4351          var C = ia(h - u), A = ia(v - f);
4352          if (C > n || A > i) {
4353            if (c) {
4354              var M = p[y++];
4355              if (g + M > m) {
4356                var I = (m - g) / M;
4357                e.lineTo(u * (1 - I) + h * I, f * (1 - I) + v * I);
4358                break t;
4359              }
4360              g += M;
4361            }
4362            e.lineTo(h, v), u = h, f = v, _ = 0;
4363          } else {
4364            var L = C * C + A * A;
4365            L > _ && (S = h, b = v, _ = L);
4366          }
4367          break;
4368        }
4369        case Ot.C: {
4370          var P = a[x++], R = a[x++], E = a[x++], O = a[x++], k = a[x++], B = a[x++];
4371          if (c) {
4372            var M = p[y++];
4373            if (g + M > m) {
4374              var I = (m - g) / M;
4375              en(u, P, E, k, I, xn), en(f, R, O, B, I, bn), e.bezierCurveTo(xn[1], bn[1], xn[2], bn[2], xn[3], bn[3]);
4376              break t;
4377            }
4378            g += M;
4379          }
4380          e.bezierCurveTo(P, R, E, O, k, B), u = k, f = B;
4381          break;
4382        }
4383        case Ot.Q: {
4384          var P = a[x++], R = a[x++], E = a[x++], O = a[x++];
4385          if (c) {
4386            var M = p[y++];
4387            if (g + M > m) {
4388              var I = (m - g) / M;
4389              el(u, P, E, I, xn), el(f, R, O, I, bn), e.quadraticCurveTo(xn[1], bn[1], xn[2], bn[2]);
4390              break t;
4391            }
4392            g += M;
4393          }
4394          e.quadraticCurveTo(P, R, E, O), u = E, f = O;
4395          break;
4396        }
4397        case Ot.A:
4398          var F = a[x++], H = a[x++], U = a[x++], K = a[x++], J = a[x++], nt = a[x++], It = a[x++], Yt = !a[x++], ct = U > K ? U : K, et = ia(U - K) > 1e-3, dt = J + nt, q = false;
4399          if (c) {
4400            var M = p[y++];
4401            g + M > m && (dt = J + nt * (m - g) / M, q = true), g += M;
4402          }
4403          if (et && e.ellipse ? e.ellipse(F, H, U, K, It, J, dt, Yt) : e.arc(F, H, ct, J, dt, Yt), q) break t;
4404          T && (s = wn(J) * U + F, l = Tn(J) * K + H), u = wn(dt) * U + F, f = Tn(dt) * K + H;
4405          break;
4406        case Ot.R:
4407          s = u = a[x], l = f = a[x + 1], h = a[x++], v = a[x++];
4408          var ot = a[x++], Bt = a[x++];
4409          if (c) {
4410            var M = p[y++];
4411            if (g + M > m) {
4412              var Lt = m - g;
4413              e.moveTo(h, v), e.lineTo(h + zv(Lt, ot), v), Lt -= ot, Lt > 0 && e.lineTo(h + ot, v + zv(Lt, Bt)), Lt -= Bt, Lt > 0 && e.lineTo(h + Vv(ot - Lt, 0), v + Bt), Lt -= ot, Lt > 0 && e.lineTo(h, v + Vv(Bt - Lt, 0));
4414              break t;
4415            }
4416            g += M;
4417          }
4418          e.rect(h, v, ot, Bt);
4419          break;
4420        case Ot.Z:
4421          if (c) {
4422            var M = p[y++];
4423            if (g + M > m) {
4424              var I = (m - g) / M;
4425              e.lineTo(u * (1 - I) + s * I, f * (1 - I) + l * I);
4426              break t;
4427            }
4428            g += M;
4429          }
4430          e.closePath(), u = s, f = l;
4431      }
4432    }
4433  }, r.prototype.clone = function() {
4434    var e = new r(), t = this.data;
4435    return e.data = t.slice ? t.slice() : Array.prototype.slice.call(t), e._len = this._len, e;
4436  }, r.CMD = Ot, r.initDefaultProps = function() {
4437    var e = r.prototype;
4438    e._saveData = true, e._ux = 0, e._uy = 0, e._pendingPtDist = 0, e._version = 0;
4439  }(), r;
4440}();
4441function Ba(r, e, t, a, n, i, o) {
4442  if (n === 0) return false;
4443  var s = n, l = 0, u = r;
4444  if (o > e + s && o > a + s || o < e - s && o < a - s || i > r + s && i > t + s || i < r - s && i < t - s) return false;
4445  if (r !== t) l = (e - a) / (r - t), u = (r * a - t * e) / (r - t);
4446  else return Math.abs(i - r) <= s / 2;
4447  var f = l * i - o + u, h = f * f / (l * l + 1);
4448  return h <= s / 2 * s / 2;
4449}
4450function ZR(r, e, t, a, n, i, o, s, l, u, f) {
4451  if (l === 0) return false;
4452  var h = l;
4453  if (f > e + h && f > a + h && f > i + h && f > s + h || f < e - h && f < a - h && f < i - h && f < s - h || u > r + h && u > t + h && u > n + h && u > o + h || u < r - h && u < t - h && u < n - h && u < o - h) return false;
4454  var v = TT(r, e, t, a, n, i, o, s, u, f, null);
4455  return v <= h / 2;
4456}
4457function sC(r, e, t, a, n, i, o, s, l) {
4458  if (o === 0) return false;
4459  var u = o;
4460  if (l > e + u && l > a + u && l > i + u || l < e - u && l < a - u && l < i - u || s > r + u && s > t + u && s > n + u || s < r - u && s < t - u && s < n - u) return false;
4461  var f = AT(r, e, t, a, n, i, s, l, null);
4462  return f <= u / 2;
4463}
4464var z0 = Math.PI * 2;
4465function Ze(r) {
4466  return r %= z0, r < 0 && (r += z0), r;
4467}
4468var Qo = Math.PI * 2;
4469function qR(r, e, t, a, n, i, o, s, l) {
4470  if (o === 0) return false;
4471  var u = o;
4472  s -= r, l -= e;
4473  var f = Math.sqrt(s * s + l * l);
4474  if (f - u > t || f + u < t) return false;
4475  if (Math.abs(a - n) % Qo < 1e-4) return true;
4476  if (i) {
4477    var h = a;
4478    a = Ze(n), n = Ze(h);
4479  } else a = Ze(a), n = Ze(n);
4480  a > n && (n += Qo);
4481  var v = Math.atan2(l, s);
4482  return v < 0 && (v += Qo), v >= a && v <= n || v + Qo >= a && v + Qo <= n;
4483}
4484function ua(r, e, t, a, n, i) {
4485  if (i > e && i > a || i < e && i < a || a === e) return 0;
4486  var o = (i - e) / (a - e), s = a < e ? 1 : -1;
4487  (o === 1 || o === 0) && (s = a < e ? 0.5 : -0.5);
4488  var l = o * (t - r) + r;
4489  return l === n ? 1 / 0 : l > n ? s : 0;
4490}
4491var Ma = ta.CMD, Cn = Math.PI * 2, KR = 1e-4;
4492function jR(r, e) {
4493  return Math.abs(r - e) < KR;
4494}
4495var Ie = [-1, -1, -1], nr = [-1, -1];
4496function JR() {
4497  var r = nr[0];
4498  nr[0] = nr[1], nr[1] = r;
4499}
4500function QR(r, e, t, a, n, i, o, s, l, u) {
4501  if (u > e && u > a && u > i && u > s || u < e && u < a && u < i && u < s) return 0;
4502  var f = Cf(e, a, i, s, u, Ie);
4503  if (f === 0) return 0;
4504  for (var h = 0, v = -1, c = void 0, p = void 0, d = 0; d < f; d++) {
4505    var g = Ie[d], y = g === 0 || g === 1 ? 0.5 : 1, m = ae(r, t, n, o, g);
4506    m < l || (v < 0 && (v = wT(e, a, i, s, nr), nr[1] < nr[0] && v > 1 && JR(), c = ae(e, a, i, s, nr[0]), v > 1 && (p = ae(e, a, i, s, nr[1]))), v === 2 ? g < nr[0] ? h += c < e ? y : -y : g < nr[1] ? h += p < c ? y : -y : h += s < p ? y : -y : g < nr[0] ? h += c < e ? y : -y : h += s < c ? y : -y);
4507  }
4508  return h;
4509}
4510function tE(r, e, t, a, n, i, o, s) {
4511  if (s > e && s > a && s > i || s < e && s < a && s < i) return 0;
4512  var l = fP(e, a, i, s, Ie);
4513  if (l === 0) return 0;
4514  var u = CT(e, a, i);
4515  if (u >= 0 && u <= 1) {
4516    for (var f = 0, h = fe(e, a, i, u), v = 0; v < l; v++) {
4517      var c = Ie[v] === 0 || Ie[v] === 1 ? 0.5 : 1, p = fe(r, t, n, Ie[v]);
4518      p < o || (Ie[v] < u ? f += h < e ? c : -c : f += i < h ? c : -c);
4519    }
4520    return f;
4521  } else {
4522    var c = Ie[0] === 0 || Ie[0] === 1 ? 0.5 : 1, p = fe(r, t, n, Ie[0]);
4523    return p < o ? 0 : i < e ? c : -c;
4524  }
4525}
4526function eE(r, e, t, a, n, i, o, s) {
4527  if (s -= e, s > t || s < -t) return 0;
4528  var l = Math.sqrt(t * t - s * s);
4529  Ie[0] = -l, Ie[1] = l;
4530  var u = Math.abs(a - n);
4531  if (u < 1e-4) return 0;
4532  if (u >= Cn - 1e-4) {
4533    a = 0, n = Cn;
4534    var f = i ? 1 : -1;
4535    return o >= Ie[0] + r && o <= Ie[1] + r ? f : 0;
4536  }
4537  if (a > n) {
4538    var h = a;
4539    a = n, n = h;
4540  }
4541  a < 0 && (a += Cn, n += Cn);
4542  for (var v = 0, c = 0; c < 2; c++) {
4543    var p = Ie[c];
4544    if (p + r > o) {
4545      var d = Math.atan2(s, p), f = i ? 1 : -1;
4546      d < 0 && (d = Cn + d), (d >= a && d <= n || d + Cn >= a && d + Cn <= n) && (d > Math.PI / 2 && d < Math.PI * 1.5 && (f = -f), v += f);
4547    }
4548  }
4549  return v;
4550}
4551function lC(r, e, t, a, n) {
4552  for (var i = r.data, o = r.len(), s = 0, l = 0, u = 0, f = 0, h = 0, v, c, p = 0; p < o; ) {
4553    var d = i[p++], g = p === 1;
4554    switch (d === Ma.M && p > 1 && (t || (s += ua(l, u, f, h, a, n))), g && (l = i[p], u = i[p + 1], f = l, h = u), d) {
4555      case Ma.M:
4556        f = i[p++], h = i[p++], l = f, u = h;
4557        break;
4558      case Ma.L:
4559        if (t) {
4560          if (Ba(l, u, i[p], i[p + 1], e, a, n)) return true;
4561        } else s += ua(l, u, i[p], i[p + 1], a, n) || 0;
4562        l = i[p++], u = i[p++];
4563        break;
4564      case Ma.C:
4565        if (t) {
4566          if (ZR(l, u, i[p++], i[p++], i[p++], i[p++], i[p], i[p + 1], e, a, n)) return true;
4567        } else s += QR(l, u, i[p++], i[p++], i[p++], i[p++], i[p], i[p + 1], a, n) || 0;
4568        l = i[p++], u = i[p++];
4569        break;
4570      case Ma.Q:
4571        if (t) {
4572          if (sC(l, u, i[p++], i[p++], i[p], i[p + 1], e, a, n)) return true;
4573        } else s += tE(l, u, i[p++], i[p++], i[p], i[p + 1], a, n) || 0;
4574        l = i[p++], u = i[p++];
4575        break;
4576      case Ma.A:
4577        var y = i[p++], m = i[p++], _ = i[p++], S = i[p++], b = i[p++], x = i[p++];
4578        p += 1;
4579        var w = !!(1 - i[p++]);
4580        v = Math.cos(b) * _ + y, c = Math.sin(b) * S + m, g ? (f = v, h = c) : s += ua(l, u, v, c, a, n);
4581        var T = (a - y) * S / _ + y;
4582        if (t) {
4583          if (qR(y, m, S, b, b + x, w, e, T, n)) return true;
4584        } else s += eE(y, m, S, b, b + x, w, T, n);
4585        l = Math.cos(b + x) * _ + y, u = Math.sin(b + x) * S + m;
4586        break;
4587      case Ma.R:
4588        f = l = i[p++], h = u = i[p++];
4589        var C = i[p++], A = i[p++];
4590        if (v = f + C, c = h + A, t) {
4591          if (Ba(f, h, v, h, e, a, n) || Ba(v, h, v, c, e, a, n) || Ba(v, c, f, c, e, a, n) || Ba(f, c, f, h, e, a, n)) return true;
4592        } else s += ua(v, h, v, c, a, n), s += ua(f, c, f, h, a, n);
4593        break;
4594      case Ma.Z:
4595        if (t) {
4596          if (Ba(l, u, f, h, e, a, n)) return true;
4597        } else s += ua(l, u, f, h, a, n);
4598        l = f, u = h;
4599        break;
4600    }
4601  }
4602  return !t && !jR(u, h) && (s += ua(l, u, f, h, a, n) || 0), s !== 0;
4603}
4604function rE(r, e, t) {
4605  return lC(r, 0, false, e, t);
4606}
4607function aE(r, e, t, a) {
4608  return lC(r, e, true, t, a);
4609}
4610var Pf = Q({ fill: "#000", stroke: null, strokePercent: 1, fillOpacity: 1, strokeOpacity: 1, lineDashOffset: 0, lineWidth: 1, lineCap: "butt", miterLimit: 10, strokeNoScale: false, strokeFirst: false }, ri), nE = { style: Q({ fill: true, stroke: true, strokePercent: true, fillOpacity: true, strokeOpacity: true, lineDashOffset: true, lineWidth: true, miterLimit: true }, Ph.style) }, Hv = Jr.concat(["invisible", "culling", "z", "z2", "zlevel", "parent"]), mt = function(r) {
4611  Ft(e, r);
4612  function e(t) {
4613    return r.call(this, t) || this;
4614  }
4615  return e.prototype.update = function() {
4616    var t = this;
4617    r.prototype.update.call(this);
4618    var a = this.style;
4619    if (a.decal) {
4620      var n = this._decalEl = this._decalEl || new e();
4621      n.buildPath === e.prototype.buildPath && (n.buildPath = function(l) {
4622        t.buildPath(l, t.shape);
4623      }), n.silent = true;
4624      var i = n.style;
4625      for (var o in a) i[o] !== a[o] && (i[o] = a[o]);
4626      i.fill = a.fill ? a.decal : null, i.decal = null, i.shadowColor = null, a.strokeFirst && (i.stroke = null);
4627      for (var s = 0; s < Hv.length; ++s) n[Hv[s]] = this[Hv[s]];
4628      n.__dirty |= Ye;
4629    } else this._decalEl && (this._decalEl = null);
4630  }, e.prototype.getDecalElement = function() {
4631    return this._decalEl;
4632  }, e.prototype._init = function(t) {
4633    var a = _t(t);
4634    this.shape = this.getDefaultShape();
4635    var n = this.getDefaultStyle();
4636    n && this.useStyle(n);
4637    for (var i = 0; i < a.length; i++) {
4638      var o = a[i], s = t[o];
4639      o === "style" ? this.style ? z(this.style, s) : this.useStyle(s) : o === "shape" ? z(this.shape, s) : r.prototype.attrKV.call(this, o, s);
4640    }
4641    this.style || this.useStyle({});
4642  }, e.prototype.getDefaultStyle = function() {
4643    return null;
4644  }, e.prototype.getDefaultShape = function() {
4645    return {};
4646  }, e.prototype.canBeInsideText = function() {
4647    return this.hasFill();
4648  }, e.prototype.getInsideTextFill = function() {
4649    var t = this.style.fill;
4650    if (t !== "none") {
4651      if (Y(t)) {
4652        var a = nl(t, 0);
4653        return a > 0.5 ? td : a > 0.2 ? HP : ed;
4654      } else if (t) return ed;
4655    }
4656    return td;
4657  }, e.prototype.getInsideTextStroke = function(t) {
4658    var a = this.style.fill;
4659    if (Y(a)) {
4660      var n = this.__zr, i = !!(n && n.isDarkMode()), o = nl(t, 0) < Qp;
4661      if (i === o) return a;
4662    }
4663  }, e.prototype.buildPath = function(t, a, n) {
4664  }, e.prototype.pathUpdated = function() {
4665    this.__dirty &= ~ji;
4666  }, e.prototype.getUpdatedPathProxy = function(t) {
4667    return !this.path && this.createPathProxy(), this.path.beginPath(), this.buildPath(this.path, this.shape, t), this.path;
4668  }, e.prototype.createPathProxy = function() {
4669    this.path = new ta(false);
4670  }, e.prototype.hasStroke = function() {
4671    var t = this.style, a = t.stroke;
4672    return !(a == null || a === "none" || !(t.lineWidth > 0));
4673  }, e.prototype.hasFill = function() {
4674    var t = this.style, a = t.fill;
4675    return a != null && a !== "none";
4676  }, e.prototype.getBoundingRect = function() {
4677    var t = this._rect, a = this.style, n = !t;
4678    if (n) {
4679      var i = false;
4680      this.path || (i = true, this.createPathProxy());
4681      var o = this.path;
4682      (i || this.__dirty & ji) && (o.beginPath(), this.buildPath(o, this.shape, false), this.pathUpdated()), t = o.getBoundingRect();
4683    }
4684    if (this._rect = t, this.hasStroke() && this.path && this.path.len() > 0) {
4685      var s = this._rectStroke || (this._rectStroke = t.clone());
4686      if (this.__dirty || n) {
4687        s.copy(t);
4688        var l = a.strokeNoScale ? this.getLineScale() : 1, u = a.lineWidth;
4689        if (!this.hasFill()) {
4690          var f = this.strokeContainThreshold;
4691          u = Math.max(u, f ?? 4);
4692        }
4693        l > 1e-10 && (s.width += u / l, s.height += u / l, s.x -= u / l / 2, s.y -= u / l / 2);
4694      }
4695      return s;
4696    }
4697    return t;
4698  }, e.prototype.contain = function(t, a) {
4699    var n = this.transformCoordToLocal(t, a), i = this.getBoundingRect(), o = this.style;
4700    if (t = n[0], a = n[1], i.contain(t, a)) {
4701      var s = this.path;
4702      if (this.hasStroke()) {
4703        var l = o.lineWidth, u = o.strokeNoScale ? this.getLineScale() : 1;
4704        if (u > 1e-10 && (this.hasFill() || (l = Math.max(l, this.strokeContainThreshold)), aE(s, l / u, t, a))) return true;
4705      }
4706      if (this.hasFill()) return rE(s, t, a);
4707    }
4708    return false;
4709  }, e.prototype.dirtyShape = function() {
4710    this.__dirty |= ji, this._rect && (this._rect = null), this._decalEl && this._decalEl.dirtyShape(), this.markRedraw();
4711  }, e.prototype.dirty = function() {
4712    this.dirtyStyle(), this.dirtyShape();
4713  }, e.prototype.animateShape = function(t) {
4714    return this.animate("shape", t);
4715  }, e.prototype.updateDuringAnimation = function(t) {
4716    t === "style" ? this.dirtyStyle() : t === "shape" ? this.dirtyShape() : this.markRedraw();
4717  }, e.prototype.attrKV = function(t, a) {
4718    t === "shape" ? this.setShape(a) : r.prototype.attrKV.call(this, t, a);
4719  }, e.prototype.setShape = function(t, a) {
4720    var n = this.shape;
4721    return n || (n = this.shape = {}), typeof t == "string" ? n[t] = a : z(n, t), this.dirtyShape(), this;
4722  }, e.prototype.shapeChanged = function() {
4723    return !!(this.__dirty & ji);
4724  }, e.prototype.createStyle = function(t) {
4725    return Ll(Pf, t);
4726  }, e.prototype._innerSaveToNormal = function(t) {
4727    r.prototype._innerSaveToNormal.call(this, t);
4728    var a = this._normalState;
4729    t.shape && !a.shape && (a.shape = z({}, this.shape));
4730  }, e.prototype._applyStateObj = function(t, a, n, i, o, s) {
4731    r.prototype._applyStateObj.call(this, t, a, n, i, o, s);
4732    var l = !(a && i), u;
4733    if (a && a.shape ? o ? i ? u = a.shape : (u = z({}, n.shape), z(u, a.shape)) : (u = z({}, i ? this.shape : n.shape), z(u, a.shape)) : l && (u = n.shape), u) if (o) {
4734      this.shape = z({}, this.shape);
4735      for (var f = {}, h = _t(u), v = 0; v < h.length; v++) {
4736        var c = h[v];
4737        typeof u[c] == "object" ? this.shape[c] = u[c] : f[c] = u[c];
4738      }
4739      this._transitionState(t, { shape: f }, s);
4740    } else this.shape = u, this.dirtyShape();
4741  }, e.prototype._mergeStates = function(t) {
4742    for (var a = r.prototype._mergeStates.call(this, t), n, i = 0; i < t.length; i++) {
4743      var o = t[i];
4744      o.shape && (n = n || {}, this._mergeStyle(n, o.shape));
4745    }
4746    return n && (a.shape = n), a;
4747  }, e.prototype.getAnimationStyleProps = function() {
4748    return nE;
4749  }, e.prototype.isZeroArea = function() {
4750    return false;
4751  }, e.extend = function(t) {
4752    var a = function(i) {
4753      Ft(o, i);
4754      function o(s) {
4755        var l = i.call(this, s) || this;
4756        return t.init && t.init.call(l, s), l;
4757      }
4758      return o.prototype.getDefaultStyle = function() {
4759        return rt(t.style);
4760      }, o.prototype.getDefaultShape = function() {
4761        return rt(t.shape);
4762      }, o;
4763    }(e);
4764    for (var n in t) typeof t[n] == "function" && (a.prototype[n] = t[n]);
4765    return a;
4766  }, e.initDefaultProps = function() {
4767    var t = e.prototype;
4768    t.type = "path", t.strokeContainThreshold = 5, t.segmentIgnoreThreshold = 0, t.subPixelOptimize = false, t.autoBatch = false, t.__dirty = Ye | bs | ji;
4769  }(), e;
4770}(vr), iE = Q({ strokeFirst: true, font: tn, x: 0, y: 0, textAlign: "left", textBaseline: "top", miterLimit: 2 }, Pf), mo = function(r) {
4771  Ft(e, r);
4772  function e() {
4773    return r !== null && r.apply(this, arguments) || this;
4774  }
4775  return e.prototype.hasStroke = function() {
4776    var t = this.style, a = t.stroke;
4777    return a != null && a !== "none" && t.lineWidth > 0;
4778  }, e.prototype.hasFill = function() {
4779    var t = this.style, a = t.fill;
4780    return a != null && a !== "none";
4781  }, e.prototype.createStyle = function(t) {
4782    return Ll(iE, t);
4783  }, e.prototype.setBoundingRect = function(t) {
4784    this._rect = t;
4785  }, e.prototype.getBoundingRect = function() {
4786    var t = this.style;
4787    if (!this._rect) {
4788      var a = t.text;
4789      a != null ? a += "" : a = "";
4790      var n = El(a, t.font, t.textAlign, t.textBaseline);
4791      if (n.x += t.x || 0, n.y += t.y || 0, this.hasStroke()) {
4792        var i = t.lineWidth;
4793        n.x -= i / 2, n.y -= i / 2, n.width += i, n.height += i;
4794      }
4795      this._rect = n;
4796    }
4797    return this._rect;
4798  }
4798, e.initDefaultProps = function() {
4799    var t = e.prototype;
4800    t.dirtyRectTolerance = 10;
4801  }(), e;
4802}(vr);
4803mo.prototype.type = "tspan";
4804var oE = Q({ x: 0, y: 0 }, ri), sE = { style: Q({ x: true, y: true, width: true, height: true, sx: true, sy: true, sWidth: true, sHeight: true }, Ph.style) };
4805function lE(r) {
4806  return !!(r && typeof r != "string" && r.width && r.height);
4807}
4808var ue = function(r) {
4809  Ft(e, r);
4810  function e() {
4811    return r !== null && r.apply(this, arguments) || this;
4812  }
4813  return e.prototype.createStyle = function(t) {
4814    return Ll(oE, t);
4815  }, e.prototype._getSize = function(t) {
4816    var a = this.style, n = a[t];
4817    if (n != null) return n;
4818    var i = lE(a.image) ? a.image : this.__image;
4819    if (!i) return 0;
4820    var o = t === "width" ? "height" : "width", s = a[o];
4821    return s == null ? i[t] : i[t] / i[o] * s;
4822  }, e.prototype.getWidth = function() {
4823    return this._getSize("width");
4824  }, e.prototype.getHeight = function() {
4825    return this._getSize("height");
4826  }, e.prototype.getAnimationStyleProps = function() {
4827    return sE;
4828  }, e.prototype.getBoundingRect = function() {
4829    var t = this.style;
4830    return this._rect || (this._rect = new ht(t.x || 0, t.y || 0, this.getWidth(), this.getHeight())), this._rect;
4831  }, e;
4832}(vr);
4833ue.prototype.type = "image";
4834function uE(r, e) {
4835  var t = e.x, a = e.y, n = e.width, i = e.height, o = e.r, s, l, u, f;
4836  n < 0 && (t = t + n, n = -n), i < 0 && (a = a + i, i = -i), typeof o == "number" ? s = l = u = f = o : o instanceof Array ? o.length === 1 ? s = l = u = f = o[0] : o.length === 2 ? (s = u = o[0], l = f = o[1]) : o.length === 3 ? (s = o[0], l = f = o[1], u = o[2]) : (s = o[0], l = o[1], u = o[2], f = o[3]) : s = l = u = f = 0;
4837  var h;
4838  s + l > n && (h = s + l, s *= n / h, l *= n / h), u + f > n && (h = u + f, u *= n / h, f *= n / h), l + u > i && (h = l + u, l *= i / h, u *= i / h), s + f > i && (h = s + f, s *= i / h, f *= i / h), r.moveTo(t + s, a), r.lineTo(t + n - l, a), l !== 0 && r.arc(t + n - l, a + l, l, -Math.PI / 2, 0), r.lineTo(t + n, a + i - u), u !== 0 && r.arc(t + n - u, a + i - u, u, 0, Math.PI / 2), r.lineTo(t + f, a + i), f !== 0 && r.arc(t + f, a + i - f, f, Math.PI / 2, Math.PI), r.lineTo(t, a + s), s !== 0 && r.arc(t + s, a + s, s, Math.PI, Math.PI * 1.5);
4839}
4840var ao = Math.round;
4841function uC(r, e, t) {
4842  if (e) {
4843    var a = e.x1, n = e.x2, i = e.y1, o = e.y2;
4844    r.x1 = a, r.x2 = n, r.y1 = i, r.y2 = o;
4845    var s = t && t.lineWidth;
4846    return s && (ao(a * 2) === ao(n * 2) && (r.x1 = r.x2 = Zn(a, s, true)), ao(i * 2) === ao(o * 2) && (r.y1 = r.y2 = Zn(i, s, true))), r;
4847  }
4848}
4849function fC(r, e, t) {
4850  if (e) {
4851    var a = e.x, n = e.y, i = e.width, o = e.height;
4852    r.x = a, r.y = n, r.width = i, r.height = o;
4853    var s = t && t.lineWidth;
4854    return s && (r.x = Zn(a, s, true), r.y = Zn(n, s, true), r.width = Math.max(Zn(a + i, s, false) - r.x, i === 0 ? 0 : 1), r.height = Math.max(Zn(n + o, s, false) - r.y, o === 0 ? 0 : 1)), r;
4855  }
4856}
4857function Zn(r, e, t) {
4858  if (!e) return r;
4859  var a = ao(r * 2);
4860  return (a + ao(e)) % 2 === 0 ? a / 2 : (a + (t ? 1 : -1)) / 2;
4861}
4862var fE = /* @__PURE__ */ function() {
4863  function r() {
4864    this.x = 0, this.y = 0, this.width = 0, this.height = 0;
4865  }
4866  return r;
4867}(), hE = {}, xt = function(r) {
4868  Ft(e, r);
4869  function e(t) {
4870    return r.call(this, t) || this;
4871  }
4872  return e.prototype.getDefaultShape = function() {
4873    return new fE();
4874  }, e.prototype.buildPath = function(t, a) {
4875    var n, i, o, s;
4876    if (this.subPixelOptimize) {
4877      var l = fC(hE, a, this.style);
4878      n = l.x, i = l.y, o = l.width, s = l.height, l.r = a.r, a = l;
4879    } else n = a.x, i = a.y, o = a.width, s = a.height;
4880    a.r ? uE(t, a) : t.rect(n, i, o, s);
4881  }, e.prototype.isZeroArea = function() {
4882    return !this.shape.width || !this.shape.height;
4883  }, e;
4884}(mt);
4885xt.prototype.type = "rect";
4886var V0 = { fill: "#000" }, G0 = 2, vE = { style: Q({ fill: true, stroke: true, fillOpacity: true, strokeOpacity: true, lineWidth: true, fontSize: true, lineHeight: true, width: true, height: true, textShadowColor: true, textShadowBlur: true, textShadowOffsetX: true, textShadowOffsetY: true, backgroundColor: true, padding: true, borderColor: true, borderWidth: true, borderRadius: true }, Ph.style) }, St = function(r) {
4887  Ft(e, r);
4888  function e(t) {
4889    var a = r.call(this) || this;
4890    return a.type = "text", a._children = [], a._defaultStyle = V0, a.attr(t), a;
4891  }
4892  return e.prototype.childrenRef = function() {
4893    return this._children;
4894  }, e.prototype.update = function() {
4895    r.prototype.update.call(this), this.styleChanged() && this._updateSubTexts();
4896    for (var t = 0; t < this._children.length; t++) {
4897      var a = this._children[t];
4898      a.zlevel = this.zlevel, a.z = this.z, a.z2 = this.z2, a.culling = this.culling, a.cursor = this.cursor, a.invisible = this.invisible;
4899    }
4900  }, e.prototype.updateTransform = function() {
4901    var t = this.innerTransformable;
4902    t ? (t.updateTransform(), t.transform && (this.transform = t.transform)) : r.prototype.updateTransform.call(this);
4903  }, e.prototype.getLocalTransform = function(t) {
4904    var a = this.innerTransformable;
4905    return a ? a.getLocalTransform(t) : r.prototype.getLocalTransform.call(this, t);
4906  }, e.prototype.getComputedTransform = function() {
4907    return this.__hostTarget && (this.__hostTarget.getComputedTransform(), this.__hostTarget.updateInnerText(true)), r.prototype.getComputedTransform.call(this);
4908  }, e.prototype._updateSubTexts = function() {
4909    this._childCursor = 0, dE(this.style), this.style.rich ? this._updateRichTexts() : this._updatePlainTexts(), this._children.length = this._childCursor, this.styleUpdated();
4910  }, e.prototype.addSelfToZr = function(t) {
4911    r.prototype.addSelfToZr.call(this, t);
4912    for (var a = 0; a < this._children.length; a++) this._children[a].__zr = t;
4913  }, e.prototype.removeSelfFromZr = function(t) {
4914    r.prototype.removeSelfFromZr.call(this, t);
4915    for (var a = 0; a < this._children.length; a++) this._children[a].__zr = null;
4916  }, e.prototype.getBoundingRect = function() {
4917    if (this.styleChanged() && this._updateSubTexts(), !this._rect) {
4918      for (var t = new ht(0, 0, 0, 0), a = this._children, n = [], i = null, o = 0; o < a.length; o++) {
4919        var s = a[o], l = s.getBoundingRect(), u = s.getLocalTransform(n);
4920        u ? (t.copy(l), t.applyTransform(u), i = i || t.clone(), i.union(t)) : (i = i || l.clone(), i.union(l));
4921      }
4922      this._rect = i || t;
4923    }
4924    return this._rect;
4925  }, e.prototype.setDefaultTextStyle = function(t) {
4926    this._defaultStyle = t || V0;
4927  }, e.prototype.setTextContent = function(t) {
4928  }, e.prototype._mergeStyle = function(t, a) {
4929    if (!a) return t;
4930    var n = a.rich, i = t.rich || n && {};
4931    return z(t, a), n && i ? (this._mergeRich(i, n), t.rich = i) : i && (t.rich = i), t;
4932  }, e.prototype._mergeRich = function(t, a) {
4933    for (var n = _t(a), i = 0; i < n.length; i++) {
4934      var o = n[i];
4935      t[o] = t[o] || {}, z(t[o], a[o]);
4936    }
4937  }, e.prototype.getAnimationStyleProps = function() {
4938    return vE;
4939  }, e.prototype._getOrCreateChild = function(t) {
4940    var a = this._children[this._childCursor];
4941    return (!a || !(a instanceof t)) && (a = new t()), this._children[this._childCursor++] = a, a.__zr = this.__zr, a.parent = this, a;
4942  }, e.prototype._updatePlainTexts = function() {
4943    var t = this.style, a = t.font || tn, n = t.padding, i = X0(t), o = NR(i, t), s = Wv(t), l = !!t.backgroundColor, u = o.outerHeight, f = o.outerWidth, h = o.contentWidth, v = o.lines, c = o.lineHeight, p = this._defaultStyle;
4944    this.isTruncated = !!o.isTruncated;
4945    var d = t.x || 0, g = t.y || 0, y = t.align || p.align || "left", m = t.verticalAlign || p.verticalAlign || "top", _ = d, S = Ji(g, o.contentHeight, m);
4946    if (s || n) {
4947      var b = Ts(d, f, y), x = Ji(g, u, m);
4948      s && this._renderBackground(t, t, b, x, f, u);
4949    }
4950    S += c / 2, n && (_ = $0(d, y, n), m === "top" ? S += n[0] : m === "bottom" && (S -= n[2]));
4951    for (var w = 0, T = false, C = Y0("fill" in t ? t.fill : (T = true, p.fill)), A = U0("stroke" in t ? t.stroke : !l && (!p.autoStroke || T) ? (w = G0, p.stroke) : null), M = t.textShadowBlur > 0, I = t.width != null && (t.overflow === "truncate" || t.overflow === "break" || t.overflow === "breakAll"), L = o.calculatedLineHeight, P = 0; P < v.length; P++) {
4952      var R = this._getOrCreateChild(mo), E = R.createStyle();
4953      R.useStyle(E), E.text = v[P], E.x = _, E.y = S, E.textAlign = y, E.textBaseline = "middle", E.opacity = t.opacity, E.strokeFirst = true, M && (E.shadowBlur = t.textShadowBlur || 0, E.shadowColor = t.textShadowColor || "transparent", E.shadowOffsetX = t.textShadowOffsetX || 0, E.shadowOffsetY = t.textShadowOffsetY || 0), E.stroke = A, E.fill = C, A && (E.lineWidth = t.lineWidth || w, E.lineDash = t.lineDash, E.lineDashOffset = t.lineDashOffset || 0), E.font = a, H0(E, t), S += c, I && R.setBoundingRect(new ht(Ts(E.x, h, E.textAlign), Ji(E.y, L, E.textBaseline), h, L));
4954    }
4955  }, e.prototype._updateRichTexts = function() {
4956    var t = this.style, a = X0(t), n = VR(a, t), i = n.width, o = n.outerWidth, s = n.outerHeight, l = t.padding, u = t.x || 0, f = t.y || 0, h = this._defaultStyle, v = t.align || h.align, c = t.verticalAlign || h.verticalAlign;
4957    this.isTruncated = !!n.isTruncated;
4958    var p = Ts(u, o, v), d = Ji(f, s, c), g = p, y = d;
4959    l && (g += l[3], y += l[0]);
4960    var m = g + i;
4961    Wv(t) && this._renderBackground(t, t, p, d, o, s);
4962    for (var _ = !!t.backgroundColor, S = 0; S < n.lines.length; S++) {
4963      for (var b = n.lines[S], x = b.tokens, w = x.length, T = b.lineHeight, C = b.width, A = 0, M = g, I = m, L = w - 1, P = void 0; A < w && (P = x[A], !P.align || P.align === "left"); ) this._placeToken(P, t, T, y, M, "left", _), C -= P.width, M += P.width, A++;
4964      for (; L >= 0 && (P = x[L], P.align === "right"); ) this._placeToken(P, t, T, y, I, "right", _), C -= P.width, I -= P.width, L--;
4965      for (M += (i - (M - g) - (m - I) - C) / 2; A <= L; ) P = x[A], this._placeToken(P, t, T, y, M + P.width / 2, "center", _), M += P.width, A++;
4966      y += T;
4967    }
4968  }, e.prototype._placeToken = function(t, a, n, i, o, s, l) {
4969    var u = a.rich[t.styleName] || {};
4970    u.text = t.text;
4971    var f = t.verticalAlign, h = i + n / 2;
4972    f === "top" ? h = i + t.height / 2 : f === "bottom" && (h = i + n - t.height / 2);
4973    var v = !t.isLineHolder && Wv(u);
4974    v && this._renderBackground(u, a, s === "right" ? o - t.width : s === "center" ? o - t.width / 2 : o, h - t.height / 2, t.width, t.height);
4975    var c = !!u.backgroundColor, p = t.textPadding;
4976    p && (o = $0(o, s, p), h -= t.height / 2 - p[0] - t.innerHeight / 2);
4977    var d = this._getOrCreateChild(mo), g = d.createStyle();
4978    d.useStyle(g);
4979    var y = this._defaultStyle, m = false, _ = 0, S = Y0("fill" in u ? u.fill : "fill" in a ? a.fill : (m = true, y.fill)), b = U0("stroke" in u ? u.stroke : "stroke" in a ? a.stroke : !c && !l && (!y.autoStroke || m) ? (_ = G0, y.stroke) : null), x = u.textShadowBlur > 0 || a.textShadowBlur > 0;
4980    g.text = t.text, g.x = o, g.y = h, x && (g.shadowBlur = u.textShadowBlur || a.textShadowBlur || 0, g.shadowColor = u.textShadowColor || a.textShadowColor || "transparent", g.shadowOffsetX = u.textShadowOffsetX || a.textShadowOffsetX || 0, g.shadowOffsetY = u.textShadowOffsetY || a.textShadowOffsetY || 0), g.textAlign = s, g.textBaseline = "middle", g.font = t.font || tn, g.opacity = Ar(u.opacity, a.opacity, 1), H0(g, u), b && (g.lineWidth = Ar(u.lineWidth, a.lineWidth, _), g.lineDash = st(u.lineDash, a.lineDash), g.lineDashOffset = a.lineDashOffset || 0, g.stroke = b), S && (g.fill = S);
4981    var w = t.contentWidth, T = t.contentHeight;
4982    d.setBoundingRect(new ht(Ts(g.x, w, g.textAlign), Ji(g.y, T, g.textBaseline), w, T));
4983  }, e.prototype._renderBackground = function(t, a, n, i, o, s) {
4984    var l = t.backgroundColor, u = t.borderWidth, f = t.borderColor, h = l && l.image, v = l && !h, c = t.borderRadius, p = this, d, g;
4985    if (v || t.lineHeight || u && f) {
4986      d = this._getOrCreateChild(xt), d.useStyle(d.createStyle()), d.style.fill = null;
4987      var y = d.shape;
4988      y.x = n, y.y = i, y.width = o, y.height = s, y.r = c, d.dirtyShape();
4989    }
4990    if (v) {
4991      var m = d.style;
4992      m.fill = l || null, m.fillOpacity = st(t.fillOpacity, 1);
4993    } else if (h) {
4994      g = this._getOrCreateChild(ue), g.onload = function() {
4995        p.dirtyStyle();
4996      };
4997      var _ = g.style;
4998      _.image = l.image, _.x = n, _.y = i, _.width = o, _.height = s;
4999    }
5000    if (u && f) {
5001      var m = d.style;
5002      m.lineWidth = u, m.stroke = f, m.strokeOpacity = st(t.strokeOpacity, 1), m.lineDash = t.borderDash, m.lineDashOffset = t.borderDashOffset || 0, d.strokeContainThreshold = 0, d.hasFill() && d.hasStroke() && (m.strokeFirst = true, m.lineWidth *= 2);
5003    }
5004    var S = (d || g).style;
5005    S.shadowBlur = t.shadowBlur || 0, S.shadowColor = t.shadowColor || "transparent", S.shadowOffsetX = t.shadowOffsetX || 0, S.shadowOffsetY = t.shadowOffsetY || 0, S.opacity = Ar(t.opacity, a.opacity, 1);
5006  }, e.makeFont = function(t) {
5007    var a = "";
5008    return vC(t) && (a = [t.fontStyle, t.fontWeight, hC(t.fontSize), t.fontFamily || "sans-serif"].join(" ")), a && ur(a) || t.textFont || t.font;
5009  }, e;
5010}(vr), cE = { left: true, right: 1, center: 1 }, pE = { top: 1, bottom: 1, middle: 1 }, F0 = ["fontStyle", "fontWeight", "fontSize", "fontFamily"];
5011function hC(r) {
5012  return typeof r == "string" && (r.indexOf("px") !== -1 || r.indexOf("rem") !== -1 || r.indexOf("em") !== -1) ? r : isNaN(+r) ? Ig + "px" : r + "px";
5013}
5014function H0(r, e) {
5015  for (var t = 0; t < F0.length; t++) {
5016    var a = F0[t], n = e[a];
5017    n != null && (r[a] = n);
5018  }
5019}
5020function vC(r) {
5021  return r.fontSize != null || r.fontFamily || r.fontWeight;
5022}
5023function dE(r) {
5024  return W0(r), D(r.rich, W0), r;
5025}
5026function W0(r) {
5027  if (r) {
5028    r.font = St.makeFont(r);
5029    var e = r.align;
5030    e === "middle" && (e = "center"), r.align = e == null || cE[e] ? e : "left";
5031    var t = r.verticalAlign;
5032    t === "center" && (t = "middle"), r.verticalAlign = t == null || pE[t] ? t : "top";
5033    var a = r.padding;
5034    a && (r.padding = bh(r.padding));
5035  }
5036}
5037function U0(r, e) {
5038  return r == null || e <= 0 || r === "transparent" || r === "none" ? null : r.image || r.colorStops ? "#000" : r;
5039}
5040function Y0(r) {
5041  return r == null || r === "none" ? null : r.image || r.colorStops ? "#000" : r;
5042}
5043function $0(r, e, t) {
5044  return e === "right" ? r - t[1] : e === "center" ? r + t[3] / 2 - t[1] / 2 : r + t[3];
5045}
5046function X0(r) {
5047  var e = r.text;
5048  return e != null && (e += ""), e;
5049}
5050function Wv(r) {
5051  return !!(r.backgroundColor || r.lineHeight || r.borderWidth && r.borderColor);
5052}
5053var it = bt(), fd = function(r, e, t, a) {
5054  if (a) {
5055    var n = it(a);
5056    n.dataIndex = t, n.dataType = e, n.seriesIndex = r, n.ssrType = "chart", a.type === "group" && a.traverse(function(i) {
5057      var o = it(i);
5058      o.seriesIndex = r, o.dataIndex = t, o.dataType = e, o.ssrType = "chart";
5059    });
5060  }
5061}, Z0 = 1, q0 = {}, cC = bt(), Kg = bt(), jg = 0, Ol = 1, Eh = 2, Oe = ["emphasis", "blur", "select"], sl = ["normal", "emphasis", "blur", "select"], Io = 10, gE = 9, ai = "highlight", sf = "downplay", Ws = "select", lf = "unselect", Us = "toggleSelect";
5062function Ei(r) {
5063  return r != null && r !== "none";
5064}
5065function kh(r, e, t) {
5066  r.onHoverStateChange && (r.hoverState || 0) !== t && r.onHoverStateChange(e), r.hoverState = t;
5067}
5068function pC(r) {
5069  kh(r, "emphasis", Eh);
5070}
5071function dC(r) {
5072  r.hoverState === Eh && kh(r, "normal", jg);
5073}
5074function Jg(r) {
5075  kh(r, "blur", Ol);
5076}
5077function gC(r) {
5078  r.hoverState === Ol && kh(r, "normal", jg);
5079}
5080function yE(r) {
5081  r.selected = true;
5082}
5083function mE(r) {
5084  r.selected = false;
5085}
5086function K0(r, e, t) {
5087  e(r, t);
5088}
5089function Ca(r, e, t) {
5090  K0(r, e, t), r.isGroup && r.traverse(function(a) {
5091    K0(a, e, t);
5092  });
5093}
5094function Rf(r, e) {
5095  switch (e) {
5096    case "emphasis":
5097      r.hoverState = Eh;
5098      break;
5099    case "normal":
5100      r.hoverState = jg;
5101      break;
5102    case "blur":
5103      r.hoverState = Ol;
5104      break;
5105    case "select":
5106      r.selected = true;
5107  }
5108}
5109function _E(r, e, t, a) {
5110  for (var n = r.style, i = {}, o = 0; o < e.length; o++) {
5111    var s = e[o], l = n[s];
5112    i[s] = l ?? (a && a[s]);
5113  }
5114  for (var o = 0; o < r.animators.length; o++) {
5115    var u = r.animators[o];
5116    u.__fromStateTransition && u.__fromStateTransition.indexOf(t) < 0 && u.targetName === "style" && u.saveTo(i, e);
5117  }
5118  return i;
5119}
5120function SE(r, e, t, a) {
5121  var n = t && vt(t, "select") >= 0, i = false;
5122  if (r instanceof mt) {
5123    var o = cC(r), s = n && o.selectFill || o.normalFill, l = n && o.selectStroke || o.normalStroke;
5124    if (Ei(s) || Ei(l)) {
5125      a = a || {};
5126      var u = a.style || {};
5127      u.fill === "inherit" ? (i = true, a = z({}, a), u = z({}, u), u.fill = s) : !Ei(u.fill) && Ei(s) ? (i = true, a = z({}, a), u = z({}, u), u.fill = Df(s)) : !Ei(u.stroke) && Ei(l) && (i || (a = z({}, a), u = z({}, u)), u.stroke = Df(l)), a.style = u;
5128    }
5129  }
5130  if (a && a.z2 == null) {
5131    i || (a = z({}, a));
5132    var f = r.z2EmphasisLift;
5133    a.z2 = r.z2 + (f ?? Io);
5134  }
5135  return a;
5136}
5137function xE(r, e, t) {
5138  if (t && t.z2 == null) {
5139    t = z({}, t);
5140    var a = r.z2SelectLift;
5141    t.z2 = r.z2 + (a ?? gE);
5142  }
5143  return t;
5144}
5145function bE(r, e, t) {
5146  var a = vt(r.currentStates, e) >= 0, n = r.style.opacity, i = a ? null : _E(r, ["opacity"], e, { opacity: 1 });
5147  t = t || {};
5148  var o = t.style || {};
5149  return o.opacity == null && (t = z({}, t), o = z({ opacity: a ? n : i.opacity * 0.1 }, o), t.style = o), t;
5150}
5151function Uv(r, e) {
5152  var t = this.states[r];
5153  if (this.style) {
5154    if (r === "emphasis") return SE(this, r, e, t);
5155    if (r === "blur") return bE(this, r, t);
5156    if (r === "select") return xE(this, r, t);
5157  }
5158  return t;
5159}
5160function ci(r) {
5161  r.stateProxy = Uv;
5162  var e = r.getTextContent(), t = r.getTextGuideLine();
5163  e && (e.stateProxy = Uv), t && (t.stateProxy = Uv);
5164}
5165function j0(r, e) {
5166  !SC(r, e) && !r.__highByOuter && Ca(r, pC);
5167}
5168function J0(r, e) {
5169  !SC(r, e) && !r.__highByOuter && Ca(r, dC);
5170}
5171function ma(r, e) {
5172  r.__highByOuter |= 1 << (e || 0), Ca(r, pC);
5173}
5174function _a(r, e) {
5175  !(r.__highByOuter &= ~(1 << (e || 0))) && Ca(r, dC);
5176}
5177function yC(r) {
5178  Ca(r, Jg);
5179}
5180function Qg(r) {
5181  Ca(r, gC);
5182}
5183function mC(r) {
5184  Ca(r, yE);
5185}
5186function _C(r) {
5187  Ca(r, mE);
5188}
5189function SC(r, e) {
5190  return r.__highDownSilentOnTouch && e.zrByTouch;
5191}
5192function xC(r) {
5193  var e = r.getModel(), t = [], a = [];
5194  e.eachComponent(function(n, i) {
5195    var o = Kg(i), s = n === "series", l = s ? r.getViewOfSeriesModel(i) : r.getViewOfComponentModel(i);
5196    !s && a.push(l), o.isBlured && (l.group.traverse(function(u) {
5197      gC(u);
5198    }), s && t.push(i)), o.isBlured = false;
5199  }), D(a, function(n) {
5200    n && n.toggleBlurSeries && n.toggleBlurSeries(t, false, e);
5201  });
5202}
5203function hd(r, e, t, a) {
5204  var n = a.getModel();
5205  t = t || "coordinateSystem";
5206  function i(u, f) {
5207    for (var h = 0; h < f.length; h++) {
5208      var v = u.getItemGraphicEl(f[h]);
5209      v && Qg(v);
5210    }
5211  }
5212  if (r != null && !(!e || e === "none")) {
5213    var o = n.getSeriesByIndex(r), s = o.coordinateSystem;
5214    s && s.master && (s = s.master);
5215    var l = [];
5216    n.eachSeries(function(u) {
5217      var f = o === u, h = u.coordinateSystem;
5218      h && h.master && (h = h.master);
5219      var v = h && s ? h === s : f;
5220      if (!(t === "series" && !f || t === "coordinateSystem" && !v || e === "series" && f)) {
5221        var c = a.getViewOfSeriesModel(u);
5222        if (c.group.traverse(function(g) {
5223          g.__highByOuter && f && e === "self" || Jg(g);
5224        }), ce(e)) i(u.getData(), e);
5225        else if (tt(e)) for (var p = _t(e), d = 0; d < p.length; d++) i(u.getData(p[d]), e[p[d]]);
5226        l.push(u), Kg(u).isBlured = true;
5227      }
5228    }), n.eachComponent(function(u, f) {
5229      if (u !== "series") {
5230        var h = a.getViewOfComponentModel(f);
5231        h && h.toggleBlurSeries && h.toggleBlurSeries(l, true, n);
5232      }
5233    });
5234  }
5235}
5236function vd(r, e, t) {
5237  if (!(r == null || e == null)) {
5238    var a = t.getModel().getComponent(r, e);
5239    if (a) {
5240      Kg(a).isBlured = true;
5241      var n = t.getViewOfComponentModel(a);
5242      !n || !n.focusBlurEnabled || n.group.traverse(function(i) {
5243        Jg(i);
5244      });
5245    }
5246  }
5247}
5248function wE(r, e, t) {
5249  var a = r.seriesIndex, n = r.getData(e.dataType);
5250  if (n) {
5251    var i = hi(n, e);
5252    i = (V(i) ? i[0] : i) || 0;
5253    var o = n.getItemGraphicEl(i);
5254    if (!o) for (var s = n.count(), l = 0; !o && l < s; ) o = n.getItemGraphicEl(l++);
5255    if (o) {
5256      var u = it(o);
5257      hd(a, u.focus, u.blurScope, t);
5258    } else {
5259      var f = r.get(["emphasis", "focus"]), h = r.get(["emphasis", "blurScope"]);
5260      f != null && hd(a, f, h, t);
5261    }
5262  }
5263}
5264function ty(r, e, t, a) {
5265  var n = { focusSelf: false, dispatchers: null };
5266  if (r == null || r === "series" || e == null || t == null) return n;
5267  var i = a.getModel().getComponent(r, e);
5268  if (!i) return n;
5269  var o = a.getViewOfComponentModel(i);
5270  if (!o || !o.findHighDownDispatchers) return n;
5271  for (var s = o.findHighDownDispatchers(t), l, u = 0; u < s.length; u++) if (it(s[u]).focus === "self") {
5272    l = true;
5273    break;
5274  }
5275  return { focusSelf: l, dispatchers: s };
5276}
5277function TE(r, e, t) {
5278  var a = it(r), n = ty(a.componentMainType, a.componentIndex, a.componentHighDownName, t), i = n.dispatchers, o = n.focusSelf;
5279  i ? (o && vd(a.componentMainType, a.componentIndex, t), D(i, function(s) {
5280    return j0(s, e);
5281  })) : (hd(a.seriesIndex, a.focus, a.blurScope, t), a.focus === "self" && vd(a.componentMainType, a.componentIndex, t), j0(r, e));
5282}
5283function CE(r, e, t) {
5284  xC(t);
5285  var a = it(r), n = ty(a.componentMainType, a.componentIndex, a.componentHighDownName, t).dispatchers;
5286  n ? D(n, function(i) {
5287    return J0(i, e);
5288  }) : J0(r, e);
5289}
5290function AE(r, e, t) {
5291  if (pd(e)) {
5292    var a = e.dataType, n = r.getData(a), i = hi(n, e);
5293    V(i) || (i = [i]), r[e.type === Us ? "toggleSelect" : e.type === Ws ? "select" : "unselect"](i, a);
5294  }
5295}
5296function Q0(r) {
5297  var e = r.getAllData();
5298  D(e, function(t) {
5299    var a = t.data, n = t.type;
5300    a.eachItemGraphicEl(function(i, o) {
5301      r.isSelected(o, n) ? mC(i) : _C(i);
5302    });
5303  });
5304}
5305function DE(r) {
5306  var e = [];
5307  return r.eachSeries(function(t) {
5308    var a = t.getAllData();
5309    D(a, function(n) {
5310      n.data;
5311      var i = n.type, o = t.getSelectedDataIndices();
5312      if (o.length > 0) {
5313        var s = { dataIndex: o, seriesIndex: t.seriesIndex };
5314        i != null && (s.dataType = i), e.push(s);
5315      }
5316    });
5317  }), e;
5318}
5319function Za(r, e, t) {
5320  qn(r, true), Ca(r, ci), cd(r, e, t);
5321}
5322function ME(r) {
5323  qn(r, false);
5324}
5325function Wt(r, e, t, a) {
5326  a ? ME(r) : Za(r, e, t);
5327}
5328function cd(r, e, t) {
5329  var a = it(r);
5330  e != null ? (a.focus = e, a.blurScope = t) : a.focus && (a.focus = null);
5331}
5332var t_ = ["emphasis", "blur", "select"], IE = { itemStyle: "getItemStyle", lineStyle: "getLineStyle", areaStyle: "getAreaStyle" };
5333function pe(r, e, t, a) {
5334  t = t || "itemStyle";
5335  for (var n = 0; n < t_.length; n++) {
5336    var i = t_[n], o = e.getModel([i, t]), s = r.ensureState(i);
5337    s.style = a ? a(o) : o[IE[t]]();
5338  }
5339}
5340function qn(r, e) {
5341  var t = e === false, a = r;
5342  r.highDownSilentOnTouch && (a.__highDownSilentOnTouch = r.highDownSilentOnTouch), (!t || a.__highDownDispatcher) && (a.__highByOuter = a.__highByOuter || 0, a.__highDownDispatcher = !t);
5343}
5344function ll(r) {
5345  return !!(r && r.__highDownDispatcher);
5346}
5347function LE(r, e, t) {
5348  var a = it(r);
5349  a.componentMainType = e.mainType, a.componentIndex = e.componentIndex, a.componentHighDownName = t;
5350}
5351function PE(r) {
5352  var e = q0[r];
5353  return e == null && Z0 <= 32 && (e = q0[r] = Z0++), e;
5354}
5355function pd(r) {
5356  var e = r.type;
5357  return e === Ws || e === lf || e === Us;
5358}
5359function e_(r) {
5360  var e = r.type;
5361  return e === ai || e === sf;
5362}
5363function RE(r) {
5364  var e = cC(r);
5365  e.normalFill = r.style.fill, e.normalStroke = r.style.stroke;
5366  var t = r.states.select || {};
5367  e.selectFill = t.style && t.style.fill || null, e.selectStroke = t.style && t.style.stroke || null;
5368}
5369var ki = ta.CMD, EE = [[], [], []], r_ = Math.sqrt, kE = Math.atan2;
5370function bC(r, e) {
5371  if (e) {
5372    var t = r.data, a = r.len(), n, i, o, s, l, u, f = ki.M, h = ki.C, v = ki.L, c = ki.R, p = ki.A, d = ki.Q;
5373    for (o = 0, s = 0; o < a; ) {
5374      switch (n = t[o++], s = o, i = 0, n) {
5375        case f:
5376          i = 1;
5377          break;
5378        case v:
5379          i = 1;
5380          break;
5381        case h:
5382          i = 3;
5383          break;
5384        case d:
5385          i = 2;
5386          break;
5387        case p:
5388          var g = e[4], y = e[5], m = r_(e[0] * e[0] + e[1] * e[1]), _ = r_(e[2] * e[2] + e[3] * e[3]), S = kE(-e[1] / _, e[0] / m);
5389          t[o] *= m, t[o++] += g, t[o] *= _, t[o++] += y, t[o++] *= m, t[o++] *= _, t[o++] += S, t[o++] += S, o += 2, s = o;
5390          break;
5391        case c:
5392          u[0] = t[o++], u[1] = t[o++], he(u, u, e), t[s++] = u[0], t[s++] = u[1], u[0] += t[o++], u[1] += t[o++], he(u, u, e), t[s++] = u[0], t[s++] = u[1];
5393      }
5394      for (l = 0; l < i; l++) {
5395        var b = EE[l];
5396        b[0] = t[o++], b[1] = t[o++], he(b, b, e), t[s++] = b[0], t[s++] = b[1];
5397      }
5398    }
5399    r.increaseVersion();
5400  }
5401}
5402var Yv = Math.sqrt, hu = Math.sin, vu = Math.cos, ts = Math.PI;
5403function a_(r) {
5404  return Math.sqrt(r[0] * r[0] + r[1] * r[1]);
5405}
5406function dd(r, e) {
5407  return (r[0] * e[0] + r[1] * e[1]) / (a_(r) * a_(e));
5408}
5409function n_(r, e) {
5410  return (r[0] * e[1] < r[1] * e[0] ? -1 : 1) * Math.acos(dd(r, e));
5411}
5412function i_(r, e, t, a, n, i, o, s, l, u, f) {
5413  var h = l * (ts / 180), v = vu(h) * (r - t) / 2 + hu(h) * (e - a) / 2, c = -1 * hu(h) * (r - t) / 2 + vu(h) * (e - a) / 2, p = v * v / (o * o) + c * c / (s * s);
5414  p > 1 && (o *= Yv(p), s *= Yv(p));
5415  var d = (n === i ? -1 : 1) * Yv((o * o * (s * s) - o * o * (c * c) - s * s * (v * v)) / (o * o * (c * c) + s * s * (v * v))) || 0, g = d * o * c / s, y = d * -s * v / o, m = (r + t) / 2 + vu(h) * g - hu(h) * y, _ = (e + a) / 2 + hu(h) * g + vu(h) * y, S = n_([1, 0], [(v - g) / o, (c - y) / s]), b = [(v - g) / o, (c - y) / s], x = [(-1 * v - g) / o, (-1 * c - y) / s], w = n_(b, x);
5416  if (dd(b, x) <= -1 && (w = ts), dd(b, x) >= 1 && (w = 0), w < 0) {
5417    var T = Math.round(w / ts * 1e6) / 1e6;
5418    w = ts * 2 + T % 2 * ts;
5419  }
5420  f.addData(u, m, _, o, s, S, w, h, i);
5421}
5422var OE = /([mlvhzcqtsa])([^mlvhzcqtsa]*)/ig, NE = /-?([0-9]*\.)?[0-9]+([eE]-?[0-9]+)?/g;
5423function BE(r) {
5424  var e = new ta();
5425  if (!r) return e;
5426  var t = 0, a = 0, n = t, i = a, o, s = ta.CMD, l = r.match(OE);
5427  if (!l) return e;
5428  for (var u = 0; u < l.length; u++) {
5429    for (var f = l[u], h = f.charAt(0), v = void 0, c = f.match(NE) || [], p = c.length, d = 0; d < p; d++) c[d] = parseFloat(c[d]);
5430    for (var g = 0; g < p; ) {
5431      var y = void 0, m = void 0, _ = void 0, S = void 0, b = void 0, x = void 0, w = void 0, T = t, C = a, A = void 0, M = void 0;
5432      switch (h) {
5433        case "l":
5434          t += c[g++], a += c[g++], v = s.L, e.addData(v, t, a);
5435          break;
5436        case "L":
5437          t = c[g++], a = c[g++], v = s.L, e.addData(v, t, a);
5438          break;
5439        case "m":
5440          t += c[g++], a += c[g++], v = s.M, e.addData(v, t, a), n = t, i = a, h = "l";
5441          break;
5442        case "M":
5443          t = c[g++], a = c[g++], v = s.M, e.addData(v, t, a), n = t, i = a, h = "L";
5444          break;
5445        case "h":
5446          t += c[g++], v = s.L, e.addData(v, t, a);
5447          break;
5448        case "H":
5449          t = c[g++], v = s.L, e.addData(v, t, a);
5450          break;
5451        case "v":
5452          a += c[g++], v = s.L, e.addData(v, t, a);
5453          break;
5454        case "V":
5455          a = c[g++], v = s.L, e.addData(v, t, a);
5456          break;
5457        case "C":
5458          v = s.C, e.addData(v, c[g++], c[g++], c[g++], c[g++], c[g++], c[g++]), t = c[g - 2], a = c[g - 1];
5459          break;
5460        case "c":
5461          v = s.C, e.addData(v, c[g++] + t, c[g++] + a, c[g++] + t, c[g++] + a, c[g++] + t, c[g++] + a), t += c[g - 2], a += c[g - 1];
5462          break;
5463        case "S":
5464          y = t, m = a, A = e.len(), M = e.data, o === s.C && (y += t - M[A - 4], m += a - M[A - 3]), v = s.C, T = c[g++], C = c[g++], t = c[g++], a = c[g++], e.addData(v, y, m, T, C, t, a);
5465          break;
5466        case "s":
5467          y = t, m = a, A = e.len(), M = e.data, o === s.C && (y += t - M[A - 4], m += a - M[A - 3]), v = s.C, T = t + c[g++], C = a + c[g++], t += c[g++], a += c[g++], e.addData(v, y, m, T, C, t, a);
5468          break;
5469        case "Q":
5470          T = c[g++], C = c[g++], t = c[g++], a = c[g++], v = s.Q, e.addData(v, T, C, t, a);
5471          break;
5472        case "q":
5473          T = c[g++] + t, C = c[g++] + a, t += c[g++], a += c[g++], v = s.Q, e.addData(v, T, C, t, a);
5474          break;
5475        case "T":
5476          y = t, m = a, A = e.len(), M = e.data, o === s.Q && (y += t - M[A - 4], m += a - M[A - 3]), t = c[g++], a = c[g++], v = s.Q, e.addData(v, y, m, t, a);
5477          break;
5478        case "t":
5479          y = t, m = a, A = e.len(), M = e.data, o === s.Q && (y += t - M[A - 4], m += a - M[A - 3]), t += c[g++], a += c[g++], v = s.Q, e.addData(v, y, m, t, a);
5480          break;
5481        case "A":
5482          _ = c[g++], S = c[g++], b = c[g++], x = c[g++], w = c[g++], T = t, C = a, t = c[g++], a = c[g++], v = s.A, i_(T, C, t, a, x, w, _, S, b, v, e);
5483          break;
5484        case "a":
5485          _ = c[g++], S = c[g++], b = c[g++], x = c[g++], w = c[g++], T = t, C = a, t += c[g++], a += c[g++], v = s.A, i_(T, C, t, a, x, w, _, S, b, v, e);
5486          break;
5487      }
5488    }
5489    (h === "z" || h === "Z") && (v = s.Z, e.addData(v), t = n, a = i), o = v;
5490  }
5491  return e.toStatic(), e;
5492}
5493var wC = function(r) {
5494  Ft(e, r);
5495  function e() {
5496    return r !== null && r.apply(this, arguments) || this;
5497  }
5498  return e.prototype.applyTransform = function(t) {
5499  }, e;
5500}(mt);
5501function TC(r) {
5502  return r.setData != null;
5503}
5504function CC(r, e) {
5505  var t = BE(r), a = z({}, e);
5506  return a.buildPath = function(n) {
5507    if (TC(n)) {
5508      n.setData(t.data);
5509      var i = n.getContext();
5510      i && n.rebuildPath(i, 1);
5511    } else {
5512      var i = n;
5513      t.rebuildPath(i, 1);
5514    }
5515  }, a.applyTransform = function(n) {
5516    bC(t, n), this.dirtyShape();
5517  }, a;
5518}
5519function AC(r, e) {
5520  return new wC(CC(r, e));
5521}
5522function zE(r, e) {
5523  var t = CC(r, e), a = function(n) {
5524    Ft(i, n);
5525    function i(o) {
5526      var s = n.call(this, o) || this;
5527      return s.applyTransform = t.applyTransform, s.buildPath = t.buildPath, s;
5528    }
5529    return i;
5530  }(wC);
5531  return a;
5532}
5533function VE(r, e) {
5534  for (var t = [], a = r.length, n = 0; n < a; n++) {
5535    var i = r[n];
5536    t.push(i.getUpdatedPathProxy(true));
5537  }
5538  var o = new mt(e);
5539  return o.createPathProxy(), o.buildPath = function(s) {
5540    if (TC(s)) {
5541      s.appendPath(t);
5542      var l = s.getContext();
5543      l && s.rebuildPath(l, 1);
5544    }
5545  }, o;
5546}
5547function ey(r, e) {
5548  e = e || {};
5549  var t = new mt();
5550  return r.shape && t.setShape(r.shape), t.setStyle(r.style), e.bakeTransform ? bC(t.path, r.getComputedTransform()) : e.toLocal ? t.setLocalTransform(r.getComputedTransform()) : t.copyTransform(r), t.buildPath = r.buildPath, t.applyTransform = t.applyTransform, t.z = r.z, t.z2 = r.z2, t.zlevel = r.zlevel, t;
5551}
5552var GE = /* @__PURE__ */ function() {
5553  function r() {
5554    this.cx = 0, this.cy = 0, this.r = 0;
5555  }
5556  return r;
5557}(), ea = function(r) {
5558  Ft(e, r);
5559  function e(t) {
5560    return r.call(this, t) || this;
5561  }
5562  return e.prototype.getDefaultShape = function() {
5563    return new GE();
5564  }, e.prototype.buildPath = function(t, a) {
5565    t.moveTo(a.cx + a.r, a.cy), t.arc(a.cx, a.cy, a.r, 0, Math.PI * 2);
5566  }, e;
5567}(mt);
5568ea.prototype.type = "circle";
5569var FE = /* @__PURE__ */ function() {
5570  function r() {
5571    this.cx = 0, this.cy = 0, this.rx = 0, this.ry = 0;
5572  }
5573  return r;
5574}(), Nl = function(r) {
5575  Ft(e, r);
5576  function e(t) {
5577    return r.call(this, t) || this;
5578  }
5579  return e.prototype.getDefaultShape = function() {
5580    return new FE();
5581  }, e.prototype.buildPath = function(t, a) {
5582    var n = 0.5522848, i = a.cx, o = a.cy, s = a.rx, l = a.ry, u = s * n, f = l * n;
5583    t.moveTo(i - s, o), t.bezierCurveTo(i - s, o - f, i - u, o - l, i, o - l), t.bezierCurveTo(i + u, o - l, i + s, o - f, i + s, o), t.bezierCurveTo(i + s, o + f, i + u, o + l, i, o + l), t.bezierCurveTo(i - u, o + l, i - s, o + f, i - s, o), t.closePath();
5584  }, e;
5585}(mt);
5586Nl.prototype.type = "ellipse";
5587var DC = Math.PI, $v = DC * 2, An = Math.sin, Oi = Math.cos, HE = Math.acos, ge = Math.atan2, o_ = Math.abs, Ys = Math.sqrt, Cs = Math.max, zr = Math.min, Sr = 1e-4;
5588function WE(r, e, t, a, n, i, o, s) {
5589  var l = t - r, u = a - e, f = o - n, h = s - i, v = h * l - f * u;
5590  if (!(v * v < Sr)) return v = (f * (e - i) - h * (r - n)) / v, [r + v * l, e + v * u];
5591}
5592function cu(r, e, t, a, n, i, o) {
5593  var s = r - t, l = e - a, u = (o ? i : -i) / Ys(s * s + l * l), f = u * l, h = -u * s, v = r + f, c = e + h, p = t + f, d = a + h, g = (v + p) / 2, y = (c + d) / 2, m = p - v, _ = d - c, S = m * m + _ * _, b = n - i, x = v * d - p * c, w = (_ < 0 ? -1 : 1) * Ys(Cs(0, b * b * S - x * x)), T = (x * _ - m * w) / S, C = (-x * m - _ * w) / S, A = (x * _ + m * w) / S, M = (-x * m + _ * w) / S, I = T - g, L = C - y, P = A - g, R = M - y;
5594  return I * I + L * L > P * P + R * R && (T = A, C = M), { cx: T, cy: C, x0: -f, y0: -h, x1: T * (n / b - 1), y1: C * (n / b - 1) };
5595}
5596function UE(r) {
5597  var e;
5598  if (V(r)) {
5599    var t = r.length;
5600    if (!t) return r;
5601    t === 1 ? e = [r[0], r[0], 0, 0] : t === 2 ? e = [r[0], r[0], r[1], r[1]] : t === 3 ? e = r.concat(r[2]) : e = r;
5602  } else e = [r, r, r, r];
5603  return e;
5604}
5605function YE(r, e) {
5606  var t, a = Cs(e.r, 0), n = Cs(e.r0 || 0, 0), i = a > 0, o = n > 0;
5607  if (!(!i && !o)) {
5608    if (i || (a = n, n = 0), n > a) {
5609      var s = a;
5610      a = n, n = s;
5611    }
5612    var l = e.startAngle, u = e.endAngle;
5613    if (!(isNaN(l) || isNaN(u))) {
5614      var f = e.cx, h = e.cy, v = !!e.clockwise, c = o_(u - l), p = c > $v && c % $v;
5615      if (p > Sr && (c = p), !(a > Sr)) r.moveTo(f, h);
5616      else if (c > $v - Sr) r.moveTo(f + a * Oi(l), h + a * An(l)), r.arc(f, h, a, l, u, !v), n > Sr && (r.moveTo(f + n * Oi(u), h + n * An(u)), r.arc(f, h, n, u, l, v));
5617      else {
5618        var d = void 0, g = void 0, y = void 0, m = void 0, _ = void 0, S = void 0, b = void 0, x = void 0, w = void 0, T = void 0, C = void 0, A = void 0, M = void 0, I = void 0, L = void 0, P = void 0, R = a * Oi(l), E = a * An(l), O = n * Oi(u), k = n * An(u), B = c > Sr;
5619        if (B) {
5620          var F = e.cornerRadius;
5621          F && (t = UE(F), d = t[0], g = t[1], y = t[2], m = t[3]);
5622          var H = o_(a - n) / 2;
5623          if (_ = zr(H, y), S = zr(H, m), b = zr(H, d), x = zr(H, g), C = w = Cs(_, S), A = T = Cs(b, x), (w > Sr || T > Sr) && (M = a * Oi(u), I = a * An(u), L = n * Oi(l), P = n * An(l), c < DC)) {
5624            var U = WE(R, E, L, P, M, I, O, k);
5625            if (U) {
5626              var K = R - U[0], J = E - U[1], nt = M - U[0], It = I - U[1], Yt = 1 / An(HE((K * nt + J * It) / (Ys(K * K + J * J) * Ys(nt * nt + It * It))) / 2), ct = Ys(U[0] * U[0] + U[1] * U[1]);
5627              C = zr(w, (a - ct) / (Yt + 1)), A = zr(T, (n - ct) / (Yt - 1));
5628            }
5629          }
5630        }
5631        if (!B) r.moveTo(f + R, h + E);
5632        else if (C > Sr) {
5633          var et = zr(y, C), dt = zr(m, C), q = cu(L, P, R, E, a, et, v), ot = cu(M, I, O, k, a, dt, v);
5634          r.moveTo(f + q.cx + q.x0, h + q.cy + q.y0), C < w && et === dt ? r.arc(f + q.cx, h + q.cy, C, ge(q.y0, q.x0), ge(ot.y0, ot.x0), !v) : (et > 0 && r.arc(f + q.cx, h + q.cy, et, ge(q.y0, q.x0), ge(q.y1, q.x1), !v), r.arc(f, h, a, ge(q.cy + q.y1, q.cx + q.x1), ge(ot.cy + ot.y1, ot.cx + ot.x1), !v), dt > 0 && r.arc(f + ot.cx, h + ot.cy, dt, ge(ot.y1, ot.x1), ge(ot.y0, ot.x0), !v));
5635        } else r.moveTo(f + R, h + E), r.arc(f, h, a, l, u, !v);
5636        if (!(n > Sr) || !B) r.lineTo(f + O, h + k);
5637        else if (A > Sr) {
5638          var et = zr(d, A), dt = zr(g, A), q = cu(O, k, M, I, n, -dt, v), ot = cu(R, E, L, P, n, -et, v);
5639          r.lineTo(f + q.cx + q.x0, h + q.cy + q.y0), A < T && et === dt ? r.arc(f + q.cx, h + q.cy, A, ge(q.y0, q.x0), ge(ot.y0, ot.x0), !v) : (dt > 0 && r.arc(f + q.cx, h + q.cy, dt, ge(q.y0, q.x0), ge(q.y1, q.x1), !v), r.arc(f, h, n, ge(q.cy + q.y1, q.cx + q.x1), ge(ot.cy + ot.y1, ot.cx + ot.x1), v), et > 0 && r.arc(f + ot.cx, h + ot.cy, et, ge(ot.y1, ot.x1), ge(ot.y0, ot.x0), !v));
5640        } else r.lineTo(f + O, h + k), r.arc(f, h, n, u, l, v);
5641      }
5642      r.closePath();
5643    }
5644  }
5645}
5646var $E = /* @__PURE__ */ function() {
5647  function r() {
5648    this.cx = 0, this.cy = 0, this.r0 = 0, this.r = 0, this.startAngle = 0, this.endAngle = Math.PI * 2, this.clockwise = true, this.cornerRadius = 0;
5649  }
5650  return r;
5651}(), Te = function(r) {
5652  Ft(e, r);
5653  function e(t) {
5654    return r.call(this, t) || this;
5655  }
5656  return e.prototype.getDefaultShape = function() {
5657    return new $E();
5658  }, e.prototype.buildPath = function(t, a) {
5659    YE(t, a);
5660  }, e.prototype.isZeroArea = function() {
5661    return this.shape.startAngle === this.shape.endAngle || this.shape.r === this.shape.r0;
5662  }, e;
5663}(mt);
5664Te.prototype.type = "sector";
5665var XE = /* @__PURE__ */ function() {
5666  function r() {
5667    this.cx = 0, this.cy = 0, this.r = 0, this.r0 = 0;
5668  }
5669  return r;
5670}(), Lo = function(r) {
5671  Ft(e, r);
5672  function e(t) {
5673    return r.call(this, t) || this;
5674  }
5675  return e.prototype.getDefaultShape = function() {
5676    return new XE();
5677  }, e.prototype.buildPath = function(t, a) {
5678    var n = a.cx, i = a.cy, o = Math.PI * 2;
5679    t.moveTo(n + a.r, i), t.arc(n, i, a.r, 0, o, false), t.moveTo(n + a.r0, i), t.arc(n, i, a.r0, 0, o, true);
5680  }, e;
5681}(mt);
5682Lo.prototype.type = "ring";
5683function ZE(r, e, t, a) {
5684  var n = [], i = [], o = [], s = [], l, u, f, h;
5685  if (a) {
5686    f = [1 / 0, 1 / 0], h = [-1 / 0, -1 / 0];
5687    for (var v = 0, c = r.length; v < c; v++) ha(f, f, r[v]), va(h, h, r[v]);
5688    ha(f, f, a[0]), va(h, h, a[1]);
5689  }
5690  for (var v = 0, c = r.length; v < c; v++) {
5691    var p = r[v];
5692    if (t) l = r[v ? v - 1 : c - 1], u = r[(v + 1) % c];
5693    else if (v === 0 || v === c - 1) {
5694      n.push(Zr(r[v]));
5695      continue;
5696    } else l = r[v - 1], u = r[v + 1];
5697    Va(i, u, l), Ns(i, i, e);
5698    var d = bf(p, l), g = bf(p, u), y = d + g;
5699    y !== 0 && (d /= y, g /= y), Ns(o, i, -d), Ns(s, i, g);
5700    var m = Vp([], p, o), _ = Vp([], p, s);
5701    a && (va(m, m, f), ha(m, m, h), va(_, _, f), ha(_, _, h)), n.push(m), n.push(_);
5702  }
5703  return t && n.push(n.shift()), n;
5704}
5705function MC(r, e, t) {
5706  var a = e.smooth, n = e.points;
5707  if (n && n.length >= 2) {
5708    if (a) {
5709      var i = ZE(n, a, t, e.smoothConstraint);
5710      r.moveTo(n[0][0], n[0][1]);
5711      for (var o = n.length, s = 0; s < (t ? o : o - 1); s++) {
5712        var l = i[s * 2], u = i[s * 2 + 1], f = n[(s + 1) % o];
5713        r.bezierCurveTo(l[0], l[1], u[0], u[1], f[0], f[1]);
5714      }
5715    } else {
5716      r.moveTo(n[0][0], n[0][1]);
5717      for (var s = 1, h = n.length; s < h; s++) r.lineTo(n[s][0], n[s][1]);
5718    }
5719    t && r.closePath();
5720  }
5721}
5722var qE = /* @__PURE__ */ function() {
5723  function r() {
5724    this.points = null, this.smooth = 0, this.smoothConstraint = null;
5725  }
5726  return r;
5727}(), Ce = function(r) {
5728  Ft(e, r);
5729  function e(t) {
5730    return r.call(this, t) || this;
5731  }
5732  return e.prototype.getDefaultShape = function() {
5733    return new qE();
5734  }, e.prototype.buildPath = function(t, a) {
5735    MC(t, a, true);
5736  }, e;
5737}(mt);
5738Ce.prototype.type = "polygon";
5739var KE = /* @__PURE__ */ function() {
5740  function r() {
5741    this.points = null, this.percent = 1, this.smooth = 0, this.smoothConstraint = null;
5742  }
5743  return r;
5744}(), De = function(r) {
5745  Ft(e, r);
5746  function e(t) {
5747    return r.call(this, t) || this;
5748  }
5749  return e.prototype.getDefaultStyle = function() {
5750    return { stroke: "#000", fill: null };
5751  }, e.prototype.getDefaultShape = function() {
5752    return new KE();
5753  }, e.prototype.buildPath = function(t, a) {
5754    MC(t, a, false);
5755  }, e;
5756}(mt);
5757De.prototype.type = "polyline";
5758var jE = {}, JE = /* @__PURE__ */ function() {
5759  function r() {
5760    this.x1 = 0, this.y1 = 0, this.x2 = 0, this.y2 = 0, this.percent = 1;
5761  }
5762  return r;
5763}(), ee = function(r) {
5764  Ft(e, r);
5765  function e(t) {
5766    return r.call(this, t) || this;
5767  }
5768  return e.prototype.getDefaultStyle = function() {
5769    return { stroke: "#000", fill: null };
5770  }, e.prototype.getDefaultShape = function() {
5771    return new JE();
5772  }, e.prototype.buildPath = function(t, a) {
5773    var n, i, o, s;
5774    if (this.subPixelOptimize) {
5775      var l = uC(jE, a, this.style);
5776      n = l.x1, i = l.y1, o = l.x2, s = l.y2;
5777    } else n = a.x1, i = a.y1, o = a.x2, s = a.y2;
5778    var u = a.percent;
5779    u !== 0 && (t.moveTo(n, i), u < 1 && (o = n * (1 - u) + o * u, s = i * (1 - u) + s * u), t.lineTo(o, s));
5780  }, e.prototype.pointAt = function(t) {
5781    var a = this.shape;
5782    return [a.x1 * (1 - t) + a.x2 * t, a.y1 * (1 - t) + a.y2 * t];
5783  }, e;
5784}(mt);
5785ee.prototype.type = "line";
5786var Be = [], QE = /* @__PURE__ */ function() {
5787  function r() {
5788    this.x1 = 0, this.y1 = 0, this.x2 = 0, this.y2 = 0, this.cpx1 = 0, this.cpy1 = 0, this.percent = 1;
5789  }
5790  return r;
5791}();
5792function s_(r, e, t) {
5793  var a = r.cpx2, n = r.cpy2;
5794  return a != null || n != null ? [(t ? p0 : ae)(r.x1, r.cpx1, r.cpx2, r.x2, e), (t ? p0 : ae)(r.y1, r.cpy1, r.cpy2, r.y2, e)] : [(t ? Up : fe)(r.x1, r.cpx1, r.x2, e), (t ? Up : fe)(r.y1, r.cpy1, r.y2, e)];
5795}
5796var Po = function(r) {
5797  Ft(e, r);
5798  function e(t) {
5799    return r.call(this, t) || this;
5800  }
5801  return e.prototype.getDefaultStyle = function() {
5802    return { stroke: "#000", fill: null };
5803  }, e.prototype.getDefaultShape = function() {
5804    return new QE();
5805  }, e.prototype.buildPath = function(t, a) {
5806    var n = a.x1, i = a.y1, o = a.x2, s = a.y2, l = a.cpx1, u = a.cpy1, f = a.cpx2, h = a.cpy2, v = a.percent;
5807    v !== 0 && (t.moveTo(n, i), f == null || h == null ? (v < 1 && (el(n, l, o, v, Be), l = Be[1], o = Be[2], el(i, u, s, v, Be), u = Be[1], s = Be[2]), t.quadraticCurveTo(l, u, o, s)) : (v < 1 && (en(n, l, f, o, v, Be), l = Be[1], f = Be[2], o = Be[3], en(i, u, h, s, v, Be), u = Be[1], h = Be[2], s = Be[3]), t.bezierCurveTo(l, u, f, h, o, s)));
5808  }, e.prototype.pointAt = function(t) {
5809    return s_(this.shape, t, false);
5810  }, e.prototype.tangentAt = function(t) {
5811    var a = s_(this.shape, t, true);
5812    return mi(a, a);
5813  }, e;
5814}(mt);
5815Po.prototype.type = "bezier-curve";
5816var tk = /* @__PURE__ */ function() {
5817  function r() {
5818    this.cx = 0, this.cy = 0, this.r = 0, this.startAngle = 0, this.endAngle = Math.PI * 2, this.clockwise = true;
5819  }
5820  return r;
5821}(), Bl = function(r) {
5822  Ft(e, r);
5823  function e(t) {
5824    return r.call(this, t) || this;
5825  }
5826  return e.prototype.getDefaultStyle = function() {
5827    return { stroke: "#000", fill: null };
5828  }, e.prototype.getDefaultShape = function() {
5829    return new tk();
5830  }, e.prototype.buildPath = function(t, a) {
5831    var n = a.cx, i = a.cy, o = Math.max(a.r, 0), s = a.startAngle, l = a.endAngle, u = a.clockwise, f = Math.
5831cos(s), h = Math.sin(s);
5832    t.moveTo(f * o + n, h * o + i), t.arc(n, i, o, s, l, !u);
5833  }, e;
5834}(mt);
5835Bl.prototype.type = "arc";
5836var Oh = function(r) {
5837  Ft(e, r);
5838  function e() {
5839    var t = r !== null && r.apply(this, arguments) || this;
5840    return t.type = "compound", t;
5841  }
5842  return e.prototype._updatePathDirty = function() {
5843    for (var t = this.shape.paths, a = this.shapeChanged(), n = 0; n < t.length; n++) a = a || t[n].shapeChanged();
5844    a && this.dirtyShape();
5845  }, e.prototype.beforeBrush = function() {
5846    this._updatePathDirty();
5847    for (var t = this.shape.paths || [], a = this.getGlobalScale(), n = 0; n < t.length; n++) t[n].path || t[n].createPathProxy(), t[n].path.setScale(a[0], a[1], t[n].segmentIgnoreThreshold);
5848  }, e.prototype.buildPath = function(t, a) {
5849    for (var n = a.paths || [], i = 0; i < n.length; i++) n[i].buildPath(t, n[i].shape, true);
5850  }, e.prototype.afterBrush = function() {
5851    for (var t = this.shape.paths || [], a = 0; a < t.length; a++) t[a].pathUpdated();
5852  }, e.prototype.getBoundingRect = function() {
5853    return this._updatePathDirty.call(this), mt.prototype.getBoundingRect.call(this);
5854  }, e;
5855}(mt), IC = function() {
5856  function r(e) {
5857    this.colorStops = e || [];
5858  }
5859  return r.prototype.addColorStop = function(e, t) {
5860    this.colorStops.push({ offset: e, color: t });
5861  }, r;
5862}(), Ro = function(r) {
5863  Ft(e, r);
5864  function e(t, a, n, i, o, s) {
5865    var l = r.call(this, o) || this;
5866    return l.x = t ?? 0, l.y = a ?? 0, l.x2 = n ?? 1, l.y2 = i ?? 0, l.type = "linear", l.global = s || false, l;
5867  }
5868  return e;
5869}(IC), ry = function(r) {
5870  Ft(e, r);
5871  function e(t, a, n, i, o) {
5872    var s = r.call(this, i) || this;
5873    return s.x = t ?? 0.5, s.y = a ?? 0.5, s.r = n ?? 0.5, s.type = "radial", s.global = o || false, s;
5874  }
5875  return e;
5876}(IC), Dn = [0, 0], Mn = [0, 0], pu = new ft(), du = new ft(), Ef = function() {
5877  function r(e, t) {
5878    this._corners = [], this._axes = [], this._origin = [0, 0];
5879    for (var a = 0; a < 4; a++) this._corners[a] = new ft();
5880    for (var a = 0; a < 2; a++) this._axes[a] = new ft();
5881    e && this.fromBoundingRect(e, t);
5882  }
5883  return r.prototype.fromBoundingRect = function(e, t) {
5884    var a = this._corners, n = this._axes, i = e.x, o = e.y, s = i + e.width, l = o + e.height;
5885    if (a[0].set(i, o), a[1].set(s, o), a[2].set(s, l), a[3].set(i, l), t) for (var u = 0; u < 4; u++) a[u].transform(t);
5886    ft.sub(n[0], a[1], a[0]), ft.sub(n[1], a[3], a[0]), n[0].normalize(), n[1].normalize();
5887    for (var u = 0; u < 2; u++) this._origin[u] = n[u].dot(a[0]);
5888  }, r.prototype.intersect = function(e, t) {
5889    var a = true, n = !t;
5890    return pu.set(1 / 0, 1 / 0), du.set(0, 0), !this._intersectCheckOneSide(this, e, pu, du, n, 1) && (a = false, n) || !this._intersectCheckOneSide(e, this, pu, du, n, -1) && (a = false, n) || n || ft.copy(t, a ? pu : du), a;
5891  }, r.prototype._intersectCheckOneSide = function(e, t, a, n, i, o) {
5892    for (var s = true, l = 0; l < 2; l++) {
5893      var u = this._axes[l];
5894      if (this._getProjMinMaxOnAxis(l, e._corners, Dn), this._getProjMinMaxOnAxis(l, t._corners, Mn), Dn[1] < Mn[0] || Dn[0] > Mn[1]) {
5895        if (s = false, i) return s;
5896        var f = Math.abs(Mn[0] - Dn[1]), h = Math.abs(Dn[0] - Mn[1]);
5897        Math.min(f, h) > n.len() && (f < h ? ft.scale(n, u, -f * o) : ft.scale(n, u, h * o));
5898      } else if (a) {
5899        var f = Math.abs(Mn[0] - Dn[1]), h = Math.abs(Dn[0] - Mn[1]);
5900        Math.min(f, h) < a.len() && (f < h ? ft.scale(a, u, f * o) : ft.scale(a, u, -h * o));
5901      }
5902    }
5903    return s;
5904  }, r.prototype._getProjMinMaxOnAxis = function(e, t, a) {
5905    for (var n = this._axes[e], i = this._origin, o = t[0].dot(n) + i[e], s = o, l = o, u = 1; u < t.length; u++) {
5906      var f = t[u].dot(n) + i[e];
5907      s = Math.min(f, s), l = Math.max(f, l);
5908    }
5909    a[0] = s, a[1] = l;
5910  }, r;
5911}(), ek = [], LC = function(r) {
5912  Ft(e, r);
5913  function e() {
5914    var t = r !== null && r.apply(this, arguments) || this;
5915    return t.notClear = true, t.incremental = true, t._displayables = [], t._temporaryDisplayables = [], t._cursor = 0, t;
5916  }
5917  return e.prototype.traverse = function(t, a) {
5918    t.call(a, this);
5919  }, e.prototype.useStyle = function() {
5920    this.style = {};
5921  }, e.prototype.getCursor = function() {
5922    return this._cursor;
5923  }, e.prototype.innerAfterBrush = function() {
5924    this._cursor = this._displayables.length;
5925  }, e.prototype.clearDisplaybles = function() {
5926    this._displayables = [], this._temporaryDisplayables = [], this._cursor = 0, this.markRedraw(), this.notClear = false;
5927  }, e.prototype.clearTemporalDisplayables = function() {
5928    this._temporaryDisplayables = [];
5929  }, e.prototype.addDisplayable = function(t, a) {
5930    a ? this._temporaryDisplayables.push(t) : this._displayables.push(t), this.markRedraw();
5931  }, e.prototype.addDisplayables = function(t, a) {
5932    a = a || false;
5933    for (var n = 0; n < t.length; n++) this.addDisplayable(t[n], a);
5934  }, e.prototype.getDisplayables = function() {
5935    return this._displayables;
5936  }, e.prototype.getTemporalDisplayables = function() {
5937    return this._temporaryDisplayables;
5938  }, e.prototype.eachPendingDisplayable = function(t) {
5939    for (var a = this._cursor; a < this._displayables.length; a++) t && t(this._displayables[a]);
5940    for (var a = 0; a < this._temporaryDisplayables.length; a++) t && t(this._temporaryDisplayables[a]);
5941  }, e.prototype.update = function() {
5942    this.updateTransform();
5943    for (var t = this._cursor; t < this._displayables.length; t++) {
5944      var a = this._displayables[t];
5945      a.parent = this, a.update(), a.parent = null;
5946    }
5947    for (var t = 0; t < this._temporaryDisplayables.length; t++) {
5948      var a = this._temporaryDisplayables[t];
5949      a.parent = this, a.update(), a.parent = null;
5950    }
5951  }, e.prototype.getBoundingRect = function() {
5952    if (!this._rect) {
5953      for (var t = new ht(1 / 0, 1 / 0, -1 / 0, -1 / 0), a = 0; a < this._displayables.length; a++) {
5954        var n = this._displayables[a], i = n.getBoundingRect().clone();
5955        n.needLocalTransform() && i.applyTransform(n.getLocalTransform(ek)), t.union(i);
5956      }
5957      this._rect = t;
5958    }
5959    return this._rect;
5960  }, e.prototype.contain = function(t, a) {
5961    var n = this.transformCoordToLocal(t, a), i = this.getBoundingRect();
5962    if (i.contain(n[0], n[1])) for (var o = 0; o < this._displayables.length; o++) {
5963      var s = this._displayables[o];
5964      if (s.contain(t, a)) return true;
5965    }
5966    return false;
5967  }, e;
5968}(vr), PC = bt();
5969function Eo(r, e, t, a, n) {
5970  var i;
5971  if (e && e.ecModel) {
5972    var o = e.ecModel.getUpdatePayload();
5973    i = o && o.animation;
5974  }
5975  var s = e && e.isAnimationEnabled(), l = r === "update";
5976  if (s) {
5977    var u = void 0, f = void 0, h = void 0;
5978    a ? (u = st(a.duration, 200), f = st(a.easing, "cubicOut"), h = 0) : (u = e.getShallow(l ? "animationDurationUpdate" : "animationDuration"), f = e.getShallow(l ? "animationEasingUpdate" : "animationEasing"), h = e.getShallow(l ? "animationDelayUpdate" : "animationDelay")), i && (i.duration != null && (u = i.duration), i.easing != null && (f = i.easing), i.delay != null && (h = i.delay)), j(h) && (h = h(t, n)), j(u) && (u = u(t));
5979    var v = { duration: u || 0, delay: h, easing: f };
5980    return v;
5981  } else return null;
5982}
5983function ay(r, e, t, a, n, i, o) {
5984  var s = false, l;
5985  j(n) ? (o = i, i = n, n = null) : tt(n) && (i = n.cb, o = n.during, s = n.isFrom, l = n.removeOpt, n = n.dataIndex);
5986  var u = r === "leave";
5987  u || e.stopAnimation("leave");
5988  var f = Eo(r, a, n, u ? l || {} : null, a && a.getAnimationDelayParams ? a.getAnimationDelayParams(e, n) : null);
5989  if (f && f.duration > 0) {
5990    var h = f.duration, v = f.delay, c = f.easing, p = { duration: h, delay: v || 0, easing: c, done: i, force: !!i || !!o, setToFinal: !u, scope: r, during: o };
5991    s ? e.animateFrom(t, p) : e.animateTo(t, p);
5992  } else e.stopAnimation(), !s && e.attr(t), o && o(1), i && i();
5993}
5994function Tt(r, e, t, a, n, i) {
5995  ay("update", r, e, t, a, n, i);
5996}
5997function Gt(r, e, t, a, n, i) {
5998  ay("enter", r, e, t, a, n, i);
5999}
6000function uo(r) {
6001  if (!r.__zr) return true;
6002  for (var e = 0; e < r.animators.length; e++) {
6003    var t = r.animators[e];
6004    if (t.scope === "leave") return true;
6005  }
6006  return false;
6007}
6008function rn(r, e, t, a, n, i) {
6009  uo(r) || ay("leave", r, e, t, a, n, i);
6010}
6011function l_(r, e, t, a) {
6012  r.removeTextContent(), r.removeTextGuideLine(), rn(r, { style: { opacity: 0 } }, e, t, a);
6013}
6014function ul(r, e, t) {
6015  function a() {
6016    r.parent && r.parent.remove(r);
6017  }
6018  r.isGroup ? r.traverse(function(n) {
6019    n.isGroup || l_(n, e, t, a);
6020  }) : l_(r, e, t, a);
6021}
6022function Er(r) {
6023  PC(r).oldStyle = r.style;
6024}
6025function rk(r) {
6026  return PC(r).oldStyle;
6027}
6028var kf = Math.max, Of = Math.min, gd = {};
6029function RC(r) {
6030  return mt.extend(r);
6031}
6032var ak = zE;
6033function EC(r, e) {
6034  return ak(r, e);
6035}
6036function pr(r, e) {
6037  gd[r] = e;
6038}
6039function Nh(r) {
6040  if (gd.hasOwnProperty(r)) return gd[r];
6041}
6042function zl(r, e, t, a) {
6043  var n = AC(r, e);
6044  return t && (a === "center" && (t = kC(t, n.getBoundingRect())), iy(n, t)), n;
6045}
6046function ny(r, e, t) {
6047  var a = new ue({ style: { image: r, x: e.x, y: e.y, width: e.width, height: e.height }, onload: function(n) {
6048    if (t === "center") {
6049      var i = { width: n.width, height: n.height };
6050      a.setStyle(kC(e, i));
6051    }
6052  } });
6053  return a;
6054}
6055function kC(r, e) {
6056  var t = e.width / e.height, a = r.height * t, n;
6057  a <= r.width ? n = r.height : (a = r.width, n = a / t);
6058  var i = r.x + r.width / 2, o = r.y + r.height / 2;
6059  return { x: i - a / 2, y: o - n / 2, width: a, height: n };
6060}
6061var $e = VE;
6062function iy(r, e) {
6063  if (r.applyTransform) {
6064    var t = r.getBoundingRect(), a = t.calculateTransform(e);
6065    r.applyTransform(a);
6066  }
6067}
6068function _o(r, e) {
6069  return uC(r, r, { lineWidth: e }), r;
6070}
6071function nk(r) {
6072  return fC(r.shape, r.shape, r.style), r;
6073}
6074var uf = Zn;
6075function qa(r, e) {
6076  for (var t = Pl([]); r && r !== e; ) qr(t, r.getLocalTransform(), t), r = r.parent;
6077  return t;
6078}
6079function Ir(r, e, t) {
6080  return e && !ce(e) && (e = ca.getLocalTransform(e)), t && (e = _i([], e)), he([], r, e);
6081}
6082function Bh(r, e, t) {
6083  var a = e[4] === 0 || e[5] === 0 || e[0] === 0 ? 1 : Math.abs(2 * e[4] / e[0]), n = e[4] === 0 || e[5] === 0 || e[2] === 0 ? 1 : Math.abs(2 * e[4] / e[2]), i = [r === "left" ? -a : r === "right" ? a : 0, r === "top" ? -n : r === "bottom" ? n : 0];
6084  return i = Ir(i, e, t), Math.abs(i[0]) > Math.abs(i[1]) ? i[0] >
6084 0 ? "right" : "left" : i[1] > 0 ? "bottom" : "top";
6085}
6086function u_(r) {
6087  return !r.isGroup;
6088}
6089function ik(r) {
6090  return r.shape != null;
6091}
6092function Vl(r, e, t) {
6093  if (!r || !e) return;
6094  function a(o) {
6095    var s = {};
6096    return o.traverse(function(l) {
6097      u_(l) && l.anid && (s[l.anid] = l);
6098    }), s;
6099  }
6100  function n(o) {
6101    var s = { x: o.x, y: o.y, rotation: o.rotation };
6102    return ik(o) && (s.shape = z({}, o.shape)), s;
6103  }
6104  var i = a(r);
6105  e.traverse(function(o) {
6106    if (u_(o) && o.anid) {
6107      var s = i[o.anid];
6108      if (s) {
6109        var l = n(o);
6110        o.attr(n(s)), Tt(o, l, t, it(o).dataIndex);
6111      }
6112    }
6113  });
6114}
6115function oy(r, e) {
6116  return G(r, function(t) {
6117    var a = t[0];
6118    a = kf(a, e.x), a = Of(a, e.x + e.width);
6119    var n = t[1];
6120    return n = kf(n, e.y), n = Of(n, e.y + e.height), [a, n];
6121  });
6122}
6123function OC(r, e) {
6124  var t = kf(r.x, e.x), a = Of(r.x + r.width, e.x + e.width), n = kf(r.y, e.y), i = Of(r.y + r.height, e.y + e.height);
6125  if (a >= t && i >= n) return { x: t, y: n, width: a - t, height: i - n };
6126}
6127function ko(r, e, t) {
6128  var a = z({ rectHover: true }, e), n = a.style = { strokeNoScale: true };
6129  if (t = t || { x: -1, y: -1, width: 2, height: 2 }, r) return r.indexOf("image://") === 0 ? (n.image = r.slice(8), Q(n, t), new ue(a)) : zl(r.replace("path://", ""), a, t, "center");
6130}
6131function As(r, e, t, a, n) {
6132  for (var i = 0, o = n[n.length - 1]; i < n.length; i++) {
6133    var s = n[i];
6134    if (NC(r, e, t, a, s[0], s[1], o[0], o[1])) return true;
6135    o = s;
6136  }
6137}
6138function NC(r, e, t, a, n, i, o, s) {
6139  var l = t - r, u = a - e, f = o - n, h = s - i, v = Xv(f, h, l, u);
6140  if (ok(v)) return false;
6141  var c = r - n, p = e - i, d = Xv(c, p, l, u) / v;
6142  if (d < 0 || d > 1) return false;
6143  var g = Xv(c, p, f, h) / v;
6144  return !(g < 0 || g > 1);
6145}
6146function Xv(r, e, t, a) {
6147  return r * a - t * e;
6148}
6149function ok(r) {
6150  return r <= 1e-6 && r >= -1e-6;
6151}
6152function Si(r) {
6153  var e = r.itemTooltipOption, t = r.componentModel, a = r.itemName, n = Y(e) ? { formatter: e } : e, i = t.mainType, o = t.componentIndex, s = { componentType: i, name: a, $vars: ["name"] };
6154  s[i + "Index"] = o;
6155  var l = r.formatterParamsExtra;
6156  l && D(_t(l), function(f) {
6157    X(s, f) || (s[f] = l[f], s.$vars.push(f));
6158  });
6159  var u = it(r.el);
6160  u.componentMainType = i, u.componentIndex = o, u.tooltipConfig = { name: a, option: Q({ content: a, encodeHTMLContent: true, formatterParams: s }, n) };
6161}
6162function f_(r, e) {
6163  var t;
6164  r.isGroup && (t = e(r)), t || r.traverse(e);
6165}
6166function un(r, e) {
6167  if (r) if (V(r)) for (var t = 0; t < r.length; t++) f_(r[t], e);
6168  else f_(r, e);
6169}
6170pr("circle", ea);
6171pr("ellipse", Nl);
6172pr("sector", Te);
6173pr("ring", Lo);
6174pr("polygon", Ce);
6175pr("polyline", De);
6176pr("rect", xt);
6177pr("line", ee);
6178pr("bezierCurve", Po);
6179pr("arc", Bl);
6180const xi = Object.freeze(Object.defineProperty({ __proto__: null, Arc: Bl, BezierCurve: Po, BoundingRect: ht, Circle: ea, CompoundPath: Oh, Ellipse: Nl, Group: at, Image: ue, IncrementalDisplayable: LC, Line: ee, LinearGradient: Ro, OrientedBoundingRect: Ef, Path: mt, Point: ft, Polygon: Ce, Polyline: De, RadialGradient: ry, Rect: xt, Ring: Lo, Sector: Te, Text: St, applyTransform: Ir, clipPointsByRect: oy, clipRectByRect: OC, createIcon: ko, extendPath: EC, extendShape: RC, getShapeClass: Nh, getTransform: qa, groupTransition: Vl, initProps: Gt, isElementRemoved: uo, lineLineIntersect: NC, linePolygonIntersect: As, makeImage: ny, makePath: zl, mergePath: $e, registerShape: pr, removeElement: rn, removeElementWithFadeOut: ul, resizePath: iy, setTooltipConfig: Si, subPixelOptimize: uf, subPixelOptimizeLine: _o, subPixelOptimizeRect: nk, transformDirection: Bh, traverseElements: un, updateProps: Tt }, Symbol.toStringTag, { value: "Module" }));
6181var zh = {};
6182function BC(r, e) {
6183  for (var t = 0; t < Oe.length; t++) {
6184    var a = Oe[t], n = e[a], i = r.ensureState(a);
6185    i.style = i.style || {}, i.style.text = n;
6186  }
6187  var o = r.currentStates.slice();
6188  r.clearStates(true), r.setStyle({ text: e.normal }), r.useStates(o, true);
6189}
6190function yd(r, e, t) {
6191  var a = r.labelFetcher, n = r.labelDataIndex, i = r.labelDimIndex, o = e.normal, s;
6192  a && (s = a.getFormattedLabel(n, "normal", null, i, o && o.get("formatter"), t != null ? { interpolatedValue: t } : null)), s == null && (s = j(r.defaultText) ? r.defaultText(n, r, t) : r.defaultText);
6193  for (var l = { normal: s }, u = 0; u < Oe.length; u++) {
6194    var f = Oe[u], h = e[f];
6195    l[f] = st(a ? a.getFormattedLabel(n, f, null, i, h && h.get("formatter")) : null, s);
6196  }
6197  return l;
6198}
6199function de(r, e, t, a) {
6200  t = t || zh;
6201  for (var n = r instanceof St, i = false, o = 0; o < sl.length; o++) {
6202    var s = e[sl[o]];
6203    if (s && s.getShallow("show")) {
6204      i = true;
6205      break;
6206    }
6207  }
6208  var l = n ? r : r.getTextContent();
6209  if (i) {
6210    n || (l || (l = new St(), r.setTextContent(l)), r.stateProxy && (l.stateProxy = r.stateProxy));
6211    var u = yd(t, e), f = e.normal, h = !!f.getShallow("show"), v = Nt(f, a && a.normal, t, false, !n);
6212    v.text = u.normal, n || r.setTextConfig(Nf(f, t, false));
6213    for (var o = 0; o < Oe.length; o++) {
6214      var c = Oe[o], s = e[c];
6215      if (s) {
6216        var p = l.ensureState(c), d = !!st(s.getShallow("show"), h);
6217        if (d !== h && (p.ignore = !d), p.style = Nt(s, a && a[c], t, true, !n), p.style.text = u[c], !n) {
6218          var g = r.ensureState(c);
6219          g.textConfig = Nf(s, t, true);
6220        }
6221      }
6222    }
6223    l.silent = !!f.getShallow("silent"), l.style.x != null && (v.x = l.style.x), l.style.y != null && (v.y = l.style.y), l.ignore = !h, l.useStyle(v), l.dirty(), t.enableTextSetter && (Oo(l).setLabelText = function(y) {
6224      var m = yd(t, e, y);
6225      BC(l, m);
6226    });
6227  } else l && (l.ignore = true);
6228  r.dirty();
6229}
6230function se(r, e) {
6231  e = e || "label";
6232  for (var t = { normal: r.getModel(e) }, a = 0; a < Oe.length; a++) {
6233    var n = Oe[a];
6234    t[n] = r.getModel([n, e]);
6235  }
6236  return t;
6237}
6238function Nt(r, e, t, a, n) {
6239  var i = {};
6240  return sk(i, r, t, a, n), e && z(i, e), i;
6241}
6242function Nf(r, e, t) {
6243  e = e || {};
6244  var a = {}, n, i = r.getShallow("rotate"), o = st(r.getShallow("distance"), t ? null : 5), s = r.getShallow("offset");
6245  return n = r.getShallow("position") || (t ? null : "inside"), n === "outside" && (n = e.defaultOutsidePosition || "top"), n != null && (a.position = n), s != null && (a.offset = s), i != null && (i *= Math.PI / 180, a.rotation = i), o != null && (a.distance = o), a.outsideFill = r.get("color") === "inherit" ? e.inheritColor || null : "auto", a;
6246}
6247function sk(r, e, t, a, n) {
6248  t = t || zh;
6249  var i = e.ecModel, o = i && i.option.textStyle, s = lk(e), l;
6250  if (s) {
6251    l = {};
6252    for (var u in s) if (s.hasOwnProperty(u)) {
6253      var f = e.getModel(["rich", u]);
6254      p_(l[u] = {}, f, o, t, a, n, false, true);
6255    }
6256  }
6257  l && (r.rich = l);
6258  var h = e.get("overflow");
6259  h && (r.overflow = h);
6260  var v = e.get("minMargin");
6261  v != null && (r.margin = v), p_(r, e, o, t, a, n, true, false);
6262}
6263function lk(r) {
6264  for (var e; r && r !== r.ecModel; ) {
6265    var t = (r.option || zh).rich;
6266    if (t) {
6267      e = e || {};
6268      for (var a = _t(t), n = 0; n < a.length; n++) {
6269        var i = a[n];
6270        e[i] = 1;
6271      }
6272    }
6273    r = r.parentModel;
6274  }
6275  return e;
6276}
6277var h_ = ["fontStyle", "fontWeight", "fontSize", "fontFamily", "textShadowColor", "textShadowBlur", "textShadowOffsetX", "textShadowOffsetY"], v_ = ["align", "lineHeight", "width", "height", "tag", "verticalAlign", "ellipsis"], c_ = ["padding", "borderWidth", "borderRadius", "borderDashOffset", "backgroundColor", "borderColor", "shadowColor", "shadowBlur", "shadowOffsetX", "shadowOffsetY"];
6278function p_(r, e, t, a, n, i, o, s) {
6279  t = !n && t || zh;
6280  var l = a && a.inheritColor, u = e.getShallow("color"), f = e.getShallow("textBorderColor"), h = st(e.getShallow("opacity"), t.opacity);
6281  (u === "inherit" || u === "auto") && (l ? u = l : u = null), (f === "inherit" || f === "auto") && (l ? f = l : f = null), i || (u = u || t.color, f = f || t.textBorderColor), u != null && (r.fill = u), f != null && (r.stroke = f);
6282  var v = st(e.getShallow("textBorderWidth"), t.textBorderWidth);
6283  v != null && (r.lineWidth = v);
6284  var c = st(e.getShallow("textBorderType"), t.textBorderType);
6285  c != null && (r.lineDash = c);
6286  var p = st(e.getShallow("textBorderDashOffset"), t.textBorderDashOffset);
6287  p != null && (r.lineDashOffset = p), !n && h == null && !s && (h = a && a.defaultOpacity), h != null && (r.opacity = h), !n && !i && r.fill == null && a.inheritColor && (r.fill = a.inheritColor);
6288  for (var d = 0; d < h_.length; d++) {
6289    var g = h_[d], y = st(e.getShallow(g), t[g]);
6290    y != null && (r[g] = y);
6291  }
6292  for (var d = 0; d < v_.length; d++) {
6293    var g = v_[d], y = e.getShallow(g);
6294    y != null && (r[g] = y);
6295  }
6296  if (r.verticalAlign == null) {
6297    var m = e.getShallow("baseline");
6298    m != null && (r.verticalAlign = m);
6299  }
6300  if (!o || !a.disableBox) {
6301    for (var d = 0; d < c_.length; d++) {
6302      var g = c_[d], y = e.getShallow(g);
6303      y != null && (r[g] = y);
6304    }
6305    var _ = e.getShallow("borderType");
6306    _ != null && (r.borderDash = _), (r.backgroundColor === "auto" || r.backgroundColor === "inherit") && l && (r.backgroundColor = l), (r.borderColor === "auto" || r.borderColor === "inherit") && l && (r.borderColor = l);
6307  }
6308}
6309function sy(r, e) {
6310  var t = e && e.getModel("textStyle");
6311  return ur([r.fontStyle || t && t.getShallow("fontStyle") || "", r.fontWeight || t && t.getShallow("fontWeight") || "", (r.fontSize || t && t.getShallow("fontSize") || 12) + "px", r.fontFamily || t && t.getShallow("fontFamily") || "sans-serif"].join(" "));
6312}
6313var Oo = bt();
6314function zC(r, e, t, a) {
6315  if (r) {
6316    var n = Oo(r);
6317    n.prevValue = n.value, n.value = t;
6318    var i = e.normal;
6319    n.valueAnimation = i.get("valueAnimation"), n.valueAnimation && (n.precision = i.get("precision"), n.defaultInterpolatedText = a, n.statesModels = e);
6320  }
6321}
6322function VC(r, e, t, a, n) {
6323  var i = Oo(r);
6324  if (!i.valueAnimation || i.prevValue === i.value) return;
6325  var o = i.defaultInterpolatedText, s = st(i.interpolatedValue, i.prevValue), l = i.value;
6326  function u(f) {
6327    var h = tC(t, i.precision, s, l, f);
6328    i.interpolatedValue = f === 1 ? null : h;
6329    var v = yd({ labelDataIndex: e, labelFetcher: n, defaultText: o ? o(h) : h + "" }, i.statesModels, h);
6330    BC(r, v);
6331  }
6332  r.percent = 0, (i.prevValue == null ? Gt : Tt)(r, { percent: 1 }, a, e, null, u);
6333}
6334var uk = ["textStyle", "color"], Zv = ["fontStyle", "fontWeight", "fontSize", "fontFamily", "padding", "lineHeight", "rich", "width", "height", "overflow"], qv = new St(), fk = function() {
6335  function r() {
6336  }
6337  return r.prototype.getTextColor = function(e) {
6338    var t = this.ecModel;
6339    return this.getShallow("color") || (!e && t ? t.get(uk) : null);
6340  }, r.prototype.getFont = function() {
6341    return sy({ fontStyle: this.getShallow("fontStyle"), fontWeight: this.getShallow("fontWeight"), fontSize: this.getShallow("fontSize"), fontFamily: this.getShallow("fontFamily") }, this.ecModel);
6342  }, r.prototype.getTextRect = function(e) {
6343    for (var t = { text: e, verticalAlign: this.getShallow("verticalAlign") || this.getShallow("baseline") }, a = 0; a < Zv.length; a++) t[Zv[a]] = this.getShallow(Zv[a]);
6344    return qv.useStyle(t), qv.update(), qv.getBoundingRect();
6345  }, r;
6346}(), GC = [["lineWidth", "width"], ["stroke", "color"], ["opacity"], ["shadowBlur"], ["shadowOffsetX"], ["shadowOffsetY"], ["shadowColor"], ["lineDash", "type"], ["lineDashOffset", "dashOffset"], ["lineCap", "cap"], ["lineJoin", "join"], ["miterLimit"]], hk = vi(GC), vk = function() {
6347  function r() {
6348  }
6349  return r.prototype.getLineStyle = function(e) {
6350    return hk(this, e);
6351  }, r;
6352}(), FC = [["fill", "color"], ["stroke", "borderColor"], ["lineWidth", "borderWidth"], ["opacity"], ["shadowBlur"], ["shadowOffsetX"], ["shadowOffsetY"], ["shadowColor"], ["lineDash", "borderType"], ["lineDashOffset", "borderDashOffset"], ["lineCap", "borderCap"], ["lineJoin", "borderJoin"], ["miterLimit", "borderMiterLimit"]], ck = vi(FC), pk = function() {
6353  function r() {
6354  }
6355  return r.prototype.getItemStyle = function(e, t) {
6356    return ck(this, e, t);
6357  }, r;
6358}(), At = function() {
6359  function r(e, t, a) {
6360    this.parentModel = t, this.ecModel = a, this.option = e;
6361  }
6362  return r.prototype.init = function(e, t, a) {
6363  }, r.prototype.mergeOption = function(e, t) {
6364    ut(this.option, e, true);
6365  }, r.prototype.get = function(e, t) {
6366    return e == null ? this.option : this._doGet(this.parsePath(e), !t && this.parentModel);
6367  }, r.prototype.getShallow = function(e, t) {
6368    var a = this.option, n = a == null ? a : a[e];
6369    if (n == null && !t) {
6370      var i = this.parentModel;
6371      i && (n = i.getShallow(e));
6372    }
6373    return n;
6374  }, r.prototype.getModel = function(e, t) {
6375    var a = e != null, n = a ? this.parsePath(e) : null, i = a ? this._doGet(n) : this.option;
6376    return t = t || this.parentModel && this.parentModel.getModel(this.resolveParentPath(n)), new r(i, t, this.ecModel);
6377  }, r.prototype.isEmpty = function() {
6378    return this.option == null;
6379  }, r.prototype.restoreData = function() {
6380  }, r.prototype.clone = function() {
6381    var e = this.constructor;
6382    return new e(rt(this.option));
6383  }, r.prototype.parsePath = function(e) {
6384    return typeof e == "string" ? e.split(".") : e;
6385  }, r.prototype.resolveParentPath = function(e) {
6386    return e;
6387  }, r.prototype.isAnimationEnabled = function() {
6388    if (!yt.node && this.option) {
6389      if (this.option.animation != null) return !!this.option.animation;
6390      if (this.parentModel) return this.parentModel.isAnimationEnabled();
6391    }
6392  }, r.prototype._doGet = function(e, t) {
6393    var a = this.option;
6394    if (!e) return a;
6395    for (var n = 0; n < e.length && !(e[n] && (a = a && typeof a == "object" ? a[e[n]] : null, a == null)); n++) ;
6396    return a == null && t && (a = t._doGet(this.resolveParentPath(e), t.parentModel)), a;
6397  }, r;
6398}();
6399Xg(At);
6400DR(At);
6401Xt(At, vk);
6402Xt(At, pk);
6403Xt(At, RR);
6404Xt(At, fk);
6405var dk = Math.round(Math.random() * 10);
6406function No(r) {
6407  return [r || "", dk++].join("_");
6408}
6409function gk(r) {
6410  var e = {};
6411  r.registerSubTypeDefaulter = function(t, a) {
6412    var n = Yr(t);
6413    e[n.main] = a;
6414  }, r.determineSubType = function(t, a) {
6415    var n = a.type;
6416    if (!n) {
6417      var i = Yr(t).main;
6418      r.hasSubTypes(t) && e[i] && (n = e[i](a));
6419    }
6420    return n;
6421  };
6422}
6423function yk(r, e) {
6424  r.topologicalTravel = function(i, o, s, l) {
6425    if (!i.length) return;
6426    var u = t(o), f = u.graph, h = u.noEntryList, v = {};
6427    for (D(i, function(m) {
6428      v[m] = true;
6429    }); h.length; ) {
6430      var c = h.pop(), p = f[c], d = !!v[c];
6431      d && (s.call(l, c, p.originalDeps.slice()), delete v[c]), D(p.successor, d ? y : g);
6432    }
6433    D(v, function() {
6434      var m = "";
6435      throw new Error(m);
6436    });
6437    function g(m) {
6438      f[m].entryCount--, f[m].entryCount === 0 && h.push(m);
6439    }
6440    function y(m) {
6441      v[m] = true, g(m);
6442    }
6443  };
6444  function t(i) {
6445    var o = {}, s = [];
6446    return D(i, function(l) {
6447      var u = a(o, l), f = u.originalDeps = e(l), h = n(f, i);
6448      u.entryCount = h.length, u.entryCount === 0 && s.push(l), D(h, function(v) {
6449        vt(u.predecessor, v) < 0 && u.predecessor.push(v);
6450        var c = a(o, v);
6451        vt(c.successor, v) < 0 && c.successor.push(l);
6452      });
6453    }), { graph: o, noEntryList: s };
6454  }
6455  function a(i, o) {
6456    return i[o] || (i[o] = { predecessor: [], successor: [] }), i[o];
6457  }
6458  function n(i, o) {
6459    var s = [];
6460    return D(i, function(l) {
6461      vt(o, l) >= 0 && s.push(l);
6462    }), s;
6463  }
6464}
6465function fn(r, e) {
6466  return ut(ut({}, r, true), e, true);
6467}
6468const mk = { time: { month: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "
6468November", "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: ". " } } } }, _k = { 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" } }
6468, 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: "" } } } };
6469var Bf = "ZH", ly = "EN", fo = ly, ff = {}, uy = {}, HC = yt.domSupported ? function() {
6470  var r = (document.documentElement.lang || navigator.language || navigator.browserLanguage || fo).toUpperCase();
6471  return r.indexOf(Bf) > -1 ? Bf : fo;
6472}() : fo;
6473function fy(r, e) {
6474  r = r.toUpperCase(), uy[r] = new At(e), ff[r] = e;
6475}
6476function Sk(r) {
6477  if (Y(r)) {
6478    var e = ff[r.toUpperCase()] || {};
6479    return r === Bf || r === ly ? rt(e) : ut(rt(e), rt(ff[fo]), false);
6480  } else return ut(rt(r), rt(ff[fo]), false);
6481}
6482function md(r) {
6483  return uy[r];
6484}
6485function xk() {
6486  return uy[fo];
6487}
6488fy(ly, mk);
6489fy(Bf, _k);
6490var hy = 1e3, vy = hy * 60, $s = vy * 60, lr = $s * 24, d_ = lr * 365, Ds = { 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}" }, gu = "{yyyy}-{MM}-{dd}", g_ = { year: "{yyyy}", month: "{yyyy}-{MM}", day: gu, hour: gu + " " + Ds.hour, minute: gu + " " + Ds.minute, second: gu + " " + Ds.second, millisecond: Ds.none }, Kv = ["year", "month", "day", "hour", "minute", "second", "millisecond"], WC = ["year", "half-year", "quarter", "month", "week", "half-week", "day", "half-day", "quarter-day", "hour", "minute", "second", "millisecond"];
6491function Le(r, e) {
6492  return r += "", "0000".substr(0, e - r.length) + r;
6493}
6494function ho(r) {
6495  switch (r) {
6496    case "half-year":
6497    case "quarter":
6498      return "month";
6499    case "week":
6500    case "half-week":
6501      return "day";
6502    case "half-day":
6503    case "quarter-day":
6504      return "hour";
6505    default:
6506      return r;
6507  }
6508}
6509function bk(r) {
6510  return r === ho(r);
6511}
6512function wk(r) {
6513  switch (r) {
6514    case "year":
6515    case "month":
6516      return "day";
6517    case "millisecond":
6518      return "millisecond";
6519    default:
6520      return "second";
6521  }
6522}
6523function Gl(r, e, t, a) {
6524  var n = Ke(r), i = n[cy(t)](), o = n[vo(t)]() + 1, s = Math.floor((o - 1) / 3) + 1, l = n[Vh(t)](), u = n["get" + (t ? "UTC" : "") + "Day"](), f = n[fl(t)](), h = (f - 1) % 12 + 1, v = n[Gh(t)](), c = n[Fh(t)](), p = n[Hh(t)](), d = f >= 12 ? "pm" : "am", g = d.toUpperCase(), y = a instanceof At ? a : md(a || HC) || xk(), m = y.getModel("time"), _ = m.get("month"), S = m.get("monthAbbr"), b = m.get("dayOfWeek"), x = m.get("dayOfWeekAbbr");
6525  return (e || "").replace(/{a}/g, d + "").replace(/{A}/g, g + "").replace(/{yyyy}/g, i + "").replace(/{yy}/g, Le(i % 100 + "", 2)).replace(/{Q}/g, s + "").replace(/{MMMM}/g, _[o - 1]).replace(/{MMM}/g, S[o - 1]).replace(/{MM}/g, Le(o, 2)).replace(/{M}/g, o + "").replace(/{dd}/g, Le(l, 2)).replace(/{d}/g, l + "").replace(/{eeee}/g, b[u]).replace(/{ee}/g, x[u]).replace(/{e}/g, u + "").replace(/{HH}/g, Le(f, 2)).replace(/{H}/g, f + "").replace(/{hh}/g, Le(h + "", 2)).replace(/{h}/g, h + "").replace(/{mm}/g, Le(v, 2)).replace(/{m}/g, v + "").replace(/{ss}/g, Le(c, 2)).replace(/{s}/g, c + "").replace(/{SSS}/g, Le(p, 3)).replace(/{S}/g, p + "");
6526}
6527function Tk(r, e, t, a, n) {
6528  var i = null;
6529  if (Y(t)) i = t;
6530  else if (j(t)) i = t(r.value, e, { level: r.level });
6531  else {
6532    var o = z({}, Ds);
6533    if (r.level > 0) for (var s = 0; s < Kv.length; ++s) o[Kv[s]] = "{primary|" + o[Kv[s]] + "}";
6534    var l = t ? t.inherit === false ? t : Q(t, o) : o, u = UC(r.value, n);
6535    if (l[u]) i = l[u];
6536    else if (l.inherit) {
6537      for (var f = WC.indexOf(u), s = f - 1; s >= 0; --s) if (l[u]) {
6538        i = l[u];
6539        break;
6540      }
6541      i = i || o.none;
6542    }
6543    if (V(i)) {
6544      var h = r.level == null ? 0 : r.level >= 0 ? r.level : i.length + r.level;
6545      h = Math.min(h, i.length - 1), i = i[h];
6546    }
6547  }
6548  return Gl(new Date(r.value), i, n, a);
6549}
6550function UC(r, e) {
6551  var t = Ke(r), a = t[vo(e)]() + 1, n = t[Vh(e)](), i = t[fl(e)](), o = t[Gh(e)](), s = t[Fh(e)](), l = t[Hh(e)](), u = l === 0, f = u && s === 0, h = f && o === 0, v = h && i === 0, c = v && n === 1, p = c && a === 1;
6552  return p ? "year" : c ? "month" : v ? "day" : h ? "hour" : f ? "minute" : u ? "second" : "millisecond";
6553}
6554function y_(r, e, t) {
6555  var a = wt(r) ? Ke(r) : r;
6556  switch (e = e || UC(r, t), e) {
6557    case "year":
6558      return a[cy(t)]();
6559    case "half-year":
6560      return a[vo(t)]() >= 6 ? 1 : 0;
6561    case "quarter":
6562      return Math.floor((a[vo(t)]() + 1) / 4);
6563    case "month":
6564      return a[vo(t)]();
6565    case "day":
6566      return a[Vh(t)]();
6567    case "half-day":
6568      return a[fl(t)]() / 24;
6569    case "hour":
6570      return a[fl(t)]();
6571    case "minute":
6572      return a[Gh(t)]();
6573    case "second":
6574      return a[Fh(t)]();
6575    case "millisecond":
6576      return a[Hh(t)]();
6577  }
6578}
6579function cy(r) {
6580  return r ? "getUTCFullYear" : "getFullYear";
6581}
6582function vo(r) {
6583  return r ? "getUTCMonth" : "getMonth";
6584}
6585function Vh(r) {
6586  return r ? "getUTCDate" : "getDate";
6587}
6588function fl(r) {
6589  return r ? "getUTCHours" : "getHours";
6590}
6591function Gh(r) {
6592  return r ? "getUTCMinutes" : "getMinutes";
6593}
6594function Fh(r) {
6595  return r ? "getUTCSeconds" : "getSeconds";
6596}
6597function Hh(r) {
6598  return r ? "getUTCMilliseconds" : "getMilliseconds";
6599}
6600function Ck(r) {
6601  return r ? "setUTCFullYear" : "setFullYear";
6602}
6603function YC(r) {
6604  return r ? "setUTCMonth" : "setMonth";
6605}
6606function $C(r) {
6607  return r ? "setUTCDate" : "setDate";
6608}
6609function XC(r) {
6610  return r ? "setUTCHours" : "setHours";
6611}
6612function ZC(r) {
6613  return r ? "setUTCMinutes" : "setMinutes";
6614}
6615function qC(r) {
6616  return r ? "setUTCSeconds" : "setSeconds";
6617}
6618function KC(r) {
6619  return r ? "setUTCMilliseconds" : "setMilliseconds";
6620}
6621function Ak(r, e, t, a, n, i, o, s) {
6622  var l = new St({ style: { text: r, font: e, align: t, verticalAlign: a, padding: n, rich: i, overflow: o ? "truncate" : null, lineHeight: s } });
6623  return l.getBoundingRect();
6624}
6625function py(r) {
6626  if (!Ug(r)) return Y(r) ? r : "-";
6627  var e = (r + "").split(".");
6628  return e[0].replace(/(\d{1,3})(?=(?:\d{3})+(?!\d))/g, "$1,") + (e.length > 1 ? "." + e[1] : "");
6629}
6630function dy(r, e) {
6631  return r = (r || "").toLowerCase().replace(/-(.)/g, function(t, a) {
6632    return a.toUpperCase();
6633  }), e && r && (r = r.charAt(0).toUpperCase() + r.slice(1)), r;
6634}
6635var bi = bh;
6636function _d(r, e, t) {
6637  var a = "{yyyy}-{MM}-{dd} {HH}:{mm}:{ss}";
6638  function n(f) {
6639    return f && ur(f) ? f : "-";
6640  }
6641  function i(f) {
6642    return !!(f != null && !isNaN(f) && isFinite(f));
6643  }
6644  var o = e === "time", s = r instanceof Date;
6645  if (o || s) {
6646    var l = o ? Ke(r) : r;
6647    if (isNaN(+l)) {
6648      if (s) return "-";
6649    } else return Gl(l, a, t);
6650  }
6651  if (e === "ordinal") return Sf(r) ? n(r) : wt(r) && i(r) ? r + "" : "-";
6652  var u = Qr(r);
6653  return i(u) ? py(u) : Sf(r) ? n(r) : typeof r == "boolean" ? r + "" : "-";
6654}
6655var m_ = ["a", "b", "c", "d", "e", "f", "g"], jv = function(r, e) {
6656  return "{" + r + (e ?? "") + "}";
6657};
6658function gy(r, e, t) {
6659  V(e) || (e = [e]);
6660  var a = e.length;
6661  if (!a) return "";
6662  for (var n = e[0].$vars || [], i = 0; i < n.length; i++) {
6663    var o = m_[i];
6664    r = r.replace(jv(o), jv(o, 0));
6665  }
6666  for (var s = 0; s < a; s++) for (var l = 0; l < n.length; l++) {
6667    var u = e[s][n[l]];
6668    r = r.replace(jv(m_[l], s), t ? xe(u) : u);
6669  }
6670  return r;
6671}
6672function Dk(r, e, t) {
6673  return D(e, function(a, n) {
6674    r = r.replace("{" + n + "}", a);
6675  }), r;
6676}
6677function jC(r, e) {
6678  var t = Y(r) ? { color: r, extraCssText: e } : r || {}, a = t.color, n = t.type;
6679  e = t.extraCssText;
6680  var i = t.renderMode || "html";
6681  if (!a) return "";
6682  if (i === "html") return n === "subItem" ? '<span style="display:inline-block;vertical-align:middle;margin-right:8px;margin-left:3px;border-radius:4px;width:4px;height:4px;background-color:' + xe(a) + ";" + (e || "") + '"></span>' : '<span style="display:inline-block;margin-right:4px;border-radius:10px;width:10px;height:10px;background-color:' + xe(a) + ";" + (e || "") + '"></span>';
6683  var o = t.markerId || "markerX";
6684  return { renderMode: i, content: "{" + o + "|}  ", style: n === "subItem" ? { width: 4, height: 4, borderRadius: 2, backgroundColor: a } : { width: 10, height: 10, borderRadius: 5, backgroundColor: a } };
6685}
6686function Mk(r, e, t) {
6687  (r === "week" || r === "month" || r === "quarter" || r === "half-year" || r === "year") && (r = `MM-dd
6688yyyy`);
6689  var a = Ke(e), n = t ? "getUTC" : "get", i = a[n + "FullYear"](), o = a[n + "Month"]() + 1, s = a[n + "Date"](), l = a[n + "Hours"](), u = a[n + "Minutes"](), f = a[n + "Seconds"](), h = a[n + "Milliseconds"]();
6690  return r = r.replace("MM", Le(o, 2)).replace("M", o).replace("yyyy", i).replace("yy", Le(i % 100 + "", 2)).replace("dd", Le(s, 2)).replace("d", s).replace("hh", Le(l, 2)).replace("h", l).replace("mm", Le(u, 2)).replace("m", u).replace("ss", Le(f, 2)).replace("s", f).replace("SSS", Le(h, 3)), r;
6691}
6692function Ik(r) {
6693  return r && r.charAt(0).toUpperCase() + r.substr(1);
6694}
6695function pi(r, e) {
6696  return e = e || "transparent", Y(r) ? r : tt(r) && r.colorStops && (r.colorStops[0] || {}).color || e;
6697}
6698function zf(r, e) {
6699  if (e === "_blank" || e === "blank") {
6700    var t = window.open();
6701    t.opener = null, t.location.href = r;
6702  } else window.open(r, e);
6703}
6704var hf = D, JC = ["left", "right", "top", "bottom", "width", "height"], Kn = [["width", "left", "right"], ["height", "top", "bottom"]];
6705function yy(r, e, t, a, n) {
6706  var i = 0, o = 0;
6707  a == null && (a = 1 / 0), n == null && (n = 1 / 0);
6708  var s = 0;
6709  e.eachChild(function(l, u) {
6710    var f = l.getBoundingRect(), h = e.childAt(u + 1), v = h && h.getBoundingRect(), c, p;
6711    if (r === "horizontal") {
6712      var d = f.width + (v ? -v.x + f.x : 0);
6713      c = i + d, c > a || l.newline ? (i = 0, c = d, o += s + t, s = f.height) : s = Math.max(s, f.height);
6714    } else {
6715      var g = f.height + (v ? -v.y + f.y : 0);
6716      p = o + g, p > n || l.newline ? (i += s + t, o = 0, p = g, s = f.width) : s = Math.max(s, f.width);
6717    }
6718    l.newline || (l.x = i, l.y = o, l.markRedraw(), r === "horizontal" ? i = c + t : o = p + t);
6719  });
6720}
6721var ni = yy;
6722lt(yy, "vertical");
6723lt(yy, "horizontal");
6724function Lk(r, e, t) {
6725  var a = e.width, n = e.height, i = W(r.left, a), o = W(r.top, n), s = W(r.right, a), l = W(r.bottom, n);
6726  return (isNaN(i) || isNaN(parseFloat(r.left))) && (i = 0), (isNaN(s) || isNaN(parseFloat(r.right))) && (s = a), (isNaN(o) || isNaN(parseFloat(r.top))) && (o = 0), (isNaN(l) || isNaN(parseFloat(r.bottom))) && (l = n), t = bi(t || 0), { width: Math.max(s - i - t[1] - t[3], 0), height: Math.max(l - o - t[0] - t[2], 0) };
6727}
6728function Qt(r, e, t) {
6729  t = bi(t || 0);
6730  var a = e.width, n = e.height, i = W(r.left, a), o = W(r.top, n), s = W(r.right, a), l = W(r.bottom, n), u = W(r.width, a), f = W(r.height, n), h = t[2] + t[0], v = t[1] + t[3], c = r.aspect;
6731  switch (isNaN(u) && (u = a - s - v - i), isNaN(f) && (f = n - l - h - o), c != null && (isNaN(u) && isNaN(f) && (c > a / n ? u = a * 0.8 : f = n * 0.8), isNaN(u) && (u = c * f), isNaN(f) && (f = u / c)), isNaN(i) && (i = a - s - u - v), isNaN(o) && (o = n - l - f - h), r.left || r.right) {
6732    case "center":
6733      i = a / 2 - u / 2 - t[3];
6734      break;
6735    case "right":
6736      i = a - u - v;
6737      break;
6738  }
6739  switch (r.top || r.bottom) {
6740    case "middle":
6741    case "center":
6742      o = n / 2 - f / 2 - t[0];
6743      break;
6744    case "bottom":
6745      o = n - f - h;
6746      break;
6747  }
6748  i = i || 0, o = o || 0, isNaN(u) && (u = a - v - i - (s || 0)), isNaN(f) && (f = n - h - o - (l || 0));
6749  var p = new ht(i + t[3], o + t[0], u, f);
6750  return p.margin = t, p;
6751}
6752function Wh(r, e, t, a, n, i) {
6753  var o = !n || !n.hv || n.hv[0], s = !n || !n.hv || n.hv[1], l = n && n.boundingMode || "all";
6754  if (i = i || r, i.x = r.x, i.y = r.y, !o && !s) return false;
6755  var u;
6756  if (l === "raw") u = r.type === "group" ? new ht(0, 0, +e.width || 0, +e.height || 0) : r.getBoundingRect();
6757  else if (u = r.getBoundingRect(), r.needLocalTransform()) {
6758    var f = r.getLocalTransform();
6759    u = u.clone(), u.applyTransform(f);
6760  }
6761  var h = Qt(Q({ width: u.width, height: u.height }, e), t, a), v = o ? h.x - u.x : 0, c = s ? h.y - u.y : 0;
6762  return l === "raw" ? (i.x = v, i.y = c) : (i.x += v, i.y += c), i === r && r.markRedraw(), true;
6763}
6764function Pk(r, e) {
6765  return r[Kn[e][0]] != null || r[Kn[e][1]] != null && r[Kn[e][2]] != null;
6766}
6767function hl(r) {
6768  var e = r.layoutMode || r.constructor.layoutMode;
6769  return tt(e) ? e : e ? { type: e } : null;
6770}
6771function an(r, e, t) {
6772  var a = t && t.ignoreSize;
6773  !V(a) && (a = [a, a]);
6774  var n = o(Kn[0], 0), i = o(Kn[1], 1);
6775  u(Kn[0], r, n), u(Kn[1], r, i);
6776  function o(f, h) {
6777    var v = {}, c = 0, p = {}, d = 0, g = 2;
6778    if (hf(f, function(_) {
6779      p[_] = r[_];
6780    }), hf(f, function(_) {
6781      s(e, _) && (v[_] = p[_] = e[_]), l(v, _) && c++, l(p, _) && d++;
6782    }), a[h]) return l(e, f[1]) ? p[f[2]] = null : l(e, f[2]) && (p[f[1]] = null), p;
6783    if (d === g || !c) return p;
6784    if (c >= g) return v;
6785    for (var y = 0; y < f.length; y++) {
6786      var m = f[y];
6787      if (!s(v, m) && s(r, m)) {
6788        v[m] = r[m];
6789        break;
6790      }
6791    }
6792    return v;
6793  }
6794  function s(f, h) {
6795    return f.hasOwnProperty(h);
6796  }
6797  function l(f, h) {
6798    return f[h] != null && f[h] !== "auto";
6799  }
6800  function u(f, h, v) {
6801    hf(f, function(c) {
6802      h[c] = v[c];
6803    });
6804  }
6805}
6806function Bo(r) {
6807  return QC({}, r);
6808}
6809function QC(r, e) {
6810  return e && r && hf(JC, function(t) {
6811    e.hasOwnProperty(t) && (r[t] = e[t]);
6812  }), r;
6813}
6814var Rk = bt(), gt = function(r) {
6815  N(e, r);
6816  function e(t, a, n) {
6817    var i = r.call(this, t, a, n) || this;
6818    return i.uid = No("ec_cpt_model"), i;
6819  }
6820  return e.prototype.init = function(t, a, n) {
6821    this.mergeDefaultAndTheme(t, n);
6822  }, e.prototype.mergeDefaultAndTheme = function(t, a) {
6823    var n = hl(this), i = n ? Bo(t) : {}, o = a.getTheme();
6824    ut(t, o.get(this.mainType)), ut(t, this.getDefaultOption()), n && an(t, i, n);
6825  }, e.prototype.mergeOption = function(t, a) {
6826    ut(this.option, t, true);
6827    var n = hl(this);
6828    n && an(this.option, t, n);
6829  }, e.prototype.optionUpdated = function(t, a) {
6830  }, e.prototype.getDefaultOption = function() {
6831    var t = this.constructor;
6832    if (!TR(t)) return t.defaultOption;
6833    var a = Rk(this);
6834    if (!a.defaultOption) {
6835      for (var n = [], i = t; i; ) {
6836        var o = i.prototype.defaultOption;
6837        o && n.push(o), i = i.superClass;
6838      }
6839      for (var s = {}, l = n.length - 1; l >= 0; l--) s = ut(s, n[l], true);
6840      a.defaultOption = s;
6841    }
6842    return a.defaultOption;
6843  }, e.prototype.getReferringComponents = function(t, a) {
6844    var n = t + "Index", i = t + "Id";
6845    return kl(this.ecModel, t, { index: this.get(n, true), id: this.get(i, true) }, a);
6846  }, e.prototype.getBoxLayoutParams = function() {
6847    var t = this;
6848    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") };
6849  }, e.prototype.getZLevelKey = function() {
6850    return "";
6851  }, e.prototype.setZLevel = function(t) {
6852    this.option.zlevel = t;
6853  }, e.protoInitialize = function() {
6854    var t = e.prototype;
6855    t.type = "component", t.id = "", t.name = "", t.mainType = "", t.subType = "", t.componentIndex = 0;
6856  }(), e;
6857}(At);
6858rC(gt, At);
6859Ih(gt);
6860gk(gt);
6861yk(gt, Ek);
6862function Ek(r) {
6863  var e = [];
6864  return D(gt.getClassesByMainType(r), function(t) {
6865    e = e.concat(t.dependencies || t.prototype.dependencies || []);
6866  }), e = G(e, function(t) {
6867    return Yr(t).main;
6868  }), r !== "dataset" && vt(e, "dataset") <= 0 && e.unshift("dataset"), e;
6869}
6870var tA = "";
6871typeof navigator < "u" && (tA = navigator.platform || "");
6872var Ni = "rgba(0, 0, 0, 0.2)";
6873const kk = { darkMode: "auto", colorBy: "series", color: ["#5470c6", "#91cc75", "#fac858", "#ee6666", "#73c0de", "#3ba272", "#fc8452", "#9a60b4", "#ea7ccc"], gradientColor: ["#f6efa6", "#d88273", "#bf444c"], aria: { decal: { decals: [{ color: Ni, dashArrayX: [1, 0], dashArrayY: [2, 5], symbolSize: 1, rotation: Math.PI / 6 }, { color: Ni, symbol: "circle", dashArrayX: [[8, 8], [0, 8, 8, 0]], dashArrayY: [6, 0], symbolSize: 0.8 }, { color: Ni, dashArrayX: [1, 0], dashArrayY: [4, 3], rotation: -Math.PI / 4 }, { color: Ni, dashArrayX: [[6, 6], [0, 6, 6, 0]], dashArrayY: [6, 0] }, { color: Ni, dashArrayX: [[1, 0], [1, 6]], dashArrayY: [1, 0, 6, 0], rotation: Math.PI / 4 }, { color: Ni, symbol: "triangle", dashArrayX: [[9, 9], [0, 9, 9, 0]], dashArrayY: [7, 2], symbolSize: 0.75 }] } }, textStyle: { fontFamily: tA.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: false };
6874var eA = Z(["tooltip", "label", "itemName", "itemId", "itemGroupId", "itemChildGroupId", "seriesName"]), dr = "original", Ae = "arrayRows", gr = "objectRows", ra = "keyedColumns", Ka = "typedArray", rA = "unknown", Kr = "column", zo = "row", ve = { Must: 1, Might: 2, Not: 3 }, aA = bt();
6875function Ok(r) {
6876  aA(r).datasetMap = Z();
6877}
6878function nA(r, e, t) {
6879  var a = {}, n = _y(e);
6880  if (!n || !r) return a;
6881  var i = [], o = [], s = e.ecModel, l = aA(s).datasetMap, u = n.uid + "_" + t.seriesLayoutBy, f, h;
6882  r = r.slice(), D(r, function(d, g) {
6883    var y = tt(d) ? d : r[g] = { name: d };
6884    y.type === "ordinal" && f == null && (f = g, h = p(y)), a[y.name] = [];
6885  });
6886  var v = l.get(u) || l.set(u, { categoryWayDim: h, valueWayDim: 0 });
6887  D(r, function(d, g) {
6888    var y = d.name, m = p(d);
6889    if (f == null) {
6890      var _ = v.valueWayDim;
6891      c(a[y], _, m), c(o, _, m), v.valueWayDim += m;
6892    } else if (f === g) c(a[y], 0, m), c(i, 0, m);
6893    else {
6894      var _ = v.categoryWayDim;
6895      c(a[y], _, m), c(o, _, m), v.categoryWayDim += m;
6896    }
6897  });
6898  function c(d, g, y) {
6899    for (var m = 0; m < y; m++) d.push(g + m);
6900  }
6901  function p(d) {
6902    var g = d.dimsDef;
6903    return g ? g.length : 1;
6904  }
6905  return i.length && (a.itemName = i), o.length && (a.seriesName = o), a;
6906}
6907function my(r, e, t) {
6908  var a = {}, n = _y(r);
6909  if (!n) return a;
6910  var i = e.sourceFormat, o = e.dimensionsDefine, s;
6911  (i === gr || i === ra) && D(o, function(f, h) {
6912    (tt(f) ? f.name : f) === "name" && (s = h);
6913  });
6914  var l = function() {
6915    for (var f = {}, h = {}, v = [], c = 0, p = Math.min(5, t); c < p; c++) {
6916      var d = oA(e.data, i, e.seriesLayoutBy, o, e.startIndex, c);
6917      v.push(d);
6918      var g = d === ve.Not;
6919      if (g && f.v == null && c !== s && (f.v = c), (f.n == null || f.n === f.v || !g && v[f.n] === ve.Not) && (f.n = c), y(f) && v[f.n] !== ve.Not) return f;
6920      g || (d === ve.Might && h.v == null && c !== s && (h.v = c), (h.n == null || h.n === h.v) && (h.n = c));
6921    }
6922    function y(m) {
6923      return m.v != null && m.n != null;
6924    }
6925    return y(f) ? f : y(h) ? h : null;
6926  }();
6927  if (l) {
6928    a.value = [l.v];
6929    var u = s ?? l.n;
6930    a.itemName = [u], a.seriesName = [u];
6931  }
6932  return a;
6933}
6934function _y(r) {
6935  var e = r.get("data", true);
6936  if (!e) return kl(r.ecModel, "dataset", { index: r.get("datasetIndex", true), id: r.get("datasetId", true) }, Jt).models[0];
6937}
6938function Nk(r) {
6939  return !r.get("transform", true) && !r.get("fromTransformResult", true) ? [] : kl(r.ecModel, "dataset", { index: r.get("fromDatasetIndex", true), id: r.get("fromDatasetId", true) }, Jt).models;
6940}
6941function iA(r, e) {
6942  return oA(r.data, r.sourceFormat, r.seriesLayoutBy, r.dimensionsDefine, r.startIndex, e);
6943}
6944function oA(r, e, t, a, n, i) {
6945  var o, s = 5;
6946  if (ke(r)) return ve.Not;
6947  var l, u;
6948  if (a) {
6949    var f = a[i];
6950    tt(f) ? (l = f.name, u = f.type) : Y(f) && (l = f);
6951  }
6952  if (u != null) return u === "ordinal" ? ve.Must : ve.Not;
6953  if (e === Ae) {
6954    var h = r;
6955    if (t === zo) {
6956      for (var v = h[i], c = 0; c < (v || []).length && c < s;
6956 c++) if ((o = S(v[n + c])) != null) return o;
6957    } else for (var c = 0; c < h.length && c < s; c++) {
6958      var p = h[n + c];
6959      if (p && (o = S(p[i])) != null) return o;
6960    }
6961  } else if (e === gr) {
6962    var d = r;
6963    if (!l) return ve.Not;
6964    for (var c = 0; c < d.length && c < s; c++) {
6965      var g = d[c];
6966      if (g && (o = S(g[l])) != null) return o;
6967    }
6968  } else if (e === ra) {
6969    var y = r;
6970    if (!l) return ve.Not;
6971    var v = y[l];
6972    if (!v || ke(v)) return ve.Not;
6973    for (var c = 0; c < v.length && c < s; c++) if ((o = S(v[c])) != null) return o;
6974  } else if (e === dr) for (var m = r, c = 0; c < m.length && c < s; c++) {
6975    var g = m[c], _ = Mo(g);
6976    if (!V(_)) return ve.Not;
6977    if ((o = S(_[i])) != null) return o;
6978  }
6979  function S(b) {
6980    var x = Y(b);
6981    if (b != null && Number.isFinite(Number(b)) && b !== "") return x ? ve.Might : ve.Not;
6982    if (x && b !== "-") return ve.Must;
6983  }
6984  return ve.Not;
6985}
6986var Sd = Z();
6987function Bk(r, e) {
6988  we(Sd.get(r) == null && e), Sd.set(r, e);
6989}
6990function zk(r, e, t) {
6991  var a = Sd.get(e);
6992  if (!a) return t;
6993  var n = a(r);
6994  return n ? t.concat(n) : t;
6995}
6996var __ = bt(), Vk = bt(), Sy = function() {
6997  function r() {
6998  }
6999  return r.prototype.getColorFromPalette = function(e, t, a) {
7000    var n = Rt(this.get("color", true)), i = this.get("colorLayer", true);
7001    return sA(this, __, n, i, e, t, a);
7002  }, r.prototype.clearColorPalette = function() {
7003    Fk(this, __);
7004  }, r;
7005}();
7006function xd(r, e, t, a) {
7007  var n = Rt(r.get(["aria", "decal", "decals"]));
7008  return sA(r, Vk, n, null, e, t, a);
7009}
7010function Gk(r, e) {
7011  for (var t = r.length, a = 0; a < t; a++) if (r[a].length > e) return r[a];
7012  return r[t - 1];
7013}
7014function sA(r, e, t, a, n, i, o) {
7015  i = i || r;
7016  var s = e(i), l = s.paletteIdx || 0, u = s.paletteNameMap = s.paletteNameMap || {};
7017  if (u.hasOwnProperty(n)) return u[n];
7018  var f = o == null || !a ? t : Gk(a, o);
7019  if (f = f || t, !(!f || !f.length)) {
7020    var h = f[l];
7021    return n && (u[n] = h), s.paletteIdx = (l + 1) % f.length, h;
7022  }
7023}
7024function Fk(r, e) {
7025  e(r).paletteIdx = 0, e(r).paletteNameMap = {};
7026}
7027var yu, es, S_, x_ = "\0_ec_inner", Hk = 1, xy = function(r) {
7028  N(e, r);
7029  function e() {
7030    return r !== null && r.apply(this, arguments) || this;
7031  }
7032  return e.prototype.init = function(t, a, n, i, o, s) {
7033    i = i || {}, this.option = null, this._theme = new At(i), this._locale = new At(o), this._optionManager = s;
7034  }, e.prototype.setOption = function(t, a, n) {
7035    var i = T_(a);
7036    this._optionManager.setOption(t, n, i), this._resetOption(null, i);
7037  }, e.prototype.resetOption = function(t, a) {
7038    return this._resetOption(t, T_(a));
7039  }, e.prototype._resetOption = function(t, a) {
7040    var n = false, i = this._optionManager;
7041    if (!t || t === "recreate") {
7042      var o = i.mountOption(t === "recreate");
7043      !this.option || t === "recreate" ? S_(this, o) : (this.restoreData(), this._mergeOption(o, a)), n = true;
7044    }
7045    if ((t === "timeline" || t === "media") && this.restoreData(), !t || t === "recreate" || t === "timeline") {
7046      var s = i.getTimelineOption(this);
7047      s && (n = true, this._mergeOption(s, a));
7048    }
7049    if (!t || t === "recreate" || t === "media") {
7050      var l = i.getMediaOption(this);
7051      l.length && D(l, function(u) {
7052        n = true, this._mergeOption(u, a);
7053      }, this);
7054    }
7055    return n;
7056  }, e.prototype.mergeOption = function(t) {
7057    this._mergeOption(t, null);
7058  }, e.prototype._mergeOption = function(t, a) {
7059    var n = this.option, i = this._componentsMap, o = this._componentsCount, s = [], l = Z(), u = a && a.replaceMergeMainTypeMap;
7060    Ok(this), D(t, function(h, v) {
7061      h != null && (gt.hasClass(v) ? v && (s.push(v), l.set(v, true)) : n[v] = n[v] == null ? rt(h) : ut(n[v], h, true));
7062    }), u && u.each(function(h, v) {
7063      gt.hasClass(v) && !l.get(v) && (s.push(v), l.set(v, true));
7064    }), gt.topologicalTravel(s, gt.getAllClassMainTypes(), f, this);
7065    function f(h) {
7066      var v = zk(this, h, Rt(t[h])), c = i.get(h), p = c ? u && u.get(h) ? "replaceMerge" : "normalMerge" : "replaceAll", d = jT(c, v, p);
7067      dR(d, h, gt), n[h] = null, i.set(h, null), o.set(h, 0);
7068      var g = [], y = [], m = 0, _;
7069      D(d, function(S, b) {
7070        var x = S.existing, w = S.newOption;
7071        if (!w) x && (x.mergeOption({}, this), x.optionUpdated({}, false));
7072        else {
7073          var T = h === "series", C = gt.getClass(h, S.keyInfo.subType, !T);
7074          if (!C) return;
7075          if (h === "tooltip") {
7076            if (_) return;
7077            _ = true;
7078          }
7079          if (x && x.constructor === C) x.name = S.keyInfo.name, x.mergeOption(w, this), x.optionUpdated(w, false);
7080          else {
7081            var A = z({ componentIndex: b }, S.keyInfo);
7082            x = new C(w, this, this, A), z(x, A), S.brandNew && (x.__requireNewView = true), x.init(w, this, this), x.optionUpdated(null, true);
7083          }
7084        }
7085        x ? (g.push(x.option), y.push(x), m++) : (g.push(void 0), y.push(void 0));
7086      }
7086, this), n[h] = g, i.set(h, y), o.set(h, m), h === "series" && yu(this);
7087    }
7088    this._seriesIndices || yu(this);
7089  }, e.prototype.getOption = function() {
7090    var t = rt(this.option);
7091    return D(t, function(a, n) {
7092      if (gt.hasClass(n)) {
7093        for (var i = Rt(a), o = i.length, s = false, l = o - 1; l >= 0; l--) i[l] && !ol(i[l]) ? s = true : (i[l] = null, !s && o--);
7094        i.length = o, t[n] = i;
7095      }
7096    }), delete t[x_], t;
7097  }, e.prototype.getTheme = function() {
7098    return this._theme;
7099  }, e.prototype.getLocaleModel = function() {
7100    return this._locale;
7101  }, e.prototype.setUpdatePayload = function(t) {
7102    this._payload = t;
7103  }, e.prototype.getUpdatePayload = function() {
7104    return this._payload;
7105  }, e.prototype.getComponent = function(t, a) {
7106    var n = this._componentsMap.get(t);
7107    if (n) {
7108      var i = n[a || 0];
7109      if (i) return i;
7110      if (a == null) {
7111        for (var o = 0; o < n.length; o++) if (n[o]) return n[o];
7112      }
7113    }
7114  }, e.prototype.queryComponents = function(t) {
7115    var a = t.mainType;
7116    if (!a) return [];
7117    var n = t.index, i = t.id, o = t.name, s = this._componentsMap.get(a);
7118    if (!s || !s.length) return [];
7119    var l;
7120    return n != null ? (l = [], D(Rt(n), function(u) {
7121      s[u] && l.push(s[u]);
7122    })) : i != null ? l = b_("id", i, s) : o != null ? l = b_("name", o, s) : l = Ct(s, function(u) {
7123      return !!u;
7124    }), w_(l, t);
7125  }, e.prototype.findComponents = function(t) {
7126    var a = t.query, n = t.mainType, i = s(a), o = i ? this.queryComponents(i) : Ct(this._componentsMap.get(n), function(u) {
7127      return !!u;
7128    });
7129    return l(w_(o, t));
7130    function s(u) {
7131      var f = n + "Index", h = n + "Id", v = n + "Name";
7132      return u && (u[f] != null || u[h] != null || u[v] != null) ? { mainType: n, index: u[f], id: u[h], name: u[v] } : null;
7133    }
7134    function l(u) {
7135      return t.filter ? Ct(u, t.filter) : u;
7136    }
7137  }, e.prototype.eachComponent = function(t, a, n) {
7138    var i = this._componentsMap;
7139    if (j(t)) {
7140      var o = a, s = t;
7141      i.each(function(h, v) {
7142        for (var c = 0; h && c < h.length; c++) {
7143          var p = h[c];
7144          p && s.call(o, v, p, p.componentIndex);
7145        }
7146      });
7147    } else for (var l = Y(t) ? i.get(t) : tt(t) ? this.findComponents(t) : null, u = 0; l && u < l.length; u++) {
7148      var f = l[u];
7149      f && a.call(n, f, f.componentIndex);
7150    }
7151  }, e.prototype.getSeriesByName = function(t) {
7152    var a = te(t, null);
7153    return Ct(this._componentsMap.get("series"), function(n) {
7154      return !!n && a != null && n.name === a;
7155    });
7156  }, e.prototype.getSeriesByIndex = function(t) {
7157    return this._componentsMap.get("series")[t];
7158  }, e.prototype.getSeriesByType = function(t) {
7159    return Ct(this._componentsMap.get("series"), function(a) {
7160      return !!a && a.subType === t;
7161    });
7162  }, e.prototype.getSeries = function() {
7163    return Ct(this._componentsMap.get("series"), function(t) {
7164      return !!t;
7165    });
7166  }, e.prototype.getSeriesCount = function() {
7167    return this._componentsCount.get("series");
7168  }, e.prototype.eachSeries = function(t, a) {
7169    es(this), D(this._seriesIndices, function(n) {
7170      var i = this._componentsMap.get("series")[n];
7171      t.call(a, i, n);
7172    }, this);
7173  }, e.prototype.eachRawSeries = function(t, a) {
7174    D(this._componentsMap.get("series"), function(n) {
7175      n && t.call(a, n, n.componentIndex);
7176    });
7177  }, e.prototype.eachSeriesByType = function(t, a, n) {
7178    es(this), D(this._seriesIndices, function(i) {
7179      var o = this._componentsMap.get("series")[i];
7180      o.subType === t && a.call(n, o, i);
7181    }, this);
7182  }, e.prototype.eachRawSeriesByType = function(t, a, n) {
7183    return D(this.getSeriesByType(t), a, n);
7184  }, e.prototype.isSeriesFiltered = function(t) {
7185    return es(this), this._seriesIndicesMap.get(t.componentIndex) == null;
7186  }, e.prototype.getCurrentSeriesIndices = function() {
7187    return (this._seriesIndices || []).slice();
7188  }, e.prototype.filterSeries = function(t, a) {
7189    es(this);
7190    var n = [];
7191    D(this._seriesIndices, function(i) {
7192      var o = this._componentsMap.get("series")[i];
7193      t.call(a, o, i) && n.push(i);
7194    }, this), this._seriesIndices = n, this._seriesIndicesMap = Z(n);
7195  }, e.prototype.restoreData = function(t) {
7196    yu(this);
7197    var a = this._componentsMap, n = [];
7198    a.each(function(i, o) {
7199      gt.hasClass(o) && n.push(o);
7200    }), gt.topologicalTravel(n, gt.getAllClassMainTypes(), function(i) {
7201      D(a.get(i), function(o) {
7202        o && (i !== "series" || !Wk(o, t)) && o.restoreData();
7203      });
7204    });
7205  }
7205, e.internalField = function() {
7206    yu = function(t) {
7207      var a = t._seriesIndices = [];
7208      D(t._componentsMap.get("series"), function(n) {
7209        n && a.push(n.componentIndex);
7210      }), t._seriesIndicesMap = Z(a);
7211    }, es = function(t) {
7212    }, S_ = function(t, a) {
7213      t.option = {}, t.option[x_] = Hk, t._componentsMap = Z({ series: [] }), t._componentsCount = Z();
7214      var n = a.aria;
7215      tt(n) && n.enabled == null && (n.enabled = true), Uk(a, t._theme.option), ut(a, kk, false), t._mergeOption(a, null);
7216    };
7217  }(), e;
7218}(At);
7219function Wk(r, e) {
7220  if (e) {
7221    var t = e.seriesIndex, a = e.seriesId, n = e.seriesName;
7222    return t != null && r.componentIndex !== t || a != null && r.id !== a || n != null && r.name !== n;
7223  }
7224}
7225function Uk(r, e) {
7226  var t = r.color && !r.colorLayer;
7227  D(e, function(a, n) {
7228    n === "colorLayer" && t || gt.hasClass(n) || (typeof a == "object" ? r[n] = r[n] ? ut(r[n], a, false) : rt(a) : r[n] == null && (r[n] = a));
7229  });
7230}
7231function b_(r, e, t) {
7232  if (V(e)) {
7233    var a = Z();
7234    return D(e, function(i) {
7235      if (i != null) {
7236        var o = te(i, null);
7237        o != null && a.set(i, true);
7238      }
7239    }), Ct(t, function(i) {
7240      return i && a.get(i[r]);
7241    });
7242  } else {
7243    var n = te(e, null);
7244    return Ct(t, function(i) {
7245      return i && n != null && i[r] === n;
7246    });
7247  }
7248}
7249function w_(r, e) {
7250  return e.hasOwnProperty("subType") ? Ct(r, function(t) {
7251    return t && t.subType === e.subType;
7252  }) : r;
7253}
7254function T_(r) {
7255  var e = Z();
7256  return r && D(Rt(r.replaceMerge), function(t) {
7257    e.set(t, true);
7258  }), { replaceMergeMainTypeMap: e };
7259}
7260Xt(xy, Sy);
7261var Yk = ["getDom", "getZr", "getWidth", "getHeight", "getDevicePixelRatio", "dispatchAction", "isSSR", "isDisposed", "on", "off", "getDataURL", "getConnectedDataURL", "getOption", "getId", "updateLabelLayout"], lA = /* @__PURE__ */ function() {
7262  function r(e) {
7263    D(Yk, function(t) {
7264      this[t] = $(e[t], e);
7265    }, this);
7266  }
7267  return r;
7268}(), Jv = {}, Vo = function() {
7269  function r() {
7270    this._coordinateSystems = [];
7271  }
7272  return r.prototype.create = function(e, t) {
7273    var a = [];
7274    D(Jv, function(n, i) {
7275      var o = n.create(e, t);
7276      a = a.concat(o || []);
7277    }), this._coordinateSystems = a;
7278  }, r.prototype.update = function(e, t) {
7279    D(this._coordinateSystems, function(a) {
7280      a.update && a.update(e, t);
7281    });
7282  }, r.prototype.getCoordinateSystems = function() {
7283    return this._coordinateSystems.slice();
7284  }, r.register = function(e, t) {
7285    Jv[e] = t;
7286  }, r.get = function(e) {
7287    return Jv[e];
7288  }, r;
7289}(), $k = /^(min|max)?(.+)$/, Xk = function() {
7290  function r(e) {
7291    this._timelineOptions = [], this._mediaList = [], this._currentMediaIndices = [], this._api = e;
7292  }
7293  return r.prototype.setOption = function(e, t, a) {
7294    e && (D(Rt(e.series), function(o) {
7295      o && o.data && ke(o.data) && Qs(o.data);
7296    }), D(Rt(e.dataset), function(o) {
7297      o && o.source && ke(o.source) && Qs(o.source);
7298    })), e = rt(e);
7299    var n = this._optionBackup, i = Zk(e, t, !n);
7300    this._newBaseOption = i.baseOption, n ? (i.timelineOptions.length && (n.timelineOptions = i.timelineOptions), i.mediaList.length && (n.mediaList = i.mediaList), i.mediaDefault && (n.mediaDefault = i.mediaDefault)) : this._optionBackup = i;
7301  }, r.prototype.mountOption = function(e) {
7302    var t = this._optionBackup;
7303    return this._timelineOptions = t.timelineOptions, this._mediaList = t.mediaList, this._mediaDefault = t.mediaDefault, this._currentMediaIndices = [], rt(e ? t.baseOption : this._newBaseOption);
7304  }, r.prototype.getTimelineOption = function(e) {
7305    var t, a = this._timelineOptions;
7306    if (a.length) {
7307      var n = e.getComponent("timeline");
7308      n && (t = rt(a[n.getCurrentIndex()]));
7309    }
7310    return t;
7311  }, r.prototype.getMediaOption = function(e) {
7312    var t = this._api.getWidth(), a = this._api.getHeight(), n = this._mediaList, i = this._mediaDefault, o = [], s = [];
7313    if (!n.length && !i) return s;
7314    for (var l = 0, u = n.length; l < u; l++) qk(n[l].query, t, a) && o.push(l);
7315    return !o.length && i && (o = [-1]), o.length && !jk(o, this._currentMediaIndices) && (s = G(o, function(f) {
7316      return rt(f === -1 ? i.option : n[f].option);
7317    })), this._currentMediaIndices = o, s;
7318  }, r;
7319}();
7320function Zk(r, e, t) {
7321  var a = [], n, i, o = r.baseOption, s = r.timeline, l = r.options, u = r.media, f = !!r.media, h = !!(l || s || o && o.timeline);
7322  o ? (i = o, i.timeline || (i.timeline = s)) : ((h || f) && (r.options = r.media = null), i = r), f && V(u) && D(u, function(c) {
7323    c && c.option && (c.query ? a.push(c) : n || (n = c));
7324  }), v(i), D(l, function(c) {
7325    return v(c);
7326  }), D(a, function(c) {
7327    return v(c.option);
7328  });
7329  function v(c) {
7330    D(e, function(p) {
7331      p(c, t);
7332    });
7333  }
7334  return { baseOption: i, timelineOptions: l || [], mediaDefault: n, mediaList: a };
7335}
7336function qk(r, e, t) {
7337  var a = { width: e, height: t, aspectratio: e / t }, n = true;
7338  return D(r, function(i, o) {
7339    var s = o.match($k);
7340    if (!(!s || !s[1] || !s[2])) {
7341      var l = s[1], u = s[2].toLowerCase();
7342      Kk(a[u], i, l) || (n = false);
7343    }
7344  }), n;
7345}
7346function Kk(r, e, t) {
7347  return t === "min" ? r >= e : t === "max" ? r <= e : r === e;
7348}
7349function jk(r, e) {
7350  return r.join(",") === e.join(",");
7351}
7352var mr = D, vl = tt, C_ = ["areaStyle", "lineStyle", "nodeStyle", "linkStyle", "chordStyle", "label", "labelLine"];
7353function Qv(r) {
7354  var e = r && r.itemStyle;
7355  if (e) for (var t = 0, a = C_.length; t < a; t++) {
7356    var n = C_[t], i = e.normal, o = e.emphasis;
7357    i && i[n] && (r[n] = r[n] || {}, r[n].normal ? ut(r[n].normal, i[n]) : r[n].normal = i[n], i[n] = null), o && o[n] && (r[n] = r[n] || {}, r[n].emphasis ? ut(r[n].emphasis, o[n]) : r[n].emphasis = o[n], o[n] = null);
7358  }
7359}
7360function Se(r, e, t) {
7361  if (r && r[e] && (r[e].normal || r[e].emphasis)) {
7362    var a = r[e].normal, n = r[e].emphasis;
7363    a && (t ? (r[e].normal = r[e].emphasis = null, Q(r[e], a)) : r[e] = a), n && (r.emphasis = r.emphasis || {}, r.emphasis[e] = n, n.focus && (r.emphasis.focus = n.focus), n.blurScope && (r.emphasis.blurScope = n.blurScope));
7364  }
7365}
7366function Ms(r) {
7367  Se(r, "itemStyle"), Se(r, "lineStyle"), Se(r, "areaStyle"), Se(r, "label"), Se(r, "labelLine"), Se(r, "upperLabel"), Se(r, "edgeLabel");
7368}
7369function jt(r, e) {
7370  var t = vl(r) && r[e], a = vl(t) && t.textStyle;
7371  if (a) for (var n = 0, i = P0.length; n < i; n++) {
7372    var o = P0[n];
7373    a.hasOwnProperty(o) && (t[o] = a[o]);
7374  }
7375}
7376function ar(r) {
7377  r && (Ms(r), jt(r, "label"), r.emphasis && jt(r.emphasis, "label"));
7378}
7379function Jk(r) {
7380  if (vl(r)) {
7381    Qv(r), Ms(r), jt(r, "label"), jt(r, "upperLabel"), jt(r, "edgeLabel"), r.emphasis && (jt(r.emphasis, "label"), jt(r.emphasis, "upperLabel"), jt(r.emphasis, "edgeLabel"));
7382    var e = r.markPoint;
7383    e && (Qv(e), ar(e));
7384    var t = r.markLine;
7385    t && (Qv(t), ar(t));
7386    var a = r.markArea;
7387    a && ar(a);
7388    var n = r.data;
7389    if (r.type === "graph") {
7390      n = n || r.nodes;
7391      var i = r.links || r.edges;
7392      if (i && !ke(i)) for (var o = 0; o < i.length; o++) ar(i[o]);
7393      D(r.categories, function(u) {
7394        Ms(u);
7395      });
7396    }
7397    if (n && !ke(n)) for (var o = 0; o < n.length; o++) ar(n[o]);
7398    if (e = r.markPoint, e && e.data) for (var s = e.data, o = 0; o < s.length; o++) ar(s[o]);
7399    if (t = r.markLine, t && t.data) for (var l = t.data, o = 0; o < l.length; o++) V(l[o]) ? (ar(l[o][0]), ar(l[o][1])) : ar(l[o]);
7400    r.type === "gauge" ? (jt(r, "axisLabel"), jt(r, "title"), jt(r, "detail")) : r.type === "treemap" ? (Se(r.breadcrumb, "itemStyle"), D(r.levels, function(u) {
7401      Ms(u);
7402    })) : r.type === "tree" && Ms(r.leaves);
7403  }
7404}
7405function oa(r) {
7406  return V(r) ? r : r ? [r] : [];
7407}
7408function A_(r) {
7409  return (V(r) ? r[0] : r) || {};
7410}
7411function Qk(r, e) {
7412  mr(oa(r.series), function(a) {
7413    vl(a) && Jk(a);
7414  });
7415  var t = ["xAxis", "yAxis", "radiusAxis", "angleAxis", "singleAxis", "parallelAxis", "radar"];
7416  e && t.push("valueAxis", "categoryAxis", "logAxis", "timeAxis"), mr(t, function(a) {
7417    mr(oa(r[a]), function(n) {
7418      n && (jt(n, "axisLabel"), jt(n.axisPointer, "label"));
7419    });
7420  }), mr(oa(r.parallel), function(a) {
7421    var n = a && a.parallelAxisDefault;
7422    jt(n, "axisLabel"), jt(n && n.axisPointer, "label");
7423  }), mr(oa(r.calendar), function(a) {
7424    Se(a, "itemStyle"), jt(a, "dayLabel"), jt(a, "monthLabel"), jt(a, "yearLabel");
7425  }), mr(oa(r.radar), function(a) {
7426    jt(a, "name"), a.name && a.axisName == null && (a.axisName = a.name, delete a.name), a.nameGap != null && a.axisNameGap == null && (a.axisNameGap = a.nameGap, delete a.nameGap);
7427  }), mr(oa(r.geo), function(a) {
7428    vl(a) && (ar(a), mr(oa(a.regions), function(n) {
7429      ar(n);
7430    }));
7431  }), mr(oa(r.timeline), function(a) {
7432    ar(a), Se(a, "label"), Se(a, "itemStyle"), Se(a, "controlStyle", true);
7433    var n = a.data;
7434    V(n) && D(n, function(i) {
7435      tt(i) && (Se(i, "label"), Se(i, "itemStyle"));
7436    });
7437  }), mr(oa(r.toolbox), function(a) {
7438    Se(a, "iconStyle"), mr(a.feature, function(n) {
7439      Se(n, "iconStyle");
7440    });
7441  }), jt(A_(r.axisPointer), "label"), jt(A_(r.tooltip).axisPointer, "label");
7442}
7443function tO(r, e) {
7444  for (var t = e.split(","), a = r, n = 0; n < t.length && (a = a && a[t[n]], a != null); n++) ;
7445  return a;
7446}
7447function eO(r, e, t, a) {
7448  for (var n = e.split(","), i = r, o, s = 0; s < n.length - 1; s++) o = n[s], i[o] == null && (i[o] = {}), i = i[o];
7449  i[n[s]] == null && (i[n[s]] = t);
7450}
7451function D_(r) {
7452  r && D(rO, function(e) {
7453    e[0] in r && !(e[1] in r) && (r[e[1]] = r[e[0]]);
7454  });
7455}
7456var rO = [["x", "left"], ["y", "top"], ["x2", "right"], ["y2", "bottom"]], aO = ["grid", "geo", "parallel", "legend", "toolbox", "title", "visualMap", "dataZoom", "timeline"], tc = [["borderRadius", "barBorderRadius"], ["borderColor", "barBorderColor"], ["borderWidth", "barBorderWidth"]];
7457function rs(r) {
7458  var e = r && r.itemStyle;
7459  if (e) for (var t = 0; t < tc.length; t++) {
7460    var a = tc[t][1], n = tc[t][0];
7461    e[a] != null && (e[n] = e[a]);
7462  }
7463}
7464function M_(r) {
7465  r && r.alignTo === "edge" && r.margin != null && r.edgeDistance == null && (r.edgeDistance = r.margin);
7466}
7467function I_(r) {
7468  r && r.downplay && !r.blur && (r.blur = r.downplay);
7469}
7470function nO(r) {
7471  r && r.focusNodeAdjacency != null && (r.emphasis = r.emphasis || {}, r.emphasis.focus == null && (r.emphasis.focus = "adjacency"));
7472}
7473function uA(r, e) {
7474  if (r) for (var t = 0; t < r.length; t++) e(r[t]), r[t] && uA(r[t].children, e);
7475}
7476function fA(r, e) {
7477  Qk(r, e), r.series = Rt(r.series), D(r.series, function(t) {
7478    if (tt(t)) {
7479      var a = t.type;
7480      if (a === "line") t.clipOverflow != null && (t.clip = t.clipOverflow);
7481      else if (a === "pie" || a === "gauge") {
7482        t.clockWise != null && (t.clockwise = t.clockWise), M_(t.label);
7483        var n = t.data;
7484        if (n && !ke(n)) for (var i = 0; i < n.length; i++) M_(n[i]);
7485        t.hoverOffset != null && (t.emphasis = t.emphasis || {}, (t.emphasis.scaleSize = null) && (t.emphasis.scaleSize = t.hoverOffset));
7486      } else if (a === "gauge") {
7487        var o = tO(t, "pointer.color");
7488        o != null && eO(t, "itemStyle.color", o);
7489      } else if (a === "bar") {
7490        rs(t), rs(t.backgroundStyle), rs(t.emphasis);
7491        var n = t.data;
7492        if (n && !ke(n)) for (var i = 0; i < n.length; i++) typeof n[i] == "object" && (rs(n[i]), rs(n[i] && n[i].emphasis));
7493      } else if (a === "sunburst") {
7494        var s = t.highlightPolicy;
7495        s && (t.emphasis = t.emphasis || {}
7495, t.emphasis.focus || (t.emphasis.focus = s)), I_(t), uA(t.data, I_);
7496      } else a === "graph" || a === "sankey" ? nO(t) : a === "map" && (t.mapType && !t.map && (t.map = t.mapType), t.mapLocation && Q(t, t.mapLocation));
7497      t.hoverAnimation != null && (t.emphasis = t.emphasis || {}, t.emphasis && t.emphasis.scale == null && (t.emphasis.scale = t.hoverAnimation)), D_(t);
7498    }
7499  }), r.dataRange && (r.visualMap = r.dataRange), D(aO, function(t) {
7500    var a = r[t];
7501    a && (V(a) || (a = [a]), D(a, function(n) {
7502      D_(n);
7503    }));
7504  });
7505}
7506function iO(r) {
7507  var e = Z();
7508  r.eachSeries(function(t) {
7509    var a = t.get("stack");
7510    if (a) {
7511      var n = e.get(a) || e.set(a, []), i = t.getData(), o = { stackResultDimension: i.getCalculationInfo("stackResultDimension"), stackedOverDimension: i.getCalculationInfo("stackedOverDimension"), stackedDimension: i.getCalculationInfo("stackedDimension"), stackedByDimension: i.getCalculationInfo("stackedByDimension"), isStackedByIndex: i.getCalculationInfo("isStackedByIndex"), data: i, seriesModel: t };
7512      if (!o.stackedDimension || !(o.isStackedByIndex || o.stackedByDimension)) return;
7513      n.length && i.setCalculationInfo("stackedOnSeries", n[n.length - 1].seriesModel), n.push(o);
7514    }
7515  }), e.each(oO);
7516}
7517function oO(r) {
7518  D(r, function(e, t) {
7519    var a = [], n = [NaN, NaN], i = [e.stackResultDimension, e.stackedOverDimension], o = e.data, s = e.isStackedByIndex, l = e.seriesModel.get("stackStrategy") || "samesign";
7520    o.modify(i, function(u, f, h) {
7521      var v = o.get(e.stackedDimension, h);
7522      if (isNaN(v)) return n;
7523      var c, p;
7524      s ? p = o.getRawIndex(h) : c = o.get(e.stackedByDimension, h);
7525      for (var d = NaN, g = t - 1; g >= 0; g--) {
7526        var y = r[g];
7527        if (s || (p = y.data.rawIndexOf(y.stackedByDimension, c)), p >= 0) {
7528          var m = y.data.getByRawIndex(y.stackResultDimension, p);
7529          if (l === "all" || l === "positive" && m > 0 || l === "negative" && m < 0 || l === "samesign" && v >= 0 && m > 0 || l === "samesign" && v <= 0 && m < 0) {
7530            v = iR(v, m), d = m;
7531            break;
7532          }
7533        }
7534      }
7535      return a[0] = v, a[1] = d, a;
7536    });
7537  });
7538}
7539var Uh = /* @__PURE__ */ function() {
7540  function r(e) {
7541    this.data = e.data || (e.sourceFormat === ra ? {} : []), this.sourceFormat = e.sourceFormat || rA, this.seriesLayoutBy = e.seriesLayoutBy || Kr, this.startIndex = e.startIndex || 0, this.dimensionsDetectedCount = e.dimensionsDetectedCount, this.metaRawOption = e.metaRawOption;
7542    var t = this.dimensionsDefine = e.dimensionsDefine;
7543    if (t) for (var a = 0; a < t.length; a++) {
7544      var n = t[a];
7545      n.type == null && iA(this, a) === ve.Must && (n.type = "ordinal");
7546    }
7547  }
7548  return r;
7549}();
7550function by(r) {
7551  return r instanceof Uh;
7552}
7553function bd(r, e, t) {
7554  t = t || hA(r);
7555  var a = e.seriesLayoutBy, n = lO(r, t, a, e.sourceHeader, e.dimensions), i = new Uh({ data: r, sourceFormat: t, seriesLayoutBy: a, dimensionsDefine: n.dimensionsDefine, startIndex: n.startIndex, dimensionsDetectedCount: n.dimensionsDetectedCount, metaRawOption: rt(e) });
7556  return i;
7557}
7558function wy(r) {
7559  return new Uh({ data: r, sourceFormat: ke(r) ? Ka : dr });
7560}
7561function sO(r) {
7562  return new Uh({ data: r.data, sourceFormat: r.sourceFormat, seriesLayoutBy: r.seriesLayoutBy, dimensionsDefine: rt(r.dimensionsDefine), startIndex: r.startIndex, dimensionsDetectedCount: r.dimensionsDetectedCount });
7563}
7564function hA(r) {
7565  var e = rA;
7566  if (ke(r)) e = Ka;
7567  else if (V(r)) {
7568    r.length === 0 && (e = Ae);
7569    for (var t = 0, a = r.length; t < a; t++) {
7570      var n = r[t];
7571      if (n != null) {
7572        if (V(n) || ke(n)) {
7573          e = Ae;
7574          break;
7575        } else if (tt(n)) {
7576          e = gr;
7577          break;
7578        }
7579      }
7580    }
7581  } else if (tt(r)) {
7582    for (var i in r) if (X(r, i) && ce(r[i])) {
7583      e = ra;
7584      break;
7585    }
7586  }
7587  return e;
7588}
7589function lO(r, e, t, a, n) {
7590  var i, o;
7591  if (!r) return { dimensionsDefine: L_(n), startIndex: o, dimensionsDetectedCount: i };
7592  if (e === Ae) {
7593    var s = r;
7594    a === "auto" || a == null ? P_(function(u) {
7595      u != null && u !== "-" && (Y(u) ? o == null && (o = 1) : o = 0);
7596    }, t, s, 10) : o = wt(a) ? a : a ? 1 : 0, !n && o === 1 && (n = [], P_(function(u, f) {
7597      n[f] = u != null ? u + "" : "";
7598    }, t, s, 1 / 0)), i = n ? n.length : t === zo ? s.length : s[0] ? s[0].length : null;
7599  } else if (e === gr) n || (n = uO(r));
7600  else if (e === ra) n || (n = [], D(r, function(u, f) {
7601    n.push(f);
7602  }));
7603  else if (e === dr) {
7604    var l = Mo(r[0]);
7605    i = V(l) && l.length || 1;
7606  }
7607  return { startIndex: o, dimensionsDefine: L_(n), dimensionsDetectedCount: i };
7608}
7609function uO(r) {
7610  for (var e = 0, t; e < r.length && !(t = r[e++]); ) ;
7611  if (t) return _t(t);
7612}
7613function L_(r) {
7614  if (r) {
7615    var e = Z();
7616    return G(r, function(t, a) {
7617      t = tt(t) ? t : { name: t };
7618      var n = { name: t.name, displayName: t.displayName, type: t.type };
7619      if (n.name == null) return n;
7620      n.name += "", n.displayName == null && (n.displayName = n.name);
7621      var i = e.get(n.name);
7622      return i ? n.name += "-" + i.count++ : e.set(n.name, { count: 1 }), n;
7623    });
7624  }
7625}
7626function P_(r, e, t, a) {
7627  if (e === zo) for (var n = 0; n < t.length && n < a; n++) r(t[n] ? t[n][0] : null, n);
7628  else for (var i = t[0] || [], n = 0; n < i.length && n < a; n++) r(i[n], n);
7629}
7630function vA(r) {
7631  var e = r.sourceFormat;
7632  return e === gr || e === ra;
7633}
7634var In, Ln, Pn, R_, E_, cA = function() {
7635  function r(e, t) {
7636    var a = by(e) ? e : wy(e);
7637    this._source = a;
7638    var n = this._data = a.data;
7639    a.sourceFormat === Ka && (this._offset = 0, this._dimSize = t, this._data = n), E_(this, n, a);
7640  }
7641  return r.prototype.getSource = function() {
7642    return this._source;
7643  }, r.prototype.count = function() {
7644    return 0;
7645  }, r.prototype.getItem = function(e, t) {
7646  }, r.prototype.appendData = function(e) {
7647  }, r.prototype.clean = function() {
7648  }, r.protoInitialize = function() {
7649    var e = r.prototype;
7650    e.pure = false, e.persistent = true;
7651  }(), r.internalField = function() {
7652    var e;
7653    E_ = function(o, s, l) {
7654      var u = l.sourceFormat, f = l.seriesLayoutBy, h = l.startIndex, v = l.dimensionsDefine, c = R_[Ty(u, f)];
7655      if (z(o, c), u === Ka) o.getItem = t, o.count = n, o.fillStorage = a;
7656      else {
7657        var p = pA(u, f);
7658        o.getItem = $(p, null, s, h, v);
7659        var d = dA(u, f);
7660        o.count = $(d, null, s, h, v);
7661      }
7662    };
7663    var t = function(o, s) {
7664      o = o - this._offset, s = s || [];
7665      for (var l = this._data, u = this._dimSize, f = u * o, h = 0; h < u; h++) s[h] = l[f + h];
7666      return s;
7667    }, a = function(o, s, l, u) {
7668      for (var f = this._data, h = this._dimSize, v = 0; v < h; v++) {
7669        for (var c = u[v], p = c[0] == null ? 1 / 0 : c[0], d = c[1] == null ? -1 / 0 : c[1], g = s - o, y = l[v], m = 0; m < g; m++) {
7670          var _ = f[m * h + v];
7671          y[o + m] = _, _ < p && (p = _), _ > d && (d = _);
7672        }
7673        c[0] = p, c[1] = d;
7674      }
7675    }, n = function() {
7676      return this._data ? this._data.length / this._dimSize : 0;
7677    };
7678    R_ = (e = {}, e[Ae + "_" + Kr] = { pure: true, appendData: i }, e[Ae + "_" + zo] = { pure: true, appendData: function() {
7679      throw new Error('Do not support appendData when set seriesLayoutBy: "row".');
7680    } }, e[gr] = { pure: true, appendData: i }, e[ra] = { pure: true, appendData: function(o) {
7681      var s = this._data;
7682      D(o, function(l, u) {
7683        for (var f = s[u] || (s[u] = []), h = 0; h < (l || []).length; h++) f.push(l[h]);
7684      });
7685    } }, e[dr] = { appendData: i }, e[Ka] = { persistent: false, pure: true, appendData: function(o) {
7686      this._data = o;
7687    }, clean: function() {
7688      this._offset += this.count(), this._data = null;
7689    } }, e);
7690    function i(o) {
7691      for (var s = 0; s < o.length; s++) this._data.push(o[s]);
7692    }
7693  }(), r;
7694}(), k_ = function(r, e, t, a) {
7695  return r[a];
7696}, fO = (In = {}, In[Ae + "_" + Kr] = function(r, e, t, a) {
7697  return r[a + e];
7698}, In[Ae + "_" + zo] = function(r, e, t, a, n) {
7699  a += e;
7700  for (var i = n || [], o = r, s = 0; s < o.length; s++) {
7701    var l = o[s];
7702    i[s] = l ? l[a] : null;
7703  }
7704  return i;
7705}, In[gr] = k_, In[ra] = function(r, e, t, a, n) {
7706  for (var i = n || [], o = 0; o < t.length; o++) {
7707    var s = t[o].name, l = r[s];
7708    i[o] = l ? l[a] : null;
7709  }
7710  return i;
7711}, In[dr] = k_, In);
7712function pA(r, e) {
7713  var t = fO[Ty(r, e)];
7714  return t;
7715}
7716var O_ = function(r, e, t) {
7717  return r.length;
7718}, hO = (Ln = {}, Ln[Ae + "_" + Kr] = function(r, e, t) {
7719  return Math.max(0, r.length - e);
7720}, Ln[Ae + "_" + zo] = function(r, e, t) {
7721  var a = r[0];
7722  return a ? Math.max(0, a.length - e) : 0;
7723}, Ln[gr] = O_, Ln[ra] = function(r, e, t) {
7724  var a = t[0].name, n = r[a];
7725  return n ? n.length : 0;
7726}, Ln[dr] = O_, Ln);
7727function dA(r, e) {
7728  var t = hO[Ty(r, e)];
7729  return t;
7730}
7731var ec = function(r, e, t) {
7732  return r[e];
7733}, vO = (Pn = {}, Pn[Ae] = ec, Pn[gr] = function(r, e, t) {
7734  return r[t];
7735}, Pn[ra] = ec, Pn[dr] = function(r, e, t) {
7736  var a = Mo(r);
7737  return a instanceof Array ? a[e] : a;
7738}
7738, Pn[Ka] = ec, Pn);
7739function gA(r) {
7740  var e = vO[r];
7741  return e;
7742}
7743function Ty(r, e) {
7744  return r === Ae ? r + "_" + e : r;
7745}
7746function So(r, e, t) {
7747  if (r) {
7748    var a = r.getRawDataItem(e);
7749    if (a != null) {
7750      var n = r.getStore(), i = n.getSource().sourceFormat;
7751      if (t != null) {
7752        var o = r.getDimensionIndex(t), s = n.getDimensionProperty(o);
7753        return gA(i)(a, o, s);
7754      } else {
7755        var l = a;
7756        return i === dr && (l = Mo(a)), l;
7757      }
7758    }
7759  }
7760}
7761var cO = /\{@(.+?)\}/g, Yh = function() {
7762  function r() {
7763  }
7764  return r.prototype.getDataParams = function(e, t) {
7765    var a = this.getData(t), n = this.getRawValue(e, t), i = a.getRawIndex(e), o = a.getName(e), s = a.getRawDataItem(e), l = a.getItemVisual(e, "style"), u = l && l[a.getItemVisual(e, "drawType") || "fill"], f = l && l.stroke, h = this.mainType, v = h === "series", c = a.userOutput && a.userOutput.get();
7766    return { componentType: h, componentSubType: this.subType, componentIndex: this.componentIndex, seriesType: v ? this.subType : null, seriesIndex: this.seriesIndex, seriesId: v ? this.id : null, seriesName: v ? this.name : null, name: o, dataIndex: i, data: s, dataType: t, value: n, color: u, borderColor: f, dimensionNames: c ? c.fullDimensions : null, encode: c ? c.encode : null, $vars: ["seriesName", "name", "value"] };
7767  }, r.prototype.getFormattedLabel = function(e, t, a, n, i, o) {
7768    t = t || "normal";
7769    var s = this.getData(a), l = this.getDataParams(e, a);
7770    if (o && (l.value = o.interpolatedValue), n != null && V(l.value) && (l.value = l.value[n]), !i) {
7771      var u = s.getItemModel(e);
7772      i = u.get(t === "normal" ? ["label", "formatter"] : [t, "label", "formatter"]);
7773    }
7774    if (j(i)) return l.status = t, l.dimensionIndex = n, i(l);
7775    if (Y(i)) {
7776      var f = gy(i, l);
7777      return f.replace(cO, function(h, v) {
7778        var c = v.length, p = v;
7779        p.charAt(0) === "[" && p.charAt(c - 1) === "]" && (p = +p.slice(1, c - 1));
7780        var d = So(s, e, p);
7781        if (o && V(o.interpolatedValue)) {
7782          var g = s.getDimensionIndex(p);
7783          g >= 0 && (d = o.interpolatedValue[g]);
7784        }
7785        return d != null ? d + "" : "";
7786      });
7787    }
7788  }, r.prototype.getRawValue = function(e, t) {
7789    return So(this.getData(t), e);
7790  }, r.prototype.formatTooltip = function(e, t, a) {
7791  }, r;
7792}();
7793function N_(r) {
7794  var e, t;
7795  return tt(r) ? r.type && (t = r) : e = r, { text: e, frag: t };
7796}
7797function Xs(r) {
7798  return new pO(r);
7799}
7800var pO = function() {
7801  function r(e) {
7802    e = e || {}, this._reset = e.reset, this._plan = e.plan, this._count = e.count, this._onDirty = e.onDirty, this._dirty = true;
7803  }
7804  return r.prototype.perform = function(e) {
7805    var t = this._upstream, a = e && e.skip;
7806    if (this._dirty && t) {
7807      var n = this.context;
7808      n.data = n.outputData = t.context.outputData;
7809    }
7810    this.__pipeline && (this.__pipeline.currentTask = this);
7811    var i;
7812    this._plan && !a && (i = this._plan(this.context));
7813    var o = f(this._modBy), s = this._modDataCount || 0, l = f(e && e.modBy), u = e && e.modDataCount || 0;
7814    (o !== l || s !== u) && (i = "reset");
7815    function f(m) {
7816      return !(m >= 1) && (m = 1), m;
7817    }
7818    var h;
7819    (this._dirty || i === "reset") && (this._dirty = false, h = this._doReset(a)), this._modBy = l, this._modDataCount = u;
7820    var v = e && e.step;
7821    if (t ? this._dueEnd = t._outputDueEnd : this._dueEnd = this._count ? this._count(this.context) : 1 / 0, this._progress) {
7822      var c = this._dueIndex, p = Math.min(v != null ? this._dueIndex + v : 1 / 0, this._dueEnd);
7823      if (!a && (h || c < p)) {
7824        var d = this._progress;
7825        if (V(d)) for (var g = 0; g < d.length; g++) this._doProgress(d[g], c, p, l, u);
7826        else this._doProgress(d, c, p, l, u);
7827      }
7828      this._dueIndex = p;
7829      var y = this._settedOutputEnd != null ? this._settedOutputEnd : p;
7830      this._outputDueEnd = y;
7831    } else this._dueIndex = this._outputDueEnd = this._settedOutputEnd != null ? this._settedOutputEnd : this._dueEnd;
7832    return this.unfinished();
7833  }, r.prototype.dirty = function() {
7834    this._dirty = true, this._onDirty && this._onDirty(this.context);
7835  }, r.prototype._doProgress = function(e, t, a, n, i) {
7836    B_.reset(t, a, n, i), this._callingProgress = e, this._callingProgress({ start: t, end: a, count: a - t, next: B_.next }, this.context);
7837  }, r.prototype._doReset = function(e) {
7838    this._dueIndex = this._outputDueEnd = this._dueEnd = 0, this._settedOutputEnd = null;
7839    var t, a;
7840    !e && this._reset && (t = this._reset(this.context), t && t.progress && (a = t.forceFirstProgress, t = t.progress), V(t) && !t.length && (t = null)), this._progress = t, this._modBy = this._modDataCount = null;
7841    var n = this._downstream;
7842    return n && n.dirty(), a;
7843  }, r.prototype.unfinished = function() {
7844    return this._progress && this._dueIndex < this._dueEnd;
7845  }, r.prototype.pipe = function(e) {
7846    (this._downstream !== e || this._dirty) && (this._downstream = e, e._upstream = this, e.dirty());
7847  }, r.prototype.dispose = function() {
7848    this._disposed || (this._upstream && (this._upstream._downstream = null), this._downstream && (this._downstream._upstream = null), this._dirty = false, this._disposed = true);
7849  }, r.prototype.getUpstream = function() {
7850    return this._upstream;
7851  }, r.prototype.getDownstream = function() {
7852    return this._downstream;
7853  }, r.prototype.setOutputEnd = function(e) {
7854    this._outputDueEnd = this._settedOutputEnd = e;
7855  }, r;
7856}(), B_ = /* @__PURE__ */ function() {
7857  var r, e, t, a, n, i = { reset: function(l, u, f, h) {
7858    e = l, r = u, t = f, a = h, n = Math.ceil(a / t), i.next = t > 1 && a > 0 ? s : o;
7859  } };
7860  return i;
7861  function o() {
7862    return e < r ? e++ : null;
7863  }
7864  function s() {
7865    var l = e % n * t + Math.ceil(e / n), u = e >= r ? null : l < a ? l : e;
7866    return e++, u;
7867  }
7868}();
7869function ja(r, e) {
7870  var t = e && e.type;
7871  return t === "ordinal" ? r : (t === "time" && !wt(r) && r != null && r !== "-" && (r = +Ke(r)), r == null || r === "" ? NaN : Number(r));
7872}
7873var dO = Z({ number: function(r) {
7874  return parseFloat(r);
7875}, time: function(r) {
7876  return +Ke(r);
7877}, trim: function(r) {
7878  return Y(r) ? ur(r) : r;
7879} });
7880function yA(r) {
7881  return dO.get(r);
7882}
7883var mA = { lt: function(r, e) {
7884  return r < e;
7885}, lte: function(r, e) {
7886  return r <= e;
7887}, gt: function(r, e) {
7888  return r > e;
7889}, gte: function(r, e) {
7890  return r >= e;
7891} }, gO = function() {
7892  function r(e, t) {
7893    if (!wt(t)) {
7894      var a = "";
7895      Mt(a);
7896    }
7897    this._opFn = mA[e], this._rvalFloat = Qr(t);
7898  }
7899  return r.prototype.evaluate = function(e) {
7900    return wt(e) ? this._opFn(e, this._rvalFloat) : this._opFn(Qr(e), this._rvalFloat);
7901  }, r;
7902}(), _A = function() {
7903  function r(e, t) {
7904    var a = e === "desc";
7905    this._resultLT = a ? 1 : -1, t == null && (t = a ? "min" : "max"), this._incomparable = t === "min" ? -1 / 0 : 1 / 0;
7906  }
7907  return r.prototype.evaluate = function(e, t) {
7908    var a = wt(e) ? e : Qr(e), n = wt(t) ? t : Qr(t), i = isNaN(a), o = isNaN(n);
7909    if (i && (a = this._incomparable), o && (n = this._incomparable), i && o) {
7910      var s = Y(e), l = Y(t);
7911      s && (a = l ? e : 0), l && (n = s ? t : 0);
7912    }
7913    return a < n ? this._resultLT : a > n ? -this._resultLT : 0;
7914  }, r;
7915}(), yO = function() {
7916  function r(e, t) {
7917    this._rval = t, this._isEQ = e, this._rvalTypeof = typeof t, this._rvalFloat = Qr(t);
7918  }
7919  return r.prototype.evaluate = function(e) {
7920    var t = e === this._rval;
7921    if (!t) {
7922      var a = typeof e;
7923      a !== this._rvalTypeof && (a === "number" || this._rvalTypeof === "number") && (t = Qr(e) === this._rvalFloat);
7924    }
7925    return this._isEQ ? t : !t;
7926  }, r;
7927}();
7928function mO(r, e) {
7929  return r === "eq" || r === "ne" ? new yO(r === "eq", e) : X(mA, r) ? new gO(r, e) : null;
7930}
7931var _O = function() {
7932  function r() {
7933  }
7934  return r.prototype.getRawData = function() {
7935    throw new Error("not supported");
7936  }, r.prototype.getRawDataItem = function(e) {
7937    throw new Error("not supported");
7938  }, r.prototype.cloneRawData = function() {
7939  }, r.prototype.getDimensionInfo = function(e) {
7940  }, r.prototype.cloneAllDimensionInfo = function() {
7941  }, r.prototype.count = function() {
7942  }, r.prototype.retrieveValue = function(e, t) {
7943  }, r.prototype.retrieveValueFromItem = function(e, t) {
7944  }, r.prototype.convertValue = function(e, t) {
7945    return ja(e, t);
7946  }, r;
7947}();
7948function SO(r, e) {
7949  var t = new _O(), a = r.data, n = t.sourceFormat = r.sourceFormat, i = r.startIndex, o = "";
7950  r.seriesLayoutBy !== Kr && Mt(o);
7951  var s = [], l = {}, u = r.dimensionsDefine;
7952  if (u) D(u, function(d, g) {
7953    var y = d.name, m = { index: g, name: y, displayName: d.displayName };
7954    if (s.push(m), y != null) {
7955      var _ = "";
7956      X(l, y) && Mt(_), l[y] = m;
7957    }
7958  });
7959  else for (var f = 0; f < r.dimensionsDetectedCount; f++) s.push({ index: f });
7960  var h = pA(n, Kr);
7961  e.__isBuiltIn && (t.getRawDataItem = function(d) {
7962    return h(a, i, s, d);
7963  }, t.getRawData = $(xO, null, r)), t.cloneRawData = $(bO, null, r);
7964  var v = dA(n, Kr);
7965  t.count = $(v, null, a, i, s);
7966  var c = gA(n);
7967  t.retrieveValue = function(d, g) {
7968    var y = h(a, i, s, d);
7969    return p(y, g);
7970  };
7971  var p = t.retrieveValueFromItem = function(d, g) {
7972    if (d != null) {
7973      var y = s[g];
7974      if (y) return c(d, g, y.name);
7975    }
7976  };
7977  return t.getDimensionInfo = $(wO, null, s, l), t.cloneAllDimensionInfo = $(TO, null, s), t;
7978}
7979function xO(r) {
7980  var e = r.sourceFormat;
7981  if (!Cy(e)) {
7982    var t = "";
7983    Mt(t);
7984  }
7985  return r.data;
7986}
7987function bO(r) {
7988  var e = r.sourceFormat, t = r.data;
7989  if (!Cy(e)) {
7990    var a = "";
7991    Mt(a);
7992  }
7993  if (e === Ae) {
7994    for (var n = [], i = 0, o = t.length; i < o; i++) n.push(t[i].slice());
7995    return n;
7996  } else if (e === gr) {
7997    for (var n = [], i = 0, o = t.length; i < o; i++) n.push(z({}, t[i]));
7998    return n;
7999  }
8000}
8001function wO(r, e, t) {
8002  if (t != null) {
8003    if (wt(t) || !isNaN(t) && !X(e, t)) return r[t];
8004    if (X(e, t)) return e[t];
8005  }
8006}
8007function TO(r) {
8008  return rt(r);
8009}
8010var SA = Z();
8011function CO(r) {
8012  r = rt(r);
8013  var e = r.type, t = "";
8014  e || Mt(t);
8015  var a = e.split(":");
8016  a.length !== 2 && Mt(t);
8017  var n = false;
8018  a[0] === "echarts" && (e = a[1], n = true), r.__isBuiltIn = n, SA.set(e, r);
8019}
8020function AO(r, e, t) {
8021  var a = Rt(r), n = a.length, i = "";
8022  n || Mt(i);
8023  for (var o = 0, s = n; o < s; o++) {
8024    var l = a[o];
8025    e = DO(l, e), o !== s - 1 && (e.length = Math.max(e.length, 1));
8026  }
8027  return e;
8028}
8029function DO(r, e, t, a) {
8030  var n = "";
8031  e.length || Mt(n), tt(r) || Mt(n);
8032  var i = r.type, o = SA.get(i);
8033  o || Mt(n);
8034  var s = G(e, function(u) {
8035    return SO(u, o);
8036  }), l = Rt(o.transform({ upstream: s[0], upstreamList: s, config: rt(r.config) }));
8037  return G(l, function(u, f) {
8038    var h = "";
8039    tt(u) || Mt(h), u.data || Mt(h);
8040    var v = hA(u.data);
8041    Cy(v) || Mt(h);
8042    var c, p = e[0];
8043    if (p && f === 0 && !u.dimensions) {
8044      var d = p.startIndex;
8045      d && (u.data = p.data.slice(0, d).concat(u.data)), c = { seriesLayoutBy: Kr, sourceHeader: d, dimensions: p.metaRawOption.dimensions };
8046    } else c = { seriesLayoutBy: Kr, sourceHeader: 0, dimensions: u.dimensions };
8047    return bd(u.data, c, null);
8048  });
8049}
8050function Cy(r) {
8051  return r === Ae || r === gr;
8052}
8053var $h = "undefined", MO = typeof Uint32Array === $h ? Array : Uint32Array, IO = typeof Uint16Array === $h ? Array : Uint16Array, xA = typeof Int32Array === $h ? Array : Int32Array, z_ = typeof Float64Array === $h ? Array : Float64Array, bA = { float: z_, int: xA, ordinal: Array, number: Array, time: z_ }, rc;
8054function Bi(r) {
8055  return r > 65535 ? MO : IO;
8056}
8057function zi() {
8058  return [1 / 0, -1 / 0];
8059}
8060function LO(r) {
8061  var e = r.constructor;
8062  return e === Array ? r.slice() : new e(r);
8063}
8064function V_(r, e, t, a, n) {
8065  var i = bA[t || "float"];
8066  if (n) {
8067    var o = r[e], s = o && o.length;
8068    if (s !== a) {
8069      for (var l = new i(a), u = 0; u < s; u++) l[u] = o[u];
8070      r[e] = l;
8071    }
8072  } else r[e] = new i(a);
8073}
8074var wd = function() {
8075  function r() {
8076    this._chunks = [], this._rawExtent = [], this._extent = [], this._count = 0, this._rawCount = 0, this._calcDimNameToIdx = Z();
8077  }
8078  return r.prototype.initData = function(e, t, a) {
8079    this._provider = e, this._chunks = [], this._indices = null, this.getRawIndex = this._getRawIdxIdentity;
8080    var n = e.getSource(), i = this.defaultDimValueGetter = rc[n.sourceFormat];
8081    this._dimValueGetter = a || i, this._rawExtent = [], vA(n), this._dimensions = G(t, function(o) {
8082      return { type: o.type, property: o.property };
8083    }), this._initDataFromProvider(0, e.count());
8084  }, r.prototype.getProvider = function() {
8085    return this._provider;
8086  }, r.prototype.getSource = function() {
8087    return this._provider.getSource();
8088  }, r.prototype.ensureCalculationDimension = function(e, t) {
8089    var a = this._calcDimNameToIdx, n = this._dimensions, i = a.get(e);
8090    if (i != null) {
8091      if (n[i].type === t) return i;
8092    } else i = n.length;
8093    return n[i] = { type: t }, a.set(e, i), this._chunks[i] = new bA[t || "float"](this._rawCount), this._rawExtent[i] = zi(), i;
8094  }, r.prototype.collectOrdinalMeta = function(e, t) {
8095    var a = this._chunks[e], n = this._dimensions[e], i = this._rawExtent, o = n.ordinalOffset || 0, s = a.length;
8096    o === 0 && (i[e] = zi());
8097    for (var l = i[e], u = o; u < s; u++) {
8098      var f = a[u] = t.parseAndCollect(a[u]);
8099      isNaN(f) || (l[0] = Math.min(f, l[0]), l[1] = Math.max(f, l[1]));
8100    }
8101    n.ordinalMeta = t, n.ordinalOffset = s, n.type = "ordinal";
8102  }, r.prototype.getOrdinalMeta = function(e) {
8103    var t = this._dimensions[e], a = t.ordinalMeta;
8104    return a;
8105  }, r.prototype.getDimensionProperty = function(e) {
8106    var t = this._dimensions[e];
8107    return t && t.property;
8108  }, r.prototype.appendData = function(e) {
8109    var t = this._provider, a = this.count();
8110    t.appendData(e);
8111    var n = t.count();
8112    return t.persistent || (n += a), a < n && this._initDataFromProvider(a, n, true), [a, n];
8113  }, r.prototype.appendValues = function(e, t) {
8114    for (var a = this._chunks, n = this._dimensions, i = n.length, o = this._rawExtent, s = this.count(), l = s + Math.max(e.length, t || 0), u = 0; u < i; u++) {
8115      var f = n[u];
8116      V_(a, u, f.type, l, true);
8117    }
8118    for (var h = [], v = s; v < l; v++) for (var c = v - s, p = 0; p < i; p++) {
8119      var f = n[p], d = rc.arrayRows.call(this, e[c] || h, f.property, c, p);
8120      a[p][v] = d;
8121      var g = o[p];
8122      d < g[0] && (g[0] = d), d > g[1] && (g[1] = d);
8123    }
8124    return this._rawCount = this._count = l, { start: s, end: l };
8125  }, r.prototype._initDataFromProvider = function(e, t, a) {
8126    for (var n = this._provider, i = this._chunks, o = this._dimensions, s = o.length, l = this._rawExtent, u = G(o, function(m) {
8127      return m.property;
8128    }), f = 0; f < s; f++) {
8129      var h = o[f];
8130      l[f] || (l[f] = zi()), V_(i, f, h.type, t, a);
8131    }
8132    if (n.fillStorage) n.fillStorage(e, t, i, l);
8133    else for (var v = [], c = e; c < t; c++) {
8134      v = n.getItem(c, v);
8135      for (var p = 0; p < s; p++) {
8136        var d = i[p], g = this._dimValueGetter(v, u[p], c, p);
8137        d[c] = g;
8138        var y = l[p];
8139        g < y[0] && (y[0] = g), g > y[1] && (y[1] = g);
8140      }
8141    }
8142    !n.persistent && n.clean && n.clean(), this._rawCount = this._count = t, this._extent = [];
8143  }, r.prototype.count = function() {
8144    return this._count;
8145  }, r.prototype.get = function(e, t) {
8146    if (!(t >= 0 && t < this._count)) return NaN;
8147    var a = this._chunks[e];
8148    return a ? a[this.getRawIndex(t)] : NaN;
8149  }, r.prototype.getValues = function(e, t) {
8150    var a = [], n = [];
8151    if (t == null) {
8152      t = e, e = [];
8153      for (var i = 0; i < this._dimensions.length; i++) n.push(i);
8154    } else n = e;
8155    for (var i = 0, o = n.length; i < o; i++) a.push(this.get(n[i], t));
8156    return a;
8157  }, r.prototype.getByRawIndex = function(e, t) {
8158    if (!(t >= 0 && t < this._rawCount)) return NaN;
8159    var a = this._chunks[e];
8160    return a ? a[t] : NaN;
8161  }, r.prototype.getSum = function(e) {
8162    var t = this._chunks[e], a = 0;
8163    if (t) for (var n = 0, i = this.count(); n < i; n++) {
8164      var o = this.get(e, n);
8165      isNaN(o) || (a += o);
8166    }
8167    return a;
8168  }, r.prototype.getMedian = function(e) {
8169    var t = [];
8170    this.each([e], function(i) {
8171      isNaN(i) || t.push(i);
8172    });
8173    var a = t.sort(function(i, o) {
8174      return i - o;
8175    }), n = this.count();
8176    return n === 0 ? 0 : n % 2 === 1 ? a[(n - 1) / 2] : (a[n / 2] + a[n / 2 - 1]) / 2;
8177  }, r.prototype.indexOfRawIndex = function(e) {
8178    if (e >= this._rawCount || e < 0) return -1;
8179    if (!this._indices) return e;
8180    var t = this._indices, a = t[e];
8181    if (a != null && a < this._count && a === e) return e;
8182    for (var n = 0, i = this._count - 1;
8182 n <= i; ) {
8183      var o = (n + i) / 2 | 0;
8184      if (t[o] < e) n = o + 1;
8185      else if (t[o] > e) i = o - 1;
8186      else return o;
8187    }
8188    return -1;
8189  }, r.prototype.indicesOfNearest = function(e, t, a) {
8190    var n = this._chunks, i = n[e], o = [];
8191    if (!i) return o;
8192    a == null && (a = 1 / 0);
8193    for (var s = 1 / 0, l = -1, u = 0, f = 0, h = this.count(); f < h; f++) {
8194      var v = this.getRawIndex(f), c = t - i[v], p = Math.abs(c);
8195      p <= a && ((p < s || p === s && c >= 0 && l < 0) && (s = p, l = c, u = 0), c === l && (o[u++] = f));
8196    }
8197    return o.length = u, o;
8198  }, r.prototype.getIndices = function() {
8199    var e, t = this._indices;
8200    if (t) {
8201      var a = t.constructor, n = this._count;
8202      if (a === Array) {
8203        e = new a(n);
8204        for (var i = 0; i < n; i++) e[i] = t[i];
8205      } else e = new a(t.buffer, 0, n);
8206    } else {
8207      var a = Bi(this._rawCount);
8208      e = new a(this.count());
8209      for (var i = 0; i < e.length; i++) e[i] = i;
8210    }
8211    return e;
8212  }, r.prototype.filter = function(e, t) {
8213    if (!this._count) return this;
8214    for (var a = this.clone(), n = a.count(), i = Bi(a._rawCount), o = new i(n), s = [], l = e.length, u = 0, f = e[0], h = a._chunks, v = 0; v < n; v++) {
8215      var c = void 0, p = a.getRawIndex(v);
8216      if (l === 0) c = t(v);
8217      else if (l === 1) {
8218        var d = h[f][p];
8219        c = t(d, v);
8220      } else {
8221        for (var g = 0; g < l; g++) s[g] = h[e[g]][p];
8222        s[g] = v, c = t.apply(null, s);
8223      }
8224      c && (o[u++] = p);
8225    }
8226    return u < n && (a._indices = o), a._count = u, a._extent = [], a._updateGetRawIdx(), a;
8227  }, r.prototype.selectRange = function(e) {
8228    var t = this.clone(), a = t._count;
8229    if (!a) return this;
8230    var n = _t(e), i = n.length;
8231    if (!i) return this;
8232    var o = t.count(), s = Bi(t._rawCount), l = new s(o), u = 0, f = n[0], h = e[f][0], v = e[f][1], c = t._chunks, p = false;
8233    if (!t._indices) {
8234      var d = 0;
8235      if (i === 1) {
8236        for (var g = c[n[0]], y = 0; y < a; y++) {
8237          var m = g[y];
8238          (m >= h && m <= v || isNaN(m)) && (l[u++] = d), d++;
8239        }
8240        p = true;
8241      } else if (i === 2) {
8242        for (var g = c[n[0]], _ = c[n[1]], S = e[n[1]][0], b = e[n[1]][1], y = 0; y < a; y++) {
8243          var m = g[y], x = _[y];
8244          (m >= h && m <= v || isNaN(m)) && (x >= S && x <= b || isNaN(x)) && (l[u++] = d), d++;
8245        }
8246        p = true;
8247      }
8248    }
8249    if (!p) if (i === 1) for (var y = 0; y < o; y++) {
8250      var w = t.getRawIndex(y), m = c[n[0]][w];
8251      (m >= h && m <= v || isNaN(m)) && (l[u++] = w);
8252    }
8253    else for (var y = 0; y < o; y++) {
8254      for (var T = true, w = t.getRawIndex(y), C = 0; C < i; C++) {
8255        var A = n[C], m = c[A][w];
8256        (m < e[A][0] || m > e[A][1]) && (T = false);
8257      }
8258      T && (l[u++] = t.getRawIndex(y));
8259    }
8260    return u < o && (t._indices = l), t._count = u, t._extent = [], t._updateGetRawIdx(), t;
8261  }, r.prototype.map = function(e, t) {
8262    var a = this.clone(e);
8263    return this._updateDims(a, e, t), a;
8264  }, r.prototype.modify = function(e, t) {
8265    this._updateDims(this, e, t);
8266  }, r.prototype._updateDims = function(e, t, a) {
8267    for (var n = e._chunks, i = [], o = t.length, s = e.count(), l = [], u = e._rawExtent, f = 0; f < t.length; f++) u[t[f]] = zi();
8268    for (var h = 0; h < s; h++) {
8269      for (var v = e.getRawIndex(h), c = 0; c < o; c++) l[c] = n[t[c]][v];
8270      l[o] = h;
8271      var p = a && a.apply(null, l);
8272      if (p != null) {
8273        typeof p != "object" && (i[0] = p, p = i);
8274        for (var f = 0; f < p.length; f++) {
8275          var d = t[f], g = p[f], y = u[d], m = n[d];
8276          m && (m[v] = g), g < y[0] && (y[0] = g), g > y[1] && (y[1] = g);
8277        }
8278      }
8279    }
8280  }, r.prototype.lttbDownSample = function(e, t) {
8281    var a = this.clone([e], true), n = a._chunks, i = n[e], o = this.count(), s = 0, l = Math.floor(1 / t), u = this.getRawIndex(0), f, h, v, c = new (Bi(this._rawCount))(Math.min((Math.ceil(o / l) + 2) * 2, o));
8282    c[s++] = u;
8283    for (var p = 1; p < o - 1; p += l) {
8284      for (var d = Math.min(p + l, o - 1), g = Math.min(p + l * 2, o), y = (g + d) / 2, m = 0, _ = d; _ < g; _++) {
8285        var S = this.getRawIndex(_), b = i[S];
8286        isNaN(b) || (m += b);
8287      }
8288      m /= g - d;
8289      var x = p, w = Math.min(p + l, o), T = p - 1, C = i[u];
8290      f = -1, v = x;
8291      for (var A = -1, M = 0, _ = x; _ < w; _++) {
8292        var S = this.getRawIndex(_), b = i[S];
8293        if (isNaN(b)) {
8294          M++, A < 0 && (A = S);
8295          continue;
8296        }
8297        h = Math.abs((T - y) * (b - C) - (T - _) * (m - C)), h > f && (f = h, v = S);
8298      }
8299      M > 0 && M < w - x && (c[s++] = Math.min(A, v), v = Math.max(A, v)), c[s++] = v, u = v;
8300    }
8301    return c[s++] = this.getRawIndex(o - 1), a._count = s, a._indices = c, a.getRawIndex = this._getRawIdx, a;
8302  }, r.prototype.minmaxDownSample = function(e, t) {
8303    for (var a = this.clone([e], true), n = a._chunks, i = Math.floor(1 / t), o = n[e], s = this.count(), l = new (Bi(this._rawCount))(Math.ceil(s / i) * 2), u = 0, f = 0; f < s; f += i) {
8304      var h = f, v = o[this.getRawIndex(h)], c = f, p = o[this.getRawIndex(c)], d = i;
8305      f + i > s && (d = s - f);
8306      for (var g = 0; g < d; g++) {
8307        var y = this.getRawIndex(f + g), m = o[y];
8308        m < v && (v = m, h = f + g), m > p && (p = m, c = f + g);
8309      }
8310      var _ = this.getRawIndex(h), S = this.getRawIndex(c);
8311      h < c ? (l[u++] = _, l[u++] = S) : (l[u++] = S, l[u++] = _);
8312    }
8313    return a._count = u, a._indices = l, a._updateGetRawIdx(), a;
8314  }, r.prototype.downSample = function(e, t, a, n) {
8315    for (var i = this.clone([e], true), o = i._chunks, s = [], l = Math.floor(1 / t), u = o[e], f = this.count(), h = i._rawExtent[e] = zi(), v = new (Bi(this._rawCount))(Math.ceil(f / l)), c = 0, p = 0; p < f; p += l) {
8316      l > f - p && (l = f - p, s.length = l);
8317      for (var d = 0; d < l; d++) {
8318        var g = this.getRawIndex(p + d);
8319        s[d] = u[g];
8320      }
8321      var y = a(s), m = this.getRawIndex(Math.min(p + n(s, y) || 0, f - 1));
8322      u[m] = y, y < h[0] && (h[0] = y), y > h[1] && (h[1] = y), v[c++] = m;
8323    }
8324    return i._count = c, i._indices = v, i._updateGetRawIdx(), i;
8325  }, r.prototype.each = function(e, t) {
8326    if (this._count) for (var a = e.length, n = this._chunks, i = 0, o = this.count(); i < o; i++) {
8327      var s = this.getRawIndex(i);
8328      switch (a) {
8329        case 0:
8330          t(i);
8331          break;
8332        case 1:
8333          t(n[e[0]][s], i);
8334          break;
8335        case 2:
8336          t(n[e[0]][s], n[e[1]][s], i);
8337          break;
8338        default:
8339          for (var l = 0, u = []; l < a; l++) u[l] = n[e[l]][s];
8340          u[l] = i, t.apply(null, u);
8341      }
8342    }
8343  }, r.prototype.getDataExtent = function(e) {
8344    var t = this._chunks[e], a = zi();
8345    if (!t) return a;
8346    var n = this.count(), i = !this._indices, o;
8347    if (i) return this._rawExtent[e].slice();
8348    if (o = this._extent[e], o) return o.slice();
8349    o = a;
8350    for (var s = o[0], l = o[1], u = 0; u < n; u++) {
8351      var f = this.getRawIndex(u), h = t[f];
8352      h < s && (s = h), h > l && (l = h);
8353    }
8354    return o = [s, l], this._extent[e] = o, o;
8355  }, r.prototype.getRawDataItem = function(e) {
8356    var t = this.getRawIndex(e);
8357    if (this._provider.persistent) return this._provider.getItem(t);
8358    for (var a = [], n = this._chunks, i = 0; i < n.length; i++) a.push(n[i][t]);
8359    return a;
8360  }, r.prototype.clone = function(e, t) {
8361    var a = new r(), n = this._chunks, i = e && hr(e, function(s, l) {
8362      return s[l] = true, s;
8363    }, {});
8364    if (i) for (var o = 0; o < n.length; o++) a._chunks[o] = i[o] ? LO(n[o]) : n[o];
8365    else a._chunks = n;
8366    return this._copyCommonProps(a), t || (a._indices = this._cloneIndices()), a._updateGetRawIdx(), a;
8367  }, r.prototype._copyCommonProps = function(e) {
8368    e._count = this._count, e._rawCount = this._rawCount, e._provider = this._provider, e._dimensions = this._dimensions, e._extent = rt(this._extent), e._rawExtent = rt(this._rawExtent);
8369  }, r.prototype._cloneIndices = function() {
8370    if (this._indices) {
8371      var e = this._indices.constructor, t = void 0;
8372      if (e === Array) {
8373        var a = this._indices.length;
8374        t = new e(a);
8375        for (var n = 0; n < a; n++) t[n] = this._indices[n];
8376      } else t = new e(this._indices);
8377      return t;
8378    }
8379    return null;
8380  }, r.prototype._getRawIdxIdentity = function(e) {
8381    return e;
8382  }, r.prototype._getRawIdx = function(e) {
8383    return e < this._count && e >= 0 ? this._indices[e] : -1;
8384  }, r.prototype._updateGetRawIdx = function() {
8385    this.getRawIndex = this._indices ? this._getRawIdx : this._getRawIdxIdentity;
8386  }, r.internalField = function() {
8387    function e(t, a, n, i) {
8388      return ja(t[i], this._dimensions[i]);
8389    }
8390    rc = { arrayRows: e, objectRows: function(t, a, n, i) {
8391      return ja(t[a], this._dimensions[i]);
8392    }, keyedColumns: e, original: function(t, a, n, i) {
8393      var o = t && (t.value == null ? t : t.value);
8394      return ja(o instanceof Array ? o[i] : o, this._dimensions[i]);
8395    }, typedArray: function(t, a, n, i) {
8396      return t[i];
8397    } };
8398  }(), r;
8399}(), wA = function() {
8400  function r(e) {
8401    this._sourceList = [], this._storeList = [], this._upstreamSignList = [], this._versionSignBase = 0, this._dirty = true, this._sourceHost = e;
8402  }
8403  return r.prototype.dirty = function() {
8404    this._setLocalSource([], []), this._storeList = [], this._dirty = true;
8405  }, r.prototype._setLocalSource = function(e, t) {
8406    this._sourceList = e, this._upstreamSignList = t, this._versionSignBase++, this._versionSignBase > 9e10 && (this._versionSignBase = 0);
8407  }, r.prototype._getVersionSign = function() {
8408    return this._sourceHost.uid + "_" + this._versionSignBase;
8409  }, r.prototype.prepareSource = function() {
8410    this._isDirty() && (this._createSource(), this._dirty = false);
8411  }, r.prototype._createSource = function() {
8412    this._setLocalSource([], []);
8413    var e = this._sourceHost, t = this._getUpstreamSourceManagers(), a = !!t.length, n, i;
8414    if (mu(e)) {
8415      var o = e, s = void 0, l = void 0, u = void 0;
8416      if (a) {
8417        var f = t[0];
8418        f.prepareSource(), u = f.getSource(), s = u.data, l = u.sourceFormat, i = [f._getVersionSign()];
8419      } else s = o.get("data", true), l = ke(s) ? Ka : dr, i = [];
8420      var h = this._getSourceMetaRawOption() || {}, v = u && u.metaRawOption || {}, c = st(h.seriesLayoutBy, v.seriesLayoutBy) || null, p = st(h.sourceHeader, v.sourceHeader), d = st(h.dimensions, v.dimensions), g = c !== v.seriesLayoutBy || !!p != !!v.sourceHeader || d;
8421      n = g ? [bd(s, { seriesLayoutBy: c, sourceHeader: p, dimensions: d }, l)] : [];
8422    } else {
8423      var y = e;
8424      if (a) {
8425        var m = this._applyTransform(t);
8426        n = m.sourceList, i = m.upstreamSignList;
8427      } else {
8428        var _ = y.get("source", true);
8429        n = [bd(_, this._getSourceMetaRawOption(), null)], i = [];
8430      }
8431    }
8432    this._setLocalSource(n, i);
8433  }, r.prototype._applyTransform = function(e) {
8434    var t = this._sourceHost, a = t.get("transform", true), n = t.get("fromTransformResult", true);
8435    if (n != null) {
8436      var i = "";
8437      e.length !== 1 && F_(i);
8438    }
8439    var o, s = [], l = [];
8440    return D(e, function(u) {
8441      u.prepareSource();
8442      var f = u.getSource(n || 0), h = "";
8443      n != null && !f && F_(h), s.push(f), l.push(u._getVersionSign());
8444    }), a ? o = AO(a, s, { datasetIndex: t.componentIndex }) : n != null && (o = [sO(s[0])]), { sourceList: o, upstreamSignList: l };
8445  }, r.prototype._isDirty = function() {
8446    if (this._dirty) return true;
8447    for (var e = this._getUpstreamSourceManagers(), t = 0; t < e.length; t++) {
8448      var a = e[t];
8449      if (a._isDirty() || this._upstreamSignList[t] !== a._getVersionSign()) return true;
8450    }
8451  }, r.prototype.getSource = function(e) {
8452    e = e || 0;
8453    var t = this._sourceList[e];
8454    if (!t) {
8455      var a = this._getUpstreamSourceManagers();
8456      return a[0] && a[0].getSource(e);
8457    }
8458    return t;
8459  }, r.prototype.getSharedDataStore = function(e) {
8460    var t = e.makeStoreSchema();
8461    return this._innerGetDataStore(t.dimensions, e.source, t.hash);
8462  }, r.prototype._innerGetDataStore = function(e, t, a) {
8463    var n = 0, i = this._storeList, o = i[n];
8464    o || (o = i[n] = {});
8465    var s = o[a];
8466    if (!s) {
8467      var l = this._getUpstreamSourceManagers()[0];
8468      mu(this._sourceHost) && l ? s = l._innerGetDataStore(e, t, a) : (s = new wd(), s.initData(new cA(t, e.length), e)), o[a] = s;
8469    }
8470    return s;
8471  }, r.prototype._getUpstreamSourceManagers = function() {
8472    var e = this._sourceHost;
8473    if (mu(e)) {
8474      var t = _y(e);
8475      return t ? [t.getSourceManager()] : [];
8476    } else return G(Nk(e), function(a) {
8477      return a.getSourceManager();
8478    });
8479  }, r.prototype._getSourceMetaRawOption = function() {
8480    var e = this._sourceHost, t, a, n;
8481    if (mu(e)) t = e.get("seriesLayoutBy", true), a = e.get("sourceHeader", true), n = e.get("dimensions", true);
8482    else if (!this._getUpstreamSourceManagers().length) {
8483      var i = e;
8484      t = i.get("seriesLayoutBy", true), a = i.get("sourceHeader", true), n = i.get("dimensions", true);
8485    }
8486    return { seriesLayoutBy: t, sourceHeader: a, dimensions: n };
8487  }, r;
8488}();
8489function G_(r) {
8490  var e = r.option.transform;
8491  e && Qs(r.option.transform);
8492}
8493function mu(r) {
8494  return r.mainType === "series";
8495}
8496function F_(r) {
8497  throw new Error(r);
8498}
8499var PO = "line-height:1";
8500function TA(r) {
8501  var e = r.lineHeight;
8502  return e == null ? PO : "line-height:" + xe(e + "") + "px";
8503}
8504function CA(r, e) {
8505  var t = r.color || "#6e7079", a = r.fontSize || 12, n = r.fontWeight || "400", i = r.color || "#464646", o = r.fontSize || 14, s = r.fontWeight || "900";
8506  return e === "html" ? { nameStyle: "font-size:" + xe(a + "") + "px;color:" + xe(t) + ";font-weight:" + xe(n + ""), valueStyle: "font-size:" + xe(o + "") + "px;color:" + xe(i) + ";font-weight:" + xe(s + "") } : { nameStyle: { fontSize: a, fill: t, fontWeight: n }, valueStyle: { fontSize: o, fill: i, fontWeight: s } };
8507}
8508var RO = [0, 10, 20, 30], EO = ["", `
8509`, `
8510
8511`, `
8512
8513
8514`];
8515function le(r, e) {
8516  return e.type = r, e;
8517}
8518function Td(r) {
8519  return r.type === "section";
8520}
8521function AA(r) {
8522  return Td(r) ? kO : OO;
8523}
8524function DA(r) {
8525  if (Td(r)) {
8526    var e = 0, t = r.blocks.length, a = t > 1 || t > 0 && !r.noHeader;
8527    return D(r.blocks, function(n) {
8528      var i = DA(n);
8529      i >= e && (e = i + +(a && (!i || Td(n) && !n.noHeader)));
8530    }), e;
8531  }
8532  return 0;
8533}
8534function kO(r, e, t, a) {
8535  var n = e.noHeader, i = NO(DA(e)), o = [], s = e.blocks || [];
8536  we(!s || V(s)), s = s || [];
8537  var l = r.orderMode;
8538  if (e.sortBlocks && l) {
8539    s = s.slice();
8540    var u = { valueAsc: "asc", valueDesc: "desc" };
8541    if (X(u, l)) {
8542      var f = new _A(u[l], null);
8543      s.sort(function(d, g) {
8544        return f.evaluate(d.sortParam, g.sortParam);
8545      });
8546    } else l === "seriesDesc" && s.reverse();
8547  }
8548  D(s, function(d, g) {
8549    var y = e.valueFormatter, m = AA(d)(y ? z(z({}, r), { valueFormatter: y }) : r, d, g > 0 ? i.html : 0, a);
8550    m != null && o.push(m);
8551  });
8552  var h = r.renderMode === "richText" ? o.join(i.richText) : Cd(a, o.join(""), n ? t : i.html);
8553  if (n) return h;
8554  var v = _d(e.header, "ordinal", r.useUTC), c = CA(a, r.renderMode).nameStyle, p = TA(a);
8555  return r.renderMode === "richText" ? MA(r, v, c) + i.richText + h : Cd(a, '<div style="' + c + ";" + p + ';">' + xe(v) + "</div>" + h, t);
8556}
8557function OO(r, e, t, a) {
8558  var n = r.renderMode, i = e.noName, o = e.noValue, s = !e.markerType, l = e.name, u = r.useUTC, f = e.valueFormatter || r.valueFormatter || function(S) {
8559    return S = V(S) ? S : [S], G(S, function(b, x) {
8560      return _d(b, V(c) ? c[x] : c, u);
8561    });
8562  };
8563  if (!(i && o)) {
8564    var h = s ? "" : r.markupStyleCreator.makeTooltipMarker(e.markerType, e.markerColor || "#333", n), v = i ? "" : _d(l, "ordinal", u), c = e.valueType, p = o ? [] : f(e.value, e.dataIndex), d = !s || !i, g = !s && i, y = CA(a, n), m = y.nameStyle, _ = y.valueStyle;
8565    return n === "richText" ? (s ? "" : h) + (i ? "" : MA(r, v, m)) + (o ? "" : VO(r, p, d, g, _)) : Cd(a, (s ? "" : h) + (i ? "" : BO(v, !s, m)) + (o ? "" : zO(p, d, g, _)), t);
8566  }
8567}
8568function H_(r, e, t, a, n, i) {
8569  if (r) {
8570    var o = AA(r), s = { useUTC: n, renderMode: t, orderMode: a, markupStyleCreator: e, valueFormatter: r.valueFormatter };
8571    return o(s, r, 0, i);
8572  }
8573}
8574function NO(r) {
8575  return { html: RO[r], richText: EO[r] };
8576}
8577function Cd(r, e, t) {
8578  var a = '<div style="clear:both"></div>', n = "margin: " + t + "px 0 0", i = TA(r);
8579  return '<div style="' + n + ";" + i + ';">' + e + a + "</div>";
8580}
8581function BO(r, e, t) {
8582  var a = e ? "margin-left:2px" : "";
8583  return '<span style="' + t + ";" + a + '">' + xe(r) + "</span>";
8584}
8585function zO(r, e, t, a) {
8586  var n = t ? "10px" : "20px", i = e ? "float:right;margin-left:" + n : "";
8587  return r = V(r) ? r : [r], '<span style="' + i + ";" + a + '">' + G(r, function(o) {
8588    return xe(o);
8589  }).join("&nbsp;&nbsp;") + "</span>";
8590}
8591function MA(r, e, t) {
8592  return r.markupStyleCreator.wrapRichTextStyle(e, t);
8593}
8594function VO(r, e, t, a, n) {
8595  var i = [n], o = a ? 10 : 20;
8596  return t && i.push({ padding: [0, 0, 0, o], align: "right" }), r.markupStyleCreator.wrapRichTextStyle(V(e) ? e.join("  ") : e, i);
8597}
8598function IA(r, e) {
8599  var t = r.getData().getItemVisual(e, "style"), a = t[r.visualDrawType];
8600  return pi(a);
8601}
8602function LA(r, e) {
8603  var t = r.get("padding");
8604  return t ?? (e === "richText" ? [8, 10] : 10);
8605}
8606var ac = function() {
8607  function r() {
8608    this.richTextStyles = {}, this._nextStyleNameId = XT();
8609  }
8610  return r.prototype._generateStyleName = function() {
8611    return "__EC_aUTo_" + this._nextStyleNameId++;
8612  }, r.prototype.makeTooltipMarker = function(e, t, a) {
8613    var n = a === "richText" ? this._generateStyleName() : null, i = jC({ color: t, type: e, renderMode: a, markerId: n });
8614    return Y(i) ? i : (this.richTextStyles[n] = i.style, i.content);
8615  }, r.prototype.wrapRichTextStyle = function(e, t) {
8616    var a = {};
8617    V(t) ? D(t, function(i) {
8618      return z(a, i);
8619    }) : z(a, t);
8620    var n = this._generateStyleName();
8621    return this.richTextStyles[n] = a, "{" + n + "|" + e + "}";
8622  }, r;
8623}();
8624function PA(r) {
8625  var e = r.series, t = r.dataIndex, a = r.multipleSeries, n = e.getData(), i = n.mapDimensionsAll("defaultedTooltip"), o = i.length, s = e.getRawValue(t), l = V(s), u = IA(e, t), f, h, v, c;
8626  if (o > 1 || l && !o) {
8627    var p = GO(s, e, t, i, u);
8628    f = p.inlineValues, h = p.inlineValueTypes, v = p.blocks, c = p.inlineValues[0];
8629  } else if (o) {
8630    var d = n.getDimensionInfo(i[0]);
8631    c = f = So(n, t, i[0]), h = d.type;
8632  } else c = f = l ? s[0] : s;
8633  var g = Yg(e), y = g && e.name || "", m = n.getName(t), _ = a ? y : m;
8634  return le("section", { header: y, noHeader: a || !g, sortParam: c, blocks: [le("nameValue", { markerType: "item", markerColor: u, name: _, noName: !ur(_), value: f, valueType: h, dataIndex: t })].concat(v || []) });
8635}
8636function GO(r, e, t, a, n) {
8637  var i = e.getData(), o = hr(r, function(h, v, c) {
8638    var p = i.getDimensionInfo(c);
8639    return h = h || p && p.tooltip !== false && p.displayName != null;
8640  }, false), s = [], l = [], u = [];
8641  a.length ? D(a, function(h) {
8642    f(So(i, t, h), h);
8643  }) : D(r, f);
8644  function f(h, v) {
8645    var c = i.getDimensionInfo(v);
8646    !c || c.otherDims.tooltip === false || (o ? u.push(le("nameValue", { markerType: "subItem", markerColor: n, name: c.displayName, value: h, valueType: c.type })) : (s.push(h), l.push(c.type)));
8647  }
8648  return { inlineValues: s, inlineValueTypes: l, blocks: u };
8649}
8650var Ia = bt();
8651function _u(r, e) {
8652  return r.getName(e) || r.getId(e);
8653}
8654var vf = "__universalTransitionEnabled", Et = function(r) {
8655  N(e, r);
8656  function e() {
8657    var t = r !== null && r.apply(this, arguments) || this;
8658    return t._selectedDataIndicesMap = {}, t;
8659  }
8660  return e.prototype.init = function(t, a, n) {
8661    this.seriesIndex = this.componentIndex, this.dataTask = Xs({ 
8661count: HO, reset: WO }), this.dataTask.context = { model: this }, this.mergeDefaultAndTheme(t, n);
8662    var i = Ia(this).sourceManager = new wA(this);
8663    i.prepareSource();
8664    var o = this.getInitialData(t, n);
8665    U_(o, this), this.dataTask.context.data = o, Ia(this).dataBeforeProcessed = o, W_(this), this._initSelectedMapFromData(o);
8666  }, e.prototype.mergeDefaultAndTheme = function(t, a) {
8667    var n = hl(this), i = n ? Bo(t) : {}, o = this.subType;
8668    gt.hasClass(o) && (o += "Series"), ut(t, a.getTheme().get(this.subType)), ut(t, this.getDefaultOption()), fi(t, "label", ["show"]), this.fillDataTextStyle(t.data), n && an(t, i, n);
8669  }, e.prototype.mergeOption = function(t, a) {
8670    t = ut(this.option, t, true), this.fillDataTextStyle(t.data);
8671    var n = hl(this);
8672    n && an(this.option, t, n);
8673    var i = Ia(this).sourceManager;
8674    i.dirty(), i.prepareSource();
8675    var o = this.getInitialData(t, a);
8676    U_(o, this), this.dataTask.dirty(), this.dataTask.context.data = o, Ia(this).dataBeforeProcessed = o, W_(this), this._initSelectedMapFromData(o);
8677  }, e.prototype.fillDataTextStyle = function(t) {
8678    if (t && !ke(t)) for (var a = ["show"], n = 0; n < t.length; n++) t[n] && t[n].label && fi(t[n], "label", a);
8679  }, e.prototype.getInitialData = function(t, a) {
8680  }, e.prototype.appendData = function(t) {
8681    var a = this.getRawData();
8682    a.appendData(t.data);
8683  }, e.prototype.getData = function(t) {
8684    var a = Ad(this);
8685    if (a) {
8686      var n = a.context.data;
8687      return t == null || !n.getLinkedData ? n : n.getLinkedData(t);
8688    } else return Ia(this).data;
8689  }, e.prototype.getAllData = function() {
8690    var t = this.getData();
8691    return t && t.getLinkedDataAll ? t.getLinkedDataAll() : [{ data: t }];
8692  }, e.prototype.setData = function(t) {
8693    var a = Ad(this);
8694    if (a) {
8695      var n = a.context;
8696      n.outputData = t, a !== this.dataTask && (n.data = t);
8697    }
8698    Ia(this).data = t;
8699  }, e.prototype.getEncode = function() {
8700    var t = this.get("encode", true);
8701    if (t) return Z(t);
8702  }, e.prototype.getSourceManager = function() {
8703    return Ia(this).sourceManager;
8704  }, e.prototype.getSource = function() {
8705    return this.getSourceManager().getSource();
8706  }, e.prototype.getRawData = function() {
8707    return Ia(this).dataBeforeProcessed;
8708  }, e.prototype.getColorBy = function() {
8709    var t = this.get("colorBy");
8710    return t || "series";
8711  }, e.prototype.isColorBySeries = function() {
8712    return this.getColorBy() === "series";
8713  }, e.prototype.getBaseAxis = function() {
8714    var t = this.coordinateSystem;
8715    return t && t.getBaseAxis && t.getBaseAxis();
8716  }, e.prototype.formatTooltip = function(t, a, n) {
8717    return PA({ series: this, dataIndex: t, multipleSeries: a });
8718  }, e.prototype.isAnimationEnabled = function() {
8719    var t = this.ecModel;
8720    if (yt.node && !(t && t.ssr)) return false;
8721    var a = this.getShallow("animation");
8722    return a && this.getData().count() > this.getShallow("animationThreshold") && (a = false), !!a;
8723  }, e.prototype.restoreData = function() {
8724    this.dataTask.dirty();
8725  }, e.prototype.getColorFromPalette = function(t, a, n) {
8726    var i = this.ecModel, o = Sy.prototype.getColorFromPalette.call(this, t, a, n);
8727    return o || (o = i.getColorFromPalette(t, a, n)), o;
8728  }, e.prototype.coordDimToDataDim = function(t) {
8729    return this.getRawData().mapDimensionsAll(t);
8730  }, e.prototype.getProgressive = function() {
8731    return this.get("progressive");
8732  }, e.prototype.getProgressiveThreshold = function() {
8733    return this.get("progressiveThreshold");
8734  }, e.prototype.select = function(t, a) {
8735    this._innerSelect(this.getData(a), t);
8736  }, e.prototype.unselect = function(t, a) {
8737    var n = this.option.selectedMap;
8738    if (n) {
8739      var i = this.option.selectedMode, o = this.getData(a);
8740      if (i === "series" || n === "all") {
8741        this.option.selectedMap = {}, this._selectedDataIndicesMap = {};
8742        return;
8743      }
8744      for (var s = 0; s < t.length; s++) {
8745        var l = t[s], u = _u(o, l);
8746        n[u] = false, this._selectedDataIndicesMap[u] = -1;
8747      }
8748    }
8749  }, e.prototype.toggleSelect = function(t, a) {
8750    for (var n = [], i = 0; i < t.length; i++) n[0] = t[i], this.isSelected(t[i], a) ? this.unselect(n, a) : this.select(n, a);
8751  }, e.prototype.getSelectedDataIndices = function() {
8752    if (this.option.selectedMap === "all") return [].slice.call(this.getData().getIndices());
8753    for (var t = this._selectedDataIndicesMap, a = _t(t), n = [], i = 0; i < a.length; i++) {
8754      var o = t[a[i]];
8755      o >= 0 && n.push(o);
8756    }
8757    return n;
8758  }, e.prototype.isSelected = function(t, a) {
8759    var n = this.option.selectedMap;
8760    if (!n) return false;
8761    var i = this.getData(a);
8762    return (n === "all" || n[_u(i, t)]) && !i.getItemModel(t).get(["select", "disabled"]);
8763  }, e.prototype.isUniversalTransitionEnabled = function() {
8764    if (this[vf]) return true;
8765    var t = this.option.universalTransition;
8766    return t ? t === true ? true : t && t.enabled : false;
8767  }, e.prototype._innerSelect = function(t, a) {
8768    var n, i, o = this.option, s = o.selectedMode, l = a.length;
8769    if (!(!s || !l)) {
8770      if (s === "series") o.selectedMap = "all";
8771      else if (s === "multiple") {
8772        tt(o.selectedMap) || (o.selectedMap = {});
8773        for (var u = o.selectedMap, f = 0; f < l; f++) {
8774          var h = a[f], v = _u(t, h);
8775          u[v] = true, this._selectedDataIndicesMap[v] = t.getRawIndex(h);
8776        }
8777      } else if (s === "single" || s === true) {
8778        var c = a[l - 1], v = _u(t, c);
8779        o.selectedMap = (n = {}, n[v] = true, n), this._selectedDataIndicesMap = (i = {}, i[v] = t.getRawIndex(c), i);
8780      }
8781    }
8782  }, e.prototype._initSelectedMapFromData = function(t) {
8783    if (!this.option.selectedMap) {
8784      var a = [];
8785      t.hasItemOption && t.each(function(n) {
8786        var i = t.getRawDataItem(n);
8787        i && i.selected && a.push(n);
8788      }), a.length > 0 && this._innerSelect(t, a);
8789    }
8790  }, e.registerClass = function(t) {
8791    return gt.registerClass(t);
8792  }, e.protoInitialize = function() {
8793    var t = e.prototype;
8794    t.type = "series.__base__", t.seriesIndex = 0, t.ignoreStyleOnData = false, t.hasSymbolVisual = false, t.defaultSymbol = "circle", t.visualStyleAccessPath = "itemStyle", t.visualDrawType = "fill";
8795  }(), e;
8796}(gt);
8797Xt(Et, Yh);
8798Xt(Et, Sy);
8799rC(Et, gt);
8800function W_(r) {
8801  var e = r.name;
8802  Yg(r) || (r.name = FO(r) || e);
8803}
8804function FO(r) {
8805  var e = r.getRawData(), t = e.mapDimensionsAll("seriesName"), a = [];
8806  return D(t, function(n) {
8807    var i = e.getDimensionInfo(n);
8808    i.displayName && a.push(i.displayName);
8809  }), a.join(" ");
8810}
8811function HO(r) {
8812  return r.model.getRawData().count();
8813}
8814function WO(r) {
8815  var e = r.model;
8816  return e.setData(e.getRawData().cloneShallow()), UO;
8817}
8818function UO(r, e) {
8819  e.outputData && r.end > e.outputData.count() && e.model.getRawData().cloneShallow(e.outputData);
8820}
8821function U_(r, e) {
8822  D(go(r.CHANGABLE_METHODS, r.DOWNSAMPLE_METHODS), function(t) {
8823    r.wrapMethod(t, lt(YO, e));
8824  });
8825}
8826function YO(r, e) {
8827  var t = Ad(r);
8828  return t && t.setOutputEnd((e || this).count()), e;
8829}
8830function Ad(r) {
8831  var e = (r.ecModel || {}).scheduler, t = e && e.getPipeline(r.uid);
8832  if (t) {
8833    var a = t.currentTask;
8834    if (a) {
8835      var n = a.agentStubMap;
8836      n && (a = n.get(r.uid));
8837    }
8838    return a;
8839  }
8840}
8841var Vt = function() {
8842  function r() {
8843    this.group = new at(), this.uid = No("viewComponent");
8844  }
8845  return r.prototype.init = function(e, t) {
8846  }, r.prototype.render = function(e, t, a, n) {
8847  }, r.prototype.dispose = function(e, t) {
8848  }, r.prototype.updateView = function(e, t, a, n) {
8849  }, r.prototype.updateLayout = function(e, t, a, n) {
8850  }, r.prototype.updateVisual = function(e, t, a, n) {
8851  }, r.prototype.toggleBlurSeries = function(e, t, a) {
8852  }, r.prototype.eachRendered = function(e) {
8853    var t = this.group;
8854    t && t.traverse(e);
8855  }, r;
8856}();
8857Xg(Vt);
8858Ih(Vt);
8859function Go() {
8860  var r = bt();
8861  return function(e) {
8862    var t = r(e), a = e.pipelineContext, n = !!t.large, i = !!t.progressiveRender, o = t.large = !!(a && a.large), s = t.progressiveRender = !!(a && a.progressiveRender);
8863    return (n !== o || i !== s) && "reset";
8864  };
8865}
8866var RA = bt(), $O = Go(), Pt = function() {
8867  function r() {
8868    this.group = new at(), this.uid = No("viewChart"), this.renderTask = Xs({ plan: XO, reset: ZO }), this.renderTask.context = { view: this };
8869  }
8870  return r.prototype.init = function(e, t) {
8871  }, r.prototype.render = function(e, t, a, n) {
8872  }, r.prototype.highlight = function(e, t, a, n) {
8873    var i = e.getData(n && n.dataType);
8874    i && $_(i, n, "emphasis");
8875  }, r.prototype.downplay = function(e, t, a, n) {
8876    var i = e.getData(n && n.dataType);
8877    i && $_(i, n, "normal");
8878  }, r.prototype.remove = function(e, t) {
8879    this.group.removeAll();
8880  }, r.prototype.dispose = function(e, t) {
8881  }, r.prototype.updateView = function(e, t, a, n) {
8882    this.render(e, t, a, n);
8883  }, r.prototype.updateLayout = function(e, t, a, n) {
8884    this.render(e, t, a, n);
8885  }, r.prototype.updateVisual = function(e, t, a, n) {
8886    this.render(e, t, a, n);
8887  }, r.prototype.eachRendered = function(e) {
8888    un(this.group, e);
8889  }, r.markUpdateMethod = function(e, t) {
8890    RA(e).updateMethod = t;
8891  }, r.protoInitialize = function() {
8892    var e = r.prototype;
8893    e.type = "chart";
8894  }(), r;
8895}();
8896function Y_(r, e, t) {
8897  r && ll(r) && (e === "emphasis" ? ma : _a)(r, t);
8898}
8899function $_(r, e, t) {
8900  var a = hi(r, e), n = e && e.highlightKey != null ? PE(e.highlightKey) : null;
8901  a != null ? D(Rt(a), function(i) {
8902    Y_(r.getItemGraphicEl(i), t, n);
8903  }) : r.eachItemGraphicEl(function(i) {
8904    Y_(i, t, n);
8905  });
8906}
8907Xg(Pt);
8908Ih(Pt);
8909function XO(r) {
8910  return $O(r.model);
8911}
8912function ZO(r) {
8913  var e = r.model, t = r.ecModel, a = r.api, n = r.payload, i = e.pipelineContext.progressiveRen
8913der, o = r.view, s = n && RA(n).updateMethod, l = i ? "incrementalPrepareRender" : s && o[s] ? s : "render";
8914  return l !== "render" && o[l](e, t, a, n), qO[l];
8915}
8916var qO = { incrementalPrepareRender: { progress: function(r, e) {
8917  e.view.incrementalRender(r, e.model, e.ecModel, e.api, e.payload);
8918} }, render: { forceFirstProgress: true, progress: function(r, e) {
8919  e.view.render(e.model, e.ecModel, e.api, e.payload);
8920} } }, Vf = "\0__throttleOriginMethod", X_ = "\0__throttleRate", Z_ = "\0__throttleType";
8921function Xh(r, e, t) {
8922  var a, n = 0, i = 0, o = null, s, l, u, f;
8923  e = e || 0;
8924  function h() {
8925    i = (/* @__PURE__ */ new Date()).getTime(), o = null, r.apply(l, u || []);
8926  }
8927  var v = function() {
8928    for (var c = [], p = 0; p < arguments.length; p++) c[p] = arguments[p];
8929    a = (/* @__PURE__ */ new Date()).getTime(), l = this, u = c;
8930    var d = f || e, g = f || t;
8931    f = null, s = a - (g ? n : i) - d, clearTimeout(o), g ? o = setTimeout(h, d) : s >= 0 ? h() : o = setTimeout(h, -s), n = a;
8932  };
8933  return v.clear = function() {
8934    o && (clearTimeout(o), o = null);
8935  }, v.debounceNextCall = function(c) {
8936    f = c;
8937  }, v;
8938}
8939function Fo(r, e, t, a) {
8940  var n = r[e];
8941  if (n) {
8942    var i = n[Vf] || n, o = n[Z_], s = n[X_];
8943    if (s !== t || o !== a) {
8944      if (t == null || !a) return r[e] = i;
8945      n = r[e] = Xh(i, t, a === "debounce"), n[Vf] = i, n[Z_] = a, n[X_] = t;
8946    }
8947    return n;
8948  }
8949}
8950function cl(r, e) {
8951  var t = r[e];
8952  t && t[Vf] && (t.clear && t.clear(), r[e] = t[Vf]);
8953}
8954var q_ = bt(), K_ = { itemStyle: vi(FC, true), lineStyle: vi(GC, true) }, KO = { lineStyle: "stroke", itemStyle: "fill" };
8955function EA(r, e) {
8956  var t = r.visualStyleMapper || K_[e];
8957  return t || (console.warn("Unknown style type '" + e + "'."), K_.itemStyle);
8958}
8959function kA(r, e) {
8960  var t = r.visualDrawType || KO[e];
8961  return t || (console.warn("Unknown style type '" + e + "'."), "fill");
8962}
8963var jO = { createOnAllSeries: true, performRawSeries: true, reset: function(r, e) {
8964  var t = r.getData(), a = r.visualStyleAccessPath || "itemStyle", n = r.getModel(a), i = EA(r, a), o = i(n), s = n.getShallow("decal");
8965  s && (t.setVisual("decal", s), s.dirty = true);
8966  var l = kA(r, a), u = o[l], f = j(u) ? u : null, h = o.fill === "auto" || o.stroke === "auto";
8967  if (!o[l] || f || h) {
8968    var v = r.getColorFromPalette(r.name, null, e.getSeriesCount());
8969    o[l] || (o[l] = v, t.setVisual("colorFromPalette", true)), o.fill = o.fill === "auto" || j(o.fill) ? v : o.fill, o.stroke = o.stroke === "auto" || j(o.stroke) ? v : o.stroke;
8970  }
8971  if (t.setVisual("style", o), t.setVisual("drawType", l), !e.isSeriesFiltered(r) && f) return t.setVisual("colorFromPalette", false), { dataEach: function(c, p) {
8972    var d = r.getDataParams(p), g = z({}, o);
8973    g[l] = f(d), c.setItemVisual(p, "style", g);
8974  } };
8975} }, as = new At(), JO = { createOnAllSeries: true, performRawSeries: true, reset: function(r, e) {
8976  if (!(r.ignoreStyleOnData || e.isSeriesFiltered(r))) {
8977    var t = r.getData(), a = r.visualStyleAccessPath || "itemStyle", n = EA(r, a), i = t.getVisual("drawType");
8978    return { dataEach: t.hasItemOption ? function(o, s) {
8979      var l = o.getRawDataItem(s);
8980      if (l && l[a]) {
8981        as.option = l[a];
8982        var u = n(as), f = o.ensureUniqueItemVisual(s, "style");
8983        z(f, u), as.option.decal && (o.setItemVisual(s, "decal", as.option.decal), as.option.decal.dirty = true), i in u && o.setItemVisual(s, "colorFromPalette", false);
8984      }
8985    } : null };
8986  }
8987} }, QO = { performRawSeries: true, overallReset: function(r) {
8988  var e = Z();
8989  r.eachSeries(function(t) {
8990    var a = t.getColorBy();
8991    if (!t.isColorBySeries()) {
8992      var n = t.type + "-" + a, i = e.get(n);
8993      i || (i = {}, e.set(n, i)), q_(t).scope = i;
8994    }
8995  }), r.eachSeries(function(t) {
8996    if (!(t.isColorBySeries() || r.isSeriesFiltered(t))) {
8997      var a = t.getRawData(), n = {}, i = t.getData(), o = q_(t).scope, s = t.visualStyleAccessPath || "itemStyle", l = kA(t, s);
8998      i.each(function(u) {
8999        var f = i.getRawIndex(u);
9000        n[f] = u;
9001      }), a.each(function(u) {
9002        var f = n[u], h = i.getItemVisual(f, "colorFromPalette");
9003        if (h) {
9004          var v = i.ensureUniqueItemVisual(f, "style"), c = a.getName(u) || u + "", p = a.count();
9005          v[l] = t.getColorFromPalette(c, o, p);
9006        }
9007      });
9008    }
9009  });
9010} }, Su = Math.PI;
9011function tN(r, e) {
9012  e = e || {}, Q(e, { text: "loading", textColor: "#000", fontSize: 12, fontWeight: "normal", fontStyle: "normal", fontFamily: "sans-serif", maskColor: "rgba(255, 255, 255, 0.8)", showSpinner: true, color: "#5470c6", spinnerRadius: 10, lineWidth: 5, zlevel: 0 });
9013  var t = new at(), a = new xt({ style: { fill: e.maskColor }, zlevel: e.zlevel, z: 1e4 });
9014  t.add(a);
9015  var n = new St({ style: { text: e.text, fill: e.textColor, fontSize: e.fontSize, fontWeight: e.fontWeight, fontStyle: e.fontStyle, fontFamily: e.fontFamily }, zlevel: e.zlevel, z: 10001 }), i = new xt({ style: { fill: "none" }, textContent: n, textConfig: { position: "right", distance: 10 }, zlevel: e.zlevel, z: 10001 });
9016  t.add(i);
9017  var o;
9018  return e.showSpinner && (o = new Bl({ shape: { startAngle: -Su / 2, endAngle: -Su / 2 + 0.1, r: e.spinnerRadius }, style: { stroke: e.color, lineCap: "round", lineWidth: e.lineWidth }, zlevel: e.zlevel, z: 10001 }), o.animateShape(true).when(1e3, { endAngle: Su * 3 / 2 }).start("circularInOut"), o.animateShape(true).when(1e3, { startAngle: Su * 3 / 2 }).delay(300).start("circularInOut"), t.add(o)), t.resize = function() {
9019    var s = n.getBoundingRect().width, l = e.showSpinner ? e.spinnerRadius : 0, u = (r.getWidth() - l * 2 - (e.showSpinner && s ? 10 : 0) - s) / 2 - (e.showSpinner && s ? 0 : 5 + s / 2) + (e.showSpinner ? 0 : s / 2) + (s ? 0 : l), f = r.getHeight() / 2;
9020    e.showSpinner && o.setShape({ cx: u, cy: f }), i.setShape({ x: u - l, y: f - l, width: l * 2, height: l * 2 }), a.setShape({ x: 0, y: 0, width: r.getWidth(), height: r.getHeight() });
9021  }, t.resize(), t;
9022}
9023var OA = function() {
9024  function r(e, t, a, n) {
9025    this._stageTaskMap = Z(), this.ecInstance = e, this.api = t, a = this._dataProcessorHandlers = a.slice(), n = this._visualHandlers = n.slice(), this._allHandlers = a.concat(n);
9026  }
9027  return r.prototype.restoreData = function(e, t) {
9028    e.restoreData(t), this._stageTaskMap.each(function(a) {
9029      var n = a.overallTask;
9030      n && n.dirty();
9031    });
9032  }, r.prototype.getPerformArgs = function(e, t) {
9033    if (e.__pipeline) {
9034      var a = this._pipelineMap.get(e.__pipeline.id), n = a.context, i = !t && a.progressiveEnabled && (!n || n.progressiveRender) && e.__idxInPipeline > a.blockIndex, o = i ? a.step : null, s = n && n.modDataCount, l = s != null ? Math.ceil(s / o) : null;
9035      return { step: o, modBy: l, modDataCount: s };
9036    }
9037  }, r.prototype.getPipeline = function(e) {
9038    return this._pipelineMap.get(e);
9039  }, r.prototype.updateStreamModes = function(e, t) {
9040    var a = this._pipelineMap.get(e.uid), n = e.getData(), i = n.count(), o = a.progressiveEnabled && t.incrementalPrepareRender && i >= a.threshold, s = e.get("large") && i >= e.get("largeThreshold"), l = e.get("progressiveChunkMode") === "mod" ? i : null;
9041    e.pipelineContext = a.context = { progressiveRender: o, modDataCount: l, large: s };
9042  }, r.prototype.restorePipelines = function(e) {
9043    var t = this, a = t._pipelineMap = Z();
9044    e.eachSeries(function(n) {
9045      var i = n.getProgressive(), o = n.uid;
9046      a.set(o, { id: o, head: null, tail: null, threshold: n.getProgressiveThreshold(), progressiveEnabled: i && !(n.preventIncremental && n.preventIncremental()), blockIndex: -1, step: Math.round(i || 700), count: 0 }), t._pipe(n, n.dataTask);
9047    });
9048  }, r.prototype.prepareStageTasks = function() {
9049    var e = this._stageTaskMap, t = this.api.getModel(), a = this.api;
9050    D(this._allHandlers, function(n) {
9051      var i = e.get(n.uid) || e.set(n.uid, {}), o = "";
9052      we(!(n.reset && n.overallReset), o), n.reset && this._createSeriesStageTask(n, i, t, a), n.overallReset && this._createOverallStageTask(n, i, t, a);
9053    }, this);
9054  }, r.prototype.prepareView = function(e, t, a, n) {
9055    var i = e.renderTask, o = i.context;
9056    o.model = t, o.ecModel = a, o.api = n, i.__block = !e.incrementalPrepareRender, this._pipe(t, i);
9057  }, r.prototype.performDataProcessorTasks = function(e, t) {
9058    this._performStageTasks(this._dataProcessorHandlers, e, t, { block: true });
9059  }, r.prototype.performVisualTasks = function(e, t, a) {
9060    this._performStageTasks(this._visualHandlers, e, t, a);
9061  }, r.prototype._performStageTasks = function(e, t, a, n) {
9062    n = n || {};
9063    var i = false, o = this;
9064    D(e, function(l, u) {
9065      if (!(n.visualType && n.visualType !== l.visualType)) {
9066        var f = o._stageTaskMap.get(l.uid), h = f.seriesTaskMap, v = f.overallTask;
9067        if (v) {
9068          var c, p = v.agentStubMap;
9069          p.each(function(g) {
9070            s(n, g) && (g.dirty(), c = true);
9071          }), c && v.dirty(), o.updatePayload(v, a);
9072          var d = o.getPerformArgs(v, n.block);
9073          p.each(function(g) {
9074            g.perform(d);
9075          }), v.perform(d) && (i = true);
9076        } else h && h.each(function(g, y) {
9077          s(n, g) && g.dirty();
9078          var m = o.getPerformArgs(g, n.block);
9079          m.skip = !l.performRawSeries && t.isSeriesFiltered(g.context.model), o.updatePayload(g, a), g.perform(m) && (i = true);
9080        });
9081      }
9082    });
9083    function s(l, u) {
9084      return l.setDirty && (!l.dirtyMap || l.dirtyMap.get(u.__pipeline.id));
9085    }
9086    this.unfinished = i || this.unfinished;
9087  }, r.prototype.performSeriesTasks = function(e) {
9088    var t;
9089    e.eachSeries(function(a) {
9090      t = a.dataTask.perform() || t;
9091    }), this.unfinished = t || this.unfinished;
9092  }, r.prototype.plan = function() {
9093    this._pipelineMap.each(function(e) {
9094      var t = e.tail;
9095      do {
9096        if (t.__block) {
9097          e.blockIndex = t.__idxInPipeline;
9098          break;
9099        }
9100        t = t.getUpstream();
9101      } while (t);
9102    });
9103  }, r.prototype.updatePayload = function(e, t) {
9104    t !== "remain" && (e.context.payload = t);
9105  }, r.prototype._createSeriesStageTask = function(e, t, a, n) {
9106    var i = this, o = t.seriesTaskMap, s = t.seriesTaskMap = Z(), l = e.seriesType, u = e.getTargetSeries;
9107    e.createOnAllSeries ? a.eachRawSeries(f) : l ? a.eachRawSeriesByType(l, f) : u && u(a, n).each(f);
9108    function f(h) {
9109      var v = h.uid, c = s.set(v, o && o.get(v) || Xs({ plan: iN, reset: oN, count: lN }));
9110      c.context = { model: h, ecModel: a, api: n, useClearVisual: e.isVisual && !e.isLayout, plan: e.plan, reset: e.reset, scheduler: i }, i._pipe(h, c);
9111    }
9112  }, r.prototype._createOverallStageTask = function(e, t, a, n) {
9113    var i = this, o = t.overallTask = t.overallTask || Xs({ reset: eN });
9114    o.context = { ecModel: a, api: n, overallReset: e.overallReset, scheduler: i };
9115    var s = o.agentStubMap, l = o.agentStubMap = Z(), u = e.seriesType, f = e.getTargetSeries, h = true, v = false, c = "";
9116    we(!e.createOnAllSeries, c), u ? a.eachRawSeriesByType(u, p) : f ? f(a, n).each(p) : (h = false, D(a.getSeries(), p));
9117    function p(d) {
9118      var g = d.uid, y = l.set(g, s && s.get(g) || (v = true, Xs({ reset: rN, onDirty: nN })));
9119      y.context = { model: d, overallProgress: h }, y.agent = o, y.__block = h, i._pipe(d, y);
9120    }
9121    v && o.dirty();
9122  }, r.prototype._pipe = function(e, t) {
9123    var a = e.uid, n = this._pipelineMap.get(a);
9124    !n.head && (n.head = t), n.tail && n.tail.pipe(t), n.tail = t, t.__idxInPipeline = n.count++, t.__pipeline = n;
9125  }, r.wrapStageHandler = function(e, t) {
9126    return j(e) && (e = { overallReset: e, seriesType: uN(e) }), e.uid = No("stageHandler"), t && (e.visualType = t), e;
9127  }, r;
9128}();
9129function eN(r) {
9130  r.overallReset(r.ecModel, r.api, r.payload);
9131}
9132function rN(r) {
9133  return r.overallProgress && aN;
9134}
9135function aN() {
9136  this.agent.dirty(), this.getDownstream().dirty();
9137}
9138function nN() {
9139  this.agent && this.agent.dirty();
9140}
9141function iN(r) {
9142  return r.plan ? r.plan(r.model, r.ecModel, r.api, r.payload) : null;
9143}
9144function oN(r) {
9145  r.useClearVisual && r.data.clearAllVisual();
9146  var e = r.resetDefines = Rt(r.reset(r.model, r.ecModel, r.api, r.payload));
9147  return e.length > 1 ? G(e, function(t, a) {
9148    return NA(a);
9149  }) : sN;
9150}
9151var sN = NA(0);
9152function NA(r) {
9153  return function(e, t) {
9154    var a = t.data, n = t.resetDefines[r];
9155    if (n && n.dataEach) for (var i = e.start; i < e.end; i++) n.dataEach(a, i);
9156    else n && n.progress && n.progress(e, a);
9157  };
9158}
9159function lN(r) {
9160  return r.data.count();
9161}
9162function uN(r) {
9163  Gf = null;
9164  try {
9165    r(pl, BA);
9166  } catch {
9167  }
9168  return Gf;
9169}
9170var pl = {}, BA = {}, Gf;
9171zA(pl, xy);
9172zA(BA, lA);
9173pl.eachSeriesByType = pl.eachRawSeriesByType = function(r) {
9174  Gf = r;
9175};
9176pl.eachComponent = function(r) {
9177  r.mainType === "series" && r.subType && (Gf = r.subType);
9178};
9179function zA(r, e) {
9180  for (var t in e.prototype) r[t] = $t;
9181}
9182var j_ = ["#37A2DA", "#32C5E9", "#67E0E3", "#9FE6B8", "#FFDB5C", "#ff9f7f", "#fb7293", "#E062AE", "#E690D1", "#e7bcf3", "#9d96f5", "#8378EA", "#96BFFF"];
9183const fN = { color: j_, colorLayer: [["#37A2DA", "#ffd85c", "#fd7b5f"], ["#37A2DA", "#67E0E3", "#FFDB5C", "#ff9f7f", "#E062AE", "#9d96f5"], ["#37A2DA", "#32C5E9", "#9FE6B8", "#FFDB5C", "#ff9f7f", "#fb7293", "#e7bcf3", "#8378EA", "#96BFFF"], j_] };
9184var me = "#B9B8CE", J_ = "#100C2A", xu = function() {
9185  return { axisLine: { lineStyle: { color: me } }, splitLine: { lineStyle: { color: "#484753" } }, splitArea: { areaStyle: { color: ["rgba(255,255,255,0.02)", "rgba(255,255,255,0.05)"] } }, minorSplitLine: { lineStyle: { color: "#20203B" } } };
9186}, Q_ = ["#4992ff", "#7cffb2", "#fddd60", "#ff6e76", "#58d9f9", "#05c091", "#ff8a45", "#8d48e3", "#dd79ff"], VA = { darkMode: true, color: Q_, backgroundColor: J_, axisPointer: { lineStyle: { color: "#817f91" }, crossStyle: { color: "#817f91" }, label: { color: "#fff" } }, legend: { textStyle: { color: me }, pageTextStyle: { color: me } }, textStyle: { color: me }, title: { textStyle: { color: "#EEF1FA" }, subtextStyle: { color: "#B9B8CE" } }, toolbox: { iconStyle: { borderColor: me } }, dataZoom: { borderColor: "#71708A", textStyle: { color: me }, brushStyle: { color: "rgba(135,163,206,0.3)" }, handleStyle: { color: "#353450", borderColor: "#C5CBE3" }, moveHandleStyle: { color: "#B0B6C3", opacity: 0.3 }, fillerColor: "rgba(135,163,206,0.2)", emphasis: { handleStyle: { borderColor: "#91B7F2", color: "#4D587D" }, moveHandleStyle: { color: "#636D9A", opacity: 0.7 } }, dataBackground: { lineStyle: { color: "#71708A", width: 1 }, areaStyle: { color: "#71708A" } }, selectedDataBackground: { lineStyle: { color: "#87A3CE" }, areaStyle: { color: "#87A3CE" } } }, visualMap: { textStyle: { color: me } }, timeline: { lineStyle: { color: me }, label: { color: me }, controlStyle: { color: me, borderColor: me } }, calendar: { itemStyle: { color: J_ }, dayLabel: { color: me }, monthLabel: { color: me }, yearLabel: { color: me } }, timeAxis: xu(), logAxis: xu(), valueAxis: xu(), categoryAxis: xu(), line: { symbol: "circle" }, graph: { color: Q_ }, gauge: { title: { color: me }
9186, axisLine: { lineStyle: { color: [[1, "rgba(207,212,219,0.2)"]] } }, axisLabel: { color: me }, detail: { color: "#EEF1FA" } }, candlestick: { itemStyle: { color: "#f64e56", color0: "#54ea92", borderColor: "#f64e56", borderColor0: "#54ea92" } } };
9187VA.categoryAxis.splitLine.show = false;
9188var hN = function() {
9189  function r() {
9190  }
9191  return r.prototype.normalizeQuery = function(e) {
9192    var t = {}, a = {}, n = {};
9193    if (Y(e)) {
9194      var i = Yr(e);
9195      t.mainType = i.main || null, t.subType = i.sub || null;
9196    } else {
9197      var o = ["Index", "Name", "Id"], s = { name: 1, dataIndex: 1, dataType: 1 };
9198      D(e, function(l, u) {
9199        for (var f = false, h = 0; h < o.length; h++) {
9200          var v = o[h], c = u.lastIndexOf(v);
9201          if (c > 0 && c === u.length - v.length) {
9202            var p = u.slice(0, c);
9203            p !== "data" && (t.mainType = p, t[v.toLowerCase()] = l, f = true);
9204          }
9205        }
9206        s.hasOwnProperty(u) && (a[u] = l, f = true), f || (n[u] = l);
9207      });
9208    }
9209    return { cptQuery: t, dataQuery: a, otherQuery: n };
9210  }, r.prototype.filter = function(e, t) {
9211    var a = this.eventInfo;
9212    if (!a) return true;
9213    var n = a.targetEl, i = a.packedEvent, o = a.model, s = a.view;
9214    if (!o || !s) return true;
9215    var l = t.cptQuery, u = t.dataQuery;
9216    return f(l, o, "mainType") && f(l, o, "subType") && f(l, o, "index", "componentIndex") && f(l, o, "name") && f(l, o, "id") && f(u, i, "name") && f(u, i, "dataIndex") && f(u, i, "dataType") && (!s.filterForExposedEvent || s.filterForExposedEvent(e, t.otherQuery, n, i));
9217    function f(h, v, c, p) {
9218      return h[c] == null || v[p || c] === h[c];
9219    }
9220  }, r.prototype.afterTrigger = function() {
9221    this.eventInfo = null;
9222  }, r;
9223}(), Dd = ["symbol", "symbolSize", "symbolRotate", "symbolOffset"], t1 = Dd.concat(["symbolKeepAspect"]), vN = { createOnAllSeries: true, performRawSeries: true, reset: function(r, e) {
9224  var t = r.getData();
9225  if (r.legendIcon && t.setVisual("legendIcon", r.legendIcon), !r.hasSymbolVisual) return;
9226  for (var a = {}, n = {}, i = false, o = 0; o < Dd.length; o++) {
9227    var s = Dd[o], l = r.get(s);
9228    j(l) ? (i = true, n[s] = l) : a[s] = l;
9229  }
9230  if (a.symbol = a.symbol || r.defaultSymbol, t.setVisual(z({ legendIcon: r.legendIcon || a.symbol, symbolKeepAspect: r.get("symbolKeepAspect") }, a)), e.isSeriesFiltered(r)) return;
9231  var u = _t(n);
9232  function f(h, v) {
9233    for (var c = r.getRawValue(v), p = r.getDataParams(v), d = 0; d < u.length; d++) {
9234      var g = u[d];
9235      h.setItemVisual(v, g, n[g](c, p));
9236    }
9237  }
9238  return { dataEach: i ? f : null };
9239} }, cN = { createOnAllSeries: true, performRawSeries: true, reset: function(r, e) {
9240  if (!r.hasSymbolVisual || e.isSeriesFiltered(r)) return;
9241  var t = r.getData();
9242  function a(n, i) {
9243    for (var o = n.getItemModel(i), s = 0; s < t1.length; s++) {
9244      var l = t1[s], u = o.getShallow(l, true);
9245      u != null && n.setItemVisual(i, l, u);
9246    }
9247  }
9248  return { dataEach: t.hasItemOption ? a : null };
9249} };
9250function Ay(r, e, t) {
9251  switch (t) {
9252    case "color":
9253      var a = r.getItemVisual(e, "style");
9254      return a[r.getVisual("drawType")];
9255    case "opacity":
9256      return r.getItemVisual(e, "style").opacity;
9257    case "symbol":
9258    case "symbolSize":
9259    case "liftZ":
9260      return r.getItemVisual(e, t);
9261  }
9262}
9263function Fl(r, e) {
9264  switch (e) {
9265    case "color":
9266      var t = r.getVisual("style");
9267      return t[r.getVisual("drawType")];
9268    case "opacity":
9269      return r.getVisual("style").opacity;
9270    case "symbol":
9271    case "symbolSize":
9272    case "liftZ":
9273      return r.getVisual(e);
9274  }
9275}
9276function GA(r, e, t, a) {
9277  switch (t) {
9278    case "color":
9279      var n = r.ensureUniqueItemVisual(e, "style");
9280      n[r.getVisual("drawType")] = a, r.setItemVisual(e, "colorFromPalette", false);
9281      break;
9282    case "opacity":
9283      r.ensureUniqueItemVisual(e, "style").opacity = a;
9284      break;
9285    case "symbol":
9286    case "symbolSize":
9287    case "liftZ":
9288      r.setItemVisual(e, t, a);
9289      break;
9290  }
9291}
9292function FA(r, e) {
9293  function t(a, n) {
9294    var i = [];
9295    return a.eachComponent({ mainType: "series", subType: r, query: n }, function(o) {
9296      i.push(o.seriesIndex);
9297    }), i;
9298  }
9299  D([[r + "ToggleSelect", "toggleSelect"], [r + "Select", "select"], [r + "UnSelect", "unselect"]], function(a) {
9300    e(a[0], function(n, i, o) {
9301      n = z({}, n), o.dispatchAction(z(n, { type: a[1], seriesIndex: t(i, n) }));
9302    });
9303  });
9304}
9305function Vi(r, e, t, a, n) {
9306  var i = r + e;
9307  t.isSilent(i) || a.eachComponent({ mainType: "series", subType: "pie" }, function(o) {
9308    for (var s = o.seriesIndex, l = o.option.selectedMap, u = n.selected, f = 0; f < u.length; f++) if (u[f].seriesIndex === s) {
9309      var h = o.getData(), v = hi(h, n.fromActionPayload);
9310      t.trigger(i, { type: i, seriesId: o.id, name: V(v) ? h.getName(v[0]) : h.getName(v), selected: Y(l) ? l : z({}, l) });
9311    }
9312  });
9313}
9314function pN(r, e, t) {
9315  r.on("selectchanged", function(a) {
9316    var n = t.getModel();
9317    a.isFromClick ? (Vi("map", "selectchanged", e, n, a), Vi("pie", "selectchanged", e, n, a)) : a.fromAction === "select" ? (Vi("map", "selected", e, n, a), Vi("pie", "selected", e, n, a)) : a.fromAction === "unselect" && (Vi("map", "unselected", e, n, a), Vi("pie", "unselected", e, n, a));
9318  });
9319}
9320function jn(r, e, t) {
9321  for (var a; r && !(e(r) && (a = r, t)); ) r = r.__hostTarget || r.parent;
9322  return a;
9323}
9324var dN = Math.round(Math.random() * 9), gN = typeof Object.defineProperty == "function", yN = function() {
9325  function r() {
9326    this._id = "__ec_inner_" + dN++;
9327  }
9328  return r.prototype.get = function(e) {
9329    return this._guard(e)[this._id];
9330  }, r.prototype.set = function(e, t) {
9331    var a = this._guard(e);
9332    return gN ? Object.defineProperty(a, this._id, { value: t, enumerable: false, configurable: true }) : a[this._id] = t, this;
9333  }, r.prototype.delete = function(e) {
9334    return this.has(e) ? (delete this._guard(e)[this._id], true) : false;
9335  }, r.prototype.has = function(e) {
9336    return !!this._guard(e)[this._id];
9337  }, r.prototype._guard = function(e) {
9338    if (e !== Object(e)) throw TypeError("Value of WeakMap is not a non-null object.");
9339    return e;
9340  }, r;
9341}(), mN = mt.extend({ type: "triangle", shape: { cx: 0, cy: 0, width: 0, height: 0 }, buildPath: function(r, e) {
9342  var t = e.cx, a = e.cy, n = e.width / 2, i = e.height / 2;
9343  r.moveTo(t, a - i), r.lineTo(t + n, a + i), r.lineTo(t - n, a + i), r.closePath();
9344} }), _N = mt.extend({ type: "diamond", shape: { cx: 0, cy: 0, width: 0, height: 0 }, buildPath: function(r, e) {
9345  var t = e.cx, a = e.cy, n = e.width / 2, i = e.height / 2;
9346  r.moveTo(t, a - i), r.lineTo(t + n, a), r.lineTo(t, a + i), r.lineTo(t - n, a), r.closePath();
9347} }), SN = mt.extend({ type: "pin", shape: { x: 0, y: 0, width: 0, height: 0 }, buildPath: function(r, e) {
9348  var t = e.x, a = e.y, n = e.width / 5 * 3, i = Math.max(n, e.height), o = n / 2, s = o * o / (i - o), l = a - i + o + s, u = Math.asin(s / o), f = Math.cos(u) * o, h = Math.sin(u), v = Math.cos(u), c = o * 0.6, p = o * 0.7;
9349  r.moveTo(t - f, l + s), r.arc(t, l, o, Math.PI - u, Math.PI * 2 + u), r.bezierCurveTo(t + f - h * c, l + s + v * c, t, a - p, t, a), r.bezierCurveTo(t, a - p, t - f + h * c, l + s + v * c, t - f, l + s), r.closePath();
9350} }), xN = mt.extend({ type: "arrow", shape: { x: 0, y: 0, width: 0, height: 0 }, buildPath: function(r, e) {
9351  var t = e.height, a = e.width, n = e.x, i = e.y, o = a / 3 * 2;
9352  r.moveTo(n, i), r.lineTo(n + o, i + t), r.lineTo(n, i + t / 4 * 3), r.lineTo(n - o, i + t), r.lineTo(n, i), r.closePath();
9353} }), bN = { line: ee, rect: xt, roundRect: xt, square: xt, circle: ea, diamond: _N, pin: SN, arrow: xN, triangle: mN }, wN = { line: function(r, e, t, a, n) {
9354  n.x1 = r, n.y1 = e + a / 2, n.x2 = r + t, n.y2 = e + a / 2;
9355}, rect: function(r, e, t, a, n) {
9356  n.x = r, n.y = e, n.width = t, n.height = a;
9357}, roundRect: function(r, e, t, a, n) {
9358  n.x = r, n.y = e, n.width = t, n.height = a, n.r = Math.min(t, a) / 4;
9359}, square: function(r, e, t, a, n) {
9360  var i = Math.min(t, a);
9361  n.x = r, n.y = e, n.width = i, n.height = i;
9362}, circle: function(r, e, t, a, n) {
9363  n.cx = r + t / 2, n.cy = e + a / 2, n.r = Math.min(t, a) / 2;
9364}, diamond: function(r, e, t, a, n) {
9365  n.cx = r + t / 2, n.cy = e + a / 2, n.width = t, n.height = a;
9366}, pin: function(r, e, t, a, n) {
9367  n.x = r + t / 2, n.y = e + a / 2, n.width = t, n.height = a;
9368}, arrow: function(r, e, t, a, n) {
9369  n.x = r + t / 2, n.y = e + a / 2, n.width = t, n.height = a;
9370}, triangle: function(r, e, t, a, n) {
9371  n.cx = r + t / 2, n.cy = e + a / 2, n.width = t, n.height = a;
9372} }, Ff = {};
9373D(bN, function(r, e) {
9374  Ff[e] = new r();
9375});
9376var TN = mt.extend({ type: "symbol", shape: { symbolType: "", x: 0, y: 0, width: 0, height: 0 }, calculateTextPosition: function(r, e, t) {
9377  var a = Lf(r, e, t), n = this.shape;
9378  return n && n.symbolType === "pin" && e.position === "inside" && (a.y = t.y + t.height * 0.4), a;
9379}, buildPath: function(r, e, t) {
9380  var a = e.symbolType;
9381  if (a !== "none") {
9382    var n = Ff[a];
9383    n || (a = "rect", n = Ff[a]), wN[a](e.x, e.y, e.width, e.height, n.shape), n.buildPath(r, n.shape, t);
9384  }
9385} });
9386function CN(r, e) {
9387  if (this.type !== "image") {
9388    var t = this.style;
9389    this.__isEmptyBrush ? (t.stroke = r, t.fill = e || "#fff", t.lineWidth = 2) : this.shape.symbolType === "line" ? t.stroke = r : t.fill = r, this.markRedraw();
9390  }
9391}
9392function qt(r, e, t, a, n, i, o) {
9393  var s = r.indexOf("empty") === 0;
9394  s && (r = r.substr(5, 1).toLowerCase() + r.substr(6));
9395  var l;
9396  return r.indexOf("image://") === 0 ? l = ny(r.slice(8), new ht(e, t, a, n), o ? "center" : "cover") : r.indexOf("path://") === 0 ? l = zl(r.slice(7), {}, new ht(e, t, a, n), o ? "center" : "cover") : l = new TN({ shape: { symbolType: r, x: e, y: t, width: a, height: n } }), l.__isEmptyBrush = s, l.setColor = CN, i && l.setColor(i), l;
9397}
9398function Ho(r) {
9399  return V(r) || (r = [+r, +r]), [r[0] || 0, r[1] || 0];
9400}
9401function wi(r, e) {
9402  if (r != null) return V(r) || (r = [r, r]), [W(r[0], e[0]) || 0, W(st(r[1], r[0]), e[1]) || 0];
9403}
9404function Jn(r) {
9405  return isFinite(r);
9406}
9407function AN(r, e, t) {
9408  var a = e.x == null ? 0 : e.x, n = e.x2 == null ? 1 : e.x2, i = e.y == null ? 0 : e.y, o = e.y2 == null ? 0 : e.y2;
9409  e.global || (a = a * t.width + t.x, n = n * t.width + t.x, i = i * t.height + t.y, o = o * t.height + t.y), a = Jn(a) ? a : 0, n = Jn(n) ? n : 1, i = Jn(i) ? i : 0, o = Jn(o) ? o : 0;
9410  var s = r.createLinearGradient(a, i, n, o);
9411  return s;
9412}
9413function DN(r, e, t) {
9414  var a = t.width, n = t.height, i = Math.min(a, n), o = e.x == null ? 0.5 : e.x, s = e.y == null ? 0.5 : e.y, l = e.r == null ? 0.5 : e.r;
9415  e.global || (o = o * a + t.x, s = s * n + t.y, l = l * i), o = Jn(o) ? o : 0.5, s = Jn(s) ? s : 0.5, l = l >= 0 && Jn(l) ? l : 0.5;
9416  var u = r.createRadialGradient(o, s, 0, o, s, l);
9417  return u;
9418}
9419function Md(r, e, t) {
9420  for (var a = e.type === "radial" ? DN(r, e, t) : AN(r, e, t), n = e.colorStops, i = 0; i < n.length; i++) a.addColorStop(n[i].offset, n[i].color);
9421  return a;
9422}
9423function MN(r, e) {
9424  if (r === e || !r && !e) return false;
9425  if (!r || !e || r.length !== e.length) return true;
9426  for (var t = 0; t < r.length; t++) if (r[t] !== e[t]) return true;
9427  return false;
9428}
9429function bu(r) {
9430  return parseInt(r, 10);
9431}
9432function no(r, e, t) {
9433  var a = ["width", "height"][e], n = ["clientWidth", "clientHeight"][e], i = ["paddingLeft", "paddingTop"][e], o = ["paddingRight", "paddingBottom"][e];
9434  if (t[a] != null && t[a] !== "auto") return parseFloat(t[a]);
9435  var s = document.defaultView.getComputedStyle(r);
9436  return (r[n] || bu(s[a]) || bu(r.style[a])) - (bu(s[i]) || 0) - (bu(s[o]) || 0) | 0;
9437}
9438function IN(r, e) {
9439  return !r || r === "solid" || !(e > 0) ? null : r === "dashed" ? [4 * e, 2 * e] : r === "dotted" ? [e] : wt(r) ? [r] : V(r) ? r : null;
9440}
9441function Dy(r) {
9442  var e = r.style, t = e.lineDash && e.lineWidth > 0 && IN(e.lineDash, e.lineWidth), a = e.lineDashOffset;
9443  if (t) {
9444    var n = e.strokeNoScale && r.getLineScale ? r.getLineScale() : 1;
9445    n && n !== 1 && (t = G(t, function(i) {
9446      return i / n;
9447    }), a /= n);
9448  }
9449  return [t, a];
9450}
9451var LN = new ta(true);
9452function Hf(r) {
9453  var e = r.stroke;
9454  return !(e == null || e === "none" || !(r.lineWidth > 0));
9455}
9456function e1(r) {
9457  return typeof r == "string" && r !== "none";
9458}
9459function Wf(r) {
9460  var e = r.fill;
9461  return e != null && e !== "none";
9462}
9463function r1(r, e) {
9464  if (e.fillOpacity != null && e.fillOpacity !== 1) {
9465    var t = r.globalAlpha;
9466    r.globalAlpha = e.fillOpacity * e.opacity, r.fill(), r.globalAlpha = t;
9467  } else r.fill();
9468}
9469function a1(r, e) {
9470  if (e.strokeOpacity != null && e.strokeOpacity !== 1) {
9471    var t = r.globalAlpha;
9472    r.globalAlpha = e.strokeOpacity * e.opacity, r.stroke(), r.globalAlpha = t;
9473  } else r.stroke();
9474}
9475function Id(r, e, t) {
9476  var a = Zg(e.image, e.__image, t);
9477  if (Lh(a)) {
9478    var n = r.createPattern(a, e.repeat || "repeat");
9479    if (typeof DOMMatrix == "function" && n && n.setTransform) {
9480      var i = new DOMMatrix();
9481      i.translateSelf(e.x || 0, e.y || 0), i.rotateSelf(0, 0, (e.rotation || 0) * Os), i.scaleSelf(e.scaleX || 1, e.scaleY || 1), n.setTransform(i);
9482    }
9483    return n;
9484  }
9485}
9486function PN(r, e, t, a) {
9487  var n, i = Hf(t), o = Wf(t), s = t.strokePercent, l = s < 1, u = !e.path;
9488  (!e.silent || l) && u && e.createPathProxy();
9489  var f = e.path || LN, h = e.__dirty;
9490  if (!a) {
9491    var v = t.fill, c = t.stroke, p = o && !!v.colorStops, d = i && !!c.colorStops, g = o && !!v.image, y = i && !!c.image, m = void 0, _ = void 0, S = void 0, b = void 0, x = void 0;
9492    (p || d) && (x = e.getBoundingRect()), p && (m = h ? Md(r, v, x) : e.__canvasFillGradient, e.__canvasFillGradient = m), d && (_ = h ? Md(r, c, x) : e.__canvasStrokeGradient, e.__canvasStrokeGradient = _), g && (S = h || !e.__canvasFillPattern ? Id(r, v, e) : e.__canvasFillPattern, e.__canvasFillPattern = S), y && (b = h || !e.__canvasStrokePattern ? Id(r, c, e) : e.__canvasStrokePattern, e.__canvasStrokePattern = S), p ? r.fillStyle = m : g && (S ? r.fillStyle = S : o = false), d ? r.strokeStyle = _ : y && (b ? r.strokeStyle = b : i = false);
9493  }
9494  var w = e.getGlobalScale();
9495  f.setScale(w[0], w[1], e.segmentIgnoreThreshold);
9496  var T, C;
9497  r.setLineDash && t.lineDash && (n = Dy(e), T = n[0], C = n[1]);
9498  var A = true;
9499  (u || h & ji) && (f.setDPR(r.dpr), l ? f.setContext(null) : (f.setContext(r), A = false), f.reset(), e.buildPath(f, e.shape, a), f.toStatic(), e.pathUpdated()), A && f.rebuildPath(r, l ? s : 1), T && (r.setLineDash(T), r.lineDashOffset = C), a || (t.strokeFirst ? (i && a1(r, t), o && r1(r, t)) : (o && r1(r, t), i && a1(r, t))), T && r.setLineDash([]);
9500}
9501function RN(r, e, t) {
9502  var a = e.__image = Zg(t.image, e.__image, e, e.onload);
9503  if (!(!a || !Lh(a))) {
9504    var n = t.x || 0, i = t.y || 0, o = e.getWidth(), s = e.getHeight(), l = a.width / a.height;
9505    if (o == null && s != null ? o = s * l : s == null && o != null ? s = o / l : o == null && s == null && (o = a.width, s = a.height), t.sWidth && t.sHeight) {
9506      var u = t.sx || 0, f = t.sy || 0;
9507      r.drawImage(a, u, f, t.sWidth, t.sHeight, n, i, o, s);
9508    } else if (t.sx && t.sy) {
9509      var u = t.sx, f = t.sy, h = o - u, v = s - f;
9510      r.drawImage(a, u, f, h, v, n, i, o, s);
9511    } else r.drawImage(a, n, i, o, s);
9512  }
9513}
9514function EN(r, e, t) {
9515  var a, n = t.text;
9516  if (n != null && (n += ""), n) {
9517    r.font = t.font || tn, r.textAlign = t.textAlign, r.textBaseline = t.textBaseline;
9518    var i = void 0, o = void 0;
9519    r.setLineDash && t.lineDash && (a = Dy(e), i = a[0], o = a[1]), i && (r.setLineDash(i), r.lineDashOffset = o), t.strokeFirst ? (Hf(t) && r.strokeText(n, t.x, t.y), Wf(t) && r.fillText(n, t.x, t.y)) : (Wf(t) && r.fillText(n, t.x, t.y), Hf(t) && r.strokeText(n, t.x, t.y)), i && r.setLineDash([]);
9520  }
9521}
9522var n1 = ["shadowBlur", "shadowOffsetX", "shadowOffsetY"], i1 = [["lineCap", "butt"], ["lineJoin", "miter"], ["miterLimit", 10]];
9523function HA(r, e, t, a, n) {
9524  var i = false;
9525  if (!a && (t = t || {}, e === t)) return false;
9526  if (a || e.opacity !== t.opacity) {
9527    Fe(r, n), i = true;
9528    var o = Math.max(Math.min(e.opacity, 1), 0);
9529    r.globalAlpha = isNaN(o) ? ri.opacity : o;
9530  }
9531  (a || e.blend !== t.blend) && (i || (Fe(r, n), i = true), r.globalCompositeOperation = e.blend || ri.blend);
9532  for (var s = 0; s < n1.length; s++) {
9533    var l = n1[s];
9534    (a || e[l] !== t[l]) && (i || (Fe(r, n), i = true), r[l] = r.dpr * (e[l] || 0));
9535  }
9536  return (a || e.shadowColor !== t.shadowColor) && (i || (Fe(r, n), i = true), r.shadowColor = e.shadowColor || ri.shadowColor), i;
9537}
9538function o1(r, e, t, a, n) {
9539  var i = dl(e, n.inHover), o = a ? null : t && dl(t, n.inHover) || {};
9540  if (i === o) return false;
9541  var s = HA(r, i, o, a, n);
9542  if ((a || i.fill !== o.fill) && (s || (Fe(r, n), s = true), e1(i.fill) && (r.fillStyle = i.fill)), (a || i.stroke !== o.stroke) && (s || (Fe(r, n), s = true), e1(i.stroke) && (r.strokeStyle = i.stroke)), (a || i.opacity !== o.opacity) && (s || (Fe(r, n), s = true), r.globalAlpha = i.opacity == null ? 1 : i.opacity), e.hasStroke()) {
9543    var l = i.lineWidth, u = l / (i.strokeNoScale && e.getLineScale ? e.getLineScale() : 1);
9544    r.lineWidth !== u && (s || (Fe(r, n), s = true), r.lineWidth = u);
9545  }
9546  for (var f = 0; f < i1.length; f++) {
9547    var h = i1[f], v = h[0];
9548    (a || i[v] !== o[v]) && (s || (Fe(r, n), s = true), r[v] = i[v] || h[1]);
9549  }
9550  return s;
9551}
9552function kN(r, e, t, a, n) {
9553  return HA(r, dl(e, n.inHover), t && dl(t, n.inHover), a, n);
9554}
9555function WA(r, e) {
9556  var t = e.transform, a = r.dpr || 1;
9557  t ? r.setTransform(a * t[0], a * t[1], a * t[2], a * t[3], a * t[4], a * t[5]) : r.setTransform(a, 0, 0, a, 0, 0);
9558}
9559function ON(r, e, t) {
9560  for (var a = false, n = 0; n < r.length; n++) {
9561    var i = r[n];
9562    a = a || i.isZeroArea(), WA(e, i), e.beginPath(), i.buildPath(e, i.shape), e.clip();
9563  }
9564  t.allClipped = a;
9565}
9566function NN(r, e) {
9567  return r && e ? r[0] !== e[0] || r[1] !== e[1] || r[2] !== e[2] || r[3] !== e[3] || r[4] !== e[4] || r[5] !== e[5] : !(!r && !e);
9568}
9569var s1 = 1, l1 = 2, u1 = 3, f1 = 4;
9570function BN(r) {
9571  var e = Wf(r), t = Hf(r);
9572  return !(r.lineDash || !(+e ^ +t) || e && typeof r.fill != "string" || t && typeof r.stroke != "string" || r.strokePercent < 1 || r.strokeOpacity < 1 || r.fillOpacity < 1);
9573}
9574function Fe(r, e) {
9575  e.batchFill && r.fill(), e.batchStroke && r.stroke(), e.batchFill = "", e.batchStroke = "";
9576}
9577function dl(r, e) {
9578  return e && r.__hoverStyle || r.style;
9579}
9580function My(r, e) {
9581  Qn(r, e, { inHover: false, viewWidth: 0, viewHeight: 0 }, true);
9582}
9583function Qn(r, e, t, a) {
9584  var n = e.transform;
9585  if (!e.shouldBePainted(t.viewWidth, t.viewHeight, false, false)) {
9586    e.__dirty &= ~Ye, e.__isRendered = false;
9587    return;
9588  }
9589  var i = e.__clipPaths, o = t.prevElClipPaths, s = false, l = false;
9590  if ((!o || MN(i, o)) && (o && o.length && (Fe(r, t), r.restore(), l = s = true, t.prevElClipPaths = null, t.allClipped = false, t.prevEl = null), i && i.length && (Fe(r, t), r.save(), ON(i, r, t), s = true), t.prevElClipPaths = i), t.allClipped) {
9591    e.__isRendered = false;
9592    return;
9593  }
9594  e.beforeBrush && e.beforeBrush(), e.innerBeforeBrush();
9595  var u = t.prevEl;
9596  u || (l = s = true);
9597  var f = e instanceof mt && e.autoBatch && BN(e.style);
9598  s || NN(n, u.transform) ? (Fe(r, t), WA(r, e)) : f || Fe(r, t);
9599  var h = dl(e, t.inHover);
9600  e instanceof mt ? (t.lastDrawType !== s1 && (l = true, t.lastDrawType = s1), o1(r, e, u, l, t), (!f || !t.batchFill && !t.batchStroke) && r.beginPath(), PN(r, e, h, f), f && (t.batchFill = h.fill || "", t.batchStroke = h.stroke || "")) : e instanceof mo ? (t.lastDrawType !== u1 && (l = true, t.lastDrawType = u1), o1(r, e, u, l, t), EN(r, e, h)) : e instanceof ue ? (t.lastDrawType !== l1 && (l = true, t.lastDrawType = l1), kN(r, e, u, l, t), RN(r, e, h)) : e.getTemporalDisplayables && (t.lastDrawType !== f1 && (l = true, t.lastDrawType = f1), zN(r, e, t)), f && a && Fe(r, t), e.innerAfterBrush(), e.afterBrush && e.afterBrush(), t.prevEl = e, e.__dirty = 0, e.__isRendered = true;
9601}
9602function zN(r, e, t) {
9603  var a = e.getDisplayables(), n = e.getTemporalDisplayables();
9604  r.save();
9605  var i = { prevElClipPaths: null, prevEl: null, allClipped: false, viewWidth: t.viewWidth, viewHeight: t.viewHeight, inHover: t.inHover }, o, s;
9606  for (o = e.getCursor(), s = a.length; o < s; o++) {
9607    var l = a[o];
9608    l.beforeBrush && l.beforeBrush(), l.innerBeforeBrush(), Qn(r, l, i, o === s - 1), l.innerAfterBrush(), l.afterBrush && l.afterBrush(), i.prevEl = l;
9609  }
9610  for (var u = 0, f = n.length; u < f; u++) {
9611    var l = n[u];
9612    l.beforeBrush && l.beforeBrush(), l.innerBeforeBrush(), Qn(r, l, i, u === f - 1), l.innerAfterBrush(), l.afterBrush && l.afterBrush(), i.prevEl = l;
9613  }
9614  e.clearTemporalDisplayables(), e.notClear = true, r.restore();
9615}
9616var nc = new yN(), h1 = new Rl(100), v1 = ["symbol", "symbolSize", "symbolKeepAspect", "color", "backgroundColor", "dashArrayX", "dashArrayY", "maxTileWidth", "maxTileHeight"];
9617function xo(r, e) {
9618  if (r === "none") return null;
9619  var t = e.getDevicePixelRatio(), a = e.getZr(), n = a.painter.type === "svg";
9620  r.dirty && nc.delete(r);
9621  var i = nc.get(r);
9622  if (i) return i;
9623  var o = Q(r, { symbol: "rect", symbolSize: 1, symbolKeepAspect: true, color: "rgba(0, 0, 0, 0.2)", backgroundColor: null, dashArrayX: 5, dashArrayY: 5, rotation: 0, maxTileWidth: 512, maxTileHeight: 512 });
9624  o.backgroundColor === "none" && (o.backgroundColor = null);
9625  var s = { repeat: "repeat" };
9626  return l(s), s.rotation = o.rotation, s.scaleX = s.scaleY = n ? 1 : 1 / t, nc.set(r, s), r.dirty = false, s;
9627  function l(u) {
9628    for (var f = [t], h = true, v = 0; v < v1.length; ++v) {
9629      var c = o[v1[v]];
9630      if (c != null && !V(c) && !Y(c) && !wt(c) && typeof c != "boolean") {
9631        h = false;
9632        break;
9633      }
9634      f.push(c);
9635    }
9636    var p;
9637    if (h) {
9638      p = f.join(",") + (n ? "-svg" : "");
9639      var d = h1.get(p);
9640      d && (n ? u.svgElement = d : u.image = d);
9641    }
9642    var g = YA(o.dashArrayX), y = VN(o.dashArrayY), m = UA(o.symbol), _ = GN(g), S = $A(y), b = !n && Lr.createCanvas(), x = n && { tag: "g", attrs: {}, key: "dcl", children: [] }, w = C(), T;
9643    b && (b.width = w.width * t, b.height = w.height * t, T = b.getContext("2d")), A(), h && h1.put(p, b || x), u.image = b, u.svgElement = x, u.svgWidth = w.width, u.svgHeight = w.height;
9644    function C() {
9645      for (var M = 1, I = 0, L = _.length; I < L; ++I) M = I0(M, _[I]);
9646      for (var P = 1, I = 0, L = m.length; I < L; ++I) P = I0(P, m[I].length);
9647      M *= P;
9648      var R = S * _.length * m.length;
9649      return { width: Math.max(1, Math.min(M, o.maxTileWidth)), height: Math.max(1, Math.min(R, o.maxTileHeight)) };
9650    }
9651    function A() {
9652      T && (T.clearRect(0, 0, b.width, b.height), o.backgroundColor && (T.fillStyle = o.backgroundColor, T.fillRect(0, 0, b.width, b.height)));
9653      for (var M = 0, I = 0; I < y.length; ++I) M += y[I];
9654      if (M <= 0) return;
9655      for (var L = -S, P = 0, R = 0, E = 0; L < w.height; ) {
9656        if (P % 2 === 0) {
9657          for (var O = R / 2 % m.length, k = 0, B = 0, F = 0; k < w.width * 2; ) {
9658            for (var H = 0, I = 0; I < g[E].length; ++I) H += g[E][I];
9659            if (H <= 0) break;
9660            if (B % 2 === 0) {
9661              var U = (1 - o.symbolSize) * 0.5, K = k + g[E][B] * U, J = L + y[P] * U, nt = g[E][B] * o.symbolSize, It = y[P] * o.symbolSize, Yt = F / 2 % m[O].length;
9662              ct(K, J, nt, It, m[O][Yt]);
9663            }
9664            k += g[E][B], ++F, ++B, B === g[E].length && (B = 0);
9665          }
9666          ++E, E === g.length && (E = 0);
9667        }
9668        L += y[P], ++R, ++P, P === y.length && (P = 0);
9669      }
9670      function ct(et, dt, q, ot, Bt) {
9671        var Lt = n ? 1 : t, kt = qt(Bt, et * Lt, dt * Lt, q * Lt, ot * Lt, o.color, o.symbolKeepAspect);
9672        if (n) {
9673          var Ht = a.painter.renderOneToVNode(kt);
9674          Ht && x.children.push(Ht);
9675        } else My(T, kt);
9676      }
9677    }
9678  }
9679}
9680function UA(r) {
9681  if (!r || r.length === 0) return [["rect"]];
9682  if (Y(r)) return [[r]];
9683  for (var e = true, t = 0; t < r.length; ++t) if (!Y(r[t])) {
9684    e = false;
9685    break;
9686  }
9687  if (e) return UA([r]);
9688  for (var a = [], t = 0; t < r.length; ++t) Y(r[t]) ? a.push([r[t]]) : a.push(r[t]);
9689  return a;
9690}
9691function YA(r) {
9692  if (!r || r.length === 0) return [[0, 0]];
9693  if (wt(r)) {
9694    var e = Math.ceil(r);
9695    return [[e, e]];
9696  }
9697  for (var t = true, a = 0; a < r.length; ++a) if (!wt(r[a])) {
9698    t = false;
9699    break;
9700  }
9701  if (t) return YA([r]);
9702  for (var n = [], a = 0; a < r.length; ++a) if (wt(r[a])) {
9703    var e = Math.ceil(r[a]);
9704    n.push([e, e]);
9705  } else {
9706    var e = G(r[a], function(s) {
9707      return Math.ceil(s);
9708    });
9709    e.length % 2 === 1 ? n.push(e.concat(e)) : n.push(e);
9710  }
9711  return n;
9712}
9713function VN(r) {
9714  if (!r || typeof r == "object" && r.length === 0) return [0, 0];
9715  if (wt(r)) {
9716    var e = Math.ceil(r);
9717    return [e, e];
9718  }
9719  var t = G(r, function(a) {
9720    return Math.ceil(a);
9721  });
9722  return r.length % 2 ? t.concat(t) : t;
9723}
9724function GN(r) {
9725  return G(r, function(e) {
9726    return $A(e);
9727  });
9728}
9729function $A(r) {
9730  for (var e = 0, t = 0; t < r.length; ++t) e += r[t];
9731  return r.length % 2 === 1 ? e * 2 : e;
9732}
9733function FN(r, e) {
9734  r.eachRawSeries(function(t) {
9735    if (!r.isSeriesFiltered(t)) {
9736      var a = t.getData();
9737      a.hasItemVisual() && a.each(function(o) {
9738        var s = a.getItemVisual(o, "decal");
9739        if (s) {
9740          var l = a.ensureUniqueItemVisual(o, "style");
9741          l.decal = xo(s, e);
9742        }
9743      });
9744      var n = a.getVisual("decal");
9745      if (n) {
9746        var i = a.getVisual("style");
9747        i.decal = xo(n, e);
9748      }
9749    }
9750  });
9751}
9752var br = new cr(), XA = {};
9753function HN(r, e) {
9754  XA[r] = e;
9755}
9756function ZA(r) {
9757  return XA[r];
9758}
9759var WN = "5.6.0", UN = { zrender: "5.6.1" }, YN = 1, $N = 800, XN = 900, ZN = 1e3, qN = 2e3, KN = 5e3, qA = 1e3, jN = 1100, Iy = 2e3, KA = 3e3, JN = 4e3, Zh = 4500, QN = 4600, tB = 5e3, eB = 6e3, jA = 7e3, JA = { PROCESSOR: { FILTER: ZN, SERIES_FILTER: $N, STATISTIC: KN }, VISUAL: { LAYOUT: qA, PROGRESSIVE_LAYOUT: jN, GLOBAL: Iy, CHART: KA, POST_CHART_LAYOUT: QN, COMPONENT: JN, BRUSH: tB, CHART_ITEM: Zh, ARIA: eB, DECAL: jA } }, ye = "__flagInMainProcess", ze = "__pendingUpdate", ic = "__needsUpdateStatus", c1 = /^[a-zA-Z0-9_]+$/, oc = "__connectUpdateStatus", p1 = 0, rB = 1, aB = 2;
9760function QA(r) {
9761  return function() {
9762    for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t];
9763    if (this.isDisposed()) {
9764      this.id;
9765      return;
9766    }
9767    return eD(this, r, e);
9768  };
9769}
9770function tD(r) {
9771  return function() {
9772    for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t];
9773    return eD(this, r, e);
9774  };
9775}
9776function eD(r, e, t) {
9777  return t[0] = t[0] && t[0].toLowerCase(), cr.prototype[e].apply(r, t);
9778}
9779var rD = function(r) {
9780  N(e, r);
9781  function e() {
9782    return r !== null && r.apply(this, arguments) || this;
9783  }
9784  return e;
9785}(cr), aD = rD.prototype;
9786aD.on = tD("on");
9787aD.off = tD("off");
9788var Gi, sc, wu, La, lc, uc, fc, ns, is, d1, g1, hc, y1, Tu, m1, nD, je, _1, Uf = function(r) {
9789  N(e, r);
9790  function e(t, a, n) {
9791    var i = r.call(this, new hN()) || this;
9792    i._chartsViews = [], i._chartsMap = {}, i._componentsViews = [], i._componentsMap = {}, i._pendingActions = [], n = n || {}, Y(a) && (a = iD[a]), i._dom = t;
9793    var o = "canvas", s = "auto", l = false;
9794    n.ssr && HT(function(v) {
9795      var c = it(v), p = c.dataIndex;
9796      if (p != null) {
9797        var d = Z();
9798        return d.set("series_index", c.seriesIndex), d.set("data_index", p), c.ssrType && d.set("ssr_type", c.ssrType), d;
9799      }
9800    });
9801    var u = i._zr = rd(t, { renderer: n.renderer || o, devicePixelRatio: n.devicePixelRatio, width: n.width, height: n.height, ssr: n.ssr, useDirtyRect: st(n.useDirtyRect, l), useCoarsePointer: st(n.useCoarsePointer, s), pointerSize: n.pointerSize });
9802    i._ssr = n.ssr, i._throttledZrFlush = Xh($(u.flush, u), 17), a = rt(a), a && fA(a, true), i._theme = a, i._locale = Sk(n.locale || HC), i._coordSysMgr = new Vo();
9803    var f = i._api = m1(i);
9804    function h(v, c) {
9805      return v.__prio - c.__prio;
9806    }
9807    return tf($f, h), tf(Ld, h), i._scheduler = new OA(i, f, Ld, $f), i._messageCenter = new rD(), i._initEvents(), i.resize = $(i.resize, i), u.animation.on("frame", i._onframe, i), d1(u, i), g1(u, i), Qs(i), i;
9808  }
9809  return e.prototype._onframe = function() {
9810    if (!this._disposed) {
9811      _1(this);
9812      var t = this._scheduler;
9813      if (this[ze]) {
9814        var a = this[ze].silent;
9815        this[ye] = true;
9816        try {
9817          Gi(this), La.update.call(this, null, this[ze].updateParams);
9818        } catch (l) {
9819          throw this[ye] = false, this[ze] = null, l;
9820        }
9821        this._zr.flush(), this[ye] = false, this[ze] = null, ns.call(this, a), is.call(this, a);
9822      } else if (t.unfinished) {
9823        var n = YN, i = this._model, o = this._api;
9824        t.unfinished = false;
9825        do {
9826          var s = +/* @__PURE__ */ new Date();
9827          t.performSeriesTasks(i), t.performDataProcessorTasks(i), uc(this, i), t.performVisualTasks(i), Tu(this, this._model, o, "remain", {}), n -= +/* @__PURE__ */ new Date() - s;
9828        } while (n > 0 && t.unfinished);
9829        t.unfinished || this._zr.flush();
9830      }
9831    }
9832  }, e.prototype.getDom = function() {
9833    return this._dom;
9834  }, e.prototype.getId = function() {
9835    return this.id;
9836  }, e.prototype.getZr = function() {
9837    return this._zr;
9838  }, e.prototype.isSSR = function() {
9839    return this._ssr;
9840  }, e.prototype.setOption = function(t, a, n) {
9841    if (!this[ye]) {
9842      if (this._disposed) {
9843        this.id;
9844        return;
9845      }
9846      var i, o, s;
9847      if (tt(a) && (n = a.lazyUpdate, i = a.silent, o = a.replaceMerge, s = a.transition, a = a.notMerge), this[ye] = true, !this._model || a) {
9848        var l = new Xk(this._api), u = this._theme, f = this._model = new xy();
9849        f.scheduler = this._scheduler, f.ssr = this._ssr, f.init(null, null, null, u, this._locale, l);
9850      }
9851      this._model.setOption(t, { replaceMerge: o }, Pd);
9852      var h = { seriesTransition: s, optionChanged: true };
9853      if (n) this[ze] = { silent: i, updateParams: h }, this[ye] = false, this.getZr().wakeUp();
9854      else {
9855        try {
9856          Gi(this), La.update.call(this, null, h);
9857        } catch (v) {
9858          throw this[ze] = null, this[ye] = false, v;
9859        }
9860        this._ssr || this._zr.flush(), this[ze] = null, this[ye] = false, ns.call(this, i), is.call(this, i);
9861      }
9862    }
9863  }, e.prototype.setTheme = function() {
9864  }, e.prototype.getModel = function() {
9865    return this._model;
9866  }, e.prototype.getOption = function() {
9867    return this._model && this._model.getOption();
9868  }, e.prototype.getWidth = function() {
9869    return this._zr.getWidth();
9870  }, e.prototype.getHeight = function() {
9871    return this._zr.getHeight();
9872  }, e.prototype.getDevicePixelRatio = function() {
9873    return this._zr.painter.dpr || yt.hasGlobalWindow && window.devicePixelRatio || 1;
9874  }, e.prototype.getRenderedCanvas = function(t) {
9875    return this.renderToCanvas(t);
9876  }, e.prototype.renderToCanvas = function(t) {
9877    t = t || {};
9878    var a = this._zr.painter;
9879    return a.getRenderedCanvas({ backgroundColor: t.backgroundColor || this._model.get("backgroundColor"), pixelRatio: t.pixelRatio || this.getDevicePixelRatio() });
9880  }, e.prototype.renderToSVGString = function(t) {
9881    t = t || {};
9882    var a = this._zr.painter;
9883    return a.renderToString({ useViewBox: t.useViewBox });
9884  }, e.prototype.getSvgDataURL = function() {
9885    if (yt.svgSupported) {
9886      var t = this._zr, a = t.storage.getDisplayList();
9887      return D(a, function(n) {
9888        n.stopAnimation(null, true);
9889      }), t.painter.toDataURL();
9890    }
9891  }, e.prototype.getDataURL = function(t) {
9892    if (this._disposed) {
9893      this.id;
9894      return;
9895    }
9896    t = t || {};
9897    var a = t.excludeComponents, n = this._model, i = [], o = this;
9898    D(a, function(l) {
9899      n.eachComponent({ mainType: l }, function(u) {
9900        var f = o._componentsMap[u.__viewId];
9901        f.group.ignore || (i.push(f), f.group.ignore = true);
9902      });
9903    });
9904    var s = this._zr.painter.getType() === "svg" ? this.getSvgDataURL() : this.renderToCanvas(t).toDataURL("image/" + (t && t.type || "png"));
9905    return D(i, function(l) {
9906      l.group.ignore = false;
9907    }), s;
9908  }, e.prototype.getConnectedDataURL = function(t) {
9909    if (this._disposed) {
9910      this.id;
9911      return;
9912    }
9913    var a = t.type === "svg", n = this.group, i = Math.min, o = Math.max, s = 1 / 0;
9914    if (Xf[n]) {
9915      var l = s, u = s, f = -s, h = -s, v = [], c = t && t.pixelRatio || this.getDevicePixelRatio();
9916      D(ii, function(_, S) {
9917        if (_.group === n) {
9918          var b = a ? _.getZr().painter.getSvgDom().innerHTML : _.renderToCanvas(rt(t)), x = _.getDom().getBoundingClientRect();
9919          l = i(x.left, l), u = i(x.top, u), f = o(x.right, f), h = o(x.bottom, h), v.push({ dom: b, left: x.left, top: x.top });
9920        }
9921      }), l *= c, u *= c, f *= c, h *= c;
9922      var p = f - l, d = h - u, g = Lr.createCanvas(), y = rd(g, { renderer: a ? "svg" : "canvas" });
9923      if (y.resize({ width: p, height: d }), a) {
9924        var m = "";
9925        return D(v, function(_) {
9926          var S = _.left - l, b = _.top - u;
9927          m += '<g transform="translate(' + S + "," + b + ')">' + _.dom + "</g>";
9928        }
9928), y.painter.getSvgRoot().innerHTML = m, t.connectedBackgroundColor && y.painter.setBackgroundColor(t.connectedBackgroundColor), y.refreshImmediately(), y.painter.toDataURL();
9929      } else return t.connectedBackgroundColor && y.add(new xt({ shape: { x: 0, y: 0, width: p, height: d }, style: { fill: t.connectedBackgroundColor } })), D(v, function(_) {
9930        var S = new ue({ style: { x: _.left * c - l, y: _.top * c - u, image: _.dom } });
9931        y.add(S);
9932      }), y.refreshImmediately(), g.toDataURL("image/" + (t && t.type || "png"));
9933    } else return this.getDataURL(t);
9934  }, e.prototype.convertToPixel = function(t, a) {
9935    return lc(this, "convertToPixel", t, a);
9936  }, e.prototype.convertFromPixel = function(t, a) {
9937    return lc(this, "convertFromPixel", t, a);
9938  }, e.prototype.containPixel = function(t, a) {
9939    if (this._disposed) {
9940      this.id;
9941      return;
9942    }
9943    var n = this._model, i, o = Hs(n, t);
9944    return D(o, function(s, l) {
9945      l.indexOf("Models") >= 0 && D(s, function(u) {
9946        var f = u.coordinateSystem;
9947        if (f && f.containPoint) i = i || !!f.containPoint(a);
9948        else if (l === "seriesModels") {
9949          var h = this._chartsMap[u.__viewId];
9950          h && h.containPoint && (i = i || h.containPoint(a, u));
9951        }
9952      }, this);
9953    }, this), !!i;
9954  }, e.prototype.getVisual = function(t, a) {
9955    var n = this._model, i = Hs(n, t, { defaultMainType: "series" }), o = i.seriesModel, s = o.getData(), l = i.hasOwnProperty("dataIndexInside") ? i.dataIndexInside : i.hasOwnProperty("dataIndex") ? s.indexOfRawIndex(i.dataIndex) : null;
9956    return l != null ? Ay(s, l, a) : Fl(s, a);
9957  }, e.prototype.getViewOfComponentModel = function(t) {
9958    return this._componentsMap[t.__viewId];
9959  }, e.prototype.getViewOfSeriesModel = function(t) {
9960    return this._chartsMap[t.__viewId];
9961  }, e.prototype._initEvents = function() {
9962    var t = this;
9963    D(nB, function(a) {
9964      var n = function(i) {
9965        var o = t.getModel(), s = i.target, l, u = a === "globalout";
9966        if (u ? l = {} : s && jn(s, function(p) {
9967          var d = it(p);
9968          if (d && d.dataIndex != null) {
9969            var g = d.dataModel || o.getSeriesByIndex(d.seriesIndex);
9970            return l = g && g.getDataParams(d.dataIndex, d.dataType, s) || {}, true;
9971          } else if (d.eventData) return l = z({}, d.eventData), true;
9972        }, true), l) {
9973          var f = l.componentType, h = l.componentIndex;
9974          (f === "markLine" || f === "markPoint" || f === "markArea") && (f = "series", h = l.seriesIndex);
9975          var v = f && h != null && o.getComponent(f, h), c = v && t[v.mainType === "series" ? "_chartsMap" : "_componentsMap"][v.__viewId];
9976          l.event = i, l.type = a, t._$eventProcessor.eventInfo = { targetEl: s, packedEvent: l, model: v, view: c }, t.trigger(a, l);
9977        }
9978      };
9979      n.zrEventfulCallAtLast = true, t._zr.on(a, n, t);
9980    }), D(Zs, function(a, n) {
9981      t._messageCenter.on(n, function(i) {
9982        this.trigger(n, i);
9983      }, t);
9984    }), D(["selectchanged"], function(a) {
9985      t._messageCenter.on(a, function(n) {
9986        this.trigger(a, n);
9987      }, t);
9988    }), pN(this._messageCenter, this, this._api);
9989  }, e.prototype.isDisposed = function() {
9990    return this._disposed;
9991  }, e.prototype.clear = function() {
9992    if (this._disposed) {
9993      this.id;
9994      return;
9995    }
9996    this.setOption({ series: [] }, true);
9997  }, e.prototype.dispose = function() {
9998    if (this._disposed) {
9999      this.id;
10000      return;
10001    }
10002    this._disposed = true;
10003    var t = this.getDom();
10004    t && QT(this.getDom(), Py, "");
10005    var a = this, n = a._api, i = a._model;
10006    D(a._componentsViews, function(o) {
10007      o.dispose(i, n);
10008    }), D(a._chartsViews, function(o) {
10009      o.dispose(i, n);
10010    }), a._zr.dispose(), a._dom = a._model = a._chartsMap = a._componentsMap = a._chartsViews = a._componentsViews = a._scheduler = a._api = a._zr = a._throttledZrFlush = a._theme = a._coordSysMgr = a._messageCenter = null, delete ii[a.id];
10011  }, e.prototype.resize = function(t) {
10012    if (!this[ye]) {
10013      if (this._disposed) {
10014        this.id;
10015        return;
10016      }
10017      this._zr.resize(t);
10018      var a = this._model;
10019      if (this._loadingFX && this._loadingFX.resize(), !!a) {
10020        var n = a.resetOption("media"), i = t && t.silent;
10021        this[ze] && (i == null && (i = this[ze].silent), n = true, this[ze] = null), this[ye] = true;
10022        try {
10023          n && Gi(this), La.update.call(this, { type: "resize", animation: z({ duration: 0 }, t && t.animation) });
10024        } catch (o) {
10025          throw this[ye] = false, o;
10026        }
10027        this[ye] = false, ns.call(this, i), is.call(this, i);
10028      }
10029    }
10030  }, e.prototype.showLoading = function(t, a) {
10031    if (this._disposed) {
10032      this.id;
10033      return;
10034    }
10035    if (tt(t) && (a = t, t = ""), t = t || "default", this.hideLoading(), !!Rd[t]) {
10036      var n = Rd[t](this._api, a), i = this._zr;
10037      this._loadingFX = n, i.add(n);
10038    }
10039  }, e.prototype.hideLoading = function() {
10040    if (this._disposed) {
10041      this.id;
10042      return;
10043    }
10044    this._loadingFX && this._zr.remove(this._loadingFX), this._loadingFX = null;
10045  }, e.prototype.makeActionFromEvent = function(t) {
10046    var a = z({}, t);
10047    return a.type = Zs[t.type], a;
10048  }, e.prototype.dispatchAction = function(t, a) {
10049    if (this._disposed) {
10050      this.id;
10051      return;
10052    }
10053    if (tt(a) || (a = { silent: !!a }), !!Yf[t.type] && this._model) {
10054      if (this[ye]) {
10055        this._pendingActions.push(t);
10056        return;
10057      }
10058      var n = a.silent;
10059      fc.call(this, t, n);
10060      var i = a.flush;
10061      i ? this._zr.flush() : i !== false && yt.browser.weChat && this._throttledZrFlush(), ns.call(this, n), is.call(this, n);
10062    }
10063  }, e.prototype.updateLabelLayout = function() {
10064    br.trigger("series:layoutlabels", this._model, this._api, { updatedSeries: [] });
10065  }, e.prototype.appendData = function(t) {
10066    if (this._disposed) {
10067      this.id;
10068      return;
10069    }
10070    var a = t.seriesIndex, n = this.getModel(), i = n.getSeriesByIndex(a);
10071    i.appendData(t), this._scheduler.unfinished = true, this.getZr().wakeUp();
10072  }
10072, e.internalField = function() {
10073    Gi = function(h) {
10074      var v = h._scheduler;
10075      v.restorePipelines(h._model), v.prepareStageTasks(), sc(h, true), sc(h, false), v.plan();
10076    }, sc = function(h, v) {
10077      for (var c = h._model, p = h._scheduler, d = v ? h._componentsViews : h._chartsViews, g = v ? h._componentsMap : h._chartsMap, y = h._zr, m = h._api, _ = 0; _ < d.length; _++) d[_].__alive = false;
10078      v ? c.eachComponent(function(x, w) {
10079        x !== "series" && S(w);
10080      }) : c.eachSeries(S);
10081      function S(x) {
10082        var w = x.__requireNewView;
10083        x.__requireNewView = false;
10084        var T = "_ec_" + x.id + "_" + x.type, C = !w && g[T];
10085        if (!C) {
10086          var A = Yr(x.type), M = v ? Vt.getClass(A.main, A.sub) : Pt.getClass(A.sub);
10087          C = new M(), C.init(c, m), g[T] = C, d.push(C), y.add(C.group);
10088        }
10089        x.__viewId = C.__id = T, C.__alive = true, C.__model = x, C.group.__ecComponentInfo = { mainType: x.mainType, index: x.componentIndex }, !v && p.prepareView(C, x, c, m);
10090      }
10091      for (var _ = 0; _ < d.length; ) {
10092        var b = d[_];
10093        b.__alive ? _++ : (!v && b.renderTask.dispose(), y.remove(b.group), b.dispose(c, m), d.splice(_, 1), g[b.__id] === b && delete g[b.__id], b.__id = b.group.__ecComponentInfo = null);
10094      }
10095    }, wu = function(h, v, c, p, d) {
10096      var g = h._model;
10097      if (g.setUpdatePayload(c), !p) {
10098        D([].concat(h._componentsViews).concat(h._chartsViews), b);
10099        return;
10100      }
10101      var y = {};
10102      y[p + "Id"] = c[p + "Id"], y[p + "Index"] = c[p + "Index"], y[p + "Name"] = c[p + "Name"];
10103      var m = { mainType: p, query: y };
10104      d && (m.subType = d);
10105      var _ = c.excludeSeriesId, S;
10106      _ != null && (S = Z(), D(Rt(_), function(x) {
10107        var w = te(x, null);
10108        w != null && S.set(w, true);
10109      })), g && g.eachComponent(m, function(x) {
10110        var w = S && S.get(x.id) != null;
10111        if (!w) if (e_(c)) if (x instanceof Et) c.type === ai && !c.notBlur && !x.get(["emphasis", "disabled"]) && wE(x, c, h._api);
10112        else {
10113          var T = ty(x.mainType, x.componentIndex, c.name, h._api), C = T.focusSelf, A = T.dispatchers;
10114          c.type === ai && C && !c.notBlur && vd(x.mainType, x.componentIndex, h._api), A && D(A, function(M) {
10115            c.type === ai ? ma(M) : _a(M);
10116          });
10117        }
10118        else pd(c) && x instanceof Et && (AE(x, c, h._api), Q0(x), je(h));
10119      }, h), g && g.eachComponent(m, function(x) {
10120        var w = S && S.get(x.id) != null;
10121        w || b(h[p === "series" ? "_chartsMap" : "_componentsMap"][x.__viewId]);
10122      }, h);
10123      function b(x) {
10124        x && x.__alive && x[v] && x[v](x.__model, g, h._api, c);
10125      }
10126    }, La = { prepareAndUpdate: function(h) {
10127      Gi(this), La.update.call(this, h, { optionChanged: h.newOption != null });
10128    }, update: function(h, v) {
10129      var c = this._model, p = this._api, d = this._zr, g = this._coordSysMgr, y = this._scheduler;
10130      if (c) {
10131        c.setUpdatePayload(h), y.restoreData(c, h), y.performSeriesTasks(c), g.create(c, p), y.performDataProcessorTasks(c, h), uc(this, c), g.update(c, p), t(c), y.performVisualTasks(c, h), hc(this, c, p, h, v);
10132        var m = c.get("backgroundColor") || "transparent", _ = c.get("darkMode");
10133        d.setBackgroundColor(m), _ != null && _ !== "auto" && d.setDarkMode(_), br.trigger("afterupdate", c, p);
10134      }
10135    }, updateTransform: function(h) {
10136      var v = this, c = this._model, p = this._api;
10137      if (c) {
10138        c.setUpdatePayload(h);
10139        var d = [];
10140        c.eachComponent(function(y, m) {
10141          if (y !== "series") {
10142            var _ = v.getViewOfComponentModel(m);
10143            if (_ && _.__alive) if (_.updateTransform) {
10144              var S = _.updateTransform(m, c, p, h);
10145              S && S.update && d.push(_);
10146            } else d.push(_);
10147          }
10148        });
10149        var g = Z();
10150        c.eachSeries(function(y) {
10151          var m = v._chartsMap[y.__viewId];
10152          if (m.updateTransform) {
10153            var _ = m.updateTransform(y, c, p, h);
10154            _ && _.update && g.set(y.uid, 1);
10155          } else g.set(y.uid, 1);
10156        }), t(c), this._scheduler.performVisualTasks(c, h, { setDirty: true, dirtyMap: g }), Tu(this, c, p, h, {}, g), br.trigger("afterupdate", c, p);
10157      }
10158    }, updateView: function(h) {
10159      var v = this._model;
10160      v && (v.setUpdatePayload(h), Pt.markUpdateMethod(h, "updateView"), t(v), this._scheduler.performVisualTasks(v, h, { setDirty: true }), hc(this, v, this._api, h, {}), br.trigger("afterupdate", v, this._api));
10161    }, updateVisual: function(h) {
10162      var v = this, c = this._model;
10163      c && (c.setUpdatePayload(h), c.eachSeries(function(p) {
10164        p.getData().clearAllVisual();
10165      }), Pt.markUpdateMethod(h, "updateVisual"), t(c), this._scheduler.performVisualTasks(c, h, { visualType: "visual", setDirty: true }), c.eachComponent(function(p, d) {
10166        if (p !== "series") {
10167          var g = v.getViewOfComponentModel(d);
10168          g && g.__alive && g.updateVisual(d, c, v._api, h);
10169        }
10170      }), c.eachSeries(function(p) {
10171        var d = v._chartsMap[p.__viewId];
10172        d.updateVisual(p, c, v._api, h);
10173      }), br.trigger("afterupdate", c, this._api));
10174    }, updateLayout: function(h) {
10175      La.update.call(this, h);
10176    } }, lc = function(h, v, c, p) {
10177      if (h._disposed) {
10178        h.id;
10179        return;
10180      }
10181      for (var d = h._model, g = h._coordSysMgr.getCoordinateSystems(), y, m = Hs(d, c), _ = 0; _ < g.length; _++) {
10182        var S = g[_];
10183        if (S[v] && (y = S[v](d, m, p)) != null) return y;
10184      }
10185    }, uc = function(h, v) {
10186      var c = h._chartsMap, p = h._scheduler;
10187      v.eachSeries(function(d) {
10188        p.updateStreamModes(d, c[d.__viewId]);
10189      });
10190    }, fc = function(h, v) {
10191      var c = this, p = this.getModel(), d = h.type, g = h.escapeConnect, y = Yf[d], m = y.actionInfo, _ = (m.update || "update").split(":"), S = _.pop(), b = _[0] != null && Yr(_[0]);
10192      this[ye] = true;
10193      var x = [h], w = false;
10194      h.batch && (w = true, x = G(h.batch, function(P) {
10195        return P = Q(z({}, P), h), P.batch = null, P;
10196      }));
10197      var T = [], C, A = pd(h), M = e_(h);
10198      if (M && xC(this._api), D(x, function(P) {
10199        if (C = y.action(P, c._model, c._api), C = C || z({}, P), C.type = m.event || C.type, T.push(C), M) {
10200          var R = $g(h), E = R.queryOptionMap, O = R.mainTypeSpecified, k = O ? E.keys()[0] : "series";
10201          wu(c, S, P, k), je(c);
10202        } else A ? (wu(c, S, P, "series"), je(c)) : b && wu(c, S, P, b.main, b.sub);
10203      }), S !== "none" && !M && !A && !b) try {
10204        this[ze] ? (Gi(this), La.update.call(this, h), this[ze] = null) : La[S].call(this, h);
10205      } catch (P) {
10206        throw this[ye] = false, P;
10207      }
10208      if (w ? C = { type: m.event || d, escapeConnect: g, batch: T } : C = T[0], this[ye] = false, !v) {
10209        var I = this._messageCenter;
10210        if (I.trigger(C.type, C), A) {
10211          var L = { type: "selectchanged", escapeConnect: g, selected: DE(p), isFromClick: h.isFromClick || false, fromAction: h.type, fromActionPayload: h };
10212          I.trigger(L.type, L);
10213        }
10214      }
10215    }, ns = function(h) {
10216      for (var v = this._pendingActions; v.length; ) {
10217        var c = v.shift();
10218        fc.call(this, c, h);
10219      }
10220    }, is = function(h) {
10221      !h && this.trigger("updated");
10222    }, d1 = function(h, v) {
10223      h.on("rendered", function(c) {
10224        v.trigger("rendered", c), h.animation.isFinished() && !v[ze] && !v._scheduler.unfinished && !v._pendingActions.length && v.trigger("finished");
10225      });
10226    }, g1 = function(h, v) {
10227      h.on("mouseover", function(c) {
10228        var p = c.target, d = jn(p, ll);
10229        d && (TE(d, c, v._api), je(v));
10230      }).on("mouseout", function(c) {
10231        var p = c.target, d = jn(p, ll);
10232        d && (CE(d, c, v._api), je(v));
10233      }).on("click", function(c) {
10234        var p = c.target, d = jn(p, function(m) {
10235          return it(m).dataIndex != null;
10236        }, true);
10237        if (d) {
10238          var g = d.selected ? "unselect" : "select", y = it(d);
10239          v._api.dispatchAction({ type: g, dataType: y.dataType, dataIndexInside: y.dataIndex, seriesIndex: y.seriesIndex, isFromClick: true });
10240        }
10241      });
10242    };
10243    function t(h) {
10244      h.clearColorPalette(), h.eachSeries(function(v) {
10245        v.clearColorPalette();
10246      });
10247    }
10248    function a(h) {
10249      var v = [], c = [], p = false;
10250      if (h.eachComponent(function(m, _) {
10251        var S = _.get("zlevel") || 0, b = _.get("z") || 0, x = _.getZLevelKey();
10252        p = p || !!x, (m === "series" ? c : v).push({ zlevel: S, z: b, idx: _.componentIndex, type: m, key: x });
10253      }), p) {
10254        var d = v.concat(c), g, y;
10255        tf(d, function(m, _) {
10256          return m.zlevel === _.zlevel ? m.z - _.z : m.zlevel - _.zlevel;
10257        }), D(d, function(m) {
10258          var _ = h.getComponent(m.type, m.idx), S = m.zlevel, b = m.key;
10259          g != null && (S = Math.max(g, S)), b ? (S === g && b !== y && S++, y = b) : y && (S === g && S++, y = ""), g = S, _.setZLevel(S);
10260        });
10261      }
10262    }
10263    hc = function(h, v, c, p, d) {
10264      a(v), y1(h, v, c, p, d), D(h._chartsViews, function(g) {
10265        g.__alive = false;
10266      }), Tu(h, v, c, p, d), D(h._chartsViews, function(g) {
10267        g.__alive || g.remove(v, c);
10268      });
10269    }, y1 = function(h, v, c, p, d, g) {
10270      D(g || h._componentsViews, function(y) {
10271        var m = y.__model;
10272        u(m, y), y.render(m, v, c, p), s(m, y), f(m, y);
10273      });
10274    }, Tu = function(h, v, c, p, d, g) {
10275      var y = h._scheduler;
10276      d = z(d || {}, { updatedSeries: v.getSeries() }), br.trigger("series:beforeupdate", v, c, d);
10277      var m = false;
10278      v.eachSeries(function(_) {
10279        var S = h._chartsMap[_.__viewId];
10280        S.__alive = true;
10281        var b = S.renderTask;
10282        y.updatePayload(b, p), u(_, S), g && g.get(_.uid) && b.dirty(), b.perform(y.getPerformArgs(b)) && (m = true), S.group.silent = !!_.get("silent"), o(_, S), Q0(_);
10283      }), y.unfinished = m || y.unfinished, br.trigger("series:layoutlabels", v, c, d), br.trigger("series:transition", v, c, d), v.eachSeries(function(_) {
10284        var S = h._chartsMap[_.__viewId];
10285        s(_, S), f(_, S);
10286      }), i(h, v), br.trigger("series:afterupdate", v, c, d);
10287    }, je = function(h) {
10288      h[ic] = true, h.getZr().wakeUp();
10289    }, _1 = function(h) {
10290      h[ic] && (h.getZr().storage.traverse(function(v) {
10291        uo(v) || n(v);
10292      }), h[ic] = false);
10293    };
10294    function n(h) {
10295      for (var v = [], c = h.currentStates, p = 0; p < c.length; p++) {
10296        var d = c[p];
10297        d === "emphasis" || d === "blur" || d === "select" || v.push(d);
10298      }
10299      h.selected && h.states.select && v.push("select"), h.hoverState === Eh && h.states.emphasis ? v.push("emphasis") : h.hoverState === Ol && h.states.blur && v.push("blur"), h.useStates(v);
10300    }
10301    function i(h, v) {
10302      var c = h._zr, p = c.storage, d = 0;
10303      p.traverse(function(g) {
10304        g.isGroup || d++;
10305      }), d > v.get("hoverLayerThreshold") && !yt.node && !yt.worker && v.eachSeries(function(g) {
10306        if (!g.preventUsingHoverLayer) {
10307          var y = h._chartsMap[g.__viewId];
10308          y.__alive && y.eachRendered(function(m) {
10309            m.states.emphasis && (m.states.emphasis.hoverLayer = true);
10310          });
10311        }
10312      });
10313    }
10314    function o(h, v) {
10315      var c = h.get("blendMode") || null;
10316      v.eachRendered(function(p) {
10317        p.isGroup || (p.style.blend = c);
10318      });
10319    }
10320    function s(h, v) {
10321      if (!h.preventAutoZ) {
10322        var c = h.get("z") || 0, p = h.get("zlevel") || 0;
10323        v.eachRendered(function(d) {
10324          return l(d, c, p, -1 / 0), true;
10325        });
10326      }
10327    }
10328    function l(h, v, c, p) {
10329      var d = h.getTextContent(), g = h.getTextGuideLine(), y = h.isGroup;
10330      if (y) for (var m = h.childrenRef(), _ = 0; _ < m.length; _++) p = Math.max(l(m[_], v, c, p), p);
10331      else h.z = v, h.zlevel = c, p = Math.max(h.z2, p);
10332      if (d && (d.z = v, d.zlevel = c, isFinite(p) && (d.z2 = p + 2)), g) {
10333        var S = h.textGuideLineConfig;
10334        g.z = v, g.zlevel = c, isFinite(p) && (g.z2 = p + (S && S.showAbove ? 1 : -1));
10335      }
10336      return p;
10337    }
10338    function u(h, v) {
10339      v.eachRendered(function(c) {
10340        if (!uo(c)) {
10341          var p = c.getTextContent(), d = c.getTextGuideLine();
10342          c.stateTransition && (c.stateTransition = null), p && p.stateTransition && (p.stateTransition = null), d && d.stateTransition && (d.stateTransition = null), c.hasState() ? (c.prevStates = c.currentStates, c.clearStates()) : c.prevStates && (c.prevStates = null);
10343        }
10344      });
10345    }
10346    function f(h, v) {
10347      var c = h.getModel("stateAnimation"), p = h.isAnimationEnabled(), d = c.get("duration"), g = d > 0 ? { duration: d, delay: c.get("delay"), easing: c.get("easing") } : null;
10348      v.eachRendered(function(y) {
10349        if (y.states && y.states.emphasis) {
10350          if (uo(y)) return;
10351          if (y instanceof mt && RE(y), y.__dirty) {
10352            var m = y.prevStates;
10353            m && y.useStates(m);
10354          }
10355          if (p) {
10356            y.stateTransition = g;
10357            var _ = y.getTextContent(), S = y.getTextGuideLine();
10358            _ && (_.stateTransition = g), S && (S.stateTransition = g);
10359          }
10360          y.__dirty && n(y);
10361        }
10362      });
10363    }
10364    m1 = function(h) {
10365      return new (function(v) {
10366        N(c, v);
10367        function c() {
10368          return v !== null && v.apply(this, arguments) || this;
10369        }
10370        return c.prototype.getCoordinateSystems = function() {
10371          return h._coordSysMgr.getCoordinateSystems();
10372        }, c.prototype.getComponentByElement = function(p) {
10373          for (; p; ) {
10374            var d = p.__ecComponentInfo;
10375            if (d != null) return h._model.getComponent(d.mainType, d.index);
10376            p = p.parent;
10377          }
10378        }
10378, c.prototype.enterEmphasis = function(p, d) {
10379          ma(p, d), je(h);
10380        }, c.prototype.leaveEmphasis = function(p, d) {
10381          _a(p, d), je(h);
10382        }, c.prototype.enterBlur = function(p) {
10383          yC(p), je(h);
10384        }, c.prototype.leaveBlur = function(p) {
10385          Qg(p), je(h);
10386        }, c.prototype.enterSelect = function(p) {
10387          mC(p), je(h);
10388        }, c.prototype.leaveSelect = function(p) {
10389          _C(p), je(h);
10390        }, c.prototype.getModel = function() {
10391          return h.getModel();
10392        }, c.prototype.getViewOfComponentModel = function(p) {
10393          return h.getViewOfComponentModel(p);
10394        }, c.prototype.getViewOfSeriesModel = function(p) {
10395          return h.getViewOfSeriesModel(p);
10396        }, c;
10397      }(lA))(h);
10398    }, nD = function(h) {
10399      function v(c, p) {
10400        for (var d = 0; d < c.length; d++) {
10401          var g = c[d];
10402          g[oc] = p;
10403        }
10404      }
10405      D(Zs, function(c, p) {
10406        h._messageCenter.on(p, function(d) {
10407          if (Xf[h.group] && h[oc] !== p1) {
10408            if (d && d.escapeConnect) return;
10409            var g = h.makeActionFromEvent(d), y = [];
10410            D(ii, function(m) {
10411              m !== h && m.group === h.group && y.push(m);
10412            }), v(y, p1), D(y, function(m) {
10413              m[oc] !== rB && m.dispatchAction(g);
10414            }), v(y, aB);
10415          }
10416        });
10417      });
10418    };
10419  }(), e;
10420}(cr), Ly = Uf.prototype;
10421Ly.on = QA("on");
10422Ly.off = QA("off");
10423Ly.one = function(r, e, t) {
10424  var a = this;
10425  function n() {
10426    for (var i = [], o = 0; o < arguments.length; o++) i[o] = arguments[o];
10427    e && e.apply && e.apply(this, i), a.off(r, n);
10428  }
10429  this.on.call(this, r, n, t);
10430};
10431var nB = ["click", "dblclick", "mouseover", "mouseout", "mousemove", "mousedown", "mouseup", "globalout", "contextmenu"];
10432var Yf = {}, Zs = {}, Ld = [], Pd = [], $f = [], iD = {}, Rd = {}, ii = {}, Xf = {}, iB = +/* @__PURE__ */ new Date() - 0, oB = +/* @__PURE__ */ new Date() - 0, Py = "_echarts_instance_";
10433function sB(r, e, t) {
10434  var a = !(t && t.ssr);
10435  if (a) {
10436    var n = Ry(r);
10437    if (n) return n;
10438  }
10439  var i = new Uf(r, e, t);
10440  return i.id = "ec_" + iB++, ii[i.id] = i, a && QT(r, Py, i.id), nD(i), br.trigger("afterinit", i), i;
10441}
10442function lB(r) {
10443  if (V(r)) {
10444    var e = r;
10445    r = null, D(e, function(t) {
10446      t.group != null && (r = t.group);
10447    }), r = r || "g_" + oB++, D(e, function(t) {
10448      t.group = r;
10449    });
10450  }
10451  return Xf[r] = true, r;
10452}
10453function oD(r) {
10454  Xf[r] = false;
10455}
10456var uB = oD;
10457function fB(r) {
10458  Y(r) ? r = ii[r] : r instanceof Uf || (r = Ry(r)), r instanceof Uf && !r.isDisposed() && r.dispose();
10459}
10460function Ry(r) {
10461  return ii[SR(r, Py)];
10462}
10463function hB(r) {
10464  return ii[r];
10465}
10466function Ey(r, e) {
10467  iD[r] = e;
10468}
10469function ky(r) {
10470  vt(Pd, r) < 0 && Pd.push(r);
10471}
10472function Oy(r, e) {
10473  Ny(Ld, r, e, qN);
10474}
10475function sD(r) {
10476  qh("afterinit", r);
10477}
10478function lD(r) {
10479  qh("afterupdate", r);
10480}
10481function qh(r, e) {
10482  br.on(r, e);
10483}
10484function kr(r, e, t) {
10485  j(e) && (t = e, e = "");
10486  var a = tt(r) ? r.type : [r, r = { event: e }][0];
10487  r.event = (r.event || a).toLowerCase(), e = r.event, !Zs[e] && (we(c1.test(a) && c1.test(e)), Yf[a] || (Yf[a] = { action: t, actionInfo: r }), Zs[e] = a);
10488}
10489function uD(r, e) {
10490  Vo.register(r, e);
10491}
10492function vB(r) {
10493  var e = Vo.get(r);
10494  if (e) return e.getDimensionsInfo ? e.getDimensionsInfo() : e.dimensions.slice();
10495}
10496function fD(r, e) {
10497  Ny($f, r, e, qA, "layout");
10498}
10499function hn(r, e) {
10500  Ny($f, r, e, KA, "visual");
10501}
10502var S1 = [];
10503function Ny(r, e, t, a, n) {
10504  if ((j(e) || tt(e)) && (t = e, e = a), !(vt(S1, t) >= 0)) {
10505    S1.push(t);
10506    var i = OA.wrapStageHandler(t, n);
10507    i.__prio = e, i.__raw = t, r.push(i);
10508  }
10509}
10510function By(r, e) {
10511  Rd[r] = e;
10512}
10513function cB(r) {
10514  nT({ createCanvas: r });
10515}
10516function hD(r, e, t) {
10517  var a = ZA("registerMap");
10518  a && a(r, e, t);
10519}
10520function pB(r) {
10521  var e = ZA("getMap");
10522  return e && e(r);
10523}
10524var vD = CO;
10525hn(Iy, jO);
10526hn(Zh, JO);
10527hn(Zh, QO);
10528hn(Iy, vN);
10529hn(Zh, cN);
10530hn(jA, FN);
10531ky(fA);
10532Oy(XN, iO);
10533By("default", tN);
10534kr({ type: ai, event: ai, update: ai }, $t);
10535kr({ type: sf, event: sf, update: sf }, $t);
10536kr({ type: Ws, event: Ws, update: Ws }, $t);
10537kr({ type: lf, event: lf, update: lf }, $t);
10538kr({ type: Us, event: Us, update: Us }, $t);
10539Ey("light", fN);
10540Ey("dark", VA);
10541var dB = {}, x1 = [], gB = { registerPreprocessor: ky, registerProcessor: Oy, registerPostInit: sD, registerPostUpdate: lD, registerUpdateLifecycle: qh, registerAction: kr, registerCoordinateSystem: uD, registerLayout: fD, registerVisual: hn, registerTransform: vD, registerLoading: By, registerMap: hD, registerImpl: HN, PRIORITY: JA, ComponentModel: gt, ComponentView: Vt, SeriesModel: Et, ChartView: Pt, registerComponentModel: function(r) {
10542  gt.registerClass(r);
10543}, registerComponentView: function(r) {
10544  Vt.registerClass(r);
10545}, registerSeriesModel: function(r) {
10546  Et.registerClass(r);
10547}, registerChartView: function(r) {
10548  Pt.registerClass(r);
10549}, registerSubTypeDefaulter: function(r, e) {
10550  gt.registerSubTypeDefaulter(r, e);
10551}, registerPainter: function(r, e) {
10552  GT(r, e);
10553} };
10554function pt(r) {
10555  if (V(r)) {
10556    D(r, function(e) {
10557      pt(e);
10558    });
10559    return;
10560  }
10561  vt(x1, r) >= 0 || (x1.push(r), j(r) && (r = { install: r }), r.install(gB));
10562}
10563function os(r) {
10564  return r == null ? 0 : r.length || 1;
10565}
10566function b1(r) {
10567  return r;
10568}
10569var Sa = function() {
10570  function r(e, t, a, n, i, o) {
10571    this._old = e, this._new = t, this._oldKeyGetter = a || b1, this._newKeyGetter = n || b1, this.context = i, this._diffModeMultiple = o === "multiple";
10572  }
10573  return r.prototype.add = function(e) {
10574    return this._add = e, this;
10575  }, r.prototype.update = function(e) {
10576    return this._update = e, this;
10577  }, r.prototype.updateManyToOne = function(e) {
10578    return this._updateManyToOne = e, this;
10579  }
10579, r.prototype.updateOneToMany = function(e) {
10580    return this._updateOneToMany = e, this;
10581  }, r.prototype.updateManyToMany = function(e) {
10582    return this._updateManyToMany = e, this;
10583  }, r.prototype.remove = function(e) {
10584    return this._remove = e, this;
10585  }, r.prototype.execute = function() {
10586    this[this._diffModeMultiple ? "_executeMultiple" : "_executeOneToOne"]();
10587  }, r.prototype._executeOneToOne = function() {
10588    var e = this._old, t = this._new, a = {}, n = new Array(e.length), i = new Array(t.length);
10589    this._initIndexMap(e, null, n, "_oldKeyGetter"), this._initIndexMap(t, a, i, "_newKeyGetter");
10590    for (var o = 0; o < e.length; o++) {
10591      var s = n[o], l = a[s], u = os(l);
10592      if (u > 1) {
10593        var f = l.shift();
10594        l.length === 1 && (a[s] = l[0]), this._update && this._update(f, o);
10595      } else u === 1 ? (a[s] = null, this._update && this._update(l, o)) : this._remove && this._remove(o);
10596    }
10597    this._performRestAdd(i, a);
10598  }, r.prototype._executeMultiple = function() {
10599    var e = this._old, t = this._new, a = {}, n = {}, i = [], o = [];
10600    this._initIndexMap(e, a, i, "_oldKeyGetter"), this._initIndexMap(t, n, o, "_newKeyGetter");
10601    for (var s = 0; s < i.length; s++) {
10602      var l = i[s], u = a[l], f = n[l], h = os(u), v = os(f);
10603      if (h > 1 && v === 1) this._updateManyToOne && this._updateManyToOne(f, u), n[l] = null;
10604      else if (h === 1 && v > 1) this._updateOneToMany && this._updateOneToMany(f, u), n[l] = null;
10605      else if (h === 1 && v === 1) this._update && this._update(f, u), n[l] = null;
10606      else if (h > 1 && v > 1) this._updateManyToMany && this._updateManyToMany(f, u), n[l] = null;
10607      else if (h > 1) for (var c = 0; c < h; c++) this._remove && this._remove(u[c]);
10608      else this._remove && this._remove(u);
10609    }
10610    this._performRestAdd(o, n);
10611  }, r.prototype._performRestAdd = function(e, t) {
10612    for (var a = 0; a < e.length; a++) {
10613      var n = e[a], i = t[n], o = os(i);
10614      if (o > 1) for (var s = 0; s < o; s++) this._add && this._add(i[s]);
10615      else o === 1 && this._add && this._add(i);
10616      t[n] = null;
10617    }
10618  }, r.prototype._initIndexMap = function(e, t, a, n) {
10619    for (var i = this._diffModeMultiple, o = 0; o < e.length; o++) {
10620      var s = "_ec_" + this[n](e[o], o);
10621      if (i || (a[o] = s), !!t) {
10622        var l = t[s], u = os(l);
10623        u === 0 ? (t[s] = o, i && a.push(s)) : u === 1 ? t[s] = [l, o] : l.push(o);
10624      }
10625    }
10626  }, r;
10627}(), yB = function() {
10628  function r(e, t) {
10629    this._encode = e, this._schema = t;
10630  }
10631  return r.prototype.get = function() {
10632    return { fullDimensions: this._getFullDimensionNames(), encode: this._encode };
10633  }, r.prototype._getFullDimensionNames = function() {
10634    return this._cachedDimNames || (this._cachedDimNames = this._schema ? this._schema.makeOutputDimensionNames() : []), this._cachedDimNames;
10635  }, r;
10636}();
10637function mB(r, e) {
10638  var t = {}, a = t.encode = {}, n = Z(), i = [], o = [], s = {};
10639  D(r.dimensions, function(v) {
10640    var c = r.getDimensionInfo(v), p = c.coordDim;
10641    if (p) {
10642      var d = c.coordDimIndex;
10643      vc(a, p)[d] = v, c.isExtraCoord || (n.set(p, 1), _B(c.type) && (i[0] = v), vc(s, p)[d] = r.getDimensionIndex(c.name)), c.defaultTooltip && o.push(v);
10644    }
10645    eA.each(function(g, y) {
10646      var m = vc(a, y), _ = c.otherDims[y];
10647      _ != null && _ !== false && (m[_] = c.name);
10648    });
10649  });
10650  var l = [], u = {};
10651  n.each(function(v, c) {
10652    var p = a[c];
10653    u[c] = p[0], l = l.concat(p);
10654  }), t.dataDimsOnCoord = l, t.dataDimIndicesOnCoord = G(l, function(v) {
10655    return r.getDimensionInfo(v).storeDimIndex;
10656  }), t.encodeFirstDimNotExtra = u;
10657  var f = a.label;
10658  f && f.length && (i = f.slice());
10659  var h = a.tooltip;
10660  return h && h.length ? o = h.slice() : o.length || (o = i.slice()), a.defaultedLabel = i, a.defaultedTooltip = o, t.userOutput = new yB(s, e), t;
10661}
10662function vc(r, e) {
10663  return r.hasOwnProperty(e) || (r[e] = []), r[e];
10664}
10665function Zf(r) {
10666  return r === "category" ? "ordinal" : r === "time" ? "time" : "float";
10667}
10668function _B(r) {
10669  return !(r === "ordinal" || r === "time");
10670}
10671var cf = /* @__PURE__ */ function() {
10672  function r(e) {
10673    this.otherDims = {}, e != null && z(this, e);
10674  }
10675  return r;
10676}(), SB = bt(), xB = { float: "f", int: "i", ordinal: "o", number: "n", time: "t" }, cD = function() {
10677  function r(e) {
10678    this.dimensions = e.dimensions, this._dimOmitted = e.dimensionOmitted, this.source = e.source, this._fullDimCount = e.fullDimensionCount, this._updateDimOmitted(e.dimensionOmitted);
10679  }
10680  return r.prototype.isDimensionOmitted = function() {
10681    return this._dimOmitted;
10682  }, r.prototype._updateDimOmitted = function(e) {
10683    this._dimOmitted = e, e && (this._dimNameMap || (this._dimNameMap = gD(this.source)));
10684  }, r.prototype.getSourceDimensionIndex = function(e) {
10685    return st(this._dimNameMap.get(e), -1);
10686  }, r.prototype.getSourceDimension = function(e) {
10687    var t = this.source.dimensionsDefine;
10688    if (t) return t[e];
10689  }, r.prototype.makeStoreSchema = function() {
10690    for (var e = this._fullDimCount, t = vA(this.source), a = !yD(e), n = "", i = [], o = 0, s = 0; o < e; o++) {
10691      var l = void 0, u = void 0, f = void 0, h = this.dimensions[s];
10692      if (h && h.storeDimIndex === o) l = t ? h.name : null, u = h.type, f = h.ordinalMeta, s++;
10693      else {
10694        var v = this.getSourceDimension(o);
10695        v && (l = t ? v.name : null, u = v.type);
10696      }
10697      i.push({ property: l, type: u, ordinalMeta: f }), t && l != null && (!h || !h.isCalculationCoord) && (n += a ? l.replace(/\`/g, "`1").replace(/\$/g, "`2") : l), n += "$", n += xB[u] || "f", f && (n += f.uid), n += "$";
10698    }
10699    var c = this.source, p = [c.seriesLayoutBy, c.startIndex, n].join("$$");
10700    return { dimensions: i, hash: p };
10701  }, r.prototype.makeOutputDimensionNames = function() {
10702    for (var e = [], t = 0, a = 0; t < this._fullDimCount; t++) {
10703      var n = void 0, i = this.dimensions[a];
10704      if (i && i.storeDimIndex === t) i.isCalculationCoord || (n = i.name), a++;
10705      else {
10706        var o = this.getSourceDimension(t);
10707        o && (n = o.name);
10708      }
10709      e.push(n);
10710    }
10711    return e;
10712  }, r.prototype.appendCalculationDimension = function(e) {
10713    this.dimensions.push(e), e.isCalculationCoord = true, this._fullDimCount++, this._updateDimOmitted(true);
10714  }, r;
10715}();
10716function pD(r) {
10717  return r instanceof cD;
10718}
10719function dD(r) {
10720  for (var e = Z(), t = 0; t < (r || []).length; t++) {
10721    var a = r[t], n = tt(a) ? a.name : a;
10722    n != null && e.get(n) == null && e.set(n, t);
10723  }
10724  return e;
10725}
10726function gD(r) {
10727  var e = SB(r);
10728  return e.dimNameMap || (e.dimNameMap = dD(r.dimensionsDefine));
10729}
10730function yD(r) {
10731  return r > 30;
10732}
10733var ss = tt, Pa = G, bB = typeof Int32Array > "u" ? Array : Int32Array, wB = "e\0\0", w1 = -1, TB = ["hasItemOption", "_nameList", "_idList", "_invertedIndicesMap", "_dimSummary", "userOutput", "_rawData", "_dimValueGetter", "_nameDimIdx", "_idDimIdx", "_nameRepeatCount"], CB = ["_approximateExtent"], T1, Cu, ls, us, cc, fs, pc, be = function() {
10734  function r(e, t) {
10735    this.type = "list", this._dimOmitted = false, this._nameList = [], this._idList = [], this._visual = {}, this._layout = {}, this._itemVisuals = [], this._itemLayouts = [], this._graphicEls = [], this._approximateExtent = {}, this._calculationInfo = {}, this.hasItemOption = false, this.TRANSFERABLE_METHODS = ["cloneShallow", "downSample", "minmaxDownSample", "lttbDownSample", "map"], this.CHANGABLE_METHODS = ["filterSelf", "selectRange"], this.DOWNSAMPLE_METHODS = ["downSample", "minmaxDownSample", "lttbDownSample"];
10736    var a, n = false;
10737    pD(e) ? (a = e.dimensions, this._dimOmitted = e.isDimensionOmitted(), this._schema = e) : (n = true, a = e), a = a || ["x", "y"];
10738    for (var i = {}, o = [], s = {}, l = false, u = {}, f = 0; f < a.length; f++) {
10739      var h = a[f], v = Y(h) ? new cf({ name: h }) : h instanceof cf ? h : new cf(h), c = v.name;
10740      v.type = v.type || "float", v.coordDim || (v.coordDim = c, v.coordDimIndex = 0);
10741      var p = v.otherDims = v.otherDims || {};
10742      o.push(c), i[c] = v, u[c] != null && (l = true), v.createInvertedIndices && (s[c] = []), p.itemName === 0 && (this._nameDimIdx = f), p.itemId === 0 && (this._idDimIdx = f), n && (v.storeDimIndex = f);
10743    }
10744    if (this.dimensions = o, this._dimInfos = i, this._initGetDimensionInfo(l), this.hostModel = t, this._invertedIndicesMap = s, this._dimOmitted) {
10745      var d = this._dimIdxToName = Z();
10746      D(o, function(g) {
10747        d.set(i[g].storeDimIndex, g);
10748      });
10749    }
10750  }
10751  return r.prototype.getDimension = function(e) {
10752    var t = this._recognizeDimIndex(e);
10753    if (t == null) return e;
10754    if (t = e, !this._dimOmitted) return this.dimensions[t];
10755    var a = this._dimIdxToName.get(t);
10756    if (a != null) return a;
10757    var n = this._schema.getSourceDimension(t);
10758    if (n) return n.name;
10759  }, r.prototype.getDimensionIndex = function(e) {
10760    var t = this._recognizeDimIndex(e);
10761    if (t != null) return t;
10762    if (e == null) return -1;
10763    var a = this._getDimInfo(e);
10764    return a ? a.storeDimIndex : this._dimOmitted ? this._schema.getSourceDimensionIndex(e) : -1;
10765  }, r.prototype._recognizeDimIndex = function(e) {
10766    if (wt(e) || e != null && !isNaN(e) && !this._getDimInfo(e) && (!this._dimOmitted || this._schema.getSourceDimensionIndex(e) < 0)) return +e;
10767  }, r.prototype._getStoreDimIndex = function(e) {
10768    var t = this.getDimensionIndex(e);
10769    return t;
10770  }, r.prototype.getDimensionInfo = function(e) {
10771    return this._getDimInfo(this.getDimension(e));
10772  }, r.prototype._initGetDimensionInfo = function(e) {
10773    var t = this._dimInfos;
10774    this._getDimInfo = e ? function(a) {
10775      return t.hasOwnProperty(a) ? t[a] : void 0;
10776    } : function(a) {
10777      return t[a];
10778    };
10779  }, r.prototype.getDimensionsOnCoord = function() {
10780    return this._dimSummary.dataDimsOnCoord.slice();
10781  }, r.prototype.mapDimension = function(e, t) {
10782    var a = this._dimSummary;
10783    if (t == null) return a.encodeFirstDimNotExtra[e];
10784    var n = a.encode[e];
10785    return n ? n[t] : null;
10786  }, r.prototype.mapDimensionsAll = function(e) {
10787    var t = this._dimSummary, a = t.encode[e];
10788    return (a || []).slice();
10789  }, r.prototype.getStore = function() {
10790    return this._store;
10791  }, r.prototype.initData = function(e, t, a) {
10792    var n = this, i;
10793    if (e instanceof wd && (i = e), !i) {
10794      var o = this.dimensions, s = by(e) || ce(e) ? new cA(e, o.length) : e;
10795      i = new wd();
10796      var l = Pa(o, function(u) {
10797        return { type: n._dimInfos[u].type, property: u };
10798      });
10799      i.initData(s, l, a);
10800    }
10801    this._store = i, this._nameList = (t || []).slice(), this._idList = [], this._nameRepeatCount = {}, this._doInit(0, i.count()), this._dimSummary = mB(this, this._schema), this.userOutput = this._dimSummary.userOutput;
10802  }, r.prototype.appendData = function(e) {
10803    var t = this._store.appendData(e);
10804    this._doInit(t[0], t[1]);
10805  }, r.prototype.appendValues = function(e, t) {
10806    var a = this._store.appendValues(e, t && t.length), n = a.start, i = a.end, o = this._shouldMakeIdFromName();
10807    if (this._updateOrdinalMeta(), t) for (var s = n; s < i; s++) {
10808      var l = s - n;
10809      this._nameList[s] = t[l], o && pc(this, s);
10810    }
10811  }, r.prototype._updateOrdinalMeta = function() {
10812    for (var e = this._store, t = this.dimensions, a = 0; a < t.length; a++) {
10813      var n = this._dimInfos[t[a]];
10814      n.ordinalMeta && e.collectOrdinalMeta(n.storeDimIndex, n.ordinalMeta);
10815    }
10816  }, r.prototype._shouldMakeIdFromName = function() {
10817    var e = this._store.getProvider();
10818    return this._idDimIdx == null && e.getSource().sourceFormat !== Ka && !e.fillStorage;
10819  }, r.prototype._doInit = function(e, t) {
10820    if (!(e >= t)) {
10821      var a = this._store, n = a.getProvider();
10822      this._updateOrdinalMeta();
10823      var i = this._nameList, o = this._idList, s = n.getSource().sourceFormat, l = s === dr;
10824      if (l && !n.pure) for (var u = [], f = e; f < t; f++) {
10825        var h = n.getItem(f, u);
10826        if (!this.hasItemOption && sR(h) && (this.hasItemOption = true), h) {
10827          var v = h.name;
10828          i[f] == null && v != null && (i[f] = te(v, null));
10829          var c = h.id;
10830          o[f] == null && c != null && (o[f] = te(c, null));
10831        }
10832      }
10833      if (this._shouldMakeIdFromName()) for (var f = e; f < t; f++) pc(this, f);
10834      T1(this);
10835    }
10836  }, r.prototype.getApproximateExtent = function(e) {
10837    return this._approximateExtent[e] || this._store.getDataExtent(this._getStoreDimIndex(e));
10838  }, r.prototype.setApproximateExtent = function(e, t) {
10839    t = this.getDimension(t), this._approximateExtent[t] = e.slice();
10840  }, r.prototype.getCalculationInfo = function(e) {
10841    return this._calculationInfo[e];
10842  }, r.prototype.setCalculationInfo = function(e, t) {
10843    ss(e) ? z(this._calculationInfo, e) : this._calculationInfo[e] = t;
10844  }, r.prototype.getName = function(e) {
10845    var t = this.getRawIndex(e), a = this._nameList[t];
10846    return a == null && this._nameDimIdx != null && (a = ls(this, this._nameDimIdx, t)), a == null && (a = ""), a;
10847  }, r.prototype._getCategory = function(e, t) {
10848    var a = this._store.get(e, t), n = this._store.getOrdinalMeta(e);
10849    return n ? n.categories[a] : a;
10850  }, r.prototype.getId = function(e) {
10851    return Cu(this, this.getRawIndex(e));
10852  }, r.prototype.count = function() {
10853    return this._store.count();
10854  }, r.prototype.get = function(e, t) {
10855    var a = this._store, n = this._dimInfos[e];
10856    if (n) return a.get(n.storeDimIndex, t);
10857  }, r.prototype.getByRawIndex = function(e, t) {
10858    var a = this._store, n = this._dimInfos[e];
10859    if (n) return a.getByRawIndex(n.storeDimIndex, t);
10860  }, r.prototype.getIndices = function() {
10861    return this._store.getIndices();
10862  }, r.prototype.getDataExtent = function(e) {
10863    return this._store.getDataExtent(this._getStoreDimIndex(e));
10864  }, r.prototype.getSum = function(e) {
10865    return this._store.getSum(this._getStoreDimIndex(e));
10866  }, r.prototype.getMedian = function(e) {
10867    return this._store.getMedian(this._getStoreDimIndex(e));
10868  }, r.prototype.getValues = function(e, t) {
10869    var a = this, n = this._store;
10870    return V(e) ? n.getValues(Pa(e, function(i) {
10871      return a._getStoreDimIndex(i);
10872    }), t) : n.getValues(e);
10873  }, r.prototype.hasValue = function(e) {
10874    for (var t = this._dimSummary.dataDimIndicesOnCoord, a = 0, n = t.length; a < n; a++) if (isNaN(this._store.get(t[a], e))) return false;
10875    return true;
10876  }, r.prototype.indexOfName = function(e) {
10877    for (var t = 0, a = this._store.count(); t < a; t++) if (this.getName(t) === e) return t;
10878    return -1;
10879  }, r.prototype.getRawIndex = function(e) {
10880    return this._store.getRawIndex(e);
10881  }, r.prototype.indexOfRawIndex = function(e) {
10882    return this._store.indexOfRawIndex(e);
10883  }, r.prototype.rawIndexOf = function(e, t) {
10884    var a = e && this._invertedIndicesMap[e], n = a && a[t];
10885    return n == null || isNaN(n) ? w1 : n;
10886  }, r.prototype.indicesOfNearest = function(e, t, a) {
10887    return this._store.indicesOfNearest(this._getStoreDimIndex(e), t, a);
10888  }, r.prototype.each = function(e, t, a) {
10889    j(e) && (a = t, t = e, e = []);
10890    var n = a || this, i = Pa(us(e), this._getStoreDimIndex, this);
10891    this._store.each(i, n ? $(t, n) : t);
10892  }, r.prototype.filterSelf = function(e, t, a) {
10893    j(e) && (a = t, t = e, e = []);
10894    var n = a || this, i = Pa(us(e), this._getStoreDimIndex, this);
10895    return this._store = this._store.filter(i, n ? $(t, n) : t), this;
10896  }, r.prototype.selectRange = function(e) {
10897    var t = this, a = {}, n = _t(e);
10898    return D(n, function(i) {
10899      var o = t._getStoreDimIndex(i);
10900      a[o] = e[i];
10901    }), this._store = this._store.selectRange(a), this;
10902  }, r.prototype.mapArray = function(e, t, a) {
10903    j(e) && (a = t, t = e, e = []), a = a || this;
10904    var n = [];
10905    return this.each(e, function() {
10906      n.push(t && t.apply(this, arguments));
10907    }, a), n;
10908  }, r.prototype.map = function(e, t, a, n) {
10909    var i = a || n || this, o = Pa(us(e), this._getStoreDimIndex, this), s = fs(this);
10910    return s._store = this._store.map(o, i ? $(t, i) : t), s;
10911  }, r.prototype.modify = function(e, t, a, n) {
10912    var i = a || n || this, o = Pa(us(e), this._getStoreDimIndex, this);
10913    this._store.modify(o, i ? $(t, i) : t);
10914  }, r.prototype.downSample = function(e, t, a, n) {
10915    var i = fs(this);
10916    return i._store = this._store.downSample(this._getStoreDimIndex(e), t, a, n), i;
10917  }, r.prototype.minmaxDownSample = function(e, t) {
10918    var a = fs(this);
10919    return a._store = this._store.minmaxDownSample(this._getStoreDimIndex(e), t), a;
10920  }, r.prototype.lttbDownSample = function(e, t) {
10921    var a = fs(this);
10922    return a._store = this._store.lttbDownSample(this._getStoreDimIndex(e), t), a;
10923  }, r.prototype.getRawDataItem = function(e) {
10924    return this._store.getRawDataItem(e);
10925  }, r.prototype.getItemModel = function(e) {
10926    var t = this.hostModel, a = this.getRawDataItem(e);
10927    return new At(a, t, t && t.ecModel);
10928  }, r.prototype.diff = function(e) {
10929    var t = this;
10930    return new Sa(e ? e.getStore().getIndices() : [], this.getStore().getIndices(), function(a) {
10931      return Cu(e, a);
10932    }, function(a) {
10933      return Cu(t, a);
10934    });
10935  }, r.prototype.getVisual = function(e) {
10936    var t = this._visual;
10937    return t && t[e];
10938  }, r.prototype.setVisual = function(e, t) {
10939    this._visual = this._visual || {}, ss(e) ? z(this._visual, e) : this._visual[e] = t;
10940  }, r.prototype.getItemVisual = function(e, t) {
10941    var a = this._itemVisuals[e], n = a && a[t];
10942    return n ?? this.getVisual(t);
10943  }, r.prototype.hasItemVisual = function() {
10944    return this._itemVisuals.length > 0;
10945  }, r.prototype.ensureUniqueItemVisual = function(e, t) {
10946    var a = this._itemVisuals, n = a[e];
10947    n || (n = a[e] = {});
10948    var i = n[t];
10949    return i == null && (i = this.getVisual(t), V(i) ? i = i.slice() : ss(i) && (i = z({}, i)), n[t] = i), i;
10950  }, r.prototype.setItemVisual = function(e, t, a) {
10951    var n = this._itemVisuals[e] || {};
10952    this._itemVisuals[e] = n, ss(t) ? z(n, t) : n[t] = a;
10953  }, r.prototype.clearAllVisual = function() {
10954    this._visual = {}, this._itemVisuals = [];
10955  }, r.prototype.setLayout = function(e, t) {
10956    ss(e) ? z(this._layout, e) : this._layout[e] = t;
10957  }, r.prototype.getLayout = function(e) {
10958    return this._layout[e];
10959  }, r.prototype.getItemLayout = function(e) {
10960    return this._itemLayouts[e];
10961  }, r.prototype.setItemLayout = function(e, t, a) {
10962    this._itemLayouts[e] = a ? z(this._itemLayouts[e] || {}, t) : t;
10963  }, r.prototype.clearItemLayouts = function() {
10964    this._itemLayouts.length = 0;
10965  }, r.prototype.setItemGraphicEl = function(e, t) {
10966    var a = this.hostModel && this.hostModel.seriesIndex;
10967    fd(a, this.dataType, e, t), this._graphicEls[e] = t;
10968  }, r.prototype.getItemGraphicEl = function(e) {
10969    return this._graphicEls[e];
10970  }, r.prototype.eachItemGraphicEl = function(e, t) {
10971    D(this._graphicEls, function(a, n) {
10972      a && e && e.call(t, a, n);
10973    });
10974  }, r.prototype.cloneShallow = function(e) {
10975    return e || (e = new r(this._schema ? this._schema : Pa(this.dimensions, this._getDimInfo, this), this.hostModel)), cc(e, this), e._store = this._store, e;
10976  }, r.prototype.wrapMethod = function(e, t) {
10977    var a = this[e];
10978    j(a) && (this.__wrappedMethods = this.__wrappedMethods || [], this.__wrappedMethods.push(e), this[e] = function() {
10979      var n = a.apply(this, arguments);
10980      return t.apply(this, [n].concat(xh(arguments)));
10981    });
10982  }, r.internalField = function() {
10983    T1 = function(e) {
10984      var t = e._invertedIndicesMap;
10985      D(t, function(a, n) {
10986        var i = e._dimInfos[n], o = i.ordinalMeta, s = e._store;
10987        if (o) {
10988          a = t[n] = new bB(o.categories.length);
10989          for (var l = 0; l < a.length; l++) a[l] = w1;
10990          for (var l = 0; l < s.count(); l++) a[s.get(i.storeDimIndex, l)] = l;
10991        }
10992      });
10993    }, ls = function(e, t, a) {
10994      return te(e._getCategory(t, a), null);
10995    }, Cu = function(e, t) {
10996      var a = e._idList[t];
10997      return a == null && e._idDimIdx != null && (a = ls(e, e._idDimIdx, t)), a == null && (a = wB + t), a;
10998    }, us = function(e) {
10999      return V(e) || (e = e != null ? [e] : []), e;
11000    }, fs = function(e) {
11001      var t = new r(e._schema ? e._schema : Pa(e.dimensions, e._getDimInfo, e), e.hostModel);
11002      return cc(t, e), t;
11003    }, cc = function(e, t) {
11004      D(TB.concat(t.__wrappedMethods || []), function(a) {
11005        t.hasOwnProperty(a) && (e[a] = t[a]);
11006      }), e.__wrappedMethods = t.__wrappedMethods, D(CB, function(a) {
11007        e[a] = rt(t[a]);
11008      }), e._calculationInfo = z({}, t._calculationInfo);
11009    }, pc = function(e, t) {
11010      var a = e._nameList, n = e._idList, i = e._nameDimIdx, o = e._idDimIdx, s = a[t], l = n[t];
11011      if (s == null && i != null && (a[t] = s = ls(e, i, t)), l == null && o != null && (n[t] = l = ls(e, o, t)), l == null && s != null) {
11012        var u = e._nameRepeatCount, f = u[s] = (u[s] || 0) + 1;
11013        l = s, f > 1 && (l += "__ec__" + f), n[t] = l;
11014      }
11015    };
11016  }(), r;
11017}();
11018function AB(r, e) {
11019  return Wo(r, e).dimensions;
11020}
11021function Wo(r, e) {
11022  by(r) || (r = wy(r)), e = e || {};
11023  var t = e.coordDimensions || [], a = e.dimensionsDefine || r.dimensionsDefine || [], n = Z(), i = [], o = MB(r, t, a, e.dimensionsCount), s = e.canOmitUnusedDimensions && yD(o), l = a === r.dimensionsDefine, u = l ? gD(r) : dD(a), f = e.encodeDefine;
11024  !f && e.encodeDefaulter && (f = e.encodeDefaulter(r, o));
11025  for (var h = Z(f), v = new xA(o), c = 0; c < v.length; c++) v[c] = -1;
11026  function p(C) {
11027    var A = v[C];
11028    if (A < 0) {
11029      var M = a[C], I = tt(M) ? M : { name: M }, L = new cf(), P = I.name;
11030      P != null && u.get(P) != null && (L.name = L.displayName = P), I.type != null && (L.type = I.type), I.displayName != null && (L.displayName = I.displayName);
11031      var R = i.length;
11032      return v[C] = R, L.storeDimIndex = C, i.push(L), L;
11033    }
11034    return i[A];
11035  }
11036  if (!s) for (var c = 0; c < o; c++) p(c);
11037  h.each(function(C, A) {
11038    var M = Rt(C).slice();
11039    if (M.length === 1 && !Y(M[0]) && M[0] < 0) {
11040      h.set(A, false);
11041      return;
11042    }
11043    var I = h.set(A, []);
11044    D(M, function(L, P) {
11045      var R = Y(L) ? u.get(L) : L;
11046      R != null && R < o && (I[P] = R, g(p(R), A, P));
11047    });
11048  });
11049  var d = 0;
11050  D(t, function(C) {
11051    var A, M, I, L;
11052    if (Y(C)) A = C, L = {};
11053    else {
11054      L = C, A = L.name;
11055      var P = L.ordinalMeta;
11056      L.ordinalMeta = null, L = z({}, L), L.ordinalMeta = P, M = L.dimsDef, I = L.otherDims, L.name = L.coordDim = L.coordDimIndex = L.dimsDef = L.otherDims = null;
11057    }
11058    var R = h.get(A);
11059    if (R !== false) {
11060      if (R = Rt(R), !R.length) for (var E = 0; E < (M && M.length || 1); E++) {
11061        for (; d < o && p(d).coordDim != null; ) d++;
11062        d < o && R.push(d++);
11063      }
11064      D(R, function(O, k) {
11065        var B = p(O);
11066        if (l && L.type != null && (B.type = L.type), g(Q(B, L), A, k), B.name == null && M) {
11067          var F = M[k];
11068          !tt(F) && (F = { name: F }), B.name = B.displayName = F.name, B.defaultTooltip = F.defaultTooltip;
11069        }
11070        I && Q(B.otherDims, I);
11071      });
11072    }
11073  });
11074  function g(C, A, M) {
11075    eA.get(A) != null ? C.otherDims[A] = M : (C.coordDim = A, C.coordDimIndex = M, n.set(A, true));
11076  }
11077  var y = e.generateCoord, m = e.generateCoordCount, _ = m != null;
11078  m = y ? m || 1 : 0;
11079  var S = y || "value";
11080  function b(C) {
11081    C.name == null && (C.name = C.coordDim);
11082  }
11083  if (s) D(i, function(C) {
11084    b(C);
11085  }), i.sort(function(C, A) {
11086    return C.storeDimIndex - A.storeDimIndex;
11087  });
11088  else for (var x = 0; x < o; x++) {
11089    var w = p(x), T = w.coordDim;
11090    T == null && (w.coordDim = IB(S, n, _), w.coordDimIndex = 0, (!y || m <= 0) && (w.isExtraCoord = true), m--), b(w), w.type == null && (iA(r, x) === ve.Must || w.isExtraCoord && (w.otherDims.itemName != null || w.otherDims.seriesName != null)) && (w.type = "ordinal");
11091  }
11092  return DB(i), new cD({ source: r, dimensions: i, fullDimensionCount: o, dimensionOmitted: s });
11093}
11094function DB(r) {
11095  for (var e = Z(), t = 0; t < r.length; t++) {
11096    var a = r[t], n = a.name, i = e.get(n) || 0;
11097    i > 0 && (a.name = n + (i - 1)), i++, e.set(n, i);
11098  }
11099}
11100function MB(r, e, t, a) {
11101  var n = Math.max(r.dimensionsDetectedCount || 1, e.length, t.length, a || 0);
11102  return D(e, function(i) {
11103    var o;
11104    tt(i) && (o = i.dimsDef) && (n = Math.max(n, o.length));
11105  }), n;
11106}
11107function IB(r, e, t) {
11108  if (t || e.hasKey(r)) {
11109    for (var a = 0; e.hasKey(r + a); ) a++;
11110    r += a;
11111  }
11112  return e.set(r, true), r;
11113}
11114var LB = /* @__PURE__ */ function() {
11115  function r(e) {
11116    this.coordSysDims = [], this.axisMap = Z(), this.categoryAxisMap = Z(), this.coordSysName = e;
11117  }
11118  return r;
11119}();
11120function PB(r) {
11121  var e = r.get("coordinateSystem"), t = new LB(e), a = RB[e];
11122  if (a) return a(r, t, t.axisMap, t.categoryAxisMap), t;
11123}
11124var RB = { cartesian2d: function(r, e, t, a) {
11125  var n = r.getReferringComponents("xAxis", Jt).models[0], i = r.getReferringComponents("yAxis", Jt).models[0];
11126  e.coordSysDims = ["x", "y"], t.set("x", n), t.set("y", i), Fi(n) && (a.set("x", n), e.firstCategoryDimIndex = 0), Fi(i) && (a.set("y", i), e.firstCategoryDimIndex == null && (e.firstCategoryDimIndex = 1));
11127}, singleAxis: function(r, e, t, a) {
11128  var n = r.getReferringComponents("singleAxis", Jt).models[0];
11129  e.coordSysDims = ["single"], t.set("single", n), Fi(n) && (a.set("single", n), e.firstCategoryDimIndex = 0);
11130}, polar: function(r, e, t, a) {
11131  var n = r.getReferringComponents("polar", Jt).models[0], i = n.findAxisModel("radiusAxis"), o = n.findAxisModel("angleAxis");
11132  e.coordSysDims = ["radius", "angle"], t.set("radius", i), t.set("angle", o), Fi(i) && (a.set("radius", i), e.firstCategoryDimIndex = 0), Fi(o) && (a.set("angle", o), e.firstCategoryDimIndex == null && (e.firstCategoryDimIndex = 1));
11133}, geo: function(r, e, t, a) {
11134  e.coordSysDims = ["lng", "lat"];
11135}, parallel: function(r, e, t, a) {
11136  var n = r.ecModel, i = n.getComponent("parallel", r.get("parallelIndex")), o = e.coordSysDims = i.dimensions.slice();
11137  D(i.parallelAxisIndex, function(s, l) {
11138    var u = n.getComponent("parallelAxis", s), f = o[l];
11139    t.set(f, u), Fi(u) && (a.set(f, u), e.firstCategoryDimIndex == null && (e.firstCategoryDimIndex = l));
11140  });
11141} };
11142function Fi(r) {
11143  return r.get("type") === "category";
11144}
11145function mD(r, e, t) {
11146  t = t || {};
11147  var a = t.byIndex, n = t.stackedCoordDimension, i, o, s;
11148  EB(e) ? i = e : (o = e.schema, i = o.dimensions, s = e.store);
11149  var l = !!(r && r.get("stack")), u, f, h, v;
11150  if (D(i, function(m, _) {
11151    Y(m) && (i[_] = m = { name: m }), l && !m.isExtraCoord && (!a && !u && m.ordinalMeta && (u = m), !f && m.type !== "ordinal" && m.type !== "time" && (!n || n === m.coordDim) && (f = m));
11152  }), f && !a && !u && (a = true), f) {
11153    h = "__\0ecstackresult_" + r.id, v = "__\0ecstackedover_" + r.id, u && (u.createInvertedIndices = true);
11154    var c = f.coordDim, p = f.type, d = 0;
11155    D(i, function(m) {
11156      m.coordDim === c && d++;
11157    });
11158    var g = { name: h, coordDim: c, coordDimIndex: d, type: p, isExtraCoord: true, isCalculationCoord: true, storeDimIndex: i.length }, y = { name: v, coordDim: v, coordDimIndex: d + 1, type: p, isExtraCoord: true, isCalculationCoord: true, storeDimIndex: i.length + 1 };
11159    o ? (s && (g.storeDimIndex = s.ensureCalculationDimension(v, p), y.storeDimIndex = s.ensureCalculationDimension(h, p)), o.appendCalculationDimension(g), o.appendCalculationDimension(y)) : (i.push(g), i.push(y));
11160  }
11161  return { stackedDimension: f && f.name, stackedByDimension: u && u.name, isStackedByIndex: a, stackedOverDimension: v, stackResultDimension: h };
11162}
11163function EB(r) {
11164  return !pD(r.schema);
11165}
11166function xa(r, e) {
11167  return !!e && e === r.getCalculationInfo("stackedDimension");
11168}
11169function zy(r, e) {
11170  return xa(r, e) ? r.getCalculationInfo("stackResultDimension") : e;
11171}
11172function kB(r, e) {
11173  var t = r.get("coordinateSystem"), a = Vo.get(t), n;
11174  return e && e.coordSysDims && (n = G(e.coordSysDims, function(i) {
11175    var o = { name: i }, s = e.axisMap.get(i);
11176    if (s) {
11177      var l = s.get("type");
11178      o.type = Zf(l);
11179    }
11180    return o;
11181  })), n || (n = a && (a.getDimensionsInfo ? a.getDimensionsInfo() : a.dimensions.slice()) || ["x", "y"]), n;
11182}
11183function OB(r, e, t) {
11184  var a, n;
11185  return t && D(r, function(i, o) {
11186    var s = i.coordDim, l = t.categoryAxisMap.get(s);
11187    l && (a == null && (a = o), i.ordinalMeta = l.getOrdinalMeta(), e && (i.createInvertedIndices = true)), i.otherDims.itemName != null && (n = true);
11188  }), !n && a != null && (r[a].otherDims.itemName = 0), a;
11189}
11190function aa(r, e, t) {
11191  t = t || {};
11192  var a = e.getSourceManager(), n, i = false;
11193  r ? (i = true, n = wy(r)) : (n = a.getSource(), i = n.sourceFormat === dr);
11194  var o = PB(e), s = kB(e, o), l = t.useEncodeDefaulter, u = j(l) ? l : l ? lt(nA, s, e) : null, f = { coordDimensions: s, generateCoord: t.generateCoord, encodeDefine: e.getEncode(), encodeDefaulter: u, canOmitUnusedDimensions: !i }, h = Wo(n, f), v = OB(h.dimensions, t.createInvertedIndices, o), c = i ? null : a.getSharedDataStore(h), p = mD(e, { schema: h, store: c }), d = new be(h, e);
11195  d.setCalculationInfo(p);
11196  var g = v != null && NB(n) ? function(y, m, _, S) {
11197    return S === v ? _ : this.defaultDimValueGetter(y, m, _, S);
11198  } : null;
11199  return d.hasItemOption = false, d.initData(i ? n : c, null, g), d;
11200}
11201function NB(r) {
11202  if (r.sourceFormat === dr) {
11203    var e = BB(r.data || []);
11204    return !V(Mo(e));
11205  }
11206}
11207function BB(r) {
11208  for (var e = 0; e < r.length && r[e] == null; ) e++;
11209  return r[e];
11210}
11211var na = function() {
11212  function r(e) {
11213    this._setting = e || {}, this._extent = [1 / 0, -1 / 0];
11214  }
11215  return r.prototype.getSetting = function(e) {
11216    return this._setting[e];
11217  }, r.prototype.unionExtent = function(e) {
11218    var t = this._extent;
11219    e[0] < t[0] && (t[0] = e[0]), e[1] > t[1] && (t[1] = e[1]);
11220  }, r.prototype.unionExtentFromData = function(e, t) {
11221    this.unionExtent(e.getApproximateExtent(t));
11222  }, r.prototype.getExtent = function() {
11223    return this._extent.slice();
11224  }, r.prototype.setExtent = function(e, t) {
11225    var a = this._extent;
11226    isNaN(e) || (a[0] = e), isNaN(t) || (a[1] = t);
11227  }, r.prototype.isInExtentRange = function(e) {
11228    return this._extent[0] <= e && this._extent[1] >= e;
11229  }, r.prototype.isBlank = function() {
11230    return this._isBlank;
11231  }, r.prototype.setBlank = function(e) {
11232    this._isBlank = e;
11233  }, r;
11234}();
11235Ih(na);
11236var zB = 0, Ed = function() {
11237  function r(e) {
11238    this.categories = e.categories || [], this._needCollect = e.needCollect, this._deduplication = e.deduplication, this.uid = ++zB;
11239  }
11240  return r.createByAxisModel = function(e) {
11241    var t = e.option, a = t.data, n = a && G(a, VB);
11242    return new r({ categories: n, needCollect: !n, deduplication: t.dedplication !== false });
11243  }, r.prototype.getOrdinal = function(e) {
11244    return this._getOrCreateMap().get(e);
11245  }, r.prototype.parseAndCollect = function(e) {
11246    var t, a = this._needCollect;
11247    if (!Y(e) && !a) return e;
11248    if (a && !this._deduplication) return t = this.categories.length, this.categories[t] = e, t;
11249    var n = this._getOrCreateMap();
11250    return t = n.get(e), t == null && (a ? (t = this.categories.length, this.categories[t] = e, n.set(e, t)) : t = NaN), t;
11251  }, r.prototype._getOrCreateMap = function() {
11252    return this._map || (this._map = Z(this.categories));
11253  }, r;
11254}();
11255function VB(r) {
11256  return tt(r) && r.value != null ? r.value : r + "";
11257}
11258function kd(r) {
11259  return r.type === "interval" || r.type === "log";
11260}
11261function GB(r, e, t, a) {
11262  var n = {}, i = r[1] - r[0], o = n.interval = Wg(i / e, true);
11263  t != null && o < t && (o = n.interval = t), a != null && o > a && (o = n.interval = a);
11264  var s = n.intervalPrecision = _D(o), l = n.niceTickExtent = [Ut(Math.ceil(r[0] / o) * o, s), Ut(Math.floor(r[1] / o) * o, s)];
11265  return FB(l, r), n;
11266}
11267function dc(r) {
11268  var e = Math.pow(10, Mh(r)), t = r / e;
11269  return t ? t === 2 ? t = 3 : t === 3 ? t = 5 : t *= 2 : t = 1, Ut(t * e);
11270}
11271function _D(r) {
11272  return Tr(r) + 2;
11273}
11274function C1(r, e, t) {
11275  r[e] = Math.max(Math.min(r[e], t[1]), t[0]);
11276}
11277function FB(r, e) {
11278  !isFinite(r[0]) && (r[0] = e[0]), !isFinite(r[1]) && (r[1] = e[1]), C1(r, 0, e), C1(r, 1, e), r[0] > r[1] && (r[0] = r[1]);
11279}
11280function Kh(r, e) {
11281  return r >= e[0] && r <= e[1];
11282}
11283function jh(r, e) {
11284  return e[1] === e[0] ? 0.5 : (r - e[0]) / (e[1] - e[0]);
11285}
11286function Jh(r, e) {
11287  return r * (e[1] - e[0]) + e[0];
11288}
11289var Qh = function(r) {
11290  N(e, r);
11291  function e(t) {
11292    var a = r.call(this, t) || this;
11293    a.type = "ordinal";
11294    var n = a.getSetting("ordinalMeta");
11295    return n || (n = new Ed({})), V(n) && (n = new Ed({ categories: G(n, function(i) {
11296      return tt(i) ? i.value : i;
11297    }) })), a._ordinalMeta = n, a._extent = a.getSetting("extent") || [0, n.categories.length - 1], a;
11298  }
11299  return e.prototype.parse = function(t) {
11300    return t == null ? NaN : Y(t) ? this._ordinalMeta.getOrdinal(t) : Math.round(t);
11301  }, e.prototype.contain = function(t) {
11302    return t = this.parse(t), Kh(t, this._extent) && this._ordinalMeta.categories[t] != null;
11303  }, e.prototype.normalize = function(t) {
11304    return t = this._getTickNumber(this.parse(t)), jh(t, this._extent);
11305  }, e.prototype.scale = function(t) {
11306    return t = Math.round(Jh(t, this._extent)), this.getRawOrdinalNumber(t);
11307  }, e.prototype.getTicks = function() {
11308    for (var t = [], a = this._extent, n = a[0]; n <= a[1]; ) t.push({ value: n }), n++;
11309    return t;
11310  }, e.prototype.getMinorTicks = function(t) {
11311  }, e.prototype.setSortInfo = function(t) {
11312    if (t == null) {
11313      this._ordinalNumbersByTick = this._ticksByOrdinalNumber = null;
11314      return;
11315    }
11316    for (var a = t.ordinalNumbers, n = this._ordinalNumbersByTick = [], i = this._ticksByOrdinalNumber = [], o = 0, s = this._ordinalMeta.categories.length, l = Math.min(s, a.length); o < l; ++o) {
11317      var u = a[o];
11318      n[o] = u, i[u] = o;
11319    }
11320    for (var f = 0; o < s; ++o) {
11321      for (; i[f] != null; ) f++;
11322      n.push(f), i[f] = o;
11323    }
11324  }, e.prototype._getTickNumber = function(t) {
11325    var a = this._ticksByOrdinalNumber;
11326    return a && t >= 0 && t < a.length ? a[t] : t;
11327  }, e.prototype.getRawOrdinalNumber = function(t) {
11328    var a = this._ordinalNumbersByTick;
11329    return a && t >= 0 && t < a.length ? a[t] : t;
11330  }, e.prototype.getLabel = function(t) {
11331    if (!this.isBlank()) {
11332      var a = this.getRawOrdinalNumber(t.value), n = this._ordinalMeta.categories[a];
11333      return n == null ? "" : n + "";
11334    }
11335  }, e.prototype.count = function() {
11336    return this._extent[1] - this._extent[0] + 1;
11337  }, e.prototype.unionExtentFromData = function(t, a) {
11338    this.unionExtent(t.getApproximateExtent(a));
11339  }, e.prototype.isInExtentRange = function(t) {
11340    return t = this._getTickNumber(t), this._extent[0] <= t && this._extent[1] >= t;
11341  }, e.prototype.getOrdinalMeta = function() {
11342    return this._ordinalMeta;
11343  }, e.prototype.calcNiceTicks = function() {
11344  }, e.prototype.calcNiceExtent = function() {
11345  }, e.type = "ordinal", e;
11346}(na);
11347na.registerClass(Qh);
11348var Rn = Ut, ba = function(r) {
11349  N(e, r);
11350  function e() {
11351    var t = r !== null && r.apply(this, arguments) || this;
11352    return t.type = "interval", t._interval = 0, t._intervalPrecision = 2, t;
11353  }
11354  return e.prototype.parse = function(t) {
11355    return t;
11356  }, e.prototype.contain = function(t) {
11357    return Kh(t, this._extent);
11358  }, e.prototype.normalize = function(t) {
11359    return jh(t, this._extent);
11360  }, e.prototype.scale = function(t) {
11361    return Jh(t, this._extent);
11362  }, e.prototype.setExtent = function(t, a) {
11363    var n = this._extent;
11364    isNaN(t) || (n[0] = parseFloat(t)), isNaN(a) || (n[1] = parseFloat(a));
11365  }, e.prototype.unionExtent = function(t) {
11366    var a = this._extent;
11367    t[0] < a[0] && (a[0] = t[0]), t[1] > a[1] && (a[1] = t[1]), this.setExtent(a[0], a[1]);
11368  }, e.prototype.getInterval = function() {
11369    return this._interval;
11370  }, e.prototype.setInterval = function(t) {
11371    this._interval = t, this._niceExtent = this._extent.slice(), this._intervalPrecision = _D(t);
11372  }, e.prototype.getTicks = function(t) {
11373    var a = this._interval, n = this._extent, i = this._niceExtent, o = this._intervalPrecision, s = [];
11374    if (!a) return s;
11375    var l = 1e4;
11376    n[0] < i[0] && (t ? s.push({ value: Rn(i[0] - a, o) }) : s.push({ value: n[0] }));
11377    for (var u = i[0]; u <= i[1] && (s.push({ value: u }), u = Rn(u + a, o), u !== s[s.length - 1].value); ) if (s.length > l) return [];
11378    var f = s.length ? s[s.length - 1].value : i[1];
11379    return n[1] > f && (t ? s.push({ value: Rn(f + a, o) }) : s.push({ value: n[1] })), s;
11380  }, e.prototype.getMinorTicks = function(t) {
11381    for (var a = this.getTicks(true), n = [], i = this.getExtent(), o = 1; o < a.length; o++) {
11382      for (var s = a[o], l = a[o - 1], u = 0, f = [], h = s.value - l.value, v = h / t; u < t - 1; ) {
11383        var c = Rn(l.value + (u + 1) * v);
11384        c > i[0] && c < i[1] && f.push(c), u++;
11385      }
11386      n.push(f);
11387    }
11388    return n;
11389  }, e.prototype.getLabel = function(t, a) {
11390    if (t == null) return "";
11391    var n = a && a.precision;
11392    n == null ? n = Tr(t.value) || 0 : n === "auto" && (n = this._intervalPrecision);
11393    var i = Rn(t.value, n, true);
11394    return py(i);
11395  }, e.prototype.calcNiceTicks = function(t, a, n) {
11396    t = t || 5;
11397    var i = this._extent, o = i[1] - i[0];
11398    if (isFinite(o)) {
11399      o < 0 && (o = -o, i.reverse());
11400      var s = GB(i, t, a, n);
11401      this._intervalPrecision = s.intervalPrecision, this._interval = s.interval, this._niceExtent = s.niceTickExtent;
11402    }
11403  }, e.prototype.calcNiceExtent = function(t) {
11404    var a = this._extent;
11405    if (a[0] === a[1]) if (a[0] !== 0) {
11406      var n = Math.abs(a[0]);
11407      t.fixMax || (a[1] += n / 2), a[0] -= n / 2;
11408    } else a[1] = 1;
11409    var i = a[1] - a[0];
11410    isFinite(i) || (a[0] = 0, a[1] = 1), this.calcNiceTicks(t.splitNumber, t.minInterval, t.maxInterval);
11411    var o = this._interval;
11412    t.fixMin || (a[0] = Rn(Math.floor(a[0] / o) * o)), t.fixMax || (a[1] = Rn(Math.ceil(a[1] / o) * o));
11413  }, e.prototype.setNiceExtent = function(t, a) {
11414    this._niceExtent = [t, a];
11415  }, e.type = "interval", e;
11416}(na);
11417na.registerClass(ba);
11418var SD = typeof Float32Array < "u", HB = SD ? Float32Array : Array;
11419function $r(r) {
11420  return V(r) ? SD ? new Float32Array(r) : r : new HB(r);
11421}
11422var Od = "__ec_stack_";
11423function xD(r) {
11424  return r.get("stack") || Od + r.seriesIndex;
11425}
11426function Vy(r) {
11427  return r.dim + r.index;
11428}
11429function WB(r) {
11430  var e = [], t = r.axis, a = "axis0";
11431  if (t.type === "category") {
11432    for (var n = t.getBandWidth(), i = 0; i < r.count; i++) e.push(Q({ bandWidth: n, axisKey: a, stackId: Od + i }, r));
11433    for (var o = TD(e), s = [], i = 0; i < r.count; i++) {
11434      var l = o[a][Od + i];
11435      l.offsetCenter = l.offset + l.width / 2, s.push(l);
11436    }
11437    return s;
11438  }
11439}
11440function bD(r, e) {
11441  var t = [];
11442  return e.eachSeriesByType(r, function(a) {
11443    DD(a) && t.push(a);
11444  }), t;
11445}
11446function UB(r) {
11447  var e = {};
11448  D(r, function(l) {
11449    var u = l.coordinateSystem, f = u.getBaseAxis();
11450    if (!(f.type !== "time" && f.type !== "value")) for (var h = l.getData(), v = f.dim + "_" + f.index, c = h.getDimensionIndex(h.mapDimension(f.dim)), p = h.getStore(), d = 0, g = p.count(); d < g; ++d) {
11451      var y = p.get(c, d);
11452      e[v] ? e[v].push(y) : e[v] = [y];
11453    }
11454  });
11455  var t = {};
11456  for (var a in e) if (e.hasOwnProperty(a)) {
11457    var n = e[a];
11458    if (n) {
11459      n.sort(function(l, u) {
11460        return l - u;
11461      });
11462      for (var i = null, o = 1; o < n.length; ++o) {
11463        var s = n[o] - n[o - 1];
11464        s > 0 && (i = i === null ? s : Math.min(i, s));
11465      }
11466      t[a] = i;
11467    }
11468  }
11469  return t;
11470}
11471function wD(r) {
11472  var e = UB(r), t = [];
11473  return D(r, function(a) {
11474    var n = a.coordinateSystem, i = n.getBaseAxis(), o = i.getExtent(), s;
11475    if (i.type === "category") s = i.getBandWidth();
11476    else if (i.type === "value" || i.type === "time") {
11477      var l = i.dim + "_" + i.index, u = e[l], f = Math.abs(o[1] - o[0]), h = i.scale.getExtent(), v = Math.abs(h[1] - h[0]);
11478      s = u ? f / v * u : f;
11479    } else {
11480      var c = a.getData();
11481      s = Math.abs(o[1] - o[0]) / c.count();
11482    }
11483    var p = W(a.get("barWidth"), s), d = W(a.get("barMaxWidth"), s), g = W(a.get("barMinWidth") || (MD(a) ? 0.5 : 1), s), y = a.get("barGap"), m = a.get("barCategoryGap");
11484    t.push({ bandWidth: s, barWidth: p, barMaxWidth: d, barMinWidth: g, barGap: y, barCategoryGap: m, axisKey: Vy(i), stackId: xD(a) });
11485  }), TD(t);
11486}
11487function TD(r) {
11488  var e = {};
11489  D(r, function(a, n) {
11490    var i = a.axisKey, o = a.bandWidth, s = e[i] || { bandWidth: o, remainedWidth: o, autoWidthCount: 0, categoryGap: null, gap: "20%", stacks: {} }, l = s.stacks;
11491    e[i] = s;
11492    var u = a.stackId;
11493    l[u] || s.autoWidthCount++, l[u] = l[u] || { width: 0, maxWidth: 0 };
11494    var f = a.barWidth;
11495    f && !l[u].width && (l[u].width = f, f = Math.min(s.remainedWidth, f), s.remainedWidth -= f);
11496    var h = a.barMaxWidth;
11497    h && (l[u].maxWidth = h);
11498    var v = a.barMinWidth;
11499    v && (l[u].minWidth = v);
11500    var c = a.barGap;
11501    c != null && (s.gap = c);
11502    var p = a.barCategoryGap;
11503    p != null && (s.categoryGap = p);
11504  });
11505  var t = {};
11506  return D(e, function(a, n) {
11507    t[n] = {};
11508    var i = a.stacks, o = a.bandWidth, s = a.categoryGap;
11509    if (s == null) {
11510      var l = _t(i).length;
11511      s = Math.max(35 - l * 4, 15) + "%";
11512    }
11513    var u = W(s, o), f = W(a.gap, 1), h = a.remainedWidth, v = a.autoWidthCount, c = (h - u) / (v + (v - 1) * f);
11514    c = Math.max(c, 0), D(i, function(y) {
11515      var m = y.maxWidth, _ = y.minWidth;
11516      if (y.width) {
11517        var S = y.width;
11518        m && (S = Math.min(S, m)), _ && (S = Math.max(S, _)), y.width = S, h -= S + f * S, v--;
11519      } else {
11520        var S = c;
11521        m && m < S && (S = Math.min(m, h)), _ && _ > S && (S = _), S !== c && (y.width = S, h -= S + f * S, v--);
11522      }
11523    }), c = (h - u) / (v + (v - 1) * f), c = Math.max(c, 0);
11524    var p = 0, d;
11525    D(i, function(y, m) {
11526      y.width || (y.width = c), d = y, p += y.width * (1 + f);
11527    }), d && (p -= d.width * f);
11528    var g = -p / 2;
11529    D(i, function(y, m) {
11530      t[n][m] = t[n][m] || { bandWidth: o, offset: g, width: y.width }, g += y.width * (1 + f);
11531    });
11532  }), t;
11533}
11534function YB(r, e, t) {
11535  if (r && e) {
11536    var a = r[Vy(e)];
11537    return a;
11538  }
11539}
11540function CD(r, e) {
11541  var t = bD(r, e), a = wD(t);
11542  D(t, function(n) {
11543    var i = n.getData(), o = n.coordinateSystem, s = o.getBaseAxis(), l = xD(n), u = a[Vy(s)][l], f = u.offset, h = u.width;
11544    i.setLayout({ bandWidth: u.bandWidth, offset: f, size: h });
11545  });
11546}
11547function AD(r) {
11548  return { seriesType: r, plan: Go(), reset: function(e) {
11549    if (DD(e)) {
11550      var t = e.getData(), a = e.coordinateSystem, n = a.getBaseAxis(), i = a.getOtherAxis(n), o = t.getDimensionIndex(t.mapDimension(i.dim)), s = t.getDimensionIndex(t.mapDimension(n.dim)), l = e.get("showBackground", true), u = t.mapDimension(i.dim), f = t.getCalculationInfo("stackResultDimension"), h = xa(t, u) && !!t.getCalculationInfo("stackedOnSeries"), v = i.isHorizontal(), c = $B(n, i), p = MD(e), d = e.get("barMinHeight") || 0, g = f && t.getDimensionIndex(f), y = t.getLayout("size"), m = t.getLayout("offset");
11551      return { progress: function(_, S) {
11552        for (var b = _.count, x = p && $r(b * 3), w = p && l && $r(b * 3), T = p && $r(b), C = a.master.getRect(), A = v ? C.width : C.height, M, I = S.getStore(), L = 0; (M = _.next()) != null; ) {
11553          var P = I.get(h ? g : o, M), R = I.get(s, M), E = c, O = void 0;
11554          h && (O = +P - I.get(o, M));
11555          var k = void 0, B = void 0, F = void 0, H = void 0;
11556          if (v) {
11557            var U = a.dataToPoint([P, R]);
11558            if (h) {
11559              var K = a.dataToPoint([O, R]);
11560              E = K[0];
11561            }
11562            k = E, B = U[1] + m, F = U[0] - E, H = y, Math.abs(F) < d && (F = (F < 0 ? -1 : 1) * d);
11563          } else {
11564            var U = a.dataToPoint([R, P]);
11565            if (h) {
11566              var K = a.dataToPoint([R, O]);
11567              E = K[1];
11568            }
11569            k = U[0] + m, B = E, F = y, H = U[1] - E, Math.abs(H) < d && (H = (H <= 0 ? -1 : 1) * d);
11570          }
11571          p ? (x[L] = k, x[L + 1] = B, x[L + 2] = v ? F : H, w && (w[L] = v ? C.x : k, w[L + 1] = v ? B : C.y, w[L + 2] = A), T[M] = M) : S.setItemLayout(M, { x: k, y: B, width: F, height: H }), L += 3;
11572        }
11573        p && S.setLayout({ largePoints: x, largeDataIndices: T, largeBackgroun
11573dPoints: w, valueAxisHorizontal: v });
11574      } };
11575    }
11576  } };
11577}
11578function DD(r) {
11579  return r.coordinateSystem && r.coordinateSystem.type === "cartesian2d";
11580}
11581function MD(r) {
11582  return r.pipelineContext && r.pipelineContext.large;
11583}
11584function $B(r, e) {
11585  var t = e.model.get("startValue");
11586  return t || (t = 0), e.toGlobalCoord(e.dataToCoord(e.type === "log" ? t > 0 ? t : 1 : t));
11587}
11588var XB = function(r, e, t, a) {
11589  for (; t < a; ) {
11590    var n = t + a >>> 1;
11591    r[n][1] < e ? t = n + 1 : a = n;
11592  }
11593  return t;
11594}, Gy = function(r) {
11595  N(e, r);
11596  function e(t) {
11597    var a = r.call(this, t) || this;
11598    return a.type = "time", a;
11599  }
11600  return e.prototype.getLabel = function(t) {
11601    var a = this.getSetting("useUTC");
11602    return Gl(t.value, g_[wk(ho(this._minLevelUnit))] || g_.second, a, this.getSetting("locale"));
11603  }, e.prototype.getFormattedLabel = function(t, a, n) {
11604    var i = this.getSetting("useUTC"), o = this.getSetting("locale");
11605    return Tk(t, a, n, o, i);
11606  }, e.prototype.getTicks = function() {
11607    var t = this._interval, a = this._extent, n = [];
11608    if (!t) return n;
11609    n.push({ value: a[0], level: 0 });
11610    var i = this.getSetting("useUTC"), o = tz(this._minLevelUnit, this._approxInterval, i, a);
11611    return n = n.concat(o), n.push({ value: a[1], level: 0 }), n;
11612  }, e.prototype.calcNiceExtent = function(t) {
11613    var a = this._extent;
11614    if (a[0] === a[1] && (a[0] -= lr, a[1] += lr), a[1] === -1 / 0 && a[0] === 1 / 0) {
11615      var n = /* @__PURE__ */ new Date();
11616      a[1] = +new Date(n.getFullYear(), n.getMonth(), n.getDate()), a[0] = a[1] - lr;
11617    }
11618    this.calcNiceTicks(t.splitNumber, t.minInterval, t.maxInterval);
11619  }, e.prototype.calcNiceTicks = function(t, a, n) {
11620    t = t || 10;
11621    var i = this._extent, o = i[1] - i[0];
11622    this._approxInterval = o / t, a != null && this._approxInterval < a && (this._approxInterval = a), n != null && this._approxInterval > n && (this._approxInterval = n);
11623    var s = Au.length, l = Math.min(XB(Au, this._approxInterval, 0, s), s - 1);
11624    this._interval = Au[l][1], this._minLevelUnit = Au[Math.max(l - 1, 0)][0];
11625  }, e.prototype.parse = function(t) {
11626    return wt(t) ? t : +Ke(t);
11627  }, e.prototype.contain = function(t) {
11628    return Kh(this.parse(t), this._extent);
11629  }, e.prototype.normalize = function(t) {
11630    return jh(this.parse(t), this._extent);
11631  }, e.prototype.scale = function(t) {
11632    return Jh(t, this._extent);
11633  }, e.type = "time", e;
11634}(ba), Au = [["second", hy], ["minute", vy], ["hour", $s], ["quarter-day", $s * 6], ["half-day", $s * 12], ["day", lr * 1.2], ["half-week", lr * 3.5], ["week", lr * 7], ["month", lr * 31], ["quarter", lr * 95], ["half-year", d_ / 2], ["year", d_]];
11635function ZB(r, e, t, a) {
11636  var n = Ke(e), i = Ke(t), o = function(p) {
11637    return y_(n, p, a) === y_(i, p, a);
11638  }, s = function() {
11639    return o("year");
11640  }, l = function() {
11641    return s() && o("month");
11642  }, u = function() {
11643    return l() && o("day");
11644  }, f = function() {
11645    return u() && o("hour");
11646  }, h = function() {
11647    return f() && o("minute");
11648  }, v = function() {
11649    return h() && o("second");
11650  }, c = function() {
11651    return v() && o("millisecond");
11652  };
11653  switch (r) {
11654    case "year":
11655      return s();
11656    case "month":
11657      return l();
11658    case "day":
11659      return u();
11660    case "hour":
11661      return f();
11662    case "minute":
11663      return h();
11664    case "second":
11665      return v();
11666    case "millisecond":
11667      return c();
11668  }
11669}
11670function qB(r, e) {
11671  return r /= lr, r > 16 ? 16 : r > 7.5 ? 7 : r > 3.5 ? 4 : r > 1.5 ? 2 : 1;
11672}
11673function KB(r) {
11674  var e = 30 * lr;
11675  return r /= e, r > 6 ? 6 : r > 3 ? 3 : r > 2 ? 2 : 1;
11676}
11677function jB(r) {
11678  return r /= $s, r > 12 ? 12 : r > 6 ? 6 : r > 3.5 ? 4 : r > 2 ? 2 : 1;
11679}
11680function A1(r, e) {
11681  return r /= e ? vy : hy, r > 30 ? 30 : r > 20 ? 20 : r > 15 ? 15 : r > 10 ? 10 : r > 5 ? 5 : r > 2 ? 2 : 1;
11682}
11683function JB(r) {
11684  return Wg(r, true);
11685}
11686function QB(r, e, t) {
11687  var a = new Date(r);
11688  switch (ho(e)) {
11689    case "year":
11690    case "month":
11691      a[YC(t)](0);
11692    case "day":
11693      a[$C(t)](1);
11694    case "hour":
11695      a[XC(t)](0);
11696    case "minute":
11697      a[ZC(t)](0);
11698    case "second":
11699      a[qC(t)](0), a[KC(t)](0);
11700  }
11701  return a.getTime();
11702}
11703function tz(r, e, t, a) {
11704  var n = 1e4, i = WC, o = 0;
11705  function s(A, M, I, L, P, R, E) {
11706    for (var O = new Date(M), k = M, B = O[L](); k < I && k <= a[1]; ) E.push({ value: k }), B += A, O[P](B), k = O.getTime();
11707    E.push({ value: k, notAdd: true });
11708  }
11709  function l(A, M, I) {
11710    var L = [], P = !M.length;
11711    if (!ZB(ho(A), a[0], a[1], t)) {
11712      P && (M = [{ value: QB(new Date(a[0]), A, t) }, { value: a[1] }]);
11713      for (var R = 0; R < M.length - 1; R++) {
11714        var E = M[R].value, O = M[R + 1].value;
11715        if (E !== O) {
11716          var k = void 0, B = void 0, F = void 0, H = false;
11717          switch (A) {
11718            case "year":
11719              k = Math.max(1, Math.round(e / lr / 365)), B = cy(t), F = Ck(t);
11720              break;
11721            case "half-year":
11722            case "quarter":
11723            case "month":
11724              k = KB(e), B = vo(t), F = YC(t);
11725              break;
11726            case "week":
11727            case "half-week":
11728            case "day":
11729              k = qB(e), B = Vh(t), F = $C(t), H = true;
11730              break;
11731            case "half-day":
11732            case "quarter-day":
11733            case "hour":
11734              k = jB(e), B = fl(t), F = XC(t);
11735              break;
11736            case "minute":
11737              k = A1(e, true), B = Gh(t), F = ZC(t);
11738              break;
11739            case "second":
11740              k = A1(e, false), B = Fh(t), F = qC(t);
11741              break;
11742            case "millisecond":
11743              k = JB(e), B = Hh(t), F = KC(t);
11744              break;
11745          }
11746          s(k, E, O, B, F, H, L), A === "year" && I.length > 1 && R === 0 && I.unshift({ value: I[0].value - k });
11747        }
11748      }
11749      for (var R = 0; R < L.length; R++) I.push(L[R]);
11750      return L;
11751    }
11752  }
11753  for (var u = [], f = [], h = 0, v = 0, c = 0; c < i.length && o++ < n; ++c) {
11754    var p = ho(i[c]);
11755    if (bk(i[c])) {
11756      l(i[c], u[u.length - 1] || [], f);
11757      var d = i[c + 1] ? ho(i[c + 1]) : null;
11758      if (p !== d) {
11759        if (f.length) {
11760          v = h, f.sort(function(A, M) {
11761            return A.value - M.value;
11762          });
11763          for (var g = [], y = 0; y < f.length; ++y) {
11764            var m = f[y].value;
11765            (y === 0 || f[y - 1].value !== m) && (g.push(f[y]), m >= a[0] && m <= a[1] && h++);
11766          }
11767          var _ = (a[1] - a[0]) / e;
11768          if (h > _ * 1.5 && v > _ / 1.5 || (u.push(g), h > _ || r === i[c])) break;
11769        }
11770        f = [];
11771      }
11772    }
11773  }
11774  for (var S = Ct(G(u, function(A) {
11775    return Ct(A, function(M) {
11776      return M.value >= a[0] && M.value <= a[1] && !M.notAdd;
11777    });
11778  }), function(A) {
11779    return A.length > 0;
11780  }), b = [], x = S.length - 1, c = 0; c < S.length; ++c) for (var w = S[c], T = 0; T < w.length; ++T) b.push({ value: w[T].value, level: x - c });
11781  b.sort(function(A, M) {
11782    return A.value - M.value;
11783  });
11784  for (var C = [], c = 0; c < b.length; ++c) (c === 0 || b[c].value !== b[c - 1].value) && C.push(b[c]);
11785  return C;
11786}
11787na.registerClass(Gy);
11788var D1 = na.prototype, qs = ba.prototype, ez = Ut, rz = Math.floor, az = Math.ceil, Du = Math.pow, _r = Math.log, Fy = function(r) {
11789  N(e, r);
11790  function e() {
11791    var t = r !== null && r.apply(this, arguments) || this;
11792    return t.type = "log", t.base = 10, t._originalScale = new ba(), t._interval = 0, t;
11793  }
11794  return e.prototype.getTicks = function(t) {
11795    var a = this._originalScale, n = this._extent, i = a.getExtent(), o = qs.getTicks.call(this, t);
11796    return G(o, function(s) {
11797      var l = s.value, u = Ut(Du(this.base, l));
11798      return u = l === n[0] && this._fixMin ? Mu(u, i[0]) : u, u = l === n[1] && this._fixMax ? Mu(u, i[1]) : u, { value: u };
11799    }, this);
11800  }, e.prototype.setExtent = function(t, a) {
11801    var n = _r(this.base);
11802    t = _r(Math.max(0, t)) / n, a = _r(Math.max(0, a)) / n, qs.setExtent.call(this, t, a);
11803  }, e.prototype.getExtent = function() {
11804    var t = this.base, a = D1.getExtent.call(this);
11805    a[0] = Du(t, a[0]), a[1] = Du(t, a[1]);
11806    var n = this._originalScale, i = n.getExtent();
11807    return this._fixMin && (a[0] = Mu(a[0], i[0])), this._fixMax && (a[1] = Mu(a[1], i[1])), a;
11808  }, e.prototype.unionExtent = function(t) {
11809    this._originalScale.unionExtent(t);
11810    var a = this.base;
11811    t[0] = _r(t[0]) / _r(a), t[1] = _r(t[1]) / _r(a), D1.unionExtent.call(this, t);
11812  }, e.prototype.unionExtentFromData = function(t, a) {
11813    this.unionExtent(t.getApproximateExtent(a));
11814  }, e.prototype.calcNiceTicks = function(t) {
11815    t = t || 10;
11816    var a = this._extent, n = a[1] - a[0];
11817    if (!(n === 1 / 0 || n <= 0)) {
11818      var i = $T(n), o = t / n * i;
11819      for (o <= 0.5 && (i *= 10); !isNaN(i) && Math.abs(i) < 1 && Math.abs(i) > 0; ) i *= 10;
11820      var s = [Ut(az(a[0] / i) * i), Ut(rz(a[1] / i) * i)];
11821      this._interval = i, this._niceExtent = s;
11822    }
11823  }, e.prototype.calcNiceExtent = function(t) {
11824    qs.calcNiceExtent.call(this, t), this._fixMin = t.fixMin, this._fixMax = t.fixMax;
11825  }, e.prototype.parse = function(t) {
11826    return t;
11827  }, e.prototype.contain = function(t) {
11828    return t = _r(t) / _r(this.base), Kh(t, this._extent);
11829  }, e.prototype.normalize = function(t) {
11830    return t = _r(t) / _r(this.base), jh(t, this._extent);
11831  }, e.prototype.scale = function(t) {
11832    return t = Jh(t, this._extent), Du(this.base, t);
11833  }, e.type = "log", e;
11834}(na), ID = Fy.prototype;
11835ID.getMinorTicks = qs.getMinorTicks;
11836ID.getLabel = qs.getLabel;
11837function Mu(r, e) {
11838  return ez(r, Tr(e));
11839}
11840na.registerClass(Fy);
11841var nz = function() {
11842  function r(e, t, a) {
11843    this._prepareParams(e, t, a);
11844  }
11845  return r.prototype._prepareParams = function(e, t, a) {
11846    a[1] < a[0] && (a = [NaN, NaN]), this._dataMin = a[0], this._dataMax = a[1];
11847    var n = this._isOrdinal = e.type === "ordinal";
11848    this._needCrossZero = e.type === "interval" && t.getNeedCrossZero && t.getNeedCrossZero();
11849    var i = t.get("min", true);
11850    i == null && (i = t.get("startValue", true));
11851    var o = this._modelMinRaw = i;
11852    j(o) ? this._modelMinNum = Iu(e, o({ min: a[0], max: a[1] })) : o !== "dataMin" && (this._modelMinNum = Iu(e, o));
11853    var s = this._modelMaxRaw = t.get("max", true);
11854    if (j(s) ? this._modelMaxNum = Iu(e, s({ min: a[0], max: a[1] })) : s !== "dataMax" && (this._modelMaxNum = Iu(e, s)), n) this._axisDataLen = t.getCategories().length;
11855    else {
11856      var l = t.get("boundaryGap"), u = V(l) ? l : [l || 0, l || 0];
11857      typeof u[0] == "boolean" || typeof u[1] == "boolean" ? this._boundaryGapInner = [0, 0] : this._boundaryGapInner = [Rr(u[0], 1), Rr(u[1], 1)];
11858    }
11859  }, r.prototype.calculate = function() {
11860    var e = this._isOrdinal, t = this._dataMin, a = this._dataMax, n = this._axisDataLen, i = this._boundaryGapInner, o = e ? null : a - t || Math.abs(t), s = this._modelMinRaw === "dataMin" ? t : this._modelMinNum, l = this._modelMaxRaw === "dataMax" ? a : this._modelMaxNum, u = s != null, f = l != null;
11861    s == null && (s = e ? n ? 0 : NaN : t - i[0] * o), l == null && (l = e ? n ? n - 1 : NaN : a + i[1] * o), (s == null || !isFinite(s)) && (s = NaN), (l == null || !isFinite(l)) && (l = NaN);
11862    var h = po(s) || po(l) || e && !n;
11863    this._needCrossZero && (s > 0 && l > 0 && !u && (s = 0), s < 0 && l < 0 && !f && (l = 0));
11864    var v = this._determinedMin, c = this._determinedMax;
11865    return v != null && (s = v, u = true), c != null && (l = c, f = true), { min: s, max: l, minFixed: u, maxFixed: f, isBlank: h };
11866  }, r.prototype.modifyDataMinMax = function(e, t) {
11867    this[oz[e]] = t;
11868  }, r.prototype.setDeterminedMinMax = function(e, t) {
11869    var a = iz[e];
11870    this[a] = t;
11871  }, r.prototype.freeze = function() {
11872    this.frozen = true;
11873  }, r;
11874}(), iz = { min: "_determinedMin", max: "_determinedMax" }, oz = { min: "_dataMin", max: "_dataMax" };
11875function LD(r, e, t) {
11876  var a = r.rawExtentInfo;
11877  return a || (a = new nz(r, e, t), r.rawExtentInfo = a, a);
11878}
11879function Iu(r, e) {
11880  return e == null ? null : po(e) ? NaN : r.parse(e);
11881}
11882function PD(r, e) {
11883  var t = r.type, a = LD(r, e, r.getExtent()).calculate();
11884  r.setBlank(a.isBlank);
11885  var n = a.min, i = a.max, o = e.ecModel;
11886  if (o && t === "time") {
11887    var s = bD("bar", o), l = false;
11888    if (D(s, function(h) {
11889      l = l || h.getBaseAxis() === e.axis;
11890    }), l) {
11891      var u = wD(s), f = sz(n, i, e, u);
11892      n = f.min, i = f.max;
11893    }
11894  }
11895  return { extent: [n, i], fixMin: a.minFixed, fixMax: a.maxFixed };
11896}
11897function sz(r, e, t, a) {
11898  var n = t.axis.getExtent(), i = Math.abs(n[1] - n[0]), o = YB(a, t.axis);
11899  if (o === void 0) return { min: r, max: e };
11900  var s = 1 / 0;
11901  D(o, function(c) {
11902    s = Math.min(c.offset, s);
11903  });
11904  var l = -1 / 0;
11905  D(o, function(c) {
11906    l = Math.max(c.offset + c.width, l);
11907  }), s = Math.abs(s), l = Math.abs(l);
11908  var u = s + l, f = e - r, h = 1 - (s + l) / i, v = f / h - f;
11909  return e += v * (l / u), r -= v * (s / u), { min: r, max: e };
11910}
11911function di(r, e) {
11912  var t = e, a = PD(r, t), n = a.extent, i = t.get("splitNumber");
11913  r instanceof Fy && (r.base = t.get("logBase"));
11914  var o = r.type, s = t.get("interval"), l = o === "interval" || o === "time";
11915  r.setExtent(n[0], n[1]), r.calcNiceExtent({ splitNumber: i, fixMin: a.fixMin, fixMax: a.fixMax, minInterval: l ? t.get("minInterval") : null, maxInterval: l ? t.get("maxInterval") : null }), s != null && r.setInterval && r.setInterval(s);
11916}
11917function Hl(r, e) {
11918  if (e = e || r.get("type"), e) switch (e) {
11919    case "category":
11920      return new Qh({ ordinalMeta: r.getOrdinalMeta ? r.getOrdinalMeta() : r.getCategories(), extent: [1 / 0, -1 / 0] });
11921    case "time":
11922      return new Gy({ locale: r.ecModel.getLocaleModel(), useUTC: r.ecModel.get("useUTC") });
11923    default:
11924      return new (na.getClass(e) || ba)();
11925  }
11926}
11927function lz(r) {
11928  var e = r.scale.getExtent(), t = e[0], a = e[1];
11929  return !(t > 0 && a > 0 || t < 0 && a < 0);
11930}
11931function Uo(r) {
11932  var e = r.getLabelModel().get("formatter"), t = r.type === "category" ? r.scale.getExtent()[0] : null;
11933  return r.scale.type === "time" ? /* @__PURE__ */ function(a) {
11934    return function(n, i) {
11935      return r.scale.getFormattedLabel(n, i, a);
11936    };
11937  }(e) : Y(e) ? /* @__PURE__ */ function(a) {
11938    return function(n) {
11939      var i = r.scale.getLabel(n), o = a.replace("{value}", i ?? "");
11940      return o;
11941    };
11942  }(e) : j(e) ? /* @__PURE__ */ function(a) {
11943    return function(n, i) {
11944      return t != null && (i = n.value - t), a(Hy(r, n), i, n.level != null ? { level: n.level } : null);
11945    };
11946  }(e) : function(a) {
11947    return r.scale.getLabel(a);
11948  };
11949}
11950function Hy(r, e) {
11951  return r.type === "category" ? r.scale.getLabel(e) : e.value;
11952}
11953function uz(r) {
11954  var e = r.model, t = r.scale;
11955  if (!(!e.get(["axisLabel", "show"]) || t.isBlank())) {
11956    var a, n, i = t.getExtent();
11957    t instanceof Qh ? n = t.count() : (a = t.getTicks(), n = a.length);
11958    var o = r.getLabelModel(), s = Uo(r), l, u = 1;
11959    n > 40 && (u = Math.ceil(n / 40));
11960    for (var f = 0; f < n; f += u) {
11961      var h = a ? a[f] : { value: i[0] + f }, v = s(h, f), c = o.getTextRect(v), p = fz(c, o.get("rotate") || 0);
11962      l ? l.union(p) : l = p;
11963    }
11964    return l;
11965  }
11966}
11967function fz(r, e) {
11968  var t = e * Math.PI / 180, a = r.width, n = r.height, i = a * Math.abs(Math.cos(t)) + Math.abs(n * Math.sin(t)), o = a * Math.abs(Math.sin(t)) + Math.abs(n * Math.cos(t)), s = new ht(r.x, r.y, i, o);
11969  return s;
11970}
11971function Wy(r) {
11972  var e = r.get("interval");
11973  return e ?? "auto";
11974}
11975function RD(r) {
11976  return r.type === "category" && Wy(r.getLabelModel()) === 0;
11977}
11978function qf(r, e) {
11979  var t = {};
11980  return D(r.mapDimensionsAll(e), function(a) {
11981    t[zy(r, a)] = true;
11982  }), _t(t);
11983}
11984function hz(r, e, t) {
11985  e && D(qf(e, t), function(a) {
11986    var n = e.getApproximateExtent(a);
11987    n[0] < r[0] && (r[0] = n[0]), n[1] > r[1] && (r[1] = n[1]);
11988  });
11989}
11990var Yo = function() {
11991  function r() {
11992  }
11993  return r.prototype.getNeedCrossZero = function() {
11994    var e = this.option;
11995    return !e.scale;
11996  }, r.prototype.getCoordSysModel = function() {
11997  }, r;
11998}();
11999function vz(r) {
12000  return aa(null, r);
12001}
12002var cz = { isDimensionStacked: xa, enableDataStack: mD, getStackedDimension: zy };
12003function pz(r, e) {
12004  var t = e;
12005  e instanceof At || (t = new At(e));
12006  var a = Hl(t);
12007  return a.setExtent(r[0], r[1]), di(a, t), a;
12008}
12009function dz(r) {
12010  Xt(r, Yo);
12011}
12012function gz(r, e) {
12013  return e = e || {}
12013, Nt(r, null, null, e.state !== "normal");
12014}
12015const yz = Object.freeze(Object.defineProperty({ __proto__: null, createDimensions: AB, createList: vz, createScale: pz, createSymbol: qt, createTextStyle: gz, dataStack: cz, enableHoverEmphasis: Za, getECData: it, getLayoutRect: Qt, mixinAxisModelCommonMethods: dz }, Symbol.toStringTag, { value: "Module" }));
12016var mz = 1e-8;
12017function M1(r, e) {
12018  return Math.abs(r - e) < mz;
12019}
12020function Wn(r, e, t) {
12021  var a = 0, n = r[0];
12022  if (!n) return false;
12023  for (var i = 1; i < r.length; i++) {
12024    var o = r[i];
12025    a += ua(n[0], n[1], o[0], o[1], e, t), n = o;
12026  }
12027  var s = r[0];
12028  return (!M1(n[0], s[0]) || !M1(n[1], s[1])) && (a += ua(n[0], n[1], s[0], s[1], e, t)), a !== 0;
12029}
12030var _z = [];
12031function gc(r, e) {
12032  for (var t = 0; t < r.length; t++) he(r[t], r[t], e);
12033}
12034function I1(r, e, t, a) {
12035  for (var n = 0; n < r.length; n++) {
12036    var i = r[n];
12037    a && (i = a.project(i)), i && isFinite(i[0]) && isFinite(i[1]) && (ha(e, e, i), va(t, t, i));
12038  }
12039}
12040function Sz(r) {
12041  for (var e = 0, t = 0, a = 0, n = r.length, i = r[n - 1][0], o = r[n - 1][1], s = 0; s < n; s++) {
12042    var l = r[s][0], u = r[s][1], f = i * u - l * o;
12043    e += f, t += (i + l) * f, a += (o + u) * f, i = l, o = u;
12044  }
12045  return e ? [t / e / 3, a / e / 3, e] : [r[0][0] || 0, r[0][1] || 0];
12046}
12047var ED = function() {
12048  function r(e) {
12049    this.name = e;
12050  }
12051  return r.prototype.setCenter = function(e) {
12052    this._center = e;
12053  }, r.prototype.getCenter = function() {
12054    var e = this._center;
12055    return e || (e = this._center = this.calcCenter()), e;
12056  }, r;
12057}(), L1 = /* @__PURE__ */ function() {
12058  function r(e, t) {
12059    this.type = "polygon", this.exterior = e, this.interiors = t;
12060  }
12061  return r;
12062}(), P1 = /* @__PURE__ */ function() {
12063  function r(e) {
12064    this.type = "linestring", this.points = e;
12065  }
12066  return r;
12067}(), kD = function(r) {
12068  N(e, r);
12069  function e(t, a, n) {
12070    var i = r.call(this, t) || this;
12071    return i.type = "geoJSON", i.geometries = a, i._center = n && [n[0], n[1]], i;
12072  }
12073  return e.prototype.calcCenter = function() {
12074    for (var t = this.geometries, a, n = 0, i = 0; i < t.length; i++) {
12075      var o = t[i], s = o.exterior, l = s && s.length;
12076      l > n && (a = o, n = l);
12077    }
12078    if (a) return Sz(a.exterior);
12079    var u = this.getBoundingRect();
12080    return [u.x + u.width / 2, u.y + u.height / 2];
12081  }, e.prototype.getBoundingRect = function(t) {
12082    var a = this._rect;
12083    if (a && !t) return a;
12084    var n = [1 / 0, 1 / 0], i = [-1 / 0, -1 / 0], o = this.geometries;
12085    return D(o, function(s) {
12086      s.type === "polygon" ? I1(s.exterior, n, i, t) : D(s.points, function(l) {
12087        I1(l, n, i, t);
12088      });
12089    }), isFinite(n[0]) && isFinite(n[1]) && isFinite(i[0]) && isFinite(i[1]) || (n[0] = n[
120891] = i[0] = i[1] = 0), a = new ht(n[0], n[1], i[0] - n[0], i[1] - n[1]), t || (this._rect = a), a;
12090  }, e.prototype.contain = function(t) {
12091    var a = this.getBoundingRect(), n = this.geometries;
12092    if (!a.contain(t[0], t[1])) return false;
12093    t: for (var i = 0, o = n.length; i < o; i++) {
12094      var s = n[i];
12095      if (s.type === "polygon") {
12096        var l = s.exterior, u = s.interiors;
12097        if (Wn(l, t[0], t[1])) {
12098          for (var f = 0; f < (u ? u.length : 0); f++) if (Wn(u[f], t[0], t[1])) continue t;
12099          return true;
12100        }
12101      }
12102    }
12103    return false;
12104  }, e.prototype.transformTo = function(t, a, n, i) {
12105    var o = this.getBoundingRect(), s = o.width / o.height;
12106    n ? i || (i = n / s) : n = s * i;
12107    for (var l = new ht(t, a, n, i), u = o.calculateTransform(l), f = this.geometries, h = 0; h < f.length; h++) {
12108      var v = f[h];
12109      v.type === "polygon" ? (gc(v.exterior, u), D(v.interiors, function(c) {
12110        gc(c, u);
12111      })) : D(v.points, function(c) {
12112        gc(c, u);
12113      });
12114    }
12115    o = this._rect, o.copy(l), this._center = [o.x + o.width / 2, o.y + o.height / 2];
12116  }, e.prototype.cloneShallow = function(t) {
12117    t == null && (t = this.name);
12118    var a = new e(t, this.geometries, this._center);
12119    return a._rect = this._rect, a.transformTo = null, a;
12120  }, e;
12121}(ED), xz = function(r) {
12122  N(e, r);
12123  function e(t, a) {
12124    var n = r.call(this, t) || this;
12125    return n.type = "geoSVG", n._elOnlyForCalculate = a, n;
12126  }
12127  return e.prototype.calcCenter = function() {
12128    for (var t = this._elOnlyForCalculate, a = t.getBoundingRect(), n = [a.x + a.width / 2, a.y + a.height / 2], i = Pl(_z), o = t; o && !o.isGeoSVGGraphicRoot; ) qr(i, o.getLocalTransform(), i), o = o.parent;
12129    return _i(i, i), he(n, n, i), n;
12130  }, e;
12131}(ED);
12132function bz(r) {
12133  if (!r.UTF8Encoding) return r;
12134  var e = r, t = e.UTF8Scale;
12135  t == null && (t = 1024);
12136  var a = e.features;
12137  return D(a, function(n) {
12138    var i = n.geometry, o = i.encodeOffsets, s = i.coordinates;
12139    if (o) switch (i.type) {
12140      case "LineString":
12141        i.coordinates = OD(s, o, t);
12142        break;
12143      case "Polygon":
12144        yc(s, o, t);
12145        break;
12146      case "MultiLineString":
12147        yc(s, o, t);
12148        break;
12149      case "MultiPolygon":
12150        D(s, function(l, u) {
12151          return yc(l, o[u], t);
12152        });
12153    }
12154  }), e.UTF8Encoding = false, e;
12155}
12156function yc(r, e, t) {
12157  for (var a = 0; a < r.length; a++) r[a] = OD(r[a], e[a], t);
12158}
12159function OD(r, e, t) {
12160  for (var a = [], n = e[0], i = e[1], o = 0; o < r.length; o += 2) {
12161    var s = r.charCodeAt(o) - 64, l = r.charCodeAt(o + 1) - 64;
12162    s = s >> 1 ^ -(s & 1), l = l >> 1 ^ -(l & 1), s += n, l += i, n = s, i = l, a.push([s / t, l / t]);
12163  }
12164  return a;
12165}
12166function Nd(r, e) {
12167  return r = bz(r), G(Ct(r.features, function(t) {
12168    return t.geometry && t.properties && t.geometry.coordinates.length > 0;
12169  }), function(t) {
12170    var a = t.properties, n = t.geometry, i = [];
12171    switch (n.type) {
12172      case "Polygon":
12173        var o = n.coordinates;
12174        i.push(new L1(o[0], o.slice(1)));
12175        break;
12176      case "MultiPolygon":
12177        D(n.coordinates, function(l) {
12178          l[0] && i.push(new L1(l[0], l.slice(1)));
12179        });
12180        break;
12181      case "LineString":
12182        i.push(new P1([n.coordinates]));
12183        break;
12184      case "MultiLineString":
12185        i.push(new P1(n.coordinates));
12186    }
12187    var s = new kD(a[e || "name"], i, a.cp);
12188    return s.properties = a, s;
12189  });
12190}
12191const wz = Object.freeze(Object.defineProperty({ __proto__: null, MAX_SAFE_INTEGER: nd, asc: Xe, getPercentWithPrecision: nR, getPixelPrecision: Fg, getPrecision: Tr, getPrecisionSafe: UT, isNumeric: Ug, isRadianAroundZero: yo, linearMap: Dt, nice: Wg, numericToNumber: Qr, parseDate: Ke, quantile: of, quantity: $T, quantityExponent: Mh, reformIntervals: id, remRadian: Hg, round: Ut }, Symbol.toStringTag, { value: "Module" })), Tz = Object.freeze(Object.defineProperty({ __proto__: null, format: Gl, parse: Ke }, Symbol.toStringTag, { value: "Module" })), Cz = Object.freeze(Object.defineProperty({ __proto__: null, Arc: Bl, BezierCurve: Po, BoundingRect: ht, Circle: ea, CompoundPath: Oh, Ellipse: Nl, Group: at, Image: ue, IncrementalDis
12191playable: LC, Line: ee, LinearGradient: Ro, Polygon: Ce, Polyline: De, RadialGradient: ry, Rect: xt, Ring: Lo, Sector: Te, Text: St, clipPointsByRect: oy, clipRectByRect: OC, createIcon: ko, extendPath: EC, extendShape: RC, getShapeClass: Nh, getTransform: qa, initProps: Gt, makeImage: ny, makePath: zl, mergePath: $e, registerShape: pr, resizePath: iy, updateProps: Tt }, Symbol.toStringTag, { value: "Module" })), Az = Object.freeze(Object.defineProperty({ __proto__: null, addCommas: py, capitalFirst: Ik, encodeHTML: xe, formatTime: Mk, formatTpl: gy, getTextRect: Ak, getTooltipMarker: jC, normalizeCssArray: bi, toCamelCase: dy, truncateText: kR }, Symbol.toStringTag, { value: "Module" })), Dz = Object.freeze(Object.defineProperty({ __proto__: null, bind: $, clone: rt, curry: lt, defaults: Q, each: D, extend: z, filter: Ct, indexOf: vt, inherits: Eg, isArray: V, isFunction: j, isObject: tt, isString: Y, map: G, merge: ut, reduce: hr }, Symbol.toStringTag, { value: "Module" }));
12192var gl = bt();
12193function ND(r, e) {
12194  var t = G(e, function(a) {
12195    return r.scale.parse(a);
12196  });
12197  return r.type === "time" && t.length > 0 && (t.sort(), t.unshift(t[0]), t.push(t[t.length - 1])), t;
12198}
12199function Mz(r) {
12200  var e = r.getLabelModel().get("customValues");
12201  if (e) {
12202    var t = Uo(r), a = r.scale.getExtent(), n = ND(r, e), i = Ct(n, function(o) {
12203      return o >= a[0] && o <= a[1];
12204    });
12205    return { labels: G(i, function(o) {
12206      var s = { value: o };
12207      return { formattedLabel: t(s), rawLabel: r.scale.getLabel(s), tickValue: o };
12208    }) };
12209  }
12210  return r.type === "category" ? Lz(r) : Rz(r);
12211}
12212function Iz(r, e) {
12213  var t = r.getTickModel().get("customValues");
12214  if (t) {
12215    var a = r.scale.getExtent(), n = ND(r, t);
12216    return { ticks: Ct(n, function(i) {
12217      return i >= a[0] && i <= a[1];
12218    }) };
12219  }
12220  return r.type === "category" ? Pz(r, e) : { ticks: G(r.scale.getTicks(), function(i) {
12221    return i.value;
12222  }) };
12223}
12224function Lz(r) {
12225  var e = r.getLabelModel(), t = BD(r, e);
12226  return !e.get("show") || r.scale.isBlank() ? { labels: [], labelCategoryInterval: t.labelCategoryInterval } : t;
12227}
12228function BD(r, e) {
12229  var t = zD(r, "labels"), a = Wy(e), n = VD(t, a);
12230  if (n) return n;
12231  var i, o;
12232  return j(a) ? i = HD(r, a) : (o = a === "auto" ? Ez(r) : a, i = FD(r, o)), GD(t, a, { labels: i, labelCategoryInterval: o });
12233}
12234function Pz(r, e) {
12235  var t = zD(r, "ticks"), a = Wy(e), n = VD(t, a);
12236  if (n) return n;
12237  var i, o;
12238  if ((!e.get("show") || r.scale.isBlank()) && (i = []), j(a)) i = HD(r, a, true);
12239  else if (a === "auto") {
12240    var s = BD(r, r.getLabelModel());
12241    o = s.labelCategoryInterval, i = G(s.labels, function(l) {
12242      return l.tickValue;
12243    });
12244  } else o = a, i = FD(r, o, true);
12245  return GD(t, a, { ticks: i, tickCategoryInterval: o });
12246}
12247function Rz(r) {
12248  var e = r.scale.getTicks(), t = Uo(r);
12249  return { labels: G(e, function(a, n) {
12250    return { level: a.level, formattedLabel: t(a, n), rawLabel: r.scale.getLabel(a), tickValue: a.value };
12251  }) };
12252}
12253function zD(r, e) {
12254  return gl(r)[e] || (gl(r)[e] = []);
12255}
12256function VD(r, e) {
12257  for (var t = 0; t < r.length; t++) if (r[t].key === e) return r[t].value;
12258}
12259function GD(r, e, t) {
12260  return r.push({ key: e, value: t }), t;
12261}
12262function Ez(r) {
12263  var e = gl(r).autoInterval;
12264  return e ?? (gl(r).autoInterval = r.calculateCategoryInterval());
12265}
12266function kz(r) {
12267  var e = Oz(r), t = Uo(r), a = (e.axisRotate - e.labelRotate) / 180 * Math.PI, n = r.scale, i = n.getExtent(), o = n.count();
12268  if (i[1] - i[0] < 1) return 0;
12269  var s = 1;
12270  o > 40 && (s = Math.max(1, Math.floor(o / 40)));
12271  for (var l = i[0], u = r.dataToCoord(l + 1) - r.dataToCoord(l), f = Math.abs(u * Math.cos(a)), h = Math.abs(u * Math.sin(a)), v = 0, c = 0; l <= i[1]; l += s) {
12272    var p = 0, d = 0, g = El(t({ value: l }), e.font, "center", "top");
12273    p = g.width * 1.3, d = g.height * 1.3, v = Math.max(v, p, 7), c = Math.max(c, d, 7);
12274  }
12275  var y = v / f, m = c / h;
12276  isNaN(y) && (y = 1 / 0), isNaN(m) && (m = 1 / 0);
12277  var _ = Math.max(0, Math.floor(Math.min(y, m))), S = gl(r.model), b = r.getExtent(), x = S.lastAutoInterval, w = S.lastTickCount;
12278  return x != null && w != null && Math.abs(x - _) <= 1 && Math.abs(w - o) <= 1 && x > _ && S.axisExtent0 === b[0] && S.axisExtent1 === b[1] ? _ = x : (S.lastTickCount = o, S.lastAutoInterval = _, S.axisExtent0 = b[0], S.axisExtent1 = b[1]), _;
12279}
12280function Oz(r) {
12281  var e = r.getLabelModel();
12282  return { axisRotate: r.getRotate ? r.getRotate() : r.isHorizontal && !r.isHorizontal() ? 90 : 0, labelRotate: e.get("rotate") || 0, font: e.getFont() };
12283}
12284function FD(r, e, t) {
12285  var a = Uo(r), n = r.scale, i = n.getExtent(), o = r.getLabelModel(), s = [], l = Math.max((e || 0) + 1, 1), u = i[0], f = n.count();
12286  u !== 0 && l > 1 && f / l > 2 && (u = Math.round(Math.ceil(u / l) * l));
12287  var h = RD(r), v = o.get("showMinLabel") || h, c = o.get("showMaxLabel") || h;
12288  v && u !== i[0] && d(i[0]);
12289  for (var p = u; p <= i[1]; p += l) d(p);
12290  c && p - l !== i[1] && d(i[1]);
12291  function d(g) {
12292    var y = { value: g };
12293    s.push(t ? g : { formattedLabel: a(y), rawLabel: n.getLabel(y), tickValue: g });
12294  }
12295  return s;
12296}
12297function HD(r, e, t) {
12298  var a = r.scale, n = Uo(r), i = [];
12299  return D(a.getTicks(), function(o) {
12300    var s = a.getLabel(o), l = o.value;
12301    e(o.value, s) && i.push(t ? l : { formattedLabel: n(o), rawLabel: s, tickValue: l });
12302  }), i;
12303}
12304var R1 = [0, 1], yr = function() {
12305  function r(e, t, a) {
12306    this.onBand = false, this.inverse = false, this.dim = e, this.scale = t, this._extent = a || [0, 0];
12307  }
12308  return r.prototype.contain = function(e) {
12309    var t = this._extent, a = Math.min(t[0], t[1]), n = Math.max(t[0], t[1]);
12310    return e >= a && e <= n;
12311  }, r.prototype.containData = function(e) {
12312    return this.scale.contain(e);
12313  }, r.prototype.getExtent = function() {
12314    return this._extent.slice();
12315  }, r.prototype.getPixelPrecision = function(e) {
12316    return Fg(e || this.scale.getExtent(), this._extent);
12317  }, r.prototype.setExtent = function(e, t) {
12318    var a = this._extent;
12319    a[0] = e, a[1] = t;
12320  }, r.prototype.dataToCoord = function(e, t) {
12321    var a = this._extent, n = this.scale;
12322    return e = n.normalize(e), this.onBand && n.type === "ordinal" && (a = a.slice(), E1(a, n.count())), Dt(e, R1, a, t);
12323  }, r.prototype.coordToData = function(e, t) {
12324    var a = this._extent, n = this.scale;
12325    this.onBand && n.type === "ordinal" && (a = a.slice(), E1(a, n.count()));
12326    var i = Dt(e, a, R1, t);
12327    return this.scale.scale(i);
12328  }, r.prototype.pointToData = function(e, t) {
12329  }, r.prototype.getTicksCoords = function(e) {
12330    e = e || {};
12331    var t = e.tickModel || this.getTickModel(), a = Iz(this, t), n = a.ticks, i = G(n, function(s) {
12332      return { coord: this.dataToCoord(this.scale.type === "ordinal" ? this.scale.getRawOrdinalNumber(s) : s), tickValue: s };
12333    }, this), o = t.get("alignWithLabel");
12334    return Nz(this, i, o, e.clamp), i;
12335  }, r.prototype.getMinorTicksCoords = function() {
12336    if (this.scale.type === "ordinal") return [];
12337    var e = this.model.getModel("minorTick"), t = e.get("splitNumber");
12338    t > 0 && t < 100 || (t = 5);
12339    var a = this.scale.getMinorTicks(t), n = G(a, function(i) {
12340      return G(i, function(o) {
12341        return { coord: this.dataToCoord(o), tickValue: o };
12342      }, this);
12343    }, this);
12344    return n;
12345  }, r.prototype.getViewLabels = function() {
12346    return Mz(this).labels;
12347  }, r.prototype.getLabelModel = function() {
12348    return this.model.getModel("axisLabel");
12349  }, r.prototype.getTickModel = function() {
12350    return this.model.getModel("axisTick");
12351  }, r.prototype.getBandWidth = function() {
12352    var e = this._extent, t = this.scale.getExtent(), a = t[1] - t[0] + (this.onBand ? 1 : 0);
12353    a === 0 && (a = 1);
12354    var n = Math.abs(e[1] - e[0]);
12355    return Math.abs(n) / a;
12356  }, r.prototype.calculateCategoryInterval = function() {
12357    return kz(this);
12358  }, r;
12359}();
12360function E1(r, e) {
12361  var t = r[1] - r[0], a = e, n = t / a / 2;
12362  r[0] += n, r[1] -= n;
12363}
12364function Nz(r, e, t, a) {
12365  var n = e.length;
12366  if (!r.onBand || t || !n) return;
12367  var i = r.getExtent(), o, s;
12368  if (n === 1) e[0].coord = i[0], o = e[1] = { coord: i[1], tickValue: e[0].tickValue };
12369  else {
12370    var l = e[n - 1].tickValue - e[0].tickValue, u = (e[n - 1].coord - e[0].coord) / l;
12371    D(e, function(c) {
12372      c.coord -= u / 2;
12373    });
12374    var f = r.scale.getExtent();
12375    s = 1 + f[1] - e[n - 1].tickValue, o = { coord: e[n - 1].coord + u * s, tickValue: f[1] + 1 }, e.push(o);
12376  }
12377  var h = i[0] > i[1];
12378  v(e[0].coord, i[0]) && (a ? e[0].coord = i[0] : e.shift()), a && v(i[0], e[0].coord) && e.unshift({ coord: i[0] }), v(i[1], o.coord) && (a ? o.coord = i[1] : e.pop()), a && v(o.coord, i[1]) && e.push({ coord: i[1] });
12379  function v(c, p) {
12380    return c = Ut(c), p = Ut(p), h ? c > p : c < p;
12381  }
12382}
12383function Bz(r) {
12384  var e = gt.extend(r);
12385  return gt.registerClass(e), e;
12386}
12387function zz(r) {
12388  var e = Vt.extend(r);
12389  return Vt.registerClass(e), e;
12390}
12391function Vz(r) {
12392  var e = Et.extend(r);
12393  return Et.registerClass(e), e;
12394}
12395function Gz(r) {
12396  var e = Pt.extend(r);
12397  return Pt.registerClass(e), e;
12398}
12399var hs = Math.PI * 2, En = ta.CMD, Fz = ["top", "right", "bottom", "left"];
12400function Hz(r, e, t, a, n) {
12401  var i = t.width, o = t.height;
12402  switch (r) {
12403    case "top":
12404      a.set(t.x + i / 2, t.y - e), n.set(0, -1);
12405      break;
12406    case "bottom":
12407      a.set(t.x + i / 2, t.y + o + e), n.set(0, 1);
12408      break;
12409    case "left":
12410      a.set(t.x - e, t.y + o / 2), n.set(-1, 0);
12411      break;
12412    case "right":
12413      a.set(t.x + i + e, t.y + o / 2), n.set(1, 0);
12414      break;
12415  }
12416}
12417function Wz(r, e, t, a, n, i, o, s, l) {
12418  o -= r, s -= e;
12419  var u = Math.sqrt(o * o + s * s);
12420  o /= u, s /= u;
12421  var f = o * t + r, h = s * t + e;
12422  if (Math.abs(a - n) % hs < 1e-4) return l[0] = f, l[1] = h, u - t;
12423  if (i) {
12424    var v = a;
12425    a = Ze(n), n = Ze(v);
12426  } else a = Ze(a), n = Ze(n);
12427  a > n && (n += hs);
12428  var c = Math.atan2(s, o);
12429  if (c < 0 && (c += hs), c >= a && c <= n || c + hs >= a && c + hs <= n) return l[0] = f, l[1] = h, u - t;
12430  var p = t * Math.cos(a) + r, d = t * Math.sin(a) + e, g = t * Math.cos(n) + r, y = t * Math.sin(n) + e, m = (p - o) * (p - o) + (d - s) * (d - s), _ = (g - o) * (g - o) + (y - s) * (y - s);
12431  return m < _ ? (l[0] = p, l[1] = d, Math.sqrt(m)) : (l[0] = g, l[1] = y, Math.sqrt(_));
12432}
12433function Kf(r, e, t, a, n, i, o, s) {
12434  var l = n - r, u = i - e, f = t - r, h = a - e, v = Math.sqrt(f * f + h * h);
12435  f /= v, h /= v;
12436  var c = l * f + u * h, p = c / v;
12437  s && (p = Math.min(Math.max(p, 0), 1)), p *= v;
12438  var d = o[0] = r + p * f, g = o[1] = e + p * h;
12439  return Math.sqrt((d - n) * (d - n) + (g - i) * (g - i));
12440}
12441function WD(r, e, t, a, n, i, o) {
12442  t < 0 && (r = r + t, t = -t), a < 0 && (e = e + a, a = -a);
12443  var s = r + t, l = e + a, u = o[0] = Math.min(Math.max(n, r), s), f = o[1] = Math.min(Math.max(i, e), l);
12444  return Math.sqrt((u - n) * (u - n) + (f - i) * (f - i));
12445}
12446var wr = [];
12447function Uz(r, e, t) {
12448  var a = WD(e.x, e.y, e.width, e.height, r.x, r.y, wr);
12449  return t.set(wr[0], wr[1]), a;
12450}
12451function Yz(r, e, t) {
12452  for (var a = 0, n = 0, i = 0, o = 0, s, l, u = 1 / 0, f = e.data, h = r.x, v = r.y, c = 0; c < f.length; ) {
12453    var p = f[c++];
12454    c === 1 && (a = f[c], n = f[c + 1], i = a, o = n);
12455    var d = u;
12456    switch (p) {
12457      case En.M:
12458        i = f[c++], o = f[c++], a = i, n = o;
12459        break;
12460      case En.L:
12461        d = Kf(a, n, f[c], f[c + 1], h, v, wr, true), a = f[c++], n = f[c++];
12462        break;
12463      case En.C:
12464        d = TT(a, n, f[c++], f[c++], f[c++], f[c++], f[c], f[c + 1], h, v, wr), a = f[c++], n = f[c++];
12465        break;
12466      case En.Q:
12467        d = AT(a, n, f[c++], f[c++], f[c], f[c + 1], h, v, wr), a = f[c++], n = f[c++];
12468        break;
12469      case En.A:
12470        var g = f[c++], y = f[c++], m = f[c++], _ = f[c++], S = f[c++], b = f[c++];
12471        c += 1;
12472        var x = !!(1 - f[c++]);
12473        s = Math.cos(S) * m + g, l = Math.sin(S) * _ + y, c <= 1 && (i = s, o = l);
12474        var w = (h - g) * _ / m + g;
12475        d = Wz(g, y, _, S, S + b, x, w, v, wr), a = Math.cos(S + b) * m + g, n = Math.sin(S + b) * _ + y;
12476        break;
12477      case En.R:
12478        i = a = f[c++], o = n = f[c++];
12479        var T = f[c++], C = f[c++];
12480        d = WD(i, o, T, C, h, v, wr);
12481        break;
12482      case En.Z:
12483        d = Kf(a, n, i, o, h, v, wr, true), a = i, n = o;
12484        break;
12485    }
12486    d < u && (u = d, t.set(wr[0], wr[1]));
12487  }
12488  return u;
12489}
12490var Cr = new ft(), zt = new ft(), Zt = new ft(), Xr = new ft(), Ur = new ft();
12491function k1(r, e) {
12492  if (r) {
12493    var t = r.getTextGuideLine(), a = r.getTextContent();
12494    if (a && t) {
12495      var n = r.textGuideLineConfig || {}, i = [[0, 0], [0, 0], [0, 0]], o = n.candidates || Fz, s = a.getBoundingRect().clone();
12496      s.applyTransform(a.getComputedTransform());
12497      var l = 1 / 0, u = n.anchor, f = r.getComputedTransform(), h = f && _i([], f), v = e.get("length2") || 0;
12498      u && Zt.copy(u);
12499      for (var c = 0; c < o.length; c++) {
12500        var p = o[c];
12501        Hz(p, 0, s, Cr, Xr), ft.scaleAndAdd(zt, Cr, Xr, v), zt.transform(h);
12502        var d = r.getBoundingRect(), g = u ? u.distance(zt) : r instanceof mt ? Yz(zt, r.path, Zt) : Uz(zt, d, Zt);
12503        g < l && (l = g, zt.transform(f), Zt.transform(f), Zt.toArray(i[0]), zt.toArray(i[1]), Cr.toArray(i[2]));
12504      }
12505      UD(i, e.get("minTurnAngle")), t.setShape({ points: i });
12506    }
12507  }
12508}
12509var jf = [], Pe = new ft();
12510function UD(r, e) {
12511  if (e <= 180 && e > 0) {
12512    e = e / 180 * Math.PI, Cr.fromArray(r[0]), zt.fromArray(r[1]), Zt.fromArray(r[2]), ft.sub(Xr, Cr, zt), ft.sub(Ur, Zt, zt);
12513    var t = Xr.len(), a = Ur.len();
12514    if (!(t < 1e-3 || a < 1e-3)) {
12515      Xr.scale(1 / t), Ur.scale(1 / a);
12516      var n = Xr.dot(Ur), i = Math.cos(e);
12517      if (i < n) {
12518        var o = Kf(zt.x, zt.y, Zt.x, Zt.y, Cr.x, Cr.y, jf, false);
12519        Pe.fromArray(jf), Pe.scaleAndAdd(Ur, o / Math.tan(Math.PI - e));
12520        var s = Zt.x !== zt.x ? (Pe.x - zt.x) / (Zt.x - zt.x) : (Pe.y - zt.y) / (Zt.y - zt.y);
12521        if (isNaN(s)) return;
12522        s < 0 ? ft.copy(Pe, zt) : s > 1 && ft.copy(Pe, Zt), Pe.toArray(r[1]);
12523      }
12524    }
12525  }
12526}
12527function $z(r, e, t) {
12528  if (t <= 180 && t > 0) {
12529    t = t / 180 * Math.PI, Cr.fromArray(r[0]), zt.fromArray(r[1]), Zt.fromArray(r[2]), ft.sub(Xr, zt, Cr), ft.sub(Ur, Zt, zt);
12530    var a = Xr.len(), n = Ur.len();
12531    if (!(a < 1e-3 || n < 1e-3)) {
12532      Xr.scale(1 / a), Ur.scale(1 / n);
12533      var i = Xr.dot(e), o = Math.cos(t);
12534      if (i < o) {
12535        var s = Kf(zt.x, zt.y, Zt.x, Zt.y, Cr.x, Cr.y, jf, false);
12536        Pe.fromArray(jf);
12537        var l = Math.PI / 2, u = Math.acos(Ur.dot(e)), f = l + u - t;
12538        if (f >= l) ft.copy(Pe, Zt);
12539        else {
12540          Pe.scaleAndAdd(Ur, s / Math.tan(Math.PI / 2 - f));
12541          var h = Zt.x !== zt.x ? (Pe.x - zt.x) / (Zt.x - zt.x) : (Pe.y - zt.y) / (Zt.y - zt.y);
12542          if (isNaN(h)) return;
12543          h < 0 ? ft.copy(Pe, zt) : h > 1 && ft.copy(Pe, Zt);
12544        }
12545        Pe.toArray(r[1]);
12546      }
12547    }
12548  }
12549}
12550function mc(r, e, t, a) {
12551  var n = t === "normal", i = n ? r : r.ensureState(t);
12552  i.ignore = e;
12553  var o = a.get("smooth");
12554  o && o === true && (o = 0.3), i.shape = i.shape || {}, o > 0 && (i.shape.smooth = o);
12555  var s = a.getModel("lineStyle").getLineStyle();
12556  n ? r.useStyle(s) : i.style = s;
12557}
12558function Xz(r, e) {
12559  var t = e.smooth, a = e.points;
12560  if (a) if (r.moveTo(a[0][0], a[0][1]), t > 0 && a.length >= 3) {
12561    var n = fa(a[0], a[1]), i = fa(a[1], a[2]);
12562    if (!n || !i) {
12563      r.lineTo(a[1][0], a[1][1]), r.lineTo(a[2][0], a[2][1]);
12564      return;
12565    }
12566    var o = Math.min(n, i) * t, s = Bs([], a[1], a[0], o / n), l = Bs([], a[1], a[2], o / i), u = Bs([], s, l, 0.5);
12567    r.bezierCurveTo(s[0], s[1], s[0], s[1], u[0], u[1]), r.bezierCurveTo(l[0], l[1], l[0], l[1], a[2][0], a[2][1]);
12568  } else for (var f = 1; f < a.length; f++) r.lineTo(a[f][0], a[f][1]);
12569}
12570function Uy(r, e, t) {
12571  var a = r.getTextGuideLine(), n = r.getTextContent();
12572  if (!n) {
12573    a && r.removeTextGuideLine();
12574    return;
12575  }
12576  for (var i = e.normal, o = i.get("show"), s = n.ignore, l = 0; l < sl.length; l++) {
12577    var u = sl[l], f = e[u], h = u === "normal";
12578    if (f) {
12579      var v = f.get("show"), c = h ? s : st(n.states[u] && n.states[u].ignore, s);
12580      if (c || !st(v, o)) {
12581        var p = h ? a : a && a.states[u];
12582        p && (p.ignore = true), a && mc(a, true, u, f);
12583        continue;
12584      }
12585      a || (a = new De(), r.setTextGuideLine(a), !h && (s || !o) && mc(a, true, "normal", e.normal), r.stateProxy && (a.stateProxy = r.stateProxy)), mc(a, false, u, f);
12586    }
12587  }
12588  if (a) {
12589    Q(a.style, t), a.style.fill = null;
12590    var d = i.get("showAbove"), g = r.textGuideLineConfig = r.textGuideLineConfig || {};
12591    g.showAbove = d || false, a.buildPath = Xz;
12592  }
12593}
12594function Yy(r, e) {
12595  e = e || "labelLine";
12596  for (var t = { normal: r.getModel(e) }, a = 0; a < Oe.length; a++) {
12597    var n = Oe[a];
12598    t[n] = r.getModel([n, e]);
12599  }
12600  return t;
12601}
12602function YD(r) {
12603  for (var e = [], t = 0; t < r.length; t++) {
12604    var a = r[t];
12605    if (!a.defaultAttr.ignore) {
12606      var n = a.label, i = n.getComputedTransform(), o = n.getBoundingRect(), s = !i || i[1] < 1e-5 && i[2] < 1e-5, l = n.style.margin || 0, u = o.clone();
12607      u.applyTransform(i), u.x -= l / 2, u.y -= l / 2, u.width += l, u.height += l;
12608      var f = s ? new Ef(o, i) : null;
12609      e.push({ label: n, labelLine: a.labelLine, rect: u, localRect: o, obb: f, priority: a.priority, defaultAttr: a.defaultAttr, layoutOption: a.computedLayoutOption, axisAligned: s, transform: i });
12610    }
12611  }
12612  return e;
12613}
12614function $D(r, e, t, a, n, i) {
12615  var o = r.length;
12616  if (o < 2) return;
12617  r.sort(function(x, w) {
12618    return x.rect[e] - w.rect[e];
12619  });
12620  for (var s = 0, l, u = false, f = 0; f < o; f++) {
12621    var h = r[f], v = h.rect;
12622    l = v[e] - s, l < 0 && (v[e] -= l, h.label[e] -= l, u = true), s = v[e] + v[t];
12623  }
12624  var c = r[0], p = r[o - 1], d, g;
12625  y(), d < 0 && S(-d, 0.8), g < 0 && S(g, 0.8), y(), m(d, g, 1), m(g, d, -1), y(), d < 0 && b(-d), g < 0 && b(g);
12626  function y() {
12627    d = c.rect[e] - a, g = n - p.rect[e] - p.rect[t];
12628  }
12629  function m(x, w, T) {
12630    if (x < 0) {
12631      var C = Math.min(w, -x);
12632      if (C > 0) {
12633        _(C * T, 0, o);
12634        var A = C + x;
12635        A < 0 && S(-A * T, 1);
12636      } else S(-x * T, 1);
12637    }
12638  }
12639  function _(x, w, T) {
12640    x !== 0 && (u = true);
12641    for (var C = w; C < T; C++) {
12642      var A = r[C], M = A.rect;
12643      M[e] += x, A.label[e] += x;
12644    }
12645  }
12646  function S(x, w) {
12647    for (var T = [], C = 0, A = 1; A < o; A++) {
12648      var M = r[A - 1].rect, I = Math.max(r[A].rect[e] - M[e] - M[t], 0);
12649      T.push(I), C += I;
12650    }
12651    if (C) {
12652      var L = Math.min(Math.abs(x) / C, w);
12653      if (x > 0) for (var A = 0; A < o - 1; A++) {
12654        var P = T[A] * L;
12655        _(P, 0, A + 1);
12656      }
12657      else for (var A = o - 1; A > 0; A--) {
12658        var P = T[A - 1] * L;
12659        _(-P, A, o);
12660      }
12661    }
12662  }
12663  function b(x) {
12664    var w = x < 0 ? -1 : 1;
12665    x = Math.abs(x);
12666    for (var T = Math.ceil(x / (o - 1)), C = 0; C < o - 1; C++) if (w > 0 ? _(T, 0, C + 1) : _(-T, o - C - 1, o), x -= T, x <= 0) return;
12667  }
12668  return u;
12669}
12670function Zz(r, e, t, a) {
12671  return $D(r, "x", "width", e, t);
12672}
12673function XD(r, e, t, a) {
12674  return $D(r, "y", "height", e, t);
12675}
12676function ZD(r) {
12677  var e = [];
12678  r.sort(function(d, g) {
12679    return g.priority - d.priority;
12680  });
12681  var t = new ht(0, 0, 0, 0);
12682  function a(d) {
12683    if (!d.ignore) {
12684      var g = d.ensureState("emphasis");
12685      g.ignore == null && (g.ignore = false);
12686    }
12687    d.ignore = true;
12688  }
12689  for (var n = 0; n < r.length; n++) {
12690    var i = r[n], o = i.axisAligned, s = i.localRect, l = i.transform, u = i.label, f = i.labelLine;
12691    t.copy(i.rect), t.width -= 0.1, t.height -= 0.1, t.x += 0.05, t.y += 0.05;
12692    for (var h = i.obb, v = false, c = 0; c < e.length; c++) {
12693      var p = e[c];
12694      if (t.intersect(p.rect)) {
12695        if (o && p.axisAligned) {
12696          v = true;
12697          break;
12698        }
12699        if (p.obb || (p.obb = new Ef(p.localRect, p.transform)), h || (h = new Ef(s, l)), h.intersect(p.obb)) {
12700          v = true;
12701          break;
12702        }
12703      }
12704    }
12705    v ? (a(u), f && a(f)) : (u.attr("ignore", i.defaultAttr.ignore), f && f.attr("ignore", i.defaultAttr.labelGuideIgnore), e.push(i));
12706  }
12707}
12708function qz(r) {
12709  if (r) {
12710    for (var e = [], t = 0; t < r.length; t++) e.push(r[t].slice());
12711    return e;
12712  }
12713}
12714function Kz(r, e) {
12715  var t = r.label, a = e && e.getTextGuideLine();
12716  return { dataIndex: r.dataIndex, dataType: r.dataType, seriesIndex: r.seriesModel.seriesIndex, text: r.label.style.text, rect: r.hostRect, labelRect: r.rect, align: t.style.align, verticalAlign: t.style.verticalAlign, labelLinePoints: qz(a && a.shape.points) };
12717}
12718var O1 = ["align", "verticalAlign", "width", "height", "fontSize"], Me = new ca(), _c = bt(), jz = bt();
12719function Lu(r, e, t) {
12720  for (var a = 0; a < t.length; a++) {
12721    var n = t[a];
12722    e[n] != null && (r[n] = e[n]);
12723  }
12724}
12725var Pu = ["x", "y", "rotation"], Jz = function() {
12726  function r() {
12727    this._labelList = [], this._chartViewList = [];
12728  }
12729  return r.prototype.clearLabels = function() {
12730    this._labelList = [], this._chartViewList = [];
12731  }, r.prototype._addLabel = function(e, t, a, n, i) {
12732    var o = n.style, s = n.__hostTarget, l = s.textConfig || {}, u = n.getComputedTransform(), f = n.getBoundingRect().plain();
12733    ht.applyTransform(f, f, u), u ? Me.setLocalTransform(u) : (Me.x = Me.y = Me.rotation = Me.originX = Me.originY = 0, Me.scaleX = Me.scaleY = 1), Me.rotation = Ze(Me.rotation);
12734    var h = n.__hostTarget, v;
12735    if (h) {
12736      v = h.getBoundingRect().plain();
12737      var c = h.getComputedTransform();
12738      ht.applyTransform(v, v, c);
12739    }
12740    var p = v && h.getTextGuideLine();
12741    this._labelList.push({ label: n, labelLine: p, seriesModel: a, dataIndex: e, dataType: t, layoutOption: i, computedLayoutOption: null, rect: f, hostRect: v, priority: v ? v.width * v.height : 0, defaultAttr: { ignore: n.ignore, labelGuideIgnore: p && p.ignore, x: Me.x, y: Me.y, scaleX: Me.scaleX, scaleY: Me.scaleY, rotation: Me.rotation, style: { x: o.x, y: o.y, align: o.align, verticalAlign: o.verticalAlign, width: o.width, height: o.height, fontSize: o.fontSize }, cursor: n.cursor, attachedPos: l.position, attachedRot: l.rotation } });
12742  }, r.prototype.addLabelsOfSeries = function(e) {
12743    var t = this;
12744    this._chartViewList.push(e);
12745    var a = e.__model, n = a.get("labelLayout");
12746    (j(n) || _t(n).length) && e.group.traverse(function(i) {
12747      if (i.ignore) return true;
12748      var o = i.getTextContent(), s = it(i);
12749      o && !o.disableLabelLayout && t._addLabel(s.dataIndex, s.dataType, a, o, n);
12750    });
12751  }, r.prototype.updateLayoutConfig = function(e) {
12752    var t = e.getWidth(), a = e.getHeight();
12753    function n(_, S) {
12754      return function() {
12755        k1(_, S);
12756      };
12757    }
12758    for (var i = 0; i < this._labelList.length; i++) {
12759      var o = this._labelList[i], s = o.label, l = s.__hostTarget, u = o.defaultAttr, f = void 0;
12760      j(o.layoutOption) ? f = o.layoutOption(Kz(o, l)) : f = o.layoutOption, f = f || {}, o.computedLayoutOption = f;
12761      var h = Math.PI / 180;
12762      l && l.setTextConfig({ local: false, position: f.x != null || f.y != null ? null : u.attachedPos, rotation: f.rotate != null ? f.rotate * h : u.attachedRot, offset: [f.dx || 0, f.dy || 0] });
12763      var v = false;
12764      if (f.x != null ? (s.x = W(f.x, t), s.setStyle("x", 0), v = true) : (s.x = u.x, s.setStyle("x", u.style.x)), f.y != null ? (s.y = W(f.y, a), s.setStyle("y", 0), v = true) : (s.y = u.y, s.setStyle("y", u.style.y)), f.labelLinePoints) {
12765        var c = l.getTextGuideLine();
12766        c && (c.setShape({ points: f.labelLinePoints }), v = false);
12767      }
12768      var p = _c(s);
12769      p.needsUpdateLabelLine = v, s.rotation = f.rotate != null ? f.rotate * h : u.rotation, s.scaleX = u.scaleX, s.scaleY = u.scaleY;
12770      for (var d = 0; d < O1.length; d++) {
12771        var g = O1[d];
12772        s.setStyle(g, f[g] != null ? f[g] : u.style[g]);
12773      }
12774      if (f.draggable) {
12775        if (s.draggable = true, s.cursor = "move", l) {
12776          var y = o.seriesModel;
12777          if (o.dataIndex != null) {
12778            var m = o.seriesModel.getData(o.dataType);
12779            y = m.getItemModel(o.dataIndex);
12780          }
12781          s.on("drag", n(l, y.getModel("labelLine")));
12782        }
12783      } else s.off("drag"), s.cursor = u.cursor;
12784    }
12785  }, r.prototype.layout = function(e) {
12786    var t = e.getWidth(), a = e.getHeight(), n = YD(this._labelList), i = Ct(n, function(l) {
12787      return l.layoutOption.moveOverlap === "shiftX";
12788    }), o = Ct(n, function(l) {
12789      return l.layoutOption.moveOverlap === "shiftY";
12790    });
12791    Zz(i, 0, t), XD(o, 0, a);
12792    var s = Ct(n, function(l) {
12793      return l.layoutOption.hideOverlap;
12794    });
12795    ZD(s);
12796  }, r.prototype.processLabelsOverall = function() {
12797    var e = this;
12798    D(this._chartViewList, function(t) {
12799      var a = t.__model, n = t.ignoreLabelLineUpdate, i = a.isAnimationEnabled();
12800      t.group.traverse(function(o) {
12801        if (o.ignore && !o.forceLabelAnimation) return true;
12802        var s = !n, l = o.getTextContent();
12803        !s && l && (s = _c(l).needsUpdateLabelLine), s && e._updateLabelLine(o, a), i && e._animateLabels(o, a);
12804      });
12805    });
12806  }, r.prototype._updateLabelLine = function(e, t) {
12807    var a = e.getTextContent(), n = it(e), i = n.dataIndex;
12808    if (a && i != null) {
12809      var o = t.getData(n.dataType), s = o.getItemModel(i), l = {}, u = o.getItemVisual(i, "style");
12810      if (u) {
12811        var f = o.getVisual("drawType");
12812        l.stroke = u[f];
12813      }
12814      var h = s.getModel("labelLine");
12815      Uy(e, Yy(s), l), k1(e, h);
12816    }
12817  }, r.prototype._animateLabels = function(e, t) {
12818    var a = e.getTextContent(), n = e.getTextGuideLine();
12819    if (a && (e.forceLabelAnimation || !a.ignore && !a.invisible && !e.disableLabelAnimation && !uo(e))) {
12820      var i = _c(a), o = i.oldLayout, s = it(e), l = s.dataIndex, u = { x: a.x, y: a.y, rotation: a.rotation }, f = t.getData(s.dataType);
12821      if (o) {
12822        a.attr(o);
12823        var v = e.prevStates;
12824        v && (vt(v, "select") >= 0 && a.attr(i.oldLayoutSelect), vt(v, "emphasis") >= 0 && a.attr(i.oldLayoutEmphasis)), Tt(a, u, t, l);
12825      } else if (a.attr(u), !Oo(a).valueAnimation) {
12826        var h = st(a.style.opacity, 1);
12827        a.style.opacity = 0, Gt(a, { style: { opacity: h } }, t, l);
12828      }
12829      if (i.oldLayout = u, a.states.select) {
12830        var c = i.oldLayoutSelect = {};
12831        Lu(c, u, Pu), Lu(c, a.states.select, Pu);
12832      }
12833      if (a.states.emphasis) {
12834        var p = i.oldLayoutEmphasis = {};
12835        Lu(p, u, Pu), Lu(p, a.states.emphasis, Pu);
12836      }
12837      VC(a, l, f, t, t);
12838    }
12839    if (n && !n.ignore && !n.invisible) {
12840      var i = jz(n), o = i.oldLayout, d = { points: n.shape.points };
12841      o ? (n.attr({ shape: o }), Tt(n, { shape: d }, t)) : (n.setShape(d), n.style.strokePercent = 0, Gt(n, { style: { strokePercent: 1 } }, t)), i.oldLayout = d;
12842    }
12843  }, r;
12844}(), Sc = bt();
12845function Qz(r) {
12846  r.registerUpdateLifecycle("series:beforeupdate", function(e, t, a) {
12847    var n = Sc(t).labelManager;
12848    n || (n = Sc(t).labelManager = new Jz()), n.clearLabels();
12849  }), r.registerUpdateLifecycle("series:layoutlabels", function(e, t, a) {
12850    var n = Sc(t).labelManager;
12851    a.updatedSeries.forEach(function(i) {
12852      n.addLabelsOfSeries(t.getViewOfSeriesModel(i));
12853    }), n.updateLayoutConfig(t), n.layout(t), n.processLabelsOverall();
12854  });
12855}
12856var xc = Math.sin, bc = Math.cos, qD = Math.PI, kn = Math.PI * 2, tV = 180 / qD, KD = function() {
12857  function r() {
12858  }
12859  return r.prototype.reset = function(e) {
12860    this._start = true, this._d = [], this._str = "", this._p = Math.pow(10, e || 4);
12861  }, r.prototype.moveTo = function(e, t) {
12862    this._add("M", e, t);
12863  }, r.prototype.lineTo = function(e, t) {
12864    this._add("L", e, t);
12865  }, r.prototype.bezierCurveTo = function(e, t, a, n, i, o) {
12866    this._add("C", e, t, a, n, i, o);
12867  }, r.prototype.quadraticCurveTo = function(e, t, a, n) {
12868    this._add("Q", e, t, a, n);
12869  }, r.prototype.arc = function(e, t, a, n, i, o) {
12870    this.ellipse(e, t, a, a, 0, n, i, o);
12871  }, r.prototype.ellipse = function(e, t, a, n, i, o, s, l) {
12872    var u = s - o, f = !l, h = Math.abs(u), v = Ha(h - kn) || (f ? u >= kn : -u >= kn), c = u > 0 ? u % kn : u % kn + kn, p = false;
12873    v ? p = true : Ha(h) ? p = false : p = c >= qD == !!f;
12874    var d = e + a * bc(o), g = t + n * xc(o);
12875    this._start && this._add("M", d, g);
12876    var y = Math.round(i * tV);
12877    if (v) {
12878      var m = 1 / this._p, _ = (f ? 1 : -1) * (kn - m);
12879      this._add("A", a, n, y, 1, +f, e + a * bc(o + _), t + n * xc(o + _)), m > 0.01 && this._add("A", a, n, y, 0, +f, d, g);
12880    } else {
12881      var S = e + a * bc(s), b = t + n * xc(s);
12882      this._add("A", a, n, y, +p, +f, S, b);
12883    }
12884  }, r.prototype.rect = function(e, t, a, n) {
12885    this._add("M", e, t), this._add("l", a, 0), this._add("l", 0, n), this._add("l", -a, 0), this._add("Z");
12886  }, r.prototype.closePath = function() {
12887    this._d.length > 0 && this._add("Z");
12888  }, r.prototype._add = function(e, t, a, n, i, o, s, l, u) {
12889    for (var f = [], h = this._p, v = 1; v < arguments.length; v++) {
12890      var c = arguments[v];
12891      if (isNaN(c)) {
12892        this._invalid = true;
12893        return;
12894      }
12895      f.push(Math.round(c * h) / h);
12896    }
12897    this._d.push(e + f.join(" ")), this._start = e === "Z";
12898  }, r.prototype.generateStr = function() {
12899    this._str = this._invalid ? "" : this._d.join(""), this._d = [];
12900  }, r.prototype.getStr = function() {
12901    return this._str;
12902  }, r;
12903}(), $y = "none", eV = Math.round;
12904function rV(r) {
12905  var e = r.fill;
12906  return e != null && e !== $y;
12907}
12908function aV(r) {
12909  var e = r.stroke;
12910  return e != null && e !== $y;
12911}
12912var Bd = ["lineCap", "miterLimit", "lineJoin"], nV = G(Bd, function(r) {
12913  return "stroke-" + r.toLowerCase();
12914});
12915function iV(r, e, t, a) {
12916  var n = e.opacity == null ? 1 : e.opacity;
12917  if (t instanceof ue) {
12918    r("opacity", n);
12919    return;
12920  }
12921  if (rV(e)) {
12922    var i = il(e.fill);
12923    r("fill", i.color);
12924    var o = e.fillOpacity != null ? e.fillOpacity * i.opacity * n : i.opacity * n;
12925    o < 1 && r("fill-opacity", o);
12926  } else r("fill", $y);
12927  if (aV(e)) {
12928    var s = il(e.stroke);
12929    r("stroke", s.color);
12930    var l = e.strokeNoScale ? t.getLineScale() : 1, u = l ? (e.lineWidth || 0) / l : 0, f = e.strokeOpacity != null ? e.strokeOpacity * s.opacity * n : s.opacity * n, h = e.strokeFirst;
12931    if (u !== 1 && r("stroke-width", u), h && r("paint-order", h ? "stroke" : "fill"), f < 1 && r("stroke-opacity", f), e.lineDash) {
12932      var v = Dy(t), c = v[0], p = v[1];
12933      c && (p = eV(p || 0), r("stroke-dasharray", c.join(",")), (p || a) && r("stroke-dashoffset", p));
12934    }
12935    for (var d = 0; d < Bd.length; d++) {
12936      var g = Bd[d];
12937      if (e[g] !== Pf[g]) {
12938        var y = e[g] || Pf[g];
12939        y && r(nV[d], y);
12940      }
12941    }
12942  }
12943}
12944var jD = "http://www.w3.org/2000/svg", JD = "http://www.w3.org/1999/xlink", oV = "http://www.w3.org/2000/xmlns/", sV = "http://www.w3.org/XML/1998/namespace", N1 = "ecmeta_";
12945function QD(r) {
12946  return document.createElementNS(jD, r);
12947}
12948function ie(r, e, t, a, n) {
12949  return { tag: r, attrs: t || {}, children: a, text: n, key: e };
12950}
12951function lV(r, e) {
12952  var t = [];
12953  if (e) for (var a in e) {
12954    var n = e[a], i = a;
12955    n !== false && (n !== true && n != null && (i += '="' + n + '"'), t.push(i));
12956  }
12957  return "<" + r + " " + t.join(" ") + ">";
12958}
12959function uV(r) {
12960  return "</" + r + ">";
12961}
12962function Xy(r, e) {
12963  e = e || {};
12964  var t = e.newline ? `
12965` : "";
12966  function a(n) {
12967    var i = n.children, o = n.tag, s = n.attrs, l = n.text;
12968    return lV(o, s) + (o !== "style" ? xe(l) : l || "") + (i ? "" + t + G(i, function(u) {
12969      return a(u);
12970    }).join(t) + t : "") + uV(o);
12971  }
12972  return a(r);
12973}
12974function fV(r, e, t) {
12975  t = t || {};
12976  var a = t.newline ? `
12977` : "", n = " {" + a, i = a + "}", o = G(_t(r), function(l) {
12978    return l + n + G(_t(r[l]), function(u) {
12979      return u + ":" + r[l][u] + ";";
12980    }).join(a) + i;
12981  }).join(a), s = G(_t(e), function(l) {
12982    return "@keyframes " + l + n + G(_t(e[l]), function(u) {
12983      return u + n + G(_t(e[l][u]), function(f) {
12984        var h = e[l][u][f];
12985        return f === "d" && (h = 'path("' + h + '")'), f + ":" + h + ";";
12986      }).join(a) + i;
12987    }).join(a) + i;
12988  }).join(a);
12989  return !o && !s ? "" : ["<![CDATA[", o, s, "]]>"].join(a);
12990}
12991function zd(r) {
12992  return { zrId: r, shadowCache: {}, patternCache: {}, gradientCache: {}, clipPathCache: {}, defs: {}, cssNodes: {}, cssAnims: {}, cssStyleCache: {}, cssAnimIdx: 0, shadowIdx: 0, gradientIdx: 0, patternIdx: 0, clipPathIdx: 0 };
12993}
12994function B1(r, e, t, a) {
12995  return ie("svg", "root", { width: r, height: e, xmlns: jD, "xmlns:xlink": JD, version: "1.1", baseProfile: "full", viewBox: a ? "0 0 " + r + " " + e : false }, t);
12996}
12997var hV = 0;
12998function tM() {
12999  return hV++;
13000}
13001var z1 = { 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" }, Bn = "transform-origin";
13002function vV(r, e, t) {
13003  var a = z({}, r.shape);
13004  z(a, e), r.buildPath(t, a);
13005  var n = new KD();
13006  return n.reset(ET(r)), t.rebuildPath(n, 1), n.generateStr(), n.getStr();
13007}
13008function cV(r, e) {
13009  var t = e.originX, a = e.originY;
13010  (t || a) && (r[Bn] = t + "px " + a + "px");
13011}
13012var pV = { fill: "fill", opacity: "opacity", lineWidth: "stroke-width", lineDashOffset: "stroke-dashoffset" };
13013function eM(r, e) {
13014  var t = e.zrId + "-ani-" + e.cssAnimIdx++;
13015  return e.cssAnims[t] = r, t;
13016}
13017function dV(r, e, t) {
13018  var a = r.shape.paths, n = {}, i, o;
13019  if (D(a, function(l) {
13020    var u = zd(t.zrId);
13021    u.animation = true, tv(l, {}, u, true);
13022    var f = u.cssAnims, h = u.cssNodes, v = _t(f), c = v.length;
13023    if (c) {
13024      o = v[c - 1];
13025      var p = f[o];
13026      for (var d in p) {
13027        var g = p[d];
13028        n[d] = n[d] || { d: "" }, n[d].d += g.d || "";
13029      }
13030      for (var y in h) {
13031        var m = h[y].animation;
13032        m.indexOf(o) >= 0 && (i = m);
13033      }
13034    }
13035  }), !!i) {
13036    e.d = false;
13037    var s = eM(n, t);
13038    return i.replace(o, s);
13039  }
13040}
13041function V1(r) {
13042  return Y(r) ? z1[r] ? "cubic-bezier(" + z1[r] + ")" : Bg(r) ? r : "" : "";
13043}
13044function tv(r, e, t, a) {
13045  var n = r.animators, i = n.length, o = [];
13046  if (r instanceof Oh) {
13047    var s = dV(r, e, t);
13048    if (s) o.push(s);
13049    else if (!i) return;
13050  } else if (!i) return;
13051  for (var l = {}, u = 0; u < i; u++) {
13052    var f = n[u], h = [f.getMaxTime() / 1e3 + "s"], v = V1(f.getClip().easing), c = f.getDelay();
13053    v ? h.push(v) : h.push("linear"), c && h.push(c / 1e3 + "s"), f.getLoop() && h.push("infinite");
13054    var p = h.join(" ");
13055    l[p] = l[p] || [p, []], l[p][1].push(f);
13056  }
13057  function d(m) {
13058    var _ = m[1], S = _.length, b = {}, x = {}, w = {}, T = "animation-timing-function";
13059    function C(ct, et, dt) {
13060      for (var q = ct.getTracks(), ot = ct.getMaxTime(), Bt = 0; Bt < q.length; Bt++) {
13061        var Lt = q[Bt];
13062        if (Lt.needsAnimate()) {
13063          var kt = Lt.keyframes, Ht = Lt.propName;
13064          if (dt && (Ht = dt(Ht)), Ht) for (var re = 0; re < kt.length; re++) {
13065            var We = kt[re], Ne = Math.round(We.time / ot * 100) + "%", vn = V1(We.easing), Aa = We.rawValue;
13066            (Y(Aa) || wt(Aa)) && (et[Ne] = et[Ne] || {}, et[Ne][Ht] = We.rawValue, vn && (et[Ne][T] = vn));
13067          }
13068        }
13069      }
13070    }
13071    for (var A = 0; A < S; A++) {
13072      var M = _[A], I = M.targetName;
13073      I ? I === "shape" && C(M, x) : !a && C(M, b);
13074    }
13075    for (var L in b) {
13076      var P = {};
13077      zT(P, r), z(P, b[L]);
13078      var R = kT(P), E = b[L][T];
13079      w[L] = R ? { transform: R } : {}, cV(w[L], P), E && (w[L][T] = E);
13080    }
13081    var O, k = true;
13082    for (var L in x) {
13083      w[L] = w[L] || {};
13084      var B = !O, E = x[L][T];
13085      B && (O = new ta());
13086      var F = O.len();
13087      O.reset(), w[L].d = vV(r, x[L], O);
13088      var H = O.len();
13089      if (!B && F !== H) {
13090        k = false;
13091        break;
13092      }
13093      E && (w[L][T] = E);
13094    }
13095    if (!k) for (var L in w) delete w[L].d;
13096    if (!a) for (var A = 0; A < S; A++) {
13097      var M = _[A], I = M.targetName;
13098      I === "style" && C(M, w, function(q) {
13099        return pV[q];
13100      });
13101    }
13102    for (var U = _t(w), K = true, J, A = 1; A < U.length; A++) {
13103      var nt = U[A - 1], It = U[A];
13104      if (w[nt][Bn] !== w[It][Bn]) {
13105        K = false;
13106        break;
13107      }
13108      J = w[nt][Bn];
13109    }
13110    if (K && J) {
13111      for (var L in w) w[L][Bn] && delete w[L][Bn];
13112      e[Bn] = J;
13113    }
13114    if (Ct(U, function(ct) {
13115      return _t(w[ct]).length > 0;
13116    }).length) {
13117      var Yt = eM(w, t);
13118      return Yt + " " + m[0] + " both";
13119    }
13120  }
13121  for (var g in l) {
13122    var s = d(l[g]);
13123    s && o.push(s);
13124  }
13125  if (o.length) {
13126    var y = t.zrId + "-cls-" + tM();
13127    t.cssNodes["." + y] = { animation: o.join(",") }, e.class = y;
13128  }
13129}
13130function gV(r, e, t) {
13131  if (!r.ignore) if (r.isSilent()) {
13132    var a = { "pointer-events": "none" };
13133    G1(a, e, t);
13134  } else {
13135    var n = r.states.emphasis && r.states.emphasis.style ? r.states.emphasis.style : {}, i = n.fill;
13136    if (!i) {
13137      var o = r.style && r.style.fill, s = r.states.select && r.states.select.style && r.states.select.style.fill, l = r.currentStates.indexOf("select") >= 0 && s || o;
13138      l && (i = Df(l));
13139    }
13140    var u = n.lineWidth;
13141    if (u) {
13142      var f = !n.strokeNoScale && r.transform ? r.transform[0] : 1;
13143      u = u / f;
13144    }
13145    var a = { cursor: "pointer" };
13146    i && (a.fill = i), n.stroke && (a.stroke = n.stroke), u && (a["stroke-width"] = u), G1(a, e, t);
13147  }
13148}
13149function G1(r, e, t, a) {
13150  var n = JSON.stringify(r), i = t.cssStyleCache[n];
13151  i || (i = t.zrId + "-cls-" + tM(), t.cssStyleCache[n] = i, t.cssNodes["." + i + ":hover"] = r), e.class = e.class ? e.class + " " + i : i;
13152}
13153var yl = Math.round;
13154function rM(r) {
13155  return r && Y(r.src);
13156}
13157function aM(r) {
13158  return r && j(r.toDataURL);
13159}
13160function Zy(r, e, t, a) {
13161  iV(function(n, i) {
13162    var o = n === "fill" || n === "stroke";
13163    o && RT(i) ? iM(e, r, n, a) : o && Vg(i) ? oM(t, r, n, a) : r[n] = i, o && a.ssr && i === "
13163none" && (r["pointer-events"] = "visible");
13164  }, e, t, false), wV(t, r, a);
13165}
13166function qy(r, e) {
13167  var t = FT(e);
13168  t && (t.each(function(a, n) {
13169    a != null && (r[(N1 + n).toLowerCase()] = a + "");
13170  }), e.isSilent() && (r[N1 + "silent"] = "true"));
13171}
13172function F1(r) {
13173  return Ha(r[0] - 1) && Ha(r[1]) && Ha(r[2]) && Ha(r[3] - 1);
13174}
13175function yV(r) {
13176  return Ha(r[4]) && Ha(r[5]);
13177}
13178function Ky(r, e, t) {
13179  if (e && !(yV(e) && F1(e))) {
13180    var a = 1e4;
13181    r.transform = F1(e) ? "translate(" + yl(e[4] * a) / a + " " + yl(e[5] * a) / a + ")" : bP(e);
13182  }
13183}
13184function H1(r, e, t) {
13185  for (var a = r.points, n = [], i = 0; i < a.length; i++) n.push(yl(a[i][0] * t) / t), n.push(yl(a[i][1] * t) / t);
13186  e.points = n.join(" ");
13187}
13188function W1(r) {
13189  return !r.smooth;
13190}
13191function mV(r) {
13192  var e = G(r, function(t) {
13193    return typeof t == "string" ? [t, t] : t;
13194  });
13195  return function(t, a, n) {
13196    for (var i = 0; i < e.length; i++) {
13197      var o = e[i], s = t[o[0]];
13198      s != null && (a[o[1]] = yl(s * n) / n);
13199    }
13200  };
13201}
13202var _V = { circle: [mV(["cx", "cy", "r"])], polyline: [H1, W1], polygon: [H1, W1] };
13203function SV(r) {
13204  for (var e = r.animators, t = 0; t < e.length; t++) if (e[t].targetName === "shape") return true;
13205  return false;
13206}
13207function nM(r, e) {
13208  var t = r.style, a = r.shape, n = _V[r.type], i = {}, o = e.animation, s = "path", l = r.style.strokePercent, u = e.compress && ET(r) || 4;
13209  if (n && !e.willUpdate && !(n[1] && !n[1](a)) && !(o && SV(r)) && !(l < 1)) {
13210    s = r.type;
13211    var f = Math.pow(10, u);
13212    n[0](a, i, f);
13213  } else {
13214    var h = !r.path || r.shapeChanged();
13215    r.path || r.createPathProxy();
13216    var v = r.path;
13217    h && (v.beginPath(), r.buildPath(v, r.shape), r.pathUpdated());
13218    var c = v.getVersion(), p = r, d = p.__svgPathBuilder;
13219    (p.__svgPathVersion !== c || !d || l !== p.__svgPathStrokePercent) && (d || (d = p.__svgPathBuilder = new KD()), d.reset(u), v.rebuildPath(d, l), d.generateStr(), p.__svgPathVersion = c, p.__svgPathStrokePercent = l), i.d = d.getStr();
13220  }
13221  return Ky(i, r.transform), Zy(i, t, r, e), qy(i, r), e.animation && tv(r, i, e), e.emphasis && gV(r, i, e), ie(s, r.id + "", i);
13222}
13223function xV(r, e) {
13224  var t = r.style, a = t.image;
13225  if (a && !Y(a) && (rM(a) ? a = a.src : aM(a) && (a = a.toDataURL())), !!a) {
13226    var n = t.x || 0, i = t.y || 0, o = t.width, s = t.height, l = { href: a, width: o, height: s };
13227    return n && (l.x = n), i && (l.y = i), Ky(l, r.transform), Zy(l, t, r, e), qy(l, r), e.animation && tv(r, l, e), ie("image", r.id + "", l);
13228  }
13229}
13230function bV(r, e) {
13231  var t = r.style, a = t.text;
13232  if (a != null && (a += ""), !(!a || isNaN(t.x) || isNaN(t.y))) {
13233    var n = t.font || tn, i = t.x || 0, o = TP(t.y || 0, Ah(n), t.textBaseline), s = wP[t.textAlign] || t.textAlign, l = { "dominant-baseline": "central", "text-anchor": s };
13234    if (vC(t)) {
13235      var u = "", f = t.fontStyle, h = hC(t.fontSize);
13236      if (!parseFloat(h)) return;
13237      var v = t.fontFamily || aT, c = t.fontWeight;
13238      u += "font-size:" + h + ";font-family:" + v + ";", f && f !== "normal" && (u += "font-style:" + f + ";"), c && c !== "normal" && (u += "font-weight:" + c + ";"), l.style = u;
13239    } else l.style = "font: " + n;
13240    return a.match(/\s/) && (l["xml:space"] = "preserve"), i && (l.x = i), o && (l.y = o), Ky(l, r.transform), Zy(l, t, r, e), qy(l, r), e.animation && tv(r, l, e), ie("text", r.id + "", l, void 0, a);
13241  }
13242}
13243function U1(r, e) {
13244  if (r instanceof mt) return nM(r, e);
13245  if (r instanceof ue) return xV(r, e);
13246  if (r instanceof mo) return bV(r, e);
13247}
13248function wV(r, e, t) {
13249  var a = r.style;
13250  if (CP(a)) {
13251    var n = AP(r), i = t.shadowCache, o = i[n];
13252    if (!o) {
13253      var s = r.getGlobalScale(), l = s[0], u = s[1];
13254      if (!l || !u) return;
13255      var f = a.shadowOffsetX || 0, h = a.shadowOffsetY || 0, v = a.shadowBlur, c = il(a.shadowColor), p = c.opacity, d = c.color, g = v / 2 / l, y = v / 2 / u, m = g + " " + y;
13256      o = t.zrId + "-s" + t.shadowIdx++, t.defs[o] = ie("filter", o, { id: o, x: "-100%", y: "-100%", width: "300%", height: "300%" }, [ie("feDropShadow", "", { dx: f / l, dy: h / u, stdDeviation: m, "flood-color": d, "flood-opacity": p })]), i[n] = o;
13257    }
13258    e.filter = Ch(o);
13259  }
13260}
13261function iM(r, e, t, a) {
13262  var n = r[t], i, o = { gradientUnits: n.global ? "userSpaceOnUse" : "objectBoundingBox" };
13263  if (LT(n)) i = "linearGradient", o.x1 = n.x, o.y1 = n.y, o.x2 = n.x2, o.y2 = n.y2;
13264  else if (PT(n)) i = "radialGradient", o.cx = st(n.x, 0.5), o.cy = st(n.y, 0.5), o.r = st(n.r, 0.5);
13265  else return;
13266  for (var s = n.colorStops, l = [], u = 0, f = s.length; u < f; ++u) {
13267    var h = Xp(s[u].offset) * 100 + "%", v = s[u].color, c = il(v), p = c.color, d = c.opacity, g = { offset: h };
13268    g["stop-color"] = p, d < 1 && (g["stop-opacity"] = d), l.push(ie("stop", u + "", g));
13269  }
13270  var y = ie(i, "", o, l), m = Xy(y), _ = a.gradientCache, S = _[m];
13271  S || (S = a.zrId + "-g" + a.gradientIdx++, _[m] = S, o.id = S, a.defs[S] = ie(i, S, o, l)), e[t] = Ch(S);
13272}
13273function oM(r, e, t, a) {
13274  var n = r.style[t], i = r.getBoundingRect(), o = {}, s = n.repeat, l = s === "no-repeat", u = s === "repeat-x", f = s === "repeat-y", h;
13275  if (IT(n)) {
13276    var v = n.imageWidth, c = n.imageHeight, p = void 0, d = n.image;
13277    if (Y(d) ? p = d : rM(d) ? p = d.src : aM(d) && (p = d.toDataURL()), typeof Image > "u") {
13278      var g = "Image width/height must been given explictly in svg-ssr renderer.";
13279      we(v, g), we(c, g);
13280    } else if (v == null || c == null) {
13281      var y = function(A, M) {
13282        if (A) {
13283          var I = A.elm, L = v || M.width, P = c || M.height;
13284          A.tag === "pattern" && (u ? (P = 1, L /= i.width) : f && (L = 1, P /= i.height)), A.attrs.width = L, A.attrs.height = P, I && (I.setAttribute("width", L), I.setAttribute("height", P));
13285        }
13286      }, m = Zg(p, null, r, function(A) {
13287        l || y(x, A), y(h, A);
13288      });
13289      m && m.width && m.height && (v = v || m.width, c = c || m.height);
13290    }
13291    h = ie("image", "img", { href: p, width: v, height: c }), o.width = v, o.height = c;
13292  } else n.svgElement && (h = rt(n.svgElement), o.width = n.svgWidth, o.height = n.svgHeight);
13293  if (h) {
13294    var _, S;
13295    l ? _ = S = 1 : u ? (S = 1, _ = o.width / i.width) : f ? (_ = 1, S = o.height / i.height) : o.patternUnits = "userSpaceOnUse", _ != null && !isNaN(_) && (o.width = _), S != null && !isNaN(S) && (o.height = S);
13296    var b = kT(n);
13297    b && (o.patternTransform = b);
13298    var x = ie("pattern", "", o, [h]), w = Xy(x), T = a.patternCache, C = T[w];
13299    C || (C = a.zrId + "-p" + a.patternIdx++, T[w] = C, o.id = C, x = a.defs[C] = ie("pattern", C, o, [h])), e[t] = Ch(C);
13300  }
13301}
13302function TV(r, e, t) {
13303  var a = t.clipPathCache, n = t.defs, i = a[r.id];
13304  if (!i) {
13305    i = t.zrId + "-c" + t.clipPathIdx++;
13306    var o = { id: i };
13307    a[r.id] = i, n[i] = ie("clipPath", i, o, [nM(r, t)]);
13308  }
13309  e["clip-path"] = Ch(i);
13310}
13311function Y1(r) {
13312  return document.createTextNode(r);
13313}
13314function Un(r, e, t) {
13315  r.insertBefore(e, t);
13316}
13317function $1(r, e) {
13318  r.removeChild(e);
13319}
13320function X1(r, e) {
13321  r.appendChild(e);
13322}
13323function sM(r) {
13324  return r.parentNode;
13325}
13326function lM(r) {
13327  return r.nextSibling;
13328}
13329function wc(r, e) {
13330  r.textContent = e;
13331}
13332var Z1 = 58, CV = 120, AV = ie("", "");
13333function Vd(r) {
13334  return r === void 0;
13335}
13336function Hr(r) {
13337  return r !== void 0;
13338}
13339function DV(r, e, t) {
13340  for (var a = {}, n = e; n <= t; ++n) {
13341    var i = r[n].key;
13342    i !== void 0 && (a[i] = n);
13343  }
13344  return a;
13345}
13346function Is(r, e) {
13347  var t = r.key === e.key, a = r.tag === e.tag;
13348  return a && t;
13349}
13350function ml(r) {
13351  var e, t = r.children, a = r.tag;
13352  if (Hr(a)) {
13353    var n = r.elm = QD(a);
13354    if (jy(AV, r), V(t)) for (e = 0; e < t.length; ++e) {
13355      var i = t[e];
13356      i != null && X1(n, ml(i));
13357    }
13358    else Hr(r.text) && !tt(r.text) && X1(n, Y1(r.text));
13359  } else r.elm = Y1(r.text);
13360  return r.elm;
13361}
13362function uM(r, e, t, a, n) {
13363  for (; a <= n; ++a) {
13364    var i = t[a];
13365    i != null && Un(r, ml(i), e);
13366  }
13367}
13368function Jf(r, e, t, a) {
13369  for (; t <= a; ++t) {
13370    var n = e[t];
13371    if (n != null) if (Hr(n.tag)) {
13372      var i = sM(n.elm);
13373      $1(i, n.elm);
13374    } else $1(r, n.elm);
13375  }
13376}
13377function jy(r, e) {
13378  var t, a = e.elm, n = r && r.attrs || {}, i = e.attrs || {};
13379  if (n !== i) {
13380    for (t in i) {
13381      var o = i[t], s = n[t];
13382      s !== o && (o === true ? a.setAttribute(t, "") : o === false ? a.removeAttribute(t) : t === "style" ? a.style.cssText = o : t.charCodeAt(0) !== CV ? a.setAttribute(t, o) : t === "xmlns:xlink" || t === "xmlns" ? a.setAttributeNS(oV, t, o) : t.charCodeAt(3) === Z1 ? a.setAttributeNS(sV, t, o) : t.charCodeAt(5) === Z1 ? a.setAttributeNS(JD, t, o) : a.setAttribute(t, o));
13383    }
13384    for (t in n) t in i || a.removeAttribute(t);
13385  }
13386}
13387function MV(r, e, t) {
13388  for (var a = 0, n = 0, i = e.length - 1, o = e[0], s = e[i], l = t.length - 1, u = t[0], f = t[l], h, v, c, p; a <= i && n <= l; ) o == null ? o = e[++a] : s == null ? s = e[--i] : u == null ? u = t[++n] : f == null ? f = t[--l] : Is(o, u) ? (Qi(o, u), o = e[++a], u = t[++n]) : Is(s, f) ? (Qi(s, f), s = e[--i], f = t[--l]) : Is(o, f) ? (Qi(o, f), Un(r, o.elm, lM(s.elm)), o = e[++a], f = t[--l]) : Is(s, u) ? (Qi(s, u), Un(r, s.elm, o.elm), s = e[--i], u = t[++n]) : (Vd(h) && (h = DV(e, a, i)), v = h[u.key], Vd(v) ? Un(r, ml(u), o.elm) : (c = e[v], c.tag !== u.tag ? Un(r, ml(u), o.elm) : (Qi(c, u), e[v] = void 0, Un(r, c.elm, o.elm))), u = t[++n]);
13389  (a <= i || n <= l) && (a >
13389 i ? (p = t[l + 1] == null ? null : t[l + 1].elm, uM(r, p, t, n, l)) : Jf(r, e, a, i));
13390}
13391function Qi(r, e) {
13392  var t = e.elm = r.elm, a = r.children, n = e.children;
13393  r !== e && (jy(r, e), Vd(e.text) ? Hr(a) && Hr(n) ? a !== n && MV(t, a, n) : Hr(n) ? (Hr(r.text) && wc(t, ""), uM(t, null, n, 0, n.length - 1)) : Hr(a) ? Jf(t, a, 0, a.length - 1) : Hr(r.text) && wc(t, "") : r.text !== e.text && (Hr(a) && Jf(t, a, 0, a.length - 1), wc(t, e.text)));
13394}
13395function IV(r, e) {
13396  if (Is(r, e)) Qi(r, e);
13397  else {
13398    var t = r.elm, a = sM(t);
13399    ml(e), a !== null && (Un(a, e.elm, lM(t)), Jf(a, [r], 0, 0));
13400  }
13401  return e;
13402}
13403var LV = 0, PV = function() {
13404  function r(e, t, a) {
13405    if (this.type = "svg", this.refreshHover = q1(), this.configLayer = q1(), this.storage = t, this._opts = a = z({}, a), this.root = e, this._id = "zr" + LV++, this._oldVNode = B1(a.width, a.height), e && !a.ssr) {
13406      var n = this._viewport = document.createElement("div");
13407      n.style.cssText = "position:relative;overflow:hidden";
13408      var i = this._svgDom = this._oldVNode.elm = QD("svg");
13409      jy(null, this._oldVNode), n.appendChild(i), e.appendChild(n);
13410    }
13411    this.resize(a.width, a.height);
13412  }
13413  return r.prototype.getType = function() {
13414    return this.type;
13415  }, r.prototype.getViewportRoot = function() {
13416    return this._viewport;
13417  }, r.prototype.getViewportRootOffset = function() {
13418    var e = this.getViewportRoot();
13419    if (e) return { offsetLeft: e.offsetLeft || 0, offsetTop: e.offsetTop || 0 };
13420  }, r.prototype.getSvgDom = function() {
13421    return this._svgDom;
13422  }, r.prototype.refresh = function() {
13423    if (this.root) {
13424      var e = this.renderToVNode({ willUpdate: true });
13425      e.attrs.style = "position:absolute;left:0;top:0;user-select:none", IV(this._oldVNode, e), this._oldVNode = e;
13426    }
13427  }, r.prototype.renderOneToVNode = function(e) {
13428    return U1(e, zd(this._id));
13429  }, r.prototype.renderToVNode = function(e) {
13430    e = e || {};
13431    var t = this.storage.getDisplayList(true), a = this._width, n = this._height, i = zd(this._id);
13432    i.animation = e.animation, i.willUpdate = e.willUpdate, i.compress = e.compress, i.emphasis = e.emphasis, i.ssr = this._opts.ssr;
13433    var o = [], s = this._bgVNode = RV(a, n, this._backgroundColor, i);
13434    s && o.push(s);
13435    var l = e.compress ? null : this._mainVNode = ie("g", "main", {}, []);
13436    this._paintList(t, i, l ? l.children : o), l && o.push(l);
13437    var u = G(_t(i.defs), function(v) {
13438      return i.defs[v];
13439    });
13440    if (u.length && o.push(ie("defs", "defs", {}, u)), e.animation) {
13441      var f = fV(i.cssNodes, i.cssAnims, { newline: true });
13442      if (f) {
13443        var h = ie("style", "stl", {}, [], f);
13444        o.push(h);
13445      }
13446    }
13447    return B1(a, n, o, e.useViewBox);
13448  }, r.prototype.renderToString = function(e) {
13449    return e = e || {}, Xy(this.renderToVNode({ animation: st(e.cssAnimation, true), emphasis: st(e.cssEmphasis, true), willUpdate: false, compress: true, useViewBox: st(e.useViewBox, true) }), { newline: true });
13450  }, r.prototype.setBackgroundColor = function(e) {
13451    this._backgroundColor = e;
13452  }, r.prototype.getSvgRoot = function() {
13453    return this._mainVNode && this._mainVNode.elm;
13454  }, r.prototype._paintList = function(e, t, a) {
13455    for (var n = e.length, i = [], o = 0, s, l, u = 0, f = 0; f < n; f++) {
13456      var h = e[f];
13457      if (!h.invisible) {
13458        var v = h.__clipPaths, c = v && v.length || 0, p = l && l.length || 0, d = void 0;
13459        for (d = Math.max(c - 1, p - 1); d >= 0 && !(v && l && v[d] === l[d]); d--) ;
13460        for (var g = p - 1; g > d; g--) o--, s = i[o - 1];
13461        for (var y = d + 1; y < c; y++) {
13462          var m = {};
13463          TV(v[y], m, t);
13464          var _ = ie("g", "clip-g-" + u++, m, []);
13465          (s ? s.children : a).push(_), i[o++] = _, s = _;
13466        }
13467        l = v;
13468        var S = U1(h, t);
13469        S && (s ? s.children : a).push(S);
13470      }
13471    }
13472  }, r.prototype.resize = function(e, t) {
13473    var a = this._opts, n = this.root, i = this._viewport;
13474    if (e != null && (a.width = e), t != null && (a.height = t), n && i && (i.style.display = "none", e = no(n, 0, a), t = no(n, 1, a), i.style.display = ""), this._width !== e || this._height !== t) {
13475      if (this._width = e, this._height = t, i) {
13476        var o = i.style;
13477        o.width = e + "px", o.height = t + "px";
13478      }
13479      if (Vg(this._backgroundColor)) this.refresh();
13480      else {
13481        var s = this._svgDom;
13482        s && (s.setAttribute("width", e), s.setAttribute("height", t));
13483        var l = this._bgVNode && this._bgVNode.elm;
13484        l && (l.setAttribute("width", e), l.setAttribute("height", t));
13485      }
13486    }
13487  }, r.prototype.getWidth = function() {
13488    return this._width;
13489  }, r.prototype.getHeight = function() {
13490    return this._height;
13491  }, r.prototype.dispose = function() {
13492    this.root && (this.root.innerHTML = ""), this._svgDom = this._viewport = this.storage = this._oldVNode = this._bgVNode = this._mainVNode = null;
13493  }, r.prototype.clear = function() {
13494    this._svgDom && (this._svgDom.innerHTML = null), this._oldVNode = null;
13495  }, r.prototype.toDataURL = function(e) {
13496    var t = this.renderToString(), a = "data:image/svg+xml;";
13497    return e ? (t = MP(t), t && a + "base64," + t) : a + "charset=UTF-8," + encodeURIComponent(t);
13498  }, r;
13499}();
13500function q1(r) {
13501  return function() {
13502  };
13503}
13504function RV(r, e, t, a) {
13505  var n;
13506  if (t && t !== "none") if (n = ie("rect", "bg", { width: r, height: e, x: "0", y: "0" }), RT(t)) iM({ fill: t }, n.attrs, "fill", a);
13507  else if (Vg(t)) oM({ style: { fill: t }, dirty: $t, getBoundingRect: function() {
13508    return { width: r, height: e };
13509  } }, n.attrs, "fill", a);
13510  else {
13511    var i = il(t), o = i.color, s = i.opacity;
13512    n.attrs.fill = o, s < 1 && (n.attrs["fill-opacity"] = s);
13513  }
13514  return n;
13515}
13516function EV(r) {
13517  r.registerPainter("svg", PV);
13518}
13519function K1(r, e, t) {
13520  var a = Lr.createCanvas(), n = e.getWidth(), i = e.getHeight(), o = a.style;
13521  return o && (o.position = "absolute", o.left = "0", o.top = "0", o.width = n + "px", o.height = i + "px", a.setAttribute("data-zr-dom-id", r)), a.width = n * t, a.height = i * t, a;
13522}
13523var Tc = function(r) {
13524  Ft(e, r);
13525  function e(t, a, n) {
13526    var i = r.call(this) || this;
13527    i.motionBlur = false, i.lastFrameAlpha = 0.7, i.dpr = 1, i.virtual = false, i.config = {}, i.incremental = false, i.zlevel = 0, i.maxRepaintRectCount = 5, i.__dirty = true, i.__firstTimePaint = true, i.__used = false, i.__drawIndex = 0, i.__startIndex = 0, i.__endIndex = 0, i.__prevStartIndex = null, i.__prevEndIndex = null;
13528    var o;
13529    n = n || If, typeof t == "string" ? o = K1(t, a, n) : tt(t) && (o = t, t = o.id), i.id = t, i.dom = o;
13530    var s = o.style;
13531    return s && (kg(o), o.onselectstart = function() {
13532      return false;
13533    }, s.padding = "0", s.margin = "0", s.borderWidth = "0"), i.painter = a, i.dpr = n, i;
13534  }
13535  return e.prototype.getElementCount = function() {
13536    return this.__endIndex - this.__startIndex;
13537  }, e.prototype.afterBrush = function() {
13538    this.__prevStartIndex = this.__startIndex, this.__prevEndIndex = this.__endIndex;
13539  }, e.prototype.initContext = function() {
13540    this.ctx = this.dom.getContext("2d"), this.ctx.dpr = this.dpr;
13541  }, e.prototype.setUnpainted = function() {
13542    this.__firstTimePaint = true;
13543  }, e.prototype.createBackBuffer = function() {
13544    var t = this.dpr;
13545    this.domBack = K1("back-" + this.id, this.painter, t), this.ctxBack = this.domBack.getContext("2d"), t !== 1 && this.ctxBack.scale(t, t);
13546  }, e.prototype.createRepaintRects = function(t, a, n, i) {
13547    if (this.__firstTimePaint) return this.__firstTimePaint = false, null;
13548    var o = [], s = this.maxRepaintRectCount, l = false, u = new ht(0, 0, 0, 0);
13549    function f(m) {
13550      if (!(!m.isFinite() || m.isZero())) if (o.length === 0) {
13551        var _ = new ht(0, 0, 0, 0);
13552        _.copy(m), o.push(_);
13553      } else {
13554        for (var S = false, b = 1 / 0, x = 0, w = 0; w < o.length; ++w) {
13555          var T = o[w];
13556          if (T.intersect(m)) {
13557            var C = new ht(0, 0, 0, 0);
13558            C.copy(T), C.union(m), o[w] = C, S = true;
13559            break;
13560          } else if (l) {
13561            u.copy(m), u.union(T);
13562            var A = m.width * m.height, M = T.width * T.height, I = u.width * u.height, L = I - A - M;
13563            L < b && (b = L, x = w);
13564          }
13565        }
13566        if (l && (o[x].union(m), S = true), !S) {
13567          var _ = new ht(0, 0, 0, 0);
13568          _.copy(m), o.push(_);
13569        }
13570        l || (l = o.length >= s);
13571      }
13572    }
13573    for (var h = this.__startIndex; h < this.__endIndex; ++h) {
13574      var v = t[h];
13575      if (v) {
13576        var c = v.shouldBePainted(n, i, true, true), p = v.__isRendered && (v.__dirty & Ye || !c) ? v.getPrevPaintRect() : null;
13577        p && f(p);
13578        var d = c && (v.__dirty & Ye || !v.__isRendered) ? v.getPaintRect() : null;
13579        d && f(d);
13580      }
13581    }
13582    for (var h = this.__prevStartIndex; h < this.__prevEndIndex; ++h) {
13583      var v = a[h], c = v && v.shouldBePainted(n, i, true, true);
13584      if (v && (!c || !v.__zr) && v.__isRendered) {
13585        var p = v.getPrevPaintRect();
13586        p && f(p);
13587      }
13588    }
13589    var g;
13590    do {
13591      g = false;
13592      for (var h = 0; h < o.length; ) {
13593        if (o[h].isZero()) {
13594          o.splice(h, 1);
13595          continue;
13596        }
13597        for (var y = h + 1; y < o.length; ) o[h].intersect(o[y]) ? (g = true, o[h].union(o[y]), o.splice(y, 1)) : y++;
13598        h++;
13599      }
13600    } while (g);
13601    return this._paintRects = o, o;
13602  }, e.prototype.debugGetPaintRects = function() {
13603    return (this._paintRects || []).slice();
13604  }, e.prototype.resize = function(t, a) {
13605    var n = this.dpr, i = this.dom, o = i.style, s = this.domBack;
13606    o && (o.width = t + "px", o.height = a + "px"), i.width = t * n, i.height = a * n, s && (s.width = t * n, s.height = a * n, n !== 1 && this.ctxBack.scale(n, n));
13607  }, e.prototype.clear = function(t, a, n) {
13608    var i = this.dom, o = this.ctx, s = i.width, l = i.height;
13609    a = a || this.clearColor;
13610    var u = this.motionBlur && !t, f = this.lastFrameAlpha, h = this.dpr, v = this;
13611    u && (this.domBack || this.createBackBuffer(), this.ctxBack.globalCompositeOperation = "copy", this.ctxBack.drawImage(i, 0, 0, s / h, l / h));
13612    var c = this.domBack;
13613    function p(d, g, y, m) {
13614      if (o.clearRect(d, g, y, m), a && a !== "transparent") {
13615        var _ = void 0;
13616        if (Il(a)) {
13617          var S = a.global || a.__width === y && a.__height === m;
13618          _ = S && a.__canvasGradient || Md(o, a, { x: 0, y: 0, width: y, height: m }), a.__canvasGradient = _, a.__width = y, a.__height = m;
13619        } else lT(a) && (a.scaleX = a.scaleX || h, a.scaleY = a.scaleY || h, _ = Id(o, a, { dirty: function() {
13620          v.setUnpainted(), v.painter.refresh();
13621        } }));
13622        o.save(), o.fillStyle = _ || a, o.fillRect(d, g, y, m), o.restore();
13623      }
13624      u && (o.save(), o.globalAlpha = f, o.drawImage(c, d, g, y, m), o.restore());
13625    }
13626    !n || u ? p(0, 0, s, l) : n.length && D(n, function(d) {
13627      p(d.x * h, d.y * h, d.width * h, d.height * h);
13628    });
13629  }, e;
13630}(cr), j1 = 1e5, On = 314159, Ru = 0.01, kV = 1e-3;
13631function OV(r) {
13632  return r ? r.__builtin__ ? true : !(typeof r.resize != "function" || typeof r.refresh != "function") : false;
13633}
13634function NV(r, e) {
13635  var t = document.createElement("div");
13636  return t.style.cssText = ["position:relative", "width:" + r + "px", "height:" + e + "px", "padding:0", "margin:0", "border-width:0"].join(";") + ";", t;
13637}
13638var BV = function() {
13639  function r(e, t, a, n) {
13640    this.type = "canvas", this._zlevelList = [], this._prevDisplayList = [], this._layers = {}, this._layerConfig = {}, this._needsManuallyCompositing = false, this.type = "canvas";
13641    var i = !e.nodeName || e.nodeName.toUpperCase() === "CANVAS";
13642    this._opts = a = z({}, a || {}), this.dpr = a.devicePixelRatio || If, this._singleCanvas = i, this.root = e;
13643    var o = e.style;
13644    o && (kg(e), e.innerHTML = ""), this.storage = t;
13645    var s = this._zlevelList;
13646    this._prevDisplayList = [];
13647    var l = this._layers;
13648    if (i) {
13649      var f = e, h = f.width, v = f.height;
13650      a.width != null && (h = a.width), a.height != null && (v = a.height), this.dpr = a.devicePixelRatio || 1, f.width = h * this.dpr, f.height = v * this.dpr, this._width = h, this._height = v;
13651      var c = new Tc(f, this, this.dpr);
13652      c.__builtin__ = true, c.initContext(), l[On] = c, c.zlevel = On, s.push(On), this._domRoot = e;
13653    } else {
13654      this._width = no(e, 0, a), this._height = no(e, 1, a);
13655      var u = this._domRoot = NV(this._width, this._height);
13656      e.appendChild(u);
13657    }
13658  }
13659  return r.prototype.getType = function() {
13660    return "canvas";
13661  }, r.prototype.isSingleCanvas = function() {
13662    return this._singleCanvas;
13663  }, r.prototype.getViewportRoot = function() {
13664    return this._domRoot;
13665  }, r.prototype.getViewportRootOffset = function() {
13666    var e = this.getViewportRoot();
13667    if (e) return { offsetLeft: e.offsetLeft || 0, offsetTop: e.offsetTop || 0 };
13668  }, r.prototype.refresh = function(e) {
13669    var t = this.storage.getDisplayList(true), a = this._prevDisplayList, n = this._zlevelList;
13670    this._redrawId = Math.random(), this._paintList(t, a, e, this._redrawId);
13671    for (var i = 0; i < n.length; i++) {
13672      var o = n[i], s = this._layers[o];
13673      if (!s.__builtin__ && s.refresh) {
13674        var l = i === 0 ? this._backgroundColor : null;
13675        s.refresh(l);
13676      }
13677    }
13678    return this._opts.useDirtyRect && (this._prevDisplayList = t.slice()), this;
13679  }, r.prototype.refreshHover = function() {
13680    this._paintHoverList(this.storage.getDisplayList(false));
13681  }, r.prototype._paintHoverList = function(e) {
13682    var t = e.length, a = this._hoverlayer;
13683    if (a && a.clear(), !!t) {
13684      for (var n = { inHover: true, viewWidth: this._width, viewHeight: this._height }, i, o = 0; o < t; o++) {
13685        var s = e[o];
13686        s.__inHover && (a || (a = this._hoverlayer = this.getLayer(j1)), i || (i = a.ctx, i.save()), Qn(i, s, n, o === t - 1));
13687      }
13688      i && i.restore();
13689    }
13690  }, r.prototype.getHoverLayer = function() {
13691    return this.getLayer(j1);
13692  }, r.prototype.paintOne = function(e, t) {
13693    My(e, t);
13694  }, r.prototype._paintList = function(e, t, a, n) {
13695    if (this._redrawId === n) {
13696      a = a || false, this._updateLayerStatus(e);
13697      var i = this._doPaintList(e, t, a), o = i.finished, s = i.needsRefreshHover;
13698      if (this._needsManuallyCompositing && this._compositeManually(), s && this._paintHoverList(e), o) this.eachLayer(function(u) {
13699        u.afterBrush && u.afterBrush();
13700      });
13701      else {
13702        var l = this;
13703        wf(function() {
13704          l._paintList(e, t, a, n);
13705        });
13706      }
13707    }
13708  }, r.prototype._compositeManually = function() {
13709    var e = this.getLayer(On).ctx, t = this._domRoot.width, a = this._domRoot.height;
13710    e.clearRect(0, 0, t, a), this.eachBuiltinLayer(function(n) {
13711      n.virtual && e.drawImage(n.dom, 0, 0, t, a);
13712    });
13713  }, r.prototype._doPaintList = function(e, t, a) {
13714    for (var n = this, i = [], o = this._opts.useDirtyRect, s = 0; s < this._zlevelList.length; s++) {
13715      var l = this._zlevelList[s], u = this._layers[l];
13716      u.__builtin__ && u !== this._hoverlayer && (u.__dirty || a) && i.push(u);
13717    }
13718    for (var f = true, h = false, v = function(d) {
13719      var g = i[d], y = g.ctx, m = o && g.createRepaintRects(e, t, c._width, c._height), _ = a ? g.__startIndex : g.__drawIndex, S = !a && g.incremental && Date.now, b = S && Date.now(), x = g.zlevel === c._zlevelList[0] ? c._backgroundColor : null;
13720      if (g.__startIndex === g.__endIndex) g.clear(false, x, m);
13721      else if (_ === g.__startIndex) {
13722        var w = e[_];
13723        (!w.incremental || !w.notClear || a) && g.clear(false, x, m);
13724      }
13725      _ === -1 && (console.error("For some unknown reason. drawIndex is -1"), _ = g.__startIndex);
13726      var T, C = function(L) {
13727        var P = { inHover: false, allClipped: false, prevEl: null, viewWidth: n._width, viewHeight: n._height };
13728        for (T = _; T < g.__endIndex; T++) {
13729          var R = e[T];
13730          if (R.__inHover && (h = true), n._doPaintEl(R, g, o, L, P, T === g.__endIndex - 1), S) {
13731            var E = Date.now() - b;
13732            if (E > 15) break;
13733          }
13734        }
13735        P.prevElClipPaths && y.restore();
13736      };
13737      if (m) if (m.length === 0) T = g.__endIndex;
13738      else for (var A = c.dpr, M = 0; M < m.length; ++M) {
13739        var I = m[M];
13740        y.save(), y.beginPath(), y.rect(I.x * A, I.y * A, I.width * A, I.height * A), y.clip(), C(I), y.restore();
13741      }
13742      else y.save(), C(), y.restore();
13743      g.__drawIndex = T, g.__drawIndex < g.__endIndex && (f = false);
13744    }, c = this, p = 0; p < i.length; p++) v(p);
13745    return yt.wxa && D(this._layers, function(d) {
13746      d && d.ctx && d.ctx.draw && d.ctx.draw();
13747    }), { finished: f, needsRefreshHover: h };
13748  }, r.prototype._doPaintEl = function(e, t, a, n, i, o) {
13749    var s = t.ctx;
13750    if (a) {
13751      var l = e.getPaintRect();
13752      (!n || l && l.intersect(n)) && (Qn(s, e, i, o), e.setPrevPaintRect(l));
13753    } else Qn(s, e, i, o);
13754  }, r.prototype.getLayer = function(e, t) {
13755    this._singleCanvas && !this._needsManuallyCompositing && (e = On);
13756    var a = this._layers[e];
13757    return a || (a = new Tc("zr_" + e, this, this.dpr), a.zlevel = e, a.__builtin__ = true, this._layerConfig[e] ? ut(a, this._layerConfig[e], true) : this._layerConfig[e - Ru] && ut(a, this._layerConfig[e - Ru], true), t && (a.virtual = t), this.insertLayer(e, a), a.initContext()), a;
13758  }, r.prototype.insertLayer = function(e, t) {
13759    var a = this._layers, n = this._zlevelList, i = n.length, o = this._domRoot, s = null, l = -1;
13760    if (!a[e] && OV(t)) {
13761      if (i > 0 && e > n[0]) {
13762        for (l = 0; l < i - 1 && !(n[l] < e && n[l + 1] > e); l++) ;
13763        s = a[n[l]];
13764      }
13765      if (n.splice(l + 1, 0, e), a[e] = t, !t.virtual) if (s) {
13766        var u = s.dom;
13767        u.nextSibling ? o.insertBefore(t.dom, u.nextSibling) : o.appendChild(t.dom);
13768      } else o.firstChild ? o.insertBefore(t.dom, o.firstChild) : o.appendChild(t.dom);
13769      t.painter || (t.painter = this);
13770    }
13771  }, r.prototype.eachLayer = function(e, t) {
13772    for (var a = this._zlevelList, n = 0; n < a.length; n++) {
13773      var i = a[n];
13774      e.call(t, this._layers[i], i);
13775    }
13776  }, r.prototype.eachBuiltinLayer = function(e, t) {
13777    for (var a = this._zlevelList, n = 0; n < a.length; n++) {
13778      var i = a[n], o = this._layers[i];
13779      o.__builtin__ && e.call(t, o, i);
13780    }
13781  }, r.prototype.eachOtherLayer = function(e, t) {
13782    for (var a = this._zlevelList, n = 0; n < a.length; n++) {
13783      var i = a[n], o = this._layers[i];
13784      o.__builtin__ || e.call(t, o, i);
13785    }
13786  }, r.prototype.getLayers = function() {
13787    return this._layers;
13788  }, r.prototype._updateLayerStatus = function(e) {
13789    this.eachBuiltinLayer(function(h, v) {
13790      h.__dirty = h.__used = false;
13791    });
13792    function t(h) {
13793      i && (i.__endIndex !== h && (i.__dirty = true), i.__endIndex = h);
13794    }
13795    if (this._singleCanvas) for (var a = 1; a < e.length; a++) {
13796      var n = e[a];
13797      if (n.zlevel !== e[a - 1].zlevel || n.incremental) {
13798        this._needsManuallyCompositing = true;
13799        break;
13800      }
13801    }
13802    var i = null, o = 0, s, l;
13803    for (l = 0; l < e.length; l++) {
13804      var n = e[l], u = n.zlevel, f = void 0;
13805      s !== u && (s = u, o = 0), n.incremental ? (f = this.getLayer(u + kV, this._needsManuallyCompositing), f.incremental = true, o = 1) : f = this.getLayer(u + (o > 0 ? Ru : 0), this._needsManuallyCompositing), f.__builtin__ || _h("ZLevel " + u + " has been used by unkown layer " + f.id), f !== i && (f.__used = true, f.__startIndex !== l && (f.__dirty = true), f.__startIndex = l, f.incremental ? f.__drawIndex = -1 : f.__drawIndex = l, t(l), i = f), n.__dirty & Ye && !n.__inHover && (f.__dirty = true, f.incremental && f.__drawIndex < 0 && (f.__drawIndex = l));
13806    }
13807    t(l), this.eachBuiltinLayer(function(h, v) {
13808      !h.__used && h.getElementCount() > 0 && (h.__dirty = true, h.__startIndex = h.__endIndex = h.__drawIndex = 0), h.__dirty && h.__drawIndex < 0 && (h.__drawIndex = h.__startIndex);
13809    });
13810  }, r.prototype.clear = function() {
13811    return this.eachBuiltinLayer(this._clearLayer), this;
13812  }, r.prototype._clearLayer = function(e) {
13813    e.clear();
13814  }, r.prototype.setBackgroundColor = function(e) {
13815    this._backgroundColor = e, D(this._layers, function(t) {
13816      t.setUnpainted();
13817    });
13818  }, r.prototype.configLayer = function(e, t) {
13819    if (t) {
13820      var a = this._layerConfig;
13821      a[e] ? ut(a[e], t, true) : a[e] = t;
13822      for (var n = 0; n < this._zlevelList.length; n++) {
13823        var i = this._zlevelList[n];
13824        if (i === e || i === e + Ru) {
13825          var o = this._layers[i];
13826          ut(o, a[e], true);
13827        }
13828      }
13829    }
13830  }, r.prototype.delLayer = function(e) {
13831    var t = this._layers, a = this._zlevelList, n = t[e];
13832    n && (n.dom.parentNode.removeChild(n.dom), delete t[e], a.splice(vt(a, e), 1));
13833  }, r.prototype.resize = function(e, t) {
13834    if (this._domRoot.style) {
13835      var a = this._domRoot;
13836      a.style.display = "none";
13837      var n = this._opts, i = this.root;
13838      if (e != null && (n.width = e), t != null && (n.height = t), e = no(i, 0, n), t = no(i, 1, n), a.style.display = "", this._width !== e || t !== this._height) {
13839        a.style.width = e + "px", a.style.height = t + "px";
13840        for (var o in this._layers) this._layers.hasOwnProperty(o) && this._layers[o].resize(e, t);
13841        this.refresh(true);
13842      }
13843      this._width = e, this._height = t;
13844    } else {
13845      if (e == null || t == null) return;
13846      this._width = e, this._height = t, this.getLayer(On).resize(e, t);
13847    }
13848    return this;
13849  }, r.prototype.clearLayer = function(e) {
13850    var t = this._layers[e];
13851    t && t.clear();
13852  }, r.prototype.dispose = function() {
13853    this.root.innerHTML = "", this.root = this.storage = this._domRoot = this._layers = null;
13854  }, r.prototype.getRenderedCanvas = function(e) {
13855    if (e = e || {}, this._singleCanvas && !this._compositeManually) return this._layers[On].dom;
13856    var t = new Tc("image", this, e.pixelRatio || this.dpr);
13857    t.initContext(), t.clear(false, e.backgroundColor || this._backgroundColor);
13858    var a = t.ctx;
13859    if (e.pixelRatio <= this.dpr) {
13860      this.refresh();
13861      var n = t.dom.width, i = t.dom.height;
13862      this.eachLayer(function(h) {
13863        h.__builtin__ ? a.drawImage(h.dom, 0, 0, n, i) : h.renderToCanvas && (a.save(), h.renderToCanvas(a), a.restore());
13864      });
13865    } else for (var o = { inHover: false, viewWidth: this._width, viewHeight: this._height }, s = this.storage.getDisplayList(true), l = 0, u = s.length; l < u; l++) {
13866      var f = s[l];
13867      Qn(a, f, o, l === u - 1);
13868    }
13869    return t.dom;
13870  }, r.prototype.getWidth = function() {
13871    return this._width;
13872  }, r.prototype.getHeight = function() {
13873    return this._height;
13874  }, r;
13875}();
13876function zV(r) {
13877  r.registerPainter("canvas", BV);
13878}
13879var VV = function(r) {
13880  N(e, r);
13881  function e() {
13882    var t = r !== null && r.apply(this, arguments) || this;
13883    return t.type = e.type, t.hasSymbolVisual = true, t;
13884  }
13885  return e.prototype.getInitialData = function(t) {
13886    return aa(null, this, { useEncodeDefaulter: true });
13887  }, e.prototype.getLegendIcon = function(t) {
13888    var a = new at(), n = qt("line", 0, t.itemHeight / 2, t.itemWidth, 0, t.lineStyle.stroke, false);
13889    a.add(n), n.setStyle(t.lineStyle);
13890    var i = this.getData().getVisual("symbol"), o = this.getData().getVisual("symbolRotate"), s = i === "none" ? "circle" : i, l = t.itemHeight * 0.8, u = qt(s, (t.itemWidth - l) / 2, (t.itemHeight - l) / 2, l, l, t.itemStyle.fill);
13891    a.add(u), u.setStyle(t.itemStyle);
13892    var f = t.iconRotate === "inherit" ? o : t.iconRotate || 0;
13893    return u.rotation = f * Math.PI / 180, u.setOrigin([t.itemWidth / 2, t.itemHeight / 2]), s.indexOf("empty") > -1 && (u.style.stroke = u.style.fill, u.style.fill = "#fff", u.style.lineWidth = 2), a;
13894  }, e.type = "series.line", e.dependencies = ["grid", "polar"], e.defaultOption = { z: 3, coordinateSystem: "cartesian2d", legendHoverLink: true, clip: true, label: { position: "top" }, endLabel: { show: false, valueAnimation: true, distance: 8 }, lineStyle: { width: 2, type: "solid" }, emphasis: { scale: true }
13894, step: false, smooth: false, smoothMonotone: null, symbol: "emptyCircle", symbolSize: 4, symbolRotate: null, showSymbol: true, showAllSymbol: "auto", connectNulls: false, sampling: "none", animationEasing: "linear", progressive: 0, hoverLayerThreshold: 1 / 0, universalTransition: { divideShape: "clone" }, triggerLineEvent: false }, e;
13895}(Et);
13896function bo(r, e) {
13897  var t = r.mapDimensionsAll("defaultedLabel"), a = t.length;
13898  if (a === 1) {
13899    var n = So(r, e, t[0]);
13900    return n != null ? n + "" : null;
13901  } else if (a) {
13902    for (var i = [], o = 0; o < t.length; o++) i.push(So(r, e, t[o]));
13903    return i.join(" ");
13904  }
13905}
13906function fM(r, e) {
13907  var t = r.mapDimensionsAll("defaultedLabel");
13908  if (!V(e)) return e + "";
13909  for (var a = [], n = 0; n < t.length; n++) {
13910    var i = r.getDimensionIndex(t[n]);
13911    i >= 0 && a.push(e[i]);
13912  }
13913  return a.join(" ");
13914}
13915var Wl = function(r) {
13916  N(e, r);
13917  function e(t, a, n, i) {
13918    var o = r.call(this) || this;
13919    return o.updateData(t, a, n, i), o;
13920  }
13921  return e.prototype._createSymbol = function(t, a, n, i, o) {
13922    this.removeAll();
13923    var s = qt(t, -1, -1, 2, 2, null, o);
13924    s.attr({ z2: 100, culling: true, scaleX: i[0] / 2, scaleY: i[1] / 2 }), s.drift = GV, this._symbolType = t, this.add(s);
13925  }, e.prototype.stopSymbolAnimation = function(t) {
13926    this.childAt(0).stopAnimation(null, t);
13927  }, e.prototype.getSymbolType = function() {
13928    return this._symbolType;
13929  }, e.prototype.getSymbolPath = function() {
13930    return this.childAt(0);
13931  }, e.prototype.highlight = function() {
13932    ma(this.childAt(0));
13933  }, e.prototype.downplay = function() {
13934    _a(this.childAt(0));
13935  }, e.prototype.setZ = function(t, a) {
13936    var n = this.childAt(0);
13937    n.zlevel = t, n.z = a;
13938  }, e.prototype.setDraggable = function(t, a) {
13939    var n = this.childAt(0);
13940    n.draggable = t, n.cursor = !a && t ? "move" : n.cursor;
13941  }, e.prototype.updateData = function(t, a, n, i) {
13942    this.silent = false;
13943    var o = t.getItemVisual(a, "symbol") || "circle", s = t.hostModel, l = e.getSymbolSize(t, a), u = o !== this._symbolType, f = i && i.disableAnimation;
13944    if (u) {
13945      var h = t.getItemVisual(a, "symbolKeepAspect");
13946      this._createSymbol(o, t, a, l, h);
13947    } else {
13948      var v = this.childAt(0);
13949      v.silent = false;
13950      var c = { scaleX: l[0] / 2, scaleY: l[1] / 2 };
13951      f ? v.attr(c) : Tt(v, c, s, a), Er(v);
13952    }
13953    if (this._updateCommon(t, a, l, n, i), u) {
13954      var v = this.childAt(0);
13955      if (!f) {
13956        var c = { scaleX: this._sizeX, scaleY: this._sizeY, style: { opacity: v.style.opacity } };
13957        v.scaleX = v.scaleY = 0, v.style.opacity = 0, Gt(v, c, s, a);
13958      }
13959    }
13960    f && this.childAt(0).stopAnimation("leave");
13961  }, e.prototype._updateCommon = function(t, a, n, i, o) {
13962    var s = this.childAt(0), l = t.hostModel, u, f, h, v, c, p, d, g, y;
13963    if (i && (u = i.emphasisItemStyle, f = i.blurItemStyle, h = i.selectItemStyle, v = i.focus, c = i.blurScope, d = i.labelStatesModels, g = i.hoverScale, y = i.cursorStyle, p = i.emphasisDisabled), !i || t.hasItemOption) {
13964      var m = i && i.itemModel ? i.itemModel : t.getItemModel(a), _ = m.getModel("emphasis");
13965      u = _.getModel("itemStyle").getItemStyle(), h = m.getModel(["select", "itemStyle"]).getItemStyle(), f = m.getModel(["blur", "itemStyle"]).getItemStyle(), v = _.get("focus"), c = _.get("blurScope"), p = _.get("disabled"), d = se(m), g = _.getShallow("scale"), y = m.getShallow("cursor");
13966    }
13967    var S = t.getItemVisual(a, "symbolRotate");
13968    s.attr("rotation", (S || 0) * Math.PI / 180 || 0);
13969    var b = wi(t.getItemVisual(a, "symbolOffset"), n);
13970    b && (s.x = b[0], s.y = b[1]), y && s.attr("cursor", y);
13971    var x = t.getItemVisual(a, "style"), w = x.fill;
13972    if (s instanceof ue) {
13973      var T = s.style;
13974      s.useStyle(z({ image: T.image, x: T.x, y: T.y, width: T.width, height: T.height }, x));
13975    } else s.__isEmptyBrush ? s.useStyle(z({}, x)) : s.useStyle(x), s.style.decal = null, s.setColor(w, o && o.symbolInnerColor), s.style.strokeNoScale = true;
13976    var C = t.getItemVisual(a, "liftZ"), A = this._z2;
13977    C != null ? A == null && (this._z2 = s.z2, s.z2 += C) : A != null && (s.z2 = A, this._z2 = null);
13978    var M = o && o.useNameLabel;
13979    de(s, d, { labelFetcher: l, labelDataIndex: a, defaultText: I, inheritColor: w, defaultOpacity: x.opacity });
13980    function I(R) {
13981      return M ? t.getName(R) : bo(t, R);
13982    }
13983    this._sizeX = n[0] / 2, this._sizeY = n[1] / 2;
13984    var L = s.ensureState("emphasis");
13985    L.style = u, s.ensureState("select").style = h, s.ensureState("blur").style = f;
13986    var P = g == null || g === true ? Math.max(1.1, 3 / this._sizeY) : isFinite(g) && g > 0 ? +g : 1;
13987    L.scaleX = this._sizeX * P, L.scaleY = this._sizeY * P, this.setSymbolScale(1), Wt(this, v, c, p);
13988  }, e.prototype.setSymbolScale = function(t) {
13989    this.scaleX = this.scaleY = t;
13990  }, e.prototype.fadeOut = function(t, a, n) {
13991    var i = this.childAt(0), o = it(this).dataIndex, s = n && n.animation;
13992    if (this.silent = i.silent = true, n && n.fadeLabel) {
13993      var l = i.getTextContent();
13994      l && rn(l, { style: { opacity: 0 } }, a, { dataIndex: o, removeOpt: s, cb: function() {
13995        i.removeTextContent();
13996      } });
13997    } else i.removeTextContent();
13998    rn(i, { style: { opacity: 0 }, scaleX: 0, scaleY: 0 }, a, { dataIndex: o, cb: t, removeOpt: s });
13999  }, e.getSymbolSize = function(t, a) {
14000    return Ho(t.getItemVisual(a, "symbolSize"));
14001  }, e;
14002}(at);
14003function GV(r, e) {
14004  this.parent.drift(r, e);
14005}
14006function Cc(r, e, t, a) {
14007  return e && !isNaN(e[0]) && !isNaN(e[1]) && !(a.isIgnore && a.isIgnore(t)) && !(a.clipShape && !a.clipShape.contain(e[0], e[1])) && r.getItemVisual(t, "symbol") !== "none";
14008}
14009function J1(r) {
14010  return r != null && !tt(r) && (r = { isIgnore: r }), r || {};
14011}
14012function Q1(r) {
14013  var e = r.hostModel, t = e.getModel("emphasis");
14014  return { emphasisItemStyle: t.getModel("itemStyle").getItemStyle(), blurItemStyle: e.getModel(["blur", "itemStyle"]).getItemStyle(), selectItemStyle: e.getModel(["select", "itemStyle"]).getItemStyle(), focus: t.get("focus"), blurScope: t.get("blurScope"), emphasisDisabled: t.get("disabled"), hoverScale: t.get("scale"), labelStatesModels: se(e), cursorStyle: e.get("cursor") };
14015}
14016var Ul = function() {
14017  function r(e) {
14018    this.group = new at(), this._SymbolCtor = e || Wl;
14019  }
14020  return r.prototype.updateData = function(e, t) {
14021    this._progressiveEls = null, t = J1(t);
14022    var a = this.group, n = e.hostModel, i = this._data, o = this._SymbolCtor, s = t.disableAnimation, l = Q1(e), u = { disableAnimation: s }, f = t.getSymbolPoint || function(h) {
14023      return e.getItemLayout(h);
14024    };
14025    i || a.removeAll(), e.diff(i).add(function(h) {
14026      var v = f(h);
14027      if (Cc(e, v, h, t)) {
14028        var c = new o(e, h, l, u);
14029        c.setPosition(v), e.setItemGraphicEl(h, c), a.add(c);
14030      }
14031    }).update(function(h, v) {
14032      var c = i.getItemGraphicEl(v), p = f(h);
14033      if (!Cc(e, p, h, t)) {
14034        a.remove(c);
14035        return;
14036      }
14037      var d = e.getItemVisual(h, "symbol") || "circle", g = c && c.getSymbolType && c.getSymbolType();
14038      if (!c || g && g !== d) a.remove(c), c = new o(e, h, l, u), c.setPosition(p);
14039      else {
14040        c.updateData(e, h, l, u);
14041        var y = { x: p[0], y: p[1] };
14042        s ? c.attr(y) : Tt(c, y, n);
14043      }
14044      a.add(c), e.setItemGraphicEl(h, c);
14045    }).remove(function(h) {
14046      var v = i.getItemGraphicEl(h);
14047      v && v.fadeOut(function() {
14048        a.remove(v);
14049      }, n);
14050    }).execute(), this._getSymbolPoint = f, this._data = e;
14051  }, r.prototype.updateLayout = function() {
14052    var e = this, t = this._data;
14053    t && t.eachItemGraphicEl(function(a, n) {
14054      var i = e._getSymbolPoint(n);
14055      a.setPosition(i), a.markRedraw();
14056    });
14057  }, r.prototype.incrementalPrepareUpdate = function(e) {
14058    this._seriesScope = Q1(e), this._data = null, this.group.removeAll();
14059  }, r.prototype.incrementalUpdate = function(e, t, a) {
14060    this._progressiveEls = [], a = J1(a);
14061    function n(l) {
14062      l.isGroup || (l.incremental = true, l.ensureState("emphasis").hoverLayer = true);
14063    }
14064    for (var i = e.start; i < e.end; i++) {
14065      var o = t.getItemLayout(i);
14066      if (Cc(t, o, i, a)) {
14067        var s = new this._SymbolCtor(t, i, this._seriesScope);
14068        s.traverse(n), s.setPosition(o), this.group.add(s), t.setItemGraphicEl(i, s), this._progressiveEls.push(s);
14069      }
14070    }
14071  }, r.prototype.eachRendered = function(e) {
14072    un(this._progressiveEls || this.group, e);
14073  }, r.prototype.remove = function(e) {
14074    var t = this.group, a = this._data;
14075    a && e ? a.eachItemGraphicEl(function(n) {
14076      n.fadeOut(function() {
14077        t.remove(n);
14078      }, a.hostModel);
14079    }) : t.removeAll();
14080  }, r;
14081}();
14082function hM(r, e, t) {
14083  var a = r.getBaseAxis(), n = r.getOtherAxis(a), i = FV(n, t), o = a.dim, s = n.dim, l = e.mapDimension(s), u = e.mapDimension(o), f = s === "x" || s === "radius" ? 1 : 0, h = G(r.dimensions, function(p) {
14084    return e.mapDimension(p);
14085  }), v = false, c = e.getCalculationInfo("stackResultDimension");
14086  return xa(e, h[0]) && (v = true, h[0] = c), xa(e, h[1]) && (v = true, h[1] = c), { dataDimsForPoint: h, valueStart: i, valueAxisDim: s, baseAxisDim: o, stacked: !!v, valueDim: l, baseDim: u, baseDataOffset: f, stackedOverDimension: e.getCalculationInfo("stackedOverDimension") };
14087}
14088function FV(r, e) {
14089  var t = 0, a = r.scale.getExtent();
14090  return e === "start" ? t = a[0] : e === "end" ? t = a[1] : wt(e) && !isNaN(e) ? t = e : a[0] > 0 ? t = a[0] : a[1] < 0 && (t = a[1]), t;
14091}
14092function vM(r, e, t, a) {
14093  var n = NaN;
14094  r.stacked && (n = t.get(t.getCalculationInfo("stackedOverDimension"), a)), isNaN(n) && (n = r.valueStart);
14095  var i = r.baseDataOffset, o = [];
14096  return o[i] = t.get(r.baseDim, a), o[1 - i] = n, e.dataToPoint(o);
14097}
14098function HV(r, e) {
14099  var t = [];
14100  return e.diff(r).add(function(a) {
14101    t.push({ cmd: "+", idx: a });
14102  }).update(function(a, n) {
14103    t.push({ cmd: "=", idx: n, idx1: a });
14104  }).remove(function(a) {
14105    t.push({ cmd: "-", idx: a });
14106  }).execute(), t;
14107}
14108function WV(r, e, t, a, n, i, o, s) {
14109  for (var l = HV(r, e), u = [], f = [], h = [], v = [], c = [], p 
14109= [], d = [], g = hM(n, e, o), y = r.getLayout("points") || [], m = e.getLayout("points") || [], _ = 0; _ < l.length; _++) {
14110    var S = l[_], b = true, x = void 0, w = void 0;
14111    switch (S.cmd) {
14112      case "=":
14113        x = S.idx * 2, w = S.idx1 * 2;
14114        var T = y[x], C = y[x + 1], A = m[w], M = m[w + 1];
14115        (isNaN(T) || isNaN(C)) && (T = A, C = M), u.push(T, C), f.push(A, M), h.push(t[x], t[x + 1]), v.push(a[w], a[w + 1]), d.push(e.getRawIndex(S.idx1));
14116        break;
14117      case "+":
14118        var I = S.idx, L = g.dataDimsForPoint, P = n.dataToPoint([e.get(L[0], I), e.get(L[1], I)]);
14119        w = I * 2, u.push(P[0], P[1]), f.push(m[w], m[w + 1]);
14120        var R = vM(g, n, e, I);
14121        h.push(R[0], R[1]), v.push(a[w], a[w + 1]), d.push(e.getRawIndex(I));
14122        break;
14123      case "-":
14124        b = false;
14125    }
14126    b && (c.push(S), p.push(p.length));
14127  }
14128  p.sort(function(nt, It) {
14129    return d[nt] - d[It];
14130  });
14131  for (var E = u.length, O = $r(E), k = $r(E), B = $r(E), F = $r(E), H = [], _ = 0; _ < p.length; _++) {
14132    var U = p[_], K = _ * 2, J = U * 2;
14133    O[K] = u[J], O[K + 1] = u[J + 1], k[K] = f[J], k[K + 1] = f[J + 1], B[K] = h[J], B[K + 1] = h[J + 1], F[K] = v[J], F[K + 1] = v[J + 1], H[_] = c[U];
14134  }
14135  return { current: O, next: k, stackedOnCurrent: B, stackedOnNext: F, status: H };
14136}
14137var Ra = Math.min, Ea = Math.max;
14138function oi(r, e) {
14139  return isNaN(r) || isNaN(e);
14140}
14141function Gd(r, e, t, a, n, i, o, s, l) {
14142  for (var u, f, h, v, c, p, d = t, g = 0; g < a; g++) {
14143    var y = e[d * 2], m = e[d * 2 + 1];
14144    if (d >= n || d < 0) break;
14145    if (oi(y, m)) {
14146      if (l) {
14147        d += i;
14148        continue;
14149      }
14150      break;
14151    }
14152    if (d === t) r[i > 0 ? "moveTo" : "lineTo"](y, m), h = y, v = m;
14153    else {
14154      var _ = y - u, S = m - f;
14155      if (_ * _ + S * S < 0.5) {
14156        d += i;
14157        continue;
14158      }
14159      if (o > 0) {
14160        for (var b = d + i, x = e[b * 2], w = e[b * 2 + 1]; x === y && w === m && g < a; ) g++, b += i, d += i, x = e[b * 2], w = e[b * 2 + 1], y = e[d * 2], m = e[d * 2 + 1], _ = y - u, S = m - f;
14161        var T = g + 1;
14162        if (l) for (; oi(x, w) && T < a; ) T++, b += i, x = e[b * 2], w = e[b * 2 + 1];
14163        var C = 0.5, A = 0, M = 0, I = void 0, L = void 0;
14164        if (T >= a || oi(x, w)) c = y, p = m;
14165        else {
14166          A = x - u, M = w - f;
14167          var P = y - u, R = x - y, E = m - f, O = w - m, k = void 0, B = void 0;
14168          if (s === "x") {
14169            k = Math.abs(P), B = Math.abs(R);
14170            var F = A > 0 ? 1 : -1;
14171            c = y - F * k * o, p = m, I = y + F * B * o, L = m;
14172          } else if (s === "y") {
14173            k = Math.abs(E), B = Math.abs(O);
14174            var H = M > 0 ? 1 : -1;
14175            c = y, p = m - H * k * o, I = y, L = m + H * B * o;
14176          } else k = Math.sqrt(P * P + E * E), B = Math.sqrt(R * R + O * O), C = B / (B + k), c = y - A * o * (1 - C), p = m - M * o * (1 - C), I = y + A * o * C, L = m + M * o * C, I = Ra(I, Ea(x, y)), L = Ra(L, Ea(w, m)), I = Ea(I, Ra(x, y)), L = Ea(L, Ra(w, m)), A = I - y, M = L - m, c = y - A * k / B, p = m - M * k / B, c = Ra(c, Ea(u, y)), p = Ra(p, Ea(f, m)), c = Ea(c, Ra(u, y)), p = Ea(p, Ra(f, m)), A = y - c, M = m - p, I = y + A * B / k, L = m + M * B / k;
14177        }
14178        r.bezierCurveTo(h, v, c, p, y, m), h = I, v = L;
14179      } else r.lineTo(y, m);
14180    }
14181    u = y, f = m, d += i;
14182  }
14183  return g;
14184}
14185var cM = /* @__PURE__ */ function() {
14186  function r() {
14187    this.smooth = 0, this.smoothConstraint = true;
14188  }
14189  return r;
14190}(), UV = function(r) {
14191  N(e, r);
14192  function e(t) {
14193    var a = r.call(this, t) || this;
14194    return a.type = "ec-polyline", a;
14195  }
14196  return e.prototype.getDefaultStyle = function() {
14197    return { stroke: "#000", fill: null };
14198  }, e.prototype.getDefaultShape = function() {
14199    return new cM();
14200  }, e.prototype.buildPath = function(t, a) {
14201    var n = a.points, i = 0, o = n.length / 2;
14202    if (a.connectNulls) {
14203      for (; o > 0 && oi(n[o * 2 - 2], n[o * 2 - 1]); o--) ;
14204      for (; i < o && oi(n[i * 2], n[i * 2 + 1]); i++) ;
14205    }
14206    for (; i < o; ) i += Gd(t, n, i, o, o, 1, a.smooth, a.smoothMonotone, a.connectNulls) + 1;
14207  }, e.prototype.getPointOn = function(t, a) {
14208    this.path || (this.createPathProxy(), this.buildPath(this.path, this.shape));
14209    for (var n = this.path, i = n.data, o = ta.CMD, s, l, u = a === "x", f = [], h = 0; h < i.length; ) {
14210      var v = i[h++], c = void 0, p = void 0, d = void 0, g = void 0, y = void 0, m = void 0, _ = void 0;
14211      switch (v) {
14212        case o.M:
14213          s = i[h++], l = i[h++];
14214          break;
14215        case o.L:
14216          if (c = i[h++], p = i[h++], _ = u ? (t - s) / (c - s) : (t - l) / (p - l), _ <= 1 && _ >= 0) {
14217            var S = u ? (p - l) * _ + l : (c - s) * _ + s;
14218            return u ? [t, S] : [S, t];
14219          }
14220          s = c, l = p;
14221          break;
14222        case o.C:
14223          c = i[h++], p = i[h++], d = i[h++], g = i[h++], y = i[h++], m = i[h++];
14224          var b = u ? Cf(s, c, d, y, t, f) : Cf(l, p, g, m, t, f);
14225          if (b > 0) for (var x = 0; x < b; x++) {
14226            var w = f[x];
14227            if (w <= 1 && w >= 0) {
14228              var S = u ? ae(l, p, g, m, w) : ae(s, c, d, y, w);
14229              return u ? [t, S] : [S, t];
14230            }
14231          }
14232          s = y, l = m;
14233          break;
14234      }
14235    }
14236  }, e;
14237}(mt), YV = function(r) {
14238  N(e, r);
14239  function e() {
14240    return r !== null && r.apply(this, arguments) || this;
14241  }
14242  return e;
14243}(cM), pM = function(r) {
14244  N(e, r);
14245  function e(t) {
14246    var a = r.call(this, t) || this;
14247    return a.type = "ec-polygon", a;
14248  }
14249  return e.prototype.getDefaultShape = function() {
14250    return new YV();
14251  }, e.prototype.buildPath = function(t, a) {
14252    var n = a.points, i = a.stackedOnPoints, o = 0, s = n.length / 2, l = a.smoothMonotone;
14253    if (a.connectNulls) {
14254      for (; s > 0 && oi(n[s * 2 - 2], n[s * 2 - 1]); s--) ;
14255      for (; o < s && oi(n[o * 2], n[o * 2 + 1]); o++) ;
14256    }
14257    for (; o < s; ) {
14258      var u = Gd(t, n, o, s, s, 1, a.smooth, l, a.connectNulls);
14259      Gd(t, i, o + u - 1, u, s, -1, a.stackedOnSmooth, l, a.connectNulls), o += u + 1, t.closePath();
14260    }
14261  }, e;
14262}(mt);
14263function dM(r, e, t, a, n) {
14264  var i = r.getArea(), o = i.x, s = i.y, l = i.width, u = i.height, f = t.get(["lineStyle", "width"]) || 0;
14265  o -= f / 2, s -= f / 2, l += f, u += f, l = Math.ceil(l), o !== Math.floor(o) && (o = Math.floor(o), l++);
14266  var h = new xt({ shape: { x: o, y: s, width: l, height: u } });
14267  if (e) {
14268    var v = r.getBaseAxis(), c = v.isHorizontal(), p = v.inverse;
14269    c ? (p && (h.shape.x += l), h.shape.width = 0) : (p || (h.shape.y += u), h.shape.height = 0);
14270    var d = j(n) ? function(g) {
14271      n(g, h);
14272    } : null;
14273    Gt(h, { shape: { width: l, height: u, x: o, y: s } }, t, null, a, d);
14274  }
14275  return h;
14276}
14277function gM(r, e, t) {
14278  var a = r.getArea(), n = Ut(a.r0, 1), i = Ut(a.r, 1), o = new Te({ shape: { cx: Ut(r.cx, 1), cy: Ut(r.cy, 1), r0: n, r: i, startAngle: a.startAngle, endAngle: a.endAngle, clockwise: a.clockwise } });
14279  if (e) {
14280    var s = r.getBaseAxis().dim === "angle";
14281    s ? o.shape.endAngle = a.startAngle : o.shape.r = n, Gt(o, { shape: { endAngle: a.endAngle, r: i } }, t);
14282  }
14283  return o;
14284}
14285function Yl(r, e, t, a, n) {
14286  if (r) {
14287    if (r.type === "polar") return gM(r, e, t);
14288    if (r.type === "cartesian2d") return dM(r, e, t, a, n);
14289  } else return null;
14290  return null;
14291}
14292function Ti(r, e) {
14293  return r.type === e;
14294}
14295function tS(r, e) {
14296  if (r.length === e.length) {
14297    for (var t = 0; t < r.length; t++) if (r[t] !== e[t]) return;
14298    return true;
14299  }
14300}
14301function eS(r) {
14302  for (var e = 1 / 0, t = 1 / 0, a = -1 / 0, n = -1 / 0, i = 0; i < r.length; ) {
14303    var o = r[i++], s = r[i++];
14304    isNaN(o) || (e = Math.min(o, e), a = Math.max(o, a)), isNaN(s) || (t = Math.min(s, t), n = Math.max(s, n));
14305  }
14306  return [[e, t], [a, n]];
14307}
14308function rS(r, e) {
14309  var t = eS(r), a = t[0], n = t[1], i = eS(e), o = i[0], s = i[1];
14310  return Math.max(Math.abs(a[0] - o[0]), Math.abs(a[1] - o[1]), Math.abs(n[0] - s[0]), Math.abs(n[1] - s[1]));
14311}
14312function aS(r) {
14313  return wt(r) ? r : r ? 0.5 : 0;
14314}
14315function $V(r, e, t) {
14316  if (!t.valueDim) return [];
14317  for (var a = e.count(), n = $r(a * 2), i = 0; i < a; i++) {
14318    var o = vM(t, r, e, i);
14319    n[i * 2] = o[0], n[i * 2 + 1] = o[1];
14320  }
14321  return n;
14322}
14323function ka(r, e, t, a, n) {
14324  var i = t.getBaseAxis(), o = i.dim === "x" || i.dim === "radius" ? 0 : 1, s = [], l = 0, u = [], f = [], h = [], v = [];
14325  if (n) {
14326    for (l = 0; l < r.length; l += 2) {
14327      var c = e || r;
14328      !isNaN(c[l]) && !isNaN(c[l + 1]) && v.push(r[l], r[l + 1]);
14329    }
14330    r = v;
14331  }
14332  for (l = 0; l < r.length - 2; l += 2) switch (h[0] = r[l + 2], h[1] = r[l + 3], f[0] = r[l], f[1] = r[l + 1], s.push(f[0], f[1]), a) {
14333    case "end":
14334      u[o] = h[o], u[1 - o] = f[1 - o], s.push(u[0], u[1]);
14335      break;
14336    case "middle":
14337      var p = (f[o] + h[o]) / 2, d = [];
14338      u[o] = d[o] = p, u[1 - o] = f[1 - o], d[1 - o] = h[1 - o], s.push(u[0], u[1]), s.push(d[0], d[1]);
14339      break;
14340    default:
14341      u[o] = f[o], u[1 - o] = h[1 - o], s.push(u[0], u[1]);
14342  }
14343  return s.push(r[l++], r[l++]), s;
14344}
14345function XV(r, e) {
14346  var t = [], a = r.length, n, i;
14347  function o(f, h, v) {
14348    var c = f.coord, p = (v - c) / (h.coord - c), d = zg(p, [f.color, h.color]);
14349    return { coord: v, color: d };
14350  }
14351  for (var s = 0; s < a; s++) {
14352    var l = r[s], u = l.coord;
14353    if (u < 0) n = l;
14354    else if (u > e) {
14355      i ? t.push(o(i, l, e)) : n && t.push(o(n, l, 0), o(n, l, e));
14356      break;
14357    } else n && (t.push(o(n, l, 0)), n = null), t.push(l), i = l;
14358  }
14359  return t;
14360}
14361function ZV(r, e, t) {
14362  var a = r.getVisual("visualMeta");
14363  if (!(!a || !a.length || !r.count()) && e.type === "cartesian2d") {
14364    for (var n, i, o = a.length - 1; o >= 0; o--) {
14365      var s = r.getDimensionInfo(a[o].dimension);
14366      if (n = s && s.coordDim, n === "x" || n === "y") {
14367        i = a[o];
14368        break;
14369      }
14370    }
14371    if (i) {
14372      var l = e.getAxis(n), u = G(i.stops, function(_) {
14373        return { coord: l.toGlobalCoord(l.dataToCoord(_.value)), color: _.color };
14374      }), f = u.length, h = i.outerColors.slice();
14375      f && u[0].coord > u[f - 1].coord && (u.reverse(), h.reverse());
14376      var v = XV(u, n === "x" ? t.getWidth() : t.getHeight()), c = v.length;
14377      if (!c && f) return u[0].coord < 0 ? h[1] ? h[1] : u[f - 1].color : h[0] ? h[0] : u[0].color;
14378      var p = 10, d = v[0].coord - p, g = v[c - 1].coord + p, y = g - d;
14379      if (y < 1e-3) return "transparent";
14380      D(v, function(_) {
14381        _.offset = (_.coord - d) / y;
14382      }), v.push({ offset: c ? v[c - 1].offset : 0.5, color: h[1] || "transparent" }), v.unshift({ offset: c ? v[0].offset : 0.5, color: h[0] || "transparent" });
14383      var m = new Ro(0, 0, 0, 0, v, true);
14384      return m[n] = d, m[n + "2"] = g, m;
14385    }
14386  }
14387}
14388function qV(r, e, t) {
14389  var a = r.get("showAllSymbol"), n = a === "auto";
14390  if (!(a && !n)) {
14391    var i = t.getAxesByScale("ordinal")[0];
14392    if (i && !(n && KV(i, e))) {
14393      var o = e.mapDimension(i.dim), s = {};
14394      return D(i.getViewLabels(), function(l) {
14395        var u = i.scale.getRawOrdinalNumber(l.tickValue);
14396        s[u] = 1;
14397      }), function(l) {
14398        return !s.hasOwnProperty(e.get(o, l));
14399      };
14400    }
14401  }
14402}
14403function KV(r, e) {
14404  var t = r.getExtent(), a = Math.abs(t[1] - t[0]) / r.scale.count();
14405  isNaN(a) && (a = 0);
14406  for (var n = e.count(), i = Math.max(1, Math.round(n / 5)), o = 0; o < n; o += i) if (Wl.getSymbolSize(e, o)[r.isHorizontal() ? 1 : 0] * 1.5 > a) return false;
14407  return true;
14408}
14409function jV(r, e) {
14410  return isNaN(r) || isNaN(e);
14411}
14412function JV(r) {
14413  for (var e = r.length / 2; e > 0 && jV(r[e * 2 - 2], r[e * 2 - 1]); e--) ;
14414  return e - 1;
14415}
14416function nS(r, e) {
14417  return [r[e * 2], r[e * 2 + 1]];
14418}
14419function QV(r, e, t) {
14420  for (var a = r.length / 2, n = t === "x" ? 0 : 1, i, o, s = 0, l = -1, u = 0; u < a; u++) if (o = r[u * 2 + n], !(isNaN(o) || isNaN(r[u * 2 + 1 - n]))) {
14421    if (u === 0) {
14422      i = o;
14423      continue;
14424    }
14425    if (i <= e && o >= e || i >= e && o <= e) {
14426      l = u;
14427      break;
14428    }
14429    s = u, i = o;
14430  }
14431  return { range: [s, l], t: (e - i) / (o - i) };
14432}
14433function yM(r) {
14434  if (r.get(["endLabel", "show"])) return true;
14435  for (var e = 0; e < Oe.length; e++) if (r.get([Oe[e], "endLabel", "show"])) return true;
14436  return false;
14437}
14438function Ac(r, e, t, a) {
14439  if (Ti(e, "cartesian2d")) {
14440    var n = a.getModel("endLabel"), i = n.get("valueAnimation"), o = a.getData(), s = { lastFrameIndex: 0 }, l = yM(a) ? function(c, p) {
14441      r._endLabelOnDuring(c, p, o, s, i, n, e);
14442    } : null, u = e.getBaseAxis().isHorizontal(), f = dM(e, t, a, function() {
14443      var c = r._endLabel;
14444      c && t && s.originalX != null && c.attr({ x: s.originalX, y: s.originalY });
14445    }, l);
14446    if (!a.get("clip", true)) {
14447      var h = f.shape, v = Math.max(h.width, h.height);
14448      u ? (h.y -= v, h.height += v * 2) : (h.x -= v, h.width += v * 2);
14449    }
14450    return l && l(1, f), f;
14451  } else return gM(e, t, a);
14452}
14453function t5(r, e) {
14454  var t = e.getBaseAxis(), a = t.isHorizontal(), n = t.inverse, i = a ? n ? "right" : "left" : "center", o = a ? "middle" : n ? "top" : "bottom";
14455  return { normal: { align: r.get("align") || i, verticalAlign: r.get("verticalAlign") || o } };
14456}
14457var e5 = function(r) {
14458  N(e, r);
14459  function e() {
14460    return r !== null && r.apply(this, arguments) || this;
14461  }
14462  return e.prototype.init = function() {
14463    var t = new at(), a = new Ul();
14464    this.group.add(a.group), this._symbolDraw = a, this._lineGroup = t, this._changePolyState = $(this._changePolyState, this);
14465  }, e.prototype.render = function(t, a, n) {
14466    var i = t.coordinateSystem, o = this.group, s = t.getData(), l = t.getModel("lineStyle"), u = t.getModel("areaStyle"), f = s.getLayout("points") || [], h = i.type === "polar", v = this._coordSys, c = this._symbolDraw, p = this._polyline, d = this._polygon, g = this._lineGroup, y = !a.ssr && t.get("animation"), m = !u.isEmpty(), _ = u.get("origin"), S = hM(i, s, _), b = m && $V(i, s, S), x = t.get("showSymbol"), w = t.get("connectNulls"), T = x && !h && qV(t, s, i), C = this._data;
14467    C && C.eachItemGraphicEl(function(nt, It) {
14468      nt.__temp && (o.remove(nt), C.setItemGraphicEl(It, null));
14469    }), x || c.remove(), o.add(g);
14470    var A = h ? false : t.get("step"), M;
14471    i && i.getArea && t.get("clip", true) && (M = i.getArea(), M.width != null ? (M.x -= 0.1, M.y -= 0.1, M.width += 0.2, M.height += 0.2) : M.r0 && (M.r0 -= 0.5, M.r += 0.5)), this._clipShapeForSymbol = M;
14472    var I = ZV(s, i, n) || s.getVisual("style")[s.getVisual("drawType")];
14473    if (!(p && v.type === i.type && A === this._step)) x && c.updateData(s, { isIgnore: T, clipShape: M, disableAnimation: true, getSymbolPoint: function(nt) {
14474      return [f[nt * 2], f[nt * 2 + 1]];
14475    } }), y && this._initSymbolLabelAnimation(s, i, M), A && (b && (b = ka(b, f, i, A, w)), f = ka(f, null, i, A, w)), p = this._newPolyline(f), m ? d = this._newPolygon(f, b) : d && (g.remove(d), d = this._polygon = null), h || this._initOrUpdateEndLabel(t, i, pi(I)), g.setClipPath(Ac(this, i, true, t));
14476    else {
14477      m && !d ? d = this._newPolygon(f, b) : d && !m && (g.remove(d), d = this._polygon = null), h || this._initOrUpdateEndLabel(t, i, pi(I));
14478      var L = g.getClipPath();
14479      if (L) {
14480        var P = Ac(this, i, false, t);
14481        Gt(L, { shape: P.shape }, t);
14482      } else g.setClipPath(Ac(this, i, true, t));
14483      x && c.updateData(s, { isIgnore: T, clipShape: M, disableAnimation: true, getSymbolPoint: function(nt) {
14484        return [f[nt * 2], f[nt * 2 + 1]];
14485      } }), (!tS(this._stackedOnPoints, b) || !tS(this._points, f)) && (y ? this._doUpdateAnimation(s, b, i, n, A, _, w) : (A && (b && (b = ka(b, f, i, A, w)), f = ka(f, null, i, A, w)), p.setShape({ points: f }), d && d.setShape({ points: f, stackedOnPoints: b })));
14486    }
14487    var R = t.getModel("emphasis"), E = R.get("focus"), O = R.get("blurScope"), k = R.get("disabled");
14488    if (p.useStyle(Q(l.getLineStyle(), { fill: "none", stroke: I, lineJoin: "bevel" })), pe(p, t, "lineStyle"), p.style.lineWidth > 0 && t.get(["emphasis", "lineStyle", "width"]) === "bolder") {
14489      var B = p.getState("emphasis").style;
14490      B.lineWidth = +p.style.lineWidth + 1;
14491    }
14492    it(p).seriesIndex = t.seriesIndex, Wt(p, E, O, k);
14493    var F = aS(t.get("smooth")), H = t.get("smoothMonotone");
14494    if (p.setShape({ smooth: F, smoothMonotone: H, connectNulls: w }), d) {
14495      var U = s.getCalculationInfo("stackedOnSeries"), K = 0;
14496      d.useStyle(Q(u.getAreaStyle(), { fill: I, opacity: 0.7, lineJoin: "bevel", decal: s.getVisual("style").decal })), U && (K = aS(U.get("smooth"))), d.setShape({ smooth: F, stackedOnSmooth: K, smoothMonotone: H, connectNulls: w }), pe(d, t, "areaStyle"), it(d).seriesIndex = t.seriesIndex, Wt(d, E, O, k);
14497    }
14498    var J = this._changePolyState;
14499    s.eachItemGraphicEl(function(nt) {
14500      nt && (nt.onHoverStateChange = J);
14501    }), this._polyline.onHoverStateChange = J, this._data = s, this._coordSys = i, this._stackedOnPoints = b, this._points = f, this._step = A, this._valueOrigin = _, t.get("triggerLineEvent") && (this.packEventData(t, p), d && this.packEventData(t, d));
14502  }, e.prototype.packEventData = function(t, a) {
14503    it(a).eventData = { componentType: "series", componentSubType: "line", componentIndex: t.componentIndex, seriesIndex: t.seriesIndex, seriesName: t.name, seriesType: "line" };
14504  }, e.prototype.highlight = function(t, a, n, i) {
14505    var o = t.getData(), s = hi(o, i);
14506    if (this._changePolyState("emphasis"), !(s instanceof Array) && s != null && s >= 0) {
14507      var l = o.getLayout("points"), u = o.getItemGraphicEl(s);
14508      if (!u) {
14509        var f = l[s * 2], h = l[s * 2 + 1];
14510        if (isNaN(f) || isNaN(h) || this._clipShapeForSymbol && !this._clipShapeForSymbol.contain(f, h)) return;
14511        var v = t.get("zlevel") || 0, c = t.get("z") || 0;
14512        u = new Wl(o, s), u.x = f, u.y = h, u.setZ(v, c);
14513        var p = u.getSymbolPath().getTextContent();
14514        p && (p.zlevel = v, p.z = c, p.z2 = this._polyline.z2 + 1), u.__temp = true, o.setItemGraphicEl(s, u), u.stopSymbolAnimation(true), this.group.add(u);
14515      }
14516      u.highlight();
14517    } else Pt.prototype.highlight.call(this, t, a, n, i);
14518  }, e.prototype.downplay = function(t, a, n, i) {
14519    var o = t.getData(), s = hi(o, i);
14520    if (this._changePolyState("normal"), s != null && s >= 0) {
14521      var l = o.getItemGraphicEl(s);
14522      l && (l.__temp ? (o.setItemGraphicEl(s, null), this.group.remove(l)) : l.downplay());
14523    } else Pt.prototype.downplay.call(this, t, a, n, i);
14524  }, e.prototype._changePolyState = function(t) {
14525    var a = this._polygon;
14526    Rf(this._polyline, t), a && Rf(a, t);
14527  }, e.prototype._newPolyline = function(t) {
14528    var a = this._polyline;
14529    return a && this._lineGroup.remove(a), a = new UV({ shape: { points: t }
14529, segmentIgnoreThreshold: 2, z2: 10 }), this._lineGroup.add(a), this._polyline = a, a;
14530  }, e.prototype._newPolygon = function(t, a) {
14531    var n = this._polygon;
14532    return n && this._lineGroup.remove(n), n = new pM({ shape: { points: t, stackedOnPoints: a }, segmentIgnoreThreshold: 2 }), this._lineGroup.add(n), this._polygon = n, n;
14533  }, e.prototype._initSymbolLabelAnimation = function(t, a, n) {
14534    var i, o, s = a.getBaseAxis(), l = s.inverse;
14535    a.type === "cartesian2d" ? (i = s.isHorizontal(), o = false) : a.type === "polar" && (i = s.dim === "angle", o = true);
14536    var u = t.hostModel, f = u.get("animationDuration");
14537    j(f) && (f = f(null));
14538    var h = u.get("animationDelay") || 0, v = j(h) ? h(null) : h;
14539    t.eachItemGraphicEl(function(c, p) {
14540      var d = c;
14541      if (d) {
14542        var g = [c.x, c.y], y = void 0, m = void 0, _ = void 0;
14543        if (n) if (o) {
14544          var S = n, b = a.pointToCoord(g);
14545          i ? (y = S.startAngle, m = S.endAngle, _ = -b[1] / 180 * Math.PI) : (y = S.r0, m = S.r, _ = b[0]);
14546        } else {
14547          var x = n;
14548          i ? (y = x.x, m = x.x + x.width, _ = c.x) : (y = x.y + x.height, m = x.y, _ = c.y);
14549        }
14550        var w = m === y ? 0 : (_ - y) / (m - y);
14551        l && (w = 1 - w);
14552        var T = j(h) ? h(p) : f * w + v, C = d.getSymbolPath(), A = C.getTextContent();
14553        d.attr({ scaleX: 0, scaleY: 0 }), d.animateTo({ scaleX: 1, scaleY: 1 }, { duration: 200, setToFinal: true, delay: T }), A && A.animateFrom({ style: { opacity: 0 } }, { duration: 300, delay: T }), C.disableLabelAnimation = true;
14554      }
14555    });
14556  }, e.prototype._initOrUpdateEndLabel = function(t, a, n) {
14557    var i = t.getModel("endLabel");
14558    if (yM(t)) {
14559      var o = t.getData(), s = this._polyline, l = o.getLayout("points");
14560      if (!l) {
14561        s.removeTextContent(), this._endLabel = null;
14562        return;
14563      }
14564      var u = this._endLabel;
14565      u || (u = this._endLabel = new St({ z2: 200 }), u.ignoreClip = true, s.setTextContent(this._endLabel), s.disableLabelAnimation = true);
14566      var f = JV(l);
14567      f >= 0 && (de(s, se(t, "endLabel"), { inheritColor: n, labelFetcher: t, labelDataIndex: f, defaultText: function(h, v, c) {
14568        return c != null ? fM(o, c) : bo(o, h);
14569      }, enableTextSetter: true }, t5(i, a)), s.textConfig.position = null);
14570    } else this._endLabel && (this._polyline.removeTextContent(), this._endLabel = null);
14571  }, e.prototype._endLabelOnDuring = function(t, a, n, i, o, s, l) {
14572    var u = this._endLabel, f = this._polyline;
14573    if (u) {
14574      t < 1 && i.originalX == null && (i.originalX = u.x, i.originalY = u.y);
14575      var h = n.getLayout("points"), v = n.hostModel, c = v.get("connectNulls"), p = s.get("precision"), d = s.get("distance") || 0, g = l.getBaseAxis(), y = g.isHorizontal(), m = g.inverse, _ = a.shape, S = m ? y ? _.x : _.y + _.height : y ? _.x + _.width : _.y, b = (y ? d : 0) * (m ? -1 : 1), x = (y ? 0 : -d) * (m ? -1 : 1), w = y ? "x" : "y", T = QV(h, S, w), C = T.range, A = C[1] - C[0], M = void 0;
14576      if (A >= 1) {
14577        if (A > 1 && !c) {
14578          var I = nS(h, C[0]);
14579          u.attr({ x: I[0] + b, y: I[1] + x }), o && (M = v.getRawValue(C[0]));
14580        } else {
14581          var I = f.getPointOn(S, w);
14582          I && u.attr({ x: I[0] + b, y: I[1] + x });
14583          var L = v.getRawValue(C[0]), P = v.getRawValue(C[1]);
14584          o && (M = tC(n, p, L, P, T.t));
14585        }
14586        i.lastFrameIndex = C[0];
14587      } else {
14588        var R = t === 1 || i.lastFrameIndex > 0 ? C[0] : 0, I = nS(h, R);
14589        o && (M = v.getRawValue(R)), u.attr({ x: I[0] + b, y: I[1] + x });
14590      }
14591      if (o) {
14592        var E = Oo(u);
14593        typeof E.setLabelText == "function" && E.setLabelText(M);
14594      }
14595    }
14596  }, e.prototype._doUpdateAnimation = function(t, a, n, i, o, s, l) {
14597    var u = this._polyline, f = this._polygon, h = t.hostModel, v = WV(this._data, t, this._stackedOnPoints, a, this._coordSys, n, this._valueOrigin), c = v.current, p = v.stackedOnCurrent, d = v.next, g = v.stackedOnNext;
14598    if (o && (p = ka(v.stackedOnCurrent, v.current, n, o, l), c = ka(v.current, null, n, o, l), g = ka(v.stackedOnNext, v.next, n, o, l), d = ka(v.next, null, n, o, l)), rS(c, d) > 3e3 || f && rS(p, g) > 3e3) {
14599      u.stopAnimation(), u.setShape({ points: d }), f && (f.stopAnimation(), f.setShape({ points: d, stackedOnPoints: g }));
14600      return;
14601    }
14602    u.shape.__points = v.current, u.shape.points = c;
14603    var y = { shape: { points: d } };
14604    v.current !== c && (y.shape.__points = v.next), u.stopAnimation(), Tt(u, y, h), f && (f.setShape({ points: c, stackedOnPoints: p }), f.stopAnimation(), Tt(f, { shape: { stackedOnPoints: g } }, h), u.shape.points !== f.shape.points && (f.shape.points = u.shape.points));
14605    for (var m = [], _ = v.status, S = 0; S < _.length; S++) {
14606      var b = _[S].cmd;
14607      if (b === "=") {
14608        var x = t.getItemGraphicEl(_[S].idx1);
14609        x && m.push({ el: x, ptIdx: S });
14610      }
14611    }
14612    u.animators && u.animators.length && u.animators[0].during(function() {
14613      f && f.dirtyShape();
14614      for (var w = u.shape.__points, T = 0; T < m.length; T++) {
14615        var C = m[T].el, A = m[T].ptIdx * 2;
14616        C.x = w[A], C.y = w[A + 1], C.markRedraw();
14617      }
14618    });
14619  }, e.prototype.remove = function(t) {
14620    var a = this.group, n = this._data;
14621    this._lineGroup.removeAll(), this._symbolDraw.remove(true), n && n.eachItemGraphicEl(function(i, o) {
14622      i.__temp && (a.remove(i), n.setItemGraphicEl(o, null));
14623    }), this._polyline = this._polygon = this._coordSys = this._points = this._stackedOnPoints = this._endLabel = this._data = null;
14624  }, e.type = "line", e;
14625}(Pt);
14626function $l(r, e) {
14627  return { seriesType: r, plan: Go(), reset: function(t) {
14628    var a = t.getData(), n = t.coordinateSystem, i = t.pipelineContext, o = e || i.large;
14629    if (n) {
14630      var s = G(n.dimensions, function(c) {
14631        return a.mapDimension(c);
14632      }).slice(0, 2), l = s.length, u = a.getCalculationInfo("stackResultDimension");
14633      xa(a, s[0]) && (s[0] = u), xa(a, s[1]) && (s[1] = u);
14634      var f = a.getStore(), h = a.getDimensionIndex(s[0]), v = a.getDimensionIndex(s[1]);
14635      return l && { progress: function(c, p) {
14636        for (var d = c.end - c.start, g = o && $r(d * l), y = [], m = [], _ = c.start, S = 0; _ < c.end; _++) {
14637          var b = void 0;
14638          if (l === 1) {
14639            var x = f.get(h, _);
14640            b = n.dataToPoint(x, null, m);
14641          } else y[0] = f.get(h, _), y[1] = f.get(v, _), b = n.dataToPoint(y, null, m);
14642          o ? (g[S++] = b[0], g[S++] = b[1]) : p.setItemLayout(_, b.slice());
14643        }
14644        o && p.setLayout("points", g);
14645      } };
14646    }
14647  } };
14648}
14649var r5 = { average: function(r) {
14650  for (var e = 0, t = 0, a = 0; a < r.length; a++) isNaN(r[a]) || (e += r[a], t++);
14651  return t === 0 ? NaN : e / t;
14652}, sum: function(r) {
14653  for (var e = 0, t = 0; t < r.length; t++) e += r[t] || 0;
14654  return e;
14655}, max: function(r) {
14656  for (var e = -1 / 0, t = 0; t < r.length; t++) r[t] > e && (e = r[t]);
14657  return isFinite(e) ? e : NaN;
14658}, min: function(r) {
14659  for (var e = 1 / 0, t = 0; t < r.length; t++) r[t] < e && (e = r[t]);
14660  return isFinite(e) ? e : NaN;
14661}, nearest: function(r) {
14662  return r[0];
14663} }, a5 = function(r) {
14664  return Math.round(r.length / 2);
14665};
14666function mM(r) {
14667  return { seriesType: r, reset: function(e, t, a) {
14668    var n = e.getData(), i = e.get("sampling"), o = e.coordinateSystem, s = n.count();
14669    if (s > 10 && o.type === "cartesian2d" && i) {
14670      var l = o.getBaseAxis(), u = o.getOtherAxis(l), f = l.getExtent(), h = a.getDevicePixelRatio(), v = Math.abs(f[1] - f[0]) * (h || 1), c = Math.round(s / v);
14671      if (isFinite(c) && c > 1) {
14672        i === "lttb" ? e.setData(n.lttbDownSample(n.mapDimension(u.dim), 1 / c)) : i === "minmax" && e.setData(n.minmaxDownSample(n.mapDimension(u.dim), 1 / c));
14673        var p = void 0;
14674        Y(i) ? p = r5[i] : j(i) && (p = i), p && e.setData(n.downSample(n.mapDimension(u.dim), 1 / c, p, a5));
14675      }
14676    }
14677  } };
14678}
14679function n5(r) {
14680  r.registerChartView(e5), r.registerSeriesModel(VV), r.registerLayout($l("line", true)), r.registerVisual({ seriesType: "line", reset: function(e) {
14681    var t = e.getData(), a = e.getModel("lineStyle").getLineStyle();
14682    a && !a.stroke && (a.stroke = t.getVisual("style").fill), t.setVisual("legendLineStyle", a);
14683  } }), r.registerProcessor(r.PRIORITY.PROCESSOR.STATISTIC, mM("line"));
14684}
14685var _l = function(r) {
14686  N(e, r);
14687  function e() {
14688    var t = r !== null && r.apply(this, arguments) || this;
14689    return t.type = e.type, t;
14690  }
14691  return e.prototype.getInitialData = function(t, a) {
14692    return aa(null, this, { useEncodeDefaulter: true });
14693  }, e.prototype.getMarkerPosition = function(t, a, n) {
14694    var i = this.coordinateSystem;
14695    if (i && i.clampData) {
14696      var o = i.clampData(t), s = i.dataToPoint(o);
14697      if (n) D(i.getAxes(), function(v, c) {
14698        if (v.type === "category" && a != null) {
14699          var p = v.getTicksCoords(), d = v.getTickModel().get("alignWithLabel"), g = o[c], y = a[c] === "x1" || a[c] === "y1";
14700          if (y && !d && (g += 1), p.length < 2) return;
14701          if (p.length === 2) {
14702            s[c] = v.toGlobalCoord(v.getExtent()[y ? 1 : 0]);
14703            return;
14704          }
14705          for (var m = void 0, _ = void 0, S = 1, b = 0; b < p.length; b++) {
14706            var x = p[b].coord, w = b === p.length - 1 ? p[b - 1].tickValue + S : p[b].tickValue;
14707            if (w === g) {
14708              _ = x;
14709              break;
14710            } else if (w < g) m = x;
14711            else if (m != null && w > g) {
14712              _ = (x + m) / 2;
14713              break;
14714            }
14715            b === 1 && (S = w - p[0].tickValue);
14716          }
14717          _ == null && (m ? m && (_ = p[p.length - 1].coord) : _ = p[0].coord), s[c] = v.toGlobalCoord(_);
14718        }
14719      });
14720      else {
14721        var l = this.getData(), u = l.getLayout("offset"), f = l.getLayout("size"), h = i.getBaseAxis().isHorizontal() ? 0 : 1;
14722        s[h] += u + f / 2;
14723      }
14724      return s;
14725    }
14726    return [NaN, NaN];
14727  }, e.type = "series.__base_bar__", e.defaultOption = { z: 2, coordinateSystem: "cartesian2d", legendHoverLink: true, barMinHeight: 0, barMinAngle: 0, large: false, largeThreshold: 400, progressive: 3e3, progressiveChunkMode: "mod" }, e;
14728}(Et);
14729Et.registerClass(_l);
14730var i5 = function(r) {
14731  N(e, r);
14732  function e() {
14733    var t = r !== null && r.apply(this, arguments) || this;
14734    return t.type = e.type, t;
14735  }
14736  return e.prototype.getInitialData = function() {
14737    return aa(null, this, { useEncodeDefaulter: true, createInvertedIndices: !!this.get("realtimeSort", true) || null });
14738  }, e.prototype.getProgressive = function() {
14739    return this.get("large") ? this.get("progressive") : false;
14740  }, e.prototype.getProgressiveThreshold = function() {
14741    var t = this.get("progressiveThreshold"), a = this.get("largeThreshold");
14742    return a > t && (t = a), t;
14743  }, e.prototype.brushSelector = function(t, a, n) {
14744    return n.rect(a.getItemLayout(t));
14745  }, e.type = "series.bar", e.dependencies = ["grid", "polar"], e.defaultOption = fn(_l.defaultOption, { clip: true, roundCap: false, showBackground: false, 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: false }), e;
14746}(_l), o5 = /* @__PURE__ */ function() {
14747  function r() {
14748    this.cx = 0, this.cy = 0, this.r0 = 0, this.r = 0, this.startAngle = 0, this.endAngle = Math.PI * 2, this.clockwise = true;
14749  }
14750  return r;
14751}(), Qf = function(r) {
14752  N(e, r);
14753  function e(t) {
14754    var a = r.call(this, t) || this;
14755    return a.type = "sausage", a;
14756  }
14757  return e.prototype.getDefaultShape = function() {
14758    return new o5();
14759  }, e.prototype.buildPath = function(t, a) {
14760    var n = a.cx, i = a.cy, o = Math.max(a.r0 || 0, 0), s = Math.max(a.r, 0), l = (s - o) * 0.5, u = o + l, f = a.startAngle, h = a.endAngle, v = a.clockwise, c = Math.PI * 2, p = v ? h - f < c : f - h < c;
14761    p || (f = h - (v ? c : -c));
14762    var d = Math.cos(f), g = Math.sin(f), y = Math.cos(h), m = Math.sin(h);
14763    p ? (t.moveTo(d * o + n, g * o + i), t.arc(d * u + n, g * u + i, l, -Math.PI + f, f, !v)) : t.moveTo(d * s + n, g * s + i), t.arc(n, i, s, f, h, !v), t.arc(y * u + n, m * u + i, l, h - Math.PI * 2, h - Math.PI, !v), o !== 0 && t.arc(n, i, o, h, f, v);
14764  }, e;
14765}(mt);
14766function s5(r, e) {
14767  e = e || {};
14768  var t = e.isRoundCap;
14769  return function(a, n, i) {
14770    var o = n.position;
14771    if (!o || o instanceof Array) return Lf(a, n, i);
14772    var s = r(o), l = n.distance != null ? n.distance : 5, u = this.shape, f = u.cx, h = u.cy, v = u.r, c = u.r0, p = (v + c) / 2, d = u.startAngle, g = u.endAngle, y = (d + g) / 2, m = t ? Math.abs(v - c) / 2 : 0, _ = Math.cos, S = Math.sin, b = f + v * _(d), x = h + v * S(d), w = "left", T = "top";
14773    switch (s) {
14774      case "startArc":
14775        b = f + (c - l) * _(y), x = h + (c - l) * S(y), w = "center", T = "top";
14776        break;
14777      case "insideStartArc":
14778        b = f + (c + l) * _(y), x = h + (c + l) * S(y), w = "center", T = "bottom";
14779        break;
14780      case "startAngle":
14781        b = f + p * _(d) + Eu(d, l + m, false), x = h + p * S(d) + ku(d, l + m, false), w = "right", T = "middle";
14782        break;
14783      case "insideStartAngle":
14784        b = f + p * _(d) + Eu(d, -l + m, false), x = h + p * S(d) + ku(d, -l + m, false), w = "left", T = "middle";
14785        break;
14786      case "middle":
14787        b = f + p * _(y), x = h + p * S(y), w = "center", T = "middle";
14788        break;
14789      case "endArc":
14790        b = f + (v + l) * _(y), x = h + (v + l) * S(y), w = "center", T = "bottom";
14791        break;
14792      case "insideEndArc":
14793        b = f + (v - l) * _(y), x = h + (v - l) * S(y), w = "center", T = "top";
14794        break;
14795      case "endAngle":
14796        b = f + p * _(g) + Eu(g, l + m, true), x = h + p * S(g) + ku(g, l + m, true), w = "left", T = "middle";
14797        break;
14798      case "insideEndAngle":
14799        b = f + p * _(g) + Eu(g, -l + m, true), x = h + p * S(g) + ku(g, -l + m, true), w = "right", T = "middle";
14800        break;
14801      default:
14802        return Lf(a, n, i);
14803    }
14804    return a = a || {}, a.x = b, a.y = x, a.align = w, a.verticalAlign = T, a;
14805  };
14806}
14807function l5(r, e, t, a) {
14808  if (wt(a)) {
14809    r.setTextConfig({ rotation: a });
14810    return;
14811  } else if (V(e)) {
14812    r.setTextConfig({ rotation: 0 });
14813    return;
14814  }
14815  var n = r.shape, i = n.clockwise ? n.startAngle : n.endAngle, o = n.clockwise ? n.endAngle : n.startAngle, s = (i + o) / 2, l, u = t(e);
14816  switch (u) {
14817    case "startArc":
14818    case "insideStartArc":
14819    case "middle":
14820    case "insideEndArc":
14821    case "endArc":
14822      l = s;
14823      break;
14824    case "startAngle":
14825    case "insideStartAngle":
14826      l = i;
14827      break;
14828    case "endAngle":
14829    case "insideEndAngle":
14830      l = o;
14831      break;
14832    default:
14833      r.setTextConfig({ rotation: 0 });
14834      return;
14835  }
14836  var f = Math.PI * 1.5 - l;
14837  u === "middle" && f > Math.PI / 2 && f < Math.PI * 1.5 && (f -= Math.PI), r.setTextConfig({ rotation: f });
14838}
14839function Eu(r, e, t) {
14840  return e * Math.sin(r) * (t ? -1 : 1);
14841}
14842function ku(r, e, t) {
14843  return e * Math.cos(r) * (t ? 1 : -1);
14844}
14845function ti(r, e, t) {
14846  var a = r.get("borderRadius");
14847  if (a == null) return t ? { cornerRadius: 0 } : null;
14848  V(a) || (a = [a, a, a, a]);
14849  var n = Math.abs(e.r || 0 - e.r0 || 0);
14850  return { cornerRadius: G(a, function(i) {
14851    return Rr(i, n);
14852  }) };
14853}
14854var Dc = Math.max, Mc = Math.min;
14855function u5(r, e) {
14856  var t = r.getArea && r.getArea();
14857  if (Ti(r, "cartesian2d")) {
14858    var a = r.getBaseAxis();
14859    if (a.type !== "category" || !a.onBand) {
14860      var n = e.getLayout("bandWidth");
14861      a.isHorizontal() ? (t.x -= n, t.width += n * 2) : (t.y -= n, t.height += n * 2);
14862    }
14863  }
14864  return t;
14865}
14866var f5 = function(r) {
14867  N(e, r);
14868  function e() {
14869    var t = r.call(this) || this;
14870    return t.type = e.type, t._isFirstFrame = true, t;
14871  }
14872  return e.prototype.render = function(t, a, n, i) {
14873    this._model = t, this._removeOnRenderedListener(n), this._updateDrawMode(t);
14874    var o = t.get("coordinateSystem");
14875    (o === "cartesian2d" || o === "polar") && (this._progressiveEls = null, this._isLargeDraw ? this._renderLarge(t, a, n) : this._renderNormal(t, a, n, i));
14876  }, e.prototype.incrementalPrepareRender = function(t) {
14877    this._clear(), this._updateDrawMode(t), this._updateLargeClip(t);
14878  }, e.prototype.incrementalRender = function(t, a) {
14879    this._progressiveEls = [], this._incrementalRenderLarge(t, a);
14880  }, e.prototype.eachRendered = function(t) {
14881    un(this._progressiveEls || this.group, t);
14882  }, e.prototype._updateDrawMode = function(t) {
14883    var a = t.pipelineContext.large;
14884    (this._isLargeDraw == null || a !== this._isLargeDraw) && (this._isLargeDraw = a, this._clear());
14885  }, e.prototype._renderNormal = function(t, a, n, i) {
14886    var o = this.group, s = t.getData(), l = this._data, u = t.coordinateSystem, f = u.getBaseAxis(), h;
14887    u.type === "cartesian2d" ? h = f.isHorizontal() : u.type === "polar" && (h = f.dim === "angle");
14888    var v = t.isAnimationEnabled() ? t : null, c = h5(t, u);
14889    c && this._enableRealtimeSort(c, s, n);
14890    var p = t.get("clip", true) || c, d = u5(u, s);
14891    o.removeClipPath();
14892    var g = t.get("roundCap", true), y = t.get("showBackground", true), m = t.getModel("backgroundStyle"), _ = m.get("borderRadius") || 0, S = [], b = this._backgroundEls, x = i && i.isInitSort, w = i && i.type === "changeAxisOrder";
14893    function T(M) {
14894      var I = Ou[u.type](s, M), L = m5(u, h, I);
14895      return L.useStyle(m.getItemStyle()), u.type === "cartesian2d" ? L.setShape("r", _) : L.setShape("cornerRadius", _), S[M] = L, L;
14896    }
14897    s.diff(l).add(function(M) {
14898      var I = s.getItemModel(M), L = Ou[u.type](s, M, I);
14899      if (y && T(M), !(!s.hasValue(M) || !uS[u.type](L))) {
14900        var P = false;
14901        p && (P = iS[u.type](d, L));
14902        var R = oS[u.type](t, s, M, L, h, v, f.model, false, g);
14903        c && (R.forceLabelAnimation = true), fS(R, s, M, I, L, t, h, u.type === "polar"), x ? R.attr({ shape: L }) : c ? sS(c, v, R, L, M, h, false, false) : Gt(R, { shape: L }, t, M), s.setItemGraphicEl(M, R), o.add(R), R.ignore = P;
14904      }
14905    }).update(function(M, I) {
14906      var L = s.getItemModel(M), P = Ou[u.type](s, M, L);
14907      if (y) {
14908        var R = void 0;
14909        b.length === 0 ? R = T(I) : (R = b[I], R.useStyle(m.getItemStyle()), u.type === "cartesian2d" ? R.setShape("r", _) : R.setShape("cornerRadius", _), S[M] = R);
14910        var E = Ou[u.type](s, M), O = SM(h, E, u);
14911        Tt(R, { shape: O }, v, M);
14912      }
14913      var k = l.getItemGraphicEl(I);
14914      if (!s.hasValue(M) || !uS[u.type](P)) {
14915        o.remove(k);
14916        return;
14917      }
14918      var B = false;
14919      if (p && (B = iS[u.type](d, P), B && o.remove(k)), k ? Er(k) : k = oS[u.type](t, s, M, P, h, v, f.model, !!k, g), c && (k.forceLabelAnimation = true), w) {
14920        var F = k.getTextContent();
14921        if (F) {
14922          var H = Oo(F);
14923          H.prevValue != null && (H.prevValue = H.value);
14924        }
14925      } else fS(k, s, M, L, P, t, h, u.type === "polar");
14926      x ? k.attr({ shape: P }) : c ? sS(c, v, k, P, M, h, true, w) : Tt(k, { shape: P }, t, M, null), s.setItemGraphicEl(M, k), k.ignore = B, o.add(k);
14927    }).remove(function(M) {
14928      var I = l.getItemGraphicEl(M);
14929      I && ul(I, t, M);
14930    }).execute();
14931    var C = this._backgroundGroup || (this._backgroundGroup = new at());
14932    C.removeAll();
14933    for (var A = 0; A < S.length; ++A) C.add(S[A]);
14934    o.add(C), this._backgroundEls = S, this._data = s;
14935  }, e.prototype._renderLarge = function(t, a, n) {
14936    this._clear(), vS(t, this.group), this._updateLargeClip(t);
14937  }, e.prototype._incrementalRenderLarge = function(t, a) {
14938    this._removeBackground(), vS(a, this.group, this._progressiveEls, true);
14939  }, e.prototype._updateLargeClip = function(t) {
14940    var a = t.get("clip", true) && Yl(t.coordinateSystem, false, t), n = this.group;
14941    a ? n.setClipPath(a) : n.removeClipPath();
14942  }, e.prototype._enableRealtimeSort = function(t, a, n) {
14943    var i = this;
14944    if (a.count()) {
14945      var o = t.baseAxis;
14946      if (this._isFirstFrame) this._dispatchInitSort(a, t, n), this._isFirstFrame = false;
14947      else {
14948        var s = function(l) {
14949          var u = a.getItemGraphicEl(l), f = u && u.shape;
14950          return f && Math.abs(o.isHorizontal() ? f.height : f.width) || 0;
14951        };
14952        this._onRendered = function() {
14953          i._updateSortWithinSameData(a, s, o, n);
14954        }, n.getZr().on("rendered", this._onRendered);
14955      }
14956    }
14957  }, e.prototype._dataSort = function(t, a, n) {
14958    var i = [];
14959    return t.each(t.mapDimension(a.dim), function(o, s) {
14960      var l = n(s);
14961      l = l ?? NaN, i.push({ dataIndex: s, mappedValue: l, ordinalNumber: o });
14962    }), i.sort(function(o, s) {
14963      return s.mappedValue - o.mappedValue;
14964    }), { ordinalNumbers: G(i, function(o) {
14965      return o.ordinalNumber;
14966    }) };
14967  }, e.prototype._isOrderChangedWithinSameData = function(t, a, n) {
14968    for (var i = n.scale, o = t.mapDimension(n.dim), s = Number.MAX_VALUE, l = 0, u = i.getOrdinalMeta().categories.length; l < u; ++l) {
14969      var f = t.rawIndexOf(o, i.getRawOrdinalNumber(l)), h = f < 0 ? Number.MIN_VALUE : a(t.indexOfRawIndex(f));
14970      if (h > s) return true;
14971      s = h;
14972    }
14973    return false;
14974  }, e.prototype._isOrderDifferentInView = function(t, a) {
14975    for (var n = a.scale, i = n.getExtent(), o = Math.max(0, i[0]), s = Math.min(i[1], n.getOrdinalMeta().categories.length - 1); o <= s; ++o) if (t.ordinalNumbers[o] !== n.getRawOrdinalNumber(o)) return true;
14976  }, e.prototype._updateSortWithinSameData = function(t, a, n, i) {
14977    if (this._isOrderChangedWithinSameData(t, a, n)) {
14978      var o = this._dataSort(t, n, a);
14979      this._isOrderDifferentInView(o, n) && (this._removeOnRenderedListener(i), i.dispatchAction({ type: "changeAxisOrder", componentType: n.dim + "Axis", axisId: n.index, sortInfo: o }));
14980    }
14981  }, e.prototype._dispatchInitSort = function(t, a, n) {
14982    var i = a.baseAxis, o = this._dataSort(t, i, function(s) {
14983      return t.get(t.mapDimension(a.otherAxis.dim), s);
14984    });
14985    n.dispatchAction({ type: "changeAxisOrder", componentType: i.dim + "Axis", isInitSort: true, axisId: i.index, sortInfo: o });
14986  }, e.prototype.remove = function(t, a) {
14987    this._clear(this._model), this._removeOnRenderedListener(a);
14988  }, e.prototype.dispose = function(t, a) {
14989    this._removeOnRenderedListener(a);
14990  }, e.prototype._removeOnRenderedListener = function(t) {
14991    this._onRendered && (t.getZr().off("rendered", this._onRendered), this._onRendered = null);
14992  }, e.prototype._clear = function(t) {
14993    var a = this.group, n = this._data;
14994    t && t.isAnimationEnabled() && n && !this._isLargeDraw ? (this._removeBackground(), this._backgroundEls = [], n.eachItemGraphicEl(function(i) {
14995      ul(i, t, it(i).dataIndex);
14996    })) : a.removeAll(), this._data = null, this._isFirstFrame = true;
14997  }, e.prototype._removeBackground = function() {
14998    this.group.remove(this._backgroundGroup), this._backgroundGroup = null;
14999  }, e.type = "bar", e;
15000}(Pt), iS = { cartesian2d: function(r, e) {
15001  var t = e.width < 0 ? -1 : 1, a = e.height < 0 ? -1 : 1;
15002  t < 0 && (e.x += e.width, e.width = -e.width), a < 0 && (e.y += e.height, e.height = -e.height);
15003  var n = r.x + r.width, i = r.y + r.height, o = Dc(e.x, r.x), s = Mc(e.x + e.width, n), l = Dc(e.y, r.y), u = Mc(e.y + e.height, i), f = s < o, h = u < l;
15004  return e.x = f && o > n ? s : o, e.y = h && l > i ? u : l, e.width = f ? 0 : s - o, e.height = h ? 0 : u - l, t < 0 && (e.x += e.width, e.width = -e.width), a < 0 && (e.y += e.height, e.height = -e.height), f || h;
15005}, polar: function(r, e) {
15006  var t = e.r0 <= e.r ? 1 : -1;
15007  if (t < 0) {
15008    var a = e.r;
15009    e.r = e.r0, e.r0 = a;
15010  }
15011  var n = Mc(e.r, r.r), i = Dc(e.r0, r.r0);
15012  e.r = n, e.r0 = i;
15013  var o = n - i < 0;
15014  if (t < 0) {
15015    var a = e.r;
15016    e.r = e.r0, e.r0 = a;
15017  }
15018  return o;
15019} }, oS = { cartesian2d: function(r, e, t, a, n, i, o, s, l) {
15020  var u = new xt({ shape: z({}, a), z2: 1 });
15021  if (u.__dataIndex = t, u.name = "item", i) {
15022    var f = u.shape, h = n ? "height" : "width";
15023    f[h] = 0;
15024  }
15025  return u;
15026}, polar: function(r, e, t, a, n, i, o, s, l) {
15027  var u = !n && l ? Qf : Te, f = new u({ shape: a, z2: 1 });
15028  f.name = "item";
15029  var h = _M(n);
15030  if (f.calculateTextPosition = s5(h, { isRoundCap: u === Qf }), i) {
15031    var v = f.shape, c = n ? "r" : "endAngle", p = {};
15032    v[c] = n ? a.r0 : a.startAngle, p[c] = a[c], (s ? Tt : Gt)(f, { shape: p }, i);
15033  }
15034  return f;
15035} };
15036function h5(r, e) {
15037  var t = r.get("realtimeSort", true), a = e.getBaseAxis();
15038  if (t && a.type === "category" && e.type === "cartesian2d") return { baseAxis: a, otherAxis: e.getOtherAxis(a) };
15039}
15040function sS(r, e, t, a, n, i, o, s) {
15041  var l, u;
15042  i ? (u = { x: a.x, width: a.width }, l = { y: a.y, height: a.height }) : (u = { y: a.y, height: a.height }, l = { x: a.x, width: a.width }), s || (o ? Tt : Gt)(t, { shape: l }, e, n, null);
15043  var f = e ? r.baseAxis.model : null;
15044  (o ? Tt : Gt)(t, { shape: u }, f, n);
15045}
15046function lS(r, e) {
15047  for (var t = 0; t < e.length; t++) if (!isFinite(r[e[t]])) return true;
15048  return false;
15049}
15050var v5 = ["x", "y", "width", "height"], c5 = ["cx", "cy", "r", "startAngle", "endAngle"], uS = { cartesian2d: function(r) {
15051  return !lS(r, v5);
15052}, polar: function(r) {
15053  return !lS(r, c5);
15054} }, Ou = { cartesian2d: function(r, e, t) {
15055  var a = r.getItemLayout(e), n = t ? d5(t, a) : 0, i = a.width > 0 ? 1 : -1, o = a.height > 0 ? 1 : -1;
15056  return { x: a.x + i * n / 2, y: a.y + o * n / 2, width: a.width - i * n, height: a.height - o * n };
15057}, polar: function(r, e, t) {
15058  var a = r.getItemLayout(e);
15059  return { cx: a.cx, cy: a.cy, r0: a.r0, r: a.r, startAngle: a.startAngle, endAngle: a.endAngle, clockwise: a.clockwise };
15060} };
15061function p5(r) {
15062  return r.startAngle != null && r.endAngle != null && r.startAngle === r.endAngle;
15063}
15064function _M(r) {
15065  return /* @__PURE__ */ function(e) {
15066    var t = e ? "Arc" : "Angle";
15067    return function(a) {
15068      switch (a) {
15069        case "start":
15070        case "insideStart":
15071        case "end":
15072        case "insideEnd":
15073          return a + t;
15074        default:
15075          return a;
15076      }
15077    };
15078  }(r);
15079}
15080function fS(r, e, t, a, n, i, o, s) {
15081  var l = e.getItemVisual(t, "style");
15082  if (s) {
15083    if (!i.get("roundCap")) {
15084      var f = r.shape, h = ti(a.getModel("itemStyle"), f, true);
15085      z(f, h), r.setShape(f);
15086    }
15087  } else {
15088    var u = a.get(["itemStyle", "borderRadius"]) || 0;
15089    r.setShape("r", u);
15090  }
15091  r.useStyle(l);
15092  var v = a.getShallow("cursor");
15093  v && r.attr("cursor", v);
15094  var c = s ? o ? n.r >= n.r0 ? "endArc" : "startArc" : n.endAngle >= n.startAngle ? "endAngle" : "startAngle" : o ? n.height >= 0 ? "bottom" : "top" : n.width >= 0 ? "right" : "left", p = se(a);
15095  de(r, p, { labelFetcher: i, labelDataIndex: t, defaultText: bo(i.getData(), t), inheritColor: l.fill, defaultOpacity: l.opacity, defaultOutsidePosition: c });
15096  var d = r.getTextContent();
15097  if (s && d) {
15098    var g = a.get(["label", "position"]);
15099    r.textConfig.inside = g === "middle" ? true : null, l5(r, g === "outside" ? c : g, _M(o), a.get(["label", "rotate"]));
15100  }
15101  zC(d, p, i.getRawValue(t), function(m) {
15102    return fM(e, m);
15103  });
15104  var y = a.getModel(["emphasis"]);
15105  Wt(r, y.get("focus"), y.get("blurScope"), y.get("disabled")), pe(r, a), p5(n) && (r.style.fill = "none", r.style.stroke = "none", D(r.states, function(m) {
15106    m.style && (m.style.fill = m.style.stroke = "none");
15107  }));
15108}
15109function d5(r, e) {
15110  var t = r.get(["itemStyle", "borderColor"]);
15111  if (!t || t === "none") return 0;
15112  var a = r.get(["itemStyle", "borderWidth"]) || 0, n = isNaN(e.width) ? Number.MAX_VALUE : Math.abs(e.width), i = isNaN(e.height) ? Number.MAX_VALUE : Math.abs(e.height);
15113  return Math.min(a, n, i);
15114}
15115var g5 = /* @__PURE__ */ function() {
15116  function r() {
15117  }
15118  return r;
15119}(), hS = function(r) {
15120  N(e, r);
15121  function e(t) {
15122    var a = r.call(this, t) || this;
15123    return a.type = "largeBar", a;
15124  }
15125  return e.prototype.getDefaultShape = function() {
15126    return new g5();
15127  }, e.prototype.buildPath = function(t, a) {
15128    for (var n = a.points, i = this.baseDimIdx, o = 1 - this.baseDimIdx, s = [], l = [], u = this.barWidth, f = 0; f < n.length; f += 3) l[i] = u, l[o] = n[f + 2], s[i] = n[f + i], s[o] = n[f + o], t.rect(s[0], s[1], l[0], l[1]);
15129  }, e;
15130}(mt);
15131function vS(r, e, t, a) {
15132  var n = r.getData(), i = n.getLayout("valueAxisHorizontal") ? 1 : 0, o = n.getLayout("largeDataIndices"), s = n.getLayout("size"), l = r.getModel("backgroundStyle"), u = n.getLayout("largeBackgroun
15132dPoints");
15133  if (u) {
15134    var f = new hS({ shape: { points: u }, incremental: !!a, silent: true, z2: 0 });
15135    f.baseDimIdx = i, f.largeDataIndices = o, f.barWidth = s, f.useStyle(l.getItemStyle()), e.add(f), t && t.push(f);
15136  }
15137  var h = new hS({ shape: { points: n.getLayout("largePoints") }, incremental: !!a, ignoreCoarsePointer: true, z2: 1 });
15138  h.baseDimIdx = i, h.largeDataIndices = o, h.barWidth = s, e.add(h), h.useStyle(n.getVisual("style")), h.style.stroke = null, it(h).seriesIndex = r.seriesIndex, r.get("silent") || (h.on("mousedown", cS), h.on("mousemove", cS)), t && t.push(h);
15139}
15140var cS = Xh(function(r) {
15141  var e = this, t = y5(e, r.offsetX, r.offsetY);
15142  it(e).dataIndex = t >= 0 ? t : null;
15143}, 30, false);
15144function y5(r, e, t) {
15145  for (var a = r.baseDimIdx, n = 1 - a, i = r.shape.points, o = r.largeDataIndices, s = [], l = [], u = r.barWidth, f = 0, h = i.length / 3; f < h; f++) {
15146    var v = f * 3;
15147    if (l[a] = u, l[n] = i[v + 2], s[a] = i[v + a], s[n] = i[v + n], l[n] < 0 && (s[n] += l[n], l[n] = -l[n]), e >= s[0] && e <= s[0] + l[0] && t >= s[1] && t <= s[1] + l[1]) return o[f];
15148  }
15149  return -1;
15150}
15151function SM(r, e, t) {
15152  if (Ti(t, "cartesian2d")) {
15153    var a = e, n = t.getArea();
15154    return { x: r ? a.x : n.x, y: r ? n.y : a.y, width: r ? a.width : n.width, height: r ? n.height : a.height };
15155  } else {
15156    var n = t.getArea(), i = e;
15157    return { cx: n.cx, cy: n.cy, r0: r ? n.r0 : i.r0, r: r ? n.r : i.r, startAngle: r ? i.startAngle : 0, endAngle: r ? i.endAngle : Math.PI * 2 };
15158  }
15159}
15160function m5(r, e, t) {
15161  var a = r.type === "polar" ? Te : xt;
15162  return new a({ shape: SM(e, t, r), silent: true, z2: 0 });
15163}
15164function _5(r) {
15165  r.registerChartView(f5), r.registerSeriesModel(i5), r.registerLayout(r.PRIORITY.VISUAL.LAYOUT, lt(CD, "bar")), r.registerLayout(r.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT, AD("bar")), r.registerProcessor(r.PRIORITY.PROCESSOR.STATISTIC, mM("bar")), r.registerAction({ type: "changeAxisOrder", event: "changeAxisOrder", update: "update" }, function(e, t) {
15166    var a = e.componentType || "series";
15167    t.eachComponent({ mainType: a, query: e }, function(n) {
15168      e.sortInfo && n.axis.setCategorySortInfo(e.sortInfo);
15169    });
15170  });
15171}
15172var pS = Math.PI * 2, Nu = Math.PI / 180;
15173function xM(r, e) {
15174  return Qt(r.getBoxLayoutParams(), { width: e.getWidth(), height: e.getHeight() });
15175}
15176function bM(r, e) {
15177  var t = xM(r, e), a = r.get("center"), n = r.get("radius");
15178  V(n) || (n = [0, n]);
15179  var i = W(t.width, e.getWidth()), o = W(t.height, e.getHeight()), s = Math.min(i, o), l = W(n[0], s / 2), u = W(n[1], s / 2), f, h, v = r.coordinateSystem;
15180  if (v) {
15181    var c = v.dataToPoint(a);
15182    f = c[0] || 0, h = c[1] || 0;
15183  } else V(a) || (a = [a, a]), f = W(a[0], i) + t.x, h = W(a[1], o) + t.y;
15184  return { cx: f, cy: h, r0: l, r: u };
15185}
15186function S5(r, e, t) {
15187  e.eachSeriesByType(r, function(a) {
15188    var n = a.getData(), i = n.mapDimension("value"), o = xM(a, t), s = bM(a, t), l = s.cx, u = s.cy, f = s.r, h = s.r0, v = -a.get("startAngle") * Nu, c = a.get("endAngle"), p = a.get("padAngle") * Nu;
15189    c = c === "auto" ? v - pS : -c * Nu;
15190    var d = a.get("minAngle") * Nu, g = d + p, y = 0;
15191    n.each(i, function(O) {
15192      !isNaN(O) && y++;
15193    });
15194    var m = n.getSum(i), _ = Math.PI / (m || y) * 2, S = a.get("clockwise"), b = a.get("roseType"), x = a.get("stillShowZeroSum"), w = n.getDataExtent(i);
15195    w[0] = 0;
15196    var T = S ? 1 : -1, C = [v, c], A = T * p / 2;
15197    qg(C, !S), v = C[0], c = C[1];
15198    var M = wM(a);
15199    M.startAngle = v, M.endAngle = c, M.clockwise = S;
15200    var I = Math.abs(c - v), L = I, P = 0, R = v;
15201    if (n.setLayout({ viewRect: o, r: f }), n.each(i, function(O, k) {
15202      var B;
15203      if (isNaN(O)) {
15204        n.setItemLayout(k, { angle: NaN, startAngle: NaN, endAngle: NaN, clockwise: S, cx: l, cy: u, r0: h, r: b ? NaN : f });
15205        return;
15206      }
15207      b !== "area" ? B = m === 0 && x ? _ : O * _ : B = I / y, B < g ? (B = g, L -= g) : P += O;
15208      var F = R + T * B, H = 0, U = 0;
15209      p > B ? (H = R + T * B / 2, U = H) : (H = R + A, U = F - A), n.setItemLayout(k, { angle: B, startAngle: H, endAngle: U, clockwise: S, cx: l, cy: u, r0: h, r: b ? Dt(O, w, [h, f]) : f }), R = F;
15210    }), L < pS && y) if (L <= 1e-3) {
15211      var E = I / y;
15212      n.each(i, function(O, k) {
15213        if (!isNaN(O)) {
15214          var B = n.getItemLayout(k);
15215          B.angle = E;
15216          var F = 0, H = 0;
15217          E < p ? (F = v + T * (k + 1 / 2) * E, H = F) : (F = v + T * k * E + A, H = v + T * (k + 1) * E - A), B.startAngle = F, B.endAngle = H;
15218        }
15219      });
15220    } else _ = L / P, R = v, n.each(i, function(O, k) {
15221      if (!isNaN(O)) {
15222        var B = n.getItemLayout(k), F = B.angle === g ? g : O * _, H = 0, U = 0;
15223        F < p ? (H = R + T * F / 2, U = H) : (H = R + A, U = R + T * F - A), B.startAngle = H, B.endAngle = U, R += T * F;
15224      }
15225    });
15226  });
15227}
15228var wM = bt();
15229function Xl(r) {
15230  return { seriesType: r, reset: function(e, t) {
15231    var a = t.findComponents({ mainType: "legend" });
15232    if (!(!a || !a.length)) {
15233      var n = e.getData();
15234      n.filterSelf(function(i) {
15235        for (var o = n.getName(i), s = 0; s < a.length; s++) if (!a[s].isSelected(o)) return false;
15236        return true;
15237      });
15238    }
15239  } };
15240}
15241var x5 = Math.PI / 180;
15242function dS(r, e, t, a, n, i, o, s, l, u) {
15243  if (r.length < 2) return;
15244  function f(d) {
15245    for (var g = d.rB, y = g * g, m = 0; m < d.list.length; m++) {
15246      var _ = d.list[m], S = Math.abs(_.label.y - t), b = a + _.len, x = b * b, w = Math.sqrt(Math.abs((1 - S * S / y) * x)), T = e + (w + _.len2) * n, C = T - _.label.x, A = _.targetTextWidth - C * n;
15247      TM(_, A, true), _.label.x = T;
15248    }
15249  }
15250  function h(d) {
15251    for (var g = { list: [], maxY: 0 }, y = { list: [], maxY: 0 }, m = 0; m < d.length; m++) if (d[m].labelAlignTo === "none") {
15252      var _ = d[m], S = _.label.y > t ? y : g, b = Math.abs(_.label.y - t);
15253      if (b >= S.maxY) {
15254        var x = _.label.x - e - _.len2 * n, w = a + _.len, T = Math.abs(x) < w ? Math.sqrt(b * b / (1 - x * x / w / w)) : w;
15255        S.rB = T, S.maxY = b;
15256      }
15257      S.list.push(_);
15258    }
15259    f(g), f(y);
15260  }
15261  for (var v = r.length, c = 0; c < v; c++) if (r[c].position === "outer" && r[c].labelAlignTo === "labelLine") {
15262    var p = r[c].label.x - u;
15263    r[c].linePoints[1][0] += p, r[c].label.x = u;
15264  }
15265  XD(r, l, l + o) && h(r);
15266}
15267function b5(r, e, t, a, n, i, o, s) {
15268  for (var l = [], u = [], f = Number.MAX_VALUE, h = -Number.MAX_VALUE, v = 0; v < r.length; v++) {
15269    var c = r[v].label;
15270    Ic(r[v]) || (c.x < e ? (f = Math.min(f, c.x), l.push(r[v])) : (h = Math.max(h, c.x), u.push(r[v])));
15271  }
15272  for (var v = 0; v < r.length; v++) {
15273    var p = r[v];
15274    if (!Ic(p) && p.linePoints) {
15275      if (p.labelStyleWidth != null) continue;
15276      var c = p.label, d = p.linePoints, g = void 0;
15277      p.labelAlignTo === "edge" ? c.x < e ? g = d[2][0] - p.labelDistance - o - p.edgeDistance : g = o + n - p.edgeDistance - d[2][0] - p.labelDistance : p.labelAlignTo === "labelLine" ? c.x < e ? g = f - o - p.bleedMargin : g = o + n - h - p.bleedMargin : c.x < e ? g = c.x - o - p.bleedMargin : g = o + n - c.x - p.bleedMargin, p.targetTextWidth = g, TM(p, g);
15278    }
15279  }
15280  dS(u, e, t, a, 1, n, i, o, s, h), dS(l, e, t, a, -1, n, i, o, s, f);
15281  for (var v = 0; v < r.length; v++) {
15282    var p = r[v];
15283    if (!Ic(p) && p.linePoints) {
15284      var c = p.label, d = p.linePoints, y = p.labelAlignTo === "edge", m = c.style.padding, _ = m ? m[1] + m[3] : 0, S = c.style.backgroundColor ? 0 : _, b = p.rect.width + S, x = d[1][0] - d[2][0];
15285      y ? c.x < e ? d[2][0] = o + p.edgeDistance + b + p.labelDistance : d[2][0] = o + n - p.edgeDistance - b - p.labelDistance : (c.x < e ? d[2][0] = c.x + p.labelDistance : d[2][0] = c.x - p.labelDistance, d[1][0] = d[2][0] + x), d[1][1] = d[2][1] = c.y;
15286    }
15287  }
15288}
15289function TM(r, e, t) {
15290  if (t === void 0 && (t = false), r.labelStyleWidth == null) {
15291    var a = r.label, n = a.style, i = r.rect, o = n.backgroundColor, s = n.padding, l = s ? s[1] + s[3] : 0, u = n.overflow, f = i.width + (o ? 0 : l);
15292    if (e < f || t) {
15293      var h = i.height;
15294      if (u && u.match("break")) {
15295        a.setStyle("backgroundColor", null), a.setStyle("width", e - l);
15296        var v = a.getBoundingRect();
15297        a.setStyle("width", Math.ceil(v.width)), a.setStyle("backgroundColor", o);
15298      } else {
15299        var c = e - l, p = e < f ? c : t ? c > r.unconstrainedWidth ? null : c : null;
15300        a.setStyle("width", p);
15301      }
15302      var d = a.getBoundingRect();
15303      i.width = d.width;
15304      var g = (a.style.margin || 0) + 2.1;
15305      i.height = d.height + g, i.y -= (i.height - h) / 2;
15306    }
15307  }
15308}
15309function Ic(r) {
15310  return r.position === "center";
15311}
15312function w5(r) {
15313  var e = r.getData(), t = [], a, n, i = false, o = (r.get("minShowLabelAngle") || 0) * x5, s = e.getLayout("viewRect"), l = e.getLayout("r"), u = s.width, f = s.x, h = s.y, v = s.height;
15314  function c(x) {
15315    x.ignore = true;
15316  }
15317  function p(x) {
15318    if (!x.ignore) return true;
15319    for (var w in x.states) if (x.states[w].ignore === false) return true;
15320    return false;
15321  }
15322  e.each(function(x) {
15323    var w = e.getItemGraphicEl(x), T = w.shape, C = w.getTextContent(), A = w.getTextGuideLine(), M = e.getItemModel(x), I = M.getModel("label"), L = I.get("position") || M.get(["emp
15323hasis", "label", "position"]), P = I.get("distanceToLabelLine"), R = I.get("alignTo"), E = W(I.get("edgeDistance"), u), O = I.get("bleedMargin"), k = M.getModel("labelLine"), B = k.get("length");
15324    B = W(B, u);
15325    var F = k.get("length2");
15326    if (F = W(F, u), Math.abs(T.endAngle - T.startAngle) < o) {
15327      D(C.states, c), C.ignore = true, A && (D(A.states, c), A.ignore = true);
15328      return;
15329    }
15330    if (p(C)) {
15331      var H = (T.startAngle + T.endAngle) / 2, U = Math.cos(H), K = Math.sin(H), J, nt, It, Yt;
15332      a = T.cx, n = T.cy;
15333      var ct = L === "inside" || L === "inner";
15334      if (L === "center") J = T.cx, nt = T.cy, Yt = "center";
15335      else {
15336        var et = (ct ? (T.r + T.r0) / 2 * U : T.r * U) + a, dt = (ct ? (T.r + T.r0) / 2 * K : T.r * K) + n;
15337        if (J = et + U * 3, nt = dt + K * 3, !ct) {
15338          var q = et + U * (B + l - T.r), ot = dt + K * (B + l - T.r), Bt = q + (U < 0 ? -1 : 1) * F, Lt = ot;
15339          R === "edge" ? J = U < 0 ? f + E : f + u - E : J = Bt + (U < 0 ? -P : P), nt = Lt, It = [[et, dt], [q, ot], [Bt, Lt]
15339];
15340        }
15341        Yt = ct ? "center" : R === "edge" ? U > 0 ? "right" : "left" : U > 0 ? "left" : "right";
15342      }
15343      var kt = Math.PI, Ht = 0, re = I.get("rotate");
15344      if (wt(re)) Ht = re * (kt / 180);
15345      else if (L === "center") Ht = 0;
15346      else if (re === "radial" || re === true) {
15347        var We = U < 0 ? -H + kt : -H;
15348        Ht = We;
15349      } else if (re === "tangential" && L !== "outside" && L !== "outer") {
15350        var Ne = Math.atan2(U, K);
15351        Ne < 0 && (Ne = kt * 2 + Ne);
15352        var vn = K > 0;
15353        vn && (Ne = kt + Ne), Ht = Ne - kt;
15354      }
15355      if (i = !!Ht, C.x = J, C.y = nt, C.rotation = Ht, C.setStyle({ verticalAlign: "middle" }), ct) {
15356        C.setStyle({ align: Yt });
15357        var hv = C.states.select;
15358        hv && (hv.x += C.x, hv.y += C.y);
15359      } else {
15360        var Aa = C.getBoundingRect().clone();
15361        Aa.applyTransform(C.getComputedTransform());
15362        var Qm = (C.style.margin || 0) + 2.1;
15363        Aa.y -= Qm / 2, Aa.height += Qm, t.push({ label: C, labelLine: A, position: L, len: B, len2: F, minTurnAngle: k.get("minTurnAngle"), maxSurfaceAngle: k.get("maxSurfaceAngle"), surfaceNormal: new ft(U, K), linePoints: It, textAlign: Yt, labelDistance: P, labelAlignTo: R, edgeDistance: E, bleedMargin: O, rect: Aa, unconstrainedWidth: Aa.width, labelStyleWidth: C.style.width });
15364      }
15365      w.setTextConfig({ inside: ct });
15366    }
15367  }), !i && r.get("avoidLabelOverlap") && b5(t, a, n, l, u, v, f, h);
15368  for (var d = 0; d < t.length; d++) {
15369    var g = t[d], y = g.label, m = g.labelLine, _ = isNaN(y.x) || isNaN(y.y);
15370    if (y) {
15371      y.setStyle({ align: g.textAlign }), _ && (D(y.states, c), y.ignore = true);
15372      var S = y.states.select;
15373      S && (S.x += y.x, S.y += y.y);
15374    }
15375    if (m) {
15376      var b = g.linePoints;
15377      _ || !b ? (D(m.states, c), m.ignore = true) : (UD(b, g.minTurnAngle), $z(b, g.surfaceNormal, g.maxSurfaceAngle), m.setShape({ points: b }), y.__hostTarget.textGuideLineConfig = { anchor: new ft(b[0][0], b[0][1]) });
15378    }
15379  }
15380}
15381var T5 = function(r) {
15382  N(e, r);
15383  function e(t, a, n) {
15384    var i = r.call(this) || this;
15385    i.z2 = 2;
15386    var o = new St();
15387    return i.setTextContent(o), i.updateData(t, a, n, true), i;
15388  }
15389  return e.prototype.updateData = function(t, a, n, i) {
15390    var o = this, s = t.hostModel, l = t.getItemModel(a), u = l.getModel("emphasis"), f = t.getItemLayout(a), h = z(ti(l.getModel("itemStyle"), f, true), f);
15391    if (isNaN(h.startAngle)) {
15392      o.setShape(h);
15393      return;
15394    }
15395    if (i) {
15396      o.setShape(h);
15397      var v = s.getShallow("animationType");
15398      s.ecModel.ssr ? (Gt(o, { scaleX: 0, scaleY: 0 }, s, { dataIndex: a, isFrom: true }), o.originX = h.cx, o.originY = h.cy) : v === "scale" ? (o.shape.r = f.r0, Gt(o, { shape: { r: f.r } }, s, a)) : n != null ? (o.setShape({ startAngle: n, endAngle: n }), Gt(o, { shape: { startAngle: f.startAngle, endAngle: f.endAngle } }, s, a)) : (o.shape.endAngle = f.startAngle, Tt(o, { shape: { endAngle: f.endAngle } }, s, a));
15399    } else Er(o), Tt(o, { shape: h }, s, a);
15400    o.useStyle(t.getItemVisual(a, "style")), pe(o, l);
15401    var c = (f.startAngle + f.endAngle) / 2, p = s.get("selectedOffset"), d = Math.cos(c) * p, g = Math.sin(c) * p, y = l.getShallow("cursor");
15402    y && o.attr("cursor", y), this._updateLabel(s, t, a), o.ensureState("emphasis").shape = z({ r: f.r + (u.get("scale") && u.get("scaleSize") || 0) }, ti(u.getModel("itemStyle"), f)), z(o.ensureState("select"), { x: d, y: g, shape: ti(l.getModel(["select", "itemStyle"]), f) }), z(o.ensureState("blur"), { shape: ti(l.getModel(["blur", "itemStyle"]), f) });
15403    var m = o.getTextGuideLine(), _ = o.getTextContent();
15404    m && z(m.ensureState("select"), { x: d, y: g }), z(_.ensureState("select"), { x: d, y: g }), Wt(this, u.get("focus"), u.get("blurScope"), u.get("disabled"));
15405  }, e.prototype._updateLabel = function(t, a, n) {
15406    var i = this, o = a.getItemModel(n), s = o.getModel("labelLine"), l = a.getItemVisual(n, "style"), u = l && l.fill, f = l && l.opacity;
15407    de(i, se(o), { labelFetcher: a.hostModel, labelDataIndex: n, inheritColor: u, defaultOpacity: f, defaultText: t.getFormattedLabel(n, "normal") || a.getName(n) });
15408    var h = i.getTextContent();
15409    i.setTextConfig({ position: null, rotation: null }), h.attr({ z2: 10 });
15410    var v = t.get(["label", "position"]);
15411    if (v !== "outside" && v !== "outer") i.removeTextGuideLine();
15412    else {
15413      var c = this.getTextGuideLine();
15414      c || (c = new De(), this.setTextGuideLine(c)), Uy(this, Yy(o), { stroke: u, opacity: Ar(s.get(["lineStyle", "opacity"]), f, 1) });
15415    }
15416  }, e;
15417}(Te), C5 = function(r) {
15418  N(e, r);
15419  function e() {
15420    var t = r !== null && r.apply(this, arguments) || this;
15421    return t.ignoreLabelLineUpdate = true, t;
15422  }
15423  return e.prototype.render = function(t, a, n, i) {
15424    var o = t.getData(), s = this._data, l = this.group, u;
15425    if (!s && o.count() > 0) {
15426      for (var f = o.getItemLayout(0), h = 1; isNaN(f && f.startAngle) && h < o.count(); ++h) f = o.getItemLayout(h);
15427      f && (u = f.startAngle);
15428    }
15429    if (this._emptyCircleSector && l.remove(this._emptyCircleSector), o.count() === 0 && t.get("showEmptyCircle")) {
15430      var v = wM(t), c = new Te({ shape: z(bM(t, n), v) });
15431      c.useStyle(t.getModel("emptyCircleStyle").getItemStyle()), this._emptyCircleSector = c, l.add(c);
15432    }
15433    o.diff(s).add(function(p) {
15434      var d = new T5(o, p, u);
15435      o.setItemGraphicEl(p, d), l.add(d);
15436    }).update(function(p, d) {
15437      var g = s.getItemGraphicEl(d);
15438      g.updateData(o, p, u), g.off("click"), l.add(g), o.setItemGraphicEl(p, g);
15439    }).remove(function(p) {
15440      var d = s.getItemGraphicEl(p);
15441      ul(d, t, p);
15442    }).execute(), w5(t), t.get("animationTypeUpdate") !== "expansion" && (this._data = o);
15443  }, e.prototype.dispose = function() {
15444  }, e.prototype.containPoint = function(t, a) {
15445    var n = a.getData(), i = n.getItemLayout(0);
15446    if (i) {
15447      var o = t[0] - i.cx, s = t[1] - i.cy, l = Math.sqrt(o * o + s * s);
15448      return l <= i.r && l >= i.r0;
15449    }
15450  }, e.type = "pie", e;
15451}(Pt);
15452function $o(r, e, t) {
15453  e = V(e) && { coordDimensions: e } || z({ encodeDefine: r.getEncode() }, e);
15454  var a = r.getSource(), n = Wo(a, e).dimensions, i = new be(n, r);
15455  return i.initData(a, t), i;
15456}
15457var Zl = function() {
15458  function r(e, t) {
15459    this._getDataWithEncodedVisual = e, this._getRawData = t;
15460  }
15461  return r.prototype.getAllNames = function() {
15462    var e = this._getRawData();
15463    return e.mapArray(e.getName);
15464  }, r.prototype.containName = function(e) {
15465    var t = this._getRawData();
15466    return t.indexOfName(e) >= 0;
15467  }, r.prototype.indexOfName = function(e) {
15468    var t = this._getDataWithEncodedVisual();
15469    return t.indexOfName(e);
15470  }, r.prototype.getItemVisual = function(e, t) {
15471    var a = this._getDataWithEncodedVisual();
15472    return a.getItemVisual(e, t);
15473  }, r;
15474}(), A5 = bt(), D5 = function(r) {
15475  N(e, r);
15476  function e() {
15477    return r !== null && r.apply(this, arguments) || this;
15478  }
15479  return e.prototype.init = function(t) {
15480    r.prototype.init.apply(this, arguments), this.legendVisualProvider = new Zl($(this.getData, this), $(this.getRawData, this)), this._defaultLabelLine(t);
15481  }, e.prototype.mergeOption = function() {
15482    r.prototype.mergeOption.apply(this, arguments);
15483  }, e.prototype.getInitialData = function() {
15484    return $o(this, { coordDimensions: ["value"], encodeDefaulter: lt(my, this) });
15485  }, e.prototype.getDataParams = function(t) {
15486    var a = this.getData(), n = A5(a), i = n.seats;
15487    if (!i) {
15488      var o = [];
15489      a.each(a.mapDimension("value"), function(l) {
15490        o.push(l);
15491      }), i = n.seats = YT(o, a.hostModel.get("percentPrecision"));
15492    }
15493    var s = r.prototype.getDataParams.call(this, t);
15494    return s.percent = i[t] || 0, s.$vars.push("percent"), s;
15495  }, e.prototype._defaultLabelLine = function(t) {
15496    fi(t, "labelLine", ["show"]);
15497    var a = t.labelLine, n = t.emphasis.labelLine;
15498    a.show = a.show && t.label.show, n.show = n.show && t.emphasis.label.show;
15499  }, e.type = "series.pie", e.defaultOption = { z: 2, legendHoverLink: true, colorBy: "data", center: ["50%", "50%"], radius: [0, "75%"], clockwise: true, startAngle: 90, endAngle: "auto", padAngle: 0, minAngle: 0, minShowLabelAngle: 0, selectedOffset: 10, percentPrecision: 2, stillShowZeroSum: true, left: 0, top: 0, right: 0, bottom: 0, width: null, height: null, label: { rotate: 0, show: true, overflow: "truncate", position: "outer", alignTo: "none", edgeDistance: "25%", bleedMargin: 10, distanceToLabelLine: 5 }, labelLine: { show: true, length: 15, length2: 15, smooth: false, minTurnAngle: 90, maxSurfaceAngle: 90, lineStyle: { width: 1, type: "solid" } }, itemStyle: { borderWidth: 1, borderJoin: "round" }, showEmptyCircle: true, emptyCircleStyle: { color: "lightgray", opacity: 1 }, labelLayout: { hideOverlap: true }, emphasis: { scale: true, scaleSize: 5 }, avoidLabelOverlap: true, animationType: "expansion", animationDuration: 1e3, animationTypeUpdate: "transition", animationEasingUpdate: "cubicInOut", animationDurationUpdate: 500, animationEasing: "cubicInOut" }, e;
15500}(Et);
15501function M5(r) {
15502  return { seriesType: r, reset: function(e, t) {
15503    var a = e.getData();
15504    a.filterSelf(function(n) {
15505      var i = a.mapDimension("value"), o = a.get(i, n);
15506      return !(wt(o) && !isNaN(o) && o < 0);
15507    });
15508  } };
15509}
15510function I5(r) {
15511  r.registerChartView(C5), r.registerSeriesModel(D5), FA("pie", r.registerAction), r.registerLayout(lt(S5, "pie")), r.registerProcessor(Xl("pie")), r.registerProcessor(M5("pie"));
15512}
15513var L5 = function(r) {
15514  N(e, r);
15515  function e() {
15516    var t = r !== null && r.apply(this, arguments) || this;
15517    return t.type = e.type, t.hasSymbolVisual = true, t;
15518  }
15519  return e.prototype.getInitialData = function(t, a) {
15520    return aa(null, this, { useEncodeDefaulter: true });
15521  }, e.prototype.getProgressive = function() {
15522    var t = this.option.progressive;
15523    return t ?? (this.option.large ? 5e3 : this.get("progressive"));
15524  }, e.prototype.getProgressiveThreshold = function() {
15525    var t = this.option.progressiveThreshold;
15526    return t ?? (this.option.large ? 1e4 : this.get("progressiveThreshold"));
15527  }, e.prototype.brushSelector = function(t, a, n) {
15528    return n.point(a.getItemLayout(t));
15529  }, e.prototype.getZLevelKey = function() {
15530    return this.getData().count() > this.getProgressiveThreshold() ? this.id : "";
15531  }, e.type = "series.scatter", e.dependencies = ["grid", "polar", "geo", "singleAxis", "calendar"], e.defaultOption = { coordinateSystem: "cartesian2d", z: 2, legendHoverLink: true, symbolSize: 10, large: false, largeThreshold: 2e3, itemStyle: { opacity: 0.8 }, emphasis: { scale: true }, clip: true, select: { itemStyle: { borderColor: "#212121" } }, universalTransition: { divideShape: "clone" } }, e;
15532}(Et), CM = 4, P5 = /* @__PURE__ */ function() {
15533  function r() {
15534  }
15535  return r;
15536}(), R5 = function(r) {
15537  N(e, r);
15538  function e(t) {
15539    var a = r.call(this, t) || this;
15540    return a._off = 0, a.hoverDataIdx = -1, a;
15541  }
15542  return e.prototype.getDefaultShape = function() {
15543    return new P5();
15544  }, e.prototype.reset = function() {
15545    this.notClear = false, this._off = 0;
15546  }, e.prototype.buildPath = function(t, a) {
15547    var n = a.points, i = a.size, o = this.symbolProxy, s = o.shape, l = t.getContext ? t.getContext() : t, u = l && i[0] < CM, f = this.softClipShape, h;
15548    if (u) {
15549      this._ctx = l;
15550      return;
15551    }
15552    for (this._ctx = null, h = this._off; h < n.length; ) {
15553      var v = n[h++], c = n[h++];
15554      isNaN(v) || isNaN(c) || f && !f.contain(v, c) || (s.x = v - i[0] / 2, s.y = c - i[1] / 2, s.width = i[0], s.height = i[1], o.buildPath(t, s, true));
15555    }
15556    this.incremental && (this._off = h, this.notClear = true);
15557  }, e.prototype.afterBrush = function() {
15558    var t = this.shape, a = t.points, n = t.size, i = this._ctx, o = this.softClipShape, s;
15559    if (i) {
15560      for (s = this._off; s < a.length; ) {
15561        var l = a[s++], u = a[s++];
15562        isNaN(l) || isNaN(u) || o && !o.contain(l, u) || i.fillRect(l - n[0] / 2, u - n[1] / 2, n[0], n[1]);
15563      }
15564      this.incremental && (this._off = s, this.notClear = true);
15565    }
15566  }, e.prototype.findDataIndex = function(t, a) {
15567    for (var n = this.shape, i = n.points, o = n.size, s = Math.max(o[0], 4), l = Math.max(o[1], 4), u = i.length / 2 - 1; u >= 0; u--) {
15568      var f = u * 2, h = i[f] - s / 2, v = i[f + 1] - l / 2;
15569      if (t >= h && a >= v && t <= h + s && a <= v + l) return u;
15570    }
15571    return -1;
15572  }, e.prototype.contain = function(t, a) {
15573    var n = this.transformCoordToLocal(t, a), i = this.getBoundingRect
15573();
15574    if (t = n[0], a = n[1], i.contain(t, a)) {
15575      var o = this.hoverDataIdx = this.findDataIndex(t, a);
15576      return o >= 0;
15577    }
15578    return this.hoverDataIdx = -1, false;
15579  }, e.prototype.getBoundingRect = function() {
15580    var t = this._rect;
15581    if (!t) {
15582      for (var a = this.shape, n = a.points, i = a.size, o = i[0], s = i[1], l = 1 / 0, u = 1 / 0, f = -1 / 0, h = -1 / 0, v = 0; v < n.length; ) {
15583        var c = n[v++], p = n[v++];
15584        l = Math.min(c, l), f = Math.max(c, f), u = Math.min(p, u), h = Math.max(p, h);
15585      }
15586      t = this._rect = new ht(l - o / 2, u - s / 2, f - l + o, h - u + s);
15587    }
15588    return t;
15589  }, e;
15590}(mt), E5 = function() {
15591  function r() {
15592    this.group = new at();
15593  }
15594  return r.prototype.updateData = function(e, t) {
15595    this._clear();
15596    var a = this._create();
15597    a.setShape({ points: e.getLayout("points") }), this._setCommon(a, e, t);
15598  }, r.prototype.updateLayout = function(e) {
15599    var t = e.getLayout("points");
15600    this.group.eachChild(function(a) {
15601      if (a.startIndex != null) {
15602        var n = (a.endIndex - a.startIndex) * 2, i = a.startIndex * 4 * 2;
15603        t = new Float32Array(t.buffer, i, n);
15604      }
15605      a.setShape("points", t), a.reset();
15606    });
15607  }, r.prototype.incrementalPrepareUpdate = function(e) {
15608    this._clear();
15609  }, r.prototype.incrementalUpdate = function(e, t, a) {
15610    var n = this._newAdded[0], i = t.getLayout("points"), o = n && n.shape.points;
15611    if (o && o.length < 2e4) {
15612      var s = o.length, l = new Float32Array(s + i.length);
15613      l.set(o), l.set(i, s), n.endIndex = e.end, n.setShape({ points: l });
15614    } else {
15615      this._newAdded = [];
15616      var u = this._create();
15617      u.startIndex = e.start, u.endIndex = e.end, u.incremental = true, u.setShape({ points: i }), this._setCommon(u, t, a);
15618    }
15619  }, r.prototype.eachRendered = function(e) {
15620    this._newAdded[0] && e(this._newAdded[0]);
15621  }, r.prototype._create = function() {
15622    var e = new R5({ cursor: "default" });
15623    return e.ignoreCoarsePointer = true, this.group.add(e), this._newAdded.push(e), e;
15624  }, r.prototype._setCommon = function(e, t, a) {
15625    var n = t.hostModel;
15626    a = a || {};
15627    var i = t.getVisual("symbolSize");
15628    e.setShape("size", i instanceof Array ? i : [i, i]), e.softClipShape = a.clipShape || null, e.symbolProxy = qt(t.getVisual("symbol"), 0, 0, 0, 0), e.setColor = e.symbolProxy.setColor;
15629    var o = e.shape.size[0] < CM;
15630    e.useStyle(n.getModel("itemStyle").getItemStyle(o ? ["color", "shadowBlur", "shadowColor"] : ["color"]));
15631    var s = t.getVisual("style"), l = s && s.fill;
15632    l && e.setColor(l);
15633    var u = it(e);
15634    u.seriesIndex = n.seriesIndex, e.on("mousemove", function(f) {
15635      u.dataIndex = null;
15636      var h = e.hoverDataIdx;
15637      h >= 0 && (u.dataIndex = h + (e.startIndex || 0));
15638    });
15639  }, r.prototype.remove = function() {
15640    this._clear();
15641  }, r.prototype._clear = function() {
15642    this._newAdded = [], this.group.removeAll();
15643  }, r;
15644}(), k5 = function(r) {
15645  N(e, r);
15646  function e() {
15647    var t = r !== null && r.apply(this, arguments) || this;
15648    return t.type = e.type, t;
15649  }
15650  return e.prototype.render = function(t, a, n) {
15651    var i = t.getData(), o = this._updateSymbolDraw(i, t);
15652    o.updateData(i, { clipShape: this._getClipShape(t) }), this._finished = true;
15653  }, e.prototype.incrementalPrepareRender = function(t, a, n) {
15654    var i = t.getData(), o = this._updateSymbolDraw(i, t);
15655    o.incrementalPrepareUpdate(i), this._finished = false;
15656  }, e.prototype.incrementalRender = function(t, a, n) {
15657    this._symbolDraw.incrementalUpdate(t, a.getData(), { clipShape: this._getClipShape(a) }), this._finished = t.end === a.getData().count();
15658  }, e.prototype.updateTransform = function(t, a, n) {
15659    var i = t.getData();
15660    if (this.group.dirty(), !this._finished || i.count() > 1e4) return { update: true };
15661    var o = $l("").reset(t, a, n);
15662    o.progress && o.progress({ start: 0, end: i.count(), count: i.count() }, i), this._symbolDraw.updateLayout(i);
15663  }, e.prototype.eachRendered = function(t) {
15664    this._symbolDraw && this._symbolDraw.eachRendered(t);
15665  }, e.prototype._getClipShape = function(t) {
15666    if (t.get("clip", true)) {
15667      var a = t.coordinateSystem;
15668      return a && a.getArea && a.getArea(0.1);
15669    }
15670  }, e.prototype._updateSymbolDraw = function(t, a) {
15671    var n = this._symbolDraw, i = a.pipelineContext, o = i.large;
15672    return (!n || o !== this._isLargeDraw) && (n && n.remove(), n = this._symbolDraw = o ? new E5() : new Ul(), this._isLargeDraw = o, this.group.removeAll()), this.group.add(n.group), n;
15673  }, e.prototype.remove = function(t, a) {
15674    this._symbolDraw && this._symbolDraw.remove(true), this._symbolDraw = null;
15675  }, e.prototype.dispose = function() {
15676  }, e.type = "scatter", e;
15677}(Pt), O5 = function(r) {
15678  N(e, r);
15679  function e() {
15680    return r !== null && r.apply(this, arguments) || this;
15681  }
15682  return e.type = "grid", e.dependencies = ["xAxis", "yAxis"], e.layoutMode = "box", e.defaultOption = { show: false, z: 0, left: "10%", top: 60, right: "10%", bottom: 70, containLabel: false, backgroundColor: "rgba(0,0,0,0)", borderWidth: 1, borderColor: "#ccc" }, e;
15683}(gt), Fd = function(r) {
15684  N(e, r);
15685  function e() {
15686    return r !== null && r.apply(this, arguments) || this;
15687  }
15688  return e.prototype.getCoordSysModel = function() {
15689    return this.getReferringComponents("grid", Jt).models[0];
15690  }, e.type = "cartesian2dAxis", e;
15691}(gt);
15692Xt(Fd, Yo);
15693var AM = { show: true, z: 0, inverse: false, name: "", nameLocation: "end", nameRotate: null, nameTruncate: { maxWidth: null, ellipsis: "...", placeholder: "." }, nameTextStyle: {}, nameGap: 15, silent: false, triggerEvent: false, tooltip: { show: false }, axisPointer: {}, axisLine: { show: true, onZero: true, onZeroAxisIndex: null, lineStyle: { color: "#6E7079", width: 1, type: "solid" }, symbol: ["none", "none"], symbolSize: [10, 15] }, axisTick: { show: true, inside: false, length: 5, lineStyle: { width: 1 } }, axisLabel: { show: true, inside: false, rotate: 0, showMinLabel: null, showMaxLabel: null, margin: 8, fontSize: 12 }, splitLine: { show: true, showMinLine: true, showMaxLine: true, lineStyle: { color: ["#E0E6F1"], width: 1, type: "solid" } }, splitArea: { show: false, areaStyle: { color: ["rgba(250,250,250,0.2)", "rgba(210,219,238,0.2)"] } } }, N5 = ut({ boundaryGap: true, deduplication: null, splitLine: { show: false }, axisTick: { alignWithLabel: false, interval: "auto" }, axisLabel: { interval: "auto" } }, AM), Jy = ut({ boundaryGap: [0, 0], axisLine: { show: "auto" }, axisTick: { show: "auto" }, splitNumber: 5, minorTick: { show: false, splitNumber: 5, length: 3, lineStyle: {} }, minorSplitLine: { show: false, lineStyle: { color: "#F4F7FD", width: 1 } } }, AM), B5 = ut({ splitNumber: 6, axisLabel: { showMinLabel: false, showMaxLabel: false, rich: { primary: { fontWeight: "bold" } } }, splitLine: { show: false } }, Jy), z5 = Q({ logBase: 10 }, Jy);
15694const DM = { category: N5, value: Jy, time: B5, log: z5 };
15695var V5 = { value: 1, category: 1, time: 1, log: 1 };
15696function wo(r, e, t, a) {
15697  D(V5, function(n, i) {
15698    var o = ut(ut({}, DM[i], true), a, true), s = function(l) {
15699      N(u, l);
15700      function u() {
15701        var f = l !== null && l.apply(this, arguments) || this;
15702        return f.type = e + "Axis." + i, f;
15703      }
15704      return u.prototype.mergeDefaultAndTheme = function(f, h) {
15705        var v = hl(this), c = v ? Bo(f) : {}, p = h.getTheme();
15706        ut(f, p.get(i + "Axis")), ut(f, this.getDefaultOption()), f.type = gS(f), v && an(f, c, v);
15707      }, u.prototype.optionUpdated = function() {
15708        var f = this.option;
15709        f.type === "category" && (this.__ordinalMeta = Ed.createByAxisModel(this));
15710      }, u.prototype.getCategories = function(f) {
15711        var h = this.option;
15712        if (h.type === "category") return f ? h.data : this.__ordinalMeta.categories;
15713      }, u.prototype.getOrdinalMeta = function() {
15714        return this.__ordinalMeta;
15715      }, u.type = e + "Axis." + i, u.defaultOption = o, u;
15716    }(t);
15717    r.registerComponentModel(s);
15718  }), r.registerSubTypeDefaulter(e + "Axis", gS);
15719}
15720function gS(r) {
15721  return r.type || (r.data ? "category" : "value");
15722}
15723var G5 = function() {
15724  function r(e) {
15725    this.type = "cartesian", this._dimList = [], this._axes = {}, this.name = e || "";
15726  }
15727  return r.prototype.getAxis = function(e) {
15728    return this._axes[e];
15729  }, r.prototype.getAxes = function() {
15730    return G(this._dimList, function(e) {
15731      return this._axes[e];
15732    }, this);
15733  }, r.prototype.getAxesByScale = function(e) {
15734    return e = e.toLowerCase(), Ct(this.getAxes(), function(t) {
15735      return t.scale.type === e;
15736    });
15737  }, r.prototype.addAxis = function(e) {
15738    var t = e.dim;
15739    this._axes[t] = e, this._dimList.push(t);
15740  }, r;
15741}(), Hd = ["x", "y"];
15742function yS(r) {
15743  return r.type === "interval" || r.type === "time";
15744}
15745var F5 = function(r) {
15746  N(e, r);
15747  function e() {
15748    var t = r !== null && r.apply(this, arguments) || this;
15749    return t.type = "cartesian2d", t.dimensions = Hd, t;
15750  }
15751  return e.prototype.calcAffineTransform = function() {
15752    this._transform = this._invTransform = null;
15753    var t = this.getAxis("x").scale, a = this.getAxis("y").scale;
15754    if (!(!yS(t) || !yS(a))) {
15755      var n = t.getExtent(), i = a.getExtent(), o = this.dataToPoint([n[0], i[0]]), s = this.dataToPoint([n[1], i[1]]), l = n[1] - n[0], u = i[1] - i[0];
15756      if (!(!l || !u)) {
15757        var f = (s[0] - o[0]) / l, h = (s[1] - o[1]) / u, v = o[0] - n[0] * f, c = o[1] - i[0] * h, p = this._transform = [f, 0, 0, h, v, c];
15758        this._invTransform = _i([], p);
15759      }
15760    }
15761  }, e.prototype.getBaseAxis = function() {
15762    return this.getAxesByScale("ordinal")[0] || this.getAxesByScale("time")[0] || this.getAxis("x");
15763  }, e.prototype.containPoint = function(t) {
15764    var a = this.getAxis("x"), n = this.getAxis("y");
15765    return a.contain(a.toLocalCoord(t[0])) && n.contain(n.toLocalCoord(t[1]));
15766  }, e.prototype.containData = function(t) {
15767    return this.getAxis("x").containData(t[0]) && this.getAxis("y").containData(t[1]);
15768  }, e.prototype.containZone = function(t, a) {
15769    var n = this.dataToPoint(t), i = this.dataToPoint(a), o = this.getArea(), s = new ht(n[0], n[1], i[0] - n[0], i[1] - n[1]);
15770    return o.intersect(s);
15771  }, e.prototype.dataToPoint = function(t, a, n) {
15772    n = n || [];
15773    var i = t[0], o = t[1];
15774    if (this._transform && i != null && isFinite(i) && o != null && isFinite(o)) return he(n, t, this._transform);
15775    var s = this.getAxis("x"), l = this.getAxis("y");
15776    return n[0] = s.toGlobalCoord(s.dataToCoord(i, a)), n[1] = l.toGlobalCoord(l.dataToCoord(o, a)), n;
15777  }, e.prototype.clampData = function(t, a) {
15778    var n = this.getAxis("x").scale, i = this.getAxis("y").scale, o = n.getExtent(), s = i.getExtent(), l = n.parse(t[0]), u = i.parse(t[1]);
15779    return a = a || [], a[0] = Math.min(Math.max(Math.min(o[0], o[1]), l), Math.max(o[0], o[1])), a[1] = Math.min(Math.max(Math.min(s[0], s[1]), u), Math.max(s[0], s[1])), a;
15780  }, e.prototype.pointToData = function(t, a) {
15781    var n = [];
15782    if (this._invTransform) return he(n, t, this._invTransform);
15783    var i = this.getAxis("x"), o = this.getAxis("y");
15784    return n[0] = i.coordToData(i.toLocalCoord(t[0]), a), n[1] = o.coordToData(o.toLocalCoord(t[1]), a), n;
15785  }, e.prototype.getOtherAxis = function(t) {
15786    return this.getAxis(t.dim === "x" ? "y" : "x");
15787  }, e.prototype.getArea = function(t) {
15788    t = t || 0;
15789    var a = this.getAxis("x").getGlobalExtent(), n = this.getAxis("y").getGlobalExtent(), i = Math.min(a[0], a[1]) - t, o = Math.min(n[0], n[1]) - t, s = Math.max(a[0], a[1]) - i + t, l = Math.max(n[0], n[1]) - o + t;
15790    return new ht(i, o, s, l);
15791  }, e;
15792}(G5), H5 = function(r) {
15793  N(e, r);
15794  function e(t, a, n, i, o) {
15795    var s = r.call(this, t, a, n) || this;
15796    return s.index = 0, s.type = i || "value", s.position = o || "bottom", s;
15797  }
15798  return e.prototype.isHorizontal = function() {
15799    var t = this.position;
15800    return t === "top" || t === "bottom";
15801  }, e.prototype.getGlobalExtent = function(t) {
15802    var a = this.getExtent();
15803    return a[0] = this.toGlobalCoord(a[0]), a[1] = this.toGlobalCoord(a[1]), t && a[0] > a[1] && a.reverse(), a;
15804  }, e.prototype.pointToData = function(t, a) {
15805    return this.coordToData(this.toLocalCoord(t[this.dim === "x" ? 0 : 1]), a);
15806  }, e.prototype.setCategorySortInfo = function(t) {
15807    if (this.type !== "category") return false;
15808    this.model.option.categorySortInfo = t, this.scale.setSortInfo(t);
15809  }, e;
15810}(yr);
15811function Wd(r, e, t) {
15812  t = t || {};
15813  var a = r.coordinateSystem, n = e.axis, i = {}, o = n.getAxesOnZeroOf()[0], s = n.position, l = o ? "onZero" : s, u = n.dim, f = a.getRect(), h = [f.x, f.x + f.width, f.y, f.y + f.height], v = { left: 0, right: 1, top: 0, bottom: 1, onZero: 2 }, c = e.get("offset") || 0, p = u === "x" ? [h[2] - c, h[3] + c] : [h[0] - c, h[1] + c];
15814  if (o) {
15815    var d = o.toGlobalCoord(o.dataToCoord(0));
15816    p[v.onZero] = Math.max(Math.min(d, p[1]), p[0]);
15817  }
15818  i.position = [u === "y" ? p[v[l]] : h[0], u === "x" ? p[v[l]] : h[3]], i.rotation = Math.PI / 2 * (u === "x" ? 0 : 1);
15819  var g = { top: -1, bottom: 1, left: -1, right: 1 };
15820  i.labelDirection = i.tickDirection = i.nameDirection = g[s], i.labelOffset = o ? p[v[s]] - p[v.onZero] : 0, e.get(["axisTick", "inside"]) && (i.tickDirection = -i.tickDirection), ne(t.labelInside, e.get(["axisLabel", "inside"])) && (i.labelDirection = -i.labelDirection);
15821  var y = e.get(["axisLabel", "rotate"]);
15822  return i.labelRotate = l === "top" ? -y : y, i.z2 = 1, i;
15823}
15824function mS(r) {
15825  return r.get("coordinateSystem") === "cartesian2d";
15826}
15827function _S(r) {
15828  var e = { xAxisModel: null, yAxisModel: null };
15829  return D(e, function(t, a) {
15830    var n = a.replace(/Model$/, ""), i = r.getReferringComponents(n, Jt).models[0];
15831    e[a] = i;
15832  }), e;
15833}
15834var Lc = Math.log;
15835function MM(r, e, t) {
15836  var a = ba.prototype, n = a.getTicks.call(t), i = a.getTicks.call(t, true), o = n.length - 1, s = a.getInterval.call(t), l = PD(r, e), u = l.extent, f = l.fixMin, h = l.fixMax;
15837  if (r.type === "log") {
15838    var v = Lc(r.base);
15839    u = [Lc(u[0]) / v, Lc(u[1]) / v];
15840  }
15841  r.setExtent(u[0], u[1]), r.calcNiceExtent({ splitNumber: o, fixMin: f, fixMax: h });
15842  var c = a.getExtent.call(r);
15843  f && (u[0] = c[0]), h && (u[1] = c[1]);
15844  var p = a.getInterval.call(r), d = u[0], g = u[1];
15845  if (f && h) p = (g - d) / o;
15846  else if (f) for (g = u[0] + p * o; g < u[1] && isFinite(g) && isFinite(u[1]); ) p = dc(p), g = u[0] + p * o;
15847  else if (h) for (d = u[1] - p * o; d > u[0] && isFinite(d) && isFinite(u[0]); ) p = dc(p), d = u[1] - p * o;
15848  else {
15849    var y = r.getTicks().length - 1;
15850    y > o && (p = dc(p));
15851    var m = p * o;
15852    g = Math.ceil(u[1] / p) * p, d = Ut(g - m), d < 0 && u[0] >= 0 ? (d = 0, g = Ut(m)) : g > 0 && u[1] <= 0 && (g = 0, d = -Ut(m));
15853  }
15854  var _ = (n[0].value - i[0].value) / s, S = (n[o].value - i[o].value) / s;
15855  a.setExtent.call(r, d + p * _, g + p * S), a.setInterval.call(r, p), (_ || S) && a.setNiceExtent.call(r, d + p, g - p);
15856}
15857var W5 = function() {
15858  function r(e, t, a) {
15859    this.type = "grid", this._coordsMap = {}, this._coordsList = [], this._axesMap = {}, this._axesList = [], this.axisPointerEnabled = true, this.dimensions = Hd, this._initCartesian(e, t, a), this.model = e;
15860  }
15861  return r.prototype.getRect = function() {
15862    return this._rect;
15863  }, r.prototype.update = function(e, t) {
15864    var a = this._axesMap;
15865    this._updateScale(e, this.model);
15866    function n(o) {
15867      var s, l = _t(o), u = l.length;
15868      if (u) {
15869        for (var f = [], h = u - 1; h >= 0; h--) {
15870          var v = +l[h], c = o[v], p = c.model, d = c.scale;
15871          kd(d) && p.get("alignTicks") && p.get("interval") == null ? f.push(c) : (di(d, p), kd(d) && (s = c));
15872        }
15873        f.length && (s || (s = f.pop(), di(s.scale, s.model)), D(f, function(g) {
15874          MM(g.scale, g.model, s.scale);
15875        }));
15876      }
15877    }
15878    n(a.x), n(a.y);
15879    var i = {};
15880    D(a.x, function(o) {
15881      SS(a, "y", o, i);
15882    }), D(a.y, function(o) {
15883      SS(a, "x", o, i);
15884    }), this.resize(this.model, t);
15885  }, r.prototype.resize = function(e, t, a) {
15886    var n = e.getBoxLayoutParams(), i = !a && e.get("containLabel"), o = Qt(n, { width: t.getWidth(), height: t.getHeight() });
15887    this._rect = o;
15888    var s = this._axesList;
15889    l(), i && (D(s, function(u) {
15890      if (!u.model.get(["axisLabel", "inside"])) {
15891        var f = uz(u);
15892        if (f) {
15893          var h = u.isHorizontal() ? "height" : "width", v = u.model.get(["axisLabel", "margin"]);
15894          o[h] -= f[h] + v, u.position === "top" ? o.y += f.height + v : u.position === "left" && (o.x += f.width + v);
15895        }
15896      }
15897    }), l()), D(this._coordsList, function(u) {
15898      u.calcAffineTransform();
15899    });
15900    function l() {
15901      D(s, function(u) {
15902        var f = u.isHorizontal(), h = f ? [0, o.width] : [0, o.height], v = u.inverse ? 1 : 0;
15903        u.setExtent(h[v], h[1 - v]), U5(u, f ? o.x : o.y);
15904      });
15905    }
15906  }, r.prototype.getAxis = function(e, t) {
15907    var a = this._axesMap[e];
15908    if (a != null) return a[t || 0];
15909  }, r.prototype.getAxes = function() {
15910    return this._axesList.slice();
15911  }, r.prototype.getCartesian = function(e, t) {
15912    if (e != null && t != null) {
15913      var a = "x" + e + "y" + t;
15914      return this._coordsMap[a];
15915    }
15916    tt(e) && (t = e.yAxisIndex, e = e.xAxisIndex);
15917    for (var n = 0, i = this._coordsList; n < i.length; n++) if (i[n].getAxis("x").index === e || i[n].getAxis("y").index === t) return i[n];
15918  }, r.prototype.getCartesians = function() {
15919    return this._coordsList.slice();
15920  }, r.prototype.convertToPixel = function(e, t, a) {
15921    var n = this._findConvertTarget(t);
15922    return n.cartesian ? n.cartesian.dataToPoint(a) : n.axis ? n.axis.toGlobalCoord(n.axis.dataToCoord(a)) : null;
15923  }, r.prototype.convertFromPixel = function(e, t, a) {
15924    var n = this._findConvertTarget(t);
15925    return n.cartesian ? n.cartesian.pointToData(a) : n.axis ? n.axis.coordToData(n.axis.toLocalCoord(a)) : null;
15926  }, r.prototype._findConvertTarget = function(e) {
15927    var t = e.seriesModel, a = e.xAxisModel || t && t.getReferringComponents("xAxis", Jt).models[0], n = e.yAxisModel || t && t.getReferringComponents("yAxis", Jt).models[0], i = e.gridModel, o = this._coordsList, s, l;
15928    if (t) s = t.coordinateSystem, vt(o, s) < 0 && (s = null);
15929    else if (a && n) s = this.getCartesian(a.componentIndex, n.componentIndex);
15930    else if (a) l = this.getAxis("x", a.componentIndex);
15931    else if (n) l = this.getAxis("y", n.componentIndex);
15932    else if (i) {
15933      var u = i.coordinateSystem;
15934      u === this && (s = this._coordsList[0]);
15935    }
15936    return { cartesian: s, axis: l };
15937  }, r.prototype.containPoint = function(e) {
15938    var t = this._coordsList[0];
15939    if (t) return t.containPoint(e);
15940  }, r.prototype._initCartesian = function(e, t, a) {
15941    var n = this, i = this, o = { left: false, right: false, top: false, bottom: false }, s = { x: {}, y: {} }, l = { x: 0, y: 0 };
15942    if (t.eachComponent("xAxis", u("x"), this), t.eachComponent("yAxis", u("y"), this), !l.x || !l.y) {
15943      this._axesMap = {}, this._axesList = [];
15944      return;
15945    }
15946    this._axesMap = s, D(s.x, function(f, h) {
15947      D(s.y, function(v, c) {
15948        var p = "x" + h + "y" + c, d = new F5(p);
15949        d.master = n, d.model = e, n._coordsMap[p] = d, n._coordsList.push(d), d.addAxis(f), d.addAxis(v);
15950      });
15951    });
15952    function u(f) {
15953      return function(h, v) {
15954        if (Pc(h, e)) {
15955          var c = h.get("position");
15956          f === "x" ? c !== "top" && c !== "bottom" && (c = o.bottom ? "top" : "bottom") : c !== "left" && c !== "right" && (c = o.left ? "right" : "left"), o[c] = true;
15957          var p = new H5(f, Hl(h), [0, 0], h.get("type"), c), d = p.type === "category";
15958          p.onBand = d && h.get("boundaryGap"), p.inverse = h.get("inverse"), h.axis = p, p.model = h, p.grid = i, p.index = v, i._axesList.push(p), s[f][v] = p, l[f]++;
15959        }
15960      };
15961    }
15962  }, r.prototype._updateScale = function(e, t) {
15963    D(this._axesList, function(n) {
15964      if (n.scale.setExtent(1 / 0, -1 / 0), n.type === "category") {
15965        var i = n.model.get("categorySortInfo");
15966        n.scale.setSortInfo(i);
15967      }
15968    }), e.eachSeries(function(n) {
15969      if (mS(n)) {
15970        var i = _S(n), o = i.xAxisModel, s = i.yAxisModel;
15971        if (!Pc(o, t) || !Pc(s, t)) return;
15972        var l = this.getCartesian(o.componentIndex, s.componentIndex), u = n.getData(), f = l.getAxis("x"), h = l.getAxis("y");
15973        a(u, f), a(u, h);
15974      }
15975    }, this);
15976    function a(n, i) {
15977      D(qf(n, i.dim), function(o) {
15978        i.scale.unionExtentFromData(n, o);
15979      });
15980    }
15981  }, r.prototype.getTooltipAxes = function(e) {
15982    var t = [], a = [];
15983    return D(this.getCartesians(), function(n) {
15984      var i = e != null && e !== "auto" ? n.getAxis(e) : n.getBaseAxis(), o = n.getOtherAxis(i);
15985      vt(t, i) < 0 && t.push(i), vt(a, o) < 0 && a.push(o);
15986    }), { baseAxes: t, otherAxes: a };
15987  }, r.create = function(e, t) {
15988    var a = [];
15989    return e.eachComponent("grid", function(n, i) {
15990      var o = new r(n, e, t);
15991      o.name = "grid_" + i, o.resize(n, t, true), n.coordinateSystem = o, a.push(o);
15992    }), e.eachSeries(function(n) {
15993      if (mS(n)) {
15994        var i = _S(n), o = i.xAxisModel, s = i.yAxisModel, l = o.getCoordSysModel(), u = l.coordinateSystem;
15995        n.coordinateSystem = u.getCartesian(o.componentIndex, s.componentIndex);
15996      }
15997    }), a;
15998  }, r.dimensions = Hd, r;
15999}();
16000function Pc(r, e) {
16001  return r.getCoordSysModel() === e;
16002}
16003function SS(r, e, t, a) {
16004  t.getAxesOnZeroOf = function() {
16005    return i ? [i] : [];
16006  };
16007  var n = r[e], i, o = t.model, s = o.get(["axisLine", "onZero"]), l = o.get(["axisLine", "onZeroAxisIndex"]);
16008  if (!s) return;
16009  if (l != null) xS(n[l]) && (i = n[l]);
16010  else for (var u in n) if (n.hasOwnProperty(u) && xS(n[u]) && !a[f(n[u])]) {
16011    i = n[u];
16012    break;
16013  }
16014  i && (a[f(i)] = true);
16015  function f(h) {
16016    return h.dim + "_" + h.index;
16017  }
16018}
16019function xS(r) {
16020  return r && r.type !== "category" && r.type !== "time" && lz(r);
16021}
16022function U5(r, e) {
16023  var t = r.getExtent(), a = t[0] + t[1];
16024  r.toGlobalCoord = r.dim === "x" ? function(n) {
16025    return n + e;
16026  } : function(n) {
16027    return a - n + e;
16028  }, r.toLocalCoord = r.dim === "x" ? function(n) {
16029    return n - e;
16030  } : function(n) {
16031    return a - n + e;
16032  };
16033}
16034var Wa = Math.PI, Ee = function() {
16035  function r(e, t) {
16036    this.group = new at(), this.opt = t, this.axisModel = e, Q(t, { labelOffset: 0, nameDirection: 1, tickDirection: 1, labelDirection: 1, silent: true, handleAutoShown: function() {
16037      return true;
16038    } });
16039    var a = new at({ x: t.position[0], y: t.position[1], rotation: t.rotation });
16040    a.updateTransform(), this._transformGroup = a;
16041  }
16042  return r.prototype.hasBuilder = function(e) {
16043    return !!bS[e];
16044  }, r.prototype.add = function(e) {
16045    bS[e](this.opt, this.axisModel, this.group, this._transformGroup);
16046  }, r.prototype.getGroup = function() {
16047    return this.group;
16048  }, r.innerTextLayout = function(e, t, a) {
16049    var n = Hg(t - e), i, o;
16050    return yo(n) ? (o = a > 0 ? "top" : "bottom", i = "center") : yo(n - Wa) ? (o = a > 0 ? "bottom" : "top", i = "center") : (o = "middle", n > 0 && n < Wa ? i = a > 0 ? "right" : "left" : i = a > 0 ? "left" : "right"), { rotation: n, textAlign: i, textVerticalAlign: o };
16051  }, r.makeAxisEventDataBase = function(e) {
16052    var t = { componentType: e.mainType, componentIndex: e.componentIndex };
16053    return t[e.mainType + "Index"] = e.componentIndex, t;
16054  }, r.isLabelSilent = function(e) {
16055    var t = e.get("tooltip");
16056    return e.get("silent") || !(e.get("triggerEvent") || t && t.show);
16057  }, r;
16058}
16058(), bS = { axisLine: function(r, e, t, a) {
16059  var n = e.get(["axisLine", "show"]);
16060  if (n === "auto" && r.handleAutoShown && (n = r.handleAutoShown("axisLine")), !!n) {
16061    var i = e.axis.getExtent(), o = a.transform, s = [i[0], 0], l = [i[1], 0], u = s[0] > l[0];
16062    o && (he(s, s, o), he(l, l, o));
16063    var f = z({ lineCap: "round" }, e.getModel(["axisLine", "lineStyle"]).getLineStyle()), h = new ee({ shape: { x1: s[0], y1: s[1], x2: l[0], y2: l[1] }, style: f, strokeContainThreshold: r.strokeContainThreshold || 5, silent: true, z2: 1 });
16064    _o(h.shape, h.style.lineWidth), h.anid = "line", t.add(h);
16065    var v = e.get(["axisLine", "symbol"]);
16066    if (v != null) {
16067      var c = e.get(["axisLine", "symbolSize"]);
16068      Y(v) && (v = [v, v]), (Y(c) || wt(c)) && (c = [c, c]);
16069      var p = wi(e.get(["axisLine", "symbolOffset"]) || 0, c), d = c[0], g = c[1];
16070      D([{ rotate: r.rotation + Math.PI / 2, offset: p[0], r: 0 }, { rotate: r.rotation - Math.PI / 2, offset: p[1], r: Math.sqrt((s[0] - l[0]) * (s[0] - l[0]) + (s[1] - l[1]) * (s[1] - l[1])) }], function(y, m) {
16071        if (v[m] !== "none" && v[m] != null) {
16072          var _ = qt(v[m], -d / 2, -g / 2, d, g, f.stroke, true), S = y.r + y.offset, b = u ? l : s;
16073          _.attr({ rotation: y.rotate, x: b[0] + S * Math.cos(r.rotation), y: b[1] - S * Math.sin(r.rotation), silent: true, z2: 11 }), t.add(_);
16074        }
16075      });
16076    }
16077  }
16078}, axisTickLabel: function(r, e, t, a) {
16079  var n = X5(t, a, e, r), i = q5(t, a, e, r);
16080  if ($5(e, i, n), Z5(t, a, e, r.tickDirection), e.get(["axisLabel", "hideOverlap"])) {
16081    var o = YD(G(i, function(s) {
16082      return { label: s, priority: s.z2, defaultAttr: { ignore: s.ignore } };
16083    }));
16084    ZD(o);
16085  }
16086}, axisName: function(r, e, t, a) {
16087  var n = ne(r.axisName, e.get("name"));
16088  if (n) {
16089    var i = e.get("nameLocation"), o = r.nameDirection, s = e.getModel("nameTextStyle"), l = e.get("nameGap") || 0, u = e.axis.getExtent(), f = u[0] > u[1] ? -1 : 1, h = [i === "start" ? u[0] - f * l : i === "end" ? u[1] + f * l : (u[0] + u[1]) / 2, TS(i) ? r.labelOffset + o * l : 0], v, c = e.get("nameRotate");
16090    c != null && (c = c * Wa / 180);
16091    var p;
16092    TS(i) ? v = Ee.innerTextLayout(r.rotation, c ?? r.rotation, o) : (v = Y5(r.rotation, i, c || 0, u), p = r.axisNameAvailableWidth, p != null && (p = Math.abs(p / Math.sin(v.rotation)), !isFinite(p) && (p = null)));
16093    var d = s.getFont(), g = e.get("nameTruncate", true) || {}, y = g.ellipsis, m = ne(r.nameTruncateMaxWidth, g.maxWidth, p), _ = new St({ x: h[0], y: h[1], rotation: v.rotation, silent: Ee.isLabelSilent(e), style: Nt(s, { text: n, font: d, overflow: "truncate", width: m, ellipsis: y, fill: s.getTextColor() || e.get(["axisLine", "lineStyle", "color"]), align: s.get("align") || v.textAlign, verticalAlign: s.get("verticalAlign") || v.textVerticalAlign }), z2: 1 });
16094    if (Si({ el: _, componentModel: e, itemName: n }), _.__fullText = n, _.anid = "name", e.get("triggerEvent")) {
16095      var S = Ee.makeAxisEventDataBase(e);
16096      S.targetType = "axisName", S.name = n, it(_).eventData = S;
16097    }
16098    a.add(_), _.updateTransform(), t.add(_), _.decomposeTransform();
16099  }
16100} };
16101function Y5(r, e, t, a) {
16102  var n = Hg(t - r), i, o, s = a[0] > a[1], l = e === "start" && !s || e !== "start" && s;
16103  return yo(n - Wa / 2) ? (o = l ? "bottom" : "top", i = "center") : yo(n - Wa * 1.5) ? (o = l ? "top" : "bottom", i = "center") : (o = "middle", n < Wa * 1.5 && n > Wa / 2 ? i = l ? "left" : "right" : i = l ? "right" : "left"), { rotation: n, textAlign: i, textVerticalAlign: o };
16104}
16105function $5(r, e, t) {
16106  if (!RD(r.axis)) {
16107    var a = r.get(["axisLabel", "showMinLabel"]), n = r.get(["axisLabel", "showMaxLabel"]);
16108    e = e || [], t = t || [];
16109    var i = e[0], o = e[1], s = e[e.length - 1], l = e[e.length - 2], u = t[0], f = t[1], h = t[t.length - 1], v = t[t.length - 2];
16110    a === false ? (Je(i), Je(u)) : wS(i, o) && (a ? (Je(o), Je(f)) : (Je(i), Je(u))), n === false ? (Je(s), Je(h)) : wS(l, s) && (n ? (Je(l), Je(v)) : (Je(s), Je(h)));
16111  }
16112}
16113function Je(r) {
16114  r && (r.ignore = true);
16115}
16116function wS(r, e) {
16117  var t = r && r.getBoundingRect().clone(), a = e && e.getBoundingRect().clone();
16118  if (!(!t || !a)) {
16119    var n = Pl([]);
16120    return ln(n, n, -r.rotation), t.applyTransform(qr([], n, r.getLocalTransform())), a.applyTransform(qr([], n, e.getLocalTransform())), t.intersect(a);
16121  }
16122}
16123function TS(r) {
16124  return r === "middle" || r === "center";
16125}
16126function IM(r, e, t, a, n) {
16127  for (var i = [], o = [], s = [], l = 0; l < r.length; l++) {
16128    var u = r[l].coord;
16129    o[0] = u, o[1] = 0, s[0] = u, s[1] = t, e && (he(o, o, e), he(s, s, e));
16130    var f = new ee({ shape: { x1: o[0], y1: o[1], x2: s[0], y2: s[1] }, style: a, z2: 2, autoBatch: true, silent: true });
16131    _o(f.shape, f.style.lineWidth), f.anid = n + "_" + r[l].tickValue, i.push(f);
16132  }
16133  return i;
16134}
16135function X5(r, e, t, a) {
16136  var n = t.axis, i = t.getModel("axisTick"), o = i.get("show");
16137  if (o === "auto" && a.handleAutoShown && (o = a.handleAutoShown("axisTick")), !(!o || n.scale.isBlank())) {
16138    for (var s = i.getModel("lineStyle"), l = a.tickDirection * i.get("length"), u = n.getTicksCoords(), f = IM(u, e.transform, l, Q(s.getLineStyle(), { stroke: t.get(["axisLine", "lineStyle", "color"]) }), "ticks"), h = 0; h < f.length;
16138 h++) r.add(f[h]);
16139    return f;
16140  }
16141}
16142function Z5(r, e, t, a) {
16143  var n = t.axis, i = t.getModel("minorTick");
16144  if (!(!i.get("show") || n.scale.isBlank())) {
16145    var o = n.getMinorTicksCoords();
16146    if (o.length) for (var s = i.getModel("lineStyle"), l = a * i.get("length"), u = Q(s.getLineStyle(), Q(t.getModel("axisTick").getLineStyle(), { stroke: t.get(["axisLine", "lineStyle", "color"]) })), f = 0; f < o.length; f++) for (var h = IM(o[f], e.transform, l, u, "minorticks_" + f), v = 0; v < h.length; v++) r.add(h[v]);
16147  }
16148}
16149function q5(r, e, t, a) {
16150  var n = t.axis, i = ne(a.axisLabelShow, t.get(["axisLabel", "show"]));
16151  if (!(!i || n.scale.isBlank())) {
16152    var o = t.getModel("axisLabel"), s = o.get("margin"), l = n.getViewLabels(), u = (ne(a.labelRotate, o.get("rotate")) || 0) * Wa / 180, f = Ee.innerTextLayout(a.rotation, u, a.labelDirection), h = t.getCategories && t.getCategories(true), v = [], c = Ee.isLabelSilent(t), p = t.get("triggerEvent");
16153    return D(l, function(d, g) {
16154      var y = n.scale.type === "ordinal" ? n.scale.getRawOrdinalNumber(d.tickValue) : d.tickValue, m = d.formattedLabel, _ = d.rawLabel, S = o;
16155      if (h && h[y]) {
16156        var b = h[y];
16157        tt(b) && b.textStyle && (S = new At(b.textStyle, o, t.ecModel));
16158      }
16159      var x = S.getTextColor() || t.get(["axisLine", "lineStyle", "color"]), w = n.dataToCoord(y), T = S.getShallow("align", true) || f.textAlign, C = st(S.getShallow("alignMinLabel", true), T), A = st(S.getShallow("alignMaxLabel", true), T), M = S.getShallow("verticalAlign", true) || S.getShallow("baseline", true) || f.textVerticalAlign, I = st(S.getShallow("verticalAlignMinLabel", true), M), L = st(S.getShallow("verticalAlignMaxLabel", true), M), P = new St({ x: w, y: a.labelOffset + a.labelDirection * s, rotation: f.rotation, silent: c, z2: 10 + (d.level || 0), style: Nt(S, { text: m, align: g === 0 ? C : g === l.length - 1 ? A : T, verticalAlign: g === 0 ? I : g === l.length - 1 ? L : M, fill: j(x) ? x(n.type === "category" ? _ : n.type === "value" ? y + "" : y, g) : x }) });
16160      if (P.anid = "label_" + y, Si({ el: P, componentModel: t, itemName: m, formatterParamsExtra: { isTruncated: function() {
16161        return P.isTruncated;
16162      }, value: _, tickIndex: g } }), p) {
16163        var R = Ee.makeAxisEventDataBase(t);
16164        R.targetType = "axisLabel", R.value = _, R.tickIndex = g, n.type === "category" && (R.dataIndex = y), it(P).eventData = R;
16165      }
16166      e.add(P), P.updateTransform(), v.push(P), r.add(P), P.decomposeTransform();
16167    }), v;
16168  }
16169}
16170function K5(r, e) {
16171  var t = { axesInfo: {}, seriesInvolved: false, coordSysAxesInfo: {}, coordSysMap: {} };
16172  return j5(t, r, e), t.seriesInvolved && Q5(t, r), t;
16173}
16174function j5(r, e, t) {
16175  var a = e.getComponent("tooltip"), n = e.getComponent("axisPointer"), i = n.get("link", true) || [], o = [];
16176  D(t.getCoordinateSystems(), function(s) {
16177    if (!s.axisPointerEnabled) return;
16178    var l = Sl(s.model), u = r.coordSysAxesInfo[l] = {};
16179    r.coordSysMap[l] = s;
16180    var f = s.model, h = f.getModel("tooltip", a);
16181    if (D(s.getAxes(), lt(d, false, null)), s.getTooltipAxes && a && h.get("show")) {
16182      var v = h.get("trigger") === "axis", c = h.get(["axisPointer", "type"]) === "cross", p = s.getTooltipAxes(h.get(["axisPointer", "axis"]));
16183      (v || c) && D(p.baseAxes, lt(d, c ? "cross" : true, v)), c && D(p.otherAxes, lt(d, "cross", false));
16184    }
16185    function d(g, y, m) {
16186      var _ = m.model.getModel("axisPointer", n), S = _.get("show");
16187      if (!(!S || S === "auto" && !g && !Ud(_))) {
16188        y == null && (y = _.get("triggerTooltip")), _ = g ? J5(m, h, n, e, g, y) : _;
16189        var b = _.get("snap"), x = _.get("triggerEmphasis"), w = Sl(m.model), T = y || b || m.type === "category", C = r.axesInfo[w] = { key: w, axis: m, coordSys: s, axisPointerModel: _, triggerTooltip: y, triggerEmphasis: x, involveSeries: T, snap: b, useHandle: Ud(_), seriesModels: [], linkGroup: null };
16190        u[w] = C, r.seriesInvolved = r.seriesInvolved || T;
16191        var A = tG(i, m);
16192        if (A != null) {
16193          var M = o[A] || (o[A] = { axesInfo: {} });
16194          M.axesInfo[w] = C, M.mapper = i[A].mapper, C.linkGroup = M;
16195        }
16196      }
16197    }
16198  });
16199}
16200function J5(r, e, t, a, n, i) {
16201  var o = e.getModel("axisPointer"), s = ["type", "snap", "lineStyle", "shadowStyle", "label", "animation", "animationDurationUpdate", "animationEasingUpdate", "z"], l = {};
16202  D(s, function(v) {
16203    l[v] = rt(o.get(v));
16204  }), l.snap = r.type !== "category" && !!i, o.get("type") === "cross" && (l.type = "line");
16205  var u = l.label || (l.label = {});
16206  if (u.show == null && (u.show = false), n === "cross") {
16207    var f = o.get(["label", "show"]);
16208    if (u.show = f ?? true, !i) {
16209      var h = l.lineStyle = o.get("crossStyle");
16210      h && Q(u, h.textStyle);
16211    }
16212  }
16213  return r.model.getModel("axisPointer", new At(l, t, a));
16214}
16215function Q5(r, e) {
16216  e.eachSeries(function(t) {
16217    var a = t.coordinateSystem, n = t.get(["tooltip", "trigger"], true), i = t.get(["tooltip", "show"], true);
16218    !a || n === "none" || n === false || n === "item" || i === false || t.get(["axisPointer", "show"], true) === false || D(r.coordSysAxesInfo[Sl(a.model)], function(o) {
16219      var s = o.axis;
16220      a.getAxis(s.dim) === s && (o.seriesModels.push(t), o.seriesDataCount == null && (o.seriesDataCount = 0), o.seriesDataCount += t.getData().count());
16221    });
16222  });
16223}
16224function tG(r, e) {
16225  for (var t = e.model, a = e.dim, n = 0; n < r.length; n++) {
16226    var i = r[n] || {};
16227    if (Rc(i[a + "AxisId"], t.id) || Rc(i[a + "AxisIndex"], t.componentIndex) || Rc(i[a + "AxisName"], t.name)) return n;
16228  }
16229}
16230function Rc(r, e) {
16231  return r === "all" || V(r) && vt(r, e) >= 0 || r === e;
16232}
16233function eG(r) {
16234  var e = Qy(r);
16235  if (e) {
16236    var t = e.axisPointerModel, a = e.axis.scale, n = t.option, i = t.get("status"), o = t.get("value");
16237    o != null && (o = a.parse(o));
16238    var s = Ud(t);
16239    i == null && (n.status = s ? "show" : "hide");
16240    var l = a.getExtent().slice();
16241    l[0] > l[1] && l.reverse(), (o == null || o > l[1]) && (o = l[1]), o < l[0] && (o = l[0]), n.value = o, s && (n.status = e.axis.scale.isBlank() ? "hide" : "show");
16242  }
16243}
16244function Qy(r) {
16245  var e = (r.ecModel.getComponent("axisPointer") || {}).coordSysAxesInfo;
16246  return e && e.axesInfo[Sl(r)];
16247}
16248function rG(r) {
16249  var e = Qy(r);
16250  return e && e.axisPointerModel;
16251}
16252function Ud(r) {
16253  return !!r.get(["handle", "show"]);
16254}
16255function Sl(r) {
16256  return r.type + "||" + r.id;
16257}
16258var CS = {}, Ci = function(r) {
16259  N(e, r);
16260  function e() {
16261    var t = r !== null && r.apply(this, arguments) || this;
16262    return t.type = e.type, t;
16263  }
16264  return e.prototype.render = function(t, a, n, i) {
16265    this.axisPointerClass && eG(t), r.prototype.render.apply(this, arguments), this._doUpdateAxisPointerClass(t, n, true);
16266  }, e.prototype.updateAxisPointer = function(t, a, n, i) {
16267    this._doUpdateAxisPointerClass(t, n, false);
16268  }, e.prototype.remove = function(t, a) {
16269    var n = this._axisPointer;
16270    n && n.remove(a);
16271  }, e.prototype.dispose = function(t, a) {
16272    this._disposeAxisPointer(a), r.prototype.dispose.apply(this, arguments);
16273  }, e.prototype._doUpdateAxisPointerClass = function(t, a, n) {
16274    var i = e.getAxisPointerClass(this.axisPointerClass);
16275    if (i) {
16276      var o = rG(t);
16277      o ? (this._axisPointer || (this._axisPointer = new i())).render(t, o, a, n) : this._disposeAxisPointer(a);
16278    }
16279  }, e.prototype._disposeAxisPointer = function(t) {
16280    this._axisPointer && this._axisPointer.dispose(t), this._axisPointer = null;
16281  }, e.registerAxisPointerClass = function(t, a) {
16282    CS[t] = a;
16283  }, e.getAxisPointerClass = function(t) {
16284    return t && CS[t];
16285  }, e.type = "axis", e;
16286}(Vt), Yd = bt();
16287function LM(r, e, t, a) {
16288  var n = t.axis;
16289  if (!n.scale.isBlank()) {
16290    var i = t.getModel("splitArea"), o = i.getModel("areaStyle"), s = o.get("color"), l = a.coordinateSystem.getRect(), u = n.getTicksCoords({ tickModel: i, clamp: true });
16291    if (u.length) {
16292      var f = s.length, h = Yd(r).splitAreaColors, v = Z(), c = 0;
16293      if (h) for (var p = 0; p < u.length; p++) {
16294        var d = h.get(u[p].tickValue);
16295        if (d != null) {
16296          c = (d + (f - 1) * p) % f;
16297          break;
16298        }
16299      }
16300      var g = n.toGlobalCoord(u[0].coord), y = o.getAreaStyle();
16301      s = V(s) ? s : [s];
16302      for (var p = 1; p < u.length; p++) {
16303        var m = n.toGlobalCoord(u[p].coord), _ = void 0, S = void 0, b = void 0, x = void 0;
16304        n.isHorizontal() ? (_ = g, S = l.y, b = m - _, x = l.height, g = _ + b) : (_ = l.x, S = g, b = l.width, x = m - S, g = S + x);
16305        var w = u[p - 1].tickValue;
16306        w != null && v.set(w, c), e.add(new xt({ anid: w != null ? "area_" + w : null, shape: { x: _, y: S, width: b, height: x }, style: Q({ fill: s[c] }, y), autoBatch: true, silent: true })), c = (c + 1) % f;
16307      }
16308      Yd(r).splitAreaColors = v;
16309    }
16310  }
16311}
16312function PM(r) {
16313  Yd(r).splitAreaColors = null;
16314}
16315var aG = ["axisLine", "axisTickLabel", "axisName"], nG = ["splitArea", "splitLine", "minorSplitLine"], RM = function(r) {
16316  N(e, r);
16317  function e() {
16318    var t = r !== null && r.apply(this, arguments) || this;
16319    return t.type = e.type, t.axisPointerClass = "CartesianAxisPointer", t;
16320  }
16321  return e.prototype.render = function(t, a, n, i) {
16322    this.group.removeAll();
16323    var o = this._axisGroup;
16324    if (this._axisGroup = new at(), this.group.add(this._axisGroup), !!t.get("show")) {
16325      var s = t.getCoordSysModel(), l = Wd(s, t), u = new Ee(t, z({ handleAutoShown: function(h) {
16326        for (var v = s.coordinateSystem.getCartesians(), c = 0; c < v.length; c++) if (kd(v[c].getOtherAxis(t.axis).scale)) return true;
16327        return false;
16328      } }, l));
16329      D(aG, u.add, u), this._axisGroup.add(u.getGroup()), D(nG, function(h) {
16330        t.get([h, "show"]) && iG[h](this, this._axisGroup, t, s);
16331      }, this);
16332      var f = i && i.type === "changeAxisOrder" && i.isInitSort;
16333      f || Vl(o, this._axisGroup, t), r.prototype.render.call(this, t, a, n, i);
16334    }
16335  }, e.prototype.remove = function() {
16336    PM(this);
16337  }, e.type = "cartesianAxis", e;
16338}(Ci), iG = { splitLine: function(r, e, t, a) {
16339  var n = t.axis;
16340  if (!n.scale.isBlank()) {
16341    var i = t.getModel("splitLine"), o = i.getModel("lineStyle"), s = o.get("color"), l = i.get("showMinLine") !== false, u = i.get("showMaxLine") !== false;
16342    s = V(s) ? s : [s];
16343    for (var f = a.coordinateSystem.getRect(), h = n.isHorizontal(), v = 0, c = n.getTicksCoords({ tickModel: i }), p = [], d = [], g = o.getLineStyle(), y = 0; y < c.length; y++) {
16344      var m = n.toGlobalCoord(c[y].coord);
16345      if (!(y === 0 && !l || y === c.length - 1 && !u)) {
16346        var _ = c[y].tickValue;
16347        h ? (p[0] = m, p[1] = f.y, d[0] = m, d[1] = f.y + f.height) : (p[0] = f.x, p[1] = m, d[0] = f.x + f.width, d[1] = m);
16348        var S = v++ % s.length, b = new ee({ anid: _ != null ? "line_" + _ : null, autoBatch: true, shape: { x1: p[0], y1: p[1], x2: d[0], y2: d[1] }, style: Q({ stroke: s[S] }, g), silent: true });
16349        _o(b.shape, g.lineWidth), e.add(b);
16350      }
16351    }
16352  }
16353}, minorSplitLine: function(r, e, t, a) {
16354  var n = t.axis, i = t.getModel("minorSplitLine"), o = i.getModel("lineStyle"), s = a.coordinateSystem.getRect(), l = n.isHorizontal(), u = n.getMinorTicksCoords();
16355  if (u.length) for (var f = [], h = [], v = o.getLineStyle(), c = 0; c < u.length; c++) for (var p = 0; p < u[c].length; p++) {
16356    var d = n.toGlobalCoord(u[c][p].coord);
16357    l ? (f[0] = d, f[1] = s.y, h[0] = d, h[1] = s.y + s.height) : (f[0] = s.x, f[1] = d, h[0] = s.x + s.width, h[1] = d);
16358    var g = new ee({ anid: "minor_line_" + u[c][p].tickValue, autoBatch: true, shape: { x1: f[0], y1: f[1], x2: h[0], y2: h[1] }, style: v, silent: true });
16359    _o(g.shape, v.lineWidth), e.add(g);
16360  }
16361}, splitArea: function(r, e, t, a) {
16362  LM(r, e, t, a);
16363} }, EM = function(r) {
16364  N(e, r);
16365  function e() {
16366    var t = r !== null && r.apply(this, arguments) || this;
16367    return t.type = e.type, t;
16368  }
16369  return e.type = "xAxis", e;
16370}(RM), oG = function(r) {
16371  N(e, r);
16372  function e() {
16373    var t = r !== null && r.apply(this, arguments) || this;
16374    return t.type = EM.type, t;
16375  }
16376  return e.type = "yAxis", e;
16377}(RM), sG = function(r) {
16378  N(e, r);
16379  function e() {
16380    var t = r !== null && r.apply(this, arguments) || this;
16381    return t.type = "grid", t;
16382  }
16383  return e.prototype.render = function(t, a) {
16384    this.group.removeAll(), t.get("show") && this.group.add(new xt({ shape: t.coordinateSystem.getRect(), style: Q({ fill: t.get("backgroundColor") }, t.getItemStyle()), silent: true, z2: -1 }));
16385  }, e.type = "grid", e;
16386}(Vt), AS = { offset: 0 };
16387function kM(r) {
16388  r.registerComponentView(sG), r.registerComponentModel(O5), r.registerCoordinateSystem("cartesian2d", W5), wo(r, "x", Fd, AS), wo(r, "y", Fd, AS), r.registerComponentView(EM), r.registerComponentView(oG), r.registerPreprocessor(function(e) {
16389    e.xAxis && e.yAxis && !e.grid && (e.grid = {});
16390  });
16391}
16392function lG(r) {
16393  pt(kM), r.registerSeriesModel(L5), r.registerChartView(k5), r.registerLayout($l("scatter"));
16394}
16395function uG(r) {
16396  r.eachSeriesByType("radar", function(e) {
16397    var t = e.getData(), a = [], n = e.coordinateSystem;
16398    if (n) {
16399      var i = n.getIndicatorAxes();
16400      D(i, function(o, s) {
16401        t.each(t.mapDimension(i[s].dim), function(l, u) {
16402          a[u] = a[u] || [];
16403          var f = n.dataToPoint(l, s);
16404          a[u][s] = DS(f) ? f : MS(n);
16405        });
16406      }), t.each(function(o) {
16407        var s = sT(a[o], function(l) {
16408          return DS(l);
16409        }) || MS(n);
16410        a[o].push(s.slice()), t.setItemLayout(o, a[o]);
16411      });
16412    }
16413  });
16414}
16415function DS(r) {
16416  return !isNaN(r[0]) && !isNaN(r[1]);
16417}
16418function MS(r) {
16419  return [r.cx, r.cy];
16420}
16421function fG(r) {
16422  var e = r.polar;
16423  if (e) {
16424    V(e) || (e = [e]);
16425    var t = [];
16426    D(e, function(a, n) {
16427      a.indicator ? (a.type && !a.shape && (a.shape = a.type), r.radar = r.radar || [], V(r.radar) || (r.radar = [r.radar]), r.radar.push(a)) : t.push(a);
16428    }), r.polar = t;
16429  }
16430  D(r.series, function(a) {
16431    a && a.type === "radar" && a.polarIndex && (a.radarIndex = a.polarIndex);
16432  });
16433}
16434var hG = function(r) {
16435  N(e, r);
16436  function e() {
16437    var t = r !== null && r.apply(this, arguments) || this;
16438    return t.type = e.type, t;
16439  }
16440  return e.prototype.render = function(t, a, n) {
16441    var i = t.coordinateSystem, o = this.group, s = t.getData(), l = this._data;
16442    function u(v, c) {
16443      var p = v.getItemVisual(c, "symbol") || "circle";
16444      if (p !== "none") {
16445        var d = Ho(v.getItemVisual(c, "symbolSize")), g = qt(p, -1, -1, 2, 2), y = v.getItemVisual(c, "symbolRotate") || 0;
16446        return g.attr({ style: { strokeNoScale: true }, z2: 100, scaleX: d[0] / 2, scaleY: d[1] / 2, rotation: y * Math.PI / 180 || 0 }), g;
16447      }
16448    }
16449    function f(v, c, p, d, g, y) {
16450      p.removeAll();
16451      for (var m = 0; m < c.length - 1; m++) {
16452        var _ = u(d, g);
16453        _ && (_.__dimIdx = m, v[m] ? (_.setPosition(v[m]), xi[y ? "initProps" : "updateProps"](_, { x: c[m][0], y: c[m][1] }, t, g)) : _.setPosition(c[m]), p.add(_));
16454      }
16455    }
16456    function h(v) {
16457      return G(v, function(c) {
16458        return [i.cx, i.cy];
16459      });
16460    }
16461    s.diff(l).add(function(v) {
16462      var c = s.getItemLayout(v);
16463      if (c) {
16464        var p = new Ce(), d = new De(), g = { shape: { points: c } };
16465        p.shape.points = h(c), d.shape.points = h(c), Gt(p, g, t, v), Gt(d, g, t, v);
16466        var y = new at(), m = new at();
16467        y.add(d), y.add(p), y.add(m), f(d.shape.points, c, m, s, v, true), s.setItemGraphicEl(v, y);
16468      }
16469    }).update(function(v, c) {
16470      var p = l.getItemGraphicEl(c), d = p.childAt(0), g = p.childAt(1), y = p.childAt(2), m = { shape: { points: s.getItemLayout(v) } };
16471      m.shape.points && (f(d.shape.points, m.shape.points, y, s, v, false), Er(g), Er(d), Tt(d, m, t), Tt(g, m, t), s.setItemGraphicEl(v, p));
16472    }).remove(function(v) {
16473      o.remove(l.getItemGraphicEl(v));
16474    }).execute(), s.eachItemGraphicEl(function(v, c) {
16475      var p = s.getItemModel(c), d = v.childAt(0), g = v.childAt(1), y = v.childAt(2), m = s.getItemVisual(c, "style"), _ = m.fill;
16476      o.add(v), d.useStyle(Q(p.getModel("lineStyle").getLineStyle(), { fill: "none", stroke: _ })), pe(d, p, "lineStyle"), pe(g, p, "areaStyle");
16477      var S = p.getModel("areaStyle"), b = S.isEmpty() && S.parentModel.isEmpty();
16478      g.ignore = b, D(["emphasis", "select", "blur"], function(T) {
16479        var C = p.getModel([T, "areaStyle"]), A = C.isEmpty() && C.parentModel.isEmpty();
16480        g.ensureState(T).ignore = A && b;
16481      }), g.useStyle(Q(S.getAreaStyle(), { fill: _, opacity: 0.7, decal: m.decal }));
16482      var x = p.getModel("emphasis"), w = x.getModel("itemStyle").getItemStyle();
16483      y.eachChild(function(T) {
16484        if (T instanceof ue) {
16485          var C = T.style;
16486          T.useStyle(z({ image: C.image, x: C.x, y: C.y, width: C.width, height: C.height }, m));
16487        } else T.useStyle(m), T.setColor(_), T.style.strokeNoScale = true;
16488        var A = T.ensureState("emphasis");
16489        A.style = rt(w);
16490        var M = s.getStore().get(s.getDimensionIndex(T.__dimIdx), c);
16491        (M == null || isNaN(M)) && (M = ""), de(T, se(p), { labelFetcher: s.hostModel, labelDataIndex: c, labelDimIndex: T.__dimIdx, defaultText: M, inheritColor: _, defaultOpacity: m.opacity });
16492      }), Wt(v, x.get("focus"), x.get("blurScope"), x.get("disabled"));
16493    }), this._data = s;
16494  }, e.prototype.remove = function() {
16495    this.group.removeAll(), this._data = null;
16496  }, e.type = "radar", e;
16497}(Pt), vG = function(r) {
16498  N(e, r);
16499  function e() {
16500    var t = r !== null && r.apply(this, arguments) || this;
16501    return t.type = e.type, t.hasSymbolVisual = true, t;
16502  }
16503  return e.prototype.init = function(t) {
16504    r.prototype.init.apply(this, arguments), this.legendVisualProvider = new Zl($(this.getData, this), $(this.getRawData, this));
16505  }, e.prototype.getInitialData = function(t, a) {
16506    return $o(this, { generateCoord: "indicator_", generateCoordCount: 1 / 0 });
16507  }, e.prototype.formatTooltip = function(t, a, n) {
16508    var i = this.getData(), o = this.coordinateSystem, s = o.getIndicatorAxes(), l = this.getData().getName(t), u = l === "" ? this.name : l, f = IA(this, t);
16509    return le("section", { header: u, sortBlocks: true, blocks: G(s, function(h) {
16510      var v = i.get(i.mapDimension(h.dim), t);
16511      return le("nameValue", { markerType: "subItem", markerColor: f, name: h.name, value: v, sortParam: v });
16512    }) });
16513  }, e.prototype.getTooltipPosition = function(t) {
16514    if (t != null) {
16515      for (var a = this.getData(), n = this.coordinateSystem, i = a.getValues(G(n.dimensions, function(u) {
16516        return a.mapDimension(u);
16517      }), t), o = 0, s = i.length; o < s; o++) if (!isNaN(i[o])) {
16518        var l = n.getIndicatorAxes();
16519        return n.coordToPoint(l[o].dataToCoord(i[o]), o);
16520      }
16521    }
16522  }, e.type = "series.radar", e.dependencies = ["radar"], e.defaultOption = { z: 2, colorBy: "data", coordinateSystem: "radar", legendHoverLink: true, radarIndex: 0, lineStyle: { width: 2, type: "solid", join: "round" }, label: { position: "top" }, symbolSize: 8 }, e;
16523}(Et), vs = DM.value;
16524function Bu(r, e) {
16525  return Q({ show: e }, r);
16526}
16527var cG = function(r) {
16528  N(e, r);
16529  function e() {
16530    var t = r !== null && r.apply(this, arguments) || this;
16531    return t.type = e.type, t;
16532  }
16533  return e.prototype.optionUpdated = function() {
16534    var t = this.get("boundaryGap"), a = this.get("splitNumber"), n = this.get("scale"), i = this.get("axisLine"), o = this.get("axisTick"), s = this.get("axisLabel"), l = this.get("axisName"), u = this.get(["axisName", "show"]), f = this.get(["axisName", "formatter"]), h = this.get("axisNameGap"), v = this.get("triggerEvent"), c = G(this.get("indicator") || [], function(p) {
16535      p.max != null && p.max > 0 && !p.min ? p.min = 0 : p.min != null && p.min < 0 && !p.max && (p.max = 0);
16536      var d = l;
16537      p.color != null && (d = Q({ color: p.color }, l));
16538      var g = ut(rt(p), { boundaryGap: t, splitNumber: a, scale: n, axisLine: i, axisTick: o, axisLabel: s, name: p.text, showName: u, nameLocation: "end", nameGap: h, nameTextStyle: d, triggerEvent: v }, false);
16539      if (Y(f)) {
16540        var y = g.name;
16541        g.name = f.replace("{value}", y ?? "");
16542      } else j(f) && (g.name = f(g.name, g));
16543      var m = new At(g, null, this.ecModel);
16544      return Xt(m, Yo.prototype), m.mainType = "radar", m.componentIndex = this.componentIndex, m;
16545    }, this);
16546    this._indicatorModels = c;
16547  }, e.prototype.getIndicatorModels = function() {
16548    return this._indicatorModels;
16549  }, e.type = "radar", e.defaultOption = { z: 0, center: ["50%", "50%"], radius: "75%", startAngle: 90, axisName: { show: true }, boundaryGap: [0, 0], splitNumber: 5, axisNameGap: 15, scale: false, shape: "polygon", axisLine: ut({ lineStyle: { color: "#bbb" } }, vs.axisLine), axisLabel: Bu(vs.axisLabel, false), axisTick: Bu(vs.axisTick, false), splitLine: Bu(vs.splitLine, true), splitArea: Bu(vs.splitArea, true), indicator: [] }, e;
16550}(gt), pG = ["axisLine", "axisTickLabel", "axisName"], dG = function(r) {
16551  N(e, r);
16552  function e() {
16553    var t = r !== null && r.apply(this, arguments) || this;
16554    return t.type = e.type, t;
16555  }
16556  return e.prototype.render = function(t, a, n) {
16557    var i = this.group;
16558    i.removeAll(), this._buildAxes(t), this._buildSplitLineAndArea(t);
16559  }, e.prototype._buildAxes = function(t) {
16560    var a = t.coordinateSystem, n = a.getIndicatorAxes(), i = G(n, function(o) {
16561      var s = o.model.get("showName") ? o.name : "", l = new Ee(o.model, { axisName: s, position: [a.cx, a.cy], rotation: o.angle, labelDirection: -1, tickDirection: -1, nameDirection: 1 });
16562      return l;
16563    });
16564    D(i, function(o) {
16565      D(pG, o.add, o), this.group.add(o.getGroup());
16566    }, this);
16567  }, e.prototype._buildSplitLineAndArea = function(t) {
16568    var a = t.coordinateSystem, n = a.getIndicatorAxes();
16569    if (!n.length) return;
16570    var i = t.get("shape"), o = t.getModel("splitLine"), s = t.getModel("splitArea"), l = o.getModel("lineStyle"), u = s.getModel("areaStyle"), f = o.get("show"), h 
16570= s.get("show"), v = l.get("color"), c = u.get("color"), p = V(v) ? v : [v], d = V(c) ? c : [c], g = [], y = [];
16571    function m(R, E, O) {
16572      var k = O % E.length;
16573      return R[k] = R[k] || [], k;
16574    }
16575    if (i === "circle") for (var _ = n[0].getTicksCoords(), S = a.cx, b = a.cy, x = 0; x < _.length; x++) {
16576      if (f) {
16577        var w = m(g, p, x);
16578        g[w].push(new ea({ shape: { cx: S, cy: b, r: _[x].coord } }));
16579      }
16580      if (h && x < _.length - 1) {
16581        var w = m(y, d, x);
16582        y[w].push(new Lo({ shape: { cx: S, cy: b, r0: _[x].coord, r: _[x + 1].coord } }));
16583      }
16584    }
16585    else for (var T, C = G(n, function(R, E) {
16586      var O = R.getTicksCoords();
16587      return T = T == null ? O.length - 1 : Math.min(O.length - 1, T), G(O, function(k) {
16588        return a.coordToPoint(k.coord, E);
16589      });
16590    }), A = [], x = 0; x <= T; x++) {
16591      for (var M = [], I = 0; I < n.length; I++) M.push(C[I][x]);
16592      if (M[0] && M.push(M[0].slice()), f) {
16593        var w = m(g, p, x);
16594        g[w].push(new De({ shape: { points: M } }));
16595      }
16596      if (h && A) {
16597        var w = m(y, d, x - 1);
16598        y[w].push(new Ce({ shape: { points: M.concat(A) } }));
16599      }
16600      A = M.slice().reverse();
16601    }
16602    var L = l.getLineStyle(), P = u.getAreaStyle();
16603    D(y, function(R, E) {
16604      this.group.add($e(R, { style: Q({ stroke: "none", fill: d[E % d.length] }, P), silent: true }));
16605    }, this), D(g, function(R, E) {
16606      this.group.add($e(R, { style: Q({ fill: "none", stroke: p[E % p.length] }, L), silent: true }));
16607    }, this);
16608  }, e.type = "radar", e;
16609}(Vt), gG = function(r) {
16610  N(e, r);
16611  function e(t, a, n) {
16612    var i = r.call(this, t, a, n) || this;
16613    return i.type = "value", i.angle = 0, i.name = "", i;
16614  }
16615  return e;
16616}(yr), yG = function() {
16617  function r(e, t, a) {
16618    this.dimensions = [], this._model = e, this._indicatorAxes = G(e.getIndicatorModels(), function(n, i) {
16619      var o = "indicator_" + i, s = new gG(o, new ba());
16620      return s.name = n.get("name"), s.model = n, n.axis = s, this.dimensions.push(o), s;
16621    }, this), this.resize(e, a);
16622  }
16623  return r.prototype.getIndicatorAxes = function() {
16624    return this._indicatorAxes;
16625  }, r.prototype.dataToPoint = function(e, t) {
16626    var a = this._indicatorAxes[t];
16627    return this.coordToPoint(a.dataToCoord(e), t);
16628  }, r.prototype.coordToPoint = function(e, t) {
16629    var a = this._indicatorAxes[t], n = a.angle, i = this.cx + e * Math.cos(n), o = this.cy - e * Math.sin(n);
16630    return [i, o];
16631  }, r.prototype.pointToData = function(e) {
16632    var t = e[0] - this.cx, a = e[1] - this.cy, n = Math.sqrt(t * t + a * a);
16633    t /= n, a /= n;
16634    for (var i = Math.atan2(-a, t), o = 1 / 0, s, l = -1, u = 0; u < this._indicatorAxes.length; u++) {
16635      var f = this._indicatorAxes[u], h = Math.abs(i - f.angle);
16636      h < o && (s = f, l = u, o = h);
16637    }
16638    return [l, +(s && s.coordToData(n))];
16639  }, r.prototype.resize = function(e, t) {
16640    var a = e.get("center"), n = t.getWidth(), i = t.getHeight(), o = Math.min(n, i) / 2;
16641    this.cx = W(a[0], n), this.cy = W(a[1], i), this.startAngle = e.get("startAngle") * Math.PI / 180;
16642    var s = e.get("radius");
16643    (Y(s) || wt(s)) && (s = [0, s]), this.r0 = W(s[0], o), this.r = W(s[1], o), D(this._indicatorAxes, function(l, u) {
16644      l.setExtent(this.r0, this.r);
16645      var f = this.startAngle + u * Math.PI * 2 / this._indicatorAxes.length;
16646      f = Math.atan2(Math.sin(f), Math.cos(f)), l.angle = f;
16647    }, this);
16648  }, r.prototype.update = function(e, t) {
16649    var a = this._indicatorAxes, n = this._model;
16650    D(a, function(s) {
16651      s.scale.setExtent(1 / 0, -1 / 0);
16652    }), e.eachSeriesByType("radar", function(s, l) {
16653      if (!(s.get("coordinateSystem") !== "radar" || e.getComponent("radar", s.get("radarIndex")) !== n)) {
16654        var u = s.getData();
16655        D(a, function(f) {
16656          f.scale.unionExtentFromData(u, u.mapDimension(f.dim));
16657        });
16658      }
16659    }, this);
16660    var i = n.get("splitNumber"), o = new ba();
16661    o.setExtent(0, i), o.setInterval(1), D(a, function(s, l) {
16662      MM(s.scale, s.model, o);
16663    });
16664  }, r.prototype.convertToPixel = function(e, t, a) {
16665    return console.warn("Not implemented."), null;
16666  }, r.prototype.convertFromPixel = function(e, t, a) {
16667    return console.warn("Not implemented."), null;
16668  }, r.prototype.containPoint = function(e) {
16669    return console.warn("Not implemented."), false;
16670  }, r.create = function(e, t) {
16671    var a = [];
16672    return e.eachComponent("radar", function(n) {
16673      var i = new r(n, e, t);
16674      a.push(i), n.coordinateSystem = i;
16675    }), e.eachSeriesByType("radar", function(n) {
16676      n.get("coordinateSystem") === "radar" && (n.coordinateSystem = a[n.get("radarIndex") || 0]);
16677    }), a;
16678  }, r.dimensions = [], r;
16679}();
16680function mG(r) {
16681  r.registerCoordinateSystem("radar", yG), r.registerComponentModel(cG), r.registerComponentView(dG), r.registerVisual({ seriesType: "radar", reset: function(e) {
16682    var t = e.getData();
16683    t.each(function(a) {
16684      t.setItemVisual(a, "legendIcon", "roundRect");
16685    }), t.setVisual("legendIcon", "roundRect");
16686  } });
16687}
16688function _G(r) {
16689  pt(mG), r.registerChartView(hG), r.registerSeriesModel(vG), r.registerLayout(uG), r.registerProcessor(Xl("radar")), r.registerPreprocessor(fG);
16690}
16691var IS = "\0_ec_interaction_mutex";
16692function SG(r, e, t) {
16693  var a = tm(r);
16694  a[e] = t;
16695}
16696function xG(r, e, t) {
16697  var a = tm(r), n = a[e];
16698  n === t && (a[e] = null);
16699}
16700function LS(r, e) {
16701  return !!tm(r)[e];
16702}
16703function tm(r) {
16704  return r[IS] || (r[IS] = {});
16705}
16706kr({ type: "takeGlobalCursor", event: "globalCursorTaken", update: "update" }, $t);
16707var ql = function(r) {
16708  N(e, r);
16709  function e(t) {
16710    var a = r.call(this) || this;
16711    a._zr = t;
16712    var n = $(a._mousedownHandler, a), i = $(a._mousemoveHandler, a), o = $(a._mouseupHandler, a), s = $(a._mousewheelHandler, a), l = $(a._pinchHandler, a);
16713    return a.enable = function(u, f) {
16714      this.disable(), this._opt = Q(rt(f) || {}, { zoomOnMouseWheel: true, moveOnMouseMove: true, moveOnMouseWheel: false, preventDefaultMouseMove: true }), u == null && (u = true), (u === true || u === "move" || u === "pan") && (t.on("mousedown", n), t.on("mousemove", i), t.on("mouseup", o)), (u === true || u === "scale" || u === "zoom") && (t.on("mousewheel", s), t.on("pinch", l));
16715    }, a.disable = function() {
16716      t.off("mousedown", n), t.off("mousemove", i), t.off("mouseup", o), t.off("mousewheel", s), t.off("pinch", l);
16717    }, a;
16718  }
16719  return e.prototype.isDragging = function() {
16720    return this._dragging;
16721  }, e.prototype.isPinching = function() {
16722    return this._pinching;
16723  }, e.prototype.setPointerChecker = function(t) {
16724    this.pointerChecker = t;
16725  }, e.prototype.dispose = function() {
16726    this.disable();
16727  }, e.prototype._mousedownHandler = function(t) {
16728    if (!o0(t)) {
16729      for (var a = t.target; a; ) {
16730        if (a.draggable) return;
16731        a = a.__hostTarget || a.parent;
16732      }
16733      var n = t.offsetX, i = t.offsetY;
16734      this.pointerChecker && this.pointerChecker(t, n, i) && (this._x = n, this._y = i, this._dragging = true);
16735    }
16736  }, e.prototype._mousemoveHandler = function(t) {
16737    if (!(!this._dragging || !pf("moveOnMouseMove", t, this._opt) || t.gestureEvent === "pinch" || LS(this._zr, "globalPan"))) {
16738      var a = t.offsetX, n = t.offsetY, i = this._x, o = this._y, s = a - i, l = n - o;
16739      this._x = a, this._y = n, this._opt.preventDefaultMouseMove && ya(t.event), OM(this, "pan", "moveOnMouseMove", t, { dx: s, dy: l, oldX: i, oldY: o, newX: a, newY: n, isAvailableBehavior: null });
16740    }
16741  }, e.prototype._mouseupHandler = function(t) {
16742    o0(t) || (this._dragging = false);
16743  }, e.prototype._mousewheelHandler = function(t) {
16744    var a = pf("zoomOnMouseWheel", t, this._opt), n = pf("moveOnMouseWheel", t, this._opt), i = t.wheelDelta, o = Math.abs(i), s = t.offsetX, l = t.offsetY;
16745    if (!(i === 0 || !a && !n)) {
16746      if (a) {
16747        var u = o > 3 ? 1.4 : o > 1 ? 1.2 : 1.1, f = i > 0 ? u : 1 / u;
16748        Ec(this, "zoom", "zoomOnMouseWheel", t, { scale: f, originX: s, originY: l, isAvailableBehavior: null });
16749      }
16750      if (n) {
16751        var h = Math.abs(i), v = (i > 0 ? 1 : -1) * (h > 3 ? 0.4 : h > 1 ? 0.15 : 0.05);
16752        Ec(this, "scrollMove", "moveOnMouseWheel", t, { scrollDelta: v, originX: s, originY: l, isAvailableBehavior: null });
16753      }
16754    }
16755  }, e.prototype._pinchHandler = function(t) {
16756    if (!LS(this._zr, "globalPan")) {
16757      var a = t.pinchScale > 1 ? 1.1 : 1 / 1.1;
16758      Ec(this, "zoom", null, t, { scale: a, originX: t.pinchX, originY: t.pinchY, isAvailableBehavior: null });
16759    }
16760  }, e;
16761}(cr);
16762function Ec(r, e, t, a, n) {
16763  r.pointerChecker && r.pointerChecker(a, n.originX, n.originY) && (ya(a.event), OM(r, e, t, a, n));
16764}
16765function OM(r, e, t, a, n) {
16766  n.isAvailableBehavior = $(pf, null, t, a), r.trigger(e, n);
16767}
16768function pf(r, e, t) {
16769  var a = t[r];
16770  return !r || a && (!Y(a) || e.event[a + "Key"]);
16771}
16772function em(r, e, t) {
16773  var a = r.target;
16774  a.x += e, a.y += t, a.dirty();
16775}
16776function rm(r, e, t, a) {
16777  var n = r.target, i = r.zoomLimit, o = r.zoom = r.zoom || 1;
16778  if (o *= e, i) {
16779    var s = i.min || 0, l = i.max || 1 / 0;
16780    o = Math.max(Math.min(l, o), s);
16781  }
16782  var u = o / r.zoom;
16783  r.zoom = o, n.x -= (t - n.x) * (u - 1), n.y -= (a - n.y) * (u - 1), n.scaleX *= u, n.scaleY *= u, n.dirty();
16784}
16785var bG = { axisPointer: 1, tooltip: 1, brush: 1 };
16786function ev(r, e, t) {
16787  var a = e.getComponentByElement(r.topTarget), n = a && a.coordinateSystem;
16788  return a && a !== t && !bG.hasOwnProperty(a.mainType) && n && n.model !== t;
16789}
16790function NM(r) {
16791  if (Y(r)) {
16792    var e = new DOMParser();
16793    r = e.parseFromString(r, "text/xml");
16794  }
16795  var t = r;
16796  for (t.nodeType === 9 && (t = t.firstChild); t.nodeName.toLowerCase() !== "svg" || t.nodeType !== 1; ) t = t.nextSibling;
16797  return t;
16798}
16799var kc, th = { 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" }, PS = _t(th), eh = { "alignment-baseline": "textBaseline", "stop-color": "stopColor" }, RS = _t(eh), wG = function() {
16800  function r() {
16801    this._defs = {}, this._root = null;
16802  }
16803  return r.prototype.parse = function(e, t) {
16804    t = t || {};
16805    var a = NM(e);
16806    this._defsUsePending = [];
16807    var n = new at();
16808    this._root = n;
16809    var i = [], o = a.getAttribute("viewBox") || "", s = parseFloat(a.getAttribute("width") || t.width), l = parseFloat(a.getAttribute("height") || t.height);
16810    isNaN(s) && (s = null), isNaN(l) && (l = null), Ue(a, n, null, true, false);
16811    for (var u = a.firstChild; u; ) this._parseNode(u, n, i, null, false, false), u = u.nextSibling;
16812    AG(this._defs, this._defsUsePending), this._defsUsePending = [];
16813    var f, h;
16814    if (o) {
16815      var v = rv(o);
16816      v.length >= 4 && (f = { x: parseFloat(v[0] || 0), y: parseFloat(v[1] || 0), width: parseFloat(v[2]), height: parseFloat(v[3]) });
16817    }
16818    if (f && s != null && l != null && (h = zM(f, { x: 0, y: 0, width: s, height: l }), !t.ignoreViewBox)) {
16819      var c = n;
16820      n = new at(), n.add(c), c.scaleX = c.scaleY = h.scale, c.x = h.x, c.y = h.y;
16821    }
16822    return !t.ignoreRootClip && s != null && l != null && n.setClipPath(new xt({ shape: { x: 0, y: 0, width: s, height: l } })), { root: n, width: s, height: l, viewBoxRect: f, viewBoxTransform: h, named: i };
16823  }, r.prototype._parseNode = function(e, t, a, n, i, o) {
16824    var s = e.nodeName.toLowerCase(), l, u = n;
16825    if (s === "defs" && (i = true), s === "text" && (o = true), s === "defs" || s === "switch") l = t;
16826    else {
16827      if (!i) {
16828        var f = kc[s];
16829        if (f && X(kc, s)) {
16830          l = f.call(this, e, t);
16831          var h = e.getAttribute("name");
16832          if (h) {
16833            var v = { name: h, namedFrom: null, svgNodeTagLower: s, el: l };
16834            a.push(v), s === "g" && (u = v);
16835          } else n && a.push({ name: n.name, namedFrom: n, svgNodeTagLower: s, el: l });
16836          t.add(l);
16837        }
16838      }
16839      var c = ES[s];
16840      if (c && X(ES, s)) {
16841        var p = c.call(this, e), d = e.getAttribute("id");
16842        d && (this._defs[d] = p);
16843      }
16844    }
16845    if (l && l.isGroup) for (var g = e.firstChild; g;
16845 ) g.nodeType === 1 ? this._parseNode(g, l, a, u, i, o) : g.nodeType === 3 && o && this._parseText(g, l), g = g.nextSibling;
16846  }, r.prototype._parseText = function(e, t) {
16847    var a = new mo({ style: { text: e.textContent }, silent: true, x: this._textX || 0, y: this._textY || 0 });
16848    Qe(t, a), Ue(e, a, this._defsUsePending, false, false), TG(a, t);
16849    var n = a.style, i = n.fontSize;
16850    i && i < 9 && (n.fontSize = 9, a.scaleX *= i / 9, a.scaleY *= i / 9);
16851    var o = (n.fontSize || n.fontFamily) && [n.fontStyle, n.fontWeight, (n.fontSize || 12) + "px", n.fontFamily || "sans-serif"].join(" ");
16852    n.font = o;
16853    var s = a.getBoundingRect();
16854    return this._textX += s.width, t.add(a), a;
16855  }, r.internalField = function() {
16856    kc = { g: function(e, t) {
16857      var a = new at();
16858      return Qe(t, a), Ue(e, a, this._defsUsePending, false, false), a;
16859    }, rect: function(e, t) {
16860      var a = new xt();
16861      return Qe(t, a), Ue(e, a, this._defsUsePending, false, false), a.setShape({ x: parseFloat(e.getAttribute("x") || "0"), y: parseFloat(e.getAttribute("y") || "0"), width: parseFloat(e.getAttribute("width") || "0"), height: parseFloat(e.getAttribute("height") || "0") }), a.silent = true, a;
16862    }, circle: function(e, t) {
16863      var a = new ea();
16864      return Qe(t, a), Ue(e, a, this._defsUsePending, false, false), a.setShape({ cx: parseFloat(e.getAttribute("cx") || "0"), cy: parseFloat(e.getAttribute("cy") || "0"), r: parseFloat(e.getAttribute("r") || "0") }), a.silent = true, a;
16865    }, line: function(e, t) {
16866      var a = new ee();
16867      return Qe(t, a), Ue(e, a, this._defsUsePending, false, false), a.setShape({ x1: parseFloat(e.getAttribute("x1") || "0"), y1: parseFloat(e.getAttribute("y1") || "0"), x2: parseFloat(e.getAttribute("x2") || "0"), y2: parseFloat(e.getAttribute("y2") || "0") }), a.silent = true, a;
16868    }, ellipse: function(e, t) {
16869      var a = new Nl();
16870      return Qe(t, a), Ue(e, a, this._defsUsePending, false, false), a.setShape({ cx: parseFloat(e.getAttribute("cx") || "0"), cy: parseFloat(e.getAttribute("cy") || "0"), rx: parseFloat(e.getAttribute("rx") || "0"), ry: parseFloat(e.getAttribute("ry") || "0") }), a.silent = true, a;
16871    }, polygon: function(e, t) {
16872      var a = e.getAttribute("points"), n;
16873      a && (n = NS(a));
16874      var i = new Ce({ shape: { points: n || [] }, silent: true });
16875      return Qe(t, i), Ue(e, i, this._defsUsePending, false, false), i;
16876    }, polyline: function(e, t) {
16877      var a = e.getAttribute("points"), n;
16878      a && (n = NS(a));
16879      var i = new De({ shape: { points: n || [] }, silent: true });
16880      return Qe(t, i), Ue(e, i, this._defsUsePending, false, false), i;
16881    }, image: function(e, t) {
16882      var a = new ue();
16883      return Qe(t, a), Ue(e, a, this._defsUsePending, false, false), a.setStyle({ image: e.getAttribute("xlink:href") || e.getAttribute("href"), x: +e.getAttribute("x"), y: +e.getAttribute("y"), width: +e.getAttribute("width"), height: +e.getAttribute("height") }), a.silent = true, a;
16884    }, text: function(e, t) {
16885      var a = e.getAttribute("x") || "0", n = e.getAttribute("y") || "0", i = e.getAttribute("dx") || "0", o = e.getAttribute("dy") || "0";
16886      this._textX = parseFloat(a) + parseFloat(i), this._textY = parseFloat(n) + parseFloat(o);
16887      var s = new at();
16888      return Qe(t, s), Ue(e, s, this._defsUsePending, false, true), s;
16889    }, tspan: function(e, t) {
16890      var a = e.getAttribute("x"), n = e.getAttribute("y");
16891      a != null && (this._textX = parseFloat(a)), n != null && (this._textY = parseFloat(n));
16892      var i = e.getAttribute("dx") || "0", o = e.getAttribute("dy") || "0", s = new at();
16893      return Qe(t, s), Ue(e, s, this._defsUsePending, false, true), this._textX += parseFloat(i), this._textY += parseFloat(o), s;
16894    }, path: function(e, t) {
16895      var a = e.getAttribute("d") || "", n = AC(a);
16896      return Qe(t, n), Ue(e, n, this._defsUsePending, false, false), n.silent = true, n;
16897    } };
16898  }(), r;
16899}(), ES = { lineargradient: function(r) {
16900  var e = parseInt(r.getAttribute("x1") || "0", 10), t = parseInt(r.getAttribute("y1") || "0", 10), a = parseInt(r.getAttribute("x2") || "10", 10), n = parseInt(r.getAttribute("y2") || "0", 10), i = new Ro(e, t, a, n);
16901  return kS(r, i), OS(r, i), i;
16902}, radialgradient: function(r) {
16903  var e = parseInt(r.getAttribute("cx") || "0", 10), t = parseInt(r.getAttribute("cy") || "0", 10), a = parseInt(r.getAttribute("r") || "0", 10), n = new ry(e, t, a);
16904  return kS(r, n), OS(r, n), n;
16905} };
16906function kS(r, e) {
16907  var t = r.getAttribute("gradientUnits");
16908  t === "userSpaceOnUse" && (e.global = true);
16909}
16910function OS(r, e) {
16911  for (var t = r.firstChild; t; ) {
16912    if (t.nodeType === 1 && t.nodeName.toLocaleLowerCase() === "stop") {
16913      var a = t.getAttribute("offset"), n = void 0;
16914      a && a.indexOf("%") > 0 ? n = parseInt(a, 10) / 100 : a ? n = parseFloat(a) : n = 0;
16915      var i = {};
16916      BM(t, i, i);
16917      var o = i.stopColor || t.getAttribute("stop-color") || "#000000";
16918      e.colorStops.push({ offset: n, color: o });
16919    }
16920    t = t.nextSibling;
16921  }
16922}
16923function Qe(r, e) {
16924  r && r.__inheritedStyle && (e.__inheritedStyle || (e.__inheritedStyle = {}), Q(e.__inheritedStyle, r.__inheritedStyle));
16925}
16926function NS(r) {
16927  for (var e = rv(r), t = [], a = 0; a < e.length; a += 2) {
16928    var n = parseFloat(e[a]), i = parseFloat(e[a + 1]);
16929    t.push([n, i]);
16930  }
16931  return t;
16932}
16933function Ue(r, e, t, a, n) {
16934  var i = e, o = i.__inheritedStyle = i.__inheritedStyle || {}, s = {};
16935  r.nodeType === 1 && (IG(r, e), BM(r, o, s), a || LG(r, o, s)), i.style = i.style || {}, o.fill != null && (i.style.fill = BS(i, "fill", o.fill, t)), o.stroke != null && (i.style.stroke = BS(i, "stroke", o.stroke, t)), D(["lineWidth", "opacity", "fillOpacity", "strokeOpacity", "miterLimit", "fontSize"], function(l) {
16936    o[l] != null && (i.style[l] = parseFloat(o[l]));
16937  }), D(["lineDashOffset", "lineCap", "lineJoin", "fontWeight", "fontFamily", "fontStyle", "textAlign"], function(l) {
16938    o[l] != null && (i.style[l] = o[l]);
16939  }), n && (i.__selfStyle = s), o.lineDash && (i.style.lineDash = G(rv(o.lineDash), function(l) {
16940    return parseFloat(l);
16941  })), (o.visibility === "hidden" || o.visibility === "collapse") && (i.invisible = true), o.display === "none" && (i.ignore = true);
16942}
16943function TG(r, e) {
16944  var t = e.__selfStyle;
16945  if (t) {
16946    var a = t.textBaseline, n = a;
16947    !a || a === "auto" || a === "baseline" ? n = "alphabetic" : a === "before-edge" || a === "text-before-edge" ? n = "top" : a === "after-edge" || a === "text-after-edge" ? n = "bottom" : (a === "central" || a === "mathematical") && (n = "middle"), r.style.textBaseline = n;
16948  }
16949  var i = e.__inheritedStyle;
16950  if (i) {
16951    var o = i.textAlign, s = o;
16952    o && (o === "middle" && (s = "center"), r.style.textAlign = s);
16953  }
16954}
16955var CG = /^url\(\s*#(.*?)\)/;
16956function BS(r, e, t, a) {
16957  var n = t && t.match(CG);
16958  if (n) {
16959    var i = ur(n[1]);
16960    a.push([r, e, i]);
16961    return;
16962  }
16963  return t === "none" && (t = null), t;
16964}
16965function AG(r, e) {
16966  for (var t = 0; t < e.length; t++) {
16967    var a = e[t];
16968    a[0].style[a[1]] = r[a[2]];
16969  }
16970}
16971var DG = /-?([0-9]*\.)?[0-9]+([eE]-?[0-9]+)?/g;
16972function rv(r) {
16973  return r.match(DG) || [];
16974}
16975var MG = /(translate|scale|rotate|skewX|skewY|matrix)\(([\-\s0-9\.eE,]*)\)/g, Oc = Math.PI / 180;
16976function IG(r, e) {
16977  var t = r.getAttribute("transform");
16978  if (t) {
16979    t = t.replace(/,/g, " ");
16980    var a = [], n = null;
16981    t.replace(MG, function(h, v, c) {
16982      return a.push(v, c), "";
16983    });
16984    for (var i = a.length - 1; i > 0; i -= 2) {
16985      var o = a[i], s = a[i - 1], l = rv(o);
16986      switch (n = n || He(), s) {
16987        case "translate":
16988          Pr(n, n, [parseFloat(l[0]), parseFloat(l[1] || "0")]);
16989          break;
16990        case "scale":
16991          Th(n, n, [parseFloat(l[0]), parseFloat(l[1] || l[0])]);
16992          break;
16993        case "rotate":
16994          ln(n, n, -parseFloat(l[0]) * Oc, [parseFloat(l[1] || "0"), parseFloat(l[2] || "0")]);
16995          break;
16996        case "skewX":
16997          var u = Math.tan(parseFloat(l[0]) * Oc);
16998          qr(n, [1, 0, u, 1, 0, 0], n);
16999          break;
17000        case "skewY":
17001          var f = Math.tan(parseFloat(l[0]) * Oc);
17002          qr(n, [1, f, 0, 1, 0, 0], n);
17003          break;
17004        case "matrix":
17005          n[0] = parseFloat(l[0]), n[1] = parseFloat(l[1]), n[2] = parseFloat(l[2]), n[3] = parseFloat(l[3]), n[4] = parseFloat(l[4]), n[5] = parseFloat(l[5]);
17006          break;
17007      }
17008    }
17009    e.setLocalTransform(n);
17010  }
17011}
17012var zS = /([^\s:;]+)\s*:\s*([^:;]+)/g;
17013function BM(r, e, t) {
17014  var a = r.getAttribute("style");
17015  if (a) {
17016    zS.lastIndex = 0;
17017    for (var n; (n = zS.exec(a)) != null; ) {
17018      var i = n[1], o = X(th, i) ? th[i] : null;
17019      o && (e[o] = n[2]);
17020      var s = X(eh, i) ? eh[i] : null;
17021      s && (t[s] = n[2]);
17022    }
17023  }
17024}
17025function LG(r, e, t) {
17026  for (var a = 0; a < PS.length; a++) {
17027    var n = PS[a], i = r.getAttribute(n);
17028    i != null && (e[th[n]] = i);
17029  }
17030  for (var a = 0; a < RS.length; a++) {
17031    var n = RS[a], i = r.getAttribute(n);
17032    i != null && (t[eh[n]] = i);
17033  }
17034}
17035function zM(r, e) {
17036  var t = e.width / r.width, a = e.height / r.height, n = Math.min(t, a);
17037  return { scale: n, x: -(r.x + r.width / 2) * n + (e.x + e.width / 2), y: -(r.y + r.height / 2) * n + (e.y + e.height / 2) };
17038}
17039function PG(r, e) {
17040  var t = new wG();
17041  return t.parse(r, e);
17042}
17043var RG = Z(["rect", "circle", "line", "ellipse", "polygon", "polyline", "path", "text", "tspan", "g"]), EG = function() {
17044  function r(e, t) {
17045    this.type = "geoSVG", this._usedGraphicMap = Z(), this._freedGraphics = [], this._mapName = e, this._parsedXML = NM(t);
17046  }
17047  return r.prototype.load = function() {
17048    var e = this._firstGraphic;
17049    if (!e) {
17050      e = this._firstGraphic = this._buildGraphic(this._parsedXML), this._freedGraphics.push(e), this._boundingRect = this._firstGraphic.boundingRect.clone();
17051      var t = OG(e.named), a = t.regions, n = t.regionsMap;
17052      this._regions = a, this._regionsMap = n;
17053    }
17054    return { boundingRect: this._boundingRect, regions: this._regions, regionsMap: this._regionsMap };
17055  }, r.prototype._buildGraphic = function(e) {
17056    var t, a;
17057    try {
17058      t = e && PG(e, { ignoreViewBox: true, ignoreRootClip: true }) || {}, a = t.root, we(a != null);
17059    } catch (g) {
17060      throw new Error(`Invalid svg format
17061` + g.message);
17062    }
17063    var n = new at();
17064    n.add(a), n.isGeoSVGGraphicRoot = true;
17065    var i = t.width, o = t.height, s = t.viewBoxRect, l = this._boundingRect;
17066    if (!l) {
17067      var u = void 0, f = void 0, h = void 0, v = void 0;
17068      if (i != null ? (u = 0, h = i) : s && (u = s.x, h = s.width), o != null ? (f = 0, v = o) : s && (f = s.y, v = s.height), u == null || f == null) {
17069        var c = a.getBoundingRect();
17070        u == null && (u = c.x, h = c.width), f == null && (f = c.y, v = c.height);
17071      }
17072      l = this._boundingRect = new ht(u, f, h, v);
17073    }
17074    if (s) {
17075      var p = zM(s, l);
17076      a.scaleX = a.scaleY = p.scale, a.x = p.x, a.y = p.y;
17077    }
17078    n.setClipPath(new xt({ shape: l.plain() }));
17079    var d = [];
17080    return D(t.named, function(g) {
17081      RG.get(g.svgNodeTagLower) != null && (d.push(g), kG(g.el));
17082    }), { root: n, boundingRect: l, named: d };
17083  }, r.prototype.useGraphic = function(e) {
17084    var t = this._usedGraphicMap, a = t.get(e);
17085    return a || (a = this._freedGraphics.pop() || this._buildGraphic(this._parsedXML), t.set(e, a), a);
17086  }, r.prototype.freeGraphic = function(e) {
17087    var t = this._usedGraphicMap, a = t.get(e);
17088    a && (t.removeKey(e), this._freedGraphics.push(a));
17089  }, r;
17090}();
17091function kG(r) {
17092  r.silent = false, r.isGroup && r.traverse(function(e) {
17093    e.silent = false;
17094  });
17095}
17096function OG(r) {
17097  var e = [], t = Z();
17098  return D(r, function(a) {
17099    if (a.namedFrom == null) {
17100      var n = new xz(a.name, a.el);
17101      e.push(n), t.set(a.name, n);
17102    }
17103  }), { regions: e, regionsMap: t };
17104}
17105var $d = [126, 25], VS = "\u5357\u6D77\u8BF8\u5C9B", zn = [[[0, 3.5], [7, 11.2], [15, 11.9], [30, 7], [42, 0.7], [52, 0.7], [56, 7.7], [59, 0.7], [64, 0.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]]];
17106for (var Nn = 0; Nn < zn.length; Nn++) for (var Hi = 0; Hi < zn[Nn].length; Hi++) zn[Nn][Hi][0] /= 10.5, zn[Nn][Hi][1] /= -10.5 / 0.75, zn[Nn][Hi][0] += $d[0], zn[Nn][Hi][1] += $d[1];
17107function NG(r, e) {
17108  if (r === "china") {
17109    for (var t = 0; t < e.length; t++) if (e[t].name === VS) return;
17110    e.push(new kD(VS, G(zn, function(a) {
17111      return { type: "polygon", exterior: a };
17112    }), $d));
17113  }
17114}
17115var BG = { \u5357\u6D77\u8BF8\u5C9B: [32, 80], \u5E7F\u4E1C: [0, -10], \u9999\u6E2F: [10, 5], \u6FB3\u95E8: [-10, 10], \u5929\u6D25: [5, 5] };
17116function zG(r, e) {
17117  if (r === "china") {
17118    var t = BG[e.name];
17119    if (t) {
17120      var a = e.getCenter();
17121      a[0] += t[0] / 10.5, a[1] += -t[1] / (10.5 / 0.75), e.setCenter(a);
17122    }
17123  }
17124}
17125var VG = [[[123.45165252685547, 25.73527164402261], [123.49731445312499, 25.73527164402261], [123.49731445312499, 25.750734064600884], [123.45165252685547, 25.750734064600884], [123.45165252685547, 25.73527164402261]]];
17126function GG(r, e) {
17127  r === "china" && e.name === "\u53F0\u6E7E" && e.geometries.push({ type: "polygon", exterior: VG[0] });
17128}
17129var FG = "name", HG = function() {
17130  function r(e, t, a) {
17131    this.type = "geoJSON", this._parsedMap = Z(), this._mapName = e, this._specialAreas = a, this._geoJSON = UG(t);
17132  }
17133  return r.prototype.load = function(e, t) {
17134    t = t || FG;
17135    var a = this._parsedMap.get(t);
17136    if (!a) {
17137      var n = this._parseToRegions(t);
17138      a = this._parsedMap.set(t, { regions: n, boundingRect: WG(n) });
17139    }
17140    var i = Z(), o = [];
17141    return D(a.regions, function(s) {
17142      var l = s.name;
17143      e && X(e, l) && (s = s.cloneShallow(l = e[l])), o.push(s), i.set(l, s);
17144    }), { regions: o, boundingRect: a.boundingRect || new ht(0, 0, 0, 0), regionsMap: i };
17145  }, r.prototype._parseToRegions = function(e) {
17146    var t = this._mapName, a = this._geoJSON, n;
17147    try {
17148      n = a ? Nd(a, e) : [];
17149    } catch (i) {
17150      throw new Error(`Invalid geoJson format
17151` + i.message);
17152    }
17153    return NG(t, n), D(n, function(i) {
17154      var o = i.name;
17155      zG(t, i), GG(t, i);
17156      var s = this._specialAreas && this._specialAreas[o];
17157      s && i.transformTo(s.left, s.top, s.width, s.height);
17158    }, this), n;
17159  }, r.prototype.getMapForUser = function() {
17160    return { geoJson: this._geoJSON, geoJSON: this._geoJSON, specialAreas: this._specialAreas };
17161  }, r;
17162}();
17163function WG(r) {
17164  for (var e, t = 0; t < r.length; t++) {
17165    var a = r[t].getBoundingRect();
17166    e = e || a.clone(), e.union(a);
17167  }
17168  return e;
17169}
17170function UG(r) {
17171  return Y(r) ? typeof JSON < "u" && JSON.parse ? JSON.parse(r) : new Function("return (" + r + ");")() : r;
17172}
17173var cs = Z();
17174const wa = { registerMap: function(r, e, t) {
17175  if (e.svg) {
17176    var a = new EG(r, e.svg);
17177    cs.set(r, a);
17178  } else {
17179    var n = e.geoJson || e.geoJSON;
17180    n && !e.features ? t = e.specialAreas : n = e;
17181    var a = new HG(r, n, t);
17182    cs.set(r, a);
17183  }
17184}, getGeoResource: function(r) {
17185  return cs.get(r);
17186}, getMapForUser: function(r) {
17187  var e = cs.get(r);
17188  return e && e.type === "geoJSON" && e.getMapForUser();
17189}, load: function(r, e, t) {
17190  var a = cs.get(r);
17191  if (a) return a.load(e, t);
17192} };
17193var am = ["rect", "circle", "line", "ellipse", "polygon", "polyline", "path"], YG = Z(am), $G = Z(am.concat(["g"])), XG = Z(am.concat(["g"])), VM = bt();
17194function zu(r) {
17195  var e = r.getItemStyle(), t = r.get("areaColor");
17196  return t != null && (e.fill = t), e;
17197}
17198function GS(r) {
17199  var e = r.style;
17200  e && (e.stroke = e.stroke || e.fill, e.fill = null);
17201}
17202var GM = function() {
17203  function r(e) {
17204    var t = new at();
17205    this.uid = No("ec_map_draw"), this._controller = new ql(e.getZr()), this._controllerHost = { target: t }, this.group = t, t.add(this._regionsGroup = new at()), t.add(this._svgGroup = new at());
17206  }
17207  return r.prototype.draw = function(e, t, a, n, i) {
17208    var o = e.mainType === "geo", s = e.getData && e.getData();
17209    o && t.eachComponent({ mainType: "series", subType: "map" }, function(y) {
17210      !s && y.getHostGeoModel() === e && (s = y.getData());
17211    });
17212    var l = e.coordinateSystem, u = this._regionsGroup, f = this.group, h = l.getTransformInfo(), v = h.raw, c = h.roam, p = !u.childAt(0) || i;
17213    p ? (f.x = c.x, f.y = c.y, f.scaleX = c.scaleX, f.scaleY = c.scaleY, f.dirty()) : Tt(f, c, e);
17214    var d = s && s.getVisual("visualMeta") && s.getVisual("visualMeta").length > 0, g = { api: a, geo: l, mapOrGeoModel: e, data: s, isVisualEncodedByVisualMap: d, isGeo: o, transformInfoRaw: v };
17215    l.resourceType === "geoJSON" ? this._buildGeoJSON(g) : l.resourceType === "geoSVG" && this._buildSVG(g), this._updateController(e, t, a), this._updateMapSelectHandler(e, u, a, n);
17216  }, r.prototype._buildGeoJSON = function(e) {
17217    var t = this._regionsGroupByName = Z(), a = Z(), n = this._regionsGroup, i = e.transformInfoRaw, o = e.mapOrGeoModel, s = e.data, l = e.geo.projection, u = l && l.stream;
17218    function f(c, p) {
17219      return p && (c = p(c)), c && [c[0] * i.scaleX + i.x, c[1] * i.scaleY + i.y];
17220    }
17221    function h(c) {
17222      for (var p = [], d = !u && l && l.project, g = 0; g < c.length; ++g) {
17223        var y = f(c[g], d);
17224        y && p.push(y);
17225      }
17226      return p;
17227    }
17228    function v(c) {
17229      return { shape: { points: h(c) } };
17230    }
17231    n.removeAll(), D(e.geo.regions, function(c) {
17232      var p = c.name, d = t.get(p), g = a.get(p) || {}, y = g.dataIdx, m = g.regionModel;
17233      if (!d) {
17234        d = t.set(p, new at()), n.add(d), y = s ? s.indexOfName(p) : null, m = e.isGeo ? o.getRegionModel(p) : s ? s.getItemModel(y) : null;
17235        var _ = m.get("silent", true);
17236        _ != null && (d.silent = _), a.set(p, { dataIdx: y, regionModel: m });
17237      }
17238      var S = [], b = [];
17239      D(c.geometries, function(T) {
17240        if (T.type === "polygon") {
17241          var C = [T.exterior].concat(T.interiors || []);
17242          u && (C = $S(C, u)), D(C, function(M) {
17243            S.push(new Ce(v(M)));
17244          });
17245        } else {
17246          var A = T.points;
17247          u && (A = $S(A, u, true)), D(A, function(M) {
17248            b.push(new De(v(M)));
17249          });
17250        }
17251      });
17252      var x = f(c.getCenter(), l && l.project);
17253      function w(T, C) {
17254        if (T.length) {
17255          var A = new Oh({ culling: true, segmentIgnoreThreshold: 1, shape: { paths: T } });
17256          d.add(A), FS(e, A, y, m), HS(e, A, p, m, o, y, x), C && (GS(A), D(A.states, GS));
17257        }
17258      }
17259      w(S), w(b, true);
17260    }), t.each(function(c, p) {
17261      var d = a.get(p), g = d.dataIdx, y = d.regionModel;
17262      WS(e, c, p, y, o, g), US(e, c, p, y, o), YS(e, c, p, y, o);
17263    }, this);
17264  }, r.prototype._buildSVG = function(e) {
17265    var t = e.geo.map, a = e.transformInfoRaw;
17266    this._svgGroup.x = a.x, this._svgGroup.y = a.y, this._svgGroup.scaleX = a.scaleX, this._svgGroup.scaleY = a.scaleY, this._svgResourceChanged(t) && (this._freeSVG(), this._useSVG(t));
17267    var n = this._svgDispatcherMap = Z(), i = false;
17268    D(this._svgGraphicRecord.named, function(o) {
17269      var s = o.name, l = e.mapOrGeoModel, u = e.data, f = o.svgNodeTagLower, h = o.el, v = u ? u.indexOfName(s) : null, c = l.getRegionModel(s);
17270      YG.get(f) != null && h instanceof vr && FS(e, h, v, c), h instanceof vr && (h.culling = true);
17271      var p = c.get("silent", true);
17272      if (p != null && (h.silent = p), h.z2EmphasisLift = 0, !o.namedFrom && (XG.get(f) != null && HS(e, h, s, c, l, v, null), WS(e, h, s, c, l, v), US(e, h, s, c, l), $G.get(f) != null)) {
17273        var d = YS(e, h, s, c, l);
17274        d === "self" && (i = true);
17275        var g = n.get(s) || n.set(s, []);
17276        g.push(h);
17277      }
17278    }, this), this._enableBlurEntireSVG(i, e);
17279  }, r.prototype._enableBlurEntireSVG = function(e, t) {
17280    if (e && t.isGeo) {
17281      var a = t.mapOrGeoModel.getModel(["blur", "itemStyle"]).getItemStyle(), n = a.opacity;
17282      this._svgGraphicRecord.root.traverse(function(i) {
17283        if (!i.isGroup) {
17284          ci(i);
17285          var o = i.ensureState("blur").style || {};
17286          o.opacity == null && n != null && (o.opacity = n), i.ensureState("emphasis");
17287        }
17288      });
17289    }
17290  }, r.prototype.remove = function() {
17291    this._regionsGroup.removeAll(), this._regionsGroupByName = null, this._svgGroup.removeAll(), this._freeSVG(), this._controller.dispose(), this._controllerHost = null;
17292  }, r.prototype.findHighDownDispatchers = function(e, t) {
17293    if (e == null) return [];
17294    var a = t.coordinateSystem;
17295    if (a.resourceType === "geoJSON") {
17296      var n = this._regionsGroupByName;
17297      if (n) {
17298        var i = n.get(e);
17299        return i ? [i] : [];
17300      }
17301    } else if (a.resourceType === "geoSVG") return this._svgDispatcherMap && this._svgDispatcherMap.get(e) || [];
17302  }, r.prototype._svgResourceChanged = function(e) {
17303    return this._svgMapName !== e;
17304  }, r.prototype._useSVG = function(e) {
17305    var t = wa.getGeoResource(e);
17306    if (t && t.type === "geoSVG") {
17307      var a = t.useGraphic(this.uid);
17308      this._svgGroup.add(a.root), this._svgGraphicRecord = a, this._svgMapName = e;
17309    }
17310  }, r.prototype._freeSVG = function() {
17311    var e = this._svgMapName;
17312    if (e != null) {
17313      var t = wa.getGeoResource(e);
17314      t && t.type === "geoSVG" && t.freeGraphic(this.uid), this._svgGraphicRecord = null, this._svgDispatcherMap = null, this._svgGroup.removeAll(), this._svgMapName = null;
17315    }
17316  }, r.prototype._updateController = function(e, t, a) {
17317    var n = e.coordinateSystem, i = this._controller, o = this._controllerHost;
17318    o.zoomLimit = e.get("scaleLimit"), o.zoom = n.getZoom(), i.enable(e.get("roam") || false);
17319    var s = e.mainType;
17320    function l() {
17321      var u = { type: "geoRoam", componentType: s };
17322      return u[s + "Id"] = e.id, u;
17323    }
17324    i.off("pan").on("pan", function(u) {
17325      this._mouseDownFlag = false, em(o, u.dx, u.dy), a.dispatchAction(z(l(), { dx: u.dx, dy: u.dy, animation: { duration: 0 } }));
17326    }, this), i.off("zoom").on("zoom", function(u) {
17327      this._mouseDownFlag = false, rm(o, u.scale, u.originX, u.originY), a.dispatchAction(z(l(), { totalZoom: o.zoom, zoom: u.scale, originX: u.originX, originY: u.originY, animation: { duration: 0 } }));
17328    }, this), i.setPointerChecker(function(u, f, h) {
17329      return n.containPoint([f, h]) && !ev(u, a, e);
17330    });
17331  }, r.prototype.resetForLabelLayout = function() {
17332    this.group.traverse(function(e) {
17333      var t = e.getTextContent();
17334      t && (t.ignore = VM(t).ignore);
17335    });
17336  }, r.prototype._updateMapSelectHandler = function(e, t, a, n) {
17337    var i = this;
17338    t.off("mousedown"), t.off("click"), e.get("selectedMode") && (t.on("mousedown", function() {
17339      i._mouseDownFlag = true;
17340    }), t.on("click", function(o) {
17341      i._mouseDownFlag && (i._mouseDownFlag = false);
17342    }));
17343  }, r;
17344}();
17345function FS(r, e, t, a) {
17346  var n = a.getModel("itemStyle"), i = a.getModel(["emphasis", "itemStyle"]), o = a.getModel(["blur", "itemStyle"]), s = a.getModel(["select", "itemStyle"]), l = zu(n), u = zu(i), f = zu(s), h = zu(o), v = r.data;
17347  if (v) {
17348    var c = v.getItemVisual(t, "style"), p = v.getItemVisual(t, "decal");
17349    r.isVisualEncodedByVisualMap && c.fill && (l.fill = c.fill), p && (l.decal = xo(p, r.api));
17350  }
17351  e.setStyle(l), e.style.strokeNoScale = true, e.ensureState("emphasis").style = u, e.ensureState("select").style = f, e.ensureState("blur").style = h, ci(e);
17352}
17353function HS(r, e, t, a, n, i, o) {
17354  var s = r.data, l = r.isGeo, u = s && isNaN(s.get(s.mapDimension("value"), i)
17354), f = s && s.getItemLayout(i);
17355  if (l || u || f && f.showLabel) {
17356    var h = l ? t : i, v = void 0;
17357    (!s || i >= 0) && (v = n);
17358    var c = o ? { normal: { align: "center", verticalAlign: "middle" } } : null;
17359    de(e, se(a), { labelFetcher: v, labelDataIndex: h, defaultText: t }, c);
17360    var p = e.getTextContent();
17361    if (p && (VM(p).ignore = p.ignore, e.textConfig && o)) {
17362      var d = e.getBoundingRect().clone();
17363      e.textConfig.layoutRect = d, e.textConfig.position = [(o[0] - d.x) / d.width * 100 + "%", (o[1] - d.y) / d.height * 100 + "%"];
17364    }
17365    e.disableLabelAnimation = true;
17366  } else e.removeTextContent(), e.removeTextConfig(), e.disableLabelAnimation = null;
17367}
17368function WS(r, e, t, a, n, i) {
17369  r.data ? r.data.setItemGraphicEl(i, e) : it(e).eventData = { componentType: "geo", componentIndex: n.componentIndex, geoIndex: n.componentIndex, name: t, region: a && a.option || {} };
17370}
17371function US(r, e, t, a, n) {
17372  r.data || Si({ el: e, componentModel: n, itemName: t, itemTooltipOption: a.get("tooltip") });
17373}
17374function YS(r, e, t, a, n) {
17375  e.highDownSilentOnTouch = !!n.get("selectedMode");
17376  var i = a.getModel("emphasis"), o = i.get("focus");
17377  return Wt(e, o, i.get("blurScope"), i.get("disabled")), r.isGeo && LE(e, n, t), o;
17378}
17379function $S(r, e, t) {
17380  var a = [], n;
17381  function i() {
17382    n = [];
17383  }
17384  function o() {
17385    n.length && (a.push(n), n = []);
17386  }
17387  var s = e({ polygonStart: i, polygonEnd: o, lineStart: i, lineEnd: o, point: function(l, u) {
17388    isFinite(l) && isFinite(u) && n.push([l, u]);
17389  }, sphere: function() {
17390  } });
17391  return !t && s.polygonStart(), D(r, function(l) {
17392    s.lineStart();
17393    for (var u = 0; u < l.length; u++) s.point(l[u][0], l[u][1]);
17394    s.lineEnd();
17395  }), !t && s.polygonEnd(), a;
17396}
17397var ZG = function(r) {
17398  N(e, r);
17399  function e() {
17400    var t = r !== null && r.apply(this, arguments) || this;
17401    return t.type = e.type, t;
17402  }
17403  return e.prototype.render = function(t, a, n, i) {
17404    if (!(i && i.type === "mapToggleSelect" && i.from === this.uid)) {
17405      var o = this.group;
17406      if (o.removeAll(), !t.getHostGeoModel()) {
17407        if (this._mapDraw && i && i.type === "geoRoam" && this._mapDraw.resetForLabelLayout(), i && i.type === "geoRoam" && i.componentType === "series" && i.seriesId === t.id) {
17408          var s = this._mapDraw;
17409          s && o.add(s.group);
17410        } else if (t.needsDrawMap) {
17411          var s = this._mapDraw || new GM(n);
17412          o.add(s.group), s.draw(t, a, n, this, i), this._mapDraw = s;
17413        } else this._mapDraw && this._mapDraw.remove(), this._mapDraw = null;
17414        t.get("showLegendSymbol") && a.getComponent("legend") && this._renderSymbols(t, a, n);
17415      }
17416    }
17417  }, e.prototype.remove = function() {
17418    this._mapDraw && this._mapDraw.remove(), this._mapDraw = null, this.group.removeAll();
17419  }, e.prototype.dispose = function() {
17420    this._mapDraw && this._mapDraw.remove(), this._mapDraw = null;
17421  }, e.prototype._renderSymbols = function(t, a, n) {
17422    var i = t.originalData, o = this.group;
17423    i.each(i.mapDimension("value"), function(s, l) {
17424      if (!isNaN(s)) {
17425        var u = i.getItemLayout(l);
17426        if (!(!u || !u.point)) {
17427          var f = u.point, h = u.offset, v = new ea({ style: { fill: t.getData().getVisual("style").fill }, shape: { cx: f[0] + h * 9, cy: f[1], r: 3 }, silent: true, z2: 8 + (h ? 0 : Io + 1) });
17428          if (!h) {
17429            var c = t.mainSeries.getData(), p = i.getName(l), d = c.indexOfName(p), g = i.getItemModel(l), y = g.getModel("label"), m = c.getItemGraphicEl(d);
17430            de(v, se(g), { labelFetcher: { getFormattedLabel: function(_, S) {
17431              return t.getFormattedLabel(d, S);
17432            } }, defaultText: p }), v.disableLabelAnimation = true, y.get("position") || v.setTextConfig({ position: "bottom" }), m.onHoverStateChange = function(_) {
17433              Rf(v, _);
17434            };
17435          }
17436          o.add(v);
17437        }
17438      }
17439    });
17440  }, e.type = "map", e;
17441}(Pt), qG = function(r) {
17442  N(e, r);
17443  function e() {
17444    var t = r !== null && r.apply(this, arguments) || this;
17445    return t.type = e.type, t.needsDrawMap = false, t.seriesGroup = [], t.getTooltipPosition = function(a) {
17446      if (a != null) {
17447        var n = this.getData().getName(a), i = this.coordinateSystem, o = i.getRegion(n);
17448        return o && i.dataToPoint(o.getCenter());
17449      }
17450    }, t;
17451  }
17452  return e.prototype.getInitialData = function(t) {
17453    for (var a = $o(this, { coordDimensions: ["value"], encodeDefaulter: lt(my, this) }), n = Z(), i = [], o = 0, s = a.count(); o < s; o++) {
17454      var l = a.getName(o);
17455      n.set(l, o);
17456    }
17457    var u = wa.load(this.getMapType(), this.option.nameMap, this.option.nameProperty);
17458    return D(u.regions, function(f) {
17459      var h = f.name, v = n.get(h), c = f.properties && f.properties.echartsStyle, p;
17460      v == null ? (p = { name: h }, i.push(p)) : p = a.getRawDataItem(v), c && ut(p, c);
17461    }), a.appendData(i), a;
17462  }, e.prototype.getHostGeoModel = function() {
17463    var t = this.option.geoIndex;
17464    return t != null ? this.ecModel.getComponent("geo", t) : null;
17465  }, e.prototype.getMapType = function() {
17466    return (this.getHostGeoModel() || this).option.map;
17467  }, e.prototype.getRawValue = function(t) {
17468    var a = this.getData();
17469    return a.get(a.mapDimension("value"), t);
17470  }, e.prototype.getRegionModel = function(t) {
17471    var a = this.getData();
17472    return a.getItemModel(a.indexOfName(t));
17473  }, e.prototype.formatTooltip = function(t, a, n) {
17474    for (var i = this.getData(), o = this.getRawValue(t), s = i.getName(t), l = this.seriesGroup, u = [], f = 0; f < l.length; f++) {
17475      var h = l[f].originalData.indexOfName(s), v = i.mapDimension("value");
17476      isNaN(l[f].originalData.get(v, h)) || u.push(l[f].name);
17477    }
17478    return le("section", { header: u.join(", "), noHeader: !u.length, blocks: [le("nameValue", { name: s, value: o })] });
17479  }, e.prototype.setZoom = function(t) {
17480    this.option.zoom = t;
17481  }, e.prototype.setCenter = function(t) {
17482    this.option.center = t;
17483  }, e.prototype.getLegendIcon = function(t) {
17484    var a = t.icon || "roundRect", n = qt(a, 0, 0, t.itemWidth, t.itemHeight, t.itemStyle.fill);
17485    return n.setStyle(t.itemStyle), n.style.stroke = "none", a.indexOf("empty") > -1 && (n.style.stroke = n.style.fill, n.style.fill = "#fff", n.style.lineWidth = 2), n;
17486  }, e.type = "series.map", e.dependencies = ["geo"], e.layoutMode = "box", e.defaultOption = { z: 2, coordinateSystem: "geo", map: "", left: "center", top: "center", aspectScale: null, showLegendSymbol: true, boundingCoords: null, center: null, zoom: 1, scaleLimit: null, selectedMode: true, label: { show: false, color: "#000" }, itemStyle: { borderWidth: 0.5, borderColor: "#444", areaColor: "#eee" }, emphasis: { label: { show: true, color: "rgb(100,0,0)" }, itemStyle: { areaColor: "rgba(255,215,0,0.8)" } }, select: { label: { show: true, color: "rgb(100,0,0)" }, itemStyle: { color: "rgba(255,215,0,0.8)" } }, nameProperty: "name" }, e;
17487}(Et);
17488function KG(r, e) {
17489  var t = {};
17490  return D(r, function(a) {
17491    a.each(a.mapDimension("value"), function(n, i) {
17492      var o = "ec-" + a.getName(i);
17493      t[o] = t[o] || [], isNaN(n) || t[o].push(n);
17494    });
17495  }), r[0].map(r[0].mapDimension("value"), function(a, n) {
17496    for (var i = "ec-" + r[0].getName(n), o = 0, s = 1 / 0, l = -1 / 0, u = t[i].length, f = 0; f < u; f++) s = Math.min(s, t[i][f]), l = Math.max(l, t[i][f]), o += t[i][f];
17497    var h;
17498    return e === "min" ? h = s : e === "max" ? h = l : e === "average" ? h = o / u : h = o, u === 0 ? NaN : h;
17499  });
17500}
17501function jG(r) {
17502  var e = {};
17503  r.eachSeriesByType("map", function(t) {
17504    var a = t.getHostGeoModel(), n = a ? "o" + a.id : "i" + t.getMapType();
17505    (e[n] = e[n] || []).push(t);
17506  }), D(e, function(t, a) {
17507    for (var n = KG(G(t, function(o) {
17508      return o.getData();
17509    }), t[0].get("mapValueCalculation")), i = 0; i < t.length; i++) t[i].originalData = t[i].getData();
17510    for (var i = 0; i < t.length; i++) t[i].seriesGroup = t, t[i].needsDrawMap = i === 0 && !t[i].getHostGeoModel(), t[i].setData(n.
17510cloneShallow()), t[i].mainSeries = t[0];
17511  });
17512}
17513function JG(r) {
17514  var e = {};
17515  r.eachSeriesByType("map", function(t) {
17516    var a = t.getMapType();
17517    if (!(t.getHostGeoModel() || e[a])) {
17518      var n = {};
17519      D(t.seriesGroup, function(o) {
17520        var s = o.coordinateSystem, l = o.originalData;
17521        o.get("showLegendSymbol") && r.getComponent("legend") && l.each(l.mapDimension("value"), function(u, f) {
17522          var h = l.getName(f), v = s.getRegion(h);
17523          if (!(!v || isNaN(u))) {
17524            var c = n[h] || 0, p = s.dataToPoint(v.getCenter());
17525            n[h] = c + 1, l.setItemLayout(f, { point: p, offset: c });
17526          }
17527        });
17528      });
17529      var i = t.getData();
17530      i.each(function(o) {
17531        var s = i.getName(o), l = i.getItemLayout(o) || {};
17532        l.showLabel = !n[s], i.setItemLayout(o, l);
17533      }), e[a] = true;
17534    }
17535  });
17536}
17537var XS = he, Kl = function(r) {
17538  N(e, r);
17539  function e(t) {
17540    var a = r.call(this) || this;
17541    return a.type = "view", a.dimensions = ["x", "y"], a._roamTransformable = new ca(), a._rawTransformable = new ca(), a.name = t, a;
17542  }
17543  return e.prototype.setBoundingRect = function(t, a, n, i) {
17544    return this._rect = new ht(t, a, n, i), this._rect;
17545  }, e.prototype.getBoundingRect = function() {
17546    return this._rect;
17547  }, e.prototype.setViewRect = function(t, a, n, i) {
17548    this._transformTo(t, a, n, i), this._viewRect = new ht(t, a, n, i);
17549  }, e.prototype._transformTo = function(t, a, n, i) {
17550    var o = this.getBoundingRect(), s = this._rawTransformable;
17551    s.transform = o.calculateTransform(new ht(t, a, n, i));
17552    var l = s.parent;
17553    s.parent = null, s.decomposeTransform(), s.parent = l, this._updateTransform();
17554  }, e.prototype.setCenter = function(t, a) {
17555    t && (this._center = [W(t[0], a.getWidth()), W(t[1], a.getHeight())], this._updateCenterAndZoom());
17556  }, e.prototype.setZoom = function(t) {
17557    t = t || 1;
17558    var a = this.zoomLimit;
17559    a && (a.max != null && (t = Math.min(a.max, t)), a.min != null && (t = Math.max(a.min, t))), this._zoom = t, this._updateCenterAndZoom();
17560  }, e.prototype.getDefaultCenter = function() {
17561    var t = this.getBoundingRect(), a = t.x + t.width / 2, n = t.y + t.height / 2;
17562    return [a, n];
17563  }, e.prototype.getCenter = function() {
17564    return this._center || this.getDefaultCenter();
17565  }, e.prototype.getZoom = function() {
17566    return this._zoom || 1;
17567  }, e.prototype.getRoamTransform = function() {
17568    return this._roamTransformable.getLocalTransform();
17569  }, e.prototype._updateCenterAndZoom = function() {
17570    var t = this._rawTransformable.getLocalTransform(), a = this._roamTransformable, n = this.getDefaultCenter(), i = this.getCenter(), o = this.getZoom();
17571    i = he([], i, t), n = he([], n, t), a.originX = i[0], a.originY = i[1], a.x = n[0] - i[0], a.y = n[1] - i[1], a.scaleX = a.scaleY = o, this._updateTransform();
17572  }, e.prototype._updateTransform = function() {
17573    var t = this._roamTransformable, a = this._rawTransformable;
17574    a.parent = t, t.updateTransform(), a.updateTransform(), wh(this.transform || (this.transform = []), a.transform || He()), this._rawTransform = a.getLocalTransform(), this.invTransform = this.invTransform || [], _i(this.invTransform, this.transform), this.decomposeTransform();
17575  }, e.prototype.getTransformInfo = function() {
17576    var t = this._rawTransformable, a = this._roamTransformable, n = new ca();
17577    return n.transform = a.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 } };
17578  }, e.prototype.getViewRect = function() {
17579    return this._viewRect;
17580  }, e.prototype.getViewRectAfterRoam = function() {
17581    var t = this.getBoundingRect().clone();
17582    return t.applyTransform(this.transform), t;
17583  }, e.prototype.dataToPoint = function(t, a, n) {
17584    var i = a ? this._rawTransform : this.transform;
17585    return n = n || [], i ? XS(n, t, i) : _e(n, t);
17586  }, e.prototype.pointToData = function(t) {
17587    var a = this.invTransform;
17588    return a ? XS([], t, a) : [t[0], t[1]];
17589  }, e.prototype.convertToPixel = function(t, a, n) {
17590    var i = ZS(a);
17591    return i === this ? i.dataToPoint(n) : null;
17592  }, e.prototype.convertFromPixel = function(t, a, n) {
17593    var i = ZS(a);
17594    return i === this ? i.pointToData(n) : null;
17595  }, e.prototype.containPoint = function(t) {
17596    return this.getViewRectAfterRoam().contain(t[0], t[1]);
17597  }, e.dimensions = ["x", "y"], e;
17598}(ca);
17599function ZS(r) {
17600  var e = r.seriesModel;
17601  return e ? e.coordinateSystem : null;
17602}
17603var QG = { geoJSON: { aspectScale: 0.75, invertLongitute: true }, geoSVG: { aspectScale: 1, invertLongitute: false } }, FM = ["lng", "lat"], Xd = function(r) {
17604  N(e, r);
17605  function e(t, a, n) {
17606    var i = r.call(this, t) || this;
17607    i.dimensions = FM, i.type = "geo", i._nameCoordMap = Z(), i.map = a;
17608    var o = n.projection, s = wa.load(a, n.nameMap, n.nameProperty), l = wa.getGeoResource(a);
17609    i.resourceType = l ? l.type : null;
17610    var u = i.regions = s.regions, f = QG[l.type];
17611    i._regionsMap = s.regionsMap, i.regions = s.regions, i.projection = o;
17612    var h;
17613    if (o) for (var v = 0; v < u.length; v++) {
17614      var c = u[v].getBoundingRect(o);
17615      h = h || c.clone(), h.union(c);
17616    }
17617    else h = s.boundingRect;
17618    return i.setBoundingRect(h.x, h.y, h.width, h.height), i.aspectScale = o ? 1 : st(n.aspectScale, f.aspectScale), i._invertLongitute = o ? false : f.invertLongitute, i;
17619  }
17620  return e.prototype._transformTo = function(t, a, n, i) {
17621    var o = this.getBoundingRect(), s = this._invertLongitute;
17622    o = o.clone(), s && (o.y = -o.y - o.height);
17623    var l = this._rawTransformable;
17624    l.transform = o.calculateTransform(new ht(t, a, n, i));
17625    var u = l.parent;
17626    l.parent = null, l.decomposeTransform(), l.parent = u, s && (l.scaleY = -l.scaleY), this._updateTransform();
17627  }, e.prototype.getRegion = function(t) {
17628    return this._regionsMap.get(t);
17629  }, e.prototype.getRegionByCoord = function(t) {
17630    for (var a = this.regions, n = 0; n < a.length; n++) {
17631      var i = a[n];
17632      if (i.type === "geoJSON" && i.contain(t)) return a[n];
17633    }
17634  }, e.prototype.addGeoCoord = function(t, a) {
17635    this._nameCoordMap.set(t, a);
17636  }, e.prototype.getGeoCoord = function(t) {
17637    var a = this._regionsMap.get(t);
17638    return this._nameCoordMap.get(t) || a && a.getCenter();
17639  }, e.prototype.dataToPoint = function(t, a, n) {
17640    if (Y(t) && (t = this.getGeoCoord(t)), t) {
17641      var i = this.projection;
17642      return i && (t = i.project(t)), t && this.projectedToPoint(t, a, n);
17643    }
17644  }, e.prototype.pointToData = function(t) {
17645    var a = this.projection;
17646    return a && (t = a.unproject(t)), t && this.pointToProjected(t);
17647  }, e.prototype.pointToProjected = function(t) {
17648    return r.prototype.pointToData.call(this, t);
17649  }, e.prototype.projectedToPoint = function(t, a, n) {
17650    return r.prototype.dataToPoint.call(this, t, a, n);
17651  }, e.prototype.convertToPixel = function(t, a, n) {
17652    var i = qS(a);
17653    return i === this ? i.dataToPoint(n) : null;
17654  }, e.prototype.convertFromPixel = function(t, a, n) {
17655    var i = qS(a);
17656    return i === this ? i.pointToData(n) : null;
17657  }, e;
17658}(Kl);
17659Xt(Xd, Kl);
17660function qS(r) {
17661  var e = r.geoModel, t = r.seriesModel;
17662  return e ? e.coordinateSystem : t ? t.coordinateSystem || (t.getReferringComponents("geo", Jt).models[0] || {}).coordinateSystem : null;
17663}
17664function KS(r, e) {
17665  var t = r.get("boundingCoords");
17666  if (t != null) {
17667    var a = t[0], n = t[1];
17668    if (isFinite(a[0]) && isFinite(a[1]) && isFinite(n[0]) && isFinite(n[1])) {
17669      var i = this.projection;
17670      if (i) {
17671        var o = a[0], s = a[1], l = n[0], u = n[1];
17672        a = [1 / 0, 1 / 0], n = [-1 / 0, -1 / 0];
17673        var f = function(x, w, T, C) {
17674          for (var A = T - x, M = C - w, I = 0; I <= 100; I++) {
17675            var L = I / 100, P = i.project([x + A * L, w + M * L]);
17676            ha(a, a, P), va(n, n, P);
17677          }
17678        };
17679        f(o, s, l, s), f(l, s, l, u), f(l, u, o, u), f(o, u, l, s);
17680      }
17681      this.setBoundingRect(a[0], a[1], n[0] - a[0], n[1] - a[1]);
17682    }
17683  }
17684  var h = this.getBoundingRect(), v = r.get("layoutCenter"), c = r.get("layoutSize"), p = e.getW
17684idth(), d = e.getHeight(), g = h.width / h.height * this.aspectScale, y = false, m, _;
17685  v && c && (m = [W(v[0], p), W(v[1], d)], _ = W(c, Math.min(p, d)), !isNaN(m[0]) && !isNaN(m[1]) && !isNaN(_) && (y = true));
17686  var S;
17687  if (y) S = {}, g > 1 ? (S.width = _, S.height = _ / g) : (S.height = _, S.width = _ * g), S.y = m[1] - S.height / 2, S.x = m[0] - S.width / 2;
17688  else {
17689    var b = r.getBoxLayoutParams();
17690    b.aspect = g, S = Qt(b, { width: p, height: d });
17691  }
17692  this.setViewRect(S.x, S.y, S.width, S.height), this.setCenter(r.get("center"), e), this.setZoom(r.get("zoom"));
17693}
17694function tF(r, e) {
17695  D(e.get("geoCoord"), function(t, a) {
17696    r.addGeoCoord(a, t);
17697  });
17698}
17699var eF = function() {
17700  function r() {
17701    this.dimensions = FM;
17702  }
17703  return r.prototype.create = function(e, t) {
17704    var a = [];
17705    function n(o) {
17706      return { nameProperty: o.get("nameProperty"), aspectScale: o.get("aspectScale"), projection: o.get("projection") };
17707    }
17708    e.eachComponent("geo", function(o, s) {
17709      var l = o.get("map"), u = new Xd(l + s, l, z({ nameMap: o.get("nameMap") }, n(o)));
17710      u.zoomLimit = o.get("scaleLimit"), a.push(u), o.coordinateSystem = u, u.model = o, u.resize = KS, u.resize(o, t);
17711    }), e.eachSeries(function(o) {
17712      var s = o.get("coordinateSystem");
17713      if (s === "geo") {
17714        var l = o.get("geoIndex") || 0;
17715        o.coordinateSystem = a[l];
17716      }
17717    });
17718    var i = {};
17719    return e.eachSeriesByType("map", function(o) {
17720      if (!o.getHostGeoModel()) {
17721        var s = o.getMapType();
17722        i[s] = i[s] || [], i[s].push(o);
17723      }
17724    }), D(i, function(o, s) {
17725      var l = G(o, function(f) {
17726        return f.get("nameMap");
17727      }), u = new Xd(s, s, z({ nameMap: Sh(l) }, n(o[0])));
17728      u.zoomLimit = ne.apply(null, G(o, function(f) {
17729        return f.get("scaleLimit");
17730      })), a.push(u), u.resize = KS, u.resize(o[0], t), D(o, function(f) {
17731        f.coordinateSystem = u, tF(u, f);
17732      });
17733    }), a;
17734  }, r.prototype.getFilledRegions = function(e, t, a, n) {
17735    for (var i = (e || []).slice(), o = Z(), s = 0; s < i.length; s++) o.set(i[s].name, i[s]);
17736    var l = wa.load(t, a, n);
17737    return D(l.regions, function(u) {
17738      var f = u.name, h = o.get(f), v = u.properties && u.properties.echartsStyle;
17739      h || (h = { name: f }, i.push(h)), v && ut(h, v);
17740    }), i;
17741  }, r;
17742}(), HM = new eF(), rF = function(r) {
17743  N(e, r);
17744  function e() {
17745    var t = r !== null && r.apply(this, arguments) || this;
17746    return t.type = e.type, t;
17747  }
17748  return e.prototype.init = function(t, a, n) {
17749    var i = wa.getGeoResource(t.map);
17750    if (i && i.type === "geoJSON") {
17751      var o = t.itemStyle = t.itemStyle || {};
17752      "color" in o || (o.color = "#eee");
17753    }
17754    this.mergeDefaultAndTheme(t, n), fi(t, "label", ["show"]);
17755  }, e.prototype.optionUpdated = function() {
17756    var t = this, a = this.option;
17757    a.regions = HM.getFilledRegions(a.regions, a.map, a.nameMap, a.nameProperty);
17758    var n = {};
17759    this._optionModelMap = hr(a.regions || [], function(i, o) {
17760      var s = o.name;
17761      return s && (i.set(s, new At(o, t, t.ecModel)), o.selected && (n[s] = true)), i;
17762    }, Z()), a.selectedMap || (a.selectedMap = n);
17763  }, e.prototype.getRegionModel = function(t) {
17764    return this._optionModelMap.get(t) || new At(null, this, this.ecModel);
17765  }, e.prototype.getFormattedLabel = function(t, a) {
17766    var n = this.getRegionModel(t), i = a === "normal" ? n.get(["label", "formatter"]) : n.get(["emphasis", "label", "formatter"]), o = { name: t };
17767    if (j(i)) return o.status = a, i(o);
17768    if (Y(i)) return i.replace("{a}", t ?? "");
17769  }, e.prototype.setZoom = function(t) {
17770    this.option.zoom = t;
17771  }, e.prototype.setCenter = function(t) {
17772    this.option.center = t;
17773  }, e.prototype.select = function(t) {
17774    var a = this.option, n = a.selectedMode;
17775    if (n) {
17776      n !== "multiple" && (a.selectedMap = null);
17777      var i = a.selectedMap || (a.selectedMap = {});
17778      i[t] = true;
17779    }
17780  }, e.prototype.unSelect = function(t) {
17781    var a = this.option.selectedMap;
17782    a && (a[t] = false);
17783  }, e.prototype.toggleSelected = function(t) {
17784    this[this.isSelected(t) ? "unSelect" : "select"](t);
17785  }, e.prototype.isSelected = function(t) {
17786    var a = this.option.selectedMap;
17787    return !!(a && a[t]);
17788  }, e.type = "geo", e.layoutMode = "box", e.defaultOption = { z: 0, show: true, left: "center", top: "center", aspectScale: null, silent: false, map: "", boundingCoords: null, center: null, zoom: 1, scaleLimit: null, label: { show: false, color: "#000" }, itemStyle: { borderWidth: 0.5, borderColor: "#444" }, emphasis: { label: { show: true, color: "rgb(100,0,0)" }, itemStyle: { color: "rgba(255,215,0,0.8)" } }, select: { label: { show: true, color: "rgb(100,0,0)" }, itemStyle: { color: "rgba(255,215,0,0.8)" } }, regions: [] }, e;
17789}(gt);
17790function jS(r, e) {
17791  return r.pointToProjected ? r.pointToProjected(e) : r.pointToData(e);
17792}
17793function nm(r, e, t, a) {
17794  var n = r.getZoom(), i = r.getCenter(), o = e.zoom, s = r.projectedToPoint ? r.projectedToPoint(i) : r.dataToPoint(i);
17795  if (e.dx != null && e.dy != null && (s[0] -= e.dx, s[1] -= e.dy, r.setCenter(jS(r, s), a)), o != null) {
17796    if (t) {
17797      var l = t.min || 0, u = t.max || 1 / 0;
17798      o = Math.max(Math.min(n * o, u), l) / n;
17799    }
17800    r.scaleX *= o, r.scaleY *= o;
17801    var f = (e.originX - r.x) * (o - 1), h = (e.originY - r.y) * (o - 1);
17802    r.x -= f, r.y -= h, r.updateTransform(), r.setCenter(jS(r, s), a), r.setZoom(o * n);
17803  }
17804  return { center: r.getCenter(), zoom: r.getZoom() };
17805}
17806var aF = function(r) {
17807  N(e, r);
17808  function e() {
17809    var t = r !== null && r.apply(this, arguments) || this;
17810    return t.type = e.type, t.focusBlurEnabled = true, t;
17811  }
17812  return e.prototype.init = function(t, a) {
17813    this._api = a;
17814  }, e.prototype.render = function(t, a, n, i) {
17815    if (this._model = t, !t.get("show")) {
17816      this._mapDraw && this._mapDraw.remove(), this._mapDraw = null;
17817      return;
17818    }
17819    this._mapDraw || (this._mapDraw = new GM(n));
17820    var o = this._mapDraw;
17821    o.draw(t, a, n, this, i), o.group.on("click", this._handleRegionClick, this), o.group.silent = t.get("silent"), this.group.add(o.group), this.updateSelectStatus(t, a, n);
17822  }, e.prototype._handleRegionClick = function(t) {
17823    var a;
17824    jn(t.target, function(n) {
17825      return (a = it(n).eventData) != null;
17826    }, true), a && this._api.dispatchAction({ type: "geoToggleSelect", geoId: this._model.id, name: a.name });
17827  }, e.prototype.updateSelectStatus = function(t, a, n) {
17828    var i = this;
17829    this._mapDraw.group.traverse(function(o) {
17830      var s = it(o).eventData;
17831      if (s) return i._model.isSelected(s.name) ? n.enterSelect(o) : n.leaveSelect(o), true;
17832    });
17833  }, e.prototype.findHighDownDispatchers = function(t) {
17834    return this._mapDraw && this._mapDraw.findHighDownDispatchers(t, this._model);
17835  }, e.prototype.dispose = function() {
17836    this._mapDraw && this._mapDraw.remove();
17837  }, e.type = "geo", e;
17838}(Vt);
17839function nF(r, e, t) {
17840  wa.registerMap(r, e, t);
17841}
17842function WM(r) {
17843  r.registerCoordinateSystem("geo", HM), r.registerComponentModel(rF), r.registerComponentView(aF), r.registerImpl("registerMap", nF), r.registerImpl("getMap", function(t) {
17844    return wa.getMapForUser(t);
17845  });
17846  function e(t, a) {
17847    a.update = "geo:updateSelectStatus", r.registerAction(a, function(n, i) {
17848      var o = {}, s = [];
17849      return i.eachComponent({ mainType: "geo", query: n }, function(l) {
17850        l[t](n.name);
17851        var u = l.coordinateSystem;
17852        D(u.regions, function(h) {
17853          o[h.name] = l.isSelected(h.name) || false;
17854        });
17855        var f = [];
17856        D(o, function(h, v) {
17857          o[v] && f.push(v);
17858        }), s.push({ geoIndex: l.componentIndex, name: f });
17859      }), { selected: o, allSelected: s, name: n.name };
17860    });
17861  }
17862  e("toggleSelected", { type: "geoToggleSelect", event: "geoselectchanged" }), e("select", { type: "geoSelect", event: "geoselected" }), e("unSelect", { type: "geoUnSelect", event: "geounselected" }), r.registerAction({ type: "geoRoam", event: "geoRoam", update: "updateTransform" }, function(t, a, n) {
17863    var i = t.componentType || "series";
17864    a.eachComponent({ mainType: i, query: t }, function(o) {
17865      var s = o.coordinateSystem;
17866      if (s.type === "geo") {
17867        var l = nm(s, t, o.get("scaleLimit"), n);
17868        o.setCenter && o.setCenter(l.center), o.setZoom && o.setZoom(l.zoom), i === "series" && D(o.seriesGroup, function(u) {
17869          u.setCenter(l.center), u.setZoom(l.zoom);
17870        });
17871      }
17872    });
17873  });
17874}
17875function iF(r) {
17876  pt(WM), r.registerChartView(ZG), r.registerSeriesModel(qG), r.registerLayout(JG), r.registerProcessor(r.PRIORITY.PROCESSOR.STATISTIC, jG), FA("map", r.registerAction);
17877}
17878function oF(r) {
17879  var e = r;
17880  e.hierNode = { defaultAncestor: null, ancestor: e, prelim: 0, modifier: 0, change: 0, shift: 0, i: 0, thread: null };
17881  for (var t = [e], a, n; a = t.pop(); ) if (n = a.children, a.isExpand && n.length) for (var i = n.length, o = i - 1; o >= 0; o--) {
17882    var s = n[o];
17883    s.hierNode = { defaultAncestor: null, ancestor: s, prelim: 0, modifier: 0, change: 0, shift: 0, i: o, thread: null }, t.push(s);
17884  }
17885}
17886function sF(r, e) {
17887  var t = r.isExpand ? r.children : [], a = r.parentNode.children, n = r.hierNode.i ? a[r.hierNode.i - 1] : null;
17888  if (t.length) {
17889    fF(r);
17890    var i = (t[0].hierNode.prelim + t[t.length - 1].hierNode.prelim) / 2;
17891    n ? (r.hierNode.prelim = n.hierNode.prelim + e(r, n), r.hierNode.modifier = r.hierNode.prelim - i) : r.hierNode.prelim = i;
17892  } else n && (r.hierNode.prelim = n.hierNode.prelim + e(r, n));
17893  r.parentNode.hierNode.defaultAncestor = hF(r, n, r.parentNode.hierNode.defaultAncestor || a[0], e);
17894}
17895function lF(r) {
17896  var e = r.hierNode.prelim + r.parentNode.hierNode.modifier;
17897  r.setLayout({ x: e }, true), r.hierNode.modifier += r.parentNode.hierNode.modifier;
17898}
17899function JS(r) {
17900  return arguments.length ? r : pF;
17901}
17902function Ls(r, e) {
17903  return r -= Math.PI / 2, { x: e * Math.cos(r), y: e * Math.sin(r) };
17904}
17905function uF(r, e) {
17906  return Qt(r.getBoxLayoutParams(), { width: e.getWidth(), height: e.getHeight() });
17907}
17908function fF(r) {
17909  for (var e = r.children, t = e.length, a = 0, n = 0; --t >= 0; ) {
17910    var i = e[t];
17911    i.hierNode.prelim += a, i.hierNode.modifier += a, n += i.hierNode.change, a += i.hierNode.shift + n;
17912  }
17913}
17914function hF(r, e, t, a) {
17915  if (e) {
17916    for (var n = r, i = r, o = i.parentNode.children[0], s = e, l = n.hierNode.modifier, u = i.hierNode.modifier, f = o.hierNode.modifier, h = s.hierNode.modifier; s = Nc(s), i = Bc(i), s && i; ) {
17917      n = Nc(n), o = Bc(o), n.hierNode.ancestor = r;
17918      var v = s.hierNode.prelim + h - i.hierNode.prelim - u + a(s, i);
17919      v > 0 && (cF(vF(s, r, t), r, v), u += v, l += v), h += s.hierNode.modifier, u 
17919+= i.hierNode.modifier, l += n.hierNode.modifier, f += o.hierNode.modifier;
17920    }
17921    s && !Nc(n) && (n.hierNode.thread = s, n.hierNode.modifier += h - l), i && !Bc(o) && (o.hierNode.thread = i, o.hierNode.modifier += u - f, t = r);
17922  }
17923  return t;
17924}
17925function Nc(r) {
17926  var e = r.children;
17927  return e.length && r.isExpand ? e[e.length - 1] : r.hierNode.thread;
17928}
17929function Bc(r) {
17930  var e = r.children;
17931  return e.length && r.isExpand ? e[0] : r.hierNode.thread;
17932}
17933function vF(r, e, t) {
17934  return r.hierNode.ancestor.parentNode === e.parentNode ? r.hierNode.ancestor : t;
17935}
17936function cF(r, e, t) {
17937  var a = t / (e.hierNode.i - r.hierNode.i);
17938  e.hierNode.change -= a, e.hierNode.shift += t, e.hierNode.modifier += t, e.hierNode.prelim += t, r.hierNode.change += a;
17939}
17940function pF(r, e) {
17941  return r.parentNode === e.parentNode ? 1 : 2;
17942}
17943var dF = /* @__PURE__ */ function() {
17944  function r() {
17945    this.parentPoint = [], this.childPoints = [];
17946  }
17947  return r;
17948}(), gF = function(r) {
17949  N(e, r);
17950  function e(t) {
17951    return r.call(this, t) || this;
17952  }
17953  return e.prototype.getDefaultStyle = function() {
17954    return { stroke: "#000", fill: null };
17955  }, e.prototype.getDefaultShape = function() {
17956    return new dF();
17957  }, e.prototype.buildPath = function(t, a) {
17958    var n = a.childPoints, i = n.length, o = a.parentPoint, s = n[0], l = n[i - 1];
17959    if (i === 1) {
17960      t.moveTo(o[0], o[1]), t.lineTo(s[0], s[1]);
17961      return;
17962    }
17963    var u = a.orient, f = u === "TB" || u === "BT" ? 0 : 1, h = 1 - f, v = W(a.forkPosition, 1), c = [];
17964    c[f] = o[f], c[h] = o[h] + (l[h] - o[h]) * v, t.moveTo(o[0], o[1]), t.lineTo(c[0], c[1]), t.moveTo(s[0], s[1]), c[f] = s[f], t.lineTo(c[0], c[1]), c[f] = l[f], t.lineTo(c[0], c[1]), t.lineTo(l[0], l[1]);
17965    for (var p = 1; p < i - 1; p++) {
17966      var d = n[p];
17967      t.moveTo(d[0], d[1]), c[f] = d[f], t.lineTo(c[0], c[1]);
17968    }
17969  }, e;
17970}(mt), yF = function(r) {
17971  N(e, r);
17972  function e() {
17973    var t = r !== null && r.apply(this, arguments) || this;
17974    return t.type = e.type, t._mainGroup = new at(), t;
17975  }
17976  return e.prototype.init = function(t, a) {
17977    this._controller = new ql(a.getZr()), this._controllerHost = { target: this.group }, this.group.add(this._mainGroup);
17978  }, e.prototype.render = function(t, a, n) {
17979    var i = t.getData(), o = t.layoutInfo, s = this._mainGroup, l = t.get("layout");
17980    l === "radial" ? (s.x = o.x + o.width / 2, s.y = o.y + o.height / 2) : (s.x = o.x, s.y = o.y), this._updateViewCoordSys(t, n), this._updateController(t, a, n);
17981    var u = this._data;
17982    i.diff(u).add(function(f) {
17983      QS(i, f) && tx(i, f, null, s, t);
17984    }).update(function(f, h) {
17985      var v = u.getItemGraphicEl(h);
17986      if (!QS(i, f)) {
17987        v && rx(u, h, v, s, t);
17988        return;
17989      }
17990      tx(i, f, v, s, t);
17991    }).remove(function(f) {
17992      var h = u.getItemGraphicEl(f);
17993      h && rx(u, f, h, s, t);
17994    }).execute(), this._nodeScaleRatio = t.get("nodeScaleRatio"), this._updateNodeAndLinkScale(t), t.get("expandAndCollapse") === true && i.eachItemGraphicEl(function(f, h) {
17995      f.off("click").on("click", function() {
17996        n.dispatchAction({ type: "treeExpandAndCollapse", seriesId: t.id, dataIndex: h });
17997      });
17998    }), this._data = i;
17999  }, e.prototype._updateViewCoordSys = function(t, a) {
18000    var n = t.getData(), i = [];
18001    n.each(function(h) {
18002      var v = n.getItemLayout(h);
18003      v && !isNaN(v.x) && !isNaN(v.y) && i.push([+v.x, +v.y]);
18004    });
18005    var o = [], s = [];
18006    Rh(i, o, s);
18007    var l = this._min, u = this._max;
18008    s[0] - o[0] === 0 && (o[0] = l ? l[0] : o[0] - 1, s[0] = u ? u[0] : s[0] + 1), s[1] - o[1] === 0 && (o[1] = l ? l[1] : o[1] - 1, s[1] = u ? u[1] : s[1] + 1);
18009    var f = t.coordinateSystem = new Kl();
18010    f.zoomLimit = t.get("scaleLimit"), f.setBoundingRect(o[0], o[1], s[0] - o[0], s[1] - o[1]), f.setCenter(t.get("center"), a), f.setZoom(t.get("zoom")), this.group.attr({ x: f.x, y: f.y, scaleX: f.scaleX, scaleY: f.scaleY }), this._min = o, this._max = s;
18011  }, e.prototype._updateController = function(t, a, n) {
18012    var i = this, o = this._controller, s = this._controllerHost, l = this.group;
18013    o.setPointerChecker(function(u, f, h) {
18014      var v = l.getBoundingRect();
18015      return v.applyTransform(l.transform), v.contain(f, h) && !ev(u, n, t);
18016    }), o.enable(t.get("roam")), s.zoomLimit = t.get("scaleLimit"), s.zoom = t.coordinateSystem.getZoom(), o.off("pan").off("zoom").on("pan", function(u) {
18017      em(s, u.dx, u.dy), n.dispatchAction({ seriesId: t.id, type: "treeRoam", dx: u.dx, dy: u.dy });
18018    }).on("zoom", function(u) {
18019      rm(s, u.scale, u.originX, u.originY), n.dispatchAction({ seriesId: t.id, type: "treeRoam", zoom: u.scale, originX: u.originX, originY: u.originY }), i._updateNodeAndLinkScale(t), n.updateLabelLayout();
18020    });
18021  }, e.prototype._updateNodeAndLinkScale = function(t) {
18022    var a = t.getData(), n = this._getNodeGlobalScale(t);
18023    a.eachItemGraphicEl(function(i, o) {
18024      i.setSymbolScale(n);
18025    });
18026  }, e.prototype._getNodeGlobalScale = function(t) {
18027    var a = t.coordinateSystem;
18028    if (a.type !== "view") return 1;
18029    var n = this._nodeScaleRatio, i = a.scaleX || 1, o = a.getZoom(), s = (o - 1) * n + 1;
18030    return s / i;
18031  }, e.prototype.dispose = function() {
18032    this._controller && this._controller.dispose(), this._controllerHost = null;
18033  }, e.prototype.remove = function() {
18034    this._mainGroup.removeAll(), this._data = null;
18035  }, e.type = "tree", e;
18036}(Pt);
18037function QS(r, e) {
18038  var t = r.getItemLayout(e);
18039  return t && !isNaN(t.x) && !isNaN(t.y);
18040}
18041function tx(r, e, t, a, n) {
18042  var i = !t, o = r.tree.getNodeByDataIndex(e), s = o.getModel(), l = o.getVisual("style").fill, u = o.isExpand === false && o.children.length !== 0 ? l : "#fff", f = r.tree.root, h = o.parentNode === f ? o : o.parentNode || o, v = r.getItemGraphicEl(h.dataIndex), c = h.getLayout(), p = v ? { x: v.__oldX, y: v.__oldY, rawX: v.__radialOldRawX, rawY: v.__radialOldRawY } : c, d = o.getLayout();
18043  i ? (t = new Wl(r, e, null, { symbolInnerColor: u, useNameLabel: true }), t.x = p.x, t.y = p.y) : t.updateData(r, e, null, { symbolInnerColor: u, useNameLabel: true }), t.__radialOldRawX = t.__radialRawX, t.__radialOldRawY = t.__radialRawY, t.__radialRawX = d.rawX, t.__radialRawY = d.rawY, a.add(t), r.setItemGraphicEl(e, t), t.__oldX = t.x, t.__oldY = t.y, Tt(t, { x: d.x, y: d.y }, n);
18044  var g = t.getSymbolPath();
18045  if (n.get("layout") === "radial") {
18046    var y = f.children[0], m = y.getLayout(), _ = y.children.length, S = void 0, b = void 0;
18047    if (d.x === m.x && o.isExpand === true && y.children.length) {
18048      var x = { x: (y.children[0].getLayout().x + y.children[_ - 1].getLayout().x) / 2, y: (y.children[0].getLayout().y + y.children[_ - 1].getLayout().y) / 2 };
18049      S = Math.atan2(x.y - m.y, x.x - m.x), S < 0 && (S = Math.PI * 2 + S), b = x.x < m.x, b && (S = S - Math.PI);
18050    } else S = Math.atan2(d.y - m.y, d.x - m.x), S < 0 && (S = Math.PI * 2 + S), o.children.length === 0 || o.children.length !== 0 && o.isExpand === false ? (b = d.x < m.x, b && (S = S - Math.PI)) : (b = d.x > m.x, b || (S = S - Math.PI));
18051    var w = b ? "left" : "right", T = s.getModel("label"), C = T.get("rotate"), A = C * (Math.PI / 180), M = g.getTextContent();
18052    M && (g.setTextConfig({ position: T.get("position") || w, rotation: C == null ? -S : A, origin: "center" }), M.setStyle("verticalAlign", "middle"));
18053  }
18054  var I = s.get(["emphasis", "focus"]), L = I === "relative" ? go(o.getAncestorsIndices(), o.getDescendantIndices()) : I === "ancestor" ? o.getAncestorsIndices() : I === "descendant" ? o.getDescendantIndices() : null;
18055  L && (it(t).focus = L), mF(n, o, f, t, p, c, d, a), t.__edge && (t.onHoverStateChange = function(P) {
18056    if (P !== "blur") {
18057      var R = o.parentNode && r.getItemGraphicEl(o.parentNode.dataIndex);
18058      R && R.hoverState === Ol || Rf(t.__edge, P);
18059    }
18060  });
18061}
18062function mF(r, e, t, a, n, i, o, s) {
18063  var l = e.getModel(), u = r.get("edgeShape"), f = r.get("layout"), h = r.getOrient(), v = r.get(["lineStyle", "curveness"]), c = r.get("edgeForkPosition"), p = l.getModel("lineStyle").getLineStyle(), d = a.__edge;
18064  if (u === "curve") e.parentNode && e.parentNode !== t && (d || (d = a.__edge = new Po({ shape: Zd(f, h, v, n, n) })), Tt(d, { shape: Zd(f, h, v, i, o) }, r));
18065  else if (u === "polyline" && f === "orthogonal" && e !== t && e.children && e.children.length !== 0 && e.isExpand === true) {
18066    for (var g = e.children, y = [], m = 0; m < g.length; m++) {
18067      var _ = g[m].getLayout();
18068      y.push([_.x, _.y]);
18069    }
18070    d || (d = a.__edge = new gF({ shape: { parentPoint: [o.x, o.y], childPoints: [[o.x, o.y]], orient: h, forkPosition: c } })), Tt(d, { shape: { parentPoint: [o.x, o.y], childPoints: y } }, r);
18071  }
18072  d && !(u === "polyline" && !e.isExpand) && (d.useStyle(Q({ strokeNoScale: true, fill: null }, p)), pe(d, l, "lineStyle"), ci(d), s.add(d));
18073}
18074function ex(r, e, t, a, n) {
18075  var i = e.tree.root, o = UM(i, r), s = o.source, l = o.sourceLayout, u = e.getItemGraphicEl(r.dataIndex);
18076  if (u) {
18077    var f = e.getItemGraphicEl(s.dataIndex), h = f.__edge, v = u.__edge || (s.isExpand === false || s.children.length === 1 ? h : void 0), c = a.get("edgeShape"), p = a.get("layout"), d = a.get("orient"), g = a.get(["lineStyle", "curveness"]);
18078    v && (c === "curve" ? rn(v, { shape: Zd(p, d, g, l, l), style: { opacity: 0 } }, a, { cb: function() {
18079      t.remove(v);
18080    }, removeOpt: n }) : c === "polyline" && a.get("layout") === "orthogonal" && rn(v, { shape: { parentPoint: [l.x, l.y], childPoints: [[l.x, l.y]] }, style: { opacity: 0 } }, a, { cb: function() {
18081      t.remove(v);
18082    }, removeOpt: n }));
18083  }
18084}
18085function UM(r, e) {
18086  for (var t = e.parentNode === r ? e : e.parentNode || e, a; a = t.getLayout(), a == null; ) t = t.parentNode === r ? t : t.parentNode || t;
18087  return { source: t, sourceLayout: a };
18088}
18089function rx(r, e, t, a, n) {
18090  var i = r.tree.getNodeByDataIndex(e), o = r.tree.root, s = UM(o, i).sourceLayout, l = { duration: n.get("animationDurationUpdate"), easing: n.get("animationEasingUpdate") };
18091  rn(t, { x: s.x + 1, y: s.y + 1 }, n, { cb: function() {
18092    a.remove(t), r.setItemGraphicEl(e, null);
18093  }, removeOpt: l }), t.fadeOut(null, r.hostModel, { fadeLabel: true, animation: l }
18093), i.children.forEach(function(u) {
18094    ex(u, r, a, n, l);
18095  }), ex(i, r, a, n, l);
18096}
18097function Zd(r, e, t, a, n) {
18098  var i, o, s, l, u, f, h, v;
18099  if (r === "radial") {
18100    u = a.rawX, h = a.rawY, f = n.rawX, v = n.rawY;
18101    var c = Ls(u, h), p = Ls(u, h + (v - h) * t), d = Ls(f, v + (h - v) * t), g = Ls(f, v);
18102    return { x1: c.x || 0, y1: c.y || 0, x2: g.x || 0, y2: g.y || 0, cpx1: p.x || 0, cpy1: p.y || 0, cpx2: d.x || 0, cpy2: d.y || 0 };
18103  } else u = a.x, h = a.y, f = n.x, v = n.y, (e === "LR" || e === "RL") && (i = u + (f - u) * t, o = h, s = f + (u - f) * t, l = v), (e === "TB" || e === "BT") && (i = u, o = h + (v - h) * t, s = f, l = v + (h - v) * t);
18104  return { x1: u, y1: h, x2: f, y2: v, cpx1: i, cpy1: o, cpx2: s, cpy2: l };
18105}
18106var fr = bt();
18107function YM(r) {
18108  var e = r.mainData, t = r.datas;
18109  t || (t = { main: e }, r.datasAttr = { main: "data" }), r.datas = r.mainData = null, $M(e, t, r), D(t, function(a) {
18110    D(e.TRANSFERABLE_METHODS, function(n) {
18111      a.wrapMethod(n, lt(_F, r));
18112    });
18113  }), e.wrapMethod("cloneShallow", lt(xF, r)), D(e.CHANGABLE_METHODS, function(a) {
18114    e.wrapMethod(a, lt(SF, r));
18115  }), we(t[e.dataType] === e);
18116}
18117function _F(r, e) {
18118  if (TF(this)) {
18119    var t = z({}, fr(this).datas);
18120    t[this.dataType] = e, $M(e, t, r);
18121  } else im(e, this.dataType, fr(this).mainData, r);
18122  return e;
18123}
18124function SF(r, e) {
18125  return r.struct && r.struct.update(), e;
18126}
18127function xF(r, e) {
18128  return D(fr(e).datas, function(t, a) {
18129    t !== e && im(t.cloneShallow(), a, e, r);
18130  }), e;
18131}
18132function bF(r) {
18133  var e = fr(this).mainData;
18134  return r == null || e == null ? e : fr(e).datas[r];
18135}
18136function wF() {
18137  var r = fr(this).mainData;
18138  return r == null ? [{ data: r }] : G(_t(fr(r).datas), function(e) {
18139    return { type: e, data: fr(r).datas[e] };
18140  });
18141}
18142function TF(r) {
18143  return fr(r).mainData === r;
18144}
18145function $M(r, e, t) {
18146  fr(r).datas = {}, D(e, function(a, n) {
18147    im(a, n, r, t);
18148  });
18149}
18150function im(r, e, t, a) {
18151  fr(t).datas[e] = r, fr(r).mainData = t, r.dataType = e, a.struct && (r[a.structAttr] = a.struct, a.struct[a.datasAttr[e]] = r), r.getLinkedData = bF, r.getLinkedDataAll = wF;
18152}
18153var CF = function() {
18154  function r(e, t) {
18155    this.depth = 0, this.height = 0, this.dataIndex = -1, this.children = [], this.viewChildren = [], this.isExpand = false, this.name = e || "", this.hostTree = t;
18156  }
18157  return r.prototype.isRemoved = function() {
18158    return this.dataIndex < 0;
18159  }, r.prototype.eachNode = function(e, t, a) {
18160    j(e) && (a = t, t = e, e = null), e = e || {}, Y(e) && (e = { order: e });
18161    var n = e.order || "preorder", i = this[e.attr || "children"], o;
18162    n === "preorder" && (o = t.call(a, this));
18163    for (var s = 0; !o && s < i.length; s++) i[s].eachNode(e, t, a);
18164    n === "postorder" && t.call(a, this);
18165  }, r.prototype.updateDepthAndHeight = function(e) {
18166    var t = 0;
18167    this.depth = e;
18168    for (var a = 0; a < this.children.length; a++) {
18169      var n = this.children[a];
18170      n.updateDepthAndHeight(e + 1), n.height > t && (t = n.height);
18171    }
18172    this.height = t + 1;
18173  }, r.prototype.getNodeById = function(e) {
18174    if (this.getId() === e) return this;
18175    for (var t = 0, a = this.children, n = a.length; t < n; t++) {
18176      var i = a[t].getNodeById(e);
18177      if (i) return i;
18178    }
18179  }, r.prototype.contains = function(e) {
18180    if (e === this) return true;
18181    for (var t = 0, a = this.children, n = a.length; t < n; t++) {
18182      var i = a[t].contains(e);
18183      if (i) return i;
18184    }
18185  }, r.prototype.getAncestors = function(e) {
18186    for (var t = [], a = e ? this : this.parentNode; a; ) t.push(a), a = a.parentNode;
18187    return t.reverse(), t;
18188  }, r.prototype.getAncestorsIndices = function() {
18189    for (var e = [], t = this; t; ) e.push(t.dataIndex), t = t.parentNode;
18190    return e.reverse(), e;
18191  }, r.prototype.getDescendantIndices = function() {
18192    var e = [];
18193    return this.eachNode(function(t) {
18194      e.push(t.dataIndex);
18195    }), e;
18196  }, r.prototype.getValue = function(e) {
18197    var t = this.hostTree.data;
18198    return t.getStore().get(t.getDimensionIndex(e || "value"), this.dataIndex);
18199  }, r.prototype.setLayout = function(e, t) {
18200    this.dataIndex >= 0 && this.hostTree.data.setItemLayout(this.dataIndex, e, t);
18201  }, r.prototype.getLayout = function() {
18202    return this.hostTree.data.getItemLayout(this.dataIndex);
18203  }, r.prototype.getModel = function(e) {
18204    if (!(this.dataIndex < 0)) {
18205      var t = this.hostTree, a = t.data.getItemModel(this.dataIndex);
18206      return a.getModel(e);
18207    }
18208  }, r.prototype.getLevelModel = function() {
18209    return (this.hostTree.levelModels || [])[this.depth];
18210  }, r.prototype.setVisual = function(e, t) {
18211    this.dataIndex >= 0 && this.hostTree.data.setItemVisual(this.dataIndex, e, t);
18212  }, r.prototype.getVisual = function(e) {
18213    return this.hostTree.data.getItemVisual(this.dataIndex, e);
18214  }, r.prototype.getRawIndex = function() {
18215    return this.hostTree.data.getRawIndex(this.dataIndex);
18216  }, r.prototype.getId = function() {
18217    return this.hostTree.data.getId(this.dataIndex);
18218  }, r.prototype.getChildIndex = function() {
18219    if (this.parentNode) {
18220      for (var e = this.parentNode.children, t = 0; t < e.length; ++t) if (e[t] === this) return t;
18221      return -1;
18222    }
18223    return -1;
18224  }, r.prototype.isAncestorOf = function(e) {
18225    for (var t = e.parentNode; t; ) {
18226      if (t === this) return true;
18227      t = t.parentNode;
18228    }
18229    return false;
18230  }, r.prototype.isDescendantOf = function(e) {
18231    return e !== this && e.isAncestorOf(this);
18232  }, r;
18233}(), om = function() {
18234  function r(e) {
18235    this.type = "tree", this._nodes = [], this.hostModel = e;
18236  }
18237  return r.prototype.eachNode = function(e, t, a) {
18238    this.root.eachNode(e, t, a);
18239  }, r.prototype.getNodeByDataIndex = function(e) {
18240    var t = this.data.getRawIndex(e);
18241    return this._nodes[t];
18242  }, r.prototype.getNodeById = function(e) {
18243    return this.root.getNodeById(e);
18244  }, r.prototype.update = function() {
18245    for (var e = this.data, t = this._nodes, a = 0, n = t.length; a < n; a++) t[a].dataIndex = -1;
18246    for (var a = 0, n = e.count(); a < n; a++) t[e.getRawIndex(a)].dataIndex = a;
18247  }, r.prototype.clearLayouts = function() {
18248    this.data.clearItemLayouts();
18249  }, r.createTree = function(e, t, a) {
18250    var n = new r(t), i = [], o = 1;
18251    s(e);
18252    function s(f, h) {
18253      var v = f.value;
18254      o = Math.max(o, V(v) ? v.length : 1), i.push(f);
18255      var c = new CF(te(f.name, ""), n);
18256      h ? AF(c, h) : n.root = c, n._nodes.push(c);
18257      var p = f.children;
18258      if (p) for (var d = 0; d < p.length; d++) s(p[d], c);
18259    }
18260    n.root.updateDepthAndHeight(0);
18261    var l = Wo(i, { coordDimensions: ["value"], dimensionsCount: o }).dimensions, u = new be(l, t);
18262    return u.initData(i), a && a(u), YM({ mainData: u, struct: n, structAttr: "tree" }), n.update(), n;
18263  }, r;
18264}();
18265function AF(r, e) {
18266  var t = e.children;
18267  r.parentNode !== e && (t.push(r), r.parentNode = e);
18268}
18269function xl(r, e, t) {
18270  if (r && vt(e, r.type) >= 0) {
18271    var a = t.getData().tree.root, n = r.targetNode;
18272    if (Y(n) && (n = a.getNodeById(n)), n && a.contains(n)) return { node: n };
18273    var i = r.targetNodeId;
18274    if (i != null && (n = a.getNodeById(i))) return { node: n };
18275  }
18276}
18277function XM(r) {
18278  for (var e = []; r; ) r = r.parentNode, r && e.push(r);
18279  return e.reverse();
18280}
18281function sm(r, e) {
18282  var t = XM(r);
18283  return vt(t, e) >= 0;
18284}
18285function av(r, e) {
18286  for (var t = []; r; ) {
18287    var a = r.dataIndex;
18288    t.push({ name: r.name, dataIndex: a, value: e.getRawValue(a) }), r = r.parentNode;
18289  }
18290  return t.reverse(), t;
18291}
18292var DF = function(r) {
18293  N(e, r);
18294  function e() {
18295    var t = r !== null && r.apply(this, arguments) || this;
18296    return t.hasSymbolVisual = true, t.ignoreStyleOnData = true, t;
18297  }
18298  return e.prototype.getInitialData = function(t) {
18299    var a = { name: t.name, children: t.data }, n = t.leaves || {}, i = new At(n, this, this.ecModel), o = om.createTree(a, this, s);
18300    function s(h) {
18301      h.wrapMethod("getItemModel", function(v, c) {
18302        var p = o.getNodeByDataIndex(c);
18303        return p && p.children.length && p.isExpand || (v.parentModel = i), v;
18304      });
18305    }
18306    var l = 0;
18307    o.eachNode("preorder", function(h) {
18308      h.depth > l && (l = h.depth);
18309    });
18310    var u = t.expandAndCollapse, f = u && t.initialTreeDepth >= 0 ? t.initialTreeDepth : l;
18311    return o.root.eachNode("preorder", function(h) {
18312      var v = h.hostTree.data.getRawDataItem(h.dataIndex);
18313      h.isExpand = v && v.collapsed != null ? !v.collapsed : h.depth <= f;
18314    }), o.data;
18315  }, e.prototype.getOrient = function() {
18316    var t = this.get("orient");
18317    return t === "horizontal" ? t = "LR" : t === "vertical" && (t = "TB"), t;
18318  }, e.prototype.setZoom = function(t) {
18319    this.option.zoom = t;
18320  }, e.prototype.setCenter = function(t) {
18321    this.option.center = t;
18322  }, e.prototype.formatTooltip = function(t, a, n) {
18323    for (var i = this.getData().tree, o = i.root.children[0], s = i.getNodeByDataIndex(t), l = s.getValue(), u = s.name; s && s !== o; ) u = s.parentNode.name + "." + u, s = s.parentNode;
18324    return le("nameValue", { name: u, value: l, noValue: isNaN(l) || l == null });
18325  }, e.prototype.getDataParams = function(t) {
18326    var a = r.prototype.getDataParams.apply(this, arguments), n = this.getData().tree.getNodeByDataIndex(t);
18327    return a.treeAncestors = av(n, this), a.collapsed = !n.isExpand, a;
18328  }, 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: false, nodeScaleRatio: 0.4, center: null, zoom: 1, orient: "LR", symbol: "emptyCircle", symbolSize: 7, expandAndCollapse: true, initialTreeDepth: 2, lineStyle: { color: "#ccc", width: 1.5, curveness: 0.5 }, itemStyle: { color: "lightsteelblue", borderWidth: 1.5 }, label: { show: true }, animationEasing: "linear", animationDuration: 700, animationDurationUpdate: 500 }, e;
18329}(Et);
18330function MF(r, e, t) {
18331  for (var a = [r], n = [], i; i = a.pop(); ) if (n.push(i), i.isExpand) {
18332    var o = i.children;
18333    if (o.length) for (var s = 0; s < o.length; s++) a.push(o[s]);
18334  }
18335  for (; i = n.pop(); ) e(i, t);
18336}
18337function ps(r, e) {
18338  for (var t = [r], a; a = t.pop(); ) if (e(a), a.isExpand) {
18339    var n = a.children;
18340    if (n.length) for (var i = n.length - 1; i >= 0; i--) t.push(n[i]);
18341  }
18342}
18343function IF(r, e) {
18344  r.eachSeriesByType("tree", function(t) {
18345    LF(t, e);
18346  });
18347}
18348function LF(r, e) {
18349  var t = uF(r, e);
18350  r.layoutInfo = t;
18351  var a = r.get("layout"), n = 0, i = 0, o = null;
18352  a === "radial" ? (n = 2 * Math.PI, i = Math.min(t.height, t.width) / 2, o = JS(function(_, S) {
18353    return (_.parentNode === S.parentNode ? 1 : 2) / _.depth;
18354  })) : (n = t.width, i = t.height, o = JS());
18355  var s = r.getData().tree.root, l = s.children[0];
18356  if (l) {
18357    oF(s), MF(l, sF, o), s.hierNode.modifier = -l.hierNode.prelim, ps(l, lF);
18358    var u = l, f = l, h = l;
18359    ps(l, function(_) {
18360      var S = _.getLayout().x;
18361      S < u.getLayout().x && (u = _), S > f.getLayout().x && (f = _), _.depth > h.depth && (h = _);
18362    });
18363    var v = u === f ? 1 : o(u, f) / 2, c = v - u.getLayout().x, p = 0, d = 0, g = 0, y = 0;
18364    if (a === "radial") p = n / (f.getLayout().x + v + c), d = i / (h.depth - 1 || 1), ps(l, function(_) {
18365      g = (_.getLayout().x + c) * p, y = (_.depth - 1) * d;
18366      var S = Ls(g, y);
18367      _.setLayout({ x: S.x, y: S.y, rawX: g, rawY: y }, true);
18368    });
18369    else {
18370      var m = r.getOrient();
18371      m === "RL" || m === "LR" ? (d = i / (f.getLayout().x + v + c), p = n / (h.depth - 1 || 1), ps(l, function(_) {
18372        y = (_.getLayout().x + c) * d, g = m === "LR" ? (_.depth - 1) * p : n - (_.depth - 1) * p, _.setLayout({ x: g, y }, true);
18373      })) : (m === "TB" || m === "BT") && (p = n / (f.getLayout().x + v + c), d = i / (h.depth - 1 || 1), ps(l, function(_) {
18374        g = (_.getLayout().x + c) * p, y = m === "TB" ? (_.depth - 1) * d : i - (_.depth - 1) * d, _.setLayout({ x: g, y }, true);
18375      }));
18376    }
18377  }
18378}
18379function PF(r) {
18380  r.eachSeriesByType("tree", function(e) {
18381    var t = e.getData(), a = t.tree;
18382    a.eachNode(function(n) {
18383      var i = n.getModel(), o = i.getModel("itemStyle").getItemStyle(), s = t.ensureUniqueItemVisual(n.dataIndex, "style");
18384      z(s, o);
18385    });
18386  });
18387}
18388function RF(r) {
18389  r.registerAction({ type: "treeExpandAndCollapse", event: "treeExpandAndCollapse", update: "update" }, function(e, t) {
18390    t.eachComponent({ mainType: "series", subType: "tree", query: e }, function(a) {
18391      var n = e.dataIndex, i = a.getData().tree, o = i.getNodeByDataIndex(n);
18392      o.isExpand = !o.isExpand;
18393    });
18394  }), r.registerAction({ type: "treeRoam", event: "treeRoam", update: "none" }, function(e, t, a) {
18395    t.eachComponent({ mainType: "series", subType: "tree", query: e }, function(n) {
18396      var i = n.coordinateSystem, o = nm(i, e, void 0, a);
18397      n.setCenter && n.setCenter(o.center), n.setZoom && n.setZoom(o.zoom);
18398    });
18399  });
18400}
18401function EF(r) {
18402  r.registerChartView(yF), r.registerSeriesModel(DF), r.registerLayout(IF), r.registerVisual(PF), RF(r);
18403}
18404var ax = ["treemapZoomToNode", "treemapRender", "treemapMove"];
18405function kF(r) {
18406  for (var e = 0; e < ax.length; e++) r.registerAction({ type: ax[e], update: "updateView" }, $t);
18407  r.registerAction({ type: "treemapRootToNode", update: "updateView" }, function(t, a) {
18408    a.eachComponent({ mainType: "series", subType: "treemap", query: t }, n);
18409    function n(i, o) {
18410      var s = ["treemapZoomToNode", "treemapRootToNode"], l = xl(t, s, i);
18411      if (l) {
18412        var u = i.getViewRoot();
18413        u && (t.direction = sm(u, l.node) ? "rollUp" : "drillDown"), i.resetViewRoot(l.node);
18414      }
18415    }
18416  });
18417}
18418function ZM(r) {
18419  var e = r.getData(), t = e.tree, a = {};
18420  t.eachNode(function(n) {
18421    for (var i = n; i && i.depth > 1; ) i = i.parentNode;
18422    var o = xd(r.ecModel, i.name || i.dataIndex + "", a);
18423    n.setVisual("decal", o);
18424  });
18425}
18426var OF = function(r) {
18427  N(e, r);
18428  function e() {
18429    var t = r !== null && r.apply(this, arguments) || this;
18430    return t.type = e.type, t.preventUsingHoverLayer = true, t;
18431  }
18432  return e.prototype.getInitialData = function(t, a) {
18433    var n = { name: t.name, children: t.data };
18434    qM(n);
18435    var i = t.levels || [], o = this.designatedVisualItemStyle = {}, s = new At({ itemStyle: o }, this, a);
18436    i = t.levels = NF(i, a);
18437    var l = G(i || [], function(h) {
18438      return new At(h, s, a);
18439    }, this), u = om.createTree(n, this, f);
18440    function f(h) {
18441      h.wrapMethod("getItemModel", function(v, c) {
18442        var p = u.getNodeByDataIndex(c), d = p ? l[p.depth] : null;
18443        return v.parentModel = d || s, v;
18444      });
18445    }
18446    return u.data;
18447  }, e.prototype.optionUpdated = function() {
18448    this.resetViewRoot();
18449  }, e.prototype.formatTooltip = function(t, a, n) {
18450    var i = this.getData(), o = this.getRawValue(t), s = i.getName(t);
18451    return le("nameValue", { name: s, value: o });
18452  }, e.prototype.getDataParams = function(t) {
18453    var a = r.prototype.getDataParams.apply(this, arguments), n = this.getData().tree.getNodeByDataIndex(t);
18454    return a.treeAncestors = av(n, this), a.treePathInfo = a.treeAncestors, a;
18455  }, e.prototype.setLayoutInfo = function(t) {
18456    this.layoutInfo = this.layoutInfo || {}, z(this.layoutInfo, t);
18457  }, e.prototype.mapIdToIndex = function(t) {
18458    var a = this._idIndexMap;
18459    a || (a = this._idIndexMap = Z(), this._idIndexMapCount = 0);
18460    var n = a.get(t);
18461    return n == null && a.set(t, n = this._idIndexMapCount++), n;
18462  }, e.prototype.getViewRoot = function() {
18463    return this._viewRoot;
18464  }, e.prototype.resetViewRoot = function(t) {
18465    t ? this._viewRoot = t : t = this._viewRoot;
18466    var a = this.getRawData().tree.root;
18467    (!t || t !== a && !a.contains(t)) && (this._viewRoot = a);
18468  }, e.prototype.enableAriaDecal = function() {
18469    ZM(this);
18470  }, e.type = "series.treemap", e.layoutMode = "box", e.defaultOption = { progressive: 0, left: "center", top: "middle", width: "80%", height: "80%", sort: true, clipWindow: "origin", squareRatio: 0.5 * (1 + Math.sqrt(5)), leafDepth: null, drillDownIcon: "\u25B6", zoomToNodeRatio: 0.32 * 0.32, scaleLimit: null, roam: true, nodeClick: "zoomToNode", animation: true, animationDurationUpdate: 900, animationEasing: "quinticInOut", breadcrumb: { show: true, 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: true, distance: 0, padding: 5, position: "inside", color: "#fff", overflow: "truncate" }, upperLabel: { show: false, 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: true, position: [0, "50%"], overflow: "truncate", verticalAlign: "middle" } }
18470, visualDimension: 0, visualMin: null, visualMax: null, color: [], colorAlpha: null, colorSaturation: null, colorMappingBy: "index", visibleMin: 10, childrenVisibleMin: null, levels: [] }, e;
18471}(Et);
18472function qM(r) {
18473  var e = 0;
18474  D(r.children, function(a) {
18475    qM(a);
18476    var n = a.value;
18477    V(n) && (n = n[0]), e += n;
18478  });
18479  var t = r.value;
18480  V(t) && (t = t[0]), (t == null || isNaN(t)) && (t = e), t < 0 && (t = 0), V(r.value) ? r.value[0] = t : r.value = t;
18481}
18482function NF(r, e) {
18483  var t = Rt(e.get("color")), a = Rt(e.get(["aria", "decal", "decals"]));
18484  if (t) {
18485    r = r || [];
18486    var n, i;
18487    D(r, function(s) {
18488      var l = new At(s), u = l.get("color"), f = l.get("decal");
18489      (l.get(["itemStyle", "color"]) || u && u !== "none") && (n = true), (l.get(["itemStyle", "decal"]) || f && f !== "none") && (i = true);
18490    });
18491    var o = r[0] || (r[0] = {});
18492    return n || (o.color = t.slice()), !i && a && (o.decal = a.slice()), r;
18493  }
18494}
18495var BF = 8, nx = 8, zc = 5, zF = function() {
18496  function r(e) {
18497    this.group = new at(), e.add(this.group);
18498  }
18499  return r.prototype.render = function(e, t, a, n) {
18500    var i = e.getModel("breadcrumb"), o = this.group;
18501    if (o.removeAll(), !(!i.get("show") || !a)) {
18502      var s = i.getModel("itemStyle"), l = i.getModel("emphasis"), u = s.getModel("textStyle"), f = l.getModel(["itemStyle", "textStyle"]), h = { pos: { left: i.get("left"), right: i.get("right"), top: i.get("top"), bottom: i.get("bottom") }, box: { width: t.getWidth(), height: t.getHeight() }, emptyItemWidth: i.get("emptyItemWidth"), totalWidth: 0, renderList: [] };
18503      this._prepare(a, h, u), this._renderContent(e, h, s, l, u, f, n), Wh(o, h.pos, h.box);
18504    }
18505  }, r.prototype._prepare = function(e, t, a) {
18506    for (var n = e; n; n = n.parentNode) {
18507      var i = te(n.getModel().get("name"), ""), o = a.getTextRect(i), s = Math.max(o.width + BF * 2, t.emptyItemWidth);
18508      t.totalWidth += s + nx, t.renderList.push({ node: n, text: i, width: s });
18509    }
18510  }, r.prototype._renderContent = function(e, t, a, n, i, o, s) {
18511    for (var l = 0, u = t.emptyItemWidth, f = e.get(["breadcrumb", "height"]), h = Lk(t.pos, t.box), v = t.totalWidth, c = t.renderList, p = n.getModel("itemStyle").getItemStyle(), d = c.length - 1; d >= 0; d--) {
18512      var g = c[d], y = g.node, m = g.width, _ = g.text;
18513      v > h.width && (v -= m - u, m = u, _ = null);
18514      var S = new Ce({ shape: { points: VF(l, 0, m, f, d === c.length - 1, d === 0) }, style: Q(a.getItemStyle(), { lineJoin: "bevel" }), textContent: new St({ style: Nt(i, { text: _ }) }), textConfig: { position: "inside" }, z2: Io * 1e4, onclick: lt(s, y) });
18515      S.disableLabelAnimation = true, S.getTextContent().ensureState("emphasis").style = Nt(o, { text: _ }), S.ensureState("emphasis").style = p, Wt(S, n.get("focus"), n.get("blurScope"), n.get("disabled")), this.group.add(S), GF(S, e, y), l += m + nx;
18516    }
18517  }, r.prototype.remove = function() {
18518    this.group.removeAll();
18519  }, r;
18520}();
18521function VF(r, e, t, a, n, i) {
18522  var o = [[n ? r : r - zc, e], [r + t, e], [r + t, e + a], [n ? r : r - zc, e + a]];
18523  return !i && o.splice(2, 0, [r + t + zc, e + a / 2]), !n && o.push([r, e + a / 2]), o;
18524}
18525function GF(r, e, t) {
18526  it(r).eventData = { componentType: "series", componentSubType: "treemap", componentIndex: e.componentIndex, seriesIndex: e.seriesIndex, seriesName: e.name, seriesType: "treemap", selfType: "breadcrumb", nodeData: { dataIndex: t && t.dataIndex, name: t && t.name }, treePathInfo: t && av(t, e) };
18527}
18528var FF = function() {
18529  function r() {
18530    this._storage = [], this._elExistsMap = {};
18531  }
18532  return r.prototype.add = function(e, t, a, n, i) {
18533    return this._elExistsMap[e.id] ? false : (this._elExistsMap[e.id] = true, this._storage.push({ el: e, target: t, duration: a, delay: n, easing: i }), true);
18534  }, r.prototype.finished = function(e) {
18535    return this._finishedCallback = e, this;
18536  }, r.prototype.start = function() {
18537    for (var e = this, t = this._storage.length, a = function() {
18538      t--, t <= 0 && (e._storage.length = 0, e._elExistsMap = {}, e._finishedCallback && e._finishedCallback());
18539    }, n = 0, i = this._storage.length; n < i; n++) {
18540      var o = this._storage[n];
18541      o.el.animateTo(o.target, { duration: o.duration, delay: o.delay, easing: o.easing, setToFinal: true, done: a, aborted: a });
18542    }
18543    return this;
18544  }, r;
18545}();
18546function HF() {
18547  return new FF();
18548}
18549var qd = at, ix = xt, ox = 3, sx = "label", lx = "upperLabel", WF = Io * 10, UF = Io * 2, YF = Io * 3, Vn = vi([["fill", "color"], ["stroke", "strokeColor"], ["lineWidth", "strokeWidth"], ["shadowBlur"], ["shadowOffsetX"], ["shadowOffsetY"], ["shadowColor"]]), ux = function(r) {
18550  var e = Vn(r);
18551  return e.stroke = e.fill = e.lineWidth = null, e;
18552}, rh = bt(), $F = function(r) {
18553  N(e, r);
18554  function e() {
18555    var t = r !== null && r.apply(this, arguments) || this;
18556    return t.type = e.type, t._state = "ready", t._storage = ds(), t;
18557  }
18558  return e.prototype.render = function(t, a, n, i) {
18559    var o = a.findComponents({ mainType: "series", subType: "treemap", query: i });
18560    if (!(vt(o, t) < 0)) {
18561      this.seriesModel = t, this.api = n, this.ecModel = a;
18562      var s = ["treemapZoomToNode", "treemapRootToNode"], l = xl(i, s, t), u = i && i.type, f = t.layoutInfo, h = !this._oldTree, v = this._storage, c = u === "treemapRootToNode" && l && v ? { rootNodeGroup: v.nodeGroup[l.node.getRawIndex()], direction: i.direction } : null, p = this._giveContainerGroup(f), d = t.get("animation"), g = this._doRender(p, t, c);
18563      d && !h && (!u || u === "treemapZoomToNode" || u === "treemapRootToNode") ? this._doAnimation(p, g, t, c) : g.renderFinally(), this._resetController(n), this._renderBreadcrumb(t, n, l);
18564    }
18565  }, e.prototype._giveContainerGroup = function(t) {
18566    var a = this._containerGroup;
18567    return a || (a = this._containerGroup = new qd(), this._initEvents(a), this.group.add(a)), a.x = t.x, a.y = t.y, a;
18568  }, e.prototype._doRender = function(t, a, n) {
18569    var i = a.getData().tree, o = this._oldTree, s = ds(), l = ds(), u = this._storage, f = [];
18570    function h(m, _, S, b) {
18571      return XF(a, l, u, n, s, f, m, _, S, b);
18572    }
18573    d(i.root ? [i.root] : [], o && o.root ? [o.root] : [], t, i === o || !o, 0);
18574    var v = g(u);
18575    if (this._oldTree = i, this._storage = l, this._controllerHost) {
18576      var c = this.seriesModel.layoutInfo, p = i.root.getLayout();
18577      p.width === c.width && p.height === c.height && (this._controllerHost.zoom = 1);
18578    }
18579    return { lastsForAnimation: s, willDeleteEls: v, renderFinally: y };
18580    function d(m, _, S, b, x) {
18581      b ? (_ = m, D(m, function(C, A) {
18582        !C.isRemoved() && T(A, A);
18583      })) : new Sa(_, m, w, w).add(T).update(T).remove(lt(T, null)).execute();
18584      function w(C) {
18585        return C.getId();
18586      }
18587      function T(C, A) {
18588        var M = C != null ? m[C] : null, I = A != null ? _[A] : null, L = h(M, I, S, x);
18589        L && d(M && M.viewChildren || [], I && I.viewChildren || [], L, b, x + 1);
18590      }
18591    }
18592    function g(m) {
18593      var _ = ds();
18594      return m && D(m, function(S, b) {
18595        var x = _[b];
18596        D(S, function(w) {
18597          w && (x.push(w), rh(w).willDelete = true);
18598        });
18599      }), _;
18600    }
18601    function y() {
18602      D(v, function(m) {
18603        D(m, function(_) {
18604          _.parent && _.parent.remove(_);
18605        });
18606      }), D(f, function(m) {
18607        m.invisible = true, m.dirty();
18608      });
18609    }
18610  }, e.prototype._doAnimation = function(t, a, n, i) {
18611    var o = n.get("animationDurationUpdate"), s = n.get("animationEasing"), l = (j(o) ? 0 : o) || 0, u = (j(s) ? null : s) || "cubicOut", f = HF();
18612    D(a.willDeleteEls, function(h, v) {
18613      D(h, function(c, p) {
18614        if (!c.invisible) {
18615          var d = c.parent, g, y = rh(d);
18616          if (i && i.direction === "drillDown") g = d === i.rootNodeGroup ? { shape: { x: 0, y: 0, width: y.nodeWidth, height: y.nodeHeight }, style: { opacity: 0 } } : { style: { opacity: 0 } };
18617          else {
18618            var m = 0, _ = 0;
18619            y.willDelete || (m = y.nodeWidth / 2, _ = y.nodeHeight / 2), g = v === "nodeGroup" ? { x: m, y: _, style: { opacity: 0 } } : { shape: { x: m, y: _, width: 0, height: 0 }, style: { opacity: 0 } };
18620          }
18621          g && f.add(c, g, l, 0, u);
18622        }
18623      });
18624    }), D(this._storage, function(h, v) {
18625      D(h, function(c, p) {
18626        var d = a.lastsForAnimation[v][p], g = {};
18627        d && (c instanceof at ? d.oldX != null && (g.x = c.x, g.y = c.y, c.x = d.oldX, c.y = d.oldY) : (d.oldShape && (g.shape = z({}, c.shape), c.setShape(d.oldShape)), d.fadein ? (c.setStyle("opacity", 0), g.style = { opacity: 1 }
18627) : c.style.opacity !== 1 && (g.style = { opacity: 1 })), f.add(c, g, l, 0, u));
18628      });
18629    }, this), this._state = "animating", f.finished($(function() {
18630      this._state = "ready", a.renderFinally();
18631    }, this)).start();
18632  }, e.prototype._resetController = function(t) {
18633    var a = this._controller, n = this._controllerHost;
18634    n || (this._controllerHost = { target: this.group }, n = this._controllerHost), a || (a = this._controller = new ql(t.getZr()), a.enable(this.seriesModel.get("roam")), n.zoomLimit = this.seriesModel.get("scaleLimit"), n.zoom = this.seriesModel.get("zoom"), a.on("pan", $(this._onPan, this)), a.on("zoom", $(this._onZoom, this)));
18635    var i = new ht(0, 0, t.getWidth(), t.getHeight());
18636    a.setPointerChecker(function(o, s, l) {
18637      return i.contain(s, l);
18638    });
18639  }, e.prototype._clearController = function() {
18640    var t = this._controller;
18641    this._controllerHost = null, t && (t.dispose(), t = null);
18642  }, e.prototype._onPan = function(t) {
18643    if (this._state !== "animating" && (Math.abs(t.dx) > ox || Math.abs(t.dy) > ox)) {
18644      var a = this.seriesModel.getData().tree.root;
18645      if (!a) return;
18646      var n = a.getLayout();
18647      if (!n) return;
18648      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 } });
18649    }
18650  }, e.prototype._onZoom = function(t) {
18651    var a = t.originX, n = t.originY, i = t.scale;
18652    if (this._state !== "animating") {
18653      var o = this.seriesModel.getData().tree.root;
18654      if (!o) return;
18655      var s = o.getLayout();
18656      if (!s) return;
18657      var l = new ht(s.x, s.y, s.width, s.height), u = null, f = this._controllerHost;
18658      u = f.zoomLimit;
18659      var h = f.zoom = f.zoom || 1;
18660      if (h *= i, u) {
18661        var v = u.min || 0, c = u.max || 1 / 0;
18662        h = Math.max(Math.min(c, h), v);
18663      }
18664      var p = h / f.zoom;
18665      f.zoom = h;
18666      var d = this.seriesModel.layoutInfo;
18667      a -= d.x, n -= d.y;
18668      var g = He();
18669      Pr(g, g, [-a, -n]), Th(g, g, [p, p]), Pr(g, g, [a, n]), l.applyTransform(g), this.api.dispatchAction({ type: "treemapRender", from: this.uid, seriesId: this.seriesModel.id, rootRect: { x: l.x, y: l.y, width: l.width, height: l.height } });
18670    }
18671  }, e.prototype._initEvents = function(t) {
18672    var a = this;
18673    t.on("click", function(n) {
18674      if (a._state === "ready") {
18675        var i = a.seriesModel.get("nodeClick", true);
18676        if (i) {
18677          var o = a.findTarget(n.offsetX, n.offsetY);
18678          if (o) {
18679            var s = o.node;
18680            if (s.getLayout().isLeafRoot) a._rootToNode(o);
18681            else if (i === "zoomToNode") a._zoomToNode(o);
18682            else if (i === "link") {
18683              var l = s.hostTree.data.getItemModel(s.dataIndex), u = l.get("link", true), f = l.get("target", true) || "blank";
18684              u && zf(u, f);
18685            }
18686          }
18687        }
18688      }
18689    }, this);
18690  }, e.prototype._renderBreadcrumb = function(t, a, n) {
18691    var i = this;
18692    n || (n = t.get("leafDepth", true) != null ? { node: t.getViewRoot() } : this.findTarget(a.getWidth() / 2, a.getHeight() / 2), n || (n = { node: t.getData().tree.root })), (this._breadcrumb || (this._breadcrumb = new zF(this.group))).render(t, a, n.node, function(o) {
18693      i._state !== "animating" && (sm(t.getViewRoot(), o) ? i._rootToNode({ node: o }) : i._zoomToNode({ node: o }));
18694    });
18695  }, e.prototype.remove = function() {
18696    this._clearController(), this._containerGroup && this._containerGroup.removeAll(), this._storage = ds(), this._state = "ready", this._breadcrumb && this._breadcrumb.remove();
18697  }, e.prototype.dispose = function() {
18698    this._clearController();
18699  }, e.prototype._zoomToNode = function(t) {
18700    this.api.dispatchAction({ type: "treemapZoomToNode", from: this.uid, seriesId: this.seriesModel.id, targetNode: t.node });
18701  }, e.prototype._rootToNode = function(t) {
18702    this.api.dispatchAction({ type: "treemapRootToNode", from: this.uid, seriesId: this.seriesModel.id, targetNode: t.node });
18703  }, e.prototype.findTarget = function(t, a) {
18704    var n, i = this.seriesModel.getViewRoot();
18705    return i.eachNode({ attr: "viewChildren", order: "preorder" }, function(o) {
18706      var s = this._storage.background[o.getRawIndex()];
18707      if (s) {
18708        var l = s.transformCoordToLocal(t, a), u = s.shape;
18709        if (u.x <= l[0] && l[0] <= u.x + u.width && u.y <= l[1] && l[1] <= u.y + u.height) n = { node: o, offsetX: l[0], offsetY: l[1] };
18710        else return false;
18711      }
18712    }, this), n;
18713  }, e.type = "treemap", e;
18714}(Pt);
18715function ds() {
18716  return { nodeGroup: [], background: [], content: [] };
18717}
18718function XF(r, e, t, a, n, i, o, s, l, u) {
18719  if (!o) return;
18720  var f = o.getLayout(), h = r.getData(), v = o.getModel();
18721  if (h.setItemGraphicEl(o.dataIndex, null), !f || !f.isInView) return;
18722  var c = f.width, p = f.height, d = f.borderWidth, g = f.invisible, y = o.getRawIndex(), m = s && s.getRawIndex(), _ = o.viewChildren, S = f.upperHeight, b = _ && _.length, x = v.getModel("itemStyle"), w = v.getModel(["emphasis", "itemStyle"]), T = v.getModel(["blur", "itemStyle"]), C = v.getModel(["select", "itemStyle"]), A = x.get("borderRadius") || 0, M = nt("nodeGroup", qd);
18723  if (!M) return;
18724  if (l.add(M), M.x = f.x || 0, M.y = f.y || 0, M.markRedraw(), rh(M).nodeWidth = c, rh(M).nodeHeight = p, f.isAboveViewRoot) return M;
18725  var I = nt("background", ix, u, UF);
18726  I && F(M, I, b && f.upperLabelHeight);
18727  var L = v.getModel("emphasis"), P = L.get("focus"), R = L.get("blurScope"), E = L.get("disabled"), O = P === "ancestor" ? o.getAncestorsIndices() : P === "descendant" ? o.getDescendantIndices() : P;
18728  if (b) ll(M) && qn(M, false), I && (qn(I, !E), h.setItemGraphicEl(o.dataIndex, I), cd(I, O, R));
18729  else {
18730    var k = nt("content", ix, u, YF);
18731    k && H(M, k), I.disableMorphing = true, I && ll(I) && qn(I, false), qn(M, !E), h.setItemGraphicEl(o.dataIndex, M);
18732    var B = v.getShallow("cursor");
18733    B && k.attr("cursor", B), cd(M, O, R);
18734  }
18735  return M;
18736  function F(ct, et, dt) {
18737    var q = it(et);
18738    if (q.dataIndex = o.dataIndex, q.seriesIndex = r.seriesIndex, et.setShape({ x: 0, y: 0, width: c, height: p, r: A }), g) U(et);
18739    else {
18740      et.invisible = false;
18741      var ot = o.getVisual("style"), Bt = ot.stroke, Lt = ux(x);
18742      Lt.fill = Bt;
18743      var kt = Vn(w);
18744      kt.fill = w.get("borderColor");
18745      var Ht = Vn(T);
18746      Ht.fill = T.get("borderColor");
18747      var re = Vn(C);
18748      if (re.fill = C.get("borderColor"), dt) {
18749        var We = c - 2 * d;
18750        K(et, Bt, ot.opacity, { x: d, y: 0, width: We, height: S });
18751      } else et.removeTextContent();
18752      et.setStyle(Lt), et.ensureState("emphasis").style = kt, et.ensureState("blur").style = Ht, et.ensureState("select").style = re, ci(et);
18753    }
18754    ct.add(et);
18755  }
18756  function H(ct, et) {
18757    var dt = it(et);
18758    dt.dataIndex = o.dataIndex, dt.seriesIndex = r.seriesIndex;
18759    var q = Math.max(c - 2 * d, 0), ot = Math.max(p - 2 * d, 0);
18760    if (et.culling = true, et.setShape({ x: d, y: d, width: q, height: ot, r: A }), g) U(et);
18761    else {
18762      et.invisible = false;
18763      var Bt = o.getVisual("style"), Lt = Bt.fill, kt = ux(x);
18764      kt.fill = Lt, kt.decal = Bt.decal;
18765      var Ht = Vn(w), re = Vn(T), We = Vn(C);
18766      K(et, Lt, Bt.opacity, null), et.setStyle(kt), et.ensureState("emphasis").style = Ht, et.ensureState("blur").style = re, et.ensureState("select").style = We, ci(et);
18767    }
18768    ct.add(et);
18769  }
18770  function U(ct) {
18771    !ct.invisible && i.push(ct);
18772  }
18773  function K(ct, et, dt, q) {
18774    var ot = v.getModel(q ? lx : sx), Bt = te(v.get("name"), null), Lt = ot.getShallow("show");
18775    de(ct, se(v, q ? lx : sx), { defaultText: Lt ? Bt : null, inheritColor: et, defaultOpacity: dt, labelFetcher: r, labelDataIndex: o.dataIndex });
18776    var kt = ct.getTextContent();
18777    if (kt) {
18778      var Ht = kt.style, re = bh(Ht.padding || 0);
18779      q && (ct.setTextConfig({ layoutRect: q }), kt.disableLabelLayout = true), kt.beforeUpdate = function() {
18780        var Ne = Math.max((q ? q.width : ct.shape.width) - re[1] - re[3], 0), vn = Math.max((q ? q.height : ct.shape.height) - re[0] - re[2], 0);
18781        (Ht.width !== Ne || Ht.height !== vn) && kt.setStyle({ width: Ne, height: vn });
18782      }, Ht.truncateMinChar = 2, Ht.lineOverflow = "truncate", J(Ht, q, f);
18783      var We = kt.getState("emphasis");
18784      J(We ? We.style : null, q, f);
18785    }
18786  }
18787  function J(ct, et, dt) {
18788    var q = ct ? ct.text : null;
18789    if (!et && dt.isLeafRoot && q != null) {
18790      var ot = r.get("drillDownIcon", true);
18791      ct.text = ot ? ot + " " + q : q;
18792    }
18793  }
18794  function nt(ct, et, dt, q) {
18795    var ot = m != null && t[ct][m], Bt = n[ct];
18796    return ot ? (t[ct][m] = null, It(Bt, ot)) : g || (ot = new et(), ot instanceof vr && (ot.z2 = ZF(dt, q)), Yt(Bt, ot)), e[ct][y] = ot;
18797  }
18798  function It(ct, et) {
18799    var dt = ct[y] = {};
18800    et instanceof qd ? (dt.oldX = et.x, dt.oldY = et.y) : dt.oldShape = z({}, et.shape);
18801  }
18802  function Yt(ct, et) {
18803    var dt = ct[y] = {}, q = o.parentNode, ot = et instanceof at;
18804    if (q && (!a || a.direction === "drillDown")) {
18805      var Bt = 0, Lt = 0, kt = n.background[q.getRawIndex()];
18806      !a && kt && kt.oldShape && (Bt = kt.oldShape.width, Lt = kt.oldShape.height), ot ? (dt.oldX = 0, dt.oldY = Lt) : dt.oldShape = { x: Bt, y: Lt, width: 0, height: 0 };
18807    }
18808    dt.fadein = !ot;
18809  }
18810}
18811function ZF(r, e) {
18812  return r * WF + e;
18813}
18814var bl = D, qF = tt, ah = -1, oe = function() {
18815  function r(e) {
18816    var t = e.mappingMethod, a = e.type, n = this.option = rt(e);
18817    this.type = a, this.mappingMethod = t, this._normalizeData = JF[t];
18818    var i = r.visualHandlers[a];
18819    this.applyVisual = i.applyVisual, this.getColorMapper = i.getColorMapper, this._normalizedToVisual = i._normalizedToVisual[t], t === "piecewise" ? (Vc(n), KF(n)) : t === "category" ? n.categories ? jF(n) : Vc(n, true) : (we(t !== "linear" || n.dataExtent), Vc(n));
18820  }
18821  return r.prototype.mapValueToVisual = function(e) {
18822    var t = this._normalizeData(e);
18823    return this._normalizedToVisual(t, e);
18824  }, r.prototype.getNormalizer = function() {
18825    return $(this._normalizeData, this);
18826  }, r.listVisualTypes = function() {
18827    return _t(r.visualHandlers);
18828  }, r.isValidType = function(e) {
18829    return r.visualHandlers.hasOwnProperty(e);
18830  }, r.eachVisual = function(e, t, a) {
18831    tt(e) ? D(e, t, a) : t.call(a, e);
18832  }, r.mapVisual = function(e, t, a) {
18833    var n, i = V(e) ? [] : tt(e) ? {} : (n = true, null);
18834    return r.eachVisual(e, function(o, s) {
18835      var l = t.call(a, o, s);
18836      n ? i = l : i[s] = l;
18837    }), i;
18838  }, r.retrieveVisuals = function(e) {
18839    var t = {}, a;
18840    return e && bl(r.visualHandlers, function(n, i) {
18841      e.hasOwnProperty(i) && (t[i] = e[i], a = true);
18842    }), a ? t : null;
18843  }, r.prepareVisualTypes = function(e) {
18844    if (V(e)) e = e.slice();
18845    else if (qF(e)) {
18846      var t = [];
18847      bl(e, function(a, n) {
18848        t.push(n);
18849      }), e = t;
18850    } else return [];
18851    return e.sort(function(a, n) {
18852      return n === "color" && a !== "color" && a.indexOf("color") === 0 ? 1 : -1;
18853    }), e;
18854  }, r.dependsOn = function(e, t) {
18855    return t === "color" ? !!(e && e.indexOf(t) === 0) : e === t;
18856  }, r.findPieceIndex = function(e, t, a) {
18857    for (var n, i = 1 / 0, o = 0, s = t.length; o < s; o++) {
18858      var l = t[o].value;
18859      if (l != null) {
18860        if (l === e || Y(l) && l === e + "") return o;
18861        a && v(l, o);
18862      }
18863    }
18864    for (var o = 0, s = t.length; o < s; o++) {
18865      var u = t[o], f = u.interval, h = u.close;
18866      if (f) {
18867        if (f[0] === -1 / 0) {
18868          if (Gu(h[1], e, f[1])) return o;
18869        } else if (f[1] === 1 / 0) {
18870          if (Gu(h[0], f[0], e)) return o;
18871        } else if (Gu(h[0], f[0], e) && Gu(h[1], e, f[1])) return o;
18872        a && v(f[0], o), a && v(f[1], o);
18873      }
18874    }
18875    if (a) return e === 1 / 0 ? t.length - 1 : e === -1 / 0 ? 0 : n;
18876    function v(c, p) {
18877      var d = Math.abs(c - e);
18878      d < i && (i = d, n = p);
18879    }
18880  }, r.visualHandlers = { color: { applyVisual: gs("color"), getColorMapper: function() {
18881    var e = this.option;
18882    return $(e.mappingMethod === "category" ? function(t, a) {
18883      return !a && (t = this._normalizeData(t)), Ps.call(this, t);
18884    } : function(t, a, n) {
18885      var i = !!n;
18886      return !a && (t = this._normalizeData(t)), n = Vs(t, e.parsedVisual, n), i ? n : Mr(n, "rgba");
18887    }, this);
18888  }, _normalizedToVisual: { linear: function(e) {
18889    return Mr(Vs(e, this.option.parsedVisual), "rgba");
18890  }, category: Ps, piecewise: function(e, t) {
18891    var a = jd.call(this, t);
18892    return a == null && (a = Mr(Vs(e, this.option.parsedVisual), "rgba")), a;
18893  }, fixed: Gn } }, colorHue: Vu(function(e, t) {
18894    return lo(e, t);
18895  }), colorSaturation: Vu(function(e, t) {
18896    return lo(e, null, t);
18897  }), colorLightness: Vu(function(e, t) {
18898    return lo(e, null, null, t);
18899  }), colorAlpha: Vu(function(e, t) {
18900    return al(e, t);
18901  }), decal: { applyVisual: gs("decal"), _normalizedToVisual: { linear: null, category: Ps, piecewise: null, fixed: null } }, opacity: { applyVisual: gs("opacity"), _normalizedToVisual: Kd([0, 1]) }, liftZ: { applyVisual: gs("liftZ"), _normalizedToVisual: { linear: Gn, category: Gn, piecewise: Gn, fixed: Gn } }, symbol: { applyVisual: function(e, t, a) {
18902    var n = this.mapValueToVisual(e);
18903    a("symbol", n);
18904  }, _normalizedToVisual: { linear: fx, category: Ps, piecewise: function(e, t) {
18905    var a = jd.call(this, t);
18906    return a == null && (a = fx.call(this, e)), a;
18907  }, fixed: Gn } }, symbolSize: { applyVisual: gs("symbolSize"), _normalizedToVisual: Kd([0, 1]) } }, r;
18908}();
18909function KF(r) {
18910  var e = r.pieceList;
18911  r.hasSpecialVisual = false, D(e, function(t, a) {
18912    t.originIndex = a, t.visual != null && (r.hasSpecialVisual = true);
18913  });
18914}
18915function jF(r) {
18916  var e = r.categories, t = r.categoryMap = {}, a = r.visual;
18917  if (bl(e, function(o, s) {
18918    t[o] = s;
18919  }), !V(a)) {
18920    var n = [];
18921    tt(a) ? bl(a, function(o, s) {
18922      var l = t[s];
18923      n[l ?? ah] = o;
18924    }) : n[ah] = a, a = KM(r, n);
18925  }
18926  for (var i = e.length - 1; i >= 0; i--) a[i] == null && (delete t[e[i]], e.pop());
18927}
18928function Vc(r, e) {
18929  var t = r.visual, a = [];
18930  tt(t) ? bl(t, function(i) {
18931    a.push(i);
18932  }) : t != null && a.push(t);
18933  var n = { color: 1, symbol: 1 };
18934  !e && a.length === 1 && !n.hasOwnProperty(r.type) && (a[1] = a[0]), KM(r, a);
18935}
18936function Vu(r) {
18937  return { applyVisual: function(e, t, a) {
18938    var n = this.mapValueToVisual(e);
18939    a("color", r(t("color"), n));
18940  }, _normalizedToVisual: Kd([0, 1]) };
18941}
18942function fx(r) {
18943  var e = this.option.visual;
18944  return e[Math.round(Dt(r, [0, 1], [0, e.length - 1], true))] || {};
18945}
18946function gs(r) {
18947  return function(e, t, a) {
18948    a(r, this.mapValueToVisual(e));
18949  };
18950}
18951function Ps(r) {
18952  var e = this.option.visual;
18953  return e[this.option.loop && r !== ah ? r % e.length : r];
18954}
18955function Gn() {
18956  return this.option.visual[0];
18957}
18958function Kd(r) {
18959  return { linear: function(e) {
18960    return Dt(e, r, this.option.visual, true);
18961  }, category: Ps, piecewise: function(e, t) {
18962    var a = jd.call(this, t);
18963    return a == null && (a = Dt(e, r, this.option.visual, true)), a;
18964  }, fixed: Gn };
18965}
18966function jd(r) {
18967  var e = this.option, t = e.pieceList;
18968  if (e.hasSpecialVisual) {
18969    var a = oe.findPieceIndex(r, t), n = t[a];
18970    if (n && n.visual) return n.visual[this.type];
18971  }
18972}
18973function KM(r, e) {
18974  return r.visual = e, r.type === "color" && (r.parsedVisual = G(e, function(t) {
18975    var a = Re(t);
18976    return a || [0, 0, 0, 1];
18977  })), e;
18978}
18979var JF = { linear: function(r) {
18980  return Dt(r, this.option.dataExtent, [0, 1], true);
18981}, piecewise: function(r) {
18982  var e = this.option.pieceList, t = oe.findPieceIndex(r, e, true);
18983  if (t != null) return Dt(t, [0, e.length - 1], [0, 1], true);
18984}, category: function(r) {
18985  var e = this.option.categories ? this.option.categoryMap[r] : r;
18986  return e ?? ah;
18987}, fixed: $t };
18988function Gu(r, e, t) {
18989  return r ? e <= t : e < t;
18990}
18991var QF = "itemStyle", jM = bt();
18992const t3 = { seriesType: "treemap", reset: function(r) {
18993  var e = r.getData().tree, t = e.root;
18994  t.isRemoved() || JM(t, {}, r.getViewRoot().getAncestors(), r);
18995} };
18996function JM(r, e, t, a) {
18997  var n = r.getModel(), i = r.getLayout(), o = r.hostTree.data;
18998  if (!(!i || i.invisible || !i.isInView)) {
18999    var s = n.getModel(QF), l = e3(s, e, a), u = o.ensureUniqueItemVisual(r.dataIndex, "style"), f = s.get("borderColor"), h = s.get("borderColorSaturation"), v;
19000    h != null && (v = hx(l), f = r3(h, v)), u.stroke = f;
19001    var c = r.viewChildren;
19002    if (!c || !c.length) v = hx(l), u.fill = v;
19003    else {
19004      var p = a3(r, n, i, s, l, c);
19005      D(c, function(d, g) {
19006        if (d.depth >= t.length || d === t[d.depth]) {
19007          var y = n3(n, l, d, g, p, a);
19008          JM(d, y, t, a);
19009        }
19010      });
19011    }
19012  }
19013}
19014function e3(r, e, t) {
19015  var a = z({}, e), n = t.designatedVisualItemStyle;
19016  return D(["color", "colorAlpha", "colorSaturation"], function(i) {
19017    n[i] = e[i];
19018    var o = r.get(i);
19019    n[i] = null, o != null && (a[i] = o);
19020  }), a;
19021}
19022function hx(r) {
19023  var e = Gc(r, "color");
19024  if (e) {
19025    var t = Gc(r, "colorAlpha"), a = Gc(r, "colorSaturation");
19026    return a && (e = lo(e, null, null, a)), t && (e = al(e, t)), e;
19027  }
19028}
19029function r3(r, e) {
19030  return e != null ? lo(e, null, null, r) : null;
19031}
19032function Gc(r, e) {
19033  var t = r[e];
19034  if (t != null && t !== "none") return t;
19035}
19036function a3(r, e, t, a, n, i) {
19037  if (!(!i || !i.length)) {
19038    var o = Fc(e, "color") || n.color != null && n.color !== "none" && (Fc(e, "colorAlpha") || Fc(e, "colorSaturation"));
19039    if (o) {
19040      var s = e.get("visualMin"), l = e.get("visualMax"), u = t.dataExtent.slice();
19041      s != null && s < u[0] && (u[0] = s), l != null && l > u[1] && (u[1] = l);
19042      var f = e.get("colorMappingBy"), h = { type: o.name, dataExtent: u, visual: o.range };
19043      h.type === "color" && (f === "index" || f === "id") ? (h.mappingMethod = "category", h.loop = true) : h.mappingMethod = "linear";
19044      var v = new oe(h);
19045      return jM(v).drColorMappingBy = f, v;
19046    }
19047  }
19048}
19049function Fc(r, e) {
19050  var t = r.get(e);
19051  return V(t) && t.length ? { name: e, range: t } : null;
19052}
19053function n3(r, e, t, a, n, i) {
19054  var o = z({}, e);
19055  if (n) {
19056    var s = n.type, l = s === "color" && jM(n).drColorMappingBy, u = l === "index" ? a : l === "i
19056d" ? i.mapIdToIndex(t.getId()) : t.getValue(r.get("visualDimension"));
19057    o[s] = n.mapValueToVisual(u);
19058  }
19059  return o;
19060}
19061var wl = Math.max, nh = Math.min, vx = ne, lm = D, QM = ["itemStyle", "borderWidth"], i3 = ["itemStyle", "gapWidth"], o3 = ["upperLabel", "show"], s3 = ["upperLabel", "height"];
19062const l3 = { seriesType: "treemap", reset: function(r, e, t, a) {
19063  var n = t.getWidth(), i = t.getHeight(), o = r.option, s = Qt(r.getBoxLayoutParams(), { width: t.getWidth(), height: t.getHeight() }), l = o.size || [], u = W(vx(s.width, l[0]), n), f = W(vx(s.height, l[1]), i), h = a && a.type, v = ["treemapZoomToNode", "treemapRootToNode"], c = xl(a, v, r), p = h === "treemapRender" || h === "treemapMove" ? a.rootRect : null, d = r.getViewRoot(), g = XM(d);
19064  if (h !== "treemapMove") {
19065    var y = h === "treemapZoomToNode" ? p3(r, c, d, u, f) : p ? [p.width, p.height] : [u, f], m = o.sort;
19066    m && m !== "asc" && m !== "desc" && (m = "desc");
19067    var _ = { squareRatio: o.squareRatio, sort: m, leafDepth: o.leafDepth };
19068    d.hostTree.clearLayouts();
19069    var S = { x: 0, y: 0, width: y[0], height: y[1], area: y[0] * y[1] };
19070    d.setLayout(S), tI(d, _, false, 0), S = d.getLayout(), lm(g, function(x, w) {
19071      var T = (g[w + 1] || d).getValue();
19072      x.setLayout(z({ dataExtent: [T, T], borderWidth: 0, upperHeight: 0 }, S));
19073    });
19074  }
19075  var b = r.getData().tree.root;
19076  b.setLayout(d3(s, p, c), true), r.setLayoutInfo(s), eI(b, new ht(-s.x, -s.y, n, i), g, d, 0);
19077} };
19078function tI(r, e, t, a) {
19079  var n, i;
19080  if (!r.isRemoved()) {
19081    var o = r.getLayout();
19082    n = o.width, i = o.height;
19083    var s = r.getModel(), l = s.get(QM), u = s.get(i3) / 2, f = rI(s), h = Math.max(l, f), v = l - u, c = h - u;
19084    r.setLayout({ borderWidth: l, upperHeight: h, upperLabelHeight: f }, true), n = wl(n - 2 * v, 0), i = wl(i - v - c, 0);
19085    var p = n * i, d = u3(r, s, p, e, t, a);
19086    if (d.length) {
19087      var g = { x: v, y: c, width: n, height: i }, y = nh(n, i), m = 1 / 0, _ = [];
19088      _.area = 0;
19089      for (var S = 0, b = d.length; S < b; ) {
19090        var x = d[S];
19091        _.push(x), _.area += x.getLayout().area;
19092        var w = c3(_, y, e.squareRatio);
19093        w <= m ? (S++, m = w) : (_.area -= _.pop().getLayout().area, cx(_, y, g, u, false), y = nh(g.width, g.height), _.length = _.area = 0, m = 1 / 0);
19094      }
19095      if (_.length && cx(_, y, g, u, true), !t) {
19096        var T = s.get("childrenVisibleMin");
19097        T != null && p < T && (t = true);
19098      }
19099      for (var S = 0, b = d.length; S < b; S++) tI(d[S], e, t, a + 1);
19100    }
19101  }
19102}
19103function u3(r, e, t, a, n, i) {
19104  var o = r.children || [], s = a.sort;
19105  s !== "asc" && s !== "desc" && (s = null);
19106  var l = a.leafDepth != null && a.leafDepth <= i;
19107  if (n && !l) return r.viewChildren = [];
19108  o = Ct(o, function(c) {
19109    return !c.isRemoved();
19110  }), h3(o, s);
19111  var u = v3(e, o, s);
19112  if (u.sum === 0) return r.viewChildren = [];
19113  if (u.sum = f3(e, t, u.sum, s, o), u.sum === 0) return r.viewChildren = [];
19114  for (var f = 0, h = o.length; f < h; f++) {
19115    var v = o[f].getValue() / u.sum * t;
19116    o[f].setLayout({ area: v });
19117  }
19118  return l && (o.length && r.setLayout({ isLeafRoot: true }, true), o.length = 0), r.viewChildren = o, r.setLayout({ dataExtent: u.dataExtent }, true), o;
19119}
19120function f3(r, e, t, a, n) {
19121  if (!a) return t;
19122  for (var i = r.get("visibleMin"), o = n.length, s = o, l = o - 1; l >= 0; l--) {
19123    var u = n[a === "asc" ? o - l - 1 : l].getValue();
19124    u / t * e < i && (s = l, t -= u);
19125  }
19126  return a === "asc" ? n.splice(0, o - s) : n.splice(s, o - s), t;
19127}
19128function h3(r, e) {
19129  return e && r.sort(function(t, a) {
19130    var n = e === "asc" ? t.getValue() - a.getValue() : a.getValue() - t.getValue();
19131    return n === 0 ? e === "asc" ? t.dataIndex - a.dataIndex : a.dataIndex - t.dataIndex : n;
19132  }), r;
19133}
19134function v3(r, e, t) {
19135  for (var a = 0, n = 0, i = e.length; n < i; n++) a += e[n].getValue();
19136  var o = r.get("visualDimension"), s;
19137  return !e || !e.length ? s = [NaN, NaN] : o === "value" && t ? (s = [e[e.length - 1].getValue(), e[0].getValue()], t === "asc" && s.reverse()) : (s = [1 / 0, -1 / 0], lm(e, function(l) {
19138    var u = l.getValue(o);
19139    u < s[0] && (s[0] = u), u > s[1] && (s[1] = u);
19140  })), { sum: a, dataExtent: s };
19141}
19142function c3(r, e, t) {
19143  for (var a = 0, n = 1 / 0, i = 0, o = void 0, s = r.length; i < s; i++) o = r[i].getLayout().area, o && (o < n && (n = o), o > a && (a = o));
19144  var l = r.area * r.area, u = e * e * t;
19145  return l ? wl(u * a / l, l / (u * n)) : 1 / 0;
19146}
19147function cx(r, e, t, a, n) {
19148  var i = e === t.width ? 0 : 1, o = 1 - i, s = ["x", "y"], l = ["width", "height"], u = t[s[i]], f = e ? r.area / e : 0;
19149  (n || f > t[l[o]]) && (f = t[l[o]]);
19150  for (var h = 0, v = r.length; h < v; h++) {
19151    var c = r[h], p = {}, d = f ? c.getLayout().area / f : 0, g = p[l[o]] = wl(f - 2 * a, 0), y = t[s[i]] + t[l[i]] - u, m = h === v - 1 || y < d ? y : d, _ = p[l[i]] = wl(m - 2 * a, 0);
19152    p[s[o]] = t[s[o]] + nh(a, g / 2), p[s[i]] = u + nh(a, _ / 2), u += m, c.setLayout(p, true);
19153  }
19154  t[s[o]] += f, t[l[o]] -= f;
19155}
19156function p3(r, e, t, a, n) {
19157  var i = (e || {}).node, o = [a, n];
19158  if (!i || i === t) return o;
19159  for (var s, l = a * n, u = l * r.option.zoomToNodeRatio; s = i.parentNode; ) {
19160    for (var f = 0, h = s.children, v = 0, c = h.length; v < c; v++) f += h[v].getValue();
19161    var p = i.getValue();
19162    if (p === 0) return o;
19163    u *= f / p;
19164    var d = s.getModel(), g = d.get(QM), y = Math.max(g, rI(d));
19165    u += 4 * g * g + (3 * g + y) * Math.pow(u, 0.5), u > nd && (u = nd), i = s;
19166  }
19167  u < l && (u = l);
19168  var m = Math.pow(u / l, 0.5);
19169  return [a * m, n * m];
19170}
19171function d3(r, e, t) {
19172  if (e) return { x: e.x, y: e.y };
19173  var a = { x: 0, y: 0 };
19174  if (!t) return a;
19175  var n = t.node, i = n.getLayout();
19176  if (!i) return a;
19177  for (var o = [i.width / 2, i.height / 2], s = n; s; ) {
19178    var l = s.getLayout();
19179    o[0] += l.x, o[1] += l.y, s = s.parentNode;
19180  }
19181  return { x: r.width / 2 - o[0], y: r.height / 2 - o[1] };
19182}
19183function eI(r, e, t, a, n) {
19184  var i = r.getLayout(), o = t[n], s = o && o === r;
19185  if (!(o && !s || n === t.length && r !== a)) {
19186    r.setLayout({ isInView: true, invisible: !s && !e.intersect(i), isAboveViewRoot: s }, true);
19187    var l = new ht(e.x - i.x, e.y - i.y, e.width, e.height);
19188    lm(r.viewChildren || [], function(u) {
19189      eI(u, l, t, a, n + 1);
19190    });
19191  }
19192}
19193function rI(r) {
19194  return r.get(o3) ? r.get(s3) : 0;
19195}
19196function g3(r) {
19197  r.registerSeriesModel(OF), r.registerChartView($F), r.registerVisual(t3), r.registerLayout(l3), kF(r);
19198}
19199function y3(r) {
19200  var e = r.findComponents({ mainType: "legend" });
19201  !e || !e.length || r.eachSeriesByType("graph", function(t) {
19202    var a = t.getCategoriesData(), n = t.getGraph(), i = n.data, o = a.mapArray(a.getName);
19203    i.filterSelf(function(s) {
19204      var l = i.getItemModel(s), u = l.getShallow("category");
19205      if (u != null) {
19206        wt(u) && (u = o[u]);
19207        for (var f = 0; f < e.length; f++) if (!e[f].isSelected(u)) return false;
19208      }
19209      return true;
19210    });
19211  });
19212}
19213function m3(r) {
19214  var e = {};
19215  r.eachSeriesByType("graph", function(t) {
19216    var a = t.getCategoriesData(), n = t.getData(), i = {};
19217    a.each(function(o) {
19218      var s = a.getName(o);
19219      i["ec-" + s] = o;
19220      var l = a.getItemModel(o), u = l.getModel("itemStyle").getItemStyle();
19221      u.fill || (u.fill = t.getColorFromPalette(s, e)), a.setItemVisual(o, "style", u);
19222      for (var f = ["symbol", "symbolSize", "symbolKeepAspect"], h = 0; h < f.length; h++) {
19223        var v = l.getShallow(f[h], true);
19224        v != null && a.setItemVisual(o, f[h], v);
19225      }
19226    }), a.count() && n.each(function(o) {
19227      var s = n.getItemModel(o), l = s.getShallow("category");
19228      if (l != null) {
19229        Y(l) && (l = i["ec-" + l]);
19230        var u = a.getItemVisual(l, "style"), f = n.ensureUniqueItemVisual(o, "style");
19231        z(f, u);
19232        for (var h = ["symbol", "symbolSize", "symbolKeepAspect"], v = 0; v < h.length; v++) n.setItemVisual(o, h[v], a.getItemVisual(l, h[v]));
19233      }
19234    });
19235  });
19236}
19237function Fu(r) {
19238  return r instanceof Array || (r = [r, r]), r;
19239}
19240function _3(r) {
19241  r.eachSeriesByType("graph", function(e) {
19242    var t = e.getGraph(), a = e.getEdgeData(), n = Fu(e.get("edgeSymbol")), i = Fu(e.get("edgeSymbolSize"));
19243    a.setVisual("fromSymbol", n && n[0]), a.setVisual("toSymbol", n && n[1]), a.setVisual("fromSymbolSize", i && i[0]), a.setVisual("toSymbolSize", i && i[1]), a.setVisual("style", e.getModel("lineStyle").getLineStyle()), a.each(function(o) {
19244      var s = a.getItemModel(o), l = t.getEdgeByIndex(o), u = Fu(s.getShallow("symbol", true)), f = Fu(s.getShallow("symbolSize", true)), h = s.getModel("lineStyle").getLineStyle(), v = a.ensureUniqueItemVisual(o, "style");
19245      switch (z(v, h), v.stroke) {
19246        case "source": {
19247          var c = l.node1.getVisual("style");
19248          v.stroke = c && c.fill;
19249          break;
19250        }
19251        case "target": {
19252          var c = l.node2.getVisual("style");
19253          v.stroke = c && c.fill;
19254          break;
19255        }
19256      }
19257      u[0] && l.setVisual("fromSymbol", u[0]), u[1] && l.setVisual("toSymbol", u[1]), f[0] && l.setVisual("fromSymbolSize", f[0]), f[1] && l.setVisual("toSymbolSize", f[1]);
19258    });
19259  });
19260}
19261var Jd = "-->", nv = function(r) {
19262  return r.get("autoCurveness") || null;
19263}, aI = function(r, e) {
19264  var t = nv(r), a = 20, n = [];
19265  if (wt(t)) a = t;
19266  else if (V(t)) {
19267    r.__curvenessList = t;
19268    return;
19269  }
19270  e > a && (a = e);
19271  var i = a % 2 ? a + 2 : a + 3;
19272  n = [];
19273  for (var o = 0; o < i; o++) n.push((o % 2 ? o + 1 : o) / 10 * (o % 2 ? -1 : 1));
19274  r.__curvenessList = n;
19275}, Tl = function(r, e, t) {
19276  var a = [r.id, r.dataIndex].join("."), n = [e.id, e.dataIndex].join(".");
19277  return [t.uid, a, n].join(Jd);
19278}, nI = function(r) {
19279  var e = r.split(Jd);
19280  return [e[0], e[2], e[1]].join(Jd);
19281}, S3 = function(r, e) {
19282  var t = Tl(r.node1, r.node2, e);
19283  return e.__edgeMap[t];
19284}, x3 = function(r, e) {
19285  var t = Qd(Tl(r.node1, r.node2, e), e), a = Qd(Tl(r.node2, r.node1, e), e);
19286  return t + a;
19287}, Qd = function(r, e) {
19288  var t = e.__edgeMap;
19289  return t[r] ? t[r].length : 0;
19290};
19291function b3(r) {
19292  nv(r) && (r.__curvenessList = [], r.__edgeMap = {}, aI(r));
19293}
19294function w3(r, e, t, a) {
19295  if (nv(t)) {
19296    var n = Tl(r, e, t), i = t.__edgeMap, o = i[nI(n)];
19297    i[n] && !o ? i[n].isForward = true : o && i[n] && (o.isForward = true, i[n].isForward = false), i[n] = i[n] || [], i[n].push(a);
19298  }
19299}
19300function um(r, e, t, a) {
19301  var n = nv(e), i = V(n);
19302  if (!n) return null;
19303  var o = S3(r, e);
19304  if (!o) return null;
19305  for (var s = -1, l = 0; l < o.length; l++) if (o[l] === t) {
19306    s = l;
19307    break;
19308  }
19309  var u = x3(r, e);
19310  aI(e, u), r.lineStyle = r.lineStyle || {};
19311  var f = Tl(r.node1, r.node2, e), h = e.__curvenessList, v = i || u % 2 ? 0 : 1;
19312  if (o.isForward) return h[v + s];
19313  var c = nI(f), p = Qd(c, e), d = h[s + p + v];
19314  return a ? i ? n && n[0] === 0 ? (p + v) % 2 ? d : -d : ((p % 2 ? 0 : 1) + v) % 2 ? d : -d : (p + v) % 2 ? d : -d : h[s + p + v];
19315}
19316function iI(r) {
19317  var e = r.coordinateSystem;
19318  if (!(e && e.type !== "view")) {
19319    var t = r.getGraph();
19320    t.eachNode(function(a) {
19321      var n = a.getModel();
19322      a.setLayout([+n.get("x"), +n.get("y")]);
19323    }), fm(t, r);
19324  }
19325}
19326function fm(r, e) {
19327  r.eachEdge(function(t, a) {
19328    var n = Ar(t.getModel().get(["lineStyle", "curveness"]), -um(t, e, a, true), 0), i = Zr(t.node1.getLayout()), o = Zr(t.node2.getLayout()), s = [i, o];
19329    +n && s.push([(i[0] + o[0]) / 2 - (i[1] - o[1]) * n, (i[1] + o[1]) / 2 - (o[0] - i[0]) * n]), t.setLayout(s);
19330  });
19331}
19332function T3(r, e) {
19333  r.eachSeriesByType("graph", function(t) {
19334    var a = t.get("layout"), n = t.coordinateSystem;
19335    if (n && n.type !== "view") {
19336      var i = t.getData(), o = [];
19337      D(n.dimensions, function(v) {
19338        o = o.concat(i.mapDimensionsAll(v));
19339      });
19340      for (var s = 0; s < i.count(); s++) {
19341        for (var l = [], u = false, f = 0; f < o.length; f++) {
19342          var h = i.get(o[f], s);
19343          isNaN(h) || (u = true), l.push(h);
19344        }
19345        u ? i.setItemLayout(s, n.dataToPoint(l)) : i.setItemLayout(s, [NaN, NaN]);
19346      }
19347      fm(i.graph, t);
19348    } else (!a || a === "none") && iI(t);
19349  });
19350}
19351function Rs(r) {
19352  var e = r.coordinateSystem;
19353  if (e.type !== "view") return 1;
19354  var t = r.option.nodeScaleRatio, a = e.scaleX, n = e.getZoom(), i = (n - 1) * t + 1;
19355  return i / a;
19356}
19357function Es(r) {
19358  var e = r.getVisual("symbolSize");
19359  return e instanceof Array && (e = (e[0] + e[1]) / 2), +e;
19360}
19361var px = Math.PI, Hc = [];
19362function hm(r, e, t, a) {
19363  var n = r.coordinateSystem;
19364  if (!(n && n.type !== "view")) {
19365    var i = n.getBoundingRect(), o = r.getData(), s = o.graph, l = i.width / 2 + i.x, u = i.height / 2 + i.y, f = Math.min(i.width, i.height) / 2, h = o.count();
19366    if (o.setLayout({ cx: l, cy: u }), !!h) {
19367      if (t) {
19368        var v = n.pointToData(a), c = v[0], p = v[1], d = [c - l, p - u];
19369        mi(d, d), Ns(d, d, f), t.setLayout([l + d[0], u + d[1]], true);
19370        var g = r.get(["circular", "rotateLabel"]);
19371        oI(t, g, l, u);
19372      }
19373      C3[e](r, s, o, f, l, u, h), s.eachEdge(function(y, m) {
19374        var _ = Ar(y.getModel().get(["lineStyle", "curveness"]), um(y, r, m), 0), S = Zr(y.node1.getLayout()), b = Zr(y.node2.getLayout()), x, w = (S[0] + b[0]) / 2, T = (S[1] + b[1]) / 2;
19375        +_ && (_ *= 3, x = [l * _ + w * (1 - _), u * _ + T * (1 - _)]), y.setLayout([S, b, x]);
19376      });
19377    }
19378  }
19379}
19380var C3 = { value: function(r, e, t, a, n, i, o) {
19381  var s = 0, l = t.getSum("value"), u = Math.PI * 2 / (l || o);
19382  e.eachNode(function(f) {
19383    var h = f.getValue("value"), v = u * (l ? h : 1) / 2;
19384    s += v, f.setLayout([a * Math.cos(s) + n, a * Math.sin(s) + i]), s += v;
19385  });
19386}, symbolSize: function(r, e, t, a, n, i, o) {
19387  var s = 0;
19388  Hc.length = o;
19389  var l = Rs(r);
19390  e.eachNode(function(h) {
19391    var v = Es(h);
19392    isNaN(v) && (v = 2), v < 0 && (v = 0), v *= l;
19393    var c = Math.asin(v / 2 / a);
19394    isNaN(c) && (c = px / 2), Hc[h.dataIndex] = c, s += c * 2;
19395  });
19396  var u = (2 * px - s) / o / 2, f = 0;
19397  e.eachNode(function(h) {
19398    var v = u + Hc[h.dataIndex];
19399    f += v, (!h.getLayout() || !h.getLayout().fixed) && h.setLayout([a * Math.cos(f) + n, a * Math.sin(f) + i]), f += v;
19400  });
19401} };
19402function oI(r, e, t, a) {
19403  var n = r.getGraphicEl();
19404  if (n) {
19405    var i = r.getModel(), o = i.get(["label", "rotate"]) || 0, s = n.getSymbolPath();
19406    if (e) {
19407      var l = r.getLayout(), u = Math.atan2(l[1] - a, l[0] - t);
19408      u < 0 && (u = Math.PI * 2 + u);
19409      var f = l[0] < t;
19410      f && (u = u - Math.PI);
19411      var h = f ? "left" : "right";
19412      s.setTextConfig({ rotation: -u, position: h, origin: "center" });
19413      var v = s.ensureState("emphasis");
19414      z(v.textConfig || (v.textConfig = {}), { position: h });
19415    } else s.setTextConfig({ rotation: o *= Math.PI / 180 });
19416  }
19417}
19418function A3(r) {
19419  r.eachSeriesByType("graph", function(e) {
19420    e.get("layout") === "circular" && hm(e, "symbolSize");
19421  });
19422}
19423var Wi = xf;
19424function D3(r, e, t) {
19425  for (var a = r, n = e, i = t.rect, o = i.width, s = i.height, l = [i.x + o / 2, i.y + s / 2], u = t.gravity == null ? 0.1 : t.gravity, f = 0; f < a.length; f++) {
19426    var h = a[f];
19427    h.p || (h.p = sn(o * (Math.random() - 0.5) + l[0], s * (Math.random() - 0.5) + l[1])), h.pp = Zr(h.p), h.edges = null;
19428  }
19429  var v = t.friction == null ? 0.6 : t.friction, c = v, p, d;
19430  return { warmUp: function() {
19431    c = v * 0.8;
19432  }, setFixed: function(g) {
19433    a[g].fixed = true;
19434  }, setUnfixed: function(g) {
19435    a[g].fixed = false;
19436  }, beforeStep: function(g) {
19437    p = g;
19438  }, afterStep: function(g) {
19439    d = g;
19440  }, step: function(g) {
19441    p && p(a, n);
19442    for (var y = [], m = a.length, _ = 0; _ < n.length; _++) {
19443      var S = n[_];
19444      if (!S.ignoreForceLayout) {
19445        var b = S.n1, x = S.n2;
19446        Va(y, x.p, b.p);
19447        var w = tl(y) - S.d, T = x.w / (b.w + x.w);
19448        isNaN(T) && (T = 0), mi(y, y), !b.fixed && Wi(b.p, b.p, y, T * w * c), !x.fixed && Wi(x.p, x.p, y, -(1 - T) * w * c);
19449      }
19450    }
19451    for (var _ = 0; _ < m; _++) {
19452      var C = a[_];
19453      C.fixed || (Va(y, l, C.p), Wi(C.p, C.p, y, u * c));
19454    }
19455    for (var _ = 0; _ < m; _++) for (var b = a[_], A = _ + 1; A < m; A++) {
19456      var x = a[A];
19457      Va(y, x.p, b.p);
19458      var w = tl(y);
19459      w === 0 && (cT(y, Math.random() - 0.5, Math.random() - 0.5), w = 1);
19460      var M = (b.rep + x.rep) / w / w;
19461      !b.fixed && Wi(b.pp, b.pp, y, M), !x.fixed && Wi(x.pp, x.pp, y, -M);
19462    }
19463    for (var I = [], _ = 0; _ < m; _++) {
19464      var C = a[_];
19465      C.fixed || (Va(I, C.p, C.pp), Wi(C.p, C.p, I, c), _e(C.pp, C.p));
19466    }
19467    c = c * 0.992;
19468    var L = c < 0.01;
19469    d && d(a, n, L), g && g(L);
19470  } };
19471}
19472function M3(r) {
19473  r.eachSeriesByType("graph", function(e) {
19474    var t = e.coordinateSystem;
19475    if (!(t && t.type !== "view")) if (e.get("layout") === "force") {
19476      var a = e.preservedPoints || {}, n = e.getGraph(), i = n.data, o = n.edgeData, s = e.getModel("force"), l = s.get("initLayout");
19477      e.preservedPoints ? i.each(function(_) {
19478        var S = i.getId(_);
19479        i.setItemLayout(_, a[S] || [NaN, NaN]);
19480      }) : !l || l === "none" ? iI(e) : l === "circular" && hm(e, "value");
19481      var u = i.getDataExtent("value"), f = o.getDataExtent("value"), h = s.get("repulsion"), v = s.get("edgeLength"), c = V(h) ? h : [h, h], p = V(v) ? v : [v, v];
19482      p = [p[1], p[0]];
19483      var d = i.mapArray("value", function(_, S) {
19484        var b = i.getItemLayout(S), x = Dt(_, u, c);
19485        return isNaN(x) && (x = (c[0] + c[1]) / 2), { w: x, rep: x, fixed: i.getItemModel(S).get("fixed"), p: !b || isNaN(b[0]) || isNaN(b[1]) ? null : b };
19486      }), g = o.mapArray("value", function(_, S) {
19487        var b = n.getEdgeByIndex(S), x = Dt(_, f, p);
19488        isNaN(x) && (x = (p[0] + p[1]) / 2);
19489        var w = b.getModel(), T = Ar(b.getModel().get(["lineStyle", "curveness"]), -um(b, e, S, true), 0);
19490        return { n1: d[b.node1.dataIndex], n2: d[b.node2.dataIndex], d: x, curveness: T, ignoreForceLayout: w.get("ignoreForceLayout") };
19491      }), y = t.getBoundingRect(), m = D3(d, g, { rect: y, gravity: s.get("gravity"), friction: s.get("friction") });
19492      m.beforeStep(function(_, S) {
19493        for (var b = 0, x = _.length; b < x; b++) _[b].fixed && _e(_[b].p, n.getNodeByIndex(b).getLayout());
19494      }), m.afterStep(function(_, S, b) {
19495        for (var x = 0, w = _.length; x < w; x++) _[x].fixed || n.getNodeByIndex(x).setLayout(_[x].p), a[i.getId(x)] = _[x].p;
19496        for (var x = 0, w = S.length; x < w; x++) {
19497          var T = S[x], C = n.getEdgeByIndex(x), A = T.n1.p, M = T.n2.p, I = C.getLayout();
19498          I = I ? I.slice() : [], I[0] = I[0] || [], I[1] = I[1] || [], _e(I[0], A), _e(I[1], M), +T.curveness && (I[2] = [(A[0] + M[0]) / 2 - (A[1] - M[1]) * T.curveness, (A[1] + M[1]) / 2 - (M[0] - A[0]) * T.curveness]), C.setLayout(I);
19499        }
19500      }), e.forceLayout = m, e.preservedPoints = a, m.step();
19501    } else e.forceLayout = null;
19502  });
19503}
19504function I3(r, e, t) {
19505  var a = z(r.getBoxLayoutParams(), { aspect: t });
19506  return Qt(a, { width: e.getWidth(), height: e.getHeight() });
19507}
19508function L3(r, e) {
19509  var t = [];
19510  return r.eachSeriesByType("graph", function(a) {
19511    var n = a.get("coordinateSystem");
19512    if (!n || n === "view") {
19513      var i = a.getData(), o = i.mapArray(function(g) {
19514        var y = i.getItemModel(g);
19515        return [+y.get("x"), +y.get("y")];
19516      }), s = [], l = [];
19517      Rh(o, s, l), l[0] - s[0] === 0 && (l[0] += 1, s[0] -= 1), l[1] - s[1] === 0 && (l[1] += 1, s[1] -= 1);
19518      var u = (l[0] - s[0]) / (l[1] - s[1]), f = I3(a, e, u);
19519      isNaN(u) && (s = [f.x, f.y], l = [f.x + f.width, f.y + f.he
19519ight]);
19520      var h = l[0] - s[0], v = l[1] - s[1], c = f.width, p = f.height, d = a.coordinateSystem = new Kl();
19521      d.zoomLimit = a.get("scaleLimit"), d.setBoundingRect(s[0], s[1], h, v), d.setViewRect(f.x, f.y, c, p), d.setCenter(a.get("center"), e), d.setZoom(a.get("zoom")), t.push(d);
19522    }
19523  }), t;
19524}
19525var dx = ee.prototype, Wc = Po.prototype, sI = /* @__PURE__ */ function() {
19526  function r() {
19527    this.x1 = 0, this.y1 = 0, this.x2 = 0, this.y2 = 0, this.percent = 1;
19528  }
19529  return r;
19530}();
19531(function(r) {
19532  N(e, r);
19533  function e() {
19534    return r !== null && r.apply(this, arguments) || this;
19535  }
19536  return e;
19537})(sI);
19538function Uc(r) {
19539  return isNaN(+r.cpx1) || isNaN(+r.cpy1);
19540}
19541var P3 = function(r) {
19542  N(e, r);
19543  function e(t) {
19544    var a = r.call(this, t) || this;
19545    return a.type = "ec-line", a;
19546  }
19547  return e.prototype.getDefaultStyle = function() {
19548    return { stroke: "#000", fill: null };
19549  }, e.prototype.getDefaultShape = function() {
19550    return new sI();
19551  }, e.prototype.buildPath = function(t, a) {
19552    Uc(a) ? dx.buildPath.call(this, t, a) : Wc.buildPath.call(this, t, a);
19553  }, e.prototype.pointAt = function(t) {
19554    return Uc(this.shape) ? dx.pointAt.call(this, t) : Wc.pointAt.call(this, t);
19555  }, e.prototype.tangentAt = function(t) {
19556    var a = this.shape, n = Uc(a) ? [a.x2 - a.x1, a.y2 - a.y1] : Wc.tangentAt.call(this, t);
19557    return mi(n, n);
19558  }, e;
19559}(mt), Yc = ["fromSymbol", "toSymbol"];
19560function gx(r) {
19561  return "_" + r + "Type";
19562}
19563function yx(r, e, t) {
19564  var a = e.getItemVisual(t, r);
19565  if (!a || a === "none") return a;
19566  var n = e.getItemVisual(t, r + "Size"), i = e.getItemVisual(t, r + "Rotate"), o = e.getItemVisual(t, r + "Offset"), s = e.getItemVisual(t, r + "KeepAspect"), l = Ho(n), u = wi(o || 0, l);
19567  return a + l + u + (i || "") + (s || "");
19568}
19569function mx(r, e, t) {
19570  var a = e.getItemVisual(t, r);
19571  if (!(!a || a === "none")) {
19572    var n = e.getItemVisual(t, r + "Size"), i = e.getItemVisual(t, r + "Rotate"), o = e.getItemVisual(t, r + "Offset"), s = e.getItemVisual(t, r + "KeepAspect"), l = Ho(n), u = wi(o || 0, l), f = qt(a, -l[0] / 2 + u[0], -l[1] / 2 + u[1], l[0], l[1], null, s);
19573    return f.__specifiedRotation = i == null || isNaN(i) ? void 0 : +i * Math.PI / 180 || 0, f.name = r, f;
19574  }
19575}
19576function R3(r) {
19577  var e = new P3({ name: "line", subPixelOptimize: true });
19578  return tg(e.shape, r), e;
19579}
19580function tg(r, e) {
19581  r.x1 = e[0][0], r.y1 = e[0][1], r.x2 = e[1][0], r.y2 = e[1][1], r.percent = 1;
19582  var t = e[2];
19583  t ? (r.cpx1 = t[0], r.cpy1 = t[1]) : (r.cpx1 = NaN, r.cpy1 = NaN);
19584}
19585var vm = function(r) {
19586  N(e, r);
19587  function e(t, a, n) {
19588    var i = r.call(this) || this;
19589    return i._createLine(t, a, n), i;
19590  }
19591  return e.prototype._createLine = function(t, a, n) {
19592    var i = t.hostModel, o = t.getItemLayout(a), s = R3(o);
19593    s.shape.percent = 0, Gt(s, { shape: { percent: 1 } }, i, a), this.add(s), D(Yc, function(l) {
19594      var u = mx(l, t, a);
19595      this.add(u), this[gx(l)] = yx(l, t, a);
19596    }, this), this._updateCommonStl(t, a, n);
19597  }, e.prototype.updateData = function(t, a, n) {
19598    var i = t.hostModel, o = this.childOfName("line"), s = t.getItemLayout(a), l = { shape: {} };
19599    tg(l.shape, s), Tt(o, l, i, a), D(Yc, function(u) {
19600      var f = yx(u, t, a), h = gx(u);
19601      if (this[h] !== f) {
19602        this.remove(this.childOfName(u));
19603        var v = mx(u, t, a);
19604        this.add(v);
19605      }
19606      this[h] = f;
19607    }, this), this._updateCommonStl(t, a, n);
19608  }, e.prototype.getLinePath = function() {
19609    return this.childAt(0);
19610  }, e.prototype._updateCommonStl = function(t, a, n) {
19611    var i = t.hostModel, o = this.childOfName("line"), s = n && n.emphasisLineStyle, l = n && n.blurLineStyle, u = n && n.selectLineStyle, f = n && n.labelStatesModels, h = n && n.emphasisDisabled, v = n && n.focus, c = n && n.blurScope;
19612    if (!n || t.hasItemOption) {
19613      var p = t.getItemModel(a), d = p.getModel("emphasis");
19614      s = d.getModel("lineStyle").getLineStyle(), l = p.getModel(["blur", "lineStyle"]).getLineStyle(), u = p.getModel(["select", "lineStyle"]).getLineStyle(), h = d.get("disabled"), v = d.get("focus"), c = d.get("blurScope"), f = se(p);
19615    }
19616    var g = t.getItemVisual(a, "style"), y = g.stroke;
19617    o.useStyle(g), o.style.fill = null, o.style.strokeNoScale = true, o.ensureState("emphasis").style = s, o.ensureState("blur").style = l, o.ensureState("select").style = u, D(Yc, function(x) {
19618      var w = this.childOfName(x);
19619      if (w) {
19620        w.setColor(y), w.style.opacity = g.opacity;
19621        for (var T = 0; T < Oe.length; T++) {
19622          var C = Oe[T], A = o.getState(C);
19623          if (A) {
19624            var M = A.style || {}, I = w.ensureState(C), L = I.style || (I.style = {});
19625            M.stroke != null && (L[w.__isEmptyBrush ? "stroke" : "fill"] = M.stroke), M.opacity != null && (L.opacity = M.opacity);
19626          }
19627        }
19628        w.markRedraw();
19629      }
19630    }, this);
19631    var m = i.getRawValue(a);
19632    de(this, f, { labelDataIndex: a, labelFetcher: { getFormattedLabel: function(x, w) {
19633      return i.getFormattedLabel(x, w, t.dataType);
19634    } }, inheritColor: y || "#000", defaultOpacity: g.opacity, defaultText: (m == null ? t.getName(a) : isFinite(m) ? Ut(m) : m) + "" });
19635    var _ = this.getTextContent();
19636    if (_) {
19637      var S = f.normal;
19638      _.__align = _.style.align, _.__verticalAlign = _.style.verticalAlign, _.__position = S.get("position") || "middle";
19639      var b = S.get("distance");
19640      V(b) || (b = [b, b]), _.__labelDistance = b;
19641    }
19642    this.setTextConfig({ position: null, local: true, inside: false }), Wt(this, v, c, h);
19643  }, e.prototype.highlight = function() {
19644    ma(this);
19645  }, e.prototype.downplay = function() {
19646    _a(this);
19647  }, e.prototype.updateLayout = function(t, a) {
19648    this.setLinePoints(t.getItemLayout(a));
19649  }, e.prototype.setLinePoints = function(t) {
19650    var a = this.childOfName("line");
19651    tg(a.shape, t), a.dirty();
19652  }, e.prototype.beforeUpdate = function() {
19653    var t = this, a = t.childOfName("fromSymbol"), n = t.childOfName("toSymbol"), i = t.getTextContent();
19654    if (!a && !n && (!i || i.ignore)) return;
19655    for (var o = 1, s = this.parent; s; ) s.scaleX && (o /= s.scaleX), s = s.parent;
19656    var l = t.childOfName("line");
19657    if (!this.__dirty && !l.__dirty) return;
19658    var u = l.shape.percent, f = l.pointAt(0), h = l.pointAt(u), v = Va([], h, f);
19659    mi(v, v);
19660    function c(A, M) {
19661      var I = A.__specifiedRotation;
19662      if (I == null) {
19663        var L = l.tangentAt(M);
19664        A.attr("rotation", (M === 1 ? -1 : 1) * Math.PI / 2 - Math.atan2(L[1], L[0]));
19665      } else A.attr("rotation", I);
19666    }
19667    if (a && (a.setPosition(f), c(a, 0), a.scaleX = a.scaleY = o * u, a.markRedraw()), n && (n.setPosition(h), c(n, 1), n.scaleX = n.scaleY = o * u, n.markRedraw()), i && !i.ignore) {
19668      i.x = i.y = 0, i.originX = i.originY = 0;
19669      var p = void 0, d = void 0, g = i.__labelDistance, y = g[0] * o, m = g[1] * o, _ = u / 2, S = l.tangentAt(_), b = [S[1], -S[0]], x = l.pointAt(_);
19670      b[1] >
19670 0 && (b[0] = -b[0], b[1] = -b[1]);
19671      var w = S[0] < 0 ? -1 : 1;
19672      if (i.__position !== "start" && i.__position !== "end") {
19673        var T = -Math.atan2(S[1], S[0]);
19674        h[0] < f[0] && (T = Math.PI + T), i.rotation = T;
19675      }
19676      var C = void 0;
19677      switch (i.__position) {
19678        case "insideStartTop":
19679        case "insideMiddleTop":
19680        case "insideEndTop":
19681        case "middle":
19682          C = -m, d = "bottom";
19683          break;
19684        case "insideStartBottom":
19685        case "insideMiddleBottom":
19686        case "insideEndBottom":
19687          C = m, d = "top";
19688          break;
19689        default:
19690          C = 0, d = "middle";
19691      }
19692      switch (i.__position) {
19693        case "end":
19694          i.x = v[0] * y + h[0], i.y = v[1] * m + h[1], p = v[0] > 0.8 ? "left" : v[0] < -0.8 ? "right" : "center", d = v[1] > 0.8 ? "top" : v[1] < -0.8 ? "bottom" : "middle";
19695          break;
19696        case "start":
19697          i.x = -v[0] * y + f[0], i.y = -v[1] * m + f[1], p = v[0] > 0.8 ? "right" : v[0] < -0.8 ? "left" : "center", d = v[1] > 0.8 ? "bottom" : v[1] < -0.8 ? "top" : "middle";
19698          break;
19699        case "insideStartTop":
19700        case "insideStart":
19701        case "insideStartBottom":
19702          i.x = y * w + f[0], i.y = f[1] + C, p = S[0] < 0 ? "right" : "left", i.originX = -y * w, i.originY = -C;
19703          break;
19704        case "insideMiddleTop":
19705        case "insideMiddle":
19706        case "insideMiddleBottom":
19707        case "middle":
19708          i.x = x[0], i.y = x[1] + C, p = "center", i.originY = -C;
19709          break;
19710        case "insideEndTop":
19711        case "insideEnd":
19712        case "insideEndBottom":
19713          i.x = -y * w + h[0], i.y = h[1] + C, p = S[0] >= 0 ? "right" : "left", i.originX = y * w, i.originY = -C;
19714          break;
19715      }
19716      i.scaleX = i.scaleY = o, i.setStyle({ verticalAlign: i.__verticalAlign || d, align: i.__align || p });
19717    }
19718  }, e;
19719}(at), cm = function() {
19720  function r(e) {
19721    this.group = new at(), this._LineCtor = e || vm;
19722  }
19723  return r.prototype.updateData = function(e) {
19724    var t = this;
19725    this._progressiveEls = null;
19726    var a = this, n = a.group, i = a._lineData;
19727    a._lineData = e, i || n.removeAll();
19728    var o = _x(e);
19729    e.diff(i).add(function(s) {
19730      t._doAdd(e, s, o);
19731    }).update(function(s, l) {
19732      t._doUpdate(i, e, l, s, o);
19733    }).remove(function(s) {
19734      n.remove(i.getItemGraphicEl(s));
19735    }).execute();
19736  }, r.prototype.updateLayout = function() {
19737    var e = this._lineData;
19738    e && e.eachItemGraphicEl(function(t, a) {
19739      t.updateLayout(e, a);
19740    }, this);
19741  }, r.prototype.incrementalPrepareUpdate = function(e) {
19742    this._seriesScope = _x(e), this._lineData = null, this.group.removeAll();
19743  }, r.prototype.incrementalUpdate = function(e, t) {
19744    this._progressiveEls = [];
19745    function a(s) {
19746      !s.isGroup && !E3(s) && (s.incremental = true, s.ensureState("emphasis").hoverLayer = true);
19747    }
19748    for (var n = e.start; n < e.end; n++) {
19749      var i = t.getItemLayout(n);
19750      if ($c(i)) {
19751        var o = new this._LineCtor(t, n, this._seriesScope);
19752        o.traverse(a), this.group.add(o), t.setItemGraphicEl(n, o), this._progressiveEls.push(o);
19753      }
19754    }
19755  }, r.prototype.remove = function() {
19756    this.group.removeAll();
19757  }, r.prototype.eachRendered = function(e) {
19758    un(this._progressiveEls || this.group, e);
19759  }, r.prototype._doAdd = function(e, t, a) {
19760    var n = e.getItemLayout(t);
19761    if ($c(n)) {
19762      var i = new this._LineCtor(e, t, a);
19763      e.setItemGraphicEl(t, i), this.group.add(i);
19764    }
19765  }, r.prototype._doUpdate = function(e, t, a, n, i) {
19766    var o = e.getItemGraphicEl(a);
19767    if (!$c(t.getItemLayout(n))) {
19768      this.group.remove(o);
19769      return;
19770    }
19771    o ? o.updateData(t, n, i) : o = new this._LineCtor(t, n, i), t.setItemGraphicEl(n, o), this.group.add(o);
19772  }, r;
19773}();
19774function E3(r) {
19775  return r.animators && r.animators.length > 0;
19776}
19777function _x(r) {
19778  var e = r.hostModel, t = e.getModel("emphasis");
19779  return { lineStyle: e.getModel("lineStyle").getLineStyle(), emphasisLineStyle: t.getModel(["lineStyle"]).getLineStyle(), blurLineStyle: e.getModel(["blur", "lineStyle"]).getLineStyle(), selectLineStyle: e.getModel(["select", "lineStyle"]).getLineStyle(), emphasisDisabled: t.get("disabled"), blurScope: t.get("blurScope"), focus: t.get("focus"), labelStatesModels: se(e) };
19780}
19781function Sx(r) {
19782  return isNaN(r[0]) || isNaN(r[1]);
19783}
19784function $c(r) {
19785  return r && !Sx(r[0]) && !Sx(r[1]);
19786}
19787var Xc = [], Zc = [], qc = [], Ui = fe, Kc = $a, xx = Math.abs;
19788function bx(r, e, t) {
19789  for (var a = r[0], n = r[1], i = r[2], o = 1 / 0, s, l = t * t, u = 0.1, f = 0.1; f <= 0.9; f += 0.1) {
19790    Xc[0] = Ui(a[0], n[0], i[0], f), Xc[1] = Ui(a[1], n[1], i[1], f);
19791    var h = xx(Kc(Xc, e) - l);
19792    h < o && (o = h, s = f);
19793  }
19794  for (var v = 0; v < 32; v++) {
19795    var c = s + u;
19796    Zc[0] = Ui(a[0], n[0], i[0], s), Zc[1] = Ui(a[1], n[1], i[1], s), qc[0] = Ui(a[0], n[0], i[0], c), qc[1] = Ui(a[1], n[1], i[1], c);
19797    var h = Kc(Zc, e) - l;
19798    if (xx(h) < 0.01) break;
19799    var p = Kc(qc, e) - l;
19800    u /= 2, h < 0 ? p >= 0 ? s = s + u : s = s - u : p >= 0 ? s = s - u : s = s + u;
19801  }
19802  return s;
19803}
19804function jc(r, e) {
19805  var t = [], a = el, n = [[], [], []], i = [[], []], o = [];
19806  e /= 2, r.eachEdge(function(s, l) {
19807    var u = s.getLayout(), f = s.getVisual("fromSymbol"), h = s.getVisual("toSymbol");
19808    u.__original || (u.__original = [Zr(u[0]), Zr(u[1])], u[2] && u.__original.push(Zr(u[2])));
19809    var v = u.__original;
19810    if (u[2] != null) {
19811      if (_e(n[0], v[0]), _e(n[1], v[2]), _e(n[2], v[1]), f && f !== "none") {
19812        var c = Es(s.node1), p = bx(n, v[0], c * e);
19813        a(n[0][0], n[1][0], n[2][0], p, t), n[0][0] = t[3], n[1][0] = t[4], a(n[0][1], n[1][1], n[2][1], p, t), n[0][1] = t[3], n[1][1] = t[4];
19814      }
19815      if (h && h !== "none") {
19816        var c = Es(s.node2), p = bx(n, v[1], c * e);
19817        a(n[0][0], n[1][0], n[2][0], p, t), n[1][0] = t[1], n[2][0] = t[2], a(n[0][1], n[1][1], n[2][1], p, t), n[1][1] = t[1], n[2][1] = t[2];
19818      }
19819      _e(u[0], n[0]), _e(u[1], n[2]), _e(u[2], n[1]);
19820    } else {
19821      if (_e(i[0], v[0]), _e(i[1], v[1]), Va(o, i[1], i[0]), mi(o, o), f && f !== "none") {
19822        var c = Es(s.node1);
19823        xf(i[0], i[0], o, c * e);
19824      }
19825      if (h && h !== "none") {
19826        var c = Es(s.node2);
19827        xf(i[1], i[1], o, -c * e);
19828      }
19829      _e(u[0], i[0]), _e(u[1], i[1]);
19830    }
19831  });
19832}
19833function Tx(r) {
19834  return r.type === "view";
19835}
19836var k3 = function(r) {
19837  N(e, r);
19838  function e() {
19839    var t = r !== null && r.apply(this, arguments) || this;
19840    return t.type = e.type, t;
19841  }
19842  return e.prototype.init = function(t, a) {
19843    var n = new Ul(), i = new cm(), o = this.group;
19844    this._controller = new ql(a.getZr()), this._controllerHost = { target: o }, o.add(n.group), o.add(i.group), this._symbolDraw = n, this._lineDraw = i, this._firstRen
19844der = true;
19845  }, e.prototype.render = function(t, a, n) {
19846    var i = this, o = t.coordinateSystem;
19847    this._model = t;
19848    var s = this._symbolDraw, l = this._lineDraw, u = this.group;
19849    if (Tx(o)) {
19850      var f = { x: o.x, y: o.y, scaleX: o.scaleX, scaleY: o.scaleY };
19851      this._firstRender ? u.attr(f) : Tt(u, f, t);
19852    }
19853    jc(t.getGraph(), Rs(t));
19854    var h = t.getData();
19855    s.updateData(h);
19856    var v = t.getEdgeData();
19857    l.updateData(v), this._updateNodeAndLinkScale(), this._updateController(t, a, n), clearTimeout(this._layoutTimeout);
19858    var c = t.forceLayout, p = t.get(["force", "layoutAnimation"]);
19859    c && this._startForceLayoutIteration(c, p);
19860    var d = t.get("layout");
19861    h.graph.eachNode(function(_) {
19862      var S = _.dataIndex, b = _.getGraphicEl(), x = _.getModel();
19863      if (b) {
19864        b.off("drag").off("dragend");
19865        var w = x.get("draggable");
19866        w && b.on("drag", function(C) {
19867          switch (d) {
19868            case "force":
19869              c.warmUp(), !i._layouting && i._startForceLayoutIteration(c, p), c.setFixed(S), h.setItemLayout(S, [b.x, b.y]);
19870              break;
19871            case "circular":
19872              h.setItemLayout(S, [b.x, b.y]), _.setLayout({ fixed: true }, true), hm(t, "symbolSize", _, [C.offsetX, C.offsetY]), i.updateLayout(t);
19873              break;
19874            case "none":
19875            default:
19876              h.setItemLayout(S, [b.x, b.y]), fm(t.getGraph(), t), i.updateLayout(t);
19877              break;
19878          }
19879        }).on("dragend", function() {
19880          c && c.setUnfixed(S);
19881        }), b.setDraggable(w, !!x.get("cursor"));
19882        var T = x.get(["emphasis", "focus"]);
19883        T === "adjacency" && (it(b).focus = _.getAdjacentDataIndices());
19884      }
19885    }), h.graph.eachEdge(function(_) {
19886      var S = _.getGraphicEl(), b = _.getModel().get(["emphasis", "focus"]);
19887      S && b === "adjacency" && (it(S).focus = { edge: [_.dataIndex], node: [_.node1.dataIndex, _.node2.dataIndex] });
19888    });
19889    var g = t.get("layout") === "circular" && t.get(["circular", "rotateLabel"]), y = h.getLayout("cx"), m = h.getLayout("cy");
19890    h.graph.eachNode(function(_) {
19891      oI(_, g, y, m);
19892    }), this._firstRender = false;
19893  }, e.prototype.dispose = function() {
19894    this.remove(), this._controller && this._controller.dispose(), this._controllerHost = null;
19895  }, e.prototype._startForceLayoutIteration = function(t, a) {
19896    var n = this;
19897    (function i() {
19898      t.step(function(o) {
19899        n.updateLayout(n._model), (n._layouting = !o) && (a ? n._layoutTimeout = setTimeout(i, 16) : i());
19900      });
19901    })();
19902  }, e.prototype._updateController = function(t, a, n) {
19903    var i = this, o = this._controller, s = this._controllerHost, l = this.group;
19904    if (o.setPointerChecker(function(u, f, h) {
19905      var v = l.getBoundingRect();
19906      return v.applyTransform(l.transform), v.contain(f, h) && !ev(u, n, t);
19907    }), !Tx(t.coordinateSystem)) {
19908      o.disable();
19909      return;
19910    }
19911    o.enable(t.get("roam")), s.zoomLimit = t.get("scaleLimit"), s.zoom = t.coordinateSystem.getZoom(), o.off("pan").off("zoom").on("pan", function(u) {
19912      em(s, u.dx, u.dy), n.dispatchAction({ seriesId: t.id, type: "graphRoam", dx: u.dx, dy: u.dy });
19913    }).on("zoom", function(u) {
19914      rm(s, u.scale, u.originX, u.originY), n.dispatchAction({ seriesId: t.id, type: "graphRoam", zoom: u.scale, originX: u.originX, originY: u.originY }), i._updateNodeAndLinkScale(), jc(t.getGraph(), Rs(t)), i._lineDraw.updateLayout(), n.updateLabelLayout();
19915    });
19916  }, e.prototype._updateNodeAndLinkScale = function() {
19917    var t = this._model, a = t.getData(), n = Rs(t);
19918    a.eachItemGraphicEl(function(i, o) {
19919      i && i.setSymbolScale(n);
19920    });
19921  }, e.prototype.updateLayout = function(t) {
19922    jc(t.getGraph(), Rs(t)), this._symbolDraw.updateLayout(), this._lineDraw.updateLayout();
19923  }, e.prototype.remove = function() {
19924    clearTimeout(this._layoutTimeout), this._layouting = false, this._layoutTimeout = null, this._symbolDraw && this._symbolDraw.remove(), this._lineDraw && this._lineDraw.remove();
19925  }, e.type = "graph", e;
19926}(Pt);
19927function Yi(r) {
19928  return "_EC_" + r;
19929}
19930var O3 = function() {
19931  function r(e) {
19932    this.type = "graph", this.nodes = [], this.edges = [], this._nodesMap = {}, this._edgesMap = {}, this._directed = e || false;
19933  }
19934  return r.prototype.isDirected = function() {
19935    return this._directed;
19936  }, r.prototype.addNode = function(e, t) {
19937    e = e == null ? "" + t : "" + e;
19938    var a = this._nodesMap;
19939    if (!a[Yi(e)]) {
19940      var n = new Fn(e, t);
19941      return n.hostGraph = this, this.nodes.push(n), a[Yi(e)] = n, n;
19942    }
19943  }, r.prototype.getNodeByIndex = function(e) {
19944    var t = this.data.getRawIndex(e);
19945    return this.nodes[t];
19946  }, r.prototype.getNodeById = function(e) {
19947    return this._nodesMap[Yi(e)];
19948  }, r.prototype.addEdge = function(e, t, a) {
19949    var n = this._nodesMap, i = this._edgesMap;
19950    if (wt(e) && (e = this.nodes[e]), wt(t) && (t = this.nodes[t]), e instanceof Fn || (e = n[Yi(e)]), t instanceof Fn || (t = n[Yi(t)]), !(!e || !t)) {
19951      var o = e.id + "-" + t.id, s = new lI(e, t, a);
19952      return s.hostGraph = this, this._directed && (e.outEdges.push(s), t.inEdges.push(s)), e.edges.push(s), e !== t && t.edges.push(s), this.edges.push(s), i[o] = s, s;
19953    }
19954  }, r.prototype.getEdgeByIndex = function(e) {
19955    var t = this.edgeData.getRawIndex(e);
19956    return this.edges[t];
19957  }, r.prototype.getEdge = function(e, t) {
19958    e instanceof Fn && (e = e.id), t instanceof Fn && (t = t.id);
19959    var a = this._edgesMap;
19960    return this._directed ? a[e + "-" + t] : a[e + "-" + t] || a[t + "-" + e];
19961  }, r.prototype.eachNode = function(e, t) {
19962    for (var a = this.nodes, n = a.length, i = 0; i < n; i++) a[i].dataIndex >= 0 && e.call(t, a[i], i);
19963  }, r.prototype.eachEdge = function(e, t) {
19964    for (var a = this.edges, n = a.length, i = 0; i < n; i++) a[i].dataIndex >= 0 && a[i].node1.dataIndex >= 0 && a[i].node2.dataIndex >= 0 && e.call(t, a[i], i);
19965  }, r.prototype.breadthFirstTraverse = function(e, t, a, n) {
19966    if (t instanceof Fn || (t = this._nodesMap[Yi(t)]), !!t) {
19967      for (var i = a === "out" ? "outEdges" : a === "in" ? "inEdges" : "edges", o = 0; o < this.nodes.length; o++) this.nodes[o].__visited = false;
19968      if (!e.call(n, t, null)) for (var s = [t]; s.length; ) for (var l = s.shift(), u = l[i], o = 0; o < u.length; o++) {
19969        var f = u[o], h = f.node1 === l ? f.node2 : f.node1;
19970        if (!h.__visited) {
19971          if (e.call(n, h, l)) return;
19972          s.push(h), h.__visited = true;
19973        }
19974      }
19975    }
19976  }, r.prototype.update = function() {
19977    for (var e = this.data, t = this.edgeData, a = this.nodes, n = this.edges, i = 0, o = a.length; i < o; i++) a[i].dataIndex = -1;
19978    for (var i = 0, o = e.count(); i < o; i++) a[e.getRawIndex(i)].dataIndex = i;
19979    t.filterSelf(function(s) {
19980      var l = n[t.getRawIndex(s)];
19981      return l.node1.dataIndex >= 0 && l.node2.dataIndex >= 0;
19982    });
19983    for (var i = 0, o = n.length; i < o; i++) n[i].dataIndex = -1;
19984    for (var i = 0, o = t.count(); i < o; i++) n[t.getRawIndex(i)].dataIndex = i;
19985  }, r.prototype.clone = function() {
19986    for (var e = new r(this._directed), t = this.nodes, a = this.edges, n = 0; n < t.length; n++) e.addNode(t[n].id, t[n].dataIndex);
19987    for (var n = 0; n < a.length; n++) {
19988      var i = a[n];
19989      e.addEdge(i.node1.id, i.node2.id, i.dataIndex);
19990    }
19991    return e;
19992  }, r;
19993}(), Fn = function() {
19994  function r(e, t) {
19995    this.inEdges = [], this.outEdges = [], this.edges = [], this.dataIndex = -1, this.id = e ?? "", this.dataIndex = t ?? -1;
19996  }
19997  return r.prototype.degree = function() {
19998    return this.edges.length;
19999  }, r.prototype.inDegree = function() {
20000    return this.inEdges.length;
20001  }, r.prototype.outDegree = function() {
20002    return this.outEdges.length;
20003  }, r.prototype.getModel = function(e) {
20004    if (!(this.dataIndex < 0)) {
20005      var t = this.hostGraph, a = t.data.getItemModel(this.dataIndex);
20006      return a.getModel(e);
20007    }
20008  }, r.prototype.getAdjacentDataIndices = function() {
20009    for (var e = { edge: [], node: [] }, t = 0; t < this.edges.length; t++) {
20010      var a = this.edges[t];
20011      a.dataIndex < 0 || (e.edge.push(a.dataIndex), e.node.push(a.node1.dataIndex, a.node2.dataIndex));
20012    }
20013    return e;
20014  }, r.prototype.getTrajectoryDataIndices = function() {
20015    for (var e = Z(), t = Z(), a = 0; a < this.edges.length; a++) {
20016      var n = this.edges[a];
20017      if (!(n.dataIndex < 0)) {
20018        e.set(n.dataIndex, true);
20019        for (var i = [n.node1], o = [n.node2], s = 0; s < i.length; ) {
20020          var l = i[s];
20021          s++, t.set(l.dataIndex, true);
20022          for (var u = 0; u < l.inEdges.length; u++) e.set(l.inEdges[u].dataIndex, true), i.push(l.inEdges[u].node1);
20023        }
20024        for (s = 0; s < o.length; ) {
20025          var f = o[s];
20026          s++, t.set(f.dataIndex, true);
20027          for (var u = 0; u < f.outEdges.length; u++) e.set(f.outEdges[u].dataIndex, true), o.push(f.outEdges[u].node2);
20028        }
20029      }
20030    }
20031    return { edge: e.keys(), node: t.keys() };
20032  }, r;
20033}(), lI = function() {
20034  function r(e, t, a) {
20035    this.dataIndex = -1, this.node1 = e, this.node2 = t, this.dataIndex = a ?? -1;
20036  }
20037  return r.prototype.getModel = function(e) {
20038    if (!(this.dataIndex < 0)) {
20039      var t = this.hostGraph, a = t.edgeData.getItemModel(this.dataIndex);
20040      return a.getModel(e);
20041    }
20042  }, r.prototype.getAdjacentDataIndices = function() {
20043    return { edge: [this.dataIndex], node: [this.node1.dataIndex, this.node2.dataIndex] };
20044  }, r.prototype.getTrajectoryDataIndices = function() {
20045    var e = Z(), t = Z();
20046    e.set(this.dataIndex, true);
20047    for (var a = [this.node1], n = [this.node2], i = 0; i < a.length; ) {
20048      var o = a[i];
20049      i++, t.set(o.dataIndex, true);
20050      for (var s = 0; s < o.inEdges.length; s++) e.set(o.inEdges[s].dataIndex, true), a.push(o.inEdges[s].node1);
20051    }
20052    for (i = 0; i < n.length; ) {
20053      var l = n[i];
20054      i++, t.set(l.dataIndex, true);
20055      for (var s = 0; s < l.outEdges.length; s++) e.set(l.outEdges[s].dataIndex, true), n.push(l.outEdges[s].node2);
20056    }
20057    return { edge: e.keys(), node: t.keys() };
20058  }, r;
20059}();
20060function uI(r, e) {
20061  return { getValue: function(t) {
20062    var a = this[r][e];
20063    return a.getStore().get(a.getDimensionIndex(t || "value"), this.dataIndex);
20064  }, setVisual: function(t, a) {
20065    this.dataIndex >= 0 && this[r][e].setItemVisual(this.dataIndex, t, a);
20066  }, getVisual: function(t) {
20067    return this[r][e].getItemVisual(this.dataIndex, t);
20068  }, setLayout: function(t, a) {
20069    this.dataIndex >= 0 && this[r][e].setItemLayout(this.dataIndex, t, a);
20070  }, getLayout: function() {
20071    return this[r][e].getItemLayout(this.dataIndex);
20072  }, getGraphicEl: function() {
20073    return this[r][e].getItemGraphicEl(this.dataIndex);
20074  }, getRawIndex: function() {
20075    return this[r][e].getRawIndex(this.dataIndex);
20076  } };
20077}
20078Xt(Fn, uI("hostGraph", "data"));
20079Xt(lI, uI("hostGraph", "edgeData"));
20080function fI(r, e, t, a, n) {
20081  for (var i = new O3(a), o = 0; o < r.length; o++) i.addNode(ne(r[o].id, r[o].name, o), o);
20082  for (var s = [], l = [], u = 0, o = 0; o < e.length; o++) {
20083    var f = e[o], h = f.source, v = f.target;
20084    i.addEdge(h, v, u) && (l.push(f), s.push(ne(te(f.id, null), h + " > " + v)), u++);
20085  }
20086  var c = t.get("coordinateSystem"), p;
20087  if (c === "cartesian2d" || c === "polar") p = aa(r, t);
20088  else {
20089    var d = Vo.get(c), g = d ? d.dimensions || [] : [];
20090    vt(g, "value") < 0 && g.concat(["value"]);
20091    var y = Wo(r, { coordDimensions: g, encodeDefine: t.getEncode() }).dimensions;
20092    p = new be(y, t), p.initData(r);
20093  }
20094  var m = new be(["value"], t);
20095  return m.initData(l, s), n && n(p, m), YM({ mainData: p, struct: i, structAttr: "graph", datas: { node: p, edge: m }, datasAttr: { node: "data", edge: "edgeData" } }), i.update(), i;
20096}
20097var N3 = function(r) {
20098  N(e, r);
20099  function e() {
20100    var t = r !== null && r.apply(this, arguments) || this;
20101    return t.type = e.type, t.hasSymbolVisual = true, t;
20102  }
20103  return e.prototype.init = function(t) {
20104    r.prototype.init.apply(this, arguments);
20105    var a = this;
20106    function n() {
20107      return a._categoriesData;
20108    }
20109    this.legendVisualProvider = new Zl(n, n), this.fillDataTextStyle(t.edges || t.links), this._updateCategoriesData();
20110  }, e.prototype.mergeOption = function(t) {
20111    r.prototype.mergeOption.apply(this, arguments), this.fillDataTextStyle(t.edges || t.links), this._updateCategoriesData();
20112  }, e.prototype.mergeDefaultAndTheme = function(t) {
20113    r.prototype.mergeDefaultAndTheme.apply(this, arguments), fi(t, "edgeLabel", ["show"]);
20114  }, e.prototype.getInitialData = function(t, a) {
20115    var n = t.edges || t.links || [], i = t.data || t.nodes || [], o = this;
20116    if (i && n) {
20117      b3(this);
20118      var s = fI(i, n, this, true, l);
20119      return D(s.edges, function(u) {
20120        w3(u.node1, u.node2, this, u.dataIndex);
20121      }, this), s.data;
20122    }
20123    function l(u, f) {
20124      u.wrapMethod("getItemModel", function(p) {
20125        var d = o._categoriesModels, g = p.getShallow("category"), y = d[g];
20126        return y && (y.parentModel = p.parentModel, p.parentModel = y), p;
20127      });
20128      var h = At.prototype.getModel;
20129      function v(p, d) {
20130        var g = h.call(this, p, d);
20131        return g.resolveParentPath = c, g;
20132      }
20133      f.wrapMethod("getItemModel", function(p) {
20134        return p.resolveParentPath = c, p.getModel = v, p;
20135      });
20136      function c(p) {
20137        if (p && (p[0] === "label" || p[1] === "label")) {
20138          var d = p.slice();
20139          return p[0] === "label" ? d[0] = "edgeLabel" : p[1] === "label" && (d[1] = "edgeLabel"), d;
20140        }
20141        return p;
20142      }
20143    }
20144  }, e.prototype.getGraph = function() {
20145    return this.getData().graph;
20146  }, e.prototype.getEdgeData = function() {
20147    return this.getGraph().edgeData;
20148  }, e.prototype.getCategoriesData = function() {
20149    return this._categoriesData;
20150  }, e.prototype.formatTooltip = function(t, a, n) {
20151    if (n === "edge") {
20152      var i = this.getData(), o = this.getDataParams(t, n), s = i.graph.getEdgeByIndex(t), l = i.getName(s.node1.dataIndex), u = i.getName(s.node2.dataIndex), f = [];
20153      return l != null && f.push(l), u != null && f.push(u), le("nameValue", { name: f.join(" > "), value: o.value, noValue: o.value == null });
20154    }
20155    var h = PA({ series: this, dataIndex: t, multipleSeries: a });
20156    return h;
20157  }, e.prototype._updateCategoriesData = function() {
20158    var t = G(this.option.categories || [], function(n) {
20159      return n.value != null ? n : z({ value: 0 }, n);
20160    }), a = new be(["value"], this);
20161    a.initData(t), this._categoriesData = a, this._categoriesModels = a.mapArray(function(n) {
20162      return a.getItemModel(n);
20163    });
20164  }, e.prototype.setZoom = function(t) {
20165    this.option.zoom = t;
20166  }, e.prototype.setCenter = function(t) {
20167    this.option.center = t;
20168  }, e.prototype.isAnimationEnabled = function() {
20169    return r.prototype.isAnimationEnabled.call(this) && !(this.get("layout") === "force" && this.get(["force", "layoutAnimation"]));
20170  }, e.type = "series.graph", e.dependencies = ["grid", "polar", "geo", "singleAxis", "calendar"], e.defaultOption = { z: 2, coordinateSystem: "view", legendHoverLink: true, layout: null, circular: { rotateLabel: false }, force: { initLayout: null, repulsion: [0, 50], gravity: 0.1, friction: 0.6, edgeLength: 30, layoutAnimation: true }, left: "center", top: "center", symbol: "circle", symbolSize: 10, edgeSymbol: ["none", "none"], edgeSymbolSize: 10, edgeLabel: { position: "middle", distance: 5 }, draggable: false, roam: false, center: null, zoom: 1, nodeScaleRatio: 0.6, label: { show: false, formatter: "{b}" }, itemStyle: {}, lineStyle: { color: "#aaa", width: 1, opacity: 0.5 }, emphasis: { scale: true, label: { show: true } }, select: { itemStyle: { borderColor: "#212121" } } }, e;
20171}(Et), B3 = { type: "graphRoam", event: "graphRoam", update: "none" };
20172function z3(r) {
20173  r.registerChartView(k3), r.registerSeriesModel(N3), r.registerProcessor(y3), r.registerVisual(m3), r.registerVisual(_3), r.registerLayout(T3), r.registerLayout(r.PRIORITY.VISUAL.POST_CHART_LAYOUT, A3), r.registerLayout(M3), r.registerCoordinateSystem("graphView", { dimensions: Kl.dimensions, create: L3 }), r.registerAction({ type: "focusNodeAdjacency", event: "focusNodeAdjacency", update: "series:focusNodeAdjacency" }, $t), r.registerAction({ type: "unfocusNodeAdjacency", event: "unfocusNodeAdjacency", update: "series:unfocusNodeAdjacency" }, $t), r.registerAction(B3, function(e, t, a) {
20174    t.eachComponent({ mainType: "series", query: e }, function(n) {
20175      var i = n.coordinateSystem, o = nm(i, e, void 0, a);
20176      n.setCenter && n.setCenter(o.center), n.setZoom && n.setZoom(o.zoom);
20177    });
20178  });
20179}
20180var V3 = /* @__PURE__ */ function() {
20181  function r() {
20182    this.angle = 0, this.width = 10, this.r = 10, this.x = 0, this.y = 0;
20183  }
20184  return r;
20185}(), G3 = function(r) {
20186  N(e, r);
20187  function e(t) {
20188    var a = r.call(this, t) || this;
20189    return a.type = "pointer", a;
20190  }
20191  return e.prototype.getDefaultShape = function() {
20192    return new V3();
20193  }, e.prototype.buildPath = function(t, a) {
20194    var n = Math.cos, i = Math.sin, o = a.r, s = a.width, l = a.angle, u = a.x - n(l) * s * (s >= o / 3 ? 1 : 2), f = a.y - i(l) * s * (s >= o / 3 ? 1 : 2);
20195    l = a.angle - Math.PI / 2, t.moveTo(u, f), t.lineTo(a.x + n(l) * s, a.y + i(l) * s), t.lineTo(a.x + n(a.angle) * o, a.y + i(a.angle) * o), t.lineTo(a.x - n(l) * s, a.y - i(l) * s), t.lineTo(u, f);
20196  }, e;
20197}(mt);
20198function F3(r, e) {
20199  var t = r.get("center"), a = e.getWidth(), n = e.getHeight(), i = Math.min(a, n), o = W(t[0], e.getWidth()), s = W(t[1], e.getHeight()), l = W(r.get("radius"), i / 2);
20200  return { cx: o, cy: s, r: l };
20201}
20202function Hu(r, e) {
20203  var t = r == null ? "" : r + "";
20204  return e && (Y(e) ? t = e.replace("{value}", t) : j(e) && (t = e(r))), t;
20205}
20206var H3 = function(r) {
20207  N(e, r);
20208  function e() {
20209    var t = r !== null && r.apply(this, arguments) || this;
20210    return t.type = e.type, t;
20211  }
20212  return e.prototype.render = function(t, a, n) {
20213    this.group.removeAll();
20214    var i = t.get(["axisLine", "lineStyle", "color"]), o = F3(t, n);
20215    this._renderMain(t, a, n, i, o), this._data = t.getData();
20216  }, e.prototype.dispose = function() {
20217  }, e.prototype._renderMain = function(t, a, n, i, o) {
20218    var s = this.group, l = t.get("clockwise"), u = -t.get("startAngle") / 180 * Math.PI, f = -t.get("endAngle") / 180 * Math.PI, h = t.getModel("axisLine"), v = h.get("roundCap"), c = v ? Qf : Te, p = h.get("show"), d = h.getModel("lineStyle"), g = d.get("width"), y = [u, f];
20219    qg(y, !l), u = y[0], f = y[1];
20220    for (var m = f - u, _ = u, S = [], b = 0; p && b < i.length; b++) {
20221      var x = Math.min(Math.max(i[b][0], 0), 1);
20222      f = u + m * x;
20223      var w = new c({ shape: { startAngle: _, endAngle: f, cx: o.cx, cy: o.cy, clockwise: l, r0: o.r - g, r: o.r }, silent: true });
20224      w.setStyle({ fill: i[b][1] }), w.setStyle(d.getLineStyle(["color", "width"])), S.push(w), _ = f;
20225    }
20226    S.reverse(), D(S, function(C) {
20227      return s.add(C);
20228    });
20229    var T = function(C) {
20230      if (C <= 0) return i[0][1];
20231      var A;
20232      for (A = 0; A < i.length; A++) if (i[A][0] >= C && (A === 0 ? 0 : i[A - 1][0]) < C) return i[A][1];
20233      return i[A - 1][1];
20234    };
20235    this._renderTicks(t, a, n, T, o, u, f, l, g), this._renderTitleAndDetail(t, a, n, T, o), this._renderAnchor(t, o), this._renderPointer(t, a, n, T, o, u, f, l, g);
20236  }, e.prototype._renderTicks = function(t, a, n, i, o, s, l, u, f) {
20237    for (var h = this.group, v = o.cx, c = o.cy, p = o.r, d = +t.get("min"), g = +t.get("max"), y = t.getModel("splitLine"), m = t.getModel("axisTick"), _ = t.getModel("axisLabel"), S = t.get("splitNumber"), b = m.get("splitNumber"), x = W(y.get("length"), p), w = W(m.get("length"), p), T = s, C = (l - s) / S, A = C / b, M = y.getModel("lineStyle").getLineStyle(), I = m.getModel("lineStyle").getLineStyle(), L = y.get("distance"), P, R, E = 0; E <= S; E++) {
20238      if (P = Math.cos(T), R = Math.sin(T), y.get("show")) {
20239        var O = L ? L + f : f, k = new ee({ shape: { x1: P * (p - O) + v, y1: R * (p - O) + c, x2: P * (p - x - O) + v, y2: R * (p - x - O) + c }, style: M, silent: true });
20240        M.stroke === "auto" && k.setStyle({ stroke: i(E / S) }), h.add(k);
20241      }
20242      if (_.get("show")) {
20243        var O = _.get("distance") + L, B = Hu(Ut(E / S * (g - d) + d), _.get("formatter")), F = i(E / S), H = P * (p - x - O) + v, U = R * (p - x - O) + c, K = _.get("rotate"), J = 0;
20244        K === "radial" ? (J = -T + 2 * Math.PI, J > Math.PI / 2 && (J += Math.PI)) : K === "tangential" ? J = -T - Math.PI / 2 : wt(K) && (J = K * Math.PI / 180), J === 0 ? h.add(new St({ style: Nt(_, { text: B, x: H, y: U, verticalAlign: R < -0.8 ? "top" : R > 0.8 ? "bottom" : "middle", align: P < -0.4 ? "left" : P > 0.4 ? "right" : "center" }, { inheritColor: F }), silent: true })) : h.add(new St({ style: Nt(_, { text: B, x: H, y: U, verticalAlign: "middle", align: "center" }, { inheritColor: F }), silent: true, originX: H, originY: U, rotation: J }));
20245      }
20246      if (m.get("show") && E !== S) {
20247        var O = m.get("distance");
20248        O = O ? O + f : f;
20249        for (var nt = 0; nt <= b; nt++) {
20250          P = Math.cos(T), R = Math.sin(T);
20251          var It = new ee({ shape: { x1: P * (p - O) + v, y1: R * (p - O) + c, x2: P * (p - w - O) + v, y2: R * (p - w - O) + c }, silent: true, style: I });
20252          I.stroke === "auto" && It.setStyle({ stroke: i((E + nt / b) / S) }), h.add(It), T += A;
20253        }
20254        T -= A;
20255      } else T += C;
20256    }
20257  }, e.prototype._renderPointer = function(t, a, n, i, o, s, l, u, f) {
20258    var h = this.group, v = this._data, c = this._progressEls, p = [], d = t.get(["pointer", "show"]), g = t.getModel("progress"), y = g.get("show"), m = t.getData(), _ = m.mapDimension("value"), S = +t.get("min"), b = +t.get("max"), x = [S, b], w = [s, l];
20259    function T(A, M) {
20260      var I = m.getItemModel(A), L = I.getModel("pointer"), P = W(L.get("width"), o.r), R = W(L.get("length"), o.r), E = t.get(["pointer", "icon"]), O = L.get("offsetCenter"), k = W(O[0], o.r), B = W(O[1], o.r), F = L.get("keepAspect"), H;
20261      return E ? H = qt(E, k - P / 2, B - R, P, R, null, F) : H = new G3({ shape: { angle: -Math.PI / 2, width: P, r: R, x: k, y: B } }), H.rotation = -(M + Math.PI / 2), H.x = o.cx, H.y = o.cy, H;
20262    }
20263    function C(A, M) {
20264      var I = g.get("roundCap"), L = I ? Qf : Te, P = g.get("overlap"), R = P ? g.get("width") : f / m.count(), E = P ? o.r - R : o.r - (A + 1) * R, O = P ? o.r : o.r - A * R, k = new L({ shape: { startAngle: s, endAngle: M, cx: o.cx, cy: o.cy, clockwise: u, r0: E, r: O } });
20265      return P && (k.z2 = Dt(m.get(_, A), [S, b], [100, 0], true)), k;
20266    }
20267    (y || d) && (m.diff(v).add(function(A) {
20268      var M = m.get(_, A);
20269      if (d) {
20270        var I = T(A, s);
20271        Gt(I, { rotation: -((isNaN(+M) ? w[0] : Dt(M, x, w, true)) + Math.PI / 2) }, t), h.add(I), m.setItemGraphicEl(A, I);
20272      }
20273      if (y) {
20274        var L = C(A, s), P = g.get("clip");
20275        Gt(L, { shape: { endAngle: Dt(M, x, w, P) } }, t), h.add(L), fd(t.seriesIndex, m.dataType, A, L), p[A] = L;
20276      }
20277    }).update(function(A, M) {
20278      var I = m.get(_, A);
20279      if (d) {
20280        var L = v.getItemGraphicEl(M), P = L ? L.rotation : s, R = T(A, P);
20281        R.rotation = P, Tt(R, { rotation: -((isNaN(+I) ? w[0] : Dt(I, x, w, true)) + Math.PI / 2) }, t), h.add(R), m.setItemGraphicEl(A, R);
20282      }
20283      if (y) {
20284        var E = c[M], O = E ? E.shape.endAngle : s, k = C(A, O), B = g.get("clip");
20285        Tt(k, { shape: { endAngle: Dt(I, x, w, B) } }, t), h.add(k), fd(t.seriesIndex, m.dataType, A, k), p[A] = k;
20286      }
20287    }).execute(), m.each(function(A) {
20288      var M = m.getItemModel(A), I = M.getModel("emphasis"), L = I.get("focus"), P = I.get("blurScope"), R = I.get("disabled");
20289      if (d) {
20290        var E = m.getItemGraphicEl(A), O = m.getItemVisual(A, "style"), k = O.fill;
20291        if (E instanceof ue) {
20292          var B = E.style;
20293          E.useStyle(z({ image: B.image, x: B.x, y: B.y, width: B.width, height: B.height }, O));
20294        } else E.useStyle(O), E.type !== "pointer" && E.setColor(k);
20295        E.setStyle(M.getModel(["pointer", "itemStyle"]).getItemStyle()), E.style.fill === "auto" && E.setStyle("fill", i(Dt(m.get(_, A), x, [0, 1], true))), E.z2EmphasisLift = 0, pe(E, M), Wt(E, L, P, R);
20296      }
20297      if (y) {
20298        var F = p[A];
20299        F.useStyle(m.getItemVisual(A, "style")), F.setStyle(M.getModel(["progress", "itemStyle"]).getItemStyle()), F.z2EmphasisLift = 0, pe(F, M), Wt(F, L, P, R);
20300      }
20301    }), this._progressEls = p);
20302  }, e.prototype._renderAnchor = function(t, a) {
20303    var n = t.getModel("anchor"), i = n.get("show");
20304    if (i) {
20305      var o = n.get("size"), s = n.get("icon"), l = n.get("offsetCenter"), u = n.get("keepAspect"), f = qt(s, a.cx - o / 2 + W(l[0], a.r), a.cy - o / 2 + W(l[1], a.r), o, o, null, u);
20306      f.z2 = n.get("showAbove") ? 1 : 0, f.setStyle(n.getModel("itemStyle").getItemStyle()), this.group.add(f);
20307    }
20308  }, e.prototype._renderTitleAndDetail = function(t, a, n, i, o) {
20309    var s = this, l = t.getData(), u = l.mapDimension("value"), f = +t.get("min"), h = +t.get("max"), v = new at(), c = [], p = [], d = t.isAnimationEnabled(), g = t.get(["pointer", "showAbove"]);
20310    l.diff(this._data).add(function(y) {
20311      c[y] = new St({ silent: true }), p[y] = new St({ silent: true });
20312    }).update(function(y, m) {
20313      c[y] = s._titleEls[m], p[y] = s._detailEls[m];
20314    }).execute(), l.each(function(y) {
20315      var m = l.getItemModel(y), _ = l.get(u, y), S = new at(), b = i(Dt(_, [f, h], [0, 1], true)), x = m.getModel("title");
20316      if (x.get("show")) {
20317        var w = x.get("offsetCenter"), T = o.cx + W(w[0], o.r), C = o.cy + W(w[1], o.r), A = c[y];
20318        A.attr({ z2: g ? 0 : 2, style: Nt(x, { x: T, y: C, text: l.getName(y), align: "center", verticalAlign: "middle" }, { inheritColor: b }) }), S.add(A);
20319      }
20320      var M = m.getModel("detail");
20321      if (M.get("show")) {
20322        var I = M.get("offsetCenter"), L = o.cx + W(I[0], o.r), P = o.cy + W(I[1], o.r), R = W(M.get("width"), o.r), E = W(M.get("height"), o.r), O = t.get(["progress", "show"]) ? l.getItemVisual(y, "style").fill : b, A = p[y], k = M.get("formatter");
20323        A.attr({ z2: g ? 0 : 2, style: Nt(M, { x: L, y: P, text: Hu(_, k), width: isNaN(R) ? null : R, height: isNaN(E) ? null : E, align: "center", verticalAlign: "middle" }, { inheritColor: O }) }), zC(A, { normal: M }, _, function(F) {
20324          return Hu(F, k);
20325        }), d && VC(A, y, l, t, { getFormattedLabel: function(F, H, U, K, J, nt) {
20326          return Hu(nt ? nt.interpolatedValue : _, k);
20327        } }), S.add(A);
20328      }
20329      v.add(S);
20330    }), this.group.add(v), this._titleEls = c, this._detailEls = p;
20331  }, e.type = "gauge", e;
20332}(Pt), W3 = function(r) {
20333  N(e, r);
20334  function e() {
20335    var t = r !== null && r.apply(this, arguments) || this;
20336    return t.type = e.type, t.visualStyleAccessPath = "itemStyle", t;
20337  }
20338  return e.prototype.getInitialData = function(t, a) {
20339    return $o(this, ["value"]);
20340  }, e.type = "series.gauge", e.defaultOption = { z: 2, colorBy: "data", center: ["50%", "50%"], legendHoverLink: true, radius: "75%", startAngle: 225, endAngle: -45, clockwise: true, min: 0, max: 100, splitNumber: 10, axisLine
20340: { show: true, roundCap: false, lineStyle: { color: [[1, "#E6EBF8"]], width: 10 } }, progress: { show: false, overlap: true, width: 10, roundCap: false, clip: true }, splitLine: { show: true, length: 10, distance: 10, lineStyle: { color: "#63677A", width: 3, type: "solid" } }, axisTick: { show: true, splitNumber: 5, length: 6, distance: 10, lineStyle: { color: "#63677A", width: 1, type: "solid" } }, axisLabel: { show: true, distance: 15, color: "#464646", fontSize: 12, rotate: 0 }, pointer: { icon: null, offsetCenter: [0, 0], show: true, showAbove: true, length: "60%", width: 6, keepAspect: false }, anchor: { show: false, showAbove: false, size: 6, icon: "circle", offsetCenter: [0, 0], keepAspect: false, itemStyle: { color: "#fff", borderWidth: 0, borderColor: "#5470c6" } }, title: { show: true, offsetCenter: [0, "20%"], color: "#464646", fontSize: 16, valueAnimation: false }, detail: { show: true, 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: false } }, e;
20341}(Et);
20342function U3(r) {
20343  r.registerChartView(H3), r.registerSeriesModel(W3);
20344}
20345var Y3 = ["itemStyle", "opacity"], $3 = function(r) {
20346  N(e, r);
20347  function e(t, a) {
20348    var n = r.call(this) || this, i = n, o = new De(), s = new St();
20349    return i.setTextContent(s), n.setTextGuideLine(o), n.updateData(t, a, true), n;
20350  }
20351  return e.prototype.updateData = function(t, a, n) {
20352    var i = this, o = t.hostModel, s = t.getItemModel(a), l = t.getItemLayout(a), u = s.getModel("emphasis"), f = s.get(Y3);
20353    f = f ?? 1, n || Er(i), i.useStyle(t.getItemVisual(a, "style")), i.style.lineJoin = "round", n ? (i.setShape({ points: l.points }), i.style.opacity = 0, Gt(i, { style: { opacity: f } }, o, a)) : Tt(i, { style: { opacity: f }, shape: { points: l.points } }, o, a), pe(i, s), this._updateLabel(t, a), Wt(this, u.get("focus"), u.get("blurScope"), u.get("disabled"));
20354  }, e.prototype._updateLabel = function(t, a) {
20355    var n = this, i = this.getTextGuideLine(), o = n.getTextContent(), s = t.hostModel, l = t.getItemModel(a), u = t.getItemLayout(a), f = u.label, h = t.getItemVisual(a, "style"), v = h.fill;
20356    de(o, se(l), { labelFetcher: t.hostModel, labelDataIndex: a, defaultOpacity: h.opacity, defaultText: t.getName(a) }, { normal: { align: f.textAlign, verticalAlign: f.verticalAlign } }), n.setTextConfig({ local: true, inside: !!f.inside, insideStroke: v, outsideFill: v });
20357    var c = f.linePoints;
20358    i.setShape({ points: c }), n.textGuideLineConfig = { anchor: c ? new ft(c[0][0], c[0][1]) : null }, Tt(o, { style: { x: f.x, y: f.y } }, s, a), o.attr({ rotation: f.rotation, originX: f.x, originY: f.y, z2: 10 }), Uy(n, Yy(l), { stroke: v });
20359  }, e;
20360}(Ce), X3 = function(r) {
20361  N(e, r);
20362  function e() {
20363    var t = r !== null && r.apply(this, arguments) || this;
20364    return t.type = e.type, t.ignoreLabelLineUpdate = true, t;
20365  }
20366  return e.prototype.render = function(t, a, n) {
20367    var i = t.getData(), o = this._data, s = this.group;
20368    i.diff(o).add(function(l) {
20369      var u = new $3(i, l);
20370      i.setItemGraphicEl(l, u), s.add(u);
20371    }).update(function(l, u) {
20372      var f = o.getItemGraphicEl(u);
20373      f.updateData(i, l), s.add(f), i.setItemGraphicEl(l, f);
20374    }).remove(function(l) {
20375      var u = o.getItemGraphicEl(l);
20376      ul(u, t, l);
20377    }).execute(), this._data = i;
20378  }, e.prototype.remove = function() {
20379    this.group.removeAll(), this._data = null;
20380  }, e.prototype.dispose = function() {
20381  }, e.type = "funnel", e;
20382}(Pt), Z3 = function(r) {
20383  N(e, r);
20384  function e() {
20385    var t = r !== null && r.apply(this, arguments) || this;
20386    return t.type = e.type, t;
20387  }
20388  return e.prototype.init = function(t) {
20389    r.prototype.init.apply(this, arguments), this.legendVisualProvider = new Zl($(this.getData, this), $(this.getRawData, this)), this._defaultLabelLine(t);
20390  }, e.prototype.getInitialData = function(t, a) {
20391    return $o(this, { coordDimensions: ["value"], encodeDefaulter: lt(my, this) });
20392  }, e.prototype._defaultLabelLine = function(t) {
20393    fi(t, "labelLine", ["show"]);
20394    var a = t.labelLine, n = t.emphasis.labelLine;
20395    a.show = a.show && t.label.show, n.show = n.show && t.emphasis.label.show;
20396  }, e.prototype.getDataParams = function(t) {
20397    var a = this.getData(), n = r.prototype.getDataParams.call(this, t), i = a.mapDimension("value"), o = a.getSum(i);
20398    return n.percent = o ? +(a.get(i, t) / o * 100).toFixed(2) : 0, n.$vars.push("percent"), n;
20399  }, e.type = "series.funnel", e.defaultOption = { z: 2, legendHoverLink: true, colorBy: "data", left: 80, top: 60, right: 80, bottom: 60, minSize: "0%", maxSize: "100%", sort: "descending", orient: "vertical", gap: 0, funnelAlign: "center", label: { show: true, position: "outer" }, labelLine: { show: true, length: 20, lineStyle: { width: 1 } }, itemStyle: { borderColor: "#fff", borderWidth: 1 }, emphasis: { label: { show: true } }, select: { itemStyle: { borderColor: "#212121" } } }, e;
20400}(Et);
20401function q3(r, e) {
20402  return Qt(r.getBoxLayoutParams(), { width: e.getWidth(), height: e.getHeight() });
20403}
20404function K3(r, e) {
20405  for (var t = r.mapDimension("value"), a = r.mapArray(t, function(l) {
20406    return l;
20407  }), n = [], i = e === "ascending", o = 0, s = r.count(); o < s; o++) n[o] = o;
20408  return j(e) ? n.sort(e) : e !== "none" && n.sort(function(l, u) {
20409    return i ? a[l] - a[u] : a[u] - a[l];
20410  }), n;
20411}
20412function j3(r) {
20413  var e = r.hostModel, t = e.get("orient");
20414  r.each(function(a) {
20415    var n = r.getItemModel(a), i = n.getModel("label"), o = i.get("position"), s = n.getModel("labelLine"), l = r.getItemLayout(a), u = l.points, f = o === "inner" || o === "inside" || o === "center" || o === "insideLeft" || o === "insideRight", h, v, c, p;
20416    if (f) o === "insideLeft" ? (v = (u[0][0] + u[3][0]) / 2 + 5, c = (u[0][1] + u[3][1]) / 2, h = "left") : o === "insideRight" ? (v = (u[1][0] + u[2][0]) / 2 - 5, c = (u[1][1] + u[2][1]) / 2, h = "right") : (v = (u[0][0] + u[1][0] + u[2][0] + u[3][0]) / 4, c = (u[0][1] + u[1][1] + u[2][1] + u[3][1]) / 4, h = "center"), p = [[v, c], [v, c]];
20417    else {
20418      var d = void 0, g = void 0, y = void 0, m = void 0, _ = s.get("length");
20419      o === "left" ? (d = (u[3][0] + u[0][0]) / 2, g = (u[3][1] + u[0][1]) / 2, y = d - _, v = y - 5, h = "right") : o === "right" ? (d = (u[1][0] + u[2][0]) / 2, g = (u[1][1] + u[2][1]) / 2, y = d + _, v = y + 5, h = "left") : o === "top" ? (d = (u[3][0] + u[0][0]) / 2, g = (u[3][1] + u[0][1]) / 2, m = g - _, c = m - 5, h = "center") : o === "bottom" ? (d = (u[1][0] + u[2][0]) / 2, g = (u[1][1] + u[2][1]) / 2, m = g + _, c = m + 5, h = "center") : o === "rightTop" ? (d = t === "horizontal" ? u[3][0] : u[1][0], g = t === "horizontal" ? u[3][1] : u[1][1], t === "horizontal" ? (m = g - _, c = m - 5, h = "center") : (y = d + _, v = y + 5, h = "to
20419p")) : o === "rightBottom" ? (d = u[2][0], g = u[2][1], t === "horizontal" ? (m = g + _, c = m + 5, h = "center") : (y = d + _, v = y + 5, h = "bottom")) : o === "leftTop" ? (d = u[0][0], g = t === "horizontal" ? u[0][1] : u[1][1], t === "horizontal" ? (m = g - _, c = m - 5, h = "center") : (y = d - _, v = y - 5, h = "right")) : o === "leftBottom" ? (d = t === "horizontal" ? u[1][0] : u[3][0], g = t === "horizontal" ? u[1][1] : u[2][1], t === "horizontal" ? (m = g + _, c = m + 5, h = "center") : (y = d - _, v = y - 5, h = "right")) : (d = (u[1][0] + u[2][0]) / 2, g = (u[1][1] + u[2][1]) / 2, t === "horizontal" ? (m = g + _, c = m + 5, h = "center") : (y = d + _, v = y + 5, h = "left")), t === "horizontal" ? (y = d, v = y) : (m = g, c = m), p = [[d, g], [y, m]];
20420    }
20421    l.label = { linePoints: p, x: v, y: c, verticalAlign: "middle", textAlign: h, inside: f };
20422  });
20423}
20424function J3(r, e) {
20425  r.eachSeriesByType("funnel", function(t) {
20426    var a = t.getData(), n = a.mapDimension("value"), i = t.get("sort"), o = q3(t, e), s = t.get("orient"), l = o.width, u = o.height, f = K3(a, i), h = o.x, v = o.y, c = s === "horizontal" ? [W(t.get("minSize"), u), W(t.get("maxSize"), u)] : [W(t.get("minSize"), l), W(t.get("maxSize"), l)], p = a.getDataExtent(n), d = t.get("min"), g = t.get("max");
20427    d == null && (d = Math.min(p[0], 0)), g == null && (g = p[1]);
20428    var y = t.get("funnelAlign"), m = t.get("gap"), _ = s === "horizontal" ? l : u, S = (_ - m * (a.count() - 1)) / a.count(), b = function(P, R) {
20429      if (s === "horizontal") {
20430        var E = a.get(n, P) || 0, O = Dt(E, [d, g], c, true), k = void 0;
20431        switch (y) {
20432          case "top":
20433            k = v;
20434            break;
20435          case "center":
20436            k = v + (u - O) / 2;
20437            break;
20438          case "bottom":
20439            k = v + (u - O);
20440            break;
20441        }
20442        return [[R, k], [R, k + O]];
20443      }
20444      var B = a.get(n, P) || 0, F = Dt(B, [d, g], c, true), H;
20445      switch (y) {
20446        case "left":
20447          H = h;
20448          break;
20449        case "center":
20450          H = h + (l - F) / 2;
20451          break;
20452        case "right":
20453          H = h + l - F;
20454          break;
20455      }
20456      return [[H, R], [H + F, R]];
20457    };
20458    i === "ascending" && (S = -S, m = -m, s === "horizontal" ? h += l : v += u, f = f.reverse());
20459    for (var x = 0; x < f.length; x++) {
20460      var w = f[x], T = f[x + 1], C = a.getItemModel(w);
20461      if (s === "horizontal") {
20462        var A = C.get(["itemStyle", "width"]);
20463        A == null ? A = S : (A = W(A, l), i === "ascending" && (A = -A));
20464        var M = b(w, h), I = b(T, h + A);
20465        h += A + m, a.setItemLayout(w, { points: M.concat(I.slice().reverse()) });
20466      } else {
20467        var L = C.get(["itemStyle", "height"]);
20468        L == null ? L = S : (L = W(L, u), i === "ascending" && (L = -L));
20469        var M = b(w, v), I = b(T, v + L);
20470        v += L + m, a.setItemLayout(w, { points: M.concat(I.slice().reverse()) });
20471      }
20472    }
20473    j3(a);
20474  });
20475}
20476function Q3(r) {
20477  r.registerChartView(X3), r.registerSeriesModel(Z3), r.registerLayout(J3), r.registerProcessor(Xl("funnel"));
20478}
20479var tH = 0.3, eH = function(r) {
20480  N(e, r);
20481  function e() {
20482    var t = r !== null && r.apply(this, arguments) || this;
20483    return t.type = e.type, t._dataGroup = new at(), t._initialized = false, t;
20484  }
20485  return e.prototype.init = function() {
20486    this.group.add(this._dataGroup);
20487  }, e.prototype.render = function(t, a, n, i) {
20488    this._progressiveEls = null;
20489    var o = this._dataGroup, s = t.getData(), l = this._data, u = t.coordinateSystem, f = u.dimensions, h = Ax(t);
20490    s.diff(l).add(v).update(c).remove(p).execute();
20491    function v(g) {
20492      var y = Cx(s, o, g, f, u);
20493      Jc(y, s, g, h);
20494    }
20495    function c(g, y) {
20496      var m = l.getItemGraphicEl(y), _ = hI(s, g, f, u);
20497      s.setItemGraphicEl(g, m), Tt(m, { shape: { points: _ } }, t, g), Er(m), Jc(m, s, g, h);
20498    }
20499    function p(g) {
20500      var y = l.getItemGraphicEl(g);
20501      o.remove(y);
20502    }
20503    if (!this._initialized) {
20504      this._initialized = true;
20505      var d = rH(u, t, function() {
20506        setTimeout(function() {
20507          o.removeClipPath();
20508        });
20509      });
20510      o.setClipPath(d);
20511    }
20512    this._data = s;
20513  }, e.prototype.incrementalPrepareRender = function(t, a, n) {
20514    this._initialized = true, this._data = null, this._dataGroup.removeAll();
20515  }, e.prototype.incrementalRender = function(t, a, n) {
20516    for (var i = a.getData(), o = a.coordinateSystem, s = o.dimensions, l = Ax(a), u = this._progressiveEls = [], f = t.start; f < t.end; f++) {
20517      var h = Cx(i, this._dataGroup, f, s, o);
20518      h.incremental = true, Jc(h, i, f, l), u.push(h);
20519    }
20520  }, e.prototype.remove = function() {
20521    this._dataGroup && this._dataGroup.removeAll(), this._data = null;
20522  }, e.type = "parallel", e;
20523}(Pt);
20524function rH(r, e, t) {
20525  var a = r.model, n = r.getRect(), i = new xt({ shape: { x: n.x, y: n.y, width: n.width, height: n.height } }), o = a.get("layout") === "horizontal" ? "width" : "height";
20526  return i.setShape(o, 0), Gt(i, { shape: { width: n.width, height: n.height } }, e, t), i;
20527}
20528function hI(r, e, t, a) {
20529  for (var n = [], i = 0; i < t.length; i++) {
20530    var o = t[i], s = r.get(r.mapDimension(o), e);
20531    aH(s, a.getAxis(o).type) || n.push(a.dataToPoint(s, o));
20532  }
20533  return n;
20534}
20535function Cx(r, e, t, a, n) {
20536  var i = hI(r, t, a, n), o = new De({ shape: { points: i }, z2: 10 });
20537  return e.add(o), r.setItemGraphicEl(t, o), o;
20538}
20539function Ax(r) {
20540  var e = r.get("smooth", true);
20541  return e === true && (e = tH), e = Qr(e), po(e) && (e = 0), { smooth: e };
20542}
20543function Jc(r, e, t, a) {
20544  r.useStyle(e.getItemVisual(t, "style")), r.style.fill = null, r.setShape("smooth", a.smooth);
20545  var n = e.getItemModel(t), i = n.getModel("emphasis");
20546  pe(r, n, "lineStyle"), Wt(r, i.get("focus"), i.get("blurScope"), i.get("disabled"));
20547}
20548function aH(r, e) {
20549  return e === "category" ? r == null : r == null || isNaN(r);
20550}
20551var nH = function(r) {
20552  N(e, r);
20553  function e() {
20554    var t = r !== null && r.apply(this, arguments) || this;
20555    return t.type = e.type, t.visualStyleAccessPath = "lineStyle", t.visualDrawType = "stroke", t;
20556  }
20557  return e.prototype.getInitialData = function(t, a) {
20558    return aa(null, this, { useEncodeDefaulter: $(iH, null, this) });
20559  }, e.prototype.getRawIndicesByActiveState = function(t) {
20560    var a = this.coordinateSystem, n = this.getData(), i = [];
20561    return a.eachActiveState(n, function(o, s) {
20562      t === o && i.push(n.getRawIndex(s));
20563    }), i;
20564  }, e.type = "series.parallel", e.dependencies = ["parallel"], e.defaultOption = { z: 2, coordinateSystem: "parallel", parallelIndex: 0, label: { show: false }, inactiveOpacity: 0.05, activeOpacity: 1, lineStyle: { width: 1, opacity: 0.45, type: "solid" }, emphasis: { label: { show: false } }, progressive: 500, smooth: false, animationEasing: "linear" }, e;
20565}(Et);
20566function iH(r) {
20567  var e = r.ecModel.getComponent("parallel", r.get("parallelIndex"));
20568  if (e) {
20569    var t = {};
20570    return D(e.dimensions, function(a) {
20571      var n = oH(a);
20572      t[a] = n;
20573    }), t;
20574  }
20575}
20576function oH(r) {
20577  return +r.replace("dim", "");
20578}
20579var sH = ["lineStyle", "opacity"], lH = { seriesType: "parallel", reset: function(r, e) {
20580  var t = r.coordinateSystem, a = { normal: r.get(["lineStyle", "opacity"]), active: r.get("activeOpacity"), inactive: r.get("inactiveOpacity") };
20581  return { progress: function(n, i) {
20582    t.eachActiveState(i, function(o, s) {
20583      var l = a[o];
20584      if (o === "normal" && i.hasItemOption) {
20585        var u = i.getItemModel(s).get(sH, true);
20586        u != null && (l = u);
20587      }
20588      var f = i.ensureUniqueItemVisual(s, "style");
20589      f.opacity = l;
20590    }, n.start, n.end);
20591  } };
20592} };
20593function uH(r) {
20594  fH(r), hH(r);
20595}
20596function fH(r) {
20597  if (!r.parallel) {
20598    var e = false;
20599    D(r.series, function(t) {
20600      t && t.type === "parallel" && (e = true);
20601    }), e && (r.parallel = [{}]);
20602  }
20603}
20604function hH(r) {
20605  var e = Rt(r.parallelAxis);
20606  D(e, function(t) {
20607    if (tt(t)) {
20608      var a = t.parallelIndex || 0, n = Rt(r.parallel)[a];
20609      n && n.parallelAxisDefault && ut(t, n.parallelAxisDefault, false);
20610    }
20611  });
20612}
20613var vH = 5, cH = function(r) {
20614  N(e, r);
20615  function e() {
20616    var t = r !== null && r.apply(this, arguments) || this;
20617    return t.type = e.type, t;
20618  }
20619  return e.prototype.render = function(t, a, n) {
20620    this._model = t, this._api = n, this._handlers || (this._handlers = {}, D(pH, function(i, o) {
20621      n.getZr().on(o, this._handlers[o] = $(i, this));
20622    }, this)), Fo(this, "_throttledDispatchExpand", t.get("axisExpandRate"), "fixRate");
20623  }, e.prototype.dispose = function(t, a) {
20624    cl(this, "_throttledDispatchExpand"), D(this._handlers, function(n, i) {
20625      a.getZr().off(i, n);
20626    }), this._handlers = null;
20627  }, e.prototype._throttledDispatchExpand = function(t) {
20628    this._dispatchExpand(t);
20629  }, e.prototype._dispatchExpand = function(t) {
20630    t && this._api.dispatchAction(z({ type: "parallelAxisExpand" }, t));
20631  }, e.type = "parallel", e;
20632}(Vt), pH = { mousedown: function(r) {
20633  Qc(this, "click") && (this._mouseDownPoint = [r.offsetX, r.offsetY]);
20634}, mouseup: function(r) {
20635  var e = this._mouseDownPoint;
20636  if (Qc(this, "click") && e) {
20637    var t = [r.offsetX, r.offsetY], a = Math.pow(e[0] - t[0], 2) + Math.pow(e[1] - t[1], 2);
20638    if (a > vH) return;
20639    var n = this._model.coordinateSystem.getSlidedAxisExpandWindow([r.offsetX, r.offsetY]);
20640    n.behavior !== "none" && this._dispatchExpand({ axisExpandWindow: n.axisExpandWindow });
20641  }
20642  this._mouseDownPoint = null;
20643}, mousemove: function(r) {
20644  if (!(this._mouseDownPoint || !Qc(this, "mousemove"))) {
20645    var e = this._model, t = e.coordinateSystem.getSlidedAxisExpandWindow([r.offsetX, r.offsetY]), a = t.behavior;
20646    a === "jump" && this._throttledDispatchExpand.debounceNextCall(e.get("axisExpandDebounce")), this._throttledDispatchExpand(a === "
20646none" ? null : { axisExpandWindow: t.axisExpandWindow, animation: a === "jump" ? null : { duration: 0 } });
20647  }
20648} };
20649function Qc(r, e) {
20650  var t = r._model;
20651  return t.get("axisExpandable") && t.get("axisExpandTriggerOn") === e;
20652}
20653var dH = function(r) {
20654  N(e, r);
20655  function e() {
20656    var t = r !== null && r.apply(this, arguments) || this;
20657    return t.type = e.type, t;
20658  }
20659  return e.prototype.init = function() {
20660    r.prototype.init.apply(this, arguments), this.mergeOption({});
20661  }, e.prototype.mergeOption = function(t) {
20662    var a = this.option;
20663    t && ut(a, t, true), this._initDimensions();
20664  }, e.prototype.contains = function(t, a) {
20665    var n = t.get("parallelIndex");
20666    return n != null && a.getComponent("parallel", n) === this;
20667  }, e.prototype.setAxisExpand = function(t) {
20668    D(["axisExpandable", "axisExpandCenter", "axisExpandCount", "axisExpandWidth", "axisExpandWindow"], function(a) {
20669      t.hasOwnProperty(a) && (this.option[a] = t[a]);
20670    }, this);
20671  }, e.prototype._initDimensions = function() {
20672    var t = this.dimensions = [], a = this.parallelAxisIndex = [], n = Ct(this.ecModel.queryComponents({ mainType: "parallelAxis" }), function(i) {
20673      return (i.get("parallelIndex") || 0) === this.componentIndex;
20674    }, this);
20675    D(n, function(i) {
20676      t.push("dim" + i.get("dim")), a.push(i.componentIndex);
20677    });
20678  }, e.type = "parallel", e.dependencies = ["parallelAxis"], e.layoutMode = "box", e.defaultOption = { z: 0, left: 80, top: 60, right: 80, bottom: 60, layout: "horizontal", axisExpandable: false, axisExpandCenter: null, axisExpandCount: 0, axisExpandWidth: 50, axisExpandRate: 17, axisExpandDebounce: 50, axisExpandSlideTriggerArea: [-0.15, 0.05, 0.4], axisExpandTriggerOn: "click", parallelAxisDefault: null }, e;
20679}(gt), gH = function(r) {
20680  N(e, r);
20681  function e(t, a, n, i, o) {
20682    var s = r.call(this, t, a, n) || this;
20683    return s.type = i || "value", s.axisIndex = o, s;
20684  }
20685  return e.prototype.isHorizontal = function() {
20686    return this.coordinateSystem.getModel().get("layout") !== "horizontal";
20687  }, e;
20688}(yr);
20689function Ai(r, e, t, a, n, i) {
20690  r = r || 0;
20691  var o = t[1] - t[0];
20692  if (n != null && (n = $i(n, [0, o])), i != null && (i = Math.max(i, n ?? 0)), a === "all") {
20693    var s = Math.abs(e[1] - e[0]);
20694    s = $i(s, [0, o]), n = i = $i(s, [n, i]), a = 0;
20695  }
20696  e[0] = $i(e[0], t), e[1] = $i(e[1], t);
20697  var l = tp(e, a);
20698  e[a] += r;
20699  var u = n || 0, f = t.slice();
20700  l.sign < 0 ? f[0] += u : f[1] -= u, e[a] = $i(e[a], f);
20701  var h;
20702  return h = tp(e, a), n != null && (h.sign !== l.sign || h.span < n) && (e[1 - a] = e[a] + l.sign * n), h = tp(e, a), i != null && h.span > i && (e[1 - a] = e[a] + h.sign * i), e;
20703}
20704function tp(r, e) {
20705  var t = r[e] - r[1 - e];
20706  return { span: Math.abs(t), sign: t > 0 ? -1 : t < 0 ? 1 : e ? -1 : 1 };
20707}
20708function $i(r, e) {
20709  return Math.min(e[1] != null ? e[1] : 1 / 0, Math.max(e[0] != null ? e[0] : -1 / 0, r));
20710}
20711var ep = D, vI = Math.min, cI = Math.max, Dx = Math.floor, yH = Math.ceil, Mx = Ut, mH = Math.PI, _H = function() {
20712  function r(e, t, a) {
20713    this.type = "parallel", this._axesMap = Z(), this._axesLayout = {}, this.dimensions = e.dimensions, this._model = e, this._init(e, t, a);
20714  }
20715  return r.prototype._init = function(e, t, a) {
20716    var n = e.dimensions, i = e.parallelAxisIndex;
20717    ep(n, function(o, s) {
20718      var l = i[s], u = t.getComponent("parallelAxis", l), f = this._axesMap.set(o, new gH(o, Hl(u), [0, 0], u.get("type"), l)), h = f.type === "category";
20719      f.onBand = h && u.get("boundaryGap"), f.inverse = u.get("inverse"), u.axis = f, f.model = u, f.coordinateSystem = u.coordinateSystem = this;
20720    }, this);
20721  }, r.prototype.update = function(e, t) {
20722    this._updateAxesFromSeries(this._model, e);
20723  }, r.prototype.containPoint = function(e) {
20724    var t = this._makeLayoutInfo(), a = t.axisBase, n = t.layoutBase, i = t.pixelDimIndex, o = e[1 - i], s = e[i];
20725    return o >= a && o <= a + t.axisLength && s >= n && s <= n + t.layoutLength;
20726  }, r.prototype.getModel = function() {
20727    return this._model;
20728  }, r.prototype._updateAxesFromSeries = function(e, t) {
20729    t.eachSeries(function(a) {
20730      if (e.contains(a, t)) {
20731        var n = a.getData();
20732        ep(this.dimensions, function(i) {
20733          var o = this._axesMap.get(i);
20734          o.scale.unionExtentFromData(n, n.mapDimension(i)), di(o.scale, o.model);
20735        }, this);
20736      }
20737    }, this);
20738  }, r.prototype.resize = function(e, t) {
20739    this._rect = Qt(e.getBoxLayoutParams(), { width: t.getWidth(), height: t.getHeight() }), this._layoutAxes();
20740  }, r.prototype.getRect = function() {
20741    return this._rect;
20742  }, r.prototype._makeLayoutInfo = function() {
20743    var e = this._model, t = this._rect, a = ["x", "y"], n = ["width", "height"], i = e.get("layout"), o = i === "horizontal" ? 0 : 1, s = t[n[o]], l = [0, s], u = this.dimensions.length, f = Wu(e.get("axisExpandWidth"), l), h = Wu(e.get("axisExpandCount") || 0, [0, u]), v = e.get("axisExpandable") && u > 3 && u > h && h > 1 && f > 0 && s > 0, c = e.get("axisExpandWindow"), p;
20744    if (c) p = Wu(c[1] - c[0], l), c[1] = c[0] + p;
20745    else {
20746      p = Wu(f * (h - 1), l);
20747      var d = e.get("axisExpandCenter") || Dx(u / 2);
20748      c = [f * d - p / 2], c[1] = c[0] + p;
20749    }
20750    var g = (s - p) / (u - h);
20751    g < 3 && (g = 0);
20752    var y = [Dx(Mx(c[0] / f, 1)) + 1, yH(Mx(c[1] / f, 1)) - 1], m = g / f * c[0];
20753    return { layout: i, pixelDimIndex: o, layoutBase: t[a[o]], layoutLength: s, axisBase: t[a[1 - o]], axisLength: t[n[1 - o]], axisExpandable: v, axisExpandWidth: f, axisCollapseWidth: g, axisExpandWindow: c, axisCount: u, winInnerIndices: y, axisExpandWindow0Pos: m };
20754  }, r.prototype._layoutAxes = function() {
20755    var e = this._rect, t = this._axesMap, a = this.dimensions, n = this._makeLayoutInfo(), i = n.layout;
20756    t.each(function(o) {
20757      var s = [0, n.axisLength], l = o.inverse ? 1 : 0;
20758      o.setExtent(s[l], s[1 - l]);
20759    }), ep(a, function(o, s) {
20760      var l = (n.axisExpandable ? xH : SH)(s, n), u = { horizontal: { x: l.position, y: n.axisLength }, vertical: { x: 0, y: l.position } }, f = { horizontal: mH / 2, vertical: 0 }, h = [u[i].x + e.x, u[i].y + e.y], v = f[i], c = He();
20761      ln(c, c, v), Pr(c, c, h), this._axesLayout[o] = { position: h, rotation: v, transform: c, axisNameAvailableWidth: l.axisNameAvailableWidth, axisLabelShow: l.axisLabelShow, nameTruncateMaxWidth: l.nameTruncateMaxWidth, tickDirection: 1, labelDirection: 1 };
20762    }, this);
20763  }, r.prototype.getAxis = function(e) {
20764    return this._axesMap.get(e);
20765  }, r.prototype.dataToPoint = function(e, t) {
20766    return this.axisCoordToPoint(this._axesMap.get(t).dataToCoord(e), t);
20767  }, r.prototype.eachActiveState = function(e, t, a, n) {
20768    a == null && (a = 0), n == null && (n = e.count());
20769    var i = this._axesMap, o = this.dimensions, s = [], l = [];
20770    D(o, function(g) {
20771      s.push(e.mapDimension(g)), l.push(i.get(g).model);
20772    });
20773    for (var u = this.hasAxisBrushed(), f = a; f < n; f++) {
20774      var h = void 0;
20775      if (!u) h = "normal";
20776      else {
20777        h = "active";
20778        for (var v = e.getValues(s, f), c = 0, p = o.length; c < p; c++) {
20779          var d = l[c].getActiveState(v[c]);
20780          if (d === "inactive") {
20781            h = "inactive";
20782            break;
20783          }
20784        }
20785      }
20786      t(h, f);
20787    }
20788  }, r.prototype.hasAxisBrushed = function() {
20789    for (var e = this.dimensions, t = this._axesMap, a = false, n = 0, i = e.length; n < i; n++) t.get(e[n]).model.getActiveState() !== "normal" && (a = true);
20790    return a;
20791  }, r.prototype.axisCoordToPoint = function(e, t) {
20792    var a = this._axesLayout[t];
20793    return Ir([e, 0], a.transform);
20794  }, r.prototype.getAxisLayout = function(e) {
20795    return rt(this._axesLayout[e]);
20796  }, r.prototype.getSlidedAxisExpandWindow = function(e) {
20797    var t = this._makeLayoutInfo(), a = t.pixelDimIndex, n = t.axisExpandWindow.slice(), i = n[1] - n[0], o = [0, t.axisExpandWidth * (t.axisCount - 1)];
20798    if (!this.containPoint(e)) return { behavior: "none", axisExpandWindow: n };
20799    var s = e[a] - t.layoutBase - t.axisExpandWindow0Pos, l, u = "slide", f = t.axisCollapseWidth, h = this._model.get("axisExpandSlideTriggerArea"), v = h[0] != null;
20800    if (f) v && f && s < i * h[0] ? (u = "jump", l = s - i * h[2]) : v && f && s > i * (1 - h[0]) ? (u = "jump", l = s - i * (1 - h[2])) : (l = s - i * h[1]) >= 0 && (l = s - i * (1 - h[1])) <= 0 && (l = 0), l *= t.axisExpandWidth / f, l ? Ai(l, n, o, "all") : u = "none";
20801    else {
20802      var c = n[1] - n[0], p = o[1] * s / c;
20803      n = [cI(0, p - c / 2)], n[1] = vI(o[1], n[0] + c), n[0] = n[1] - c;
20804    }
20805    return { axisExpandWindow: n, behavior: u };
20806  }, r;
20807}();
20808function Wu(r, e) {
20809  return vI(cI(r, e[0]), e[1]);
20810}
20811function SH(r, e) {
20812  var t = e.layoutLength / (e.axisCount - 1);
20813  return { position: t * r, axisNameAvailableWidth: t, axisLabelShow: true };
20814}
20815function xH(r, e) {
20816  var t = e.layoutLength, a = e.axisExpandWidth, n = e.axisCount, i = e.axisCollapseWidth, o = e.winInnerIndices, s, l = i, u = false, f;
20817  return r < o[0] ? (s = r * i, f = i) : r <= o[1] ? (s = e.axisExpandWindow0Pos + r * a - e.axisExpandWindow[0], l = a, u = true) : (s = t - (n - 1 - r) * i, f = i), { position: s, axisNameAvailableWidth: l, axisLabelShow: u, nameTruncateMaxWidth: f };
20818}
20819function bH(r, e) {
20820  var t = [];
20821  return r.eachComponent("parallel", function(a, n) {
20822    var i = new _H(a, r, e);
20823    i.name = "parallel_" + n, i.resize(a, e), a.coordinateSystem = i, i.model = a, t.push(i);
20824  }), r.eachSeries(function(a) {
20825    if (a.get("coordinateSystem") === "parallel") {
20826      var n = a.getReferringComponents("parallel", Jt).models[0];
20827      a.coordinateSystem = n.coordinateSystem;
20828    }
20829  }), t;
20830}
20831var wH = { create: bH }, eg = function(r) {
20832  N(e, r);
20833  function e() {
20834    var t = r !== null && r.apply(this, arguments) || this;
20835    return t.type = e.type, t.activeIntervals = [], t;
20836  }
20837  return e.prototype.getAreaSelectStyle = function() {
20838    return vi([["fill", "color"], ["lineWidth", "borderWidth"], ["stroke", "borderColor"], ["width", "width"], ["opacity", "opacity"]])(this.getModel("areaSelectStyle"));
20839  }, e.prototype.setActiveIntervals = function(t) {
20840    var a = this.activeIntervals = rt(t);
20841    if (a) for (var n = a.length - 1; n >= 0; n--) Xe(a[n]);
20842  }, e.prototype.getActiveState = function(t) {
20843    var a = this.activeIntervals;
20844    if (!a.length) return "normal";
20845    if (t == null || isNaN(+t)) return "inactive";
20846    if (a.length === 1) {
20847      var n = a[0];
20848      if (n[0] <= t && t <= n[1]) return "active";
20849    } else for (var i = 0, o = a.length; i < o; i++) if (a[i][0] <= t && t <= a[i][1]) return "active";
20850    return "inactive";
20851  }, e;
20852}(gt);
20853Xt(eg, Yo);
20854var gi = true, Cl = Math.min, To = Math.max, TH = Math.pow, CH = 1e4, AH = 6, DH = 6, Ix = "globalPan", MH = { w: [0, 0], e: [0, 1], n: [1, 0], s: [1, 1] }, IH = { w: "ew", e: "ew", n: "ns", s: "ns", ne: "nesw", sw: "nesw", nw: "nwse", se: "nwse" }, Lx = { brushStyle: { lineWidth: 2, stroke: "rgba(210,219,238,0.3)", fill: "#D2DBEE" }, transformable: true, brushMode: "single", removeOnClick: false }, LH = 0, pm = function(r) {
20855  N(e, r);
20856  function e(t) {
20857    var a = r.call(this) || this;
20858    return a._track = [], a._covers = [], a._handlers = {}, a._zr = t, a.group = new at(), a._uid = "brushController_" + LH++, D(BH, function(n, i) {
20859      this._handlers[i] = $(n, this);
20860    }, a), a;
20861  }
20862  return e.prototype.enableBrush = function(t) {
20863    return this._brushType && this._doDisableBrush(), t.brushType && this._doEnableBrush(t), this;
20864  }, e.prototype._doEnableBrush = function(t) {
20865    var a = this._zr;
20866    this._enableGlobalPan || SG(a, Ix, this._uid), D(this._handlers, function(n, i) {
20867      a.on(i, n);
20868    }), this._brushType = t.brushType, this._brushOption = ut(rt(Lx), t, true);
20869  }, e.prototype._doDisableBrush = function() {
20870    var t = this._zr;
20871    xG(t, Ix, this._uid), D(this._handlers, function(a, n) {
20872      t.off(n, a);
20873    }), this._brushType = this._brushOption = null;
20874  }, e.prototype.setPanels = function(t) {
20875    if (t && t.length) {
20876      var a = this._panels = {};
20877      D(t, function(n) {
20878        a[n.panelId] = rt(n);
20879      });
20880    } else this._panels = null;
20881    return this;
20882  }, e.prototype.mount = function(t) {
20883    t = t || {}, this._enableGlobalPan = t.enableGlobalPan;
20884    var a = this.group;
20885    return this._zr.add(a), a.attr({ x: t.x || 0, y: t.y || 0, rotation: t.rotation || 0, scaleX: t.scaleX || 1, scaleY: t.scaleY || 1 }), this._transform = a.getLocalTransform(), this;
20886  }, e.prototype.updateCovers = function(t) {
20887    t = G(t, function(v) {
20888      return ut(rt(Lx), v, true);
20889    });
20890    var a = "\0-brush-index-", n = this._covers, i = this._covers = [], o = this, s = this._creatingCover;
20891    return new Sa(n, t, u, l).add(f).update(f).remove(h).execute(), this;
20892    function l(v, c) {
20893      return (v.id != null ? v.id : a + c) + "-" + v.brushType;
20894    }
20895    function u(v, c) {
20896      return l(v.__brushOption, c);
20897    }
20898    function f(v, c) {
20899      var p = t[v];
20900      if (c != null && n[c] === s) i[v] = n[c];
20901      else {
20902        var d = i[v] = c != null ? (n[c].__brushOption = p, n[c]) : dI(o, pI(o, p));
20903        dm(o, d);
20904      }
20905    }
20906    function h(v) {
20907      n[v] !== s && o.group.remove(n[v]);
20908    }
20909  }, e.prototype.unmount = function() {
20910    return this.enableBrush(false), rg(this), this._zr.remove(this.group), this;
20911  }, e.prototype.dispose = function() {
20912    this.unmount(), this.off();
20913  }, e;
20914}(cr);
20915function pI(r, e) {
20916  var t = iv[e.brushType].createCover(r, e);
20917  return t.__brushOption = e, yI(t, e), r.group.add(t), t;
20918}
20919function dI(r, e) {
20920  var t = gm(e);
20921  return t.endCreating && (t.endCreating(r, e), yI(e, e.__brushOption)), e;
20922}
20923function gI(r, e) {
20924  var t = e.__brushOption;
20925  gm(e).updateCoverShape(r, e, t.range, t);
20926}
20927function yI(r, e) {
20928  var t = e.z;
20929  t == null && (t = CH), r.traverse(function(a) {
20930    a.z = t, a.z2 = t;
20931  });
20932}
20933function dm(r, e) {
20934  gm(e).updateCommon(r, e), gI(r, e);
20935}
20936function gm(r) {
20937  return iv[r.__brushOption.brushType];
20938}
20939function ym(r, e, t) {
20940  var a = r._panels;
20941  if (!a) return gi;
20942  var n, i = r._transform;
20943  return D(a, function(o) {
20944    o.isTargetByCursor(e, t, i) && (n = o);
20945  }), n;
20946}
20947function mI(r, e) {
20948  var t = r._panels;
20949  if (!t) return gi;
20950  var a = e.__brushOption.panelId;
20951  return a != null ? t[a] : gi;
20952}
20953function rg(r) {
20954  var e = r._covers, t = e.length;
20955  return D(e, function(a) {
20956    r.group.remove(a);
20957  }, r), e.length = 0, !!t;
20958}
20959function yi(r, e) {
20960  var t = G(r._covers, function(a) {
20961    var n = a.__brushOption, i = rt(n.range);
20962    return { brushType: n.brushType, panelId: n.panelId, range: i };
20963  });
20964  r.trigger("brush", { areas: t, isEnd: !!e.isEnd, removeOnClick: !!e.removeOnClick });
20965}
20966function PH(r) {
20967  var e = r._track;
20968  if (!e.length) return false;
20969  var t = e[e.length - 1], a = e[0], n = t[0] - a[0], i = t[1] - a[1], o = TH(n * n + i * i, 0.5);
20970  return o > AH;
20971}
20972function _I(r) {
20973  var e = r.length - 1;
20974  return e < 0 && (e = 0), [r[0], r[e]];
20975}
20976function SI(r, e, t, a) {
20977  var n = new at();
20978  return n.add(new xt({ name: "main", style: mm(t), silent: true, draggable: true, cursor: "move", drift: lt(Px, r, e, n, ["n", "s", "w", "e"]), ondragend: lt(yi, e, { isEnd: true }) })), D(a, function(i) {
20979    n.add(new xt({ name: i.join(""), style: { opacity: 0 }, draggable: true, silent: true, invisible: true, drift: lt(Px, r, e, n, i), ondragend: lt(yi, e, { isEnd: true }) }));
20980  }), n;
20981}
20982function xI(r, e, t, a) {
20983  var n = a.brushStyle.lineWidth || 0, i = To(n, DH), o = t[0][0], s = t[1][0], l = o - n / 2, u = s - n / 2, f = t[0][1], h = t[1][1], v = f - i + n / 2, c = h - i + n / 2, p = f - o, d = h - s, g = p + n, y = d + n;
20984  sa(r, e, "main", o, s, p, d), a.transformable && (sa(r, e, "w", l, u, i, y), sa(r, e, "e", v, u, i, y), sa(r, e, "n", l, u, g, i), sa(r, e, "s", l, c, g, i), sa(r, e, "nw", l, u, i, i), sa(r, e, "ne", v, u, i, i), sa(r, e, "sw", l, c, i, i), sa(r, e, "se", v, c, i, i));
20985}
20986function ag(r, e) {
20987  var t = e.__brushOption, a = t.transformable, n = e.childAt(0);
20988  n.useStyle(mm(t)), n.attr({ silent: !a, cursor: a ? "move" : "default" }), D([["w"], ["e"], ["n"], ["s"], ["s", "e"], ["s", "w"], ["n", "e"], ["n", "w"]], function(i) {
20989    var o = e.childOfName(i.join("")), s = i.length === 1 ? ng(r, i[0]) : EH(r, i);
20990    o && o.attr({ silent: !a, invisible: !a, cursor: a ? IH[s] + "-resize" : null });
20991  });
20992}
20993function sa(r, e, t, a, n, i, o) {
20994  var s = e.childOfName(t);
20995  s && s.setShape(OH(_m(r, e, [[a, n], [a + i, n + o]])));
20996}
20997function mm(r) {
20998  return Q({ strokeNoScale: true }, r.brushStyle);
20999}
21000function bI(r, e, t, a) {
21001  var n = [Cl(r, t), Cl(e, a)], i = [To(r, t), To(e, a)];
21002  return [[n[0], i[0]], [n[1], i[1]]];
21003}
21004function RH(r) {
21005  return qa(r.group);
21006}
21007function ng(r, e) {
21008  var t = { w: "left", e: "right", n: "top", s: "bottom" }, a = { left: "w", right: "e", top: "n", bottom: "s" }, n = Bh(t[e], RH(r));
21009  return a[n];
21010}
21011function EH(r, e) {
21012  var t = [ng(r, e[0]), ng(r, e[1])];
21013  return (t[0] === "e" || t[0] === "w") && t.reverse(), t.join("");
21014}
21015function Px(r, e, t, a, n, i) {
21016  var o = t.__brushOption, s = r.toRectRange(o.range), l = wI(e, n, i);
21017  D(a, function(u) {
21018    var f = MH[u];
21019    s[f[0]][f[1]] += l[f[0]];
21020  }), o.range = r.fromRectRange(bI(s[0][0], s[1][0], s[0][1], s[1][1])), dm(e, t), yi(e, { isEnd: false });
21021}
21022function kH(r, e, t, a) {
21023  var n = e.__brushOption.range, i = wI(r, t, a);
21024  D(n, function(o) {
21025    o[0] += i[0], o[1] += i[1];
21026  }), dm(r, e), yi(r, { isEnd: false });
21027}
21028function wI(r, e, t) {
21029  var a = r.group, n = a.transformCoordToLocal(e, t), i = a.transformCoordToLocal(0, 0);
21030  return [n[0] - i[0], n[1] - i[1]];
21031}
21032function _m(r, e, t) {
21033  var a = mI(r, e);
21034  return a && a !== gi ? a.clipPath(t, r._transform) : rt(t);
21035}
21036function OH(r) {
21037  var e = Cl(r[0][0], r[1][0]), t = Cl(r[0][1], r[1][1]), a = To(r[0][0], r[1][0]), n = To(r[0][1], r[1][1]);
21038  return { x: e, y: t, width: a - e, height: n - t };
21039}
21040function NH(r, e, t) {
21041  if (!(!r._brushType || zH(r, e.offsetX, e.offsetY))) {
21042    var a = r._zr, n = r._covers, i = ym(r, e, t);
21043    if (!r._dragging) for (var o = 0; o < n.length; o++) {
21044      var s = n[o].__brushOption;
21045      if (i && (i === gi || s.panelId === i.panelId) && iv[s.brushType].contain(n[o], t[0], t[1])) return;
21046    }
21047    i && a.setCursorStyle("crosshair");
21048  }
21049}
21050function ig(r) {
21051  var e = r.event;
21052  e.preventDefault && e.preventDefault();
21053}
21054function og(r, e, t) {
21055  return r.childOfName("main").contain(e, t);
21056}
21057function TI(r, e, t, a) {
21058  var n = r._creatingCover, i = r._creatingPanel, o = r._brushOption, s;
21059  if (r._track.push(t.slice()), PH(r) || n) {
21060    if (i && !n) {
21061      o.brushMode === "single" && rg(r);
21062      var l = rt(o);
21063      l.brushType = Rx(l.brushType, i), l.panelId = i === gi ? null : i.panelId, n = r._creatingCover = pI(r, l), r._covers.push(n);
21064    }
21065    if (n) {
21066      var u = iv[Rx(r._brushType, i)], f = n.__brushOption;
21067      f.range = u.getCreatingRange(_m(r, n, r._track)), a && (dI(r, n), u.updateCommon(r, n)), gI(r, n), s = { isEnd: a };
21068    }
21069  } else a && o.brushMode === "single" && o.removeOnClick && ym(r, e, t) && rg(r) && (s = { isEnd: a, removeOnClick: true });
21070  return s;
21071}
21072function Rx(r, e) {
21073  return r === "auto" ? e.defaultBrushType : r;
21074}
21075var BH = { mousedown: function(r) {
21076  if (this._dragging) Ex(this, r);
21077  else if (!r.target || !r.target.draggable) {
21078    ig(r);
21079    var e = this.group.transformCoordToLocal(r.offsetX, r.offsetY);
21080    this._creatingCover = null;
21081    var t = this._creatingPanel = ym(this, r, e);
21082    t && (this._dragging = true, this._track = [e.slice()]);
21083  }
21084}, mousemove: function(r) {
21085  var e = r.offsetX, t = r.offsetY, a = this.group.transformCoordToLocal(e, t);
21086  if (NH(this, r, a), this._dragging) {
21087    ig(r);
21088    var n = TI(this, r, a, false);
21089    n && yi(this, n);
21090  }
21091}, mouseup: function(r) {
21092  Ex(this, r);
21093} };
21094function Ex(r, e) {
21095  if (r._dragging) {
21096    ig(e);
21097    var t = e.offsetX, a = e.offsetY, n = r.group.transformCoordToLocal(t, a), i = TI(r, e, n, true);
21098    r._dragging = false, r._track = [], r._creatingCover = null, i && yi(r, i);
21099  }
21100}
21101function zH(r, e, t) {
21102  var a = r._zr;
21103  return e < 0 || e > a.getWidth() || t < 0 || t > a.getHeight();
21104}
21105var iv = { lineX: kx(0), lineY: kx(1), rect: { createCover: function(r, e) {
21106  function t(a) {
21107    return a;
21108  }
21109  return SI({ toRectRange: t, fromRectRange: t }, r, e, [["w"], ["e"], ["n"], ["s"], ["s", "e"], ["s", "w"], ["n", "e"], ["n", "w"]]);
21110}, getCreatingRange: function(r) {
21111  var e = _I(r);
21112  return bI(e[1][0], e[1][1], e[0][0], e[0][1]);
21113}, updateCoverShape: function(r, e, t, a) {
21114  xI(r, e, t, a);
21115}, updateCommon: ag, contain: og }, polygon: { createCover: function(r, e) {
21116  var t = new at();
21117  return t.add(new De({ name: "main", style: mm(e), silent: true })), t;
21118}, getCreatingRange: function(r) {
21119  return r;
21120}, endCreating: function(r, e) {
21121  e.remove(e.childAt(0)), e.add(new Ce({ name: "main", draggable: true, drift: lt(kH, r, e), ondragend: lt(yi, r, { isEnd: true }) }));
21122}, updateCoverShape: function(r, e, t, a) {
21123  e.childAt(0).setShape({ points: _m(r, e, t) });
21124}, updateCommon: ag, contain: og } };
21125function kx(r) {
21126  return { createCover: function(e, t) {
21127    return SI({ toRectRange: function(a) {
21128      var n = [a, [0, 100]];
21129      return r && n.reverse(), n;
21130    }, fromRectRange: function(a) {
21131      return a[r];
21132    } }, e, t, [[["w"], ["e"]], [["n"], ["s"]]][r]);
21133  }, getCreatingRange: function(e) {
21134    var t = _I(e), a = Cl(t[0][r], t[1][r]), n = To(t[0][r], t[1][r]);
21135    return [a, n];
21136  }, updateCoverShape: function(e, t, a, n) {
21137    var i, o = mI(e, t);
21138    if (o !== gi && o.getLinearBrushOtherExtent) i = o.getLinearBrushOtherExtent(r);
21139    else {
21140      var s = e._zr;
21141      i = [0, [s.getWidth(), s.getHeight()][1 - r]];
21142    }
21143    var l = [a, i];
21144    r && l.reverse(), xI(e, t, l, n);
21145  }, updateCommon: ag, contain: og };
21146}
21147function CI(r) {
21148  return r = Sm(r), function(e) {
21149    return oy(e, r);
21150  };
21151}
21152function AI(r, e) {
21153  return r = Sm(r), function(t) {
21154    var a = e ?? t, n = a ? r.width : r.height, i = a ? r.x : r.y;
21155    return [i, i + (n || 0)];
21156  };
21157}
21158function DI(r, e, t) {
21159  var a = Sm(r);
21160  return function(n, i) {
21161    return a.contain(i[0], i[1]) && !ev(n, e, t);
21162  };
21163}
21164function Sm(r) {
21165  return ht.create(r);
21166}
21167var VH = ["axisLine", "axisTickLabel", "axisName"], GH = function(r) {
21168  N(e, r);
21169  function e() {
21170    var t = r !== null && r.apply(this, arguments) || this;
21171    return t.type = e.type, t;
21172  }
21173  return e.prototype.init = function(t, a) {
21174    r.prototype.init.apply(this, arguments), (this._brushController = new pm(a.getZr())).on("brush", $(this._onBrush, this));
21175  }, e.prototype.render = function(t, a, n, i) {
21176    if (!FH(t, a, i)) {
21177      this.axisModel = t, this.api = n, this.group.removeAll();
21178      var o = this._axisGroup;
21179      if (this._axisGroup = new at(), this.group.add(this._axisGroup), !!t.get("show")) {
21180        var s = WH(t, a), l = s.coordinateSystem, u = t.getAreaSelectStyle(), f = u.width, h = t.axis.dim, v = l.getAxisLayout(h), c = z({ strokeContainThreshold: f }, v), p = new Ee(t, c);
21181        D(VH, p.add, p), this._axisGroup.add(p.getGroup()), this._refreshBrushController(c, u, t, s, f, n), Vl(o, this._axisGroup, t);
21182      }
21183    }
21184  }, e.prototype._refreshBrushController = function(t, a, n, i, o, s) {
21185    var l = n.axis.getExtent(), u = l[1] - l[0], f = Math.min(30, Math.abs(u) * 0.1), h = ht.create({ x: l[0], y: -o / 2, width: u, height: o });
21186    h.x -= f, h.width += 2 * f, this._brushController.mount({ enableGlobalPan: true, rotation: t.rotation, x: t.position[0], y: t.position[1] }).setPanels([{ panelId: "pl", clipPath: CI(h), isTargetByCursor: DI(h, s, i), getLinearBrushOtherExtent: AI(h, 0) }]).enableBrush({ brushType: "lineX", brushStyle: a, removeOnClick: true }).updateCovers(HH(n));
21187  }, e.prototype._onBrush = function(t) {
21188    var a = t.areas, n = this.axisModel, i = n.axis, o = G(a, function(s) {
21189      return [i.coordToData(s.range[0], true), i.coordToData(s.range[1], true)];
21190    });
21191    (!n.option.realtime === t.isEnd || t.removeOnClick) && this.api.dispatchAction({ type: "axisAreaSelect", parallelAxisId: n.id, intervals: o });
21192  }, e.prototype.dispose = function() {
21193    this._brushController.dispose();
21194  }, e.type = "parallelAxis", e;
21195}(Vt);
21196function FH(r, e, t) {
21197  return t && t.type === "axisAreaSelect" && e.findComponents({ mainType: "parallelAxis", query: t })[0] === r;
21198}
21199function HH(r) {
21200  var e = r.axis;
21201  return G(r.activeIntervals, function(t) {
21202    return { brushType: "lineX", panelId: "pl", range: [e.dataToCoord(t[0], true), e.dataToCoord(t[1], true)] };
21203  });
21204}
21205function WH(r, e) {
21206  return e.getComponent("parallel", r.get("parallelIndex"));
21207}
21208var UH = { type: "axisAreaSelect", event: "axisAreaSelected" };
21209function YH(r) {
21210  r.registerAction(UH, function(e, t) {
21211    t.eachComponent({ mainType: "parallelAxis", query: e }, function(a) {
21212      a.axis.model.setActiveIntervals(e.intervals);
21213    });
21214  }), r.registerAction("parallelAxisExpand", function(e, t) {
21215    t.eachComponent({ mainType: "parallel", query: e }, function(a) {
21216      a.setAxisExpand(e);
21217    });
21218  });
21219}
21220var $H = { type: "value", areaSelectStyle: { width: 20, borderWidth: 1, borderColor: "rgba(160,197,232)", color: "rgba(160,197,232)", opacity: 0.3 }, realtime: true, z: 10 };
21221function MI(r) {
21222  r.registerComponentView(cH), r.registerComponentModel(dH), r.registerCoordinateSystem("parallel", wH), r.registerPreprocessor(uH), r.registerComponentModel(eg), r.registerComponentView(GH), wo(r, "parallel", eg, $H), YH(r);
21223}
21224function XH(r) {
21225  pt(MI), r.registerChartView(eH), r.registerSeriesModel(nH), r.registerVisual(r.PRIORITY.VISUAL.BRUSH, lH);
21226}
21227var ZH = /* @__PURE__ */ function() {
21228  function r() {
21229    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;
21230  }
21231  return r;
21232}(), qH = function(r) {
21233  N(e, r);
21234  function e(t) {
21235    return r.call(this, t) || this;
21236  }
21237  return e.prototype.getDefaultShape = function() {
21238    return new ZH();
21239  }, e.prototype.buildPath = function(t, a) {
21240    var n = a.extent;
21241    t.moveTo(a.x1, a.y1), t.bezierCurveTo(a.cpx1, a.cpy1, a.cpx2, a.cpy2, a.x2, a.y2), a.orient === "vertical" ? (t.lineTo(a.x2 + n, a.y2), t.bezierCurveTo(a.cpx2 + n, a.cpy2, a.cpx1 + n, a.cpy1, a.x1 + n, a.y1)) : (t.lineTo(a.x2, a.y2 + n), t.bezierCurveTo(a.cpx2, a.cpy2 + n, a.cpx1, a.cpy1 + n, a.x1, a.y1 + n)), t.closePath();
21242  }, e.prototype.highlight = function() {
21243    ma(this);
21244  }, e.prototype.downplay = function() {
21245    _a(this);
21246  }, e;
21247}(mt), KH = function(r) {
21248  N(e, r);
21249  function e() {
21250    var t = r !== null && r.apply(this, arguments) || this;
21251    return t.type = e.type, t._focusAdjacencyDisabled = false, t;
21252  }
21253  return e.prototype.render = function(t, a, n) {
21254    var i = this, o = t.getGraph(), s = this.group, l = t.layoutInfo, u = l.width, f = l.height, h = t.getData(), v = t.getData("edge"), c = t.get("orient");
21255    this._model = t, s.removeAll(), s.x = l.x, s.y = l.y, o.eachEdge(function(p) {
21256      var d = new qH(), g = it(d);
21257      g.dataIndex = p.dataIndex, g.seriesIndex = t.seriesIndex, g.dataType = "edge";
21258      var y = p.getModel(), m = y.getModel("lineStyle"), _ = m.get("curveness"), S = p.node1.getLayout(), b = p.node1.getModel(), x = b.get("localX"), w = b.get("localY"), T = p.node2.getLayout(), C = p.node2.getModel(), A = C.get("localX"), M = C.get("localY"), I = p.getLayout(), L, P, R, E, O, k, B, F;
21259      d.shape.extent = Math.max(1, I.dy), d.shape.orient = c, c === "vertical" ? (L = (x != null ? x * u : S.x) + I.sy, P = (w != null ? w * f : S.y) + S.dy, R = (A != null ? A * u : T.x) + I.ty, E = M != null ? M * f : T.y, O = L, k = P * (1 - _) + E * _, B = R, F = P * _ + E * (1 - _)) : (L = (x != null ? x * u : S.x) + S.dx, P = (w != null ? w * f : S.y) + I.sy, R = A != null ? A * u : T.x, E = (M != null ? M * f : T.y) + I.ty, O = L * (1 - _) + R * _, k = P, B = L * _ + R * (1 - _), F = E), d.setShape({ x1: L, y1: P, x2: R, y2: E, cpx1: O, cpy1: k, cpx2: B, cpy2: F }), d.useStyle(m.getItemStyle()), Ox(d.style, c, p);
21260      var H = "" + y.get("value"), U = se(y, "edgeLabel");
21261      de(d, U, { labelFetcher: { getFormattedLabel: function(nt, It, Yt, ct, et, dt) {
21262        return t.getFormattedLabel(nt, It, "edge", ct, Ar(et, U.normal && U.normal.get("formatter"), H), dt);
21263      } }, labelDataIndex: p.dataIndex, defaultText: H }), d.setTextConfig({ position: "inside" });
21264      var K = y.getModel("emphasis");
21265      pe(d, y, "lineStyle", function(nt) {
21266        var It = nt.getItemStyle();
21267        return Ox(It, c, p), It;
21268      }), s.add(d), v.setItemGraphicEl(p.dataIndex, d);
21269      var J = K.get("focus");
21270      Wt(d, J === "adjacency" ? p.getAdjacentDataIndices() : J === "trajectory" ? p.getTrajectoryDataIndices() : J, K.get("blurScope"), K.get("disabled"));
21271    }), o.eachNode(function(p) {
21272      var d = p.getLayout(), g = p.getModel(), y = g.get("localX"), m = g.get("localY"), _ = g.getModel("emphasis"), S = g.get(["itemStyle", "borderRadius"]) || 0, b = new xt({ shape: { x: y != null ? y * u : d.x, y: m != null ? m * f : d.y, width: d.dx, height: d.dy, r: S }, style: g.getModel("itemStyle").getItemStyle(), z2: 10 });
21273      de(b, se(g), { labelFetcher: { getFormattedLabel: function(w, T) {
21274        return t.getFormattedLabel(w, T, "node");
21275      } }, labelDataIndex: p.dataIndex, defaultText: p.id }), b.disableLabelAnimation = true, b.setStyle("fill", p.getVisual("color")), b.setStyle("decal", p.getVisual("style").decal), pe(b, g), s.add(b), h.setItemGraphicEl(p.dataIndex, b), it(b).dataType = "node";
21276      var x = _.get("focus");
21277      Wt(b, x === "adjacency" ? p.getAdjacentDataIndices() : x === "trajectory" ? p.getTrajectoryDataIndices() : x, _.get("blurScope"), _.get("disabled"));
21278    }), h.eachItemGraphicEl(function(p, d) {
21279      var g = h.getItemModel(d);
21280      g.get("draggable") && (p.drift = function(y, m) {
21281        i._focusAdjacencyDisabled = true, this.shape.x += y, this.shape.y += m, this.dirty(), n.dispatchAction({ type: "dragNode", seriesId: t.id, dataIndex: h.getRawIndex(d), localX: this.shape.x / u, localY: this.shape.y / f });
21282      }, p.ondragend = function() {
21283        i._focusAdjacencyDisabled = false;
21284      }, p.draggable = true, p.cursor = "move");
21285    }), !this._data && t.isAnimationEnabled() && s.setClipPath(jH(s.getBoundingRect(), t, function() {
21286      s.removeClipPath();
21287    })), this._data = t.getData();
21288  }, e.prototype.dispose = function() {
21289  }, e.type = "sankey", e;
21290}(Pt);
21291function Ox(r, e, t) {
21292  switch (r.fill) {
21293    case "source":
21294      r.fill = t.node1.getVisual("color"), r.decal = t.node1.getVisual("style").decal;
21295      break;
21296    case "target":
21297      r.fill = t.node2.getVisual("color"), r.decal = t.node2.getVisual("style").decal;
21298      break;
21299    case "gradient":
21300      var a = t.node1.getVisual("color"), n = t.node2.getVisual("color");
21301      Y(a) && Y(n) && (r.fill = new Ro(0, 0, +(e === "horizontal"), +(e === "vertical"), [{ color: a, offset: 0 }, { color: n, offset: 1 }]));
21302  }
21303}
21304function jH(r, e, t) {
21305  var a = new xt({ shape: { x: r.x - 10, y: r.y - 10, width: 0, height: r.height + 20 } });
21306  return Gt(a, { shape: { width: r.width + 20 } }, e, t), a;
21307}
21308var JH = function(r) {
21309  N(e, r);
21310  function e() {
21311    var t = r !== null && r.apply(this, arguments) || this;
21312    return t.type = e.type, t;
21313  }
21314  return e.prototype.getInitialData = function(t, a) {
21315    var n = t.edges || t.links || [], i = t.data || t.nodes || [], o = t.levels || [];
21316    this.levelModels = [];
21317    for (var s = this.levelModels, l = 0; l < o.length; l++) o[l].depth != null && o[l].depth >= 0 && (s[o[l].depth] = new At(o[l], this, a));
21318    var u = fI(i, n, this, true, f);
21319    return u.data;
21320    function f(h, v) {
21321      h.wrapMethod("getItemModel", function(c, p) {
21322        var d = c.parentModel, g = d.getData().getItemLayout(p);
21323        if (g) {
21324          var y = g.depth, m = d.levelModels[y];
21325          m && (c.parentModel = m);
21326        }
21327        return c;
21328      }), v.wrapMethod("getItemModel", function(c, p) {
21329        var d = c.parentModel, g = d.getGraph().getEdgeByIndex(p), y = g.node1.getLayout();
21330        if (y) {
21331          var m = y.depth, _ = d.levelModels[m];
21332          _ && (c.parentModel = _);
21333        }
21334        return c;
21335      });
21336    }
21337  }, e.prototype.setNodePosition = function(t, a) {
21338    var n = this.option.data || this.option.nodes, i = n[t];
21339    i.localX = a[0], i.localY = a[1];
21340  }, e.prototype.getGraph = function() {
21341    return this.getData().graph;
21342  }, e.prototype.getEdgeData = function() {
21343    return this.getGraph().edgeData;
21344  }, e.prototype.formatTooltip = function(t, a, n) {
21345    function i(c) {
21346      return isNaN(c) || c == null;
21347    }
21348    if (n === "edge") {
21349      var o = this.getDataParams(t, n), s = o.data, l = o.value, u = s.source + " -- " + s.target;
21350      return le("nameValue", { name: u, value: l, noValue: i(l) });
21351    } else {
21352      var f = this.getGraph().getNodeByIndex(t), h = f.getLayout().value, v = this.getDataParams(t, n).data.name;
21353      return le("nameValue", { name: v != null ? v + "" : null, value: h, noValue: i(h) });
21354    }
21355  }, e.prototype.optionUpdated = function() {
21356  }, e.prototype.getDataParams = function(t, a) {
21357    var n = r.prototype.getDataParams.call(this, t, a);
21358    if (n.value == null && a === "node") {
21359      var i = this.getGraph().getNodeByIndex(t), o = i.getLayout().value;
21360      n.value = o;
21361    }
21362    return n;
21363  }, 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: true, layoutIterations: 32, label: { show: true, position: "right", fontSize: 12 }, edgeLabel: { show: false, fontSize: 12 }, levels: [], nodeAlign: "justify", lineStyle: { color: "#314656", opacity: 0.2, curveness: 0.5 }, emphasis: { label: { show: true }, lineStyle: { opacity: 0.5 } }, select: { itemStyle: { borderColor: "#212121" } }, animationEasing: "linear", animationDuration: 1e3 }, e;
21364}(Et);
21365function QH(r, e) {
21366  r.eachSeriesByType("sankey", function(t) {
21367    var a = t.get("nodeWidth"), n = t.get("nodeGap"), i = t4(t, e);
21368    t.layoutInfo = i;
21369    var o = i.width, s = i.height, l = t.getGraph(), u = l.nodes, f = l.edges;
21370    r4(u);
21371    var h = Ct(u, function(d) {
21372      return d.getLayout().value === 0;
21373    }), v = h.length !== 0 ? 0 : t.get("layoutIterations"), c = t.get("orient"), p = t.get("nodeAlign");
21374    e4(u, f, a, n, o, s, v, c, p);
21375  });
21376}
21377function t4(r, e) {
21378  return Qt(r.getBoxLayoutParams(), { width: e.getWidth(), height: e.getHeight() });
21379}
21380function e4(r, e, t, a, n, i, o, s, l) {
21381  a4(r, e, t, n, i, s, l), s4(r, e, i, n, a, o, s), g4(r, s);
21382}
21383function r4(r) {
21384  D(r, function(e) {
21385    var t = Ja(e.outEdges, ih), a = Ja(e.inEdges, ih), n = e.getValue() || 0, i = Math.max(t, a, n);
21386    e.setLayout({ value: i }, true);
21387  });
21388}
21389function a4(r, e, t, a, n, i, o) {
21390  for (var s = [], l = [], u = [], f = [], h = 0, v = 0; v < e.length; v++) s[v] = 1;
21391  for (var v = 0; v < r.length; v++) l[v] = r[v].inEdges.length, l[v] === 0 && u.push(r[v]);
21392  for (var c = -1; u.length; ) {
21393    for (var p = 0; p < u.length; p++) {
21394      var d = u[p], g = d.hostGraph.data.getRawDataItem(d.dataIndex), y = g.depth != null && g.depth >= 0;
21395      y && g.depth > c && (c = g.depth), d.setLayout({ depth: y ? g.depth : h }, true), i === "vertical" ? d.setLayout({ dy: t }, true) : d.setLayout({ dx: t }, true);
21396      for (var m = 0; m < d.outEdges.length; m++) {
21397        var _ = d.outEdges[m], S = e.indexOf(_);
21398        s[S] = 0;
21399        var b = _.node2, x = r.indexOf(b);
21400        --l[x] === 0 && f.indexOf(b) < 0 && f.push(b);
21401      }
21402    }
21403    ++h, u = f, f = [];
21404  }
21405  for (var v = 0; v < s.length; v++) if (s[v] === 1) throw new Error("Sankey is a DAG, the original data has cycle!");
21406  var w = c > h - 1 ? c : h - 1;
21407  o && o !== "left" && n4(r, o, i, w);
21408  var T = i === "vertical" ? (n - t) / w : (a - t) / w;
21409  o4(r, T, i);
21410}
21411function II(r) {
21412  var e = r.hostGraph.data.getRawDataItem(r.dataIndex);
21413  return e.depth != null && e.depth >= 0;
21414}
21415function n4(r, e, t, a) {
21416  if (e === "right") {
21417    for (var n = [], i = r, o = 0; i.length; ) {
21418      for (var s = 0; s < i.length; s++) {
21419        var l = i[s];
21420        l.setLayout({ skNodeHeight: o }, true);
21421        for (var u = 0; u < l.inEdges.length; u++) {
21422          var f = l.inEdges[u];
21423          n.indexOf(f.node1) < 0 && n.push(f.node1);
21424        }
21425      }
21426      i = n, n = [], ++o;
21427    }
21428    D(r, function(h) {
21429      II(h) || h.setLayout({ depth: Math.max(0, a - h.getLayout().skNodeHeight) }, true);
21430    });
21431  } else e === "justify" && i4(r, a);
21432}
21433function i4(r, e) {
21434  D(r, function(t) {
21435    !II(t) && !t.outEdges.length && t.setLayout({ depth: e }, true);
21436  });
21437}
21438function o4(r, e, t) {
21439  D(r, function(a) {
21440    var n = a.getLayout().depth * e;
21441    t === "vertical" ? a.setLayout({ y: n }, true) : a.setLayout({ x: n }, true);
21442  });
21443}
21444function s4(r, e, t, a, n, i, o) {
21445  var s = l4(r, o);
21446  u4(s, e, t, a, n, o), rp(s, n, t, a, o);
21447  for (var l = 1; i > 0; i--) l *= 0.99, f4(s, l, o), rp(s, n, t, a, o), d4(s, l, o), rp(s, n, t, a, o);
21448}
21449function l4(r, e) {
21450  var t = [], a = e === "vertical" ? "y" : "x", n = od(r, function(i) {
21451    return i.getLayout()[a];
21452  });
21453  return n.keys.sort(function(i, o) {
21454    return i - o;
21455  }), D(n.keys, function(i) {
21456    t.push(n.buckets.get(i));
21457  }), t;
21458}
21459function u4(r, e, t, a, n, i) {
21460  var o = 1 / 0;
21461  D(r, function(s) {
21462    var l = s.length, u = 0;
21463    D(s, function(h) {
21464      u += h.getLayout().value;
21465    });
21466    var f = i === "vertical" ? (a - (l - 1) * n) / u : (t - (l - 1) * n) / u;
21467    f < o && (o = f);
21468  }), D(r, function(s) {
21469    D(s, function(l, u) {
21470      var f = l.getLayout().value * o;
21471      i === "vertical" ? (l.setLayout({ x: u }, true), l.setLayout({ dx: f }, true)) : (l.setLayout({ y: u }, true), l.setLayout({ dy: f }, true));
21472    });
21473  }), D(e, function(s) {
21474    var l = +s.getValue() * o;
21475    s.setLayout({ dy: l }, true);
21476  });
21477}
21478function rp(r, e, t, a, n) {
21479  var i = n === "vertical" ? "x" : "y";
21480  D(r, function(o) {
21481    o.sort(function(d, g) {
21482      return d.getLayout()[i] - g.getLayout()[i];
21483    });
21484    for (var s, l, u, f = 0, h = o.length, v = n === "vertical" ? "dx" : "dy", c = 0; c < h; c++) l = o[c], u = f - l.getLayout()[i], u > 0 && (s = l.getLayout()[i] + u, n === "vertical" ? l.setLayout({ x: s }, true) : l.setLayout({ y: s }, true)), f = l.getLayout()[i] + l.getLayout()[v] + e;
21485    var p = n === "vertical" ? a : t;
21486    if (u = f - e - p, u > 0) {
21487      s = l.getLayout()[i] - u, n === "vertical" ? l.setLayout({ x: s }, true) : l.setLayout({ y: s }, true), f = s;
21488      for (var c = h - 2; c >= 0; --c) l = o[c], u = l.getLayout()[i] + l.getLayout()[v] + e - f, u > 0 && (s = l.getLayout()[i] - u, n === "vertical" ? l.setLayout({ x: s }, true) : l.setLayout({ y: s }, true)), f = l.getLayout()[i];
21489    }
21490  });
21491}
21492function f4(r, e, t) {
21493  D(r.slice().reverse(), function(a) {
21494    D(a, function(n) {
21495      if (n.outEdges.length) {
21496        var i = Ja(n.outEdges, h4, t) / Ja(n.outEdges, ih);
21497        if (isNaN(i)) {
21498          var o = n.outEdges.length;
21499          i = o ? Ja(n.outEdges, v4, t) / o : 0;
21500        }
21501        if (t === "vertical") {
21502          var s = n.getLayout().x + (i - nn(n, t)) * e;
21503          n.setLayout({ x: s }, true);
21504        } else {
21505          var l = n.getLayout().y + (i - nn(n, t)) * e;
21506          n.setLayout({ y: l }, true);
21507        }
21508      }
21509    });
21510  });
21511}
21512function h4(r, e) {
21513  return nn(r.node2, e) * r.getValue();
21514}
21515function v4(r, e) {
21516  return nn(r.node2, e);
21517}
21518function c4(r, e) {
21519  return nn(r.node1, e) * r.getValue();
21520}
21521function p4(r, e) {
21522  return nn(r.node1, e);
21523}
21524function nn(r, e) {
21525  return e === "vertical" ? r.getLayout().x + r.getLayout().dx / 2 : r.getLayout().y + r.getLayout().dy / 2;
21526}
21527function ih(r) {
21528  return r.getValue();
21529}
21530function Ja(r, e, t) {
21531  for (var a = 0, n = r.length, i = -1; ++i < n; ) {
21532    var o = +e(r[i], t);
21533    isNaN(o) || (a += o);
21534  }
21535  return a;
21536}
21537function d4(r, e, t) {
21538  D(r, function(a) {
21539    D(a, function(n) {
21540      if (n.inEdges.length) {
21541        var i = Ja(n.inEdges, c4, t) / Ja(n.inEdges, ih);
21542        if (isNaN(i)) {
21543          var o = n.inEdges.length;
21544          i = o ? Ja(n.inEdges, p4, t) / o : 0;
21545        }
21546        if (t === "vertical") {
21547          var s = n.getLayout().x + (i - nn(n, t)) * e;
21548          n.setLayout({ x: s }, true);
21549        } else {
21550          var l = n.getLayout().y + (i - nn(n, t)) * e;
21551          n.setLayout({ y: l }, true);
21552        }
21553      }
21554    });
21555  });
21556}
21557function g4(r, e) {
21558  var t = e === "vertical" ? "x" : "y";
21559  D(r, function(a) {
21560    a.outEdges.sort(function(n, i) {
21561      return n.node2.getLayout()[t] - i.node2.getLayout()[t];
21562    }), a.inEdges.sort(function(n, i) {
21563      return n.node1.getLayout()[t] - i.node1.getLayout()[t];
21564    });
21565  }), D(r, function(a) {
21566    var n = 0, i = 0;
21567    D(a.outEdges, function(o) {
21568      o.setLayout({ sy: n }, true), n += o.getLayout().dy;
21569    }), D(a.inEdges, function(o) {
21570      o.setLayout({ ty: i }, true), i += o.getLayout().dy;
21571    });
21572  });
21573}
21574function y4(r) {
21575  r.eachSeriesByType("sankey", function(e) {
21576    var t = e.getGraph(), a = t.nodes, n = t.edges;
21577    if (a.length) {
21578      var i = 1 / 0, o = -1 / 0;
21579      D(a, function(s) {
21580        var l = s.getLayout().value;
21581        l < i && (i = l), l > o && (o = l);
21582      }), D(a, function(s) {
21583        var l = new oe({ type: "color", mappingMethod: "linear", dataExtent: [i, o], visual: e.get("color") }), u = l.mapValueToVisual(s.getLayout().value), f = s.getModel().get(["itemStyle", "color"]);
21584        f != null ? (s.setVisual("color", f), s.setVisual("style", { fill: f })) : (s.setVisual("color", u), s.setVisual("style", { fill: u }));
21585      });
21586    }
21587    n.length && D(n, function(s) {
21588      var l = s.getModel().get("lineStyle");
21589      s.setVisual("style", l);
21590    });
21591  });
21592}
21593function m4(r) {
21594  r.registerChartView(KH), r.registerSeriesModel(JH), r.registerLayout(QH), r.registerVisual(y4), r.registerAction({ type: "dragNode", event: "dragnode", update: "update" }, function(e, t) {
21595    t.eachComponent({ mainType: "series", subType: "sankey", query: e }, function(a) {
21596      a.setNodePosition(e.dataIndex, [e.localX, e.localY]);
21597    });
21598  });
21599}
21600var LI = function() {
21601  function r() {
21602  }
21603  return r.prototype._hasEncodeRule = function(e) {
21604    var t = this.getEncode();
21605    return t && t.get(e) != null;
21606  }, r.prototype.getInitialData = function(e, t) {
21607    var a, n = t.getComponent("xAxis", this.get("xAxisIndex")), i = t.getComponent("yAxis", this.get("yAxisIndex")), o = n.get("type"), s = i.get("type"), l;
21608    o === "category" ? (e.layout = "horizontal", a = n.getOrdinalMeta(), l = !this._hasEncodeRule("x")) : s === "category" ? (e.layout = "vertical", a = i.getOrdinalMeta(), l = !this._hasEncodeRule("y")) : e.layout = e.layout || "horizontal";
21609    var u = ["x", "y"], f = e.layout === "horizontal" ? 0 : 1, h = this._baseAxisDim = u[f], v = u[1 - f], c = [n, i], p = c[f].get("type"), d = c[1 - f].get("type"), g = e.data;
21610    if (g && l) {
21611      var y = [];
21612      D(g, function(S, b) {
21613        var x;
21614        V(S) ? (x = S.slice(), S.unshift(b)) : V(S.value) ? (x = z({}, S), x.value = x.value.slice(), S.value.unshift(b)) : x = S, y.push(x);
21615      }), e.data = y;
21616    }
21617    var m = this.defaultValueDimensions, _ = [{ name: h, type: Zf(p), ordinalMeta: a, otherDims: { tooltip: false, itemName: 0 }, dimsDef: ["base"] }, { name: v, type: Zf(d), dimsDef: m.slice() }];
21618    return $o(this, { coordDimensions: _, dimensionsCount: m.length + 1, encodeDefaulter: lt(nA, _, this) });
21619  }, r.prototype.getBaseAxis = function() {
21620    var e = this._baseAxisDim;
21621    return this.ecModel.getComponent(e + "Axis", this.get(e + "AxisIndex")).axis;
21622  }, r;
21623}(), PI = function(r) {
21624  N(e, r);
21625  function e() {
21626    var t = r !== null && r.apply(this, arguments) || this;
21627    return t.type = e.type, t.defaultValueDimensions = [{ name: "min", defaultTooltip: true }, { name: "Q1", defaultTooltip: true }, { name: "median", defaultTooltip: true }, { name: "Q3", defaultTooltip: true }, { name: "max", defaultTooltip: true }], t.visualDrawType = "stroke", t;
21628  }
21629  return e.type = "series.boxplot", e.dependencies = ["xAxis", "yAxis", "grid"], e.defaultOption = { z: 2, coordinateSystem: "cartesian2d", legendHoverLink: true, layout: null, boxWidth: [7, 50], itemStyle: { color: "#fff", borderWidth: 1 }, emphasis: { scale: true, itemStyle: { borderWidth: 2, shadowBlur: 5, shadowOffsetX: 1, shadowOffsetY: 1, shadowColor: "rgba(0,0,0,0.2)" } }
21629, animationDuration: 800 }, e;
21630}(Et);
21631Xt(PI, LI, true);
21632var _4 = function(r) {
21633  N(e, r);
21634  function e() {
21635    var t = r !== null && r.apply(this, arguments) || this;
21636    return t.type = e.type, t;
21637  }
21638  return e.prototype.render = function(t, a, n) {
21639    var i = t.getData(), o = this.group, s = this._data;
21640    this._data || o.removeAll();
21641    var l = t.get("layout") === "horizontal" ? 1 : 0;
21642    i.diff(s).add(function(u) {
21643      if (i.hasValue(u)) {
21644        var f = i.getItemLayout(u), h = Nx(f, i, u, l, true);
21645        i.setItemGraphicEl(u, h), o.add(h);
21646      }
21647    }).update(function(u, f) {
21648      var h = s.getItemGraphicEl(f);
21649      if (!i.hasValue(u)) {
21650        o.remove(h);
21651        return;
21652      }
21653      var v = i.getItemLayout(u);
21654      h ? (Er(h), RI(v, h, i, u)) : h = Nx(v, i, u, l), o.add(h), i.setItemGraphicEl(u, h);
21655    }).remove(function(u) {
21656      var f = s.getItemGraphicEl(u);
21657      f && o.remove(f);
21658    }).execute(), this._data = i;
21659  }, e.prototype.remove = function(t) {
21660    var a = this.group, n = this._data;
21661    this._data = null, n && n.eachItemGraphicEl(function(i) {
21662      i && a.remove(i);
21663    });
21664  }, e.type = "boxplot", e;
21665}(Pt), S4 = /* @__PURE__ */ function() {
21666  function r() {
21667  }
21668  return r;
21669}(), x4 = function(r) {
21670  N(e, r);
21671  function e(t) {
21672    var a = r.call(this, t) || this;
21673    return a.type = "boxplotBoxPath", a;
21674  }
21675  return e.prototype.getDefaultShape = function() {
21676    return new S4();
21677  }, e.prototype.buildPath = function(t, a) {
21678    var n = a.points, i = 0;
21679    for (t.moveTo(n[i][0], n[i][1]), i++; i < 4; i++) t.lineTo(n[i][0], n[i][1]);
21680    for (t.closePath(); i < n.length; i++) t.moveTo(n[i][0], n[i][1]), i++, t.lineTo(n[i][0], n[i][1]);
21681  }, e;
21682}(mt);
21683function Nx(r, e, t, a, n) {
21684  var i = r.ends, o = new x4({ shape: { points: n ? b4(i, a, r) : i } });
21685  return RI(r, o, e, t, n), o;
21686}
21687function RI(r, e, t, a, n) {
21688  var i = t.hostModel, o = xi[n ? "initProps" : "updateProps"];
21689  o(e, { shape: { points: r.ends } }, i, a), e.useStyle(t.getItemVisual(a, "style")), e.style.strokeNoScale = true, e.z2 = 100;
21690  var s = t.getItemModel(a), l = s.getModel("emphasis");
21691  pe(e, s), Wt(e, l.get("focus"), l.get("blurScope"), l.get("disabled"));
21692}
21693function b4(r, e, t) {
21694  return G(r, function(a) {
21695    return a = a.slice(), a[e] = t.initBaseline, a;
21696  });
21697}
21698var Ks = D;
21699function w4(r) {
21700  var e = T4(r);
21701  Ks(e, function(t) {
21702    var a = t.seriesModels;
21703    a.length && (C4(t), Ks(a, function(n, i) {
21704      A4(n, t.boxOffsetList[i], t.boxWidthList[i]);
21705    }));
21706  });
21707}
21708function T4(r) {
21709  var e = [], t = [];
21710  return r.eachSeriesByType("boxplot", function(a) {
21711    var n = a.getBaseAxis(), i = vt(t, n);
21712    i < 0 && (i = t.length, t[i] = n, e[i] = { axis: n, seriesModels: [] }), e[i].seriesModels.push(a);
21713  }), e;
21714}
21715function C4(r) {
21716  var e = r.axis, t = r.seriesModels, a = t.length, n = r.boxWidthList = [], i = r.boxOffsetList = [], o = [], s;
21717  if (e.type === "category") s = e.getBandWidth();
21718  else {
21719    var l = 0;
21720    Ks(t, function(p) {
21721      l = Math.max(l, p.getData().count());
21722    });
21723    var u = e.getExtent();
21724    s = Math.abs(u[1] - u[0]) / l;
21725  }
21726  Ks(t, function(p) {
21727    var d = p.get("boxWidth");
21728    V(d) || (d = [d, d]), o.push([W(d[0], s) || 0, W(d[1], s) || 0]);
21729  });
21730  var f = s * 0.8 - 2, h = f / a * 0.3, v = (f - h * (a - 1)) / a, c = v / 2 - f / 2;
21731  Ks(t, function(p, d) {
21732    i.push(c), c += h + v, n.push(Math.min(Math.max(v, o[d][0]), o[d][1]));
21733  });
21734}
21735function A4(r, e, t) {
21736  var a = r.coordinateSystem, n = r.getData(), i = t / 2, o = r.get("layout") === "horizontal" ? 0 : 1, s = 1 - o, l = ["x", "y"], u = n.mapDimension(l[o]), f = n.mapDimensionsAll(l[s]);
21737  if (u == null || f.length < 5) return;
21738  for (var h = 0; h < n.count(); h++) {
21739    var v = n.get(u, h), c = _(v, f[2], h), p = _(v, f[0], h), d = _(v, f[1], h), g = _(v, f[3], h), y = _(v, f[4], h), m = [];
21740    S(m, d, false), S(m, g, true), m.push(p, d, y, g), b(m, p), b(m, y), b(m, c), n.setItemLayout(h, { initBaseline: c[s], ends: m });
21741  }
21742  function _(x, w, T) {
21743    var C = n.get(w, T), A = [];
21744    A[o] = x, A[s] = C;
21745    var M;
21746    return isNaN(x) || isNaN(C) ? M = [NaN, NaN] : (M = a.dataToPoint(A), M[o] += e), M;
21747  }
21748  function S(x, w, T) {
21749    var C = w.slice(), A = w.slice();
21750    C[o] += i, A[o] -= i, T ? x.push(C, A) : x.push(A, C);
21751  }
21752  function b(x, w) {
21753    var T = w.slice(), C = w.slice();
21754    T[o] -= i, C[o] += i, x.push(T, C);
21755  }
21756}
21757function D4(r, e) {
21758  e = e || {};
21759  for (var t = [], a = [], n = e.boundIQR, i = n === "none" || n === 0, o = 0; o < r.length; o++) {
21760    var s = Xe(r[o].slice()), l = of(s, 0.25), u = of(s, 0.5), f = of(s, 0.75), h = s[0], v = s[s.length - 1], c = (n ?? 1.5) * (f - l), p = i ? h : Math.max(h, l - c), d = i ? v : Math.min(v, f + c), g = e.itemNameFormatter, y = j(g) ? g({ value: o }) : Y(g) ? g.replace("{value}", o + "") : o + "";
21761    t.push([y, p, l, u, f, d]);
21762    for (var m = 0; m < s.length; m++) {
21763      var _ = s[m];
21764      if (_ < p || _ > d) {
21765        var S = [y, _];
21766        a.push(S);
21767      }
21768    }
21769  }
21770  return { boxData: t, outliers: a };
21771}
21772var M4 = { type: "echarts:boxplot", transform: function(e) {
21773  var t = e.upstream;
21774  if (t.sourceFormat !== Ae) {
21775    var a = "";
21776    Mt(a);
21777  }
21778  var n = D4(t.getRawData(), e.config);
21779  return [{ dimensions: ["ItemName", "Low", "Q1", "Q2", "Q3", "High"], data: n.boxData }, { data: n.outliers }];
21780} };
21781function I4(r) {
21782  r.registerSeriesModel(PI), r.registerChartView(_4), r.registerLayout(w4), r.registerTransform(M4);
21783}
21784var L4 = ["itemStyle", "borderColor"], P4 = ["itemStyle", "borderColor0"], R4 = ["itemStyle", "borderColorDoji"], E4 = ["itemStyle", "color"], k4 = ["itemStyle", "color0"];
21785function xm(r, e) {
21786  return e.get(r > 0 ? E4 : k4);
21787}
21788function bm(r, e) {
21789  return e.get(r === 0 ? R4 : r > 0 ? L4 : P4);
21790}
21791var O4 = { seriesType: "candlestick", plan: Go(), performRawSeries: true, reset: function(r, e) {
21792  if (!e.isSeriesFiltered(r)) {
21793    var t = r.pipelineContext.large;
21794    return !t && { progress: function(a, n) {
21795      for (var i; (i = a.next()) != null; ) {
21796        var o = n.getItemModel(i), s = n.getItemLayout(i).sign, l = o.getItemStyle();
21797        l.fill = xm(s, o), l.stroke = bm(s, o) || l.fill;
21798        var u = n.ensureUniqueItemVisual(i, "style");
21799        z(u, l);
21800      }
21801    } };
21802  }
21803} }, N4 = ["color", "borderColor"], B4 = function(r) {
21804  N(e, r);
21805  function e() {
21806    var t = r !== null && r.apply(this, arguments) || this;
21807    return t.type = e.type, t;
21808  }
21809  return e.prototype.render = function(t, a, n) {
21810    this.group.removeClipPath(), this._progressiveEls = null, this._updateDrawMode(t), this._isLargeDraw ? this._renderLarge(t) : this._renderNormal(t);
21811  }, e.prototype.incrementalPrepareRender = function(t, a, n) {
21812    this._clear(), this._updateDrawMode(t);
21813  }, e.prototype.incrementalRender = function(t, a, n, i) {
21814    this._progressiveEls = [], this._isLargeDraw ? this._incrementalRenderLarge(t, a) : this._incrementalRenderNormal(t, a);
21815  }, e.prototype.eachRendered = function(t) {
21816    un(this._progressiveEls || this.group, t);
21817  }, e.prototype._updateDrawMode = function(t) {
21818    var a = t.pipelineContext.large;
21819    (this._isLargeDraw == null || a !== this._isLargeDraw) && (this._isLargeDraw = a, this._clear());
21820  }, e.prototype._renderNormal = function(t) {
21821    var a = t.getData(), n = this._data, i = this.group, o = a.getLayout("isSimpleBox"), s = t.get("clip", true), l = t.coordinateSystem, u = l.getArea && l.getArea();
21822    this._data || i.removeAll(), a.diff(n).add(function(f) {
21823      if (a.hasValue(f)) {
21824        var h = a.getItemLayout(f);
21825        if (s && Bx(u, h)) return;
21826        var v = ap(h, f, true);
21827        Gt(v, { shape: { points: h.ends } }, t, f), np(v, a, f, o), i.add(v), a.setItemGraphicEl(f, v);
21828      }
21829    }).update(function(f, h) {
21830      var v = n.getItemGraphicEl(h);
21831      if (!a.hasValue(f)) {
21832        i.remove(v);
21833        return;
21834      }
21835      var c = a.getItemLayout(f);
21836      if (s && Bx(u, c)) {
21837        i.remove(v);
21838        return;
21839      }
21840      v ? (Tt(v, { shape: { points: c.ends } }, t, f), Er(v)) : v = ap(c), np(v, a, f, o), i.add(v), a.setItemGraphicEl(f, v);
21841    }).remove(function(f) {
21842      var h = n.getItemGraphicEl(f);
21843      h && i.remove(h);
21844    }).execute(), this._data = a;
21845  }, e.prototype._renderLarge = function(t) {
21846    this._clear(), zx(t, this.group);
21847    var a = t.get("clip", true) ? Yl(t.coordinateSystem, false, t) : null;
21848    a ? this.group.setClipPath(a) : this.group.removeClipPath();
21849  }, e.prototype._incrementalRenderNormal = function(t, a) {
21850    for (var n = a.getData(), i = n.getLayout("isSimpleBox"), o; (o = t.next()) != null; ) {
21851      var s = n.getItemLayout(o), l = ap(s);
21852      np(l, n, o, i), l.incremental = true, this.group.add(l), this._progressiveEls.push(l);
21853    }
21854  }, e.prototype._incrementalRenderLarge = function(t, a) {
21855    zx(a, this.group, this._progressiveEls, true);
21856  }, e.prototype.remove = function(t) {
21857    this._clear();
21858  }, e.prototype._clear = function() {
21859    this.group.removeAll(), this._data = null;
21860  }, e.type = "candlestick", e;
21861}(Pt), z4 = /* @__PURE__ */ function() {
21862  function r() {
21863  }
21864  return r;
21865}(), V4 = function(r) {
21866  N(e, r);
21867  function e(t) {
21868    var a = r.call(this, t) || this;
21869    return a.type = "normalCandlestickBox", a;
21870  }
21871  return e.prototype.getDefaultShape = function() {
21872    return new z4();
21873  }, e.prototype.buildPath = function(t, a) {
21874    var n = a.points;
21875    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]));
21876  }, e;
21877}(mt);
21878function ap(r, e, t) {
21879  var a = r.ends;
21880  return new V4({ shape: { points: t ? G4(a, r) : a }, z2: 100 });
21881}
21882function Bx(r, e) {
21883  for (var t = true, a = 0; a < e.ends.length; a++) if (r.contain(e.ends[a][0], e.ends[a][1])) {
21884    t = false;
21885    break;
21886  }
21887  return t;
21888}
21889function np(r, e, t, a) {
21890  var n = e.getItemModel(t);
21891  r.useStyle(e.getItemVisual(t, "style")), r.style.strokeNoScale = true, r.__simpleBox = a, pe(r, n);
21892  var i = e.getItemLayout(t).sign;
21893  D(r.states, function(s, l) {
21894    var u = n.getModel(l), f = xm(i, u), h = bm(i, u) || f, v = s.style || (s.style = {});
21895    f && (v.fill = f), h && (v.stroke = h);
21896  });
21897  var o = n.getModel("emphasis");
21898  Wt(r, o.get("focus"), o.get("blurScope"), o.get("disabled"));
21899}
21900function G4(r, e) {
21901  return G(r, function(t) {
21902    return t = t.slice(), t[1] = e.initBaseline, t;
21903  });
21904}
21905var F4 = /* @__PURE__ */ function() {
21906  function r() {
21907  }
21908  return r;
21909}(), ip = function(r) {
21910  N(e, r);
21911  function e(t) {
21912    var a = r.call(this, t) || this;
21913    return a.type = "largeCandlestickBox", a;
21914  }
21915  return e.prototype.getDefaultShape = function() {
21916    return new F4();
21917  }, e.prototype.buildPath = function(t, a) {
21918    for (var n = a.points, i = 0; i < n.length; ) if (this.__sign === n[i++]) {
21919      var o = n[i++];
21920      t.moveTo(o, n[i++]), t.lineTo(o, n[i++]);
21921    } else i += 3;
21922  }, e;
21923}(mt);
21924function zx(r, e, t, a) {
21925  var n = r.getData(), i = n.getLayout("largePoints"), o = new ip({ shape: { points: i }, __sign: 1, ignoreCoarsePointer: true });
21926  e.add(o);
21927  var s = new ip({ shape: { points: i }, __sign: -1, ignoreCoarsePointer: true });
21928  e.add(s);
21929  var l = new ip({ shape: { points: i }, __sign: 0, ignoreCoarsePointer: true });
21930  e.add(l), op(1, o, r), op(-1, s, r), op(0, l, r), a && (o.incremental = true, s.incremental = true), t && t.push(o, s);
21931}
21932function op(r, e, t, a) {
21933  var n = bm(r, t) || xm(r, t), i = t.getModel("itemStyle").getItemStyle(N4);
21934  e.useStyle(i), e.style.fill = null, e.style.stroke = n;
21935}
21936var EI = function(r) {
21937  N(e, r);
21938  function e() {
21939    var t = r !== null && r.apply(this, arguments) || this;
21940    return t.type = e.type, t.defaultValueDimensions = [{ name: "open", defaultTooltip: true }, { name: "close", defaultTooltip: true }, { name: "lowest", defaultTooltip: true }, { name: "highest", defaultTooltip: true }], t;
21941  }
21942  return e.prototype.getShadowDim = function() {
21943    return "open";
21944  }, e.prototype.brushSelector = function(t, a, n) {
21945    var i = a.getItemLayout(t);
21946    return i && n.rect(i.brushRect);
21947  }, e.type = "series.candlestick", e.dependencies = ["xAxis", "yAxis", "grid"], e.defaultOption = { z: 2, coordinateSystem: "cartesian2d", legendHoverLink: true, layout: null, clip: true, itemStyle: { color: "#eb5454", color0: "#47b262", borderColor: "#eb5454", borderColor0: "#47b262", borderColorDoji: null, borderWidth: 1 }, emphasis: { itemStyle: { borderWidth: 2 } }, barMaxWidth: null, barMinWidth: null, barWidth: null, large: true, largeThreshold: 600, progressive: 3e3, progressiveThreshold: 1e4, progressiveChunkMode: "mod", animationEasing: "linear", animationDuration: 300 }, e;
21948}(Et);
21949Xt(EI, LI, true);
21950function H4(r) {
21951  !r || !V(r.series) || D(r.series, function(e) {
21952    tt(e) && e.type === "k" && (e.type = "candlestick");
21953  });
21954}
21955var W4 = { seriesType: "candlestick", plan: Go(), reset: function(r) {
21956  var e = r.coordinateSystem, t = r.getData(), a = U4(r, t), n = 0, i = 1, o = ["x", "y"], s = t.getDimensionIndex(t.mapDimension(o[n])), l = G(t.mapDimensionsAll(o[i]), t.getDimensionIndex, t), u = l[0], f = l[1], h = l[2], v = l[3];
21957  if (t.setLayout({ candleWidth: a, isSimpleBox: a <= 1.3 }), s < 0 || l.length < 4) return;
21958  return { progress: r.pipelineContext.large ? p : c };
21959  function c(d, g) {
21960    for (var y, m = g.getStore(); (y = d.next()) != null; ) {
21961      var _ = m.get(s, y), S = m.get(u, y), b = m.get(f, y), x = m.get(h, y), w = m.get(v, y), T = Math.min(S, b), C = Math.max(S, b), A = O(T, _), M = O(C, _), I = O(x, _), L = O(w, _), P = [];
21962      k(P, M, 0), k(P, A, 1), P.push(F(L), F(M), F(I), F(A));
21963      var R = g.getItemModel(y), E = !!R.get(["itemStyle", "borderColorDoji"]);
21964      g.setItemLayout(y, { sign: Vx(m, y, S, b, f, E), initBaseline: S > b ? M[i] : A[i], ends: P, brushRect: B(x, w, _) });
21965    }
21966    function O(H, U) {
21967      var K = [];
21968      return K[n] = U, K[i] = H, isNaN(U) || isNaN(H) ? [NaN, NaN] : e.dataToPoint(K);
21969    }
21970    function k(H, U, K) {
21971      var J = U.slice(), nt = U.slice();
21972      J[n] = uf(J[n] + a / 2, 1, false), nt[n] = uf(nt[n] - a / 2, 1, true), K ? H.push(J, nt) : H.push(nt, J);
21973    }
21974    function B(H, U, K) {
21975      var J = O(H, K), nt = O(U, K);
21976      return J[n] -= a / 2, nt[n] -= a / 2, { x: J[0], y: J[1], width: a, height: nt[1] - J[1] };
21977    }
21978    function F(H) {
21979      return H[n] = uf(H[n], 1), H;
21980    }
21981  }
21982  function p(d, g) {
21983    for (var y = $r(d.count * 4), m = 0, _, S = [], b = [], x, w = g.getStore(), T = !!r.get(["itemStyle", "borderColorDoji"]); (x = d.next()) != null; ) {
21984      var C = w.get(s, x), A = w.get(u, x), M = w.get(f, x), I = w.get(h, x), L = w.get(v, x);
21985      if (isNaN(C) || isNaN(I) || isNaN(L)) {
21986        y[m++] = NaN, m += 3;
21987        continue;
21988      }
21989      y[m++] = Vx(w, x, A, M, f, T), S[n] = C, S[i] = I, _ = e.dataToPoint(S, null, b), y[m++] = _ ? _[0] : NaN, y[m++] = _ ? _[1] : NaN, S[i] = L, _ = e.dataToPoint(S, null, b), y[m++] = _ ? _[1] : NaN;
21990    }
21991    g.setLayout("largePoints", y);
21992  }
21993} };
21994function Vx(r, e, t, a, n, i) {
21995  var o;
21996  return t > a ? o = -1 : t < a ? o = 1 : o = i ? 0 : e > 0 ? r.get(n, e - 1) <= a ? 1 : -1 : 1, o;
21997}
21998function U4(r, e) {
21999  var t = r.getBaseAxis(), a, n = t.type === "category" ? t.getBandWidth() : (a = t.getExtent(), Math.abs(a[1] - a[0]) / e.count()), i = W(st(r.get("barMaxWidth"), n), n), o = W(st(r.get("barMinWidth"), 1), n), s = r.get("barWidth");
22000  return s != null ? W(s, n) : Math.max(Math.min(n / 2, i), o);
22001}
22002function Y4(r) {
22003  r.registerChartView(B4), r.registerSeriesModel(EI), r.registerPreprocessor(H4), r.registerVisual(O4), r.registerLayout(W4);
22004}
22005function Gx(r, e) {
22006  var t = e.rippleEffectColor || e.color;
22007  r.eachChild(function(a) {
22008    a.attr({ z: e.z, zlevel: e.zlevel, style: { stroke: e.brushType === "stroke" ? t : null, fill: e.brushType === "fill" ? t : null } });
22009  });
22010}
22011var $4 = function(r) {
22012  N(e, r);
22013  function e(t, a) {
22014    var n = r.call(this) || this, i = new Wl(t, a), o = new at();
22015    return n.add(i), n.add(o), n.updateData(t, a), n;
22016  }
22017  return e.prototype.stopEffectAnimation = function() {
22018    this.childAt(1).removeAll();
22019  }, e.prototype.startEffectAnimation = function(t) {
22020    for (var a = t.symbolType, n = t.color, i = t.rippleNumber, o = this.childAt(1), s = 0; s < i; s++) {
22021      var l = qt(a, -1, -1, 2, 2, n);
22022      l.attr({ style: { strokeNoScale: true }, z2: 99, silent: true, scaleX: 0.5, scaleY: 0.5 });
22023      var u = -s / i * t.period + t.effectOffset;
22024      l.animate("", true).when(t.period, { scaleX: t.rippleScale / 2, scaleY: t.rippleScale / 2 }).delay(u).start(), l.animateStyle(true).when(t.period, { opacity: 0 }).delay(u).start(), o.add(l);
22025    }
22026    Gx(o, t);
22027  }, e.prototype.updateEffectAnimation = function(t) {
22028    for (var a = this._effectCfg, n = this.childAt(1), i = ["symbolType", "period", "rippleScale", "rippleNumber"], o = 0; o < i.length; o++) {
22029      var s = i[o];
22030      if (a[s] !== t[s]) {
22031        this.stopEffectAnimation(), this.startEffectAnimation(t);
22032        return;
22033      }
22034    }
22035    Gx(n, t);
22036  }, e.prototype.highlight = function() {
22037    ma(this);
22038  }, e.prototype.downplay = function() {
22039    _a(this);
22040  }, e.prototype.getSymbolType = function() {
22041    var t = this.childAt(0);
22042    return t && t.getSymbolType();
22043  }, e.prototype.updateData = function(t, a) {
22044    var n = this, i = t.hostModel;
22045    this.childAt(0).updateData(t, a);
22046    var o = this.childAt(1), s = t.getItemModel(a), l = t.getItemVisual(a, "symbol"), u = Ho(t.getItemVisual(a, "symbolSize")), f = t.getItemVisual(a, "style"), h = f && f.fill, v = s.getModel("emphasis");
22047    o.setScale(u), o.traverse(function(g) {
22048      g.setStyle("fill", h);
22049    });
22050    var c = wi(t.getItemVisual(a, "symbolOffset"), u);
22051    c && (o.x = c[0], o.y = c[1]);
22052    var p = t.getItemVisual(a, "symbolRotate");
22053    o.rotation = (p || 0) * Math.PI / 180 || 0;
22054    var d = {};
22055    d.showEffectOn = i.get("showEffectOn"), d.rippleScale = s.get(["rippleEffect", "scale"]), d.brushType = s.get(["rippleEffect", "brushType"]), d.period = s.get(["rippleEffect", "period"]) * 1e3, d.effectOff
22055set = a / t.count(), d.z = i.getShallow("z") || 0, d.zlevel = i.getShallow("zlevel") || 0, d.symbolType = l, d.color = h, d.rippleEffectColor = s.get(["rippleEffect", "color"]), d.rippleNumber = s.get(["rippleEffect", "number"]), d.showEffectOn === "render" ? (this._effectCfg ? this.updateEffectAnimation(d) : this.startEffectAnimation(d), this._effectCfg = d) : (this._effectCfg = null, this.stopEffectAnimation(), this.onHoverStateChange = function(g) {
22056      g === "emphasis" ? d.showEffectOn !== "render" && n.startEffectAnimation(d) : g === "normal" && d.showEffectOn !== "render" && n.stopEffectAnimation();
22057    }), this._effectCfg = d, Wt(this, v.get("focus"), v.get("blurScope"), v.get("disabled"));
22058  }, e.prototype.fadeOut = function(t) {
22059    t && t();
22060  }, e;
22061}(at), X4 = function(r) {
22062  N(e, r);
22063  function e() {
22064    var t = r !== null && r.apply(this, arguments) || this;
22065    return t.type = e.type, t;
22066  }
22067  return e.prototype.init = function() {
22068    this._symbolDraw = new Ul($4);
22069  }, e.prototype.render = function(t, a, n) {
22070    var i = t.getData(), o = this._symbolDraw;
22071    o.updateData(i, { clipShape: this._getClipShape(t) }), this.group.add(o.group);
22072  }, e.prototype._getClipShape = function(t) {
22073    var a = t.coordinateSystem, n = a && a.getArea && a.getArea();
22074    return t.get("clip", true) ? n : null;
22075  }, e.prototype.updateTransform = function(t, a, n) {
22076    var i = t.getData();
22077    this.group.dirty();
22078    var o = $l("").reset(t, a, n);
22079    o.progress && o.progress({ start: 0, end: i.count(), count: i.count() }, i), this._symbolDraw.updateLayout();
22080  }, e.prototype._updateGroupTransform = function(t) {
22081    var a = t.coordinateSystem;
22082    a && a.getRoamTransform && (this.group.transform = gT(a.getRoamTransform()), this.group.decomposeTransform());
22083  }, e.prototype.remove = function(t, a) {
22084    this._symbolDraw && this._symbolDraw.remove(true);
22085  }, e.type = "effectScatter", e;
22086}(Pt), Z4 = function(r) {
22087  N(e, r);
22088  function e() {
22089    var t = r !== null && r.apply(this, arguments) || this;
22090    return t.type = e.type, t.hasSymbolVisual = true, t;
22091  }
22092  return e.prototype.getInitialData = function(t, a) {
22093    return aa(null, this, { useEncodeDefaulter: true });
22094  }, e.prototype.brushSelector = function(t, a, n) {
22095    return n.point(a.getItemLayout(t));
22096  }, e.type = "series.effectScatter", e.dependencies = ["grid", "polar"], e.defaultOption = { coordinateSystem: "cartesian2d", z: 2, legendHoverLink: true, effectType: "ripple", progressive: 0, showEffectOn: "render", clip: true, rippleEffect: { period: 4, scale: 2.5, brushType: "fill", number: 3 }, universalTransition: { divideShape: "clone" }, symbolSize: 10 }, e;
22097}(Et);
22098function q4(r) {
22099  r.registerChartView(X4), r.registerSeriesModel(Z4), r.registerLayout($l("effectScatter"));
22100}
22101var kI = function(r) {
22102  N(e, r);
22103  function e(t, a, n) {
22104    var i = r.call(this) || this;
22105    return i.add(i.createLine(t, a, n)), i._updateEffectSymbol(t, a), i;
22106  }
22107  return e.prototype.createLine = function(t, a, n) {
22108    return new vm(t, a, n);
22109  }, e.prototype._updateEffectSymbol = function(t, a) {
22110    var n = t.getItemModel(a), i = n.getModel("effect"), o = i.get("symbolSize"), s = i.get("symbol");
22111    V(o) || (o = [o, o]);
22112    var l = t.getItemVisual(a, "style"), u = i.get("color") || l && l.stroke, f = this.childAt(1);
22113    this._symbolType !== s && (this.remove(f), f = qt(s, -0.5, -0.5, 1, 1, u), f.z2 = 100, f.culling = true, this.add(f)), f && (f.setStyle("shadowColor", u), f.setStyle(i.getItemStyle(["color"])), f.scaleX = o[0], f.scaleY = o[1], f.setColor(u), this._symbolType = s, this._symbolScale = o, this._updateEffectAnimation(t, i, a));
22114  }, e.prototype._updateEffectAnimation = function(t, a, n) {
22115    var i = this.childAt(1);
22116    if (i) {
22117      var o = t.getItemLayout(n), s = a.get("period") * 1e3, l = a.get("loop"), u = a.get("roundTrip"), f = a.get("constantSpeed"), h = ne(a.get("delay"), function(c) {
22118        return c / t.count() * s / 3;
22119      });
22120      if (i.ignore = true, this._updateAnimationPoints(i, o), f > 0 && (s = this._getLineLength(i) / f * 1e3), s !== this._period || l !== this._loop || u !== this._roundTrip) {
22121        i.stopAnimation();
22122        var v = void 0;
22123        j(h) ? v = h(n) : v = h, i.__t > 0 && (v = -s * i.__t), this._animateSymbol(i, s, v, l, u);
22124      }
22125      this._period = s, this._loop = l, this._roundTrip = u;
22126    }
22127  }, e.prototype._animateSymbol = function(t, a, n, i, o) {
22128    if (a > 0) {
22129      t.__t = 0;
22130      var s = this, l = t.animate("", i).when(o ? a * 2 : a, { __t: o ? 2 : 1 }).delay(n).during(function() {
22131        s._updateSymbolPosition(t);
22132      });
22133      i || l.done(function() {
22134        s.remove(t);
22135      }), l.start();
22136    }
22137  }, e.prototype._getLineLength = function(t) {
22138    return fa(t.__p1, t.__cp1) + fa(t.__cp1, t.__p2);
22139  }, e.prototype._updateAnimationPoints = function(t, a) {
22140    t.__p1 = a[0], t.__p2 = a[1], t.__cp1 = a[2] || [(a[0][0] + a[1][0]) / 2, (a[0][1] + a[1][1]) / 2];
22141  }, e.prototype.updateData = function(t, a, n) {
22142    this.childAt(0).updateData(t, a, n), this._updateEffectSymbol(t, a);
22143  }, e.prototype._updateSymbolPosition = function(t) {
22144    var a = t.__p1, n = t.__p2, i = t.__cp1, o = t.__t < 1 ? t.__t : 2 - t.__t, s = [t.x, t.y], l = s.slice(), u = fe, f = Up;
22145    s[0] = u(a[0], i[0], n[0], o), s[1] = u(a[1], i[1], n[1], o);
22146    var h = t.__t < 1 ? f(a[0], i[0], n[0], o) : f(n[0], i[0], a[0], 1 - o), v = t.__t < 1 ? f(a[1], i[1], n[1], o) : f(n[1], i[1], a[1], 1 - o);
22147    t.rotation = -Math.atan2(v, h) - Math.PI / 2, (this._symbolType === "line" || this._symbolType === "rect" || this._symbolType === "roundRect") && (t.__lastT !== void 0 && t.__lastT < t.__t ? (t.scaleY = fa(l, s) * 1.05, o === 1 && (s[0] = l[0] + (s[0] - l[0]) / 2, s[1] = l[1] + (s[1] - l[1]) / 2)) : t.__lastT === 1 ? t.scaleY = 2 * fa(a, s) : t.scaleY = this._symbolScale[1]), t.__lastT = t.__t, t.ignore = false, t.x = s[0], t.y = s[1];
22148  }, e.prototype.updateLayout = function(t, a) {
22149    this.childAt(0).updateLayout(t, a);
22150    var n = t.getItemModel(a).getModel("effect");
22151    this._updateEffectAnimation(t, n, a);
22152  }, e;
22153}(at), OI = function(r) {
22154  N(e, r);
22155  function e(t, a, n) {
22156    var i = r.call(this) || this;
22157    return i._createPolyline(t, a, n), i;
22158  }
22159  return e.prototype._createPolyline = function(t, a, n) {
22160    var i = t.getItemLayout(a), o = new De({ shape: { points: i } });
22161    this.add(o), this._updateCommonStl(t, a, n);
22162  }, e.prototype.updateData = function(t, a, n) {
22163    var i = t.hostModel, o = this.childAt(0), s = { shape: { points: t.getItemLayout(a) } };
22164    Tt(o, s, i, a), this._updateCommonStl(t, a, n);
22165  }, e.prototype._updateCommonStl = function(t, a, n) {
22166    var i = this.childAt(0), o = t.getItemModel(a), s = n && n.emphasisLineStyle, l = n && n.focus, u = n && n.blurScope, f = n && n.emphasisDisabled;
22167    if (!n || t.hasItemOption) {
22168      var h = o.getModel("emphasis");
22169      s = h.getModel("lineStyle").getLineStyle(), f = h.get("disabled"), l = h.get("focus"), u = h.get("blurScope");
22170    }
22171    i.useStyle(t.getItemVisual(a, "style")), i.style.fill = null, i.style.strokeNoScale = true;
22172    var v = i.ensureState("emphasis");
22173    v.style = s, Wt(this, l, u, f);
22174  }, e.prototype.updateLayout = function(t, a) {
22175    var n = this.childAt(0);
22176    n.setShape("points", t.getItemLayout(a));
22177  }, e;
22178}(at), K4 = function(r) {
22179  N(e, r);
22180  function e() {
22181    var t = r !== null && r.apply(this, arguments) || this;
22182    return t._lastFrame = 0, t._lastFramePercent = 0, t;
22183  }
22184  return e.prototype.createLine = function(t, a, n) {
22185    return new OI(t, a, n);
22186  }, e.prototype._updateAnimationPoints = function(t, a) {
22187    this._points = a;
22188    for (var n = [0], i = 0, o = 1; o < a.length; o++) {
22189      var s = a[o - 1], l = a[o];
22190      i += fa(s, l), n.push(i);
22191    }
22192    if (i === 0) {
22193      this._length = 0;
22194      return;
22195    }
22196    for (var o = 0; o < n.length; o++) n[o] /= i;
22197    this._offsets = n, this._length = i;
22198  }, e.prototype._getLineLength = function() {
22199    return this._length;
22200  }, e.prototype._updateSymbolPosition = function(t) {
22201    var a = t.__t < 1 ? t.__t : 2 - t.__t, n = this._points, i = this._offsets, o = n.length;
22202    if (i) {
22203      var s = this._lastFrame, l;
22204      if (a < this._lastFramePercent) {
22205        var u = Math.min(s + 1, o - 1);
22206        for (l = u; l >= 0 && !(i[l] <= a); l--) ;
22207        l = Math.min(l, o - 2);
22208      } else {
22209        for (l = s; l < o && !(i[l] > a); l++) ;
22210        l = Math.min(l - 1, o - 2);
22211      }
22212      var f = (a - i[l]) / (i[l + 1] - i[l]), h = n[l], v = n[l + 1];
22213      t.x = h[0] * (1 - f) + f * v[0], t.y = h[1] * (1 - f) + f * v[1];
22214      var c = t.__t < 1 ? v[0] - h[0] : h[0] - v[0], p = t.__t < 1 ? v[1] - h[1] : h[1] - v[1];
22215      t.rotation = -Math.atan2(p, c) - Math.PI / 2, this._lastFrame = l, this._lastFramePercent = a, t.ignore = false;
22216    }
22217  }, e;
22218}(kI), j4 = /* @__PURE__ */ function() {
22219  function r() {
22220    this.polyline = false, this.curveness = 0, this.segs = [];
22221  }
22222  return r;
22223}(), J4 = function(r) {
22224  N(e, r);
22225  function e(t) {
22226    var a = r.call(this, t) || this;
22227    return a._off = 0, a.hoverDataIdx = -1, a;
22228  }
22229  return e.prototype.reset = function() {
22230    this.notClear = false, this._off = 0;
22231  }, e.prototype.getDefaultStyle = function() {
22232    return { stroke: "#000", fill: null };
22233  }, e.prototype.getDefaultShape = function() {
22234    return new j4();
22235  }, e.prototype.buildPath = function(t, a) {
22236    var n = a.segs, i = a.curveness, o;
22237    if (a.polyline) for (o = this._off; o < n.length; ) {
22238      var s = n[o++];
22239      if (s > 0) {
22240        t.moveTo(n[o++], n[o++]);
22241        for (var l = 1; l < s; l++) t.lineTo(n[o++], n[o++]);
22242      }
22243    }
22244    else for (o = this._off; o < n.length; ) {
22245      var u = n[o++], f = n[o++], h = n[o++], v = n[o++];
22246      if (t.moveTo(u, f), i > 0) {
22247        var c = (u + h) / 2 - (f - v) * i, p = (f + v) / 2 - (h - u) * i;
22248        t.quadraticCurveTo(c, p, h, v);
22249      } else t.lineTo(h, v);
22250    }
22251    this.incremental && (this._off = o, this.notClear = true);
22252  }, e.prototype.findDataIndex = function(t, a) {
22253    var n = this.shape, i = n.segs, o = n.curveness, s = this.style.lineWidth;
22254    if (n.polyline) for (var l = 0, u = 0; u < i.length; ) {
22255      var f = i[u++];
22256      if (f > 0) for (var h = i[u++], v = i[u++], c = 1; c < f; c++) {
22257        var p = i[u++], d = i[u++];
22258        if (Ba(h, v, p, d, s, t, a)) return l;
22259      }
22260      l++;
22261    }
22262    else for (var l = 0, u = 0; u < i.length; ) {
22263      var h = i[u++], v = i[u++], p = i[u++], d = i[u++];
22264      if (o > 0) {
22265        var g = (h + p) / 2 - (v - d) * o, y = (v + d) / 2 - (p - h) * o;
22266        if (sC(h, v, g, y, p, d, s, t, a)) return l;
22267      } else if (Ba(h, v, p, d, s, t, a)) return l;
22268      l++;
22269    }
22270    return -1;
22271  }, e.prototype.contain = function(t, a) {
22272    var n = this.transformCoordToLocal(t, a), i = this.getBoundingRect
22272();
22273    if (t = n[0], a = n[1], i.contain(t, a)) {
22274      var o = this.hoverDataIdx = this.findDataIndex(t, a);
22275      return o >= 0;
22276    }
22277    return this.hoverDataIdx = -1, false;
22278  }, e.prototype.getBoundingRect = function() {
22279    var t = this._rect;
22280    if (!t) {
22281      for (var a = this.shape, n = a.segs, i = 1 / 0, o = 1 / 0, s = -1 / 0, l = -1 / 0, u = 0; u < n.length; ) {
22282        var f = n[u++], h = n[u++];
22283        i = Math.min(f, i), s = Math.max(f, s), o = Math.min(h, o), l = Math.max(h, l);
22284      }
22285      t = this._rect = new ht(i, o, s, l);
22286    }
22287    return t;
22288  }, e;
22289}(mt), Q4 = function() {
22290  function r() {
22291    this.group = new at();
22292  }
22293  return r.prototype.updateData = function(e) {
22294    this._clear();
22295    var t = this._create();
22296    t.setShape({ segs: e.getLayout("linesPoints") }), this._setCommon(t, e);
22297  }, r.prototype.incrementalPrepareUpdate = function(e) {
22298    this.group.removeAll(), this._clear();
22299  }, r.prototype.incrementalUpdate = function(e, t) {
22300    var a = this._newAdded[0], n = t.getLayout("linesPoints"), i = a && a.shape.segs;
22301    if (i && i.length < 2e4) {
22302      var o = i.length, s = new Float32Array(o + n.length);
22303      s.set(i), s.set(n, o), a.setShape({ segs: s });
22304    } else {
22305      this._newAdded = [];
22306      var l = this._create();
22307      l.incremental = true, l.setShape({ segs: n }), this._setCommon(l, t), l.__startIndex = e.start;
22308    }
22309  }, r.prototype.remove = function() {
22310    this._clear();
22311  }, r.prototype.eachRendered = function(e) {
22312    this._newAdded[0] && e(this._newAdded[0]);
22313  }, r.prototype._create = function() {
22314    var e = new J4({ cursor: "default", ignoreCoarsePointer: true });
22315    return this._newAdded.push(e), this.group.add(e), e;
22316  }, r.prototype._setCommon = function(e, t, a) {
22317    var n = t.hostModel;
22318    e.setShape({ polyline: n.get("polyline"), curveness: n.get(["lineStyle", "curveness"]) }), e.useStyle(n.getModel("lineStyle").getLineStyle()), e.style.strokeNoScale = true;
22319    var i = t.getVisual("style");
22320    i && i.stroke && e.setStyle("stroke", i.stroke), e.setStyle("fill", null);
22321    var o = it(e);
22322    o.seriesIndex = n.seriesIndex, e.on("mousemove", function(s) {
22323      o.dataIndex = null;
22324      var l = e.hoverDataIdx;
22325      l > 0 && (o.dataIndex = l + e.__startIndex);
22326    });
22327  }, r.prototype._clear = function() {
22328    this._newAdded = [], this.group.removeAll();
22329  }, r;
22330}(), NI = { seriesType: "lines", plan: Go(), reset: function(r) {
22331  var e = r.coordinateSystem;
22332  if (e) {
22333    var t = r.get("polyline"), a = r.pipelineContext.large;
22334    return { progress: function(n, i) {
22335      var o = [];
22336      if (a) {
22337        var s = void 0, l = n.end - n.start;
22338        if (t) {
22339          for (var u = 0, f = n.start; f < n.end; f++) u += r.getLineCoordsCount(f);
22340          s = new Float32Array(l + u * 2);
22341        } else s = new Float32Array(l * 4);
22342        for (var h = 0, v = [], f = n.start; f < n.end; f++) {
22343          var c = r.getLineCoords(f, o);
22344          t && (s[h++] = c);
22345          for (var p = 0; p < c; p++) v = e.dataToPoint(o[p], false, v), s[h++] = v[0], s[h++] = v[1];
22346        }
22347        i.setLayout("linesPoints", s);
22348      } else for (var f = n.start; f < n.end; f++) {
22349        var d = i.getItemModel(f), c = r.getLineCoords(f, o), g = [];
22350        if (t) for (var y = 0; y < c; y++) g.push(e.dataToPoint(o[y]));
22351        else {
22352          g[0] = e.dataToPoint(o[0]), g[1] = e.dataToPoint(o[1]);
22353          var m = d.get(["lineStyle", "curveness"]);
22354          +m && (g[2] = [(g[0][0] + g[1][0]) / 2 - (g[0][1] - g[1][1]) * m, (g[0][1] + g[1][1]) / 2 - (g[1][0] - g[0][0]) * m]);
22355        }
22356        i.setItemLayout(f, g);
22357      }
22358    } };
22359  }
22360} }, tW = function(r) {
22361  N(e, r);
22362  function e() {
22363    var t = r !== null && r.apply(this, arguments) || this;
22364    return t.type = e.type, t;
22365  }
22366  return e.prototype.render = function(t, a, n) {
22367    var i = t.getData(), o = this._updateLineDraw(i, t), s = t.get("zlevel"), l = t.get(["effect", "trailLength"]), u = n.getZr(), f = u.painter.getType() === "svg";
22368    f || u.painter.getLayer(s).clear(true), this._lastZlevel != null && !f && u.configLayer(this._lastZlevel, { motionBlur: false }), this._showEffect(t) && l > 0 && (f || u.configLayer(s, { motionBlur: true, lastFrameAlpha: Math.max(Math.min(l / 10 + 0.9, 1), 0
22368) })), o.updateData(i);
22369    var h = t.get("clip", true) && Yl(t.coordinateSystem, false, t);
22370    h ? this.group.setClipPath(h) : this.group.removeClipPath(), this._lastZlevel = s, this._finished = true;
22371  }, e.prototype.incrementalPrepareRender = function(t, a, n) {
22372    var i = t.getData(), o = this._updateLineDraw(i, t);
22373    o.incrementalPrepareUpdate(i), this._clearLayer(n), this._finished = false;
22374  }, e.prototype.incrementalRender = function(t, a, n) {
22375    this._lineDraw.incrementalUpdate(t, a.getData()), this._finished = t.end === a.getData().count();
22376  }, e.prototype.eachRendered = function(t) {
22377    this._lineDraw && this._lineDraw.eachRendered(t);
22378  }, e.prototype.updateTransform = function(t, a, n) {
22379    var i = t.getData(), o = t.pipelineContext;
22380    if (!this._finished || o.large || o.progressiveRender) return { update: true };
22381    var s = NI.reset(t, a, n);
22382    s.progress && s.progress({ start: 0, end: i.count(), count: i.count() }, i), this._lineDraw.updateLayout(), this._clearLayer(n);
22383  }, e.prototype._updateLineDraw = function(t, a) {
22384    var n = this._lineDraw, i = this._showEffect(a), o = !!a.get("polyline"), s = a.pipelineContext, l = s.large;
22385    return (!n || i !== this._hasEffet || o !== this._isPolyline || l !== this._isLargeDraw) && (n && n.remove(), n = this._lineDraw = l ? new Q4() : new cm(o ? i ? K4 : OI : i ? kI : vm), this._hasEffet = i, this._isPolyline = o, this._isLargeDraw = l), this.group.add(n.group), n;
22386  }, e.prototype._showEffect = function(t) {
22387    return !!t.get(["effect", "show"]);
22388  }, e.prototype._clearLayer = function(t) {
22389    var a = t.getZr(), n = a.painter.getType() === "svg";
22390    !n && this._lastZlevel != null && a.painter.getLayer(this._lastZlevel).clear(true);
22391  }, e.prototype.remove = function(t, a) {
22392    this._lineDraw && this._lineDraw.remove(), this._lineDraw = null, this._clearLayer(a);
22393  }, e.prototype.dispose = function(t, a) {
22394    this.remove(t, a);
22395  }, e.type = "lines", e;
22396}(Pt), eW = typeof Uint32Array > "u" ? Array : Uint32Array, rW = typeof Float64Array > "u" ? Array : Float64Array;
22397function Fx(r) {
22398  var e = r.data;
22399  e && e[0] && e[0][0] && e[0][0].coord && (r.data = G(e, function(t) {
22400    var a = [t[0].coord, t[1].coord], n = { coords: a };
22401    return t[0].name && (n.fromName = t[0].name), t[1].name && (n.toName = t[1].name), Sh([n, t[0], t[1]]);
22402  }));
22403}
22404var aW = function(r) {
22405  N(e, r);
22406  function e() {
22407    var t = r !== null && r.apply(this, arguments) || this;
22408    return t.type = e.type, t.visualStyleAccessPath = "lineStyle", t.visualDrawType = "stroke", t;
22409  }
22410  return e.prototype.init = function(t) {
22411    t.data = t.data || [], Fx(t);
22412    var a = this._processFlatCoordsArray(t.data);
22413    this._flatCoords = a.flatCoords, this._flatCoordsOffset = a.flatCoordsOffset, a.flatCoords && (t.data = new Float32Array(a.count)), r.prototype.init.apply(this, arguments);
22414  }, e.prototype.mergeOption = function(t) {
22415    if (Fx(t), t.data) {
22416      var a = this._processFlatCoordsArray(t.data);
22417      this._flatCoords = a.flatCoords, this._flatCoordsOffset = a.flatCoordsOffset, a.flatCoords && (t.data = new Float32Array(a.count));
22418    }
22419    r.prototype.mergeOption.apply(this, arguments);
22420  }, e.prototype.appendData = function(t) {
22421    var a = this._processFlatCoordsArray(t.data);
22422    a.flatCoords && (this._flatCoords ? (this._flatCoords = go(this._flatCoords, a.flatCoords), this._flatCoordsOffset = go(this._flatCoordsOffset, a.flatCoordsOffset)) : (this._flatCoords = a.flatCoords, this._flatCoordsOffset = a.flatCoordsOffset), t.data = new Float32Array(a.count)), this.getRawData().appendData(t.data);
22423  }, e.prototype._getCoordsFromItemModel = function(t) {
22424    var a = this.getData().getItemModel(t), n = a.option instanceof Array ? a.option : a.getShallow("coords");
22425    return n;
22426  }, e.prototype.getLineCoordsCount = function(t) {
22427    return this._flatCoordsOffset ? this._flatCoordsOffset[t * 2 + 1] : this._getCoordsFromItemModel(t).length;
22428  }, e.prototype.getLineCoords = function(t, a) {
22429    if (this._flatCoordsOffset) {
22430      for (var n = this._flatCoordsOffset[t * 2], i = this._flatCoordsOffset[t * 2 + 1], o = 0; o < i; o++) a[o] = a[o] || [], a[o][0] = this._flatCoords[n + o * 2], a[o][1] = this._flatCoords[n + o * 2 + 1];
22431      return i;
22432    } else {
22433      for (var s = this._getCoordsFromItemModel(t), o = 0; o < s.length;
22433 o++) a[o] = a[o] || [], a[o][0] = s[o][0], a[o][1] = s[o][1];
22434      return s.length;
22435    }
22436  }, e.prototype._processFlatCoordsArray = function(t) {
22437    var a = 0;
22438    if (this._flatCoords && (a = this._flatCoords.length), wt(t[0])) {
22439      for (var n = t.length, i = new eW(n), o = new rW(n), s = 0, l = 0, u = 0, f = 0; f < n; ) {
22440        u++;
22441        var h = t[f++];
22442        i[l++] = s + a, i[l++] = h;
22443        for (var v = 0; v < h; v++) {
22444          var c = t[f++], p = t[f++];
22445          o[s++] = c, o[s++] = p;
22446        }
22447      }
22448      return { flatCoordsOffset: new Uint32Array(i.buffer, 0, l), flatCoords: o, count: u };
22449    }
22450    return { flatCoordsOffset: null, flatCoords: null, count: t.length };
22451  }, e.prototype.getInitialData = function(t, a) {
22452    var n = new be(["value"], this);
22453    return n.hasItemOption = false, n.initData(t.data, [], function(i, o, s, l) {
22454      if (i instanceof Array) return NaN;
22455      n.hasItemOption = true;
22456      var u = i.value;
22457      if (u != null) return u instanceof Array ? u[l] : u;
22458    }), n;
22459  }, e.prototype.formatTooltip = function(t, a, n) {
22460    var i = this.getData(), o = i.getItemModel(t), s = o.get("name");
22461    if (s) return s;
22462    var l = o.get("fromName"), u = o.get("toName"), f = [];
22463    return l != null && f.push(l), u != null && f.push(u), le("nameValue", { name: f.join(" > ") });
22464  }, e.prototype.preventIncremental = function() {
22465    return !!this.get(["effect", "show"]);
22466  }, e.prototype.getProgressive = function() {
22467    var t = this.option.progressive;
22468    return t ?? (this.option.large ? 1e4 : this.get("progressive"));
22469  }, e.prototype.getProgressiveThreshold = function() {
22470    var t = this.option.progressiveThreshold;
22471    return t ?? (this.option.large ? 2e4 : this.get("progressiveThreshold"));
22472  }, e.prototype.getZLevelKey = function() {
22473    var t = this.getModel("effect"), a = t.get("trailLength");
22474    return this.getData().count() > this.getProgressiveThreshold() ? this.id : t.get("show") && a > 0 ? a + "" : "";
22475  }, e.type = "series.lines", e.dependencies = ["grid", "polar", "geo", "calendar"], e.defaultOption = { coordinateSystem: "geo", z: 2, legendHoverLink: true, xAxisIndex: 0, yAxisIndex: 0, symbol: ["none", "none"], symbolSize: [10, 10], geoIndex: 0, effect: { show: false, period: 4, constantSpeed: 0, symbol: "circle", symbolSize: 3, loop: true, trailLength: 0.2 }, large: false, largeThreshold: 2e3, polyline: false, clip: true, label: { show: false, position: "end" }, lineStyle: { opacity: 0.5 } }, e;
22476}(Et);
22477function Uu(r) {
22478  return r instanceof Array || (r = [r, r]), r;
22479}
22480var nW = { seriesType: "lines", reset: function(r) {
22481  var e = Uu(r.get("symbol")), t = Uu(r.get("symbolSize")), a = r.getData();
22482  a.setVisual("fromSymbol", e && e[0]), a.setVisual("toSymbol", e && e[1]), a.setVisual("fromSymbolSize", t && t[0]), a.setVisual("toSymbolSize", t && t[1]);
22483  function n(i, o) {
22484    var s = i.getItemModel(o), l = Uu(s.getShallow("symbol", true)), u = Uu(s.getShallow("symbolSize", true));
22485    l[0] && i.setItemVisual(o, "fromSymbol", l[0]), l[1] && i.setItemVisual(o, "toSymbol", l[1]), u[0] && i.setItemVisual(o, "fromSymbolSize", u[0]), u[1] && i.setItemVisual(o, "toSymbolSize", u[1]);
22486  }
22487  return { dataEach: a.hasItemOption ? n : null };
22488} };
22489function iW(r) {
22490  r.registerChartView(tW), r.registerSeriesModel(aW), r.registerLayout(NI), r.registerVisual(nW);
22491}
22492var oW = 256, sW = function() {
22493  function r() {
22494    this.blurSize = 30, this.pointSize = 20, this.maxOpacity = 1, this.minOpacity = 0, this._gradientPixels = { inRange: null, outOfRange: null };
22495    var e = Lr.createCanvas();
22496    this.canvas = e;
22497  }
22498  return r.prototype.update = function(e, t, a, n, i, o) {
22499    var s = this._getBrush(), l = this._getGradient(i, "inRange"), u = this._getGradient(i, "outOfRange"), f = this.pointSize + this.blurSize, h = this.canvas, v = h.getContext("2d"), c = e.length;
22500    h.width = t, h.height = a;
22501    for (var p = 0; p < c; ++p) {
22502      var d = e[p], g = d[0], y = d[1], m = d[2], _ = n(m);
22503      v.globalAlpha = _, v.drawImage(s, g - f, y - f);
22504    }
22505    if (!h.width || !h.height) return h;
22506    for (var S = v.getImageData(0, 0, h.width, h.height), b = S.data, x = 0, w = b.length, T = this.minOpacity, C = this.maxOpacity, A = C - T; x < w; ) {
22507      var _ = b[x + 3] / 256, M = Math.floor(_ * (oW - 1)) * 4;
22508      if (_ > 0) {
22509        var I = o(_) ? l : u;
22510        _ > 0 && (_ = _ * A + T), b[x++] = I[M], b[x++] = I[M + 1], b[x++] = I[M + 2], b[x++] = I[M + 3] * _ * 256;
22511      } else x += 4;
22512    }
22513    return v.putImageData(S, 0, 0), h;
22514  }, r.prototype._getBrush = function() {
22515    var e = this._brushCanvas || (this._brushCanvas = Lr.createCanvas()), t = this.pointSize + this.blurSize, a = t * 2;
22516    e.width = a, e.height = a;
22517    var n = e.getContext("2d");
22518    return n.clearRect(0, 0, a, a), n.shadowOffsetX = a, n.shadowBlur = this.blurSize, n.shadowColor = "#000", n.beginPath(), n.arc(-t, t, this.pointSize, 0, Math.PI * 2, true), n.closePath(), n.fill(), e;
22519  }, r.prototype._getGradient = function(e, t) {
22520    for (var a = this._gradientPixels, n = a[t] || (a[t] = new Uint8ClampedArray(256 * 4)), i = [0, 0, 0, 0], o = 0, s = 0; s < 256; s++) e[t](s / 255, true, i), n[o++] = i[0], n[o++] = i[1], n[o++] = i[2], n[o++] = i[3];
22521    return n;
22522  }, r;
22523}();
22524function lW(r, e, t) {
22525  var a = r[1] - r[0];
22526  e = G(e, function(o) {
22527    return { interval: [(o.interval[0] - r[0]) / a, (o.interval[1] - r[0]) / a] };
22528  });
22529  var n = e.length, i = 0;
22530  return function(o) {
22531    var s;
22532    for (s = i; s < n; s++) {
22533      var l = e[s].interval;
22534      if (l[0] <= o && o <= l[1]) {
22535        i = s;
22536        break;
22537      }
22538    }
22539    if (s === n) for (s = i - 1; s >= 0; s--) {
22540      var l = e[s].interval;
22541      if (l[0] <= o && o <= l[1]) {
22542        i = s;
22543        break;
22544      }
22545    }
22546    return s >= 0 && s < n && t[s];
22547  };
22548}
22549function uW(r, e) {
22550  var t = r[1] - r[0];
22551  return e = [(e[0] - r[0]) / t, (e[1] - r[0]) / t], function(a) {
22552    return a >= e[0] && a <= e[1];
22553  };
22554}
22555function Hx(r) {
22556  var e = r.dimensions;
22557  return e[0] === "lng" && e[1] === "lat";
22558}
22559var fW = function(r) {
22560  N(e, r);
22561  function e() {
22562    var t = r !== null && r.apply(this, arguments) || this;
22563    return t.type = e.type, t;
22564  }
22565  return e.prototype.render = function(t, a, n) {
22566    var i;
22567    a.eachComponent("visualMap", function(s) {
22568      s.eachTargetSeries(function(l) {
22569        l === t && (i = s);
22570      });
22571    }), this._progressiveEls = null, this.group.removeAll();
22572    var o = t.coordinateSystem;
22573    o.type === "cartesian2d" || o.type === "calendar" ? this._renderOnCartesianAndCalendar(t, n, 0, t.getData().count()) : Hx(o) && this._renderOnGeo(o, t, i, n);
22574  }, e.prototype.incrementalPrepareRender = function(t, a, n) {
22575    this.group.removeAll();
22576  }, e.prototype.incrementalRender = function(t, a, n, i) {
22577    var o = a.coordinateSystem;
22578    o && (Hx(o) ? this.render(a, n, i) : (this._progressiveEls = [], this._renderOnCartesianAndCalendar(a, i, t.start, t.end, true)));
22579  }, e.prototype.eachRendered = function(t) {
22580    un(this._progressiveEls || this.group, t);
22581  }, e.prototype._renderOnCartesianAndCalendar = function(t, a, n, i, o) {
22582    var s = t.coordinateSystem, l = Ti(s, "cartesian2d"), u, f, h, v;
22583    if (l) {
22584      var c = s.getAxis("x"), p = s.getAxis("y");
22585      u = c.getBandWidth() + 0.5, f = p.getBandWidth() + 0.5, h = c.scale.getExtent(), v = p.scale.getExtent();
22586    }
22587    for (var d = this.group, g = t.getData(), y = t.getModel(["emphasis", "itemStyle"]).getItemStyle(), m = t.getModel(["blur", "itemStyle"]).getItemStyle(), _ = t.getModel(["select", "itemStyle"]).getItemStyle(), S = t.get(["itemStyle", "borderRadius"]), b = se(t), x = t.getModel("emphasis"), w = x.get("focus"), T = x.get("blurScope"), C = x.get("disabled"), A = l ? [g.mapDimension("x"), g.mapDimension("y"), g.mapDimension("value")] : [g.mapDimension("time"), g.mapDimension("value")], M = n; M < i; M++) {
22588      var I = void 0, L = g.getItemVisual(M, "style");
22589      if (l) {
22590        var P = g.get(A[0], M), R = g.get(A[1], M);
22591        if (isNaN(g.get(A[2], M)) || isNaN(P) || isNaN(R) || P < h[0] || P > h[1] || R < v[0] || R > v[1]) continue;
22592        var E = s.dataToPoint([P, R]);
22593        I = new xt({ shape: { x: E[0] - u / 2, y: E[1] - f / 2, width: u, height: f }, style: L });
22594      } else {
22595        if (isNaN(g.get(A[1], M))) continue;
22596        I = new xt({ z2: 1, shape: s.dataToRect([g.get(A[0], M)]).contentShape, style: L });
22597      }
22598      if (g.hasItemOption) {
22599        var O = g.getItemModel(M), k = O.getModel("emphasis");
22600        y = k.getModel("itemStyle").getItemStyle(), m = O.getModel(["blur", "itemStyle"]).getItemStyle(), _ = O.getModel(["select", "itemStyle"]).getItemStyle(), S = O.get(["itemStyle", "borderRadius"]), w = k.get("focus"), T = k.get("blurScope"), C = k.get("disabled"), b = se(O);
22601      }
22602      I.shape.r = S;
22603      var B = t.getRawValue(M), F = "-";
22604      B && B[2] != null && (F = B[2] + ""), de(I, b, { labelFetcher: t, labelDataIndex: M, defaultOpacity: L.opacity, defaultText: F }), I.ensureState("emphasis").style = y, I.ensureState("blur").style = m, I.ensureState("select").style = _, Wt(I, w, T, C), I.incremental = o, o && (I.states.emphasis.hoverLayer = true), d.add(I), g.setItemGraphicEl(M, I), this._progressiveEls && this._progressiveEls.push(I);
22605    }
22606  }, e.prototype._renderOnGeo = function(t, a, n, i) {
22607    var o = n.targetVisuals.inRange, s = n.targetVisuals.outOfRange, l = a.getData(), u = this._hmLayer || this._hmLayer || new sW();
22608    u.blurSize = a.get("blurSize"), u.pointSize = a.get("pointSize"), u.minOpacity = a.get("minOpacity"), u.maxOpacity = a.get("maxOpacity");
22609    var f = t.getViewRect().clone(), h = t.getRoamTransform();
22610    f.applyTransform(h);
22611    var v = Math.max(f.x, 0), c = Math.max(f.y, 0), p = Math.min(f.width + f.x, i.getWidth()), d = Math.min(f.height + f.y, i.getHeight()), g = p - v, y = d - c, m = [l.mapDimension("lng"), l.mapDimension("lat"), l.mapDimension("value")], _ = l.mapArray(m, function(w, T, C) {
22612      var A = t.dataToPoint([w, T]);
22613      return A[0] -= v, A[1] -= c, A.push(C), A;
22614    }), S = n.getExtent(), b = n.type === "visualMap.continuous" ? uW(S, n.option.range) : lW(S, n.getPieceList(), n.option.selected);
22615    u.update(_, g, y, o.color.getNormalizer(), { inRange: o.color.getColorMapper(), outOfRange: s.color.getColorMapper() }, b);
22616    var x = new ue({ style: { width: g, height: y, x: v, y: c, image: u.canvas }, silent: true });
22617    this.group.add(x);
22618  }, e.type = "heatmap", e;
22619}(Pt), hW = function(r) {
22620  N(e, r);
22621  function e() {
22622    var t = r !== null && r.apply(this, arguments) || this;
22623    return t.type = e.type, t;
22624  }
22625  return e.prototype.getInitialData = function(t, a) {
22626    return aa(null, this, { generateCoord: "value" });
22627  }, e.prototype.preventIncremental = function() {
22628    var t = Vo.get(this.get("coordinateSystem"));
22629    if (t && t.dimensions) return t.dimensions[0] === "lng" && t.dimensions[1] === "lat";
22630  }, 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;
22631}(Et);
22632function vW(r) {
22633  r.registerChartView(fW), r.registerSeriesModel(hW);
22634}
22635var cW = ["itemStyle", "borderWidth"], Wx = [{ xy: "x", wh: "width", index: 0, posDesc: ["left", "right"] }, { xy: "y", wh: "height", index: 1, posDesc: ["top", "bottom"] }], sp = new ea(), pW = function(r) {
22636  N(e, r);
22637  function e() {
22638    var t = r !== null && r.apply(this, arguments) || this;
22639    return t.type = e.type, t;
22640  }
22641  return e.prototype.render = function(t, a, n) {
22642    var i = this.group, o = t.getData(), s = this._data, l = t.coordinateSystem, u = l.getBaseAxis(), f = u.isHorizontal(), h = l.master.getRect(), v = { ecSize: { width: n.getWidth(), height: n.getHeight() }, seriesModel: t, coordSys: l, coordSysExtent: [[h.x, h.x + h.width], [h.y, h.y + h.height]], isHorizontal: f, valueDim: Wx[+f], categoryDim: Wx[1 
22642- +f] };
22643    o.diff(s).add(function(p) {
22644      if (o.hasValue(p)) {
22645        var d = Yx(o, p), g = Ux(o, p, d, v), y = $x(o, v, g);
22646        o.setItemGraphicEl(p, y), i.add(y), Zx(y, v, g);
22647      }
22648    }).update(function(p, d) {
22649      var g = s.getItemGraphicEl(d);
22650      if (!o.hasValue(p)) {
22651        i.remove(g);
22652        return;
22653      }
22654      var y = Yx(o, p), m = Ux(o, p, y, v), _ = HI(o, m);
22655      g && _ !== g.__pictorialShapeStr && (i.remove(g), o.setItemGraphicEl(p, null), g = null), g ? xW(g, v, m) : g = $x(o, v, m, true), o.setItemGraphicEl(p, g), g.__pictorialSymbolMeta = m, i.add(g), Zx(g, v, m);
22656    }).remove(function(p) {
22657      var d = s.getItemGraphicEl(p);
22658      d && Xx(s, p, d.__pictorialSymbolMeta.animationModel, d);
22659    }).execute();
22660    var c = t.get("clip", true) ? Yl(t.coordinateSystem, false, t) : null;
22661    return c ? i.setClipPath(c) : i.removeClipPath(), this._data = o, this.group;
22662  }, e.prototype.remove = function(t, a) {
22663    var n = this.group, i = this._data;
22664    t.get("animation") ? i && i.eachItemGraphicEl(function(o) {
22665      Xx(i, it(o).dataIndex, t, o);
22666    }) : n.removeAll();
22667  }, e.type = "pictorialBar", e;
22668}(Pt);
22669function Ux(r, e, t, a) {
22670  var n = r.getItemLayout(e), i = t.get("symbolRepeat"), o = t.get("symbolClip"), s = t.get("symbolPosition") || "start", l = t.get("symbolRotate"), u = (l || 0) * Math.PI / 180 || 0, f = t.get("symbolPatternSize") || 2, h = t.isAnimationEnabled(), v = { dataIndex: e, layout: n, itemModel: t, symbolType: r.getItemVisual(e, "symbol") || "circle", style: r.getItemVisual(e, "style"), symbolClip: o, symbolRepeat: i, symbolRepeatDirection: t.get("symbolRepeatDirection"), symbolPatternSize: f, rotation: u, animationModel: h ? t : null, hoverScale: h && t.get(["emphasis", "scale"]), z2: t.getShallow("z", true) || 0 };
22671  dW(t, i, n, a, v), gW(r, e, n, i, o, v.boundingLength, v.pxSign, f, a, v), yW(t, v.symbolScale, u, a, v);
22672  var c = v.symbolSize, p = wi(t.get("symbolOffset"), c);
22673  return mW(t, c, n, i, o, p, s, v.valueLineWidth, v.boundingLength, v.repeatCutLength, a, v), v;
22674}
22675function dW(r, e, t, a, n) {
22676  var i = a.valueDim, o = r.get("symbolBoundingData"), s = a.coordSys.getOtherAxis(a.coordSys.getBaseAxis()), l = s.toGlobalCoord(s.dataToCoord(0)), u = 1 - +(t[i.wh] <= 0), f;
22677  if (V(o)) {
22678    var h = [lp(s, o[0]) - l, lp(s, o[1]) - l];
22679    h[1] < h[0] && h.reverse(), f = h[u];
22680  } else o != null ? f = lp(s, o) - l : e ? f = a.coordSysExtent[i.index][u] - l : f = t[i.wh];
22681  n.boundingLength = f, e && (n.repeatCutLength = t[i.wh]);
22682  var v = i.xy === "x", c = s.inverse;
22683  n.pxSign = v && !c || !v && c ? f >= 0 ? 1 : -1 : f > 0 ? 1 : -1;
22684}
22685function lp(r, e) {
22686  return r.toGlobalCoord(r.dataToCoord(r.scale.parse(e)));
22687}
22688function gW(r, e, t, a, n, i, o, s, l, u) {
22689  var f = l.valueDim, h = l.categoryDim, v = Math.abs(t[h.wh]), c = r.getItemVisual(e, "symbolSize"), p;
22690  V(c) ? p = c.slice() : c == null ? p = ["100%", "100%"] : p = [c, c], p[h.index] = W(p[h.index], v), p[f.index] = W(p[f.index], a ? v : Math.abs(i)), u.symbolSize = p;
22691  var d = u.symbolScale = [p[0] / s, p[1] / s];
22692  d[f.index] *= (l.isHorizontal ? -1 : 1) * o;
22693}
22694function yW(r, e, t, a, n) {
22695  var i = r.get(cW) || 0;
22696  i && (sp.attr({ scaleX: e[0], scaleY: e[1], rotation: t }), sp.updateTransform(), i /= sp.getLineScale(), i *= e[a.valueDim.index]), n.valueLineWidth = i || 0;
22697}
22698function mW(r, e, t, a, n, i, o, s, l, u, f, h) {
22699  var v = f.categoryDim, c = f.valueDim, p = h.pxSign, d = Math.max(e[c.index] + s, 0), g = d;
22700  if (a) {
22701    var y = Math.abs(l), m = ne(r.get("symbolMargin"), "15%") + "", _ = false;
22702    m.lastIndexOf("!") === m.length - 1 && (_ = true, m = m.slice(0, m.length - 1));
22703    var S = W(m, e[c.index]), b = Math.max(d + S * 2, 0), x = _ ? 0 : S * 2, w = Ug(a), T = w ? a : qx((y + x) / b), C = y - T * d;
22704    S = C / 2 / (_ ? T : Math.max(T - 1, 1)), b = d + S * 2, x = _ ? 0 : S * 2, !w && a !== "fixed" && (T = u ? qx((Math.abs(u) + x) / b) : 0), g = T * b - x, h.repeatTimes = T, h.symbolMargin = S;
22705  }
22706  var A = p * (g / 2), M = h.pathPosition = [];
22707  M[v.index] = t[v.wh] / 2, M[c.index] = o === "start" ? A : o === "end" ? l - A : l / 2, i && (M[0] += i[0], M[1] += i[1]);
22708  var I = h.bundlePosition = [];
22709  I[v.index] = t[v.xy], I[c.index] = t[c.xy];
22710  var L = h.barRectShape = z({}, t);
22711  L[c.wh] = p * Math.max(Math.abs(t[c.wh]), Math.abs(M[c.index] + A)), L[v.wh] = t[v.wh];
22712  var P = h.clipShape = {};
22713  P[v.xy] = -t[v.xy], P[v.wh] = f.ecSize[v.wh], P[c.xy] = 0, P[c.wh] = t[c.wh];
22714}
22715function BI(r) {
22716  var e = r.symbolPatternSize, t = qt(r.symbolType, -e / 2, -e / 2, e, e);
22717  return t.attr({ culling: true }), t.type !== "image" && t.setStyle({ strokeNoScale: true }), t;
22718}
22719function zI(r, e, t, a) {
22720  var n = r.__pictorialBundle, i = t.symbolSize, o = t.valueLineWidth, s = t.pathPosition, l = e.valueDim, u = t.repeatTimes || 0, f = 0, h = i[e.valueDim.index] + o + t.symbolMargin * 2;
22721  for (wm(r, function(d) {
22722    d.__pictorialAnimationIndex = f, d.__pictorialRepeatTimes = u, f < u ? co(d, null, p(f), t, a) : co(d, null, { scaleX: 0, scaleY: 0 }, t, a, function() {
22723      n.remove(d);
22724    }), f++;
22725  }); f < u; f++) {
22726    var v = BI(t);
22727    v.__pictorialAnimationIndex = f, v.__pictorialRepeatTimes = u, n.add(v);
22728    var c = p(f);
22729    co(v, { x: c.x, y: c.y, scaleX: 0, scaleY: 0 }, { scaleX: c.scaleX, scaleY: c.scaleY, rotation: c.rotation }, t, a);
22730  }
22731  function p(d) {
22732    var g = s.slice(), y = t.pxSign, m = d;
22733    return (t.symbolRepeatDirection === "start" ? y > 0 : y < 0) && (m = u - 1 - d), g[l.index] = h * (m - u / 2 + 0.5) + s[l.index], { x: g[0], y: g[1], scaleX: t.symbolScale[0], scaleY: t.symbolScale[1], rotation: t.rotation };
22734  }
22735}
22736function VI(r, e, t, a) {
22737  var n = r.__pictorialBundle, i = r.__pictorialMainPath;
22738  i ? co(i, null, { x: t.pathPosition[0], y: t.pathPosition[1], scaleX: t.symbolScale[0], scaleY: t.symbolScale[1], rotation: t.rotation }, t, a) : (i = r.__pictorialMainPath = BI(t), n.add(i), co(i, { x: t.pathPosition[0], y: t.pathPosition[1], scaleX: 0, scaleY: 0, rotation: t.rotation }, { scaleX: t.symbolScale[0], scaleY: t.symbolScale[1] }, t, a));
22739}
22740function GI(r, e, t) {
22741  var a = z({}, e.barRectShape), n = r.__pictorialBarRect;
22742  n ? co(n, null, { shape: a }, e, t) : (n = r.__pictorialBarRect = new xt({ z2: 2, shape: a, silent: true, style: { stroke: "transparent", fill: "transparent", lineWidth: 0 } }), n.disableMorphing = true, r.add(n));
22743}
22744function FI(r, e, t, a) {
22745  if (t.symbolClip) {
22746    var n = r.__pictorialClipPath, i = z({}
22746, t.clipShape), o = e.valueDim, s = t.animationModel, l = t.dataIndex;
22747    if (n) Tt(n, { shape: i }, s, l);
22748    else {
22749      i[o.wh] = 0, n = new xt({ shape: i }), r.__pictorialBundle.setClipPath(n), r.__pictorialClipPath = n;
22750      var u = {};
22751      u[o.wh] = t.clipShape[o.wh], xi[a ? "updateProps" : "initProps"](n, { shape: u }, s, l);
22752    }
22753  }
22754}
22755function Yx(r, e) {
22756  var t = r.getItemModel(e);
22757  return t.getAnimationDelayParams = _W, t.isAnimationEnabled = SW, t;
22758}
22759function _W(r) {
22760  return { index: r.__pictorialAnimationIndex, count: r.__pictorialRepeatTimes };
22761}
22762function SW() {
22763  return this.parentModel.isAnimationEnabled() && !!this.getShallow("animation");
22764}
22765function $x(r, e, t, a) {
22766  var n = new at(), i = new at();
22767  return n.add(i), n.__pictorialBundle = i, i.x = t.bundlePosition[0], i.y = t.bundlePosition[1], t.symbolRepeat ? zI(n, e, t) : VI(n, e, t), GI(n, t, a), FI(n, e, t, a), n.__pictorialShapeStr = HI(r, t), n.__pictorialSymbolMeta = t, n;
22768}
22769function xW(r, e, t) {
22770  var a = t.animationModel, n = t.dataIndex, i = r.__pictorialBundle;
22771  Tt(i, { x: t.bundlePosition[0], y: t.bundlePosition[1] }, a, n), t.symbolRepeat ? zI(r, e, t, true) : VI(r, e, t, true), GI(r, t, true), FI(r, e, t, true);
22772}
22773function Xx(r, e, t, a) {
22774  var n = a.__pictorialBarRect;
22775  n && n.removeTextContent();
22776  var i = [];
22777  wm(a, function(o) {
22778    i.push(o);
22779  }), a.__pictorialMainPath && i.push(a.__pictorialMainPath), a.__pictorialClipPath && (t = null), D(i, function(o) {
22780    rn(o, { scaleX: 0, scaleY: 0 }, t, e, function() {
22781      a.parent && a.parent.remove(a);
22782    });
22783  }), r.setItemGraphicEl(e, null);
22784}
22785function HI(r, e) {
22786  return [r.getItemVisual(e.dataIndex, "symbol") || "none", !!e.symbolRepeat, !!e.symbolClip].join(":");
22787}
22788function wm(r, e, t) {
22789  D(r.__pictorialBundle.children(), function(a) {
22790    a !== r.__pictorialBarRect && e.call(t, a);
22791  });
22792}
22793function co(r, e, t, a, n, i) {
22794  e && r.attr(e), a.symbolClip && !n ? t && r.attr(t) : t && xi[n ? "updateProps" : "initProps"](r, t, a.animationModel, a.dataIndex, i);
22795}
22796function Zx(r, e, t) {
22797  var a = t.dataIndex, n = t.itemModel, i = n.getModel("emphasis"), o = i.getModel("itemStyle").getItemStyle(), s = n.getModel(["blur", "itemStyle"]).getItemStyle(), l = n.getModel(["select", "itemStyle"]).getItemStyle(), u = n.getShallow("cursor"), f = i.get("focus"), h = i.get("blurScope"), v = i.get("scale");
22798  wm(r, function(d) {
22799    if (d instanceof ue) {
22800      var g = d.style;
22801      d.useStyle(z({ image: g.image, x: g.x, y: g.y, width: g.width, height: g.height }, t.style));
22802    } else d.useStyle(t.style);
22803    var y = d.ensureState("emphasis");
22804    y.style = o, v && (y.scaleX = d.scaleX * 1.1, y.scaleY = d.scaleY * 1.1), d.ensureState("blur").style = s, d.ensureState("select").style = l, u && (d.cursor = u), d.z2 = t.z2;
22805  });
22806  var c = e.valueDim.posDesc[+(t.boundingLength > 0)], p = r.__pictorialBarRect;
22807  p.ignoreClip = true, de(p, se(n), { labelFetcher: e.seriesModel, labelDataIndex: a, defaultText: bo(e.seriesModel.getData(), a), inheritColor: t.style.fill, defaultOpacity: t.style.opacity, defaultOutsidePosition: c }), Wt(r, f, h, i.get("disabled"));
22808}
22809function qx(r) {
22810  var e = Math.round(r);
22811  return Math.abs(r - e) < 1e-4 ? e : Math.ceil(r);
22812}
22813var bW = function(r) {
22814  N(e, r);
22815  function e() {
22816    var t = r !== null && r.apply(this, arguments) || this;
22817    return t.type = e.type, t.hasSymbolVisual = true, t.defaultSymbol = "roundRect", t;
22818  }
22819  return e.prototype.getInitialData = function(t) {
22820    return t.stack = null, r.prototype.getInitialData.apply(this, arguments);
22821  }, e.type = "series.pictorialBar", e.dependencies = ["grid"], e.defaultOption = fn(_l.defaultOption, { symbol: "circle", symbolSize: null, symbolRotate: null, symbolPosition: null, symbolOffset: null, symbolMargin: null, symbolRepeat: false, symbolRepeatDirection: "end", symbolClip: false, symbolBoundingData: null, symbolPatternSize: 400, barGap: "-100%", clip: false, progressive: 0, emphasis: { scale: false }, select: { itemStyle: { borderColor: "#212121" } } }), e;
22822}(_l);
22823function wW(r) {
22824  r.registerChartView(pW), r.registerSeriesModel(bW), r.registerLayout(r.PRIORITY.VISUAL.LAYOUT, lt(CD, "pictorialBar")), r.registerLayout(r.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT, AD("pictorialBar"));
22825}
22826var TW = function(r) {
22827  N(e, r);
22828  function e() {
22829    var t = r !== null && r.apply(this, arguments) || this;
22830    return t.type = e.type, t._layers = [], t;
22831  }
22832  return e.prototype.render = function(t, a, n) {
22833    var i = t.getData(), o = this, s = this.group, l = t.getLayerSeries(), u = i.getLayout("layoutInfo"), f = u.rect, h = u.boundaryGap;
22834    s.x = 0, s.y = f.y + h[0];
22835    function v(g) {
22836      return g.name;
22837    }
22838    var c = new Sa(this._layersSeries || [], l, v, v), p = [];
22839    c.add($(d, this, "add")).update($(d, this, "update")).remove($(d, this, "remove")).execute();
22840    function d(g, y, m) {
22841      var _ = o._layers;
22842      if (g === "remove") {
22843        s.remove(_[y]);
22844        return;
22845      }
22846      for (var S = [], b = [], x, w = l[y].indices, T = 0; T < w.length; T++) {
22847        var C = i.getItemLayout(w[T]), A = C.x, M = C.y0, I = C.y;
22848        S.push(A, M), b.push(A, M + I), x = i.getItemVisual(w[T], "style");
22849      }
22850      var L, P = i.getItemLayout(w[0]), R = t.getModel("label"), E = R.get("margin"), O = t.getModel("emphasis");
22851      if (g === "add") {
22852        var k = p[y] = new at();
22853        L = new pM({ shape: { points: S, stackedOnPoints: b, smooth: 0.4, stackedOnSmooth: 0.4, smoothConstraint: false }, z2: 0 }), k.add(L), s.add(k), t.isAnimationEnabled() && L.setClipPath(CW(L.getBoundingRect
22853(), t, function() {
22854          L.removeClipPath();
22855        }));
22856      } else {
22857        var k = _[m];
22858        L = k.childAt(0), s.add(k), p[y] = k, Tt(L, { shape: { points: S, stackedOnPoints: b } }, t), Er(L);
22859      }
22860      de(L, se(t), { labelDataIndex: w[T - 1], defaultText: i.getName(w[T - 1]), inheritColor: x.fill }, { normal: { verticalAlign: "middle" } }), L.setTextConfig({ position: null, local: true });
22861      var B = L.getTextContent();
22862      B && (B.x = P.x - E, B.y = P.y0 + P.y / 2), L.useStyle(x), i.setItemGraphicEl(y, L), pe(L, t), Wt(L, O.get("focus"), O.get("blurScope"), O.get("disabled"));
22863    }
22864    this._layersSeries = l, this._layers = p;
22865  }, e.type = "themeRiver", e;
22866}(Pt);
22867function CW(r, e, t) {
22868  var a = new xt({ shape: { x: r.x - 10, y: r.y - 10, width: 0, height: r.height + 20 } });
22869  return Gt(a, { shape: { x: r.x - 50, width: r.width + 100, height: r.height + 20 } }, e, t), a;
22870}
22871var up = 2, AW = function(r) {
22872  N(e, r);
22873  function e() {
22874    var t = r !== null && r.apply(this, arguments) || this;
22875    return t.type = e.type, t;
22876  }
22877  return e.prototype.init = function(t) {
22878    r.prototype.init.apply(this, arguments), this.legendVisualProvider = new Zl($(this.getData, this), $(this.getRawData, this));
22879  }, e.prototype.fixData = function(t) {
22880    var a = t.length, n = {}, i = od(t, function(v) {
22881      return n.hasOwnProperty(v[0] + "") || (n[v[0] + ""] = -1), v[2];
22882    }), o = [];
22883    i.buckets.each(function(v, c) {
22884      o.push({ name: c, dataList: v });
22885    });
22886    for (var s = o.length, l = 0; l < s; ++l) {
22887      for (var u = o[l].name, f = 0; f < o[l].dataList.length; ++f) {
22888        var h = o[l].dataList[f][0] + "";
22889        n[h] = l;
22890      }
22891      for (var h in n) n.hasOwnProperty(h) && n[h] !== l && (n[h] = l, t[a] = [h, 0, u], a++);
22892    }
22893    return t;
22894  }, e.prototype.getInitialData = function(t, a) {
22895    for (var n = this.getReferringComponents("singleAxis", Jt).models[0], i = n.get("type"), o = Ct(t.data, function(p) {
22896      return p[2] !== void 0;
22897    }), s = this.fixData(o || []), l = [], u = this.nameMap = Z(), f = 0, h = 0; h < s.length; ++h) l.push(s[h][up]), u.get(s[h][up]) || (u.set(s[h][up], f), f++);
22898    var v = Wo(s, { coordDimensions: ["single"], dimensionsDefine: [{ name: "time", type: Zf(i) }, { name: "value", type: "float" }, { name: "name", type: "ordinal" }], encodeDefine: { single: 0, value: 1, itemName: 2 } }).dimensions, c = new be(v, this);
22899    return c.initData(s), c;
22900  }, e.prototype.getLayerSeries = function() {
22901    for (var t = this.getData(), a = t.count(), n = [], i = 0; i < a; ++i) n[i] = i;
22902    var o = t.mapDimension("single"), s = od(n, function(u) {
22903      return t.get("name", u);
22904    }), l = [];
22905    return s.buckets.each(function(u, f) {
22906      u.sort(function(h, v) {
22907        return t.get(o, h) - t.get(o, v);
22908      }), l.push({ name: f, indices: u });
22909    }), l;
22910  }, e.prototype.getAxisTooltipData = function(t, a, n) {
22911    V(t) || (t = t ? [t] : []);
22912    for (var i = this.getData(), o = this.getLayerSeries(), s = [], l = o.length, u, f = 0; f < l; ++f) {
22913      for (var h = Number.MAX_VALUE, v = -1, c = o[f].indices.length, p = 0; p < c; ++p) {
22914        var d = i.get(t[0], o[f].indices[p]), g = Math.abs(d - a);
22915        g <= h && (u = d, h = g, v = o[f].indices[p]);
22916      }
22917      s.push(v);
22918    }
22919    return { dataIndices: s, nestestValue: u };
22920  }, e.prototype.formatTooltip = function(t, a, n) {
22921    var i = this.getData(), o = i.getName(t), s = i.get(i.mapDimension("value"), t);
22922    return le("nameValue", { name: o, value: s });
22923  }, 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: true, position: "left", fontSize: 11 }, emphasis: { label: { show: true } } }, e;
22924}(Et);
22925function DW(r, e) {
22926  r.eachSeriesByType("themeRiver", function(t) {
22927    var a = t.getData(), n = t.coordinateSystem, i = {}, o = n.getRect();
22928    i.rect = o;
22929    var s = t.get("boundaryGap"), l = n.getAxis();
22930    if (i.boundaryGap = s, l.orient === "horizontal") {
22931      s[0] = W(s[0], o.height), s[1] = W(s[1], o.height);
22932      var u = o.height - s[0] - s[1];
22933      Kx(a, t, u);
22934    } else {
22935      s[0] = W(s[0], o.width), s[1] = W(s[1], o.width);
22936      var f = o.width - s[0] - s[1];
22937      Kx(a, t, f);
22938    }
22939    a.setLayout("layoutInfo", i);
22940  });
22941}
22942function Kx(r, e, t) {
22943  if (r.count()) for (var a = e.coordinateSystem, n = e.getLayerSeries(), i = r.mapDimension("single"), o = r.mapDimension("value"), s = G(n, function(g) {
22944    return G(g.indices, function(y) {
22945      var m = a.dataToPoint(r.get(i, y));
22946      return m[1] = r.get(o, y), m;
22947    });
22948  }), l = MW(s), u = l.y0, f = t / l.max, h = n.length, v = n[0].indices.length, c, p = 0; p < v; ++p) {
22949    c = u[p] * f, r.setItemLayout(n[0].indices[p], { layerIndex: 0, x: s[0][p][0], y0: c, y: s[0][p][1] * f });
22950    for (var d = 1; d < h; ++d) c += s[d - 1][p][1] * f, r.setItemLayout(n[d].indices[p], { layerIndex: d, x: s[d][p][0], y0: c, y: s[d][p][1] * f });
22951  }
22952}
22953function MW(r) {
22954  for (var e = r.length, t = r[0].length, a = [], n = [], i = 0, o = 0; o < t; ++o) {
22955    for (var s = 0, l = 0; l < e; ++l) s += r[l][o][1];
22956    s > i && (i = s), a.push(s);
22957  }
22958  for (var u = 0; u < t;
22958 ++u) n[u] = (i - a[u]) / 2;
22959  i = 0;
22960  for (var f = 0; f < t; ++f) {
22961    var h = a[f] + n[f];
22962    h > i && (i = h);
22963  }
22964  return { y0: n, max: i };
22965}
22966function IW(r) {
22967  r.registerChartView(TW), r.registerSeriesModel(AW), r.registerLayout(DW), r.registerProcessor(Xl("themeRiver"));
22968}
22969var LW = 2, PW = 4, jx = function(r) {
22970  N(e, r);
22971  function e(t, a, n, i) {
22972    var o = r.call(this) || this;
22973    o.z2 = LW, o.textConfig = { inside: true }, it(o).seriesIndex = a.seriesIndex;
22974    var s = new St({ z2: PW, silent: t.getModel().get(["label", "silent"]) });
22975    return o.setTextContent(s), o.updateData(true, t, a, n, i), o;
22976  }
22977  return e.prototype.updateData = function(t, a, n, i, o) {
22978    this.node = a, a.piece = this, n = n || this._seriesModel, i = i || this._ecModel;
22979    var s = this;
22980    it(s).dataIndex = a.dataIndex;
22981    var l = a.getModel(), u = l.getModel("emphasis"), f = a.getLayout(), h = z({}, f);
22982    h.label = null;
22983    var v = a.getVisual("style");
22984    v.lineJoin = "bevel";
22985    var c = a.getVisual("decal");
22986    c && (v.decal = xo(c, o));
22987    var p = ti(l.getModel("itemStyle"), h, true);
22988    z(h, p), D(Oe, function(m) {
22989      var _ = s.ensureState(m), S = l.getModel([m, "itemStyle"]);
22990      _.style = S.getItemStyle();
22991      var b = ti(S, h);
22992      b && (_.shape = b);
22993    }), t ? (s.setShape(h), s.shape.r = f.r0, Gt(s, { shape: { r: f.r } }, n, a.dataIndex)) : (Tt(s, { shape: h }, n), Er(s)), s.useStyle(v), this._updateLabel(n);
22994    var d = l.getShallow("cursor");
22995    d && s.attr("cursor", d), this._seriesModel = n || this._seriesModel, this._ecModel = i || this._ecModel;
22996    var g = u.get("focus"), y = g === "relative" ? go(a.getAncestorsIndices(), a.getDescendantIndices()) : g === "ancestor" ? a.getAncestorsIndices() : g === "descendant" ? a.getDescendantIndices() : g;
22997    Wt(this, y, u.get("blurScope"), u.get("disabled"));
22998  }, e.prototype._updateLabel = function(t) {
22999    var a = this, n = this.node.getModel(), i = n.getModel("label"), o = this.node.getLayout(), s = o.endAngle - o.startAngle, l = (o.startAngle + o.endAngle) / 2, u = Math.cos(l), f = Math.sin(l), h = this, v = h.getTextContent(), c = this.node.dataIndex, p = i.get("minAngle") / 180 * Math.PI, d = i.get("show") && !(p != null && Math.abs(s) < p);
23000    v.ignore = !d, D(sl, function(y) {
23001      var m = y === "normal" ? n.getModel("label") : n.getModel([y, "label"]), _ = y === "normal", S = _ ? v : v.ensureState(y), b = t.getFormattedLabel(c, y);
23002      _ && (b = b || a.node.name), S.style = Nt(m, {}, null, y !== "normal", true), b && (S.style.text = b);
23003      var x = m.get("show");
23004      x != null && !_ && (S.ignore = !x);
23005      var w = g(m, "position"), T = _ ? h : h.states[y], C = T.style.fill;
23006      T.textConfig = { outsideFill: m.get("color") === "inherit" ? C : null, inside: w !== "outside" };
23007      var A, M = g(m, "distance") || 0, I = g(m, "align"), L = g(m, "rotate"), P = Math.PI * 0.5, R = Math.PI * 1.5, E = Ze(L === "tangential" ? Math.PI / 2 - l : l), O = E > P && !yo(E - P) && E < R;
23008      w === "outside" ? (A = o.r + M, I = O ? "right" : "left") : !I || I === "center" ? (s === 2 * Math.PI && o.r0 === 0 ? A = 0 : A = (o.r + o.r0) / 2, I = "center") : I === "left" ? (A = o.r0 + M, I = O ? "right" : "left") : I === "right" && (A = o.r - M, I = O ? "left" : "right"), S.style.align = I, S.style.verticalAlign = g(m, "verticalAlign") || "middle", S.x = A * u + o.cx, S.y = A * f + o.cy;
23009      var k = 0;
23010      L === "radial" ? k = Ze(-l) + (O ? Math.PI : 0) : L === "tangential" ? k = Ze(Math.PI / 2 - l) + (O ? Math.PI : 0) : wt(L) && (k = L * Math.PI / 180), S.rotation = Ze(k);
23011    });
23012    function g(y, m) {
23013      var _ = y.get(m);
23014      return _ ?? i.get(m);
23015    }
23016    v.dirtyStyle();
23017  }, e;
23018}(Te), sg = "sunburstRootToNode", Jx = "sunburstHighlight", RW = "sunburstUnhighlight";
23019function EW(r) {
23020  r.registerAction({ type: sg, update: "updateView" }, function(e, t) {
23021    t.eachComponent({ mainType: "series", subType: "sunburst", query: e }, a);
23022    function a(n, i) {
23023      var o = xl(e, [sg], n);
23024      if (o) {
23025        var s = n.getViewRoot();
23026        s && (e.direction = sm(s, o.node) ? "rollUp" : "drillDown"), n.resetViewRoot(o.node);
23027      }
23028    }
23029  }), r.registerAction({ type: Jx, update: "none" }, function(e, t, a) {
23030    e = z({}, e), t.eachComponent({ mainType: "series", subType: "sunburst", query: e }, n);
23031    function n(i) {
23032      var o = xl(e, [Jx], i);
23033      o && (e.dataIndex = o.node.dataIndex);
23034    }
23035    a.dispatchAction(z(e, { type: "highlight" }));
23036  }), r.registerAction({ type: RW, update: "updateView" }, function(e, t, a) {
23037    e = z({}, e), a.dispatchAction(z(e, { type: "downplay" }));
23038  });
23039}
23040var kW = function(r) {
23041  N(e, r);
23042  function e() {
23043    var t = r !== null && r.apply(this, arguments) || this;
23044    return t.type = e.type, t;
23045  }
23046  return e.prototype.render = function(t, a, n, i) {
23047    var o = this;
23048    this.seriesModel = t, this.api = n, this.ecModel = a;
23049    var s = t.getData(), l = s.tree.root, u = t.getViewRoot(), f = this.group, h = t.get("renderLabelForZeroData"), v = [];
23050    u.eachNode(function(m) {
23051      v.push(m);
23052    });
23053    var c = this._oldChildren || [];
23054    p(v, c), y(l, u), this._initEvents(), this._oldChildren = v;
23055    function p(m, _) {
23056      if (m.length === 0 && _.length === 0) return;
23057      new Sa(_, m, S, S).add(b).update(b).remove(lt(b, null)).execute();
23058      function S(x) {
23059        return x.getId();
23060      }
23061      function b(x, w) {
23062        var T = x == null ? null : m[x], C = w == null ? null : _[w];
23063        d(T, C);
23064      }
23065    }
23066    function d(m, _) {
23067      if (!h && m && !m.getValue() && (m = null), m !== l && _ !== l) {
23068        if (_ && _.piece) m ? (_.piece.updateData(false, m, t, a, n), s.setItemGraphicEl(m.dataIndex, _.piece)) : g(_);
23069        else if (m) {
23070          var S = new jx(m, t, a, n);
23071          f.add(S), s.setItemGraphicEl(m.dataIndex, S);
23072        }
23073      }
23074    }
23075    function g(m) {
23076      m && m.piece && (f.remove(m.piece), m.piece = null);
23077    }
23078    function y(m, _) {
23079      _.depth > 0 ? (o.virtualPiece ? o.virtualPiece.updateData(false, m, t, a, n) : (o.virtualPiece = new jx(m, t, a, n), f.add(o.virtualPiece)), _.piece.off("click"), o.virtualPiece.on("click", function(S) {
23080        o._rootToNode(_.parentNode);
23081      })) : o.virtualPiece && (f.remove(o.virtualPiece), o.virtualPiece = null);
23082    }
23083  }, e.prototype._initEvents = function() {
23084    var t = this;
23085    this.group.off("click"), this.group.on("click", function(a) {
23086      var n = false, i = t.seriesModel.getViewRoot();
23087      i.eachNode(function(o) {
23088        if (!n && o.piece && o.piece === a.target) {
23089          var s = o.getModel().get("nodeClick");
23090          if (s === "rootToNode") t._rootToNode(o);
23091          else if (s === "link") {
23092            var l = o.getModel(), u = l.get("link");
23093            if (u) {
23094              var f = l.get("target", true) || "_blank";
23095              zf(u, f);
23096            }
23097          }
23098          n = true;
23099        }
23100      });
23101    });
23102  }, e.prototype._rootToNode = function(t) {
23103    t !== this.seriesModel.getViewRoot() && this.api.dispatchAction({ type: sg, from: this.uid, seriesId: this.seriesModel.id, targetNode: t });
23104  }, e.prototype.containPoint = function(t, a) {
23105    var n = a.getData(), i = n.getItemLayout(0);
23106    if (i) {
23107      var o = t[0] - i.cx, s = t[1] - i.cy, l = Math.sqrt(o * o + s * s);
23108      return l <= i.r && l >= i.r0;
23109    }
23110  }, e.type = "sunburst", e;
23111}(Pt), OW = function(r) {
23112  N(e, r);
23113  function e() {
23114    var t = r !== null && r.apply(this, arguments) || this;
23115    return t.type = e.type, t.ignoreStyleOnData = true, t;
23116  }
23117  return e.prototype.getInitialData = function(t, a) {
23118    var n = { name: t.name, children: t.data };
23119    WI(n);
23120    var i = this._levelModels = G(t.levels || [], function(l) {
23121      return new At(l, this, a);
23122    }, this), o = om.createTree(n, this, s);
23123    function s(l) {
23124      l.wrapMethod("getItemModel", function(u, f) {
23125        var h = o.getNodeByDataIndex(f), v = i[h.depth];
23126        return v && (u.parentModel = v), u;
23127      });
23128    }
23129    return o.data;
23130  }, e.prototype.optionUpdated = function() {
23131    this.resetViewRoot();
23132  }, e.prototype.getDataParams = function(t) {
23133    var a = r.prototype.getDataParams.apply(this, arguments), n = this.getData().tree.getNodeByDataIndex(t);
23134    return a.treePathInfo = av(n, this), a;
23135  }, e.prototype.getLevelModel = function(t) {
23136    return this._levelModels && this._levelModels[t.depth];
23137  }, e.prototype.getViewRoot = function() {
23138    return this._viewRoot;
23139  }, e.prototype.resetViewRoot = function(t) {
23140    t ? this._viewRoot = t : t = this._viewRoot;
23141    var a = this.getRawData().tree.root;
23142    (!t || t !== a && !a.contains(t)) && (this._viewRoot = a);
23143  }, e.prototype.enableAriaDecal = function() {
23144    ZM(this);
23145  }, e.type = "series.sunburst", e.defaultOption = { z: 2, center: ["50%", "50%"], radius: [0, "75%"], clockwise: true, startAngle: 90, minAngle: 0, stillShowZeroSum: true, nodeClick: "rootToNode", renderLabelForZeroData: false, label: { rotate: "radial", show: true, opacity: 1, align: "center", position: "inside", distance: 5, silent: true }, 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: 0.2 }, label: { opacity: 0.1 } }, animationType: "expansion", animationDuration: 1e3, animationDurationUpdate: 500, data: [], sort: "desc" }, e;
23146}(Et);
23147function WI(r) {
23148  var e = 0;
23149  D(r.children, function(a) {
23150    WI(a);
23151    var n = a.value;
23152    V(n) && (n = n[0]), e += n;
23153  });
23154  var t = r.value;
23155  V(t) && (t = t[0]), (t == null || isNaN(t)) && (t = e), t < 0 && (t = 0), V(r.value) ? r.value[0] = t : r.value = t;
23156}
23157var Qx = Math.PI / 180;
23158function NW(r, e, t) {
23159  e.eachSeriesByType(r, function(a) {
23160    var n = a.get("center"), i = a.get("radius");
23161    V(i) || (i = [0, i]), V(n) || (n = [n, n]);
23162    var o = t.getWidth(), s = t.getHeight(), l = Math.min(o, s), u = W(n[0], o), f = W(n[1], s), h = W(i[0], l / 2), v = W(i[1], l / 2), c = -a.get("startAngle") * Qx, p = a.get("minAngle") * Qx, d = a.getData().tree.root, g = a.getViewRoot(), y = g.depth, m = a.get("sort");
23163    m != null && UI(g, m);
23164    var _ = 0;
23165    D(g.children, function(E) {
23166      !isNaN(E.getValue()) && _++;
23167    });
23168    var S = g.getValue(), b = Math.PI / (S || _) * 2, x = g.depth > 0, w = g.height - (x ? -1 : 1), T = (v - h) / (w || 1), C = a.get("clockwise"), A = a.get("stillShowZeroSum"), M = C ? 1 : -1, I = function(E, O) {
23169      if (E) {
23170        var k = O;
23171        if (E !== d) {
23172          var B = E.getValue(), F = S === 0 && A ? b : B * b;
23173          F < p && (F = p), k = O + M * F;
23174          var H = E.depth - y - (x ? -1 : 1), U = h + T * H, K = h + T * (H + 1), J = a.getLevelModel(E);
23175          if (J) {
23176            var nt = J.get("r0", true), It = J.get("r", true), Yt = J.get("radius", true);
23177            Yt != null && (nt = Yt[0], It = Yt[1]), nt != null && (U = W(nt, l / 2)), It != null && (K = W(It, l / 2));
23178          }
23179          E.setLayout({ angle: F, startAngle: O, endAngle: k, clockwise: C, cx: u, cy: f, r0: U, r: K });
23180        }
23181        if (E.children && E.children.length) {
23182          var ct = 0;
23183          D(E.children, function(et) {
23184            ct += I(et, O + ct);
23185          });
23186        }
23187        return k - O;
23188      }
23189    };
23190    if (x) {
23191      var L = h, P = h + T, R = Math.PI * 2;
23192      d.setLayout({ angle: R, startAngle: c, endAngle: c + R, clockwise: C, cx: u, cy: f, r0: L, r: P });
23193    }
23194    I(g, c);
23195  });
23196}
23197function UI(r, e) {
23198  var t = r.children || [];
23199  r.children = BW(t, e), t.length && D(r.children, function(a) {
23200    UI(a, e);
23201  });
23202}
23203function BW(r, e) {
23204  if (j(e)) {
23205    var t = G(r, function(n, i) {
23206      var o = n.getValue();
23207      return { params: { depth: n.depth, height: n.height, dataIndex: n.dataIndex, getValue: function() {
23208        return o;
23209      } }, index: i };
23210    });
23211    return t.sort(function(n, i) {
23212      return e(n.params, i.params);
23213    }), G(t, function(n) {
23214      return r[n.index];
23215    });
23216  } else {
23217    var a = e === "asc";
23218    return r.sort(function(n, i) {
23219      var o = (n.getValue() - i.getValue()) * (a ? 1 : -1);
23220      return o === 0 ? (n.dataIndex - i.dataIndex) * (a ? -1 : 1) : o;
23221    });
23222  }
23223}
23224function zW(r) {
23225  var e = {};
23226  function t(a, n, i) {
23227    for (var o = a; o && o.depth > 1; ) o = o.parentNode;
23228    var s = n.getColorFromPalette(o.name || o.dataIndex + "", e);
23229    return a.depth > 1 && Y(s) && (s = Af(s, (a.depth - 1) / (i - 1) * 0.5)), s;
23230  }
23231  r.eachSeriesByType("sunburst", function(a) {
23232    var n = a.getData(), i = n.tree;
23233    i.eachNode(function(o) {
23234      var s = o.getModel(), l = s.getModel("itemStyle").getItemStyle();
23235      l.fill || (l.fill = t(o, a, i.root.height));
23236      var u = n.ensureUniqueItemVisual(o.dataIndex, "style");
23237      z(u, l);
23238    });
23239  });
23240}
23241function VW(r) {
23242  r.registerChartView(kW), r.registerSeriesModel(OW), r.registerLayout(lt(NW, "sunburst")), r.registerProcessor(lt(Xl, "sunburst")), r.registerVisual(zW), EW(r);
23243}
23244var tb = { color: "fill", borderColor: "stroke" }, GW = { symbol: 1, symbolSize: 1, symbolKeepAspect: 1, legendIcon: 1, visualMeta: 1, liftZ: 1, decal: 1 }, da = bt(), FW = function(r) {
23245  N(e, r);
23246  function e() {
23247    var t = r !== null && r.apply(this, arguments) || this;
23248    return t.type = e.type, t;
23249  }
23250  return e.prototype.optionUpdated = function() {
23251    this.currentZLevel = this.get("zlevel", true), this.currentZ = this.get("z", true);
23252  }, e.prototype.getInitialData = function(t, a) {
23253    return aa(null, this);
23254  }, e.prototype.getDataParams = function(t, a, n) {
23255    var i = r.prototype.getDataParams.call(this, t, a);
23256    return n && (i.info = da(n).info), i;
23257  }, e.type = "series.custom", e.dependencies = ["grid", "polar", "geo", "singleAxis", "calendar"], e.defaultOption = { coordinateSystem: "cartesian2d", z: 2, legendHoverLink: true, clip: false }, e;
23258}(Et);
23259function HW(r, e) {
23260  return e = e || [0, 0], G(["x", "y"], function(t, a) {
23261    var n = this.getAxis(t), i = e[a], o = r[a] / 2;
23262    return n.type === "category" ? n.getBandWidth() : Math.abs(n.dataToCoord(i - o) - n.dataToCoord(i + o));
23263  }, this);
23264}
23265function WW(r) {
23266  var e = r.master.getRect();
23267  return { coordSys: { type: "cartesian2d", x: e.x, y: e.y, width: e.width, height: e.height }, api: { coord: function(t) {
23268    return r.dataToPoint(t);
23269  }, size: $(HW, r) } };
23270}
23271function UW(r, e) {
23272  return e = e || [0, 0], G([0, 1], function(t) {
23273    var a = e[t], n = r[t] / 2, i = [], o = [];
23274    return i[t] = a - n, o[t] = a + n, i[1 - t] = o[1 - t] = e[1 - t], Math.abs(this.dataToPoint(i)[t] - this.dataToPoint(o)[t]);
23275  }, this);
23276}
23277function YW(r) {
23278  var e = r.getBoundingRect();
23279  return { coordSys: { type: "geo", x: e.x, y: e.y, width: e.width, height: e.height, zoom: r.getZoom() }, api: { coord: function(t) {
23280    return r.dataToPoint(t);
23281  }, size: $(UW, r) } };
23282}
23283function $W(r, e) {
23284  var t = this.getAxis(), a = e instanceof Array ? e[0] : e, n = (r instanceof Array ? r[0] : r) / 2;
23285  return t.type === "category" ? t.getBandWidth() : Math.abs(t.dataToCoord(a - n) - t.dataToCoord(a + n));
23286}
23287function XW(r) {
23288  var e = r.getRect();
23289  return { coordSys: { type: "singleAxis", x: e.x, y: e.y, width: e.width, height: e.height }, api: { coord: function(t) {
23290    return r.dataToPoint(t);
23291  }, size: $($W, r) } };
23292}
23293function ZW(r, e) {
23294  return e = e || [0, 0], G(["Radius", "Angle"], function(t, a) {
23295    var n = "get" + t + "Axis", i = this[n](), o = e[a], s = r[a] / 2, l = i.type === "category" ? i.getBandWidth() : Math.abs(i.dataToCoord(o - s) - i.dataToCoord(o + s));
23296    return t === "Angle" && (l = l * Math.PI / 180), l;
23297  }, this);
23298}
23299function qW(r) {
23300  var e = r.getRadiusAxis(), t = r.getAngleAxis(), a = e.getExtent();
23301  return a[0] > a[1] && a.reverse(), { coordSys: { type: "polar", cx: r.cx, cy: r.cy, r: a[1], r0: a[0] }, api: { coord: function(n) {
23302    var i = e.dataToRadius(n[0]), o = t.dataToAngle(n[1]), s = r.coordToPoint([i, o]);
23303    return s.push(i, o * Math.PI / 180), s;
23304  }, size: $(ZW, r) } };
23305}
23306function KW(r) {
23307  var e = r.getRect(), t = r.getRangeInfo();
23308  return { coordSys: { type: "calendar", x: e.x, y: e.y, width: e.width, height: e.height, cellWidth: r.getCellWidth(), cellHeight: r.getCellHeight(), rangeInfo: { start: t.start, end: t.end, weeks: t.weeks, dayCount: t.allDay } }, api: { coord: function(a, n) {
23309    return r.dataToPoint(a, n);
23310  } } };
23311}
23312function YI(r, e, t, a) {
23313  return r && (r.legacy || r.legacy !== false && !t && !a && e !== "tspan" && (e === "text" || X(r, "text")));
23314}
23315function $I(r, e, t) {
23316  var a = r, n, i, o;
23317  if (e === "text") o = a;
23318  else {
23319    o = {}, X(a, "text") && (o.text = a.text), X(a, "rich") && (o.rich = a.rich), X(a, "textFill") && (o.fill = a.textFill), X(a, "textStroke") && (o.stroke = a.textStroke), X(a, "fontFamily") && (o.fontFamily = a.fontFamily), X(a, "fontSize") && (o.fontSize = a.fontSize), X(a, "fontStyle") && (o.fontStyle = a.fontStyle), X(a, "fontWeight") && (o.fontWeight = a.fontWeight), i = { type: "text", style: o, silent: true }, n = {};
23320    var s = X(a, "textPosition");
23321    t ? n.position = s ? a.textPosition : "inside" : s && (n.position = a.textPosition), X(a, "textPosition") && (n.position = a.textPosition), X(a, "textOffset") && (n.offset = a.textOffset), X(a, "textRotation") && (n.rotation = a.textRotation), X(a, "textDistance") && (n.distance = a.textDistance);
23322  }
23323  return eb(o, r), D(o.rich, function(l) {
23324    eb(l, l);
23325  }), { textConfig: n, textContent: i };
23326}
23327function eb(r, e) {
23328  e && (e.font = e.textFont || e.font, X(e, "textStrokeWidth") && (r.lineWidth = e.textStrokeWidth), X(e, "textAlign") && (r.align = e.textAlign), X(e, "textVerticalAlign") && (r.verticalAlign = e.textVerticalAlign), X(e, "textLineHeight") && (r.lineHeight = e.textLineHeight), X(e, "textWidth") && (r.width = e.textWidth), X(e, "textHeight") && (r.height = e.textHeight), X(e, "textBackgroundColor") && (r.backgroundColor = e.textBackgroundColor), X(e, "textPadding") && (r.padding = e.textPadding), X(e, "textBorderColor") && (r.borderColor = e.textBorderColor), X(e, "textBorderWidth") && (r.borderWidth = e.textBorderWidth), X(e, "textBorderRadius") && (r.borderRadius = e.textBorderRadius), X(e, "textBoxShadowColor") && (r.shadowColor = e.textBoxShadowColor), X(e, "textBoxShadowBlur") && (r.shadowBlur = e.textBoxShadowBlur), X(e, "textBoxShadowOffsetX") && (r.shadowOffsetX = e.textBoxShadowOffsetX), X(e, "textBoxShadowOffsetY") && (r.shadowOffsetY = e.textBoxShadowOffsetY));
23329}
23330function rb(r, e, t) {
23331  var a = r;
23332  a.textPosition = a.textPosition || t.position || "inside", t.offset != null && (a.textOffset = t.offset), t.rotation != null && (a.textRotation = t.rotation), t.distance != null && (a.textDistance = t.distance);
23333  var n = a.textPosition.indexOf("inside") >= 0, i = r.fill || "#000";
23334  ab(a, e);
23335  var o = a.textFill == null;
23336  return n ? o && (a.textFill = t.insideFill || "#fff", !a.textStroke && t.insideStroke && (a.textStroke = t.insideStroke), !a.textStroke && (a.textStroke = i), a.textStrokeWidth == null && (a.textStrokeWidth = 2)) : (o && (a.textFill = r.fill || t.outsideFill || "#000"), !a.textStroke && t.outsideStroke && (a.textStroke = t.outsideStroke)), a.text = e.text, a.rich = e.rich, D(e.rich, function(s) {
23337    ab(s, s);
23338  }), a;
23339}
23340function ab(r, e) {
23341  e && (X(e, "fill") && (r.textFill = e.fill), X(e, "stroke") && (r.textStroke = e.fill), X(e, "lineWidth") && (r.textStrokeWidth = e.lineWidth), X(e, "font") && (r.font = e.font), X(e, "fontStyle") && (r.fontStyle = e.fontStyle), X(e, "fontWeight") && (r.fontWeight = e.fontWeight), X(e, "fontSize") && (r.fontSize = e.fontSize), X(e, "fontFamily") && (r.fontFamily = e.fontFamily), X(e, "align") && (r.textAlign = e.align), X(e, "verticalAlign") && (r.textVerticalAlign = e.verticalAlign), X(e, "lineHeight") && (r.textLineHeight = e.lineHeight), X(e, "width") && (r.textWidth = e.width), X(e, "height") && (r.textHeight = e.height), X(e, "backgroundColor") && (r.textBackgroun
23341dColor = e.backgroundColor), X(e, "padding") && (r.textPadding = e.padding), X(e, "borderColor") && (r.textBorderColor = e.borderColor), X(e, "borderWidth") && (r.textBorderWidth = e.borderWidth), X(e, "borderRadius") && (r.textBorderRadius = e.borderRadius), X(e, "shadowColor") && (r.textBoxShadowColor = e.shadowColor), X(e, "shadowBlur") && (r.textBoxShadowBlur = e.shadowBlur), X(e, "shadowOffsetX") && (r.textBoxShadowOffsetX = e.shadowOffsetX), X(e, "shadowOffsetY") && (r.textBoxShadowOffsetY = e.shadowOffsetY), X(e, "textShadowColor") && (r.textShadowColor = e.textShadowColor), X(e, "textShadowBlur") && (r.textShadowBlur = e.textShadowBlur), X(e, "textShadowOffsetX") && (r.textShadowOffsetX = e.textShadowOffsetX), X(e, "textShadowOffsetY") && (r.textShadowOffsetY = e.textShadowOffsetY));
23342}
23343var XI = { position: ["x", "y"], scale: ["scaleX", "scaleY"], origin: ["originX", "originY"] }, nb = _t(XI);
23344hr(Jr, function(r, e) {
23345  return r[e] = 1, r;
23346}, {});
23347Jr.join(", ");
23348var oh = ["", "style", "shape", "extra"], Co = bt();
23349function Tm(r, e, t, a, n) {
23350  var i = r + "Animation", o = Eo(r, a, n) || {}, s = Co(e).userDuring;
23351  return o.duration > 0 && (o.during = s ? $(e6, { el: e, userDuring: s }) : null, o.setToFinal = true, o.scope = r), z(o, t[i]), o;
23352}
23353function df(r, e, t, a) {
23354  a = a || {};
23355  var n = a.dataIndex, i = a.isInit, o = a.clearStyle, s = t.isAnimationEnabled(), l = Co(r), u = e.style;
23356  l.userDuring = e.during;
23357  var f = {}, h = {};
23358  if (a6(r, e, h), ob("shape", e, h), ob("extra", e, h), !i && s && (r6(r, e, f), ib("shape", r, e, f), ib("extra", r, e, f), n6(r, e, u, f)), h.style = u, jW(r, h, o), QW(r, e), s) if (i) {
23359    var v = {};
23360    D(oh, function(p) {
23361      var d = p ? e[p] : e;
23362      d && d.enterFrom && (p && (v[p] = v[p] || {}), z(p ? v[p] : v, d.enterFrom));
23363    });
23364    var c = Tm("enter", r, e, t, n);
23365    c.duration > 0 && r.animateFrom(v, c);
23366  } else JW(r, e, n || 0, t, f);
23367  ZI(r, e), u ? r.dirty() : r.markRedraw();
23368}
23369function ZI(r, e) {
23370  for (var t = Co(r).leaveToProps, a = 0; a < oh.length; a++) {
23371    var n = oh[a], i = n ? e[n] : e;
23372    i && i.leaveTo && (t || (t = Co(r).leaveToProps = {}), n && (t[n] = t[n] || {}), z(n ? t[n] : t, i.leaveTo));
23373  }
23374}
23375function ov(r, e, t, a) {
23376  if (r) {
23377    var n = r.parent, i = Co(r).leaveToProps;
23378    if (i) {
23379      var o = Tm("update", r, e, t, 0);
23380      o.done = function() {
23381        n.remove(r);
23382      }, r.animateTo(i, o);
23383    } else n.remove(r);
23384  }
23385}
23386function si(r) {
23387  return r === "all";
23388}
23389function jW(r, e, t) {
23390  var a = e.style;
23391  if (!r.isGroup && a) {
23392    if (t) {
23393      r.useStyle({});
23394      for (var n = r.animators, i = 0; i < n.length; i++) {
23395        var o = n[i];
23396        o.targetName === "style" && o.changeTarget(r.style);
23397      }
23398    }
23399    r.setStyle(a);
23400  }
23401  e && (e.style = null, e && r.attr(e), e.style = a);
23402}
23403function JW(r, e, t, a, n) {
23404  if (n) {
23405    var i = Tm("update", r, e, a, t);
23406    i.duration > 0 && r.animateFrom(n, i);
23407  }
23408}
23409function QW(r, e) {
23410  X(e, "silent") && (r.silent = e.silent), X(e, "ignore") && (r.ignore = e.ignore), r instanceof vr && X(e, "invisible") && (r.invisible = e.invisible), r instanceof mt && X(e, "autoBatch") && (r.autoBatch = e.autoBatch);
23411}
23412var Gr = {}, t6 = { setTransform: function(r, e) {
23413  return Gr.el[r] = e, this;
23414}, getTransform: function(r) {
23415  return Gr.el[r];
23416}, setShape: function(r, e) {
23417  var t = Gr.el, a = t.shape || (t.shape = {});
23418  return a[r] = e, t.dirtyShape && t.dirtyShape(), this;
23419}, getShape: function(r) {
23420  var e = Gr.el.shape;
23421  if (e) return e[r];
23422}, setStyle: function(r, e) {
23423  var t = Gr.el, a = t.style;
23424  return a && (a[r] = e, t.dirtyStyle && t.dirtyStyle()), this;
23425}, getStyle: function(r) {
23426  var e = Gr.el.style;
23427  if (e) return e[r];
23428}, setExtra: function(r, e) {
23429  var t = Gr.el.extra || (Gr.el.extra = {});
23430  return t[r] = e, this;
23431}, getExtra: function(r) {
23432  var e = Gr.el.extra;
23433  if (e) return e[r];
23434} };
23435function e6() {
23436  var r = this, e = r.el;
23437  if (e) {
23438    var t = Co(e).userDuring, a = r.userDuring;
23439    if (t !== a) {
23440      r.el = r.userDuring = null;
23441      return;
23442    }
23443    Gr.el = e, a(t6);
23444  }
23445}
23446function ib(r, e, t, a) {
23447  var n = t[r];
23448  if (n) {
23449    var i = e[r], o;
23450    if (i) {
23451      var s = t.transition, l = n.transition;
23452      if (l) if (!o && (o = a[r] = {}), si(l)) z(o, i);
23453      else for (var u = Rt(l), f = 0; f < u.length; f++) {
23454        var h = u[f], v = i[h];
23455        o[h] = v;
23456      }
23457      else if (si(s) || vt(s, r) >= 0) {
23458        !o && (o = a[r] = {});
23459        for (var c = _t(i), f = 0; f < c.length; f++) {
23460          var h = c[f], v = i[h];
23461          i6(n[h], v) && (o[h] = v);
23462        }
23463      }
23464    }
23465  }
23466}
23467function ob(r, e, t) {
23468  var a = e[r];
23469  if (a) for (var n = t[r] = {}, i = _t(a), o = 0; o < i.length; o++) {
23470    var s = i[o];
23471    n[s] = Gs(a[s]);
23472  }
23473}
23474function r6(r, e, t) {
23475  for (var a = e.transition, n = si(a) ? Jr : Rt(a || []), i = 0; i < n.length; i++) {
23476    var o = n[i];
23477    if (!(o === "style" || o === "shape" || o === "extra")) {
23478      var s = r[o];
23479      t[o] = s;
23480    }
23481  }
23482}
23483function a6(r, e, t) {
23484  for (var a = 0; a < nb.length; a++) {
23485    var n = nb[a], i = XI[n], o = e[n];
23486    o && (t[i[0]] = o[0], t[i[1]] = o[1]);
23487  }
23488  for (var a = 0; a < Jr.length; a++) {
23489    var s = Jr[a];
23490    e[s] != null && (t[s] = e[s]);
23491  }
23492}
23493function n6(r, e, t, a) {
23494  if (t) {
23495    var n = r.style, i;
23496    if (n) {
23497      var o = t.transition, s = e.transition;
23498      if (o && !si(o)) {
23499        var l = Rt(o);
23500        !i && (i = a.style = {});
23501        for (var u = 0; u < l.length; u++) {
23502          var f = l[u], h = n[f];
23503          i[f] = h;
23504        }
23505      } else if (r.getAnimationStyleProps && (si(s) || si(o) || vt(s, "style") >= 0)) {
23506        var v = r.getAnimationStyleProps(), c = v ? v.style : null;
23507        if (c) {
23508          !i && (i = a.style = {});
23509          for (var p = _t(t), u = 0; u < p.length; u++) {
23510            var f = p[u];
23511            if (c[f]) {
23512              var h = n[f];
23513              i[f] = h;
23514            }
23515          }
23516        }
23517      }
23518    }
23519  }
23520}
23521function i6(r, e) {
23522  return ce(r) ? r !== e : r != null && isFinite(r);
23523}
23524var qI = bt(), o6 = ["percent", "easing", "shape", "style", "extra"];
23525function KI(r) {
23526  r.stopAnimation("keyframe"), r.attr(qI(r));
23527}
23528function sh(r, e, t) {
23529  if (!(!t.isAnimationEnabled() || !e)) {
23530    if (V(e)) {
23531      D(e, function(s) {
23532        sh(r, s, t);
23533      });
23534      return;
23535    }
23536    var a = e.keyframes, n = e.duration;
23537    if (t && n == null) {
23538      var i = Eo("enter", t, 0);
23539      n = i && i.duration;
23540    }
23541    if (!(!a || !n)) {
23542      var o = qI(r);
23543      D(oh, function(s) {
23544        if (!(s && !r[s])) {
23545          var l;
23546          a.sort(function(u, f) {
23547            return u.percent - f.percent;
23548          }), D(a, function(u) {
23549            var f = r.animators, h = s ? u[s] : u;
23550            if (h) {
23551              var v = _t(h);
23552              if (s || (v = Ct(v, function(d) {
23553                return vt(o6, d) < 0;
23554              })), !!v.length) {
23555                l || (l = r.animate(s, e.loop, true), l.scope = "keyframe");
23556                for (var c = 0; c < f.length; c++) f[c] !== l && f[c].targetName === l.targetName && f[c].stopTracks(v);
23557                s && (o[s] = o[s] || {});
23558                var p = s ? o[s] : o;
23559                D(v, function(d) {
23560                  p[d] = ((s ? r[s] : r) || {})[d];
23561                }), l.whenWithKeys(n * u.percent, h, v, u.easing);
23562              }
23563            }
23564          }), l && l.delay(e.delay || 0).duration(n).start(e.easing);
23565        }
23566      });
23567    }
23568  }
23569}
23570var ga = "emphasis", Ua = "normal", Cm = "blur", Am = "select", on = [Ua, ga, Cm, Am], fp = { normal: ["itemStyle"], emphasis: [ga, "itemStyle"], blur: [Cm, "itemStyle"], select: [Am, "itemStyle"] }, hp = { normal: ["label"], emphasis: [ga, "label"], blur: [Cm, "label"], select: [Am, "label"] }, s6 = ["x", "y"], l6 = "e\0\0", tr = { normal: {}, emphasis: {}, blur: {}, select: {} }, u6 = { cartesian2d: WW, geo: YW, single: XW, polar: qW, calendar: KW };
23571function lg(r) {
23572  return r instanceof mt;
23573}
23574function ug(r) {
23575  return r instanceof vr;
23576}
23577function f6(r, e) {
23578  e.copyTransform(r), ug(e) && ug(r) && (e.setStyle(r.style), e.z = r.z, e.z2 = r.z2, e.zlevel = r.zlevel, e.invisible = r.invisible, e.ignore = r.ignore, lg(e) && lg(r) && e.setShape(r.shape));
23579}
23580var h6 = function(r) {
23581  N(e, r);
23582  function e() {
23583    var t = r !== null && r.apply(this, arguments) || this;
23584    return t.type = e.type, t;
23585  }
23586  return e.prototype.render = function(t, a, n, i) {
23587    this._progressiveEls = null;
23588    var o = this._data, s = t.getData(), l = this.group, u = sb(t, s, a, n);
23589    o || l.removeAll(), s.diff(o).add(function(h) {
23590      vp(n, null, h, u(h, i), t, l, s);
23591    }).remove(function(h) {
23592      var v = o.getItemGraphicEl(h);
23593      v && ov(v, da(v).option, t);
23594    }).update(function(h, v) {
23595      var c = o.getItemGraphicEl(v);
23596      vp(n, c, h, u(h, i), t, l, s);
23597    }).execute();
23598    var f = t.get("clip", true) ? Yl(t.coordinateSystem, false, t) : null;
23599    f ? l.setClipPath(f) : l.removeClipPath(), this._data = s;
23600  }, e.prototype.incrementalPrepareRender = function(t, a, n) {
23601    this.group.removeAll(), this._data = null;
23602  }, e.prototype.incrementalRender = function(t, a, n, i, o) {
23603    var s = a.getData(), l = sb(a, s, n, i), u = this._progressiveEls = [];
23604    function f(c) {
23605      c.isGroup || (c.incremental = true, c.ensureState("emphasis").hoverLayer = true);
23606    }
23607    for (var h = t.start; h < t.end; h++) {
23608      var v = vp(null, null, h, l(h, o), a, this.group, s);
23609      v && (v.traverse(f), u.push(v));
23610    }
23611  }, e.prototype.eachRendered = function(t) {
23612    un(this._progressiveEls || this.group, t);
23613  }, e.prototype.filterForExposedEvent = function(t, a, n, i) {
23614    var o = a.element;
23615    if (o == null || n.name === o) return true;
23616    for (; (n = n.__hostTarget || n.parent) && n !== this.group; ) if (n.name === o) return true;
23617    return false;
23618  }, e.type = "custom", e;
23619}(Pt);
23620function Dm(r) {
23621  var e = r.type, t;
23622  if (e === "path") {
23623    var a = r.shape, n = a.width != null && a.height != null ? { x: a.x || 0, y: a.y || 0, width: a.width, height: a.height } : null, i = QI(a);
23624    t = zl(i, null, n, a.layout || "center"), da(t).customPathData = i;
23625  } else if (e === "image") t = new ue({}), da(t).customImagePath = r.style.image;
23626  else if (e === "text") t = new St({});
23627  else if (e === "group") t = new at();
23628  else {
23629    if (e === "compoundPath") throw new Error('"compoundPath" is not supported yet.');
23630    var o = Nh(e);
23631    if (!o) {
23632      var s = "";
23633      Mt(s);
23634    }
23635    t = new o();
23636  }
23637  return da(t).customGraphicType = e, t.name = r.name, t.z2EmphasisLift = 1, t.z2SelectLift = 1, t;
23638}
23639function Mm(r, e, t, a, n, i, o) {
23640  KI(e);
23641  var s = n && n.normal.cfg;
23642  s && e.setTextConfig(s), a && a.transition == null && (a.transition = s6);
23643  var l = a && a.style;
23644  if (l) {
23645    if (e.type === "text") {
23646      var u = l;
23647      X(u, "textFill") && (u.fill = u.textFill), X(u, "textStroke") && (u.stroke = u.textStroke);
23648    }
23649    var f = void 0, h = lg(e) ? l.decal : null;
23650    r && h && (h.dirty = true, f = xo(h, r)), l.__decalPattern = f;
23651  }
23652  if (ug(e) && l) {
23653    var f = l.__decalPattern;
23654    f && (l.decal = f);
23655  }
23656  df(e, a, i, { dataIndex: t, isInit: o, clearStyle: true }), sh(e, a.keyframeAnimation, i);
23657}
23658function jI(r, e, t, a, n) {
23659  var i = e.isGroup ? null : e, o = n && n[r].cfg;
23660  if (i) {
23661    var s = i.ensureState(r);
23662    if (a === false) {
23663      var l = i.getState(r);
23664      l && (l.style = null);
23665    } else s.style = a || null;
23666    o && (s.textConfig = o), ci(i);
23667  }
23668}
23669function v6(r, e, t) {
23670  if (!r.isGroup) {
23671    var a = r, n = t.currentZ, i = t.currentZLevel;
23672    a.z = n, a.zlevel = i;
23673    var o = e.z2;
23674    o != null && (a.z2 = o || 0);
23675    for (var s = 0; s < on.length; s++) c6(a, e, on[s]);
23676  }
23677}
23678function c6(r, e, t) {
23679  var a = t === Ua, n = a ? e : lh(e, t), i = n ? n.z2 : null, o;
23680  i != null && (o = a ? r : r.ensureState(t), o.z2 = i || 0);
23681}
23682function sb(r, e, t, a) {
23683  var n = r.get("renderItem"), i = r.coordinateSystem, o = {};
23684  i && (o = i.prepareCustoms ? i.prepareCustoms(i) : u6[i.type](i));
23685  for (var s = Q({ getWidth: a.getWidth, getHeight: a.getHeight, getZr: a.getZr, getDevicePixelRatio: a.getDevicePixelRatio, value: S, style: x, ordinalRawValue: b, styleEmphasis: w, visual: A, barLayout: M, currentSeriesIndices: I, font: L }, o.api || {}), l = { context: {}, seriesId: r.id, seriesName: r.name, seriesIndex: r.seriesIndex, coordSys: o.coordSys, dataInsideLength: e.count(), encode: p6(r.getData()) }, u, f, h = {}, v = {}, c = {}, p = {}, d = 0; d < on.length; d++) {
23686    var g = on[d];
23687    c[g] = r.getModel(fp[g]), p[g] = r.getModel(hp[g]);
23688  }
23689  function y(P) {
23690    return P === u ? f || (f = e.getItemModel(P)) : e.getItemModel(P);
23691  }
23692  function m(P, R) {
23693    return e.hasItemOption ? P === u ? h[R] || (h[R] = y(P).getModel(fp[R])) : y(P).getModel(fp[R]) : c[R];
23694  }
23695  function _(P, R) {
23696    return e.hasItemOption ? P === u ? v[R] || (v[R] = y(P).getModel(hp[R])) : y(P).getModel(hp[R]) : p[R];
23697  }
23698  return function(P, R) {
23699    return u = P, f = null, h = {}, v = {}, n && n(Q({ dataIndexInside: P, dataIndex: e.getRawIndex(P), actionType: R ? R.type : null }, l), s);
23700  };
23701  function S(P, R) {
23702    return R == null && (R = u), e.getStore().get(e.getDimensionIndex(P || 0), R);
23703  }
23704  function b(P, R) {
23705    R == null && (R = u), P = P || 0;
23706    var E = e.getDimensionInfo(P);
23707    if (!E) {
23708      var O = e.getDimensionIndex(P);
23709      return O >= 0 ? e.getStore().get(O, R) : void 0;
23710    }
23711    var k = e.get(E.name, R), B = E && E.ordinalMeta;
23712    return B ? B.categories[k] : k;
23713  }
23714  function x(P, R) {
23715    R == null && (R = u);
23716    var E = e.getItemVisual(R, "style"), O = E && E.fill, k = E && E.opacity, B = m(R, Ua).getItemStyle();
23717    O != null && (B.fill = O), k != null && (B.opacity = k);
23718    var F = { inheritColor: Y(O) ? O : "#000" }, H = _(R, Ua), U = Nt(H, null, F, false, true);
23719    U.text = H.getShallow("show") ? st(r.getFormattedLabel(R, Ua), bo(e, R)) : null;
23720    var K = Nf(H, F, false);
23721    return C(P, B), B = rb(B, U, K), P && T(B, P), B.legacy = true, B;
23722  }
23723  function w(P, R) {
23724    R == null && (R = u);
23725    var E = m(R, ga).getItemStyle(), O = _(R, ga), k = Nt(O, null, null, true, true);
23726    k.text = O.getShallow("show") ? Ar(r.getFormattedLabel(R, ga), r.getFormattedLabel(R, Ua), bo(e, R)) : null;
23727    var B = Nf(O, null, true);
23728    return C(P, E), E = rb(E, k, B), P && T(E, P), E.legacy = true, E;
23729  }
23730  function T(P, R) {
23731    for (var E in R) X(R, E) && (P[E] = R[E]);
23732  }
23733  function C(P, R) {
23734    P && (P.textFill && (R.textFill = P.textFill), P.textPosition && (R.textPosition = P.textPosition));
23735  }
23736  function A(P, R) {
23737    if (R == null && (R = u), X(tb, P)) {
23738      var E = e.getItemVisual(R, "style");
23739      return E ? E[tb[P]] : null;
23740    }
23741    if (X(GW, P)) return e.getItemVisual(R, P);
23742  }
23743  function M(P) {
23744    if (i.type === "cartesian2d") {
23745      var R = i.getBaseAxis();
23746      return WB(Q({ axis: R }, P));
23747    }
23748  }
23749  function I() {
23750    return t.getCurrentSeriesIndices();
23751  }
23752  function L(P) {
23753    return sy(P, t);
23754  }
23755}
23756function p6(r) {
23757  var e = {};
23758  return D(r.dimensions, function(t) {
23759    var a = r.getDimensionInfo(t);
23760    if (!a.isExtraCoord) {
23761      var n = a.coordDim, i = e[n] = e[n] || [];
23762      i[a.coordDimIndex] = r.getDimensionIndex(t);
23763    }
23764  }), e;
23765}
23766function vp(r, e, t, a, n, i, o) {
23767  if (!a) {
23768    i.remove(e);
23769    return;
23770  }
23771  var s = Im(r, e, t, a, n, i);
23772  return s && o.setItemGraphicEl(t, s), s && Wt(s, a.focus, a.blurScope, a.emphasisDisabled), s;
23773}
23774function Im(r, e, t, a, n, i) {
23775  var o = -1, s = e;
23776  e && JI(e, a, n) && (o = vt(i.childrenRef(), e), e = null);
23777  var l = !e, u = e;
23778  u ? u.clearStates() : (u = Dm(a), s && f6(s, u)), a.morph === false ? u.disableMorphing = true : u.disableMorphing && (u.disableMorphing = false), tr.normal.cfg = tr.normal.conOpt = tr.emp
23778hasis.cfg = tr.emphasis.conOpt = tr.blur.cfg = tr.blur.conOpt = tr.select.cfg = tr.select.conOpt = null, tr.isLegacy = false, g6(u, t, a, n, l, tr), d6(u, t, a, n, l), Mm(r, u, t, a, tr, n, l), X(a, "info") && (da(u).info = a.info);
23779  for (var f = 0; f < on.length; f++) {
23780    var h = on[f];
23781    if (h !== Ua) {
23782      var v = lh(a, h), c = Lm(a, v, h);
23783      jI(h, u, v, c, tr);
23784    }
23785  }
23786  return v6(u, a, n), a.type === "group" && y6(r, u, t, a, n), o >= 0 ? i.replaceAt(u, o) : i.add(u), u;
23787}
23788function JI(r, e, t) {
23789  var a = da(r), n = e.type, i = e.shape, o = e.style;
23790  return t.isUniversalTransitionEnabled() || n != null && n !== a.customGraphicType || n === "path" && x6(i) && QI(i) !== a.customPathData || n === "image" && X(o, "image") && o.image !== a.customImagePath;
23791}
23792function d6(r, e, t, a, n) {
23793  var i = t.clipPath;
23794  if (i === false) r && r.getClipPath() && r.removeClipPath();
23795  else if (i) {
23796    var o = r.getClipPath();
23797    o && JI(o, i, a) && (o = null), o || (o = Dm(i), r.setClipPath(o)), Mm(null, o, e, i, null, a, n);
23798  }
23799}
23800function g6(r, e, t, a, n, i) {
23801  if (!r.isGroup) {
23802    lb(t, null, i), lb(t, ga, i);
23803    var o = i.normal.conOpt, s = i.emphasis.conOpt, l = i.blur.conOpt, u = i.select.conOpt;
23804    if (o != null || s != null || u != null || l != null) {
23805      var f = r.getTextContent();
23806      if (o === false) f && r.removeTextContent();
23807      else {
23808        o = i.normal.conOpt = o || { type: "text" }, f ? f.clearStates() : (f = Dm(o), r.setTextContent(f)), Mm(null, f, e, o, null, a, n);
23809        for (var h = o && o.style, v = 0; v < on.length; v++) {
23810          var c = on[v];
23811          if (c !== Ua) {
23812            var p = i[c].conOpt;
23813            jI(c, f, p, Lm(o, p, c), null);
23814          }
23815        }
23816        h ? f.dirty() : f.markRedraw();
23817      }
23818    }
23819  }
23820}
23821function lb(r, e, t) {
23822  var a = e ? lh(r, e) : r, n = e ? Lm(r, a, ga) : r.style, i = r.type, o = a ? a.textConfig : null, s = r.textContent, l = s ? e ? lh(s, e) : s : null;
23823  if (n && (t.isLegacy || YI(n, i, !!o, !!l))) {
23824    t.isLegacy = true;
23825    var u = $I(n, i, !e);
23826    !o && u.textConfig && (o = u.textConfig), !l && u.textContent && (l = u.textContent);
23827  }
23828  if (!e && l) {
23829    var f = l;
23830    !f.type && (f.type = "text");
23831  }
23832  var h = e ? t[e] : t.normal;
23833  h.cfg = o, h.conOpt = l;
23834}
23835function lh(r, e) {
23836  return e ? r ? r[e] : null : r;
23837}
23838function Lm(r, e, t) {
23839  var a = e && e.style;
23840  return a == null && t === ga && r && (a = r.styleEmphasis), a;
23841}
23842function y6(r, e, t, a, n) {
23843  var i = a.children, o = i ? i.length : 0, s = a.$mergeChildren, l = s === "byName" || a.diffChildrenByName, u = s === false;
23844  if (!(!o && !l && !u)) {
23845    if (l) {
23846      _6({ api: r, oldChildren: e.children() || [], newChildren: i || [], dataIndex: t, seriesModel: n, group: e });
23847      return;
23848    }
23849    u && e.removeAll();
23850    for (var f = 0; f < o; f++) {
23851      var h = i[f], v = e.childAt(f);
23852      h ? (h.ignore == null && (h.ignore = false), Im(r, v, t, h, n, e)) : v.ignore = true;
23853    }
23854    for (var c = e.childCount() - 1; c >= f; c--) {
23855      var p = e.childAt(c);
23856      m6(e, p, n);
23857    }
23858  }
23859}
23860function m6(r, e, t) {
23861  e && ov(e, da(r).option, t);
23862}
23863function _6(r) {
23864  new Sa(r.oldChildren, r.newChildren, ub, ub, r).add(fb).update(fb).remove(S6).execute();
23865}
23866function ub(r, e) {
23867  var t = r && r.name;
23868  return t ?? l6 + e;
23869}
23870function fb(r, e) {
23871  var t = this.context, a = r != null ? t.newChildren[r] : null, n = e != null ? t.oldChildren[e] : null;
23872  Im(t.api, n, t.dataIndex, a, t.seriesModel, t.group);
23873}
23874function S6(r) {
23875  var e = this.context, t = e.oldChildren[r];
23876  t && ov(t, da(t).option, e.seriesModel);
23877}
23878function QI(r) {
23879  return r && (r.pathData || r.d);
23880}
23881function x6(r) {
23882  return r && (X(r, "pathData") || X(r, "d"));
23883}
23884function b6(r) {
23885  r.registerChartView(h6), r.registerSeriesModel(FW);
23886}
23887var Yn = bt(), hb = rt, cp = $, Pm = function() {
23888  function r() {
23889    this._dragging = false, this.animationThreshold = 15;
23890  }
23891  return r.prototype.render = function(e, t, a, n) {
23892    var i = t.get("value"), o = t.get("status");
23893    if (this._axisModel = e, this._axisPointerModel = t, this._api = a, !(!n && this._lastValue === i && this._lastStatus === o)) {
23894      this._lastValue = i, this._lastStatus = o;
23895      var s = this._group, l = this._handle;
23896      if (!o || o === "hide") {
23897        s && s.hide(), l && l.hide();
23898        return;
23899      }
23900      s && s.show(), l && l.show();
23901      var u = {};
23902      this.makeElOption(u, i, e, t, a);
23903      var f = u.graphicKey;
23904      f !== this._lastGraphicKey && this.clear(a), this._lastGraphicKey = f;
23905      var h = this._moveAnimation = this.determineAnimation(e, t);
23906      if (!s) s = this._group = new at(), this.createPointerEl(s, u, e, t), this.createLabelEl(s, u, e, t), a.getZr().add(s);
23907      else {
23908        var v = lt(vb, t, h);
23909        this.updatePointerEl(s, u, v), this.updateLabelEl(s, u, v, t);
23910      }
23911      pb(s, t, true), this._renderHandle(i);
23912    }
23913  }, r.prototype.remove = function(e) {
23914    this.clear(e);
23915  }, r.prototype.dispose = function(e) {
23916    this.clear(e);
23917  }, r.prototype.determineAnimation = function(e, t) {
23918    var a = t.get("animation"), n = e.axis, i = n.type === "category", o = t.get("snap");
23919    if (!o && !i) return false;
23920    if (a === "auto" || a == null) {
23921      var s = this.animationThreshold;
23922      if (i && n.getBandWidth() > s) return true;
23923      if (o) {
23924        var l = Qy(e).seriesDataCount, u = n.getExtent();
23925        return Math.abs(u[0] - u[1]) / l > s;
23926      }
23927      return false;
23928    }
23929    return a === true;
23930  }, r.prototype.makeElOption = function(e, t, a, n, i) {
23931  }, r.prototype.createPointerEl = function(e, t, a, n) {
23932    var i = t.pointer;
23933    if (i) {
23934      var o = Yn(e).pointerEl = new xi[i.type](hb(t.pointer));
23935      e.add(o);
23936    }
23937  }, r.prototype.createLabelEl = function(e, t, a, n) {
23938    if (t.label) {
23939      var i = Yn(e).labelEl = new St(hb(t.label));
23940      e.add(i), cb(i, n);
23941    }
23942  }, r.prototype.updatePointerEl = function(e, t, a) {
23943    var n = Yn(e).pointerEl;
23944    n && t.pointer && (n.setStyle(t.pointer.style), a(n, { shape: t.pointer.shape }));
23945  }, r.prototype.updateLabelEl = function(e, t, a, n) {
23946    var i = Yn(e).labelEl;
23947    i && (i.setStyle(t.label.style), a(i, { x: t.label.x, y: t.label.y }), cb(i, n));
23948  }, r.prototype._renderHandle = function(e) {
23949    if (!(this._dragging || !this.updateHandleTransform)) {
23950      var t = this._axisPointerModel, a = this._api.getZr(), n = this._handle, i = t.getModel("handle"), o = t.get("status");
23951      if (!i.get("show") || !o || o === "hide") {
23952        n && a.remove(n), this._handle = null;
23953        return;
23954      }
23955      var s;
23956      this._handle || (s = true, n = this._handle = ko(i.get("icon"), { cursor: "move", draggable: true, onmousemove: function(u) {
23957        ya(u.event);
23958      }, onmousedown: cp(this._onHandleDragMove, this, 0, 0), drift: cp(this._onHandleDragMove, this), ondragend: cp(this._onHandleDragEnd, this) }), a.add(n)), pb(n, t, false), n.setStyle(i.getItemStyle(null, ["color", "borderColor", "borderWidth", "opacity", "shadowColor", "shadowBlur", "shadowOffsetX", "shadowOffsetY"]));
23959      var l = i.get("size");
23960      V(l) || (l = [l, l]), n.scaleX = l[0] / 2, n.scaleY = l[1] / 2, Fo(this, "_doDispatchAxisPointer", i.get("throttle") || 0, "fixRate"), this._moveHandleToValue(e, s);
23961    }
23962  }, r.prototype._moveHandleToValue = function(e, t) {
23963    vb(this._axisPointerModel, !t && this._moveAnimation, this._handle, pp(this.getHandleTransform(e, this._axisModel, this._axisPointerModel)));
23964  }, r.prototype._onHandleDragMove = function(e, t) {
23965    var a = this._handle;
23966    if (a) {
23967      this._dragging = true;
23968      var n = this.updateHandleTransform(pp(a), [e, t], this._axisModel, this._axisPointerModel);
23969      this._payloadInfo = n, a.stopAnimation(), a.attr(pp(n)), Yn(a).lastProp = null, this._doDispatchAxisPointer();
23970    }
23971  }, r.prototype._doDispatchAxisPointer = function() {
23972    var e = this._handle;
23973    if (e) {
23974      var t = this._payloadInfo, a = this._axisModel;
23975      this._api.dispatchAction({ type: "updateAxisPointer", x: t.cursorPoint[0], y: t.cursorPoint[1], tooltipOption: t.tooltipOption, axesInfo: [{ axisDim: a.axis.dim, axisIndex: a.componentIndex }] });
23976    }
23977  }, r.prototype._onHandleDragEnd = function() {
23978    this._dragging = false;
23979    var e = this._handle;
23980    if (e) {
23981      var t = this._axisPointerModel.get("value");
23982      this._moveHandleToValue(t), this._api.dispatchAction({ type: "hideTip" });
23983    }
23984  }, r.prototype.clear = function(e) {
23985    this._lastValue = null, this._lastStatus = null;
23986    var t = e.getZr(), a = this._group, n = this._handle;
23987    t && a && (this._lastGraphicKey = null, a && t.remove(a), n && t.remove(n), this._group = null, this._handle = null, this._payloadInfo = null), cl(this, "_doDispatchAxisPointer");
23988  }, r.prototype.doClear = function() {
23989  }, r.prototype.buildLabel = function(e, t, a) {
23990    return a = a || 0, { x: e[a], y: e[1 - a], width: t[a], height: t[1 - a] };
23991  }, r;
23992}();
23993function vb(r, e, t, a) {
23994  tL(Yn(t).lastProp, a) || (Yn(t).lastProp = a, e ? Tt(t, a, r) : (t.stopAnimation(), t.attr(a)));
23995}
23996function tL(r, e) {
23997  if (tt(r) && tt(e)) {
23998    var t = true;
23999    return D(e, function(a, n) {
24000      t = t && tL(r[n], a);
24001    }), !!t;
24002  } else return r === e;
24003}
24004function cb(r, e) {
24005  r[e.get(["label", "show"]) ? "show" : "hide"]();
24006}
24007function pp(r) {
24008  return { x: r.x || 0, y: r.y || 0, rotation: r.rotation || 0 };
24009}
24010function pb(r, e, t) {
24011  var a = e.get("z"), n = e.get("zlevel");
24012  r && r.traverse(function(i) {
24013    i.type !== "group" && (a != null && (i.z = a), n != null && (i.zlevel = n), i.silent = t);
24014  });
24015}
24016function Rm(r) {
24017  var e = r.get("type"), t = r.getModel(e + "Style"), a;
24018  return e === "line" ? (a = t.getLineStyle(), a.fill = null) : e === "shadow" && (a = t.getAreaStyle(), a.stroke = null), a;
24019}
24020function eL(r, e, t, a, n) {
24021  var i = t.get("value"), o = rL(i, e.axis, e.ecModel, t.get("seriesDataIndices"), { precision: t.get(["label", "precision"]), formatter: t.get(["label", "formatter"]) }), s = t.getModel("label"), l = bi(s.get("padding") || 0), u = s.getFont(), f = El(o, u), h 
24021= n.position, v = f.width + l[1] + l[3], c = f.height + l[0] + l[2], p = n.align;
24022  p === "right" && (h[0] -= v), p === "center" && (h[0] -= v / 2);
24023  var d = n.verticalAlign;
24024  d === "bottom" && (h[1] -= c), d === "middle" && (h[1] -= c / 2), w6(h, v, c, a);
24025  var g = s.get("backgroundColor");
24026  (!g || g === "auto") && (g = e.get(["axisLine", "lineStyle", "color"])), r.label = { x: h[0], y: h[1], style: Nt(s, { text: o, font: u, fill: s.getTextColor(), padding: l, backgroundColor: g }), z2: 10 };
24027}
24028function w6(r, e, t, a) {
24029  var n = a.getWidth(), i = a.getHeight();
24030  r[0] = Math.min(r[0] + e, n) - e, r[1] = Math.min(r[1] + t, i) - t, r[0] = Math.max(r[0], 0), r[1] = Math.max(r[1], 0);
24031}
24032function rL(r, e, t, a, n) {
24033  r = e.scale.parse(r);
24034  var i = e.scale.getLabel({ value: r }, { precision: n.precision }), o = n.formatter;
24035  if (o) {
24036    var s = { value: Hy(e, { value: r }), axisDimension: e.dim, axisIndex: e.index, seriesData: [] };
24037    D(a, function(l) {
24038      var u = t.getSeriesByIndex(l.seriesIndex), f = l.dataIndexInside, h = u && u.getDataParams(f);
24039      h && s.seriesData.push(h);
24040    }), Y(o) ? i = o.replace("{value}", i) : j(o) && (i = o(s));
24041  }
24042  return i;
24043}
24044function Em(r, e, t) {
24045  var a = He();
24046  return ln(a, a, t.rotation), Pr(a, a, t.position), Ir([r.dataToCoord(e), (t.labelOffset || 0) + (t.labelDirection || 1) * (t.labelMargin || 0)], a);
24047}
24048function aL(r, e, t, a, n, i) {
24049  var o = Ee.innerTextLayout(t.rotation, 0, t.labelDirection);
24050  t.labelMargin = n.get(["label", "margin"]), eL(e, a, n, i, { position: Em(a.axis, r, t), align: o.textAlign, verticalAlign: o.textVerticalAlign });
24051}
24052function km(r, e, t) {
24053  return t = t || 0, { x1: r[t], y1: r[1 - t], x2: e[t], y2: e[1 - t] };
24054}
24055function nL(r, e, t) {
24056  return t = t || 0, { x: r[t], y: r[1 - t], width: e[t], height: e[1 - t] };
24057}
24058function db(r, e, t, a, n, i) {
24059  return { cx: r, cy: e, r0: t, r: a, startAngle: n, endAngle: i, clockwise: true };
24060}
24061var T6 = function(r) {
24062  N(e, r);
24063  function e() {
24064    return r !== null && r.apply(this, arguments) || this;
24065  }
24066  return e.prototype.makeElOption = function(t, a, n, i, o) {
24067    var s = n.axis, l = s.grid, u = i.get("type"), f = gb(l, s).getOtherAxis(s).getGlobalExtent(), h = s.toGlobalCoord(s.dataToCoord(a, true));
24068    if (u && u !== "none") {
24069      var v = Rm(i), c = C6[u](s, h, f);
24070      c.style = v, t.graphicKey = c.type, t.pointer = c;
24071    }
24072    var p = Wd(l.model, n);
24073    aL(a, t, p, n, i, o);
24074  }, e.prototype.getHandleTransform = function(t, a, n) {
24075    var i = Wd(a.axis.grid.model, a, { labelInside: false });
24076    i.labelMargin = n.get(["handle", "margin"]);
24077    var o = Em(a.axis, t, i);
24078    return { x: o[0], y: o[1], rotation: i.rotation + (i.labelDirection < 0 ? Math.PI : 0) };
24079  }, e.prototype.updateHandleTransform = function(t, a, n, i) {
24080    var o = n.axis, s = o.grid, l = o.getGlobalExtent(true), u = gb(s, o).getOtherAxis(o).getGlobalExtent(), f = o.dim === "x" ? 0 : 1, h = [t.x, t.y];
24081    h[f] += a[f], h[f] = Math.min(l[1], h[f]), h[f] = Math.max(l[0], h[f]);
24082    var v = (u[1] + u[0]) / 2, c = [v, v];
24083    c[f] = h[f];
24084    var p = [{ verticalAlign: "middle" }, { align: "center" }];
24085    return { x: h[0], y: h[1], rotation: t.rotation, cursorPoint: c, tooltipOption: p[f] };
24086  }, e;
24087}(Pm);
24088function gb(r, e) {
24089  var t = {};
24090  return t[e.dim + "AxisIndex"] = e.index, r.getCartesian(t);
24091}
24092var C6 = { line: function(r, e, t) {
24093  var a = km([e, t[0]], [e, t[1]], yb(r));
24094  return { type: "Line", subPixelOptimize: true, shape: a };
24095}, shadow: function(r, e, t) {
24096  var a = Math.max(1, r.getBandWidth()), n = t[1] - t[0];
24097  return { type: "Rect", shape: nL([e - a / 2, t[0]], [a, n], yb(r)) };
24098} };
24099function yb(r) {
24100  return r.dim === "x" ? 0 : 1;
24101}
24102var A6 = function(r) {
24103  N(e, r);
24104  function e() {
24105    var t = r !== null && r.apply(this, arguments) || this;
24106    return t.type = e.type, t;
24107  }
24108  return e.type = "axisPointer", e.defaultOption = { show: "auto", z: 50, type: "line", snap: false, triggerTooltip: true, triggerEmphasis: true, 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: true, formatter: null, precision: "auto", margin: 3, color: "#fff", padding: [5, 7, 5, 7], backgroundColor: "auto", borderColor: null, borderWidth: 0, borderRadius: 3 }, handle: { show: false, 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;
24109}(gt), pa = bt(), D6 = D;
24110function iL(r, e, t) {
24111  if (!yt.node) {
24112    var a = e.getZr();
24113    pa(a).records || (pa(a).records = {}), M6(a, e);
24114    var n = pa(a).records[r] || (pa(a).records[r] = {});
24115    n.handler = t;
24116  }
24117}
24118function M6(r, e) {
24119  if (pa(r).initialized) return;
24120  pa(r).initialized = true, t("click", lt(mb, "click")), t("mousemove", lt(mb, "mousemove")), t("globalout", L6);
24121  function t(a, n) {
24122    r.on(a, function(i) {
24123      var o = P6(e);
24124      D6(pa(r).records, function(s) {
24125        s && n(s, i, o.dispatchAction);
24126      }), I6(o.pendings, e);
24127    });
24128  }
24129}
24130function I6(r, e) {
24131  var t = r.showTip.length, a = r.hideTip.length, n;
24132  t ? n = r.showTip[t - 1] : a && (n = r.hideTip[a - 1]), n && (n.dispatchAction = null, e.dispatchAction(n));
24133}
24134function L6(r, e, t) {
24135  r.handler("leave", null, t);
24136}
24137function mb(r, e, t, a) {
24138  e.handler(r, t, a);
24139}
24140function P6(r) {
24141  var e = { showTip: [], hideTip: [] }, t = function(a) {
24142    var n = e[a.type];
24143    n ? n.push(a) : (a.dispatchAction = t, r.dispatchAction(a));
24144  };
24145  return { dispatchAction: t, pendings: e };
24146}
24147function fg(r, e) {
24148  if (!yt.node) {
24149    var t = e.getZr(), a = (pa(t).records || {})[r];
24150    a && (pa(t).records[r] = null);
24151  }
24152}
24153var R6 = function(r) {
24154  N(e, r);
24155  function e() {
24156    var t = r !== null && r.apply(this, arguments) || this;
24157    return t.type = e.type, t;
24158  }
24159  return e.prototype.render = function(t, a, n) {
24160    var i = a.getComponent("tooltip"), o = t.get("triggerOn") || i && i.get("triggerOn") || "mousemove|click";
24161    iL("axisPointer", n, function(s, l, u) {
24162      o !== "none" && (s === "leave" || o.indexOf(s) >= 0) && u({ type: "updateAxisPointer", currTrigger: s, x: l && l.offsetX, y: l && l.offsetY });
24163    });
24164  }, e.prototype.remove = function(t, a) {
24165    fg("axisPointer", a);
24166  }, e.prototype.dispose = function(t, a) {
24167    fg("axisPointer", a);
24168  }, e.type = "axisPointer", e;
24169}(Vt);
24170function oL(r, e) {
24171  var t = [], a = r.seriesIndex, n;
24172  if (a == null || !(n = e.getSeriesByIndex(a))) return { point: [] };
24173  var i = n.getData(), o = hi(i, r);
24174  if (o == null || o < 0 || V(o)) return { point: [] };
24175  var s = i.getItemGraphicEl(o), l = n.coordinateSystem;
24176  if (n.getTooltipPosition) t = n.getTooltipPosition(o) || [];
24177  else if (l && l.dataToPoint) if (r.isStacked) {
24178    var u = l.getBaseAxis(), f = l.getOtherAxis(u), h = f.dim, v = u.dim, c = h === "x" || h === "radius" ? 1 : 0, p = i.mapDimension(v), d = [];
24179    d[c] = i.get(p, o), d[1 - c] = i.get(i.getCalculationInfo("stackResultDimension"), o), t = l.dataToPoint(d) || [];
24180  } else t = l.dataToPoint(i.getValues(G(l.dimensions, function(y) {
24181    return i.mapDimension(y);
24182  }), o)) || [];
24183  else if (s) {
24184    var g = s.getBoundingRect().clone();
24185    g.applyTransform(s.transform), t = [g.x + g.width / 2, g.y + g.height / 2];
24186  }
24187  return { point: t, el: s };
24188}
24189var _b = bt();
24190function E6(r, e, t) {
24191  var a = r.currTrigger, n = [r.x, r.y], i = r, o = r.dispatchAction || $(t.dispatchAction, t), s = e.getComponent("axisPointer").coordSysAxesInfo;
24192  if (s) {
24193    gf(n) && (n = oL({ seriesIndex: i.seriesIndex, dataIndex: i.dataIndex }, e).point);
24194    var l = gf(n), u = i.axesInfo, f = s.axesInfo, h = a === "leave" || gf(n), v = {}, c = {}, p = { list: [], map: {} }, d = { showPointer: lt(O6, c), showTooltip: lt(N6, p) };
24195    D(s.coordSysMap, function(y, m) {
24196      var _ = l || y.containPoint(n);
24197      D(s.coordSysAxesInfo[m], function(S, b) {
24198        var x = S.axis, w = G6(u, S);
24199        if (!h && _ && (!u || w)) {
24200          var T = w && w.value;
24201          T == null && !l && (T = x.pointToData(n)), T != null && Sb(S, T, d, false, v);
24202        }
24203      });
24204    });
24205    var g = {};
24206    return D(f, function(y, m) {
24207      var _ = y.linkGroup;
24208      _ && !c[m] && D(_.axesInfo, function(S, b) {
24209        var x = c[b];
24210        if (S !== y && x) {
24211          var w = x.value;
24212          _.mapper && (w = y.axis.scale.parse(_.mapper(w, xb(S), xb(y)))), g[y.key] = w;
24213        }
24214      });
24215    }), D(g, function(y, m) {
24216      Sb(f[m], y, d, true, v);
24217    }), B6(c, f, v), z6(p, n, r, o), V6(f, o, t), v;
24218  }
24219}
24220function Sb(r, e, t, a, n) {
24221  var i = r.axis;
24222  if (!(i.scale.isBlank() || !i.containData(e))) {
24223    if (!r.involveSeries) {
24224      t.showPointer(r, e);
24225      return;
24226    }
24227    var o = k6(e, r), s = o.payloadBatch, l = o.snapToValue;
24228    s[0] && n.seriesIndex == null && z(n, s[0]), !a && r.snap && i.containData(l) && l != null && (e = l), t.showPointer(r, e, s), t.showTooltip(r, o, l);
24229  }
24230}
24231function k6(r, e) {
24232  var t = e.axis, a = t.dim, n = r, i = [], o = Number.MAX_VALUE, s = -1;
24233  return D(e.seriesModels, function(l, u) {
24234    var f = l.getData().mapDimensionsAll(a), h, v;
24235    if (l.getAxisTooltipData) {
24236      var c = l.getAxisTooltipData(f, r, t);
24237      v = c.dataIndices, h = c.nestestValue;
24238    } else {
24239      if (v = l.getData().indicesOfNearest(f[0], r, t.type === "category" ? 0.5 : null), !v.length) return;
24240      h = l.getData().get(f[0], v[0]);
24241    }
24242    if (!(h == null || !isFinite(h))) {
24243      var p = r - h, d = Math.abs(p);
24244      d <= o && ((d < o || p >= 0 && s < 0) && (o = d, s = p, n = h, i.length = 0), D(v, function(g) {
24245        i.push({ seriesIndex: l.seriesIndex, dataIndexInside: g, dataIndex: l.getData().getRawIndex(g) });
24246      }));
24247    }
24248  }), { payloadBatch: i, snapToValue: n };
24249}
24250function O6(r, e, t, a) {
24251  r[e.key] = { value: t, payloadBatch: a };
24252}
24253function N6(r, e, t, a) {
24254  var n = t.payloadBatch, i = e.axis, o = i.model, s = e.axisPointerModel;
24255  if (!(!e.triggerTooltip || !n.length)) {
24256    var l = e.coordSys.model, u = Sl(l), f = r.map[u];
24257    f || (f = r.map[u] = { coordSysId: l.id, coordSysIndex: l.componentIndex, coordSysType: l.type, coordSysMainType: l.mainType, dataByAxis: [] }, r.list.push(f)), f.dataByAxis.push({ axisDim: i.dim, axisIndex: o.componentIndex, axisType: o.type, axisId: o.id, value: a, valueLabelOpt: { precision: s.get(["label", "precision"]), formatter: s.get(["label", "formatter"]) }, seriesDataIndices: n.slice() });
24258  }
24259}
24260function B6(r, e, t) {
24261  var a = t.axesInfo = [];
24262  D(e, function(n, i) {
24263    var o = n.axisPointerModel.option, s = r[i];
24264    s ? (!n.useHandle && (o.status = "show"), o.value = s.value, o.seriesDataIndices = (s.payloadBatch || []).slice()) : !n.useHandle && (o.status = "hide"), o.status === "show" && a.push({ axisDim: n.axis.dim, axisIndex: n.axis.model.componentIndex, value: o.value });
24265  });
24266}
24267function z6(r, e, t, a) {
24268  if (gf(e) || !r.list.length) {
24269    a({ type: "hideTip" });
24270    return;
24271  }
24272  var n = ((r.list[0].dataByAxis[0] || {}).seriesDataIndices || [])[0] || {};
24273  a({ type: "showTip", escapeConnect: true, x: e[0], y: e[1], tooltipOption: t.tooltipOption, position: t.position, dataIndexInside: n.dataIndexInside, dataIndex: n.dataIndex, seriesIndex: n.seriesIndex, dataByCoordSys: r.list });
24274}
24275function V6(r, e, t) {
24276  var a = t.getZr(), n = "axisPointerLastHighlights", i = _b(a)[n] || {}, o = _b(a)[n] = {};
24277  D(r, function(u, f) {
24278    var h = u.axisPointerModel.option;
24279    h.status === "show" && u.triggerEmphasis && D(h.seriesDataIndices, function(v) {
24280      var c = v.seriesIndex + " | " + v.dataIndex;
24281      o[c] = v;
24282    });
24283  });
24284  var s = [], l = [];
24285  D(i, function(u, f) {
24286    !o[f] && l.push(u);
24287  }), D(o, function(u, f) {
24288    !i[f] && s.push(u);
24289  }), l.length && t.dispatchAction({ type: "downplay", escapeConnect: true, notBlur: true, batch: l }), s.length && t.dispatchAction({ type: "highlight", escapeConnect: true, notBlur: true, batch: s });
24290}
24291function G6(r, e) {
24292  for (var t = 0; t < (r || []).length; t++) {
24293    var a = r[t];
24294    if (e.axis.dim === a.axisDim && e.axis.model.componentIndex === a.axisIndex) return a;
24295  }
24296}
24297function xb(r) {
24298  var e = r.axis.model, t = {}, a = t.axisDim = r.axis.dim;
24299  return t.axisIndex = t[a + "AxisIndex"] = e.componentIndex, t.axisName = t[a + "AxisName"] = e.name, t.axisId = t[a + "AxisId"] = e.id, t;
24300}
24301function gf(r) {
24302  return !r || r[0] == null || isNaN(r[0]) || r[1] == null || isNaN(r[1]);
24303}
24304function jl(r) {
24305  Ci.registerAxisPointerClass("CartesianAxisPointer", T6), r.registerComponentModel(A6), r.registerComponentView(R6), r.registerPreprocessor(function(e) {
24306    if (e) {
24307      (!e.axisPointer || e.axisPointer.length === 0) && (e.axisPointer = {});
24308      var t = e.axisPointer.link;
24309      t && !V(t) && (e.axisPointer.link = [t]);
24310    }
24311  }), r.registerProcessor(r.PRIORITY.PROCESSOR.STATISTIC, function(e, t) {
24312    e.getComponent("axisPointer").coordSysAxesInfo = K5(e, t);
24313  }), r.registerAction({ type: "updateAxisPointer", event: "updateAxisPointer", update: ":updateAxisPointer" }, E6);
24314}
24315function F6(r) {
24316  pt(kM), pt(jl);
24317}
24318var H6 = function(r) {
24319  N(e, r);
24320  function e() {
24321    return r !== null && r.apply(this, arguments) || this;
24322  }
24323  return e.prototype.makeElOption = function(t, a, n, i, o) {
24324    var s = n.axis;
24325    s.dim === "angle" && (this.animationThreshold = Math.PI / 18);
24326    var l = s.polar, u = l.getOtherAxis(s), f = u.getExtent(), h = s.dataToCoord(a), v = i.get("type");
24327    if (v && v !== "none") {
24328      var c = Rm(i), p = U6[v](s, l, h, f);
24329      p.style = c, t.graphicKey = p.type, t.pointer = p;
24330    }
24331    var d = i.get(["label", "margin"]), g = W6(a, n, i, l, d);
24332    eL(t, n, i, o, g);
24333  }, e;
24334}(Pm);
24335function W6(r, e, t, a, n) {
24336  var i = e.axis, o = i.dataToCoord(r), s = a.getAngleAxis().getExtent()[0];
24337  s = s / 180 * Math.PI;
24338  var l = a.getRadiusAxis().getExtent(), u, f, h;
24339  if (i.dim === "radius") {
24340    var v = He();
24341    ln(v, v, s), Pr(v, v, [a.cx, a.cy]), u = Ir([o, -n], v);
24342    var c = e.getModel("axisLabel").get("rotate") || 0, p = Ee.innerTextLayout(s, c * Math.PI / 180, -1);
24343    f = p.textAlign, h = p.textVerticalAlign;
24344  } else {
24345    var d = l[1];
24346    u = a.coordToPoint([d + n, o]);
24347    var g = a.cx, y = a.cy;
24348    f = Math.abs(u[0] - g) / d < 0.3 ? "center" : u[0] > g ? "left" : "right", h = Math.abs(u[1] - y) / d < 0.3 ? "middle" : u[1] > y ? "top" : "bottom";
24349  }
24350  return { position: u, align: f, verticalAlign: h };
24351}
24352var U6 = { line: function(r, e, t, a) {
24353  return r.dim === "angle" ? { type: "Line", shape: km(e.coordToPoint([a[0], t]), e.coordToPoint([a[1], t])) } : { type: "Circle", shape: { cx: e.cx, cy: e.cy, r: t } };
24354}, shadow: function(r, e, t, a) {
24355  var n = Math.max(1, r.getBandWidth()), i = Math.PI / 180;
24356  return r.dim === "angle" ? { type: "Sector", shape: db(e.cx, e.cy, a[0], a[1], (-t - n / 2) * i, (-t + n / 2) * i) } : { type: "Sector", shape: db(e.cx, e.cy, t - n / 2, t + n / 2, 0, Math.PI * 2) };
24357} }, Y6 = function(r) {
24358  N(e, r);
24359  function e() {
24360    var t = r !== null && r.apply(this, arguments) || this;
24361    return t.type = e.type, t;
24362  }
24363  return e.prototype.findAxisModel = function(t) {
24364    var a, n = this.ecModel;
24365    return n.eachComponent(t, function(i) {
24366      i.getCoordSysModel() === this && (a = i);
24367    }, this), a;
24368  }, e.type = "polar", e.dependencies = ["radiusAxis", "angleAxis"], e.defaultOption = { z: 0, center: ["50%", "50%"], radius: "80%" }, e;
24369}(gt), Om = function(r) {
24370  N(e, r);
24371  function e() {
24372    return r !== null && r.apply(this, arguments) || this;
24373  }
24374  return e.prototype.getCoordSysModel = function() {
24375    return this.getReferringComponents("polar", Jt).models[0];
24376  }, e.type = "polarAxis", e;
24377}(gt);
24378Xt(Om, Yo);
24379var $6 = function(r) {
24380  N(e, r);
24381  function e() {
24382    var t = r !== null && r.apply(this, arguments) || this;
24383    return t.type = e.type, t;
24384  }
24385  return e.type = "angleAxis", e;
24386}(Om), X6 = function(r) {
24387  N(e, r);
24388  function e() {
24389    var t = r !== null && r.apply(this, arguments) || this;
24390    return t.type = e.type, t;
24391  }
24392  return e.type = "radiusAxis", e;
24393}(Om), Nm = function(r) {
24394  N(e, r);
24395  function e(t, a) {
24396    return r.call(this, "radius", t, a) || this;
24397  }
24398  return e.prototype.pointToData = function(t, a) {
24399    return this.polar.pointToData(t, a)[this.dim === "radius" ? 0 : 1];
24400  }, e;
24401}(yr);
24402Nm.prototype.dataToRadius = yr.prototype.dataToCoord;
24403Nm.prototype.radiusToData = yr.prototype.coordToData;
24404var Z6 = bt(), Bm = function(r) {
24405  N(e, r);
24406  function e(t, a) {
24407    return r.call(this, "angle", t, a || [0, 360]) || this;
24408  }
24409  return e.prototype.pointToData = function(t, a) {
24410    return this.polar.pointToData(t, a)[this.dim === "radius" ? 0 : 1];
24411  }, e.prototype.calculateCategoryInterval = function() {
24412    var t = this, a = t.getLabelModel(), n = t.scale, i = n.getExtent(), o = n.count();
24413    if (i[1] - i[0] < 1) return 0;
24414    var s = i[0], l = t.dataToCoord(s + 1) - t.dataToCoord(s), u = Math.abs(l), f = El(s == null ? "" : s + "", a.getFont(), "center", "top"), h = Math.max(f.height, 7), v = h / u;
24415    isNaN(v) && (v = 1 / 0);
24416    var c = Math.max(0, Math.floor(v)), p = Z6(t.model), d = p.lastAutoInterval, g = p.lastTickCount;
24417    return d != null && g != null && Math.abs(d - c) <= 1 && Math.abs(g - o) <= 1 && d > c ? c = d : (p.lastTickCount = o, p.lastAutoInterval = c), c;
24418  }, e;
24419}(yr);
24420Bm.prototype.dataToAngle = yr.prototype.dataToCoord;
24421Bm.prototype.angleToData = yr.prototype.coordToData;
24422var sL = ["radius", "angle"], q6 = function() {
24423  function r(e) {
24424    this.dimensions = sL, this.type = "polar", this.cx = 0, this.cy = 0, this._radiusAxis = new Nm(), this._angleAxis = new Bm(), this.axisPointerEnabled = true, this.name = e || "", this._radiusAxis.polar = this._angleAxis.polar = this;
24425  }
24426  return r.prototype.containPoint = function(e) {
24427    var t = this.pointToCoord(e);
24428    return this._radiusAxis.contain(t[0]) && this._angleAxis.contain(t[1]);
24429  }, r.prototype.containData = function(e) {
24430    return this._radiusAxis.containData(e[0]) && this._angleAxis.containData(e[1]);
24431  }, r.prototype.getAxis = function(e) {
24432    var t = "_" + e + "Axis";
24433    return this[t];
24434  }, r.prototype.getAxes = function() {
24435    return [this._radiusAxis, this._angleAxis];
24436  }, r.prototype.getAxesByScale = function(e) {
24437    var t = [], a = this._angleAxis, n = this._radiusAxis;
24438    return a.scale.type === e && t.push(a), n.scale.type === e && t.push(n), t;
24439  }, r.prototype.getAngleAxis = function() {
24440    return this._angleAxis;
24441  }, r.prototype.getRadiusAxis = function() {
24442    return this._radiusAxis;
24443  }, r.prototype.getOtherAxis = function(e) {
24444    var t = this._angleAxis;
24445    return e === t ? this._radiusAxis : t;
24446  }, r.prototype.getBaseAxis = function() {
24447    return this.getAxesByScale("ordinal")[0] || this.getAxesByScale("time")[0] || this.getAngleAxis();
24448  }, r.prototype.getTooltipAxes = function(e) {
24449    var t = e != null && e !== "auto" ? this.getAxis(e) : this.getBaseAxis();
24450    return { baseAxes: [t], otherAxes: [this.getOtherAxis(t)] };
24451  }, r.prototype.dataToPoint = function(e, t) {
24452    return this.coordToPoint([this._radiusAxis.dataToRadius(e[0], t), this._angleAxis.dataToAngle(e[1], t)]);
24453  }, r.prototype.pointToData = function(e, t) {
24454    var a = this.pointToCoord(e);
24455    return [this._radiusAxis.radiusToData(a[0], t), this._angleAxis.angleToData(a[1], t)];
24456  }, r.prototype.pointToCoord = function(e) {
24457    var t = e[0] - this.cx, a = e[1] - this.cy, n = this.getAngleAxis(), i = n.getExtent(), o = Math.min(i[0], i[1]), s = Math.max(i[0], i[1]);
24458    n.inverse ? o = s - 360 : s = o + 360;
24459    var l = Math.sqrt(t * t + a * a);
24460    t /= l, a /= l;
24461    for (var u = Math.atan2(-a, t) / Math.PI * 180, f = u < o ? 1 : -1; u < o || u > s; ) u += f * 360;
24462    return [l, u];
24463  }, r.prototype.coordToPoint = function(e) {
24464    var t = e[0], a = e[1] / 180 * Math.PI, n = Math.cos(a) * t + this.cx, i = -Math.sin(a) * t + this.cy;
24465    return [n, i];
24466  }, r.prototype.getArea = function() {
24467    var e = this.getAngleAxis(), t = this.getRadiusAxis(), a = t.getExtent().slice();
24468    a[0] > a[1] && a.reverse();
24469    var n = e.getExtent(), i = Math.PI / 180, o = 1e-4;
24470    return { cx: this.cx, cy: this.cy, r0: a[0], r: a[1], startAngle: -n[0] * i, endAngle: -n[1] * i, clockwise: e.inverse, contain: function(s, l) {
24471      var u = s - this.cx, f = l - this.cy, h = u * u + f * f, v = this.r, c = this.r0;
24472      return v !== c && h - o <= v * v && h + o >= c * c;
24473    } };
24474  }, r.prototype.convertToPixel = function(e, t, a) {
24475    var n = bb(t);
24476    return n === this ? this.dataToPoint(a) : null;
24477  }, r.prototype.convertFromPixel = function(e, t, a) {
24478    var n = bb(t);
24479    return n === this ? this.pointToData(a) : null;
24480  }, r;
24481}();
24482function bb(r) {
24483  var e = r.seriesModel, t = r.polarModel;
24484  return t && t.coordinateSystem || e && e.coordinateSystem;
24485}
24486function K6(r, e, t) {
24487  var a = e.get("center"), n = t.getWidth(), i = t.getHeight();
24488  r.cx = W(a[0], n), r.cy = W(a[1], i);
24489  var o = r.getRadiusAxis(), s = Math.min(n, i) / 2, l = e.get("radius");
24490  l == null ? l = [0, "100%"] : V(l) || (l = [0, l]);
24491  var u = [W(l[0], s), W(l[1], s)];
24492  o.inverse ? o.setExtent(u[1], u[0]) : o.setExtent(u[0], u[1]);
24493}
24494function j6(r, e) {
24495  var t = this, a = t.getAngleAxis(), n = t.getRadiusAxis();
24496  if (a.scale.setExtent(1 / 0, -1 / 0), n.scale.setExtent(1 / 0, -1 / 0), r.eachSeries(function(s) {
24497    if (s.coordinateSystem === t) {
24498      var l = s.getData();
24499      D(qf(l, "radius"), function(u) {
24500        n.scale.unionExtentFromData(l, u);
24501      }), D(qf(l, "angle"), function(u) {
24502        a.scale.unionExtentFromData(l, u);
24503      });
24504    }
24505  }), di(a.scale, a.model), di(n.scale, n.model), a.type === "category" && !a.onBand) {
24506    var i = a.getExtent(), o = 360 / a.scale.count();
24507    a.inverse ? i[1] += o : i[1] -= o, a.setExtent(i[0], i[1]);
24508  }
24509}
24510function J6(r) {
24511  return r.mainType === "angleAxis";
24512}
24513function wb(r, e) {
24514  var t;
24515  if (r.type = e.get("type"), r.scale = Hl(e), r.onBand = e.get("boundaryGap") && r.type === "category", r.inverse = e.get("inverse"), J6(e)) {
24516    r.inverse = r.inverse !== e.get("clockwise");
24517    var a = e.get("startAngle"), n = (t = e.get("endAngle")) !== null && t !== void 0 ? t : a + (r.inverse ? -360 : 360);
24518    r.setExtent(a, n);
24519  }
24520  e.axis = r, r.model = e;
24521}
24522var Q6 = { dimensions: sL, create: function(r, e) {
24523  var t = [];
24524  return r.eachComponent("polar", function(a, n) {
24525    var i = new q6(n + "");
24526    i.update = j6;
24527    var o = i.getRadiusAxis(), s = i.getAngleAxis(), l = a.findAxisModel("radiusAxis"), u = a.findAxisModel("angleAxis");
24528    wb(o, l), wb(s, u), K6(i, a, e), t.push(i), a.coordinateSystem = i, i.model = a;
24529  }), r.eachSeries(function(a) {
24530    if (a.get("coordinateSystem") === "polar") {
24531      var n = a.getReferringComponents("polar", Jt).models[0];
24532      a.coordinateSystem = n.coordinateSystem;
24533    }
24534  }), t;
24535} }, tU = ["axisLine", "axisLabel", "axisTick", "minorTick", "splitLine", "minorSplitLine", "splitArea"];
24536function Yu(r, e, t) {
24537  e[1] > e[0] && (e = e.slice().reverse());
24538  var a = r.coordToPoint([e[0], t]), n = r.coordToPoint([e[1], t]);
24539  return { x1: a[0], y1: a[1], x2: n[0], y2: n[1] };
24540}
24541function $u(r) {
24542  var e = r.getRadiusAxis();
24543  return e.inverse ? 0 : 1;
24544}
24545function Tb(r) {
24546  var e = r[0], t = r[r.length - 1];
24547  e && t && Math.abs(Math.abs(e.coord - t.coord) - 360) < 1e-4 && r.pop();
24548}
24549var eU = function(r) {
24550  N(e, r);
24551  function e() {
24552    var t = r !== null && r.apply(this, arguments) || this;
24553    return t.type = e.type, t.axisPointerClass = "PolarAxisPointer", t;
24554  }
24555  return e.prototype.render = function(t, a) {
24556    if (this.group.removeAll(), !!t.get("show")) {
24557      var n = t.axis, i = n.polar, o = i.getRadiusAxis().getExtent(), s = n.getTicksCoords(), l = n.getMinorTicksCoords(), u = G(n.getViewLabels(), function(f) {
24558        f = rt(f);
24559        var h = n.scale, v = h.type === "ordinal" ? h.getRawOrdinalNumber(f.tickValue) : f.tickValue;
24560        return f.coord = n.dataToCoord(v), f;
24561      });
24562      Tb(u), Tb(s), D(tU, function(f) {
24563        t.get([f, "show"]) && (!n.scale.isBlank() || f === "axisLine") && rU[f](this.group, t, i, s, l, o, u);
24564      }, this);
24565    }
24566  }, e.type = "angleAxis", e;
24567}(Ci), rU = { axisLine: function(r, e, t, a, n, i) {
24568  var o = e.getModel(["axisLine", "lineStyle"]), s = t.getAngleAxis(), l = Math.PI / 180, u = s.getExtent(), f = $u(t), h = f ? 0 : 1, v, c = Math.abs(u[1] - u[0]) === 360 ? "Circle" : "Arc";
24569  i[h] === 0 ? v = new xi[c]({ shape: { cx: t.cx, cy: t.cy, r: i[f], startAngle: -u[0] * l, endAngle: -u[1] * l, clockwise: s.inverse }, style: o.getLineStyle(), z2: 1, silent: true }) : v = new Lo({ shape: { cx: t.cx, cy: t.cy, r: i[f], r0: i[h] }, style: o.getLineStyle(), z2: 1, silent: true }), v.style.fill = null, r.add(v);
24570}, axisTick: function(r, e, t, a, n, i) {
24571  var o = e.getModel("axisTick"), s = (o.get("inside") ? -1 : 1) * o.get("length"), l = i[$u(t)], u = G(a, function(f) {
24572    return new ee({ shape: Yu(t, [l, l + s], f.coord) });
24573  });
24574  r.add($e(u, { style: Q(o.getModel("lineStyle").getLineStyle(), { stroke: e.get(["axisLine", "lineStyle", "color"]) }) }));
24575}, minorTick: function(r, e, t, a, n, i) {
24576  if (n.length) {
24577    for (var o = e.getModel("axisTick"), s = e.getModel("minorTick"), l = (o.get("inside") ? -1 : 1) * s.get("length"), u = i[$u(t)], f = [], h = 0; h < n.length; h++) for (var v = 0; v < n[h].length; v++) f.push(new ee({ shape: Yu(t, [u, u + l], n[h][v].coord) }));
24578    r.add($e(f, { style: Q(s.getModel("lineStyle").getLineStyle(), Q(o.getLineStyle(), { stroke: e.get(["axisLine", "lineStyle", "color"]) })) }));
24579  }
24580}, axisLabel: function(r, e, t, a, n, i, o) {
24581  var s = e.getCategories(true), l = e.getModel("axisLabel"), u = l.get("margin"), f = e.get("triggerEvent");
24582  D(o, function(h, v) {
24583    var c = l, p = h.tickValue, d = i[$u(t)], g = t.coordToPoint([d + u, h.coord]), y = t.cx, m = t.cy, _ = Math.abs(g[0] - y) / d < 0.3 ? "center" : g[0] > y ? "left" : "right", S = Math.abs(g[1] - m) / d < 0.3 ? "middle" : g[1] > m ? "top" : "bottom";
24584    if (s && s[p]) {
24585      var b = s[p];
24586      tt(b) && b.textStyle && (c = new At(b.textStyle, l, l.ecModel));
24587    }
24588    var x = new St({ silent: Ee.isLabelSilent(e), style: Nt(c, { x: g[0], y: g[1], fill: c.getTextColor() || e.get(["axisLine", "lineStyle", "color"]), text: h.formattedLabel, align: _, verticalAlign: S }) });
24589    if (r.add(x), f) {
24590      var w = Ee.makeAxisEventDataBase(e);
24591      w.targetType = "axisLabel", w.value = h.rawLabel, it(x).eventData = w;
24592    }
24593  }, this);
24594}, splitLine: function(r, e, t, a, n, i) {
24595  var o = e.getModel("splitLine"), s = o.getModel("lineStyle"), l = s.get("color"), u = 0;
24596  l = l instanceof Array ? l : [l];
24597  for (var f = [], h = 0; h < a.length; h++) {
24598    var v = u++ % l.length;
24599    f[v] = f[v] || [], f[v].push(new ee({ shape: Yu(t, i, a[h].coord) }));
24600  }
24601  for (var h = 0; h < f.length; h++) r.add($e(f[h], { style: Q({ stroke: l[h % l.length] }, s.getLineStyle()), silent: true, z: e.get("z") }));
24602}, minorSplitLine: function(r, e, t, a, n, i) {
24603  if (n.length) {
24604    for (var o = e.getModel("minorSplitLine"), s = o.getModel("lineStyle"), l = [], u = 0; u < n.length; u++) for (var f = 0; f < n[u].length; f++) l.push(new ee({ shape: Yu(t, i, n[u][f].coord) }));
24605    r.add($e(l, { style: s.getLineStyle(), silent: true, z: e.get("z") }));
24606  }
24607}, splitArea: function(r, e, t, a, n, i) {
24608  if (a.length) {
24609    var o = e.getModel("splitArea"), s = o.getModel("areaStyle"), l = s.get("color"), u = 0;
24610    l = l instanceof Array ? l : [l];
24611    for (var f = [], h = Math.PI / 180, v = -a[0].coord * h, c = Math.min(i[0], i[1]), p = Math.max(i[0], i[1]), d = e.get("clockwise"), g = 1, y = a.length; g <= y; g++) {
24612      var m = g === y ? a[0].coord : a[g].coord, _ = u++ % l.length;
24613      f[_] = f[_] || [], f[_].push(new Te({ shape: { cx: t.cx, cy: t.cy, r0: c, r: p, startAngle: v, endAngle: -m * h, clockwise: d }, silent: true })), v = -m * h;
24614    }
24615    for (var g = 0; g < f.length; g++) r.add($e(f[g], { style: Q({ fill: l[g % l.length] }, s.getAreaStyle()), silent: true }));
24616  }
24617} }, aU = ["axisLine", "axisTickLabel", "axisName"], nU = ["splitLine", "splitArea", "minorSplitLine"], iU = function(r) {
24618  N(e, r);
24619  function e() {
24620    var t = r !== null && r.apply(this, arguments) || this;
24621    return t.type = e.type, t.axisPointerClass = "PolarAxisPointer", t;
24622  }
24623  return e.prototype.render = function(t, a) {
24624    if (this.group.removeAll(), !!t.get("show")) {
24625      var n = this._axisGroup, i = this._axisGroup = new at();
24626      this.group.add(i);
24627      var o = t.axis, s = o.polar, l = s.getAngleAxis(), u = o.getTicksCoords(), f = o.getMinorTicksCoords(), h = l.getExtent()[0], v = o.getExtent(), c = sU(s, t, h), p = new Ee(t, c);
24628      D(aU, p.add, p), i.add(p.getGroup()), Vl(n, i, t), D(nU, function(d) {
24629        t.get([d, "show"]) && !o.scale.isBlank() && oU[d](this.group, t, s, h, v, u, f);
24630      }, this);
24631    }
24632  }, e.type = "radiusAxis", e;
24633}(Ci), oU = { splitLine: function(r, e, t, a, n, i) {
24634  var o = e.getModel("splitLine"), s = o.getModel("lineStyle"), l = s.get("color"), u = 0, f = t.getAngleAxis(), h = Math.PI / 180, v = f.getExtent(), c = Math.abs(v[1] - v[0]) === 360 ? "Circle" : "Arc";
24635  l = l instanceof Array ? l : [l];
24636  for (var p = [], d = 0; d < i.length; d++) {
24637    var g = u++ % l.length;
24638    p[g] = p[g] || [], p[g].push(new xi[c]({ shape: { cx: t.cx, cy: t.cy, r: Math.max(i[d].coord, 0), startAngle: -v[0] * h, endAngle: -v[1] * h, clockwise: f.inverse } }));
24639  }
24640  for (var d = 0; d < p.length; d++) r.add($e(p[d], { style: Q({ stroke: l[d % l.length], fill: null }, s.getLineStyle()), silent: true }));
24641}, minorSplitLine: function(r, e, t, a, n, i, o) {
24642  if (o.length) {
24643    for (var s = e.getModel("minorSplitLine"), l = s.getModel("lineStyle"), u = [], f = 0; f < o.length; f++) for (var h = 0; h < o[f].length; h++) u.push(new ea({ shape: { cx: t.cx, cy: t.cy, r: o[f][h].coord } }));
24644    r.add($e(u, { style: Q({ fill: null }, l.getLineStyle()), silent: true }));
24645  }
24646}, splitArea: function(r, e, t, a, n, i) {
24647  if (i.length) {
24648    var o = e.getModel("splitArea"), s = o.getModel("areaStyle"), l = s.get("color"), u = 0;
24649    l = l instanceof Array ? l : [l];
24650    for (var f = [], h = i[0].coord, v = 1; v < i.length; v++) {
24651      var c = u++ % l.length;
24652      f[c] = f[c] || [], f[c].push(new Te({ shape: { cx: t.cx, cy: t.cy, r0: h, r: i[v].coord, startAngle: 0, endAngle: Math.PI * 2 }, silent: true })), h = i[v].coord;
24653    }
24654    for (var v = 0; v < f.length; v++) r.add($e(f[v], { style: Q({ fill: l[v % l.length] }, s.getAreaStyle()), silent: true }));
24655  }
24656} };
24657function sU(r, e, t) {
24658  return { position: [r.cx, r.cy], rotation: t / 180 * Math.PI, labelDirection: -1, tickDirection: -1, nameDirection: 1, labelRotate: e.getModel("axisLabel").get("rotate"), z2: 1 };
24659}
24660function lL(r) {
24661  return r.get("stack") || "__ec_stack_" + r.seriesIndex;
24662}
24663function uL(r, e) {
24664  return e.dim + r.model.componentIndex;
24665}
24666function lU(r, e, t) {
24667  var a = {}, n = uU(Ct(e.getSeriesByType(r), function(i) {
24668    return !e.isSeriesFiltered(i) && i.coordinateSystem && i.coordinateSystem.type === "polar";
24669  }));
24670  e.eachSeriesByType(r, function(i) {
24671    if (i.coordinateSystem.type === "polar") {
24672      var o = i.getData(), s = i.coordinateSystem, l = s.getBaseAxis(), u = uL(s, l), f = lL(i), h = n[u][f], v = h.offset, c = h.width, p = s.getOtherAxis(l), d = i.coordinateSystem.cx, g = i.coordinateSystem.cy, y = i.get("barMinHeight") || 0, m = i.get("barMinAngle") || 0;
24673      a[f] = a[f] || [];
24674      for (var _ = o.mapDimension(p.dim), S = o.mapDimension(l.dim), b = xa(o, _), x = l.dim !== "radius" || !i.get("roundCap", true), w = p.model, T = w.get("startValue"), C = p.dataToCoord(T || 0), A = 0, M = o.count(); A < M; A++) {
24675        var I = o.get(_, A), L = o.get(S, A), P = I >= 0 ? "p" : "n", R = C;
24676        b && (a[f][L] || (a[f][L] = { p: C, n: C }), R = a[f][L][P]);
24677        var E = void 0, O = void 0, k = void 0, B = void 0;
24678        if (p.dim === "radius") {
24679          var F = p.dataToCoord(I) - C, H = l.dataToCoord(L);
24680          Math.abs(F) < y && (F = (F < 0 ? -1 : 1) * y), E = R, O = R + F, k = H - v, B = k - c, b && (a[f][L][P] = O);
24681        } else {
24682          var U = p.dataToCoord(I, x) - C, K = l.dataToCoord(L);
24683          Math.abs(U) < m && (U = (U < 0 ? -1 : 1) * m), E = K + v, O = E + c, k = R, B = R + U, b && (a[f][L][P] = B);
24684        }
24685        o.setItemLayout(A, { cx: d, cy: g, r0: E, r: O, startAngle: -k * Math.PI / 180, endAngle: -B * Math.PI / 180, clockwise: k >= B });
24686      }
24687    }
24688  });
24689}
24690function uU(r) {
24691  var e = {};
24692  D(r, function(a, n) {
24693    var i = a.getData(), o = a.coordinateSystem, s = o.getBaseAxis(), l = uL(o, s), u = s.getExtent(), f = s.type === "category" ? s.getBandWidth() : Math.abs(u[1] - u[0]) / i.count(), h = e[l] || { bandWidth: f, remainedWidth: f, autoWidthCount: 0, categoryGap: "20%", gap: "30%", stacks: {} }, v = h.stacks;
24694    e[l] = h;
24695    var c = lL(a);
24696    v[c] || h.autoWidthCount++, v[c] = v[c] || { width: 0, maxWidth: 0 };
24697    var p = W(a.get("barWidth"), f), d = W(a.get("barMaxWidth"), f), g = a.get("barGap"), y = a.get("barCategoryGap");
24698    p && !v[c].width && (p = Math.min(h.remainedWidth, p), v[c].width = p, h.remainedWidth -= p), d && (v[c].maxWidth = d), g != null && (h.gap = g), y != null && (h.categoryGap = y);
24699  });
24700  var t = {};
24701  return D(e, function(a, n) {
24702    t[n] = {};
24703    var i = a.stacks, o = a.bandWidth, s = W(a.categoryGap, o), l = W(a.gap, 1), u = a.remainedWidth, f = a.autoWidthCount, h = (u - s) / (f + (f - 1) * l);
24704    h = Math.max(h, 0), D(i, function(d, g) {
24705      var y = d.maxWidth;
24706      y && y < h && (y = Math.min(y, u), d.width && (y = Math.min(y, d.width)), u -= y, d.width = y, f--);
24707    }), h = (u - s) / (f + (f - 1) * l), h = Math.max(h, 0);
24708    var v = 0, c;
24709    D(i, function(d, g) {
24710      d.width || (d.width = h), c = d, v += d.width * (1 + l);
24711    }), c && (v -= c.width * l);
24712    var p = -v / 2;
24713    D(i, function(d, g) {
24714      t[n][g] = t[n][g] || { offset: p, width: d.width }, p += d.width * (1 + l);
24715    });
24716  }), t;
24717}
24718var fU = { startAngle: 90, clockwise: true, splitNumber: 12, axisLabel: { rotate: 0 } }, hU = { splitNumber: 5 }, vU = function(r) {
24719  N(e, r);
24720  function e() {
24721    var t = r !== null && r.apply(this, arguments) || this;
24722    return t.type = e.type, t;
24723  }
24724  return e.type = "polar", e;
24725}(Vt);
24726function cU(r) {
24727  pt(jl), Ci.registerAxisPointerClass("PolarAxisPointer", H6), r.registerCoordinateSystem("polar", Q6), r.registerComponentModel(Y6), r.registerComponentView(vU), wo(r, "angle", $6, fU), wo(r, "radiu
24727s", X6, hU), r.registerComponentView(eU), r.registerComponentView(iU), r.registerLayout(lt(lU, "bar"));
24728}
24729function hg(r, e) {
24730  e = e || {};
24731  var t = r.coordinateSystem, a = r.axis, n = {}, i = a.position, o = a.orient, s = t.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] } };
24732  n.position = [o === "vertical" ? u.vertical[i] : l[0], o === "horizontal" ? u.horizontal[i] : l[3]];
24733  var f = { horizontal: 0, vertical: 1 };
24734  n.rotation = Math.PI / 2 * f[o];
24735  var h = { top: -1, bottom: 1, right: 1, left: -1 };
24736  n.labelDirection = n.tickDirection = n.nameDirection = h[i], r.get(["axisTick", "inside"]) && (n.tickDirection = -n.tickDirection), ne(e.labelInside, r.get(["axisLabel", "inside"])) && (n.labelDirection = -n.labelDirection);
24737  var v = e.rotate;
24738  return v == null && (v = r.get(["axisLabel", "rotate"])), n.labelRotation = i === "top" ? -v : v, n.z2 = 1, n;
24739}
24740var pU = ["axisLine", "axisTickLabel", "axisName"], dU = ["splitArea", "splitLine"], gU = function(r) {
24741  N(e, r);
24742  function e() {
24743    var t = r !== null && r.apply(this, arguments) || this;
24744    return t.type = e.type, t.axisPointerClass = "SingleAxisPointer", t;
24745  }
24746  return e.prototype.render = function(t, a, n, i) {
24747    var o = this.group;
24748    o.removeAll();
24749    var s = this._axisGroup;
24750    this._axisGroup = new at();
24751    var l = hg(t), u = new Ee(t, l);
24752    D(pU, u.add, u), o.add(this._axisGroup), o.add(u.getGroup()), D(dU, function(f) {
24753      t.get([f, "show"]) && yU[f](this, this.group, this._axisGroup, t);
24754    }, this), Vl(s, this._axisGroup, t), r.prototype.render.call(this, t, a, n, i);
24755  }, e.prototype.remove = function() {
24756    PM(this);
24757  }, e.type = "singleAxis", e;
24758}(Ci), yU = { splitLine: function(r, e, t, a) {
24759  var n = a.axis;
24760  if (!n.scale.isBlank()) {
24761    var i = a.getModel("splitLine"), o = i.getModel("lineStyle"), s = o.get("color");
24762    s = s instanceof Array ? s : [s];
24763    for (var l = o.get("width"), u = a.coordinateSystem.getRect(), f = n.isHorizontal(), h = [], v = 0, c = n.getTicksCoords({ tickModel: i }), p = [], d = [], g = 0; g < c.length; ++g) {
24764      var y = n.toGlobalCoord(c[g].coord);
24765      f ? (p[0] = y, p[1] = u.y, d[0] = y, d[1] = u.y + u.height) : (p[0] = u.x, p[1] = y, d[0] = u.x + u.width, d[1] = y);
24766      var m = new ee({ shape: { x1: p[0], y1: p[1], x2: d[0], y2: d[1] }, silent: true });
24767      _o(m.shape, l);
24768      var _ = v++ % s.length;
24769      h[_] = h[_] || [], h[_].push(m);
24770    }
24771    for (var S = o.getLineStyle(["color"]), g = 0; g < h.length; ++g) e.add($e(h[g], { style: Q({ stroke: s[g % s.length] }, S), silent: true }));
24772  }
24773}, splitArea: function(r, e, t, a) {
24774  LM(r, t, a, a);
24775} }, yf = function(r) {
24776  N(e, r);
24777  function e() {
24778    var t = r !== null && r.apply(this, arguments) || this;
24779    return t.type = e.type, t;
24780  }
24781  return e.prototype.getCoordSysModel = function() {
24782    return this;
24783  }, e.type = "singleAxis", e.layoutMode = "box", e.defaultOption = { left: "5%", top: "5%", right: "5%", bottom: "5%", type: "value", position: "bottom", orient: "horizontal", axisLine: { show: true, lineStyle: { width: 1, type: "solid" } }, tooltip: { show: true }, axisTick: { show: true, length: 6, lineStyle: { width: 1 } }, axisLabel: { show: true, interval: "auto" }, splitLine: { show: true, lineStyle: { type: "dashed", opacity: 0.2 } } }, e;
24784}(gt);
24785Xt(yf, Yo.prototype);
24786var mU = function(r) {
24787  N(e, r);
24788  function e(t, a, n, i, o) {
24789    var s = r.call(this, t, a, n) || this;
24790    return s.type = i || "value", s.position = o || "bottom", s;
24791  }
24792  return e.prototype.isHorizontal = function() {
24793    var t = this.position;
24794    return t === "top" || t === "bottom";
24795  }, e.prototype.pointToData = function(t, a) {
24796    return this.coordinateSystem.pointToData(t)[0];
24797  }, e;
24798}(yr), fL = ["single"], _U = function() {
24799  function r(e, t, a) {
24800    this.type = "single", this.dimension = "single", this.dimensions = fL, this.axisPointerEnabled = true, this.model = e, this._init(e, t, a);
24801  }
24802  return r.prototype._init = function(e, t, a) {
24803    var n = this.dimension, i = new mU(n, Hl(e), [0, 0], e.get("type"), e.get("position")), o = i.type === "category";
24804    i.onBand = o && e.get("boundaryGap"), i.inverse = e.get("inverse"), i.orient = e.get("orient"), e.axis = i, i.model = e, i.coordinateSystem = this, this._axis = i;
24805  }, r.prototype.update = function(e, t) {
24806    e.eachSeries(function(a) {
24807      if (a.coordinateSystem === this) {
24808        var n = a.getData();
24809        D(n.mapDimensionsAll(this.dimension), function(i) {
24810          this._axis.scale.unionExtentFromData(n, i);
24811        }, this), di(this._axis.scale, this._axis.model);
24812      }
24813    }, this);
24814  }, r.prototype.resize = function(e, t) {
24815    this._rect = Qt({ left: e.get("left"), top: e.get("top"), right: e.get("right"), bottom: e.get("bottom"), width: e.get("width"), height: e.get("height") }, { width: t.getWidth(), height: t.getHeight() }), this._adjustAxis();
24816  }, r.prototype.getRect = function() {
24817    return this._rect;
24818  }
24818, r.prototype._adjustAxis = function() {
24819    var e = this._rect, t = this._axis, a = t.isHorizontal(), n = a ? [0, e.width] : [0, e.height], i = t.inverse ? 1 : 0;
24820    t.setExtent(n[i], n[1 - i]), this._updateAxisTransform(t, a ? e.x : e.y);
24821  }, r.prototype._updateAxisTransform = function(e, t) {
24822    var a = e.getExtent(), n = a[0] + a[1], i = e.isHorizontal();
24823    e.toGlobalCoord = i ? function(o) {
24824      return o + t;
24825    } : function(o) {
24826      return n - o + t;
24827    }, e.toLocalCoord = i ? function(o) {
24828      return o - t;
24829    } : function(o) {
24830      return n - o + t;
24831    };
24832  }, r.prototype.getAxis = function() {
24833    return this._axis;
24834  }, r.prototype.getBaseAxis = function() {
24835    return this._axis;
24836  }, r.prototype.getAxes = function() {
24837    return [this._axis];
24838  }, r.prototype.getTooltipAxes = function() {
24839    return { baseAxes: [this.getAxis()], otherAxes: [] };
24840  }, r.prototype.containPoint = function(e) {
24841    var t = this.getRect(), a = this.getAxis(), n = a.orient;
24842    return n === "horizontal" ? a.contain(a.toLocalCoord(e[0])) && e[1] >= t.y && e[1] <= t.y + t.height : a.contain(a.toLocalCoord(e[1])) && e[0] >= t.y && e[0] <= t.y + t.height;
24843  }, r.prototype.pointToData = function(e) {
24844    var t = this.getAxis();
24845    return [t.coordToData(t.toLocalCoord(e[t.orient === "horizontal" ? 0 : 1]))];
24846  }, r.prototype.dataToPoint = function(e) {
24847    var t = this.getAxis(), a = this.getRect(), n = [], i = t.orient === "horizontal" ? 0 : 1;
24848    return e instanceof Array && (e = e[0]), n[i] = t.toGlobalCoord(t.dataToCoord(+e)), n[1 - i] = i === 0 ? a.y + a.height / 2 : a.x + a.width / 2, n;
24849  }, r.prototype.convertToPixel = function(e, t, a) {
24850    var n = Cb(t);
24851    return n === this ? this.dataToPoint(a) : null;
24852  }, r.prototype.convertFromPixel = function(e, t, a) {
24853    var n = Cb(t);
24854    return n === this ? this.pointToData(a) : null;
24855  }, r;
24856}();
24857function Cb(r) {
24858  var e = r.seriesModel, t = r.singleAxisModel;
24859  return t && t.coordinateSystem || e && e.coordinateSystem;
24860}
24861function SU(r, e) {
24862  var t = [];
24863  return r.eachComponent("singleAxis", function(a, n) {
24864    var i = new _U(a, r, e);
24865    i.name = "single_" + n, i.resize(a, e), a.coordinateSystem = i, t.push(i);
24866  }), r.eachSeries(function(a) {
24867    if (a.get("coordinateSystem") === "singleAxis") {
24868      var n = a.getReferringComponents("singleAxis", Jt).models[0];
24869      a.coordinateSystem = n && n.coordinateSystem;
24870    }
24871  }), t;
24872}
24873var xU = { create: SU, dimensions: fL }, Ab = ["x", "y"], bU = ["width", "height"], wU = function(r) {
24874  N(e, r);
24875  function e() {
24876    return r !== null && r.apply(this, arguments) || this;
24877  }
24878  return e.prototype.makeElOption = function(t, a, n, i, o) {
24879    var s = n.axis, l = s.coordinateSystem, u = dp(l, 1 - uh(s)), f = l.dataToPoint(a)[0], h = i.get("type");
24880    if (h && h !== "none") {
24881      var v = Rm(i), c = TU[h](s, f, u);
24882      c.style = v, t.graphicKey = c.type, t.pointer = c;
24883    }
24884    var p = hg(n);
24885    aL(a, t, p, n, i, o);
24886  }, e.prototype.getHandleTransform = function(t, a, n) {
24887    var i = hg(a, { labelInside: false });
24888    i.labelMargin = n.get(["handle", "margin"]);
24889    var o = Em(a.axis, t, i);
24890    return { x: o[0], y: o[1], rotation: i.rotation + (i.labelDirection < 0 ? Math.PI : 0) };
24891  }, e.prototype.updateHandleTransform = function(t, a, n, i) {
24892    var o = n.axis, s = o.coordinateSystem, l = uh(o), u = dp(s, l), f = [t.x, t.y];
24893    f[l] += a[l], f[l] = Math.min(u[1], f[l]), f[l] = Math.max(u[0], f[l]);
24894    var h = dp(s, 1 - l), v = (h[1] + h[0]) / 2, c = [v, v];
24895    return c[l] = f[l], { x: f[0], y: f[1], rotation: t.rotation, cursorPoint: c, tooltipOption: { verticalAlign: "middle" } };
24896  }, e;
24897}(Pm), TU = { line: function(r, e, t) {
24898  var a = km([e, t[0]], [e, t[1]], uh(r));
24899  return { type: "Line", subPixelOptimize: true, shape: a };
24900}, shadow: function(r, e, t) {
24901  var a = r.getBandWidth(), n = t[1] - t[0];
24902  return { type: "Rect", shape: nL([e - a / 2, t[0]], [a, n], uh(r)) };
24903} };
24904function uh(r) {
24905  return r.isHorizontal() ? 0 : 1;
24906}
24907function dp(r, e) {
24908  var t = r.getRect();
24909  return [t[Ab[e]], t[Ab[e]] + t[bU[e]]];
24910}
24911var CU = function(r) {
24912  N(e, r);
24913  function e() {
24914    var t = r !== null && r.apply(this, arguments) || this;
24915    return t.type = e.type, t;
24916  }
24917  return e.type = "single", e;
24918}(Vt);
24919function AU(r) {
24920  pt(jl), Ci.registerAxisPointerClass("SingleAxisPointer", wU), r.registerComponentView(CU), r.registerComponentView(gU), r.registerComponentModel(yf), wo(r, "single", yf, yf.defaultOption), r.registerCoordinateSystem("single", xU);
24921}
24922var DU = function(r) {
24923  N(e, r);
24924  function e() {
24925    var t = r !== null && r.apply(this, arguments) || this;
24926    return t.type = e.type, t;
24927  }
24928  return e.prototype.init = function(t, a, n) {
24929    var i = Bo(t);
24930    r.prototype.init.apply(this, arguments), Db(t, i);
24931  }, e.prototype.mergeOption = function(t) {
24932    r.prototype.mergeOption.apply(this, arguments), Db(this.option, t);
24933  }, e.prototype.getCellSize = function() {
24934    return this.option.cellSize;
24935  }, e.type = "calendar", e.defaultOption = { z: 2, left: 80, top: 60, cellSize: 20, orient: "horizontal", splitLine: { show: true, lineStyle: { color: "#000", width: 1, type: "solid" } }, itemStyle: { color: "#fff", borderWidth: 1, borderColor: "#ccc" }, dayLabel: { show: true, firstDay: 0, position: "start", margin: "50%", color: "#000" }, monthLabel: { show: true, position: "start", margin: 5, align: "center", formatter: null, color: "#000" }, yearLabel: { show: true, position: null, margin: 30, formatter: null, color: "#ccc", fontFamily: "sans-serif", fontWeight: "bolder", fontSize: 20 } }, e;
24936}(gt);
24937function Db(r, e) {
24938  var t = r.cellSize, a;
24939  V(t) ? a = t : a = r.cellSize = [t, t], a.length === 1 && (a[1] = a[0]);
24940  var n = G([0, 1], function(i) {
24941    return Pk(e, i) && (a[i] = "auto"), a[i] != null && a[i] !== "auto";
24942  });
24943  an(r, e, { type: "box", ignoreSize: n });
24944}
24945var MU = function(r) {
24946  N(e, r);
24947  function e() {
24948    var t = r !== null && r.apply(this, arguments) || this;
24949    return t.type = e.type, t;
24950  }
24951  return e.prototype.render = function(t, a, n) {
24952    var i = this.group;
24953    i.removeAll();
24954    var o = t.coordinateSystem, s = o.getRangeInfo(), l = o.getOrient(), u = a.getLocaleModel();
24955    this._renderDayRect(t, s, i), this._renderLines(t, s, l, i), this._renderYearText(t, s, l, i), this._renderMonthText(t, u, l, i), this._renderWeekText(t, u, s, l, i);
24956  }, e.prototype._renderDayRect = function(t, a, n) {
24957    for (var i = t.coordinateSystem, o = t.getModel("itemStyle").getItemStyle(), s = i.getCellWidth(), l = i.getCellHeight(), u = a.start.time; u <= a.end.time; u = i.getNextNDay(u, 1).time) {
24958      var f = i.dataToRect([u], false).tl, h = new xt({ shape: { x: f[0], y: f[1], width: s, height: l }, cursor: "default", style: o });
24959      n.add(h);
24960    }
24961  }, e.prototype._renderLines = function(t, a, n, i) {
24962    var o = this, s = t.coordinateSystem, l = t.getModel(["splitLine", "lineStyle"]).getLineStyle(), u = t.get(["splitLine", "show"]), f = l.lineWidth;
24963    this._tlpoints = [], this._blpoints = [], this._firstDayOfMonth = [], this._firstDayPoints = [];
24964    for (var h = a.start, v = 0; h.time <= a.end.time; v++) {
24965      p(h.formatedDate), v === 0 && (h = s.getDateInfo(a.start.y + "-" + a.start.m));
24966      var c = h.date;
24967      c.setMonth(c.getMonth() + 1), h = s.getDateInfo(c);
24968    }
24969    p(s.getNextNDay(a.end.time, 1).formatedDate);
24970    function p(d) {
24971      o._firstDayOfMonth.push(s.getDateInfo(d)), o._firstDayPoints.push(s.dataToRect([d], false).tl);
24972      var g = o._getLinePointsOfOneWeek(t, d, n);
24973      o._tlpoints.push(g[0]), o._blpoints.push(g[g.length - 1]), u && o._drawSplitline(g, l, i);
24974    }
24975    u && this._drawSplitline(o._getEdgesPoints(o._tlpoints, f, n), l, i), u && this._drawSplitline(o._getEdgesPoints(o._blpoints, f, n), l, i);
24976  }, e.prototype._getEdgesPoints = function(t, a, n) {
24977    var i = [t[0].slice(), t[t.length - 1].slice()], o = n === "horizontal" ? 0 : 1;
24978    return i[0][o] = i[0][o] - a / 2, i[1][o] = i[1][o] + a / 2, i;
24979  }, e.prototype._drawSplitline = function(t, a, n) {
24980    var i = new De({ z2: 20, shape: { points: t }, style: a });
24981    n.add(i);
24982  }, e.prototype._getLinePointsOfOneWeek = function(t, a, n) {
24983    for (var i = t.coordinateSystem, o = i.getDateInfo(a), s = [], l = 0; l < 7; l++) {
24984      var u = i.getNextNDay(o.time, l), f = i.dataToRect([u.time], false);
24985      s[2 * u.day] = f.tl, s[2 * u.day + 1] = f[n === "horizontal" ? "bl" : "tr"];
24986    }
24987    return s;
24988  }, e.prototype._formatterLabel = function(t, a) {
24989    return Y(t) && t ? Dk(t, a) : j(t) ? t(a) : a.nameMap;
24990  }, e.prototype._yearTextPositionControl = function(t, a, n, i, o) {
24991    var s = a[0], l = a[1], u = ["center", "bottom"];
24992    i === "bottom" ? (l += o, u = ["center", "top"]) : i === "left" ? s -= o : i === "right" ? (s += o, u = ["center", "top"]) : l -= o;
24993    var f = 0;
24994    return (i === "left" || i === "right") && (f = Math.PI / 2), { rotation: f, x: s, y: l, style: { al
24994ign: u[0], verticalAlign: u[1] } };
24995  }, e.prototype._renderYearText = function(t, a, n, i) {
24996    var o = t.getModel("yearLabel");
24997    if (o.get("show")) {
24998      var s = o.get("margin"), l = o.get("position");
24999      l || (l = n !== "horizontal" ? "top" : "left");
25000      var u = [this._tlpoints[this._tlpoints.length - 1], this._blpoints[0]], f = (u[0][0] + u[1][0]) / 2, h = (u[0][1] + u[1][1]) / 2, v = n === "horizontal" ? 0 : 1, c = { top: [f, u[v][1]], bottom: [f, u[1 - v][1]], left: [u[1 - v][0], h], right: [u[v][0], h] }, p = a.start.y;
25001      +a.end.y > +a.start.y && (p = p + "-" + a.end.y);
25002      var d = o.get("formatter"), g = { start: a.start.y, end: a.end.y, nameMap: p }, y = this._formatterLabel(d, g), m = new St({ z2: 30, style: Nt(o, { text: y }), silent: o.get("silent") });
25003      m.attr(this._yearTextPositionControl(m, c[l], n, l, s)), i.add(m);
25004    }
25005  }, e.prototype._monthTextPositionControl = function(t, a, n, i, o) {
25006    var s = "left", l = "top", u = t[0], f = t[1];
25007    return n === "horizontal" ? (f = f + o, a && (s = "center"), i === "start" && (l = "bottom")) : (u = u + o, a && (l = "middle"), i === "start" && (s = "right")), { x: u, y: f, align: s, verticalAlign: l };
25008  }, e.prototype._renderMonthText = function(t, a, n, i) {
25009    var o = t.getModel("monthLabel");
25010    if (o.get("show")) {
25011      var s = o.get("nameMap"), l = o.get("margin"), u = o.get("position"), f = o.get("align"), h = [this._tlpoints, this._blpoints];
25012      (!s || Y(s)) && (s && (a = md(s) || a), s = a.get(["time", "monthAbbr"]) || []);
25013      var v = u === "start" ? 0 : 1, c = n === "horizontal" ? 0 : 1;
25014      l = u === "start" ? -l : l;
25015      for (var p = f === "center", d = o.get("silent"), g = 0; g < h[v].length - 1; g++) {
25016        var y = h[v][g].slice(), m = this._firstDayOfMonth[g];
25017        if (p) {
25018          var _ = this._firstDayPoints[g];
25019          y[c] = (_[c] + h[0][g + 1][c]) / 2;
25020        }
25021        var S = o.get("formatter"), b = s[+m.m - 1], x = { yyyy: m.y, yy: (m.y + "").slice(2), MM: m.m, M: +m.m, nameMap: b }, w = this._formatterLabel(S, x), T = new St({ z2: 30, style: z(Nt(o, { text: w }), this._monthTextPositionControl(y, p, n, u, l)), silent: d });
25022        i.add(T);
25023      }
25024    }
25025  }, e.prototype._weekTextPositionControl = function(t, a, n, i, o) {
25026    var s = "center", l = "middle", u = t[0], f = t[1], h = n === "start";
25027    return a === "horizontal" ? (u = u + i + (h ? 1 : -1) * o[0] / 2, s = h ? "right" : "left") : (f = f + i + (h ? 1 : -1) * o[1] / 2, l = h ? "bottom" : "top"), { x: u, y: f, align: s, verticalAlign: l };
25028  }, e.prototype._renderWeekText = function(t, a, n, i, o) {
25029    var s = t.getModel("dayLabel");
25030    if (s.get("show")) {
25031      var l = t.coordinateSystem, u = s.get("position"), f = s.get("nameMap"), h = s.get("margin"), v = l.getFirstDayOfWeek();
25032      if (!f || Y(f)) {
25033        f && (a = md(f) || a);
25034        var c = a.get(["time", "dayOfWeekShort"]);
25035        f = c || G(a.get(["time", "dayOfWeekAbbr"]), function(x) {
25036          return x[0];
25037        });
25038      }
25039      var p = l.getNextNDay(n.end.time, 7 - n.lweek).time, d = [l.getCellWidth(), l.getCellHeight()];
25040      h = W(h, Math.min(d[1], d[0])), u === "start" && (p = l.getNextNDay(n.start.time, -(7 + n.fweek)).time, h = -h);
25041      for (var g = s.get("silent"), y = 0; y < 7; y++) {
25042        var m = l.getNextNDay(p, y), _ = l.dataToRect([m.time], false).center, S = y;
25043        S = Math.abs((y + v) % 7);
25044        var b = new St({ z2: 30, style: z(Nt(s, { text: f[S] }), this._weekTextPositionControl(_, i, u, h, d)), silent: g });
25045        o.add(b);
25046      }
25047    }
25048  }, e.type = "calendar", e;
25049}(Vt), gp = 864e5, IU = function() {
25050  function r(e, t, a) {
25051    this.type = "calendar", this.dimensions = r.dimensions, this.getDimensionsInfo = r.getDimensionsInfo, this._model = e;
25052  }
25053  return r.getDimensionsInfo = function() {
25054    return [{ name: "time", type: "time" }, "value"];
25055  }, r.prototype.getRangeInfo = function() {
25056    return this._rangeInfo;
25057  }, r.prototype.getModel = function() {
25058    return this._model;
25059  }, r.prototype.getRect = function() {
25060    return this._rect;
25061  }, r.prototype.getCellWidth = function() {
25062    return this._sw;
25063  }, r.prototype.getCellHeight = function() {
25064    return this._sh;
25065  }, r.prototype.getOrient = function() {
25066    return this._orient;
25067  }, r.prototype.getFirstDayOfWeek = function() {
25068    return this._firstDayOfWeek;
25069  }, r.prototype.getDateInfo = function(e) {
25070    e = Ke(e);
25071    var t = e.getFullYear(), a = e.getMonth() + 1, n = a < 10 ? "0" + a : "" + a, i = e.getDate(), o = i < 10 ? "0" + i : "" + i, s = e.getDay();
25072    return s = Math.abs((s + 7 - this.getFirstDayOfWeek()) % 7), { y: t + "", m: n, d: o, day: s, time: e.getTime(), formatedDate: t + "-" + n + "-" + o, date: e };
25073  }, r.prototype.getNextNDay = function(e, t) {
25074    return t = t || 0, t === 0 ? this.getDateInfo(e) : (e = new Date(this.getDateInfo(e).time), e.setDate(e.getDate() + t), this.getDateInfo(e));
25075  }, r.prototype.update = function(e, t) {
25076    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());
25077    var a = this._rangeInfo.weeks || 1, n = ["width", "height"], i = this._model.getCellSize().slice(), o = this._model.getBoxLayoutParams(), s = this._orient === "horizontal" ? [a, 7] : [7, a];
25078    D([0, 1], function(h) {
25079      f(i, h) && (o[n[h]] = i[h] * s[h]);
25080    });
25081    var l = { width: t.getWidth(), height: t.getHeight() }, u = this._rect = Qt(o, l);
25082    D([0, 1], function(h) {
25083      f(i, h) || (i[h] = u[n[h]] / s[h]);
25084    });
25085    function f(h, v) {
25086      return h[v] != null && h[v] !== "auto";
25087    }
25088    this._sw = i[0], this._sh = i[1];
25089  }, r.prototype.dataToPoint = function(e, t) {
25090    V(e) && (e = e[0]), t == null && (t = true);
25091    var a = this.getDateInfo(e), n = this._rangeInfo, i = a.formatedDate;
25092    if (t && !(a.time >= n.start.time && a.time < n.end.time + gp)) return [NaN, NaN];
25093    var o = a.day, s = this._getRangeInfo([n.start.time, i]).nthWeek;
25094    return this._orient === "vertical" ? [this._rect.x + o * this._sw + this._sw / 2, this._rect.y + s * this._sh + this._sh / 2] : [this._rect.x + s * this._sw + this._sw / 2, this._rect.y + o * this._sh + this._sh / 2];
25095  }, r.prototype.pointToData = function(e) {
25096    var t = this.pointToDate(e);
25097    return t && t.time;
25098  }, r.prototype.dataToRect = function(e, t) {
25099    var a = this.dataToPoint(e, t);
25100    return { contentShape: { x: a[0] - (this._sw - this._lineWidth) / 2, y: a[1] - (this._sh - this._lineWidth) / 2, width: this._sw - this._lineWidth, height: this._sh - this._lineWidth }, center: a, tl: [a[0] - this._sw / 2, a[1] - this._sh / 2], tr: [a[0] + this._sw / 2, a[1] - this._sh / 2], br: [a[0] + this._sw / 2, a[1] + this._sh / 2], bl: [a[0] - this._sw / 2, a[1] + this._sh / 2] };
25101  }, r.prototype.pointToDate = function(e) {
25102    var t = Math.floor((e[0] - this._rect.x) / this._sw) + 1, a = Math.floor((e[1] - this._rect.y) / this._sh) + 1, n = this._rangeInfo.range;
25103    return this._orient === "vertical" ? this._getDateByWeeksAndDay(a, t - 1, n) : this._getDateByWeeksAndDay(t, a - 1, n);
25104  }, r.prototype.convertToPixel = function(e, t, a) {
25105    var n = Mb(t);
25106    return n === this ? n.dataToPoint(a) : null;
25107  }, r.prototype.convertFromPixel = function(e, t, a) {
25108    var n = Mb(t);
25109    return n === this ? n.pointToData(a) : null;
25110  }, r.prototype.containPoint = function(e) {
25111    return console.warn("Not implemented."), false;
25112  }, r.prototype._initRangeOption = function() {
25113    var e = this._model.get("range"), t;
25114    if (V(e) && e.length === 1 && (e = e[0]), V(e)) t = e;
25115    else {
25116      var a = e.toString();
25117      if (/^\d{4}$/.test(a) && (t = [a + "-01-01", a + "-12-31"]), /^\d{4}[\/|-]\d{1,2}$/.test(a)) {
25118        var n = this.getDateInfo(a), i = n.date;
25119        i.setMonth(i.getMonth() + 1);
25120        var o = this.getNextNDay(i, -1);
25121        t = [n.formatedDate, o.formatedDate];
25122      }
25123      /^\d{4}[\/|-]\d{1,2}[\/|-]\d{1,2}$/.test(a) && (t = [a, a]);
25124    }
25125    if (!t) return e;
25126    var s = this._getRangeInfo(t);
25127    return s.start.time > s.end.time && t.reverse(), t;
25128  }, r.prototype._getRangeInfo = function(e) {
25129    var t = [this.getDateInfo(e[0]), this.getDateInfo(e[1])], a;
25130    t[0].time > t[1].time && (a = true, t.reverse());
25131    var n = Math.floor(t[1].time / gp) - Math.floor(t[0].time / gp) + 1, i = new Date(t[0].time), o = i.getDate(), s = t[1].date.getDate();
25132    i.setDate(o + n - 1);
25133    var l = i.getDate();
25134    if (l !== s) for (var u = i.getTime() - t[1].time > 0 ? 1 : -1; (l = i.getDate()) !== s && (i.getTime() - t[1].time) * u > 0; ) n -= u, i.setDate(l - u);
25135    var f = Math.floor((n + t[0].day + 6) / 7), h = a ? -f + 1 : f - 1;
25136    return a && t.reverse(), { range: [t[0].formatedDate, t[1].formatedDate], start: t[0], end: t[1], allDay: n, weeks: f, nthWeek: h, fweek: t[0].day, lweek: t[1].day };
25137  }, r.prototype._getDateByWeeksAndDay = function(e, t, a) {
25138    var n = this._getRangeInfo(a);
25139    if (e > n.weeks || e === 0 && t < n.fweek || e === n.weeks && t > n.lweek) return null;
25140    var i = (e - 1) * 7 - n.fweek + t, o = new Date(n.start.time);
25141    return o.setDate(+n.start.d + i), this.getDateInfo(o);
25142  }, r.create = function(e, t) {
25143    var a = [];
25144    return e.eachComponent("calendar", function(n) {
25145      var i = new r(n);
25146      a.push(i), n.coordinateSystem = i;
25147    }), e.eachSeries(function(n) {
25148      n.get("coordinateSystem") === "calendar" && (n.coordinateSystem = a[n.get("calendarIndex") || 0]);
25149    }), a;
25150  }, r.dimensions = ["time", "value"], r;
25151}();
25152function Mb(r) {
25153  var e = r.calendarModel, t = r.seriesModel, a = e ? e.coordinateSystem : t ? t.coordinateSystem : null;
25154  return a;
25155}
25156function LU(r) {
25157  r.registerComponentModel(DU), r.registerComponentView(MU), r.registerCoordinateSystem("calendar", IU);
25158}
25159function PU(r, e) {
25160  var t = r.existing;
25161  if (e.id = r.keyInfo.id, !e.type && t && (e.type = t.type), e.parentId == null) {
25162    var a = e.parentOption;
25163    a ? e.parentId = a.id : t && (e.parentId = t.parentId);
25164  }
25165  e.parentOption = null;
25166}
25167function Ib(r, e) {
25168  var t;
25169  return D(e, function(a) {
25170    r[a] != null && r[a] !== "auto" && (t = true);
25171  }), t;
25172}
25173function RU(r, e, t) {
25174  var a = z({}, t), n = r[e], i = t.$action || "merge";
25175  i === "merge" ? n ? (ut(n, a, true), an(n, a, { ignoreSize: true }), QC(t, n), Xu(t, n), Xu(t, n, "shape"), Xu(t, n, "style"), Xu(t, n, "extra"), t.clipPath = n.clipPath) : r[e] = a : i === "replace" ? r[e] = a : i === "remove" && n && (r[e] = null);
25176}
25177var hL = ["transition", "enterFrom", "leaveTo"], EU = hL.concat(["enterAnimation", "updateAnimation", "leaveAnimation"]);
25178function Xu(r, e, t) {
25179  if (t && (!r[t] && e[t] && (r[t] = {}), r = r[t], e = e[t]), !(!r || !e)) for (var a = t ? hL : EU, n = 0; n < a.length; n++) {
25180    var i = a[n];
25181    r[i] == null && e[i] != null && (r[i] = e[i]);
25182  }
25183}
25184function kU(r, e) {
25185  if (r && (r.hv = e.hv = [Ib(e, ["left", "right"]), Ib(e, ["top", "bottom"])], r.type === "group")) {
25186    var t = r, a = e;
25187    t.width == null && (t.width = a.width = 0), t.height == null && (t.height = a.height = 0);
25188  }
25189}
25190var OU = function(r) {
25191  N(e, r);
25192  function e() {
25193    var t = r !== null && r.apply(this, arguments) || this;
25194    return t.type = e.type, t.preventAutoZ = true, t;
25195  }
25196  return e.prototype.mergeOption = function(t, a) {
25197    var n = this.option.elements;
25198    this.option.elements = null, r.prototype.mergeOption.call(this, t, a), this.option.elements = n;
25199  }, e.prototype.optionUpdated = function(t, a) {
25200    var n = this.option, i = (a ? n : t).elements, o = n.elements = a ? [] : n.elements, s = [];
25201    this._flatten(i, s, null);
25202    var l = jT(o, s, "normalMerge"), u = this._elOptionsToUpdate = [];
25203    D(l, function(f, h) {
25204      var v = f.newOption;
25205      v && (u.push(v), PU(f, v), RU(o, h, v), kU(o[h], v));
25206    }, this), n.elements = Ct(o, function(f) {
25207      return f && delete f.$action, f != null;
25208    });
25209  }, e.prototype._flatten = function(t, a, n) {
25210    D(t, function(i) {
25211      if (i) {
25212        n && (i.parentOption = n), a.push(i);
25213        var o = i.children;
25214        o && o.length && this._flatten(o, a, i), delete i.children;
25215      }
25216    }, this);
25217  }, e.prototype.useElOptionsToUpdate = function() {
25218    var t = this._elOptionsToUpdate;
25219    return this._elOptionsToUpdate = null, t;
25220  }, e.type = "graphic", e.defaultOption = { elements: [] }, e;
25221}(gt), Lb = { path: null, compoundPath: null, group: at, image: ue, text: St }, ir = bt(), NU = function(r) {
25222  N(e, r);
25223  function e() {
25224    var t = r !== null && r.apply(this, arguments) || this;
25225    return t.type = e.type, t;
25226  }
25227  return e.prototype.init = function() {
25228    this._elMap = Z();
25229  }, e.prototype.render = function(t, a, n) {
25230    t !== this._lastGraphicModel && this._clear(), this._lastGraphicModel = t, this._updateElements(t), this._relocate(t, n);
25231  }, e.prototype._updateElements = function(t) {
25232    var a = t.useElOptionsToUpdate();
25233    if (a) {
25234      var n = this._elMap, i = this.group, o = t.get("z"), s = t.get("zlevel");
25235      D(a, function(l) {
25236        var u = te(l.id, null), f = u != null ? n.get(u) : null, h = te(l.parentId, null), v = h != null ? n.get(h) : i, c = l.type, p = l.style;
25237        c === "text" && p && l.hv && l.hv[1] && (p.textVerticalAlign = p.textBaseline = p.verticalAlign = p.align = null);
25238        var d = l.textContent, g = l.textConfig;
25239        if (p && YI(p, c, !!g, !!d)) {
25240          var y = $I(p, c, true);
25241          !g && y.textConfig && (g = l.textConfig = y.textConfig), !d && y.textContent && (d = y.textContent);
25242        }
25243        var m = BU(l), _ = l.$action || "merge", S = _ === "merge", b = _ === "replace";
25244        if (S) {
25245          var x = !f, w = f;
25246          x ? w = Pb(u, v, l.type, n) : (w && (ir(w).isNew = false), KI(w)), w && (df(w, m, t, { isInit: x }), Rb(w, l, o, s));
25247        } else if (b) {
25248          mf(f, l, n, t);
25249          var T = Pb(u, v, l.type, n);
25250          T && (df(T, m, t, { isInit: true }), Rb(T, l, o, s));
25251        } else _ === "remove" && (ZI(f, l), mf(f, l, n, t));
25252        var C = n.get(u);
25253        if (C && d) if (S) {
25254          var A = C.getTextContent();
25255          A ? A.attr(d) : C.setTextContent(new St(d));
25256        } else b && C.setTextContent(new St(d));
25257        if (C) {
25258          var M = l.clipPath;
25259          if (M) {
25260            var I = M.type, L = void 0, x = false;
25261            if (S) {
25262              var P = C.getClipPath();
25263              x = !P || ir(P).type !== I, L = x ? vg(I) : P;
25264            } else b && (x = true, L = vg(I));
25265            C.setClipPath(L), df(L, M, t, { isInit: x }), sh(L, M.keyframeAnimation, t);
25266          }
25267          var R = ir(C);
25268          C.setTextConfig(g), R.option = l, zU(C, t, l), Si({ el: C, componentModel: t, itemName: C.name, itemTooltipOption: l.tooltip }), sh(C, l.keyframeAnimation, t);
25269        }
25270      });
25271    }
25272  }, e.prototype._relocate = function(t, a) {
25273    for (var n = t.option.elements, i = this.group, o = this._elMap, s = a.getWidth(), l = a.getHeight(), u = ["x", "y"], f = 0; f < n.length; f++) {
25274      var h = n[f], v = te(h.id, null), c = v != null ? o.get(v) : null;
25275      if (!(!c || !c.isGroup)) {
25276        var p = c.parent, d = p === i, g = ir(c), y = ir(p);
25277        g.width = W(g.option.width, d ? s : y.width) || 0, g.height = W(g.option.height, d ? l : y.height) || 0;
25278      }
25279    }
25280    for (var f = n.length - 1; f >= 0; f--) {
25281      var h = n[f], v = te(h.id, null), c = v != null ? o.get(v) : null;
25282      if (c) {
25283        var p = c.parent, y = ir(p), m = p === i ? { width: s, height: l } : { width: y.width, height: y.height }, _ = {}, S = Wh(c, h, m, null, { hv: h.hv, boundingMode: h.bounding }, _);
25284        if (!ir(c).isNew && S) {
25285          for (var b = h.transition, x = {}, w = 0; w < u.length; w++) {
25286            var T = u[w], C = _[T];
25287            b && (si(b) || vt(b, T) >= 0) ? x[T] = C : c[T] = C;
25288          }
25289          Tt(c, x, t, 0);
25290        } else c.attr(_);
25291      }
25292    }
25293  }, e.prototype._clear = function() {
25294    var t = this, a = this._elMap;
25295    a.each(function(n) {
25296      mf(n, ir(n).option, a, t._lastGraphicModel);
25297    }), this._elMap = Z();
25298  }, e.prototype.dispose = function() {
25299    this._clear();
25300  }, e.type = "graphic", e;
25301}(Vt);
25302function vg(r) {
25303  var e = X(Lb, r) ? Lb[r] : Nh(r), t = new e({});
25304  return ir(t).type = r, t;
25305}
25306function Pb(r, e, t, a) {
25307  var n = vg(t);
25308  return e.add(n), a.set(r, n), ir(n).id = r, ir(n).isNew = true, n;
25309}
25310function mf(r, e, t, a) {
25311  var n = r && r.parent;
25312  n && (r.type === "group" && r.traverse(function(i) {
25313    mf(i, e, t, a);
25314  }), ov(r, e, a), t.removeKey(ir(r).id));
25315}
25316function Rb(r, e, t, a) {
25317  r.isGroup || D([["cursor", vr.prototype.cursor], ["zlevel", a || 0], ["z", t || 0], ["z2", 0]], function(n) {
25318    var i = n[0];
25319    X(e, i) ? r[i] = st(e[i], n[1]) : r[i] == null && (r[i] = n[1]);
25320  }), D(_t(e), function(n) {
25321    if (n.indexOf("on") === 0) {
25322      var i = e[n];
25323      r[n] = j(i) ? i : null;
25324    }
25325  }), X(e, "draggable") && (r.draggable = e.draggable), e.name != null && (r.name = e.name), e.id != null && (r.id = e.id);
25326}
25327function BU(r) {
25328  return r = z({}, r), D(["id", "parentId", "$action", "hv", "bounding", "textContent", "clipPath"].concat(JC), function(e) {
25329    delete r[e];
25330  }), r;
25331}
25332function zU(r, e, t) {
25333  var a = it(r).eventData;
25334  !r.silent && !r.ignore && !a && (a = it(r).eventData = { componentType: "graphic", componentIndex: e.componentIndex, name: r.name }), a && (a.info = t.info);
25335}
25336function VU(r) {
25337  r.registerComponentModel(OU), r.registerComponentView(NU), r.registerPreprocessor(function(e) {
25338    var t = e.graphic;
25339    V(t) ? !t[0] || !t[0].elements ? e.graphic = [{ elements: t }] : e.graphic = [e.graphic[0]] : t && !t.elements && (e.graphic = [{ elements: [t] }]);
25340  });
25341}
25342var Eb = ["x", "y", "radius", "angle", "single"], GU = ["cartesian2d", "polar", "singleAxis"];
25343function FU(r) {
25344  var e = r.get("coordinateSystem");
25345  return vt(GU, e) >= 0;
25346}
25347function Ya(r) {
25348  return r + "Axis";
25349}
25350function HU(r, e) {
25351  var t = Z(), a = [], n = Z();
25352  r.eachComponent({ mainType: "dataZoom", query: e }, function(f) {
25353    n.get(f.uid) || s(f);
25354  });
25355  var i;
25356  do
25357    i = false, r.eachComponent("dataZoom", o);
25358  while (i);
25359  function o(f) {
25360    !n.get(f.uid) && l(f) && (s(f), i = true);
25361  }
25362  function s(f) {
25363    n.set(f.uid, true), a.push(f), u(f);
25364  }
25365  function l(f) {
25366    var h = false;
25367    return f.eachTargetAxis(function(v, c) {
25368      var p = t.get(v);
25369      p && p[c] && (h = true);
25370    }), h;
25371  }
25372  function u(f) {
25373    f.eachTargetAxis(function(h, v) {
25374      (t.get(h) || t.set(h, []))[v] = true;
25375    });
25376  }
25377  return a;
25378}
25379function vL(r) {
25380  var e = r.ecModel, t = { infoList: [], infoMap: Z() };
25381  return r.eachTargetAxis(function(a, n) {
25382    var i = e.getComponent(Ya(a), n);
25383    if (i) {
25384      var o = i.getCoordSysModel();
25385      if (o) {
25386        var s = o.uid, l = t.infoMap.get(s);
25387        l || (l = { model: o, axisModels: [] }, t.infoList.push(l), t.infoMap.set(s, l)), l.axisModels.push(i);
25388      }
25389    }
25390  }), t;
25391}
25392var yp = function() {
25393  function r() {
25394    this.indexList = [], this.indexMap = [];
25395  }
25396  return r.prototype.add = function(e) {
25397    this.indexMap[e] || (this.indexList.push(e), this.indexMap[e] = true);
25398  }, r;
25399}(), Al = function(r) {
25400  N(e, r);
25401  function e() {
25402    var t = r !== null && r.apply(this, arguments) || this;
25403    return t.type = e.type, t._autoThrottle = true, t._noTarget = true, t._rangePropMode = ["percent", "percent"], t;
25404  }
25405  return e.prototype.init = function(t, a, n) {
25406    var i = kb(t);
25407    this.settledOption = i, this.mergeDefaultAndTheme(t, n), this._doInit(i);
25408  }, e.prototype.mergeOption = function(t) {
25409    var a = kb(t);
25410    ut(this.option, t, true), ut(this.settledOption, a, true), this._doInit(a);
25411  }, e.prototype._doInit = function(t) {
25412    var a = this.option;
25413    this._setDefaultThrottle(t), this._updateRangeUse(t);
25414    var n = this.settledOption;
25415    D([["start", "startValue"], ["end", "endValue"]], function(i, o) {
25416      this._rangePropMode[o] === "value" && (a[i[0]] = n[i[0]] = null);
25417    }, this), this._resetTarget();
25418  }, e.prototype._resetTarget = function() {
25419    var t = this.get("orient", true), a = this._targetAxisInfoMap = Z(), n = this._fillSpecifiedTargetAxis(a);
25420    n ? this._orient = t || this._makeAutoOrientByTargetAxis() : (this._orient = t || "horizontal", this._fillAutoTargetAxisByOrient(a, this._orient)), this._noTarget = true, a.each(function(i) {
25421      i.indexList.length && (this._noTarget = false);
25422    }, this);
25423  }, e.prototype._fillSpecifiedTargetAxis = function(t) {
25424    var a = false;
25425    return D(Eb, function(n) {
25426      var i = this.getReferringComponents(Ya(n), _R);
25427      if (i.specified) {
25428        a = true;
25429        var o = new yp();
25430        D(i.models, function(s) {
25431          o.add(s.componentIndex);
25432        }), t.set(n, o);
25433      }
25434    }, this), a;
25435  }, e.prototype._fillAutoTargetAxisByOrient = function(t, a) {
25436    var n = this.ecModel, i = true;
25437    if (i) {
25438      var o = a === "vertical" ? "y" : "x", s = n.findComponents({ mainType: o + "Axis" });
25439      l(s, o);
25440    }
25441    if (i) {
25442      var s = n.findComponents({ mainType: "singleAxis", filter: function(f) {
25443        return f.get("orient", true) === a;
25444      } });
25445      l(s, "single");
25446    }
25447    function l(u, f) {
25448      var h = u[0];
25449      if (h) {
25450        var v = new yp();
25451        if (v.add(h.componentIndex), t.set(f, v), i = false, f === "x" || f === "y") {
25452          var c = h.getReferringComponents("grid", Jt).models[0];
25453          c && D(u, function(p) {
25454            h.componentIndex !== p.componentIndex && c === p.getReferringComponents("grid", Jt).models[0] && v.add(p.componentIndex);
25455          });
25456        }
25457      }
25458    }
25459    i && D(Eb, function(u) {
25460      if (i) {
25461        var f = n.findComponents({ mainType: Ya(u), filter: function(v) {
25462          return v.get("type", true) === "category";
25463        } });
25464        if (f[0]) {
25465          var h = new yp();
25466          h.add(f[0].componentIndex), t.set(u, h), i = false;
25467        }
25468      }
25469    }, this);
25470  }, e.prototype._makeAutoOrientByTargetAxis = function() {
25471    var t;
25472    return this.eachTargetAxis(function(a) {
25473      !t && (t = a);
25474    }, this), t === "y" ? "vertical" : "horizontal";
25475  }, e.prototype._setDefaultThrottle = function(t) {
25476    if (t.hasOwnProperty("throttle") && (this._autoThrottle = false), this._autoThrottle) {
25477      var a = this.ecModel.option;
25478      this.option.throttle = a.animation && a.animationDurationUpdate > 0 ? 100 : 20;
25479    }
25480  }, e.prototype._updateRangeUse = function(t) {
25481    var a = this._rangePropMode, n = this.get("rangeMode");
25482    D([["start", "startValue"], ["end", "endValue"]], function(i, o) {
25483      var s = t[i[0]] != null, l = t[i[1]] != null;
25484      s && !l ? a[o] = "percent" : !s && l ? a[o] = "value" : n ? a[o] = n[o] : s && (a[o] = "percent");
25485    });
25486  }, e.prototype.noTarget = function() {
25487    return this._noTarget;
25488  }, e.prototype.getFirstTargetAxisModel = function() {
25489    var t;
25490    return this.eachTargetAxis(function(a, n) {
25491      t == null && (t = this.ecModel.getComponent(Ya(a), n));
25492    }, this), t;
25493  }, e.prototype.eachTargetAxis = function(t, a) {
25494    this._targetAxisInfoMap.each(function(n, i) {
25495      D(n.indexList, function(o) {
25496        t.call(a, i, o);
25497      });
25498    });
25499  }, e.prototype.getAxisProxy = function(t, a) {
25500    var n = this.getAxisModel(t, a);
25501    if (n) return n.__dzAxisProxy;
25502  }, e.prototype.getAxisModel = function(t, a) {
25503    var n = this._targetAxisInfoMap.get(t);
25504    if (n && n.indexMap[a]) return this.ecModel.getComponent(Ya(t), a);
25505  }, e.prototype.setRawRange = function(t) {
25506    var a = this.option, n = this.settledOption;
25507    D([["start", "startValue"], ["end", "endValue"]], function(i) {
25508      (t[i[0]] != null || t[i[1]] != null) && (a[i[0]] = n[i[0]] = t[i[0]], a[i[1]] = n[i[1]] = t[i[1]]);
25509    }, this), this._updateRangeUse(t);
25510  }, e.prototype.setCalculatedRange = function(t) {
25511    var a = this.option;
25512    D(["start", "startValue", "end", "endValue"], function(n) {
25513      a[n] = t[n];
25514    });
25515  }, e.prototype.getPercentRange = function() {
25516    var t = this.findRepresentativeAxisProxy();
25517    if (t) return t.getDataPercentWindow();
25518  }, e.prototype.getValueRange = function(t, a) {
25519    if (t == null && a == null) {
25520      var n = this.findRepresentativeAxisProxy();
25521      if (n) return n.getDataValueWindow();
25522    } else return this.getAxisProxy(t, a).getDataValueWindow();
25523  }, e.prototype.findRepresentativeAxisProxy = function(t) {
25524    if (t) return t.__dzAxisProxy;
25525    for (var a, n = this._targetAxisInfoMap.keys(), i = 0; i < n.length; i++) for (var o = n[i], s = this._targetAxisInfoMap.get(o), l = 0; l < s.indexList.length; l++) {
25526      var u = this.getAxisProxy(o, s.indexList[l]);
25527      if (u.hostedBy(this)) return u;
25528      a || (a = u);
25529    }
25530    return a;
25531  }, e.prototype.getRangePropMode = function() {
25532    return this._rangePropMode.slice();
25533  }, e.prototype.getOrient = function() {
25534    return this._orient;
25535  }, e.type = "dataZoom", e.dependencies = ["xAxis", "yAxis", "radiusAxis", "angleAxis", "singleAxis", "series", "toolbox"], e.defaultOption = { z: 4, filterMode: "filter", start: 0, end: 100 }, e;
25536}(gt);
25537function kb(r) {
25538  var e = {};
25539  return D(["start", "end", "startValue", "endValue", "throttle"], function(t) {
25540    r.hasOwnProperty(t) && (e[t] = r[t]);
25541  }), e;
25542}
25543var WU = function(r) {
25544  N(e, r);
25545  function e() {
25546    var t = r !== null && r.apply(this, arguments) || this;
25547    return t.type = e.type, t;
25548  }
25549  return e.type = "dataZoom.select", e;
25550}(Al), zm = function(r) {
25551  N(e, r);
25552  function e() {
25553    var t = r !== null && r.apply(this, arguments) || this;
25554    return t.type = e.type, t;
25555  }
25556  return e.prototype.render = function(t, a, n, i) {
25557    this.dataZoomModel = t, this.ecModel = a, this.api = n;
25558  }, e.type = "dataZoom", e;
25559}(Vt), UU = function(r) {
25560  N(e, r);
25561  function e() {
25562    var t = r !== null && r.apply(this, arguments) || this;
25563    return t.type = e.type, t;
25564  }
25565  return e.type = "dataZoom.select", e;
25566}(zm), to = D, Ob = Xe, YU = function() {
25567  function r(e, t, a, n) {
25568    this._dimName = e, this._axisIndex = t, this.ecModel = n, this._dataZoomModel = a;
25569  }
25570  return r.prototype.hostedBy = function(e) {
25571    return this._dataZoomModel === e;
25572  }, r.prototype.getDataValueWindow = function() {
25573    return this._valueWindow.slice();
25574  }, r.prototype.getDataPercentWindow = function() {
25575    return this._percentWindow.slice();
25576  }, r.prototype.getTargetSeriesModels = function() {
25577    var e = [];
25578    return this.ecModel.eachSeries(function(t) {
25579      if (FU(t)) {
25580        var a = Ya(this._dimName), n = t.getReferringComponents(a, Jt).models[0];
25581        n && this._axisIndex === n.componentIndex && e.push(t);
25582      }
25583    }, this), e;
25584  }, r.prototype.getAxisModel = function() {
25585    return this.ecModel.getComponent(this._dimName + "Axis", this._axisIndex);
25586  }, r.prototype.getMinMaxSpan = function() {
25587    return rt(this._minMaxSpan);
25588  }, r.prototype.calculateDataWindow = function(e) {
25589    var t = this._dataExtent, a = this.getAxisModel(), n = a.axis.scale, i = this._dataZoomModel.getRangePropMode(), o = [0, 100], s = [], l = [], u;
25590    to(["start", "end"], function(v, c) {
25591      var p = e[v], d = e[v + "Value"];
25592      i[c] === "percent" ? (p == null && (p = o[c]), d = n.parse(Dt(p, o, t))) : (u = true, d = d == null ? t[c] : n.parse(d), p = Dt(d, t, o)), l[c] = d == null || isNaN(d) ? t[c] : d, s[c] = p == null || isNaN(p) ? o[c] : p;
25593    }), Ob(l), Ob(s);
25594    var f = this._minMaxSpan;
25595    u ? h(l, s, t, o, false) : h(s, l, o, t, true);
25596    function h(v, c, p, d, g) {
25597      var y = g ? "Span" : "ValueSpan";
25598      Ai(0, v, p, "all", f["min" + y], f["max" + y]);
25599      for (var m = 0; m < 2; m++) c[m] = Dt(v[m], p, d, true), g && (c[m] = n.parse(c[m]));
25600    }
25601    return { valueWindow: l, percentWindow: s };
25602  }, r.prototype.reset = function(e) {
25603    if (e === this._dataZoomModel) {
25604      var t = this.getTargetSeriesModels();
25605      this._dataExtent = $U(this, this._dimName, t), this._updateMinMaxSpan();
25606      var a = this.calculateDataWindow(e.settledOption);
25607      this._valueWindow = a.valueWindow, this._percentWindow = a.percentWindow, this._setAxisModel();
25608    }
25609  }, r.prototype.filterData = function(e, t) {
25610    if (e !== this._dataZoomModel) return;
25611    var a = this._dimName, n = this.getTargetSeriesModels(), i = e.get("filterMode"), o = this._valueWindow;
25612    if (i === "none") return;
25613    to(n, function(l) {
25614      var u = l.getData(), f = u.mapDimensionsAll(a);
25615      if (f.length) {
25616        if (i === "weakFilter") {
25617          var h = u.getStore(), v = G(f, function(c) {
25618            return u.getDimensionIndex(c);
25619          }, u);
25620          u.filterSelf(function(c) {
25621            for (var p, d, g, y = 0; y < f.length; y++) {
25622              var m = h.get(v[y], c), _ = !isNaN(m), S = m < o[0], b = m > o[1];
25623              if (_ && !S && !b) return true;
25624              _ && (g = true), S && (p = true), b && (d = true);
25625            }
25626            return g && p && d;
25627          });
25628        } else to(f, function(c) {
25629          if (i === "empty") l.setData(u = u.map(c, function(d) {
25630            return s(d) ? d : NaN;
25631          }));
25632          else {
25633            var p = {};
25634            p[c] = o, u.selectRange(p);
25635          }
25636        });
25637        to(f, function(c) {
25638          u.setApproximateExtent(o, c);
25639        });
25640      }
25641    });
25642    function s(l) {
25643      return l >= o[0] && l <= o[1];
25644    }
25645  }, r.prototype._updateMinMaxSpan = function() {
25646    var e = this._minMaxSpan = {}, t = this._dataZoomModel, a = this._dataExtent;
25647    to(["min", "max"], function(n) {
25648      var i = t.get(n + "Span"), o = t.get(n + "ValueSpan");
25649      o != null && (o = this.getAxisModel().axis.scale.parse(o)), o != null ? i = Dt(a[0] + o, a, [0, 100], true) : i != null && (o = Dt(i, [0, 100], a, true) - a[0]), e[n + "Span"] = i, e[n + "ValueSpan"] = o;
25650    }, this);
25651  }, r.prototype._setAxisModel = function() {
25652    var e = this.getAxisModel(), t = this._percentWindow, a = this._valueWindow;
25653    if (t) {
25654      var n = Fg(a, [0, 500]);
25655      n = Math.min(n, 20);
25656      var i = e.axis.scale.rawExtentInfo;
25657      t[0] !== 0 && i.setDeterminedMinMax("min", +a[0].toFixed(n)), t[1] !== 100 && i.setDeterminedMinMax("max", +a[1].toFixed(n)), i.freeze();
25658    }
25659  }, r;
25660}();
25661function $U(r, e, t) {
25662  var a = [1 / 0, -1 / 0];
25663  to(t, function(o) {
25664    hz(a, o.getData(), e);
25665  });
25666  var n = r.getAxisModel(), i = LD(n.axis.scale, n, a).calculate();
25667  return [i.min, i.max];
25668}
25669var XU = { getTargetSeries: function(r) {
25670  function e(n) {
25671    r.eachComponent("dataZoom", function(i) {
25672      i.eachTargetAxis(function(o, s) {
25673        var l = r.getComponent(Ya(o), s);
25674        n(o, s, l, i);
25675      });
25676    });
25677  }
25678  e(function(n, i, o, s) {
25679    o.__dzAxisProxy = null;
25680  });
25681  var t = [];
25682  e(function(n, i, o, s) {
25683    o.__dzAxisProxy || (o.__dzAxisProxy = new YU(n, i, s, r), t.push(o.__dzAxisProxy));
25684  });
25685  var a = Z();
25686  return D(t, function(n) {
25687    D(n.getTargetSeriesModels(), function(i) {
25688      a.set(i.uid, i);
25689    });
25690  }), a;
25691}, overallReset: function(r, e) {
25692  r.eachComponent("dataZoom", function(t) {
25693    t.eachTargetAxis(function(a, n) {
25694      t.getAxisProxy(a, n).reset(t);
25695    }), t.eachTargetAxis(function(a, n) {
25696      t.getAxisProxy(a, n).filterData(t, e);
25697    });
25698  }), r.eachComponent("dataZoom", function(t) {
25699    var a = t.findRepresentativeAxisProxy();
25700    if (a) {
25701      var n = a.getDataPercentWindow(), i = a.getDataValueWindow();
25702      t.setCalculatedRange({ start: n[0], end: n[1], startValue: i[0], endValue: i[1] });
25703    }
25704  });
25705} };
25706function ZU(r) {
25707  r.registerAction("dataZoom", function(e, t) {
25708    var a = HU(t, e);
25709    D(a, function(n) {
25710      n.setRawRange({ start: e.start, end: e.end, startValue: e.startValue, endValue: e.endValue });
25711    });
25712  });
25713}
25714var Nb = false;
25715function Vm(r) {
25716  Nb || (Nb = true, r.registerProcessor(r.PRIORITY.PROCESSOR.FILTER, XU), ZU(r), r.registerSubTypeDefaulter("dataZoom", function() {
25717    return "slider";
25718  }));
25719}
25720function qU(r) {
25721  r.registerComponentModel(WU), r.registerComponentView(UU), Vm(r);
25722}
25723var sr = /* @__PURE__ */ function() {
25724  function r() {
25725  }
25726  return r;
25727}(), cL = {};
25728function eo(r, e) {
25729  cL[r] = e;
25730}
25731function pL(r) {
25732  return cL[r];
25733}
25734var KU = function(r) {
25735  N(e, r);
25736  function e() {
25737    var t = r !== null && r.apply(this, arguments) || this;
25738    return t.type = e.type, t;
25739  }
25740  return e.prototype.optionUpdated = function() {
25741    r.prototype.optionUpdated.apply(this, arguments);
25742    var t = this.ecModel;
25743    D(this.option.feature, function(a, n) {
25744      var i = pL(n);
25745      i && (i.getDefaultOption && (i.defaultOption = i.getDefaultOption(t)), ut(a, i.defaultOption));
25746    });
25747  }, e.type = "toolbox", e.layoutMode = { type: "box", ignoreSize: true }, e.defaultOption = { show: true, z: 6, orient: "horizontal", left: "right", top: "top", backgroundColor: "transparent", borderColor: "#ccc", borderRadius: 0, borderWidth: 0, padding: 5, itemSize: 15, itemGap: 8, showTitle: true, iconStyle: { borderColor: "#666", color: "none" }, emphasis: { iconStyle: { borderColor: "#3E98C5" } }, tooltip: { show: false, position: "bottom" } }, e;
25748}(gt);
25749function jU(r, e, t) {
25750  var a = e.getBoxLayoutParams(), n = e.get("padding"), i = { width: t.getWidth(), height: t.getHeight() }, o = Qt(a, i, n);
25751  ni(e.get("orient"), r, e.get("itemGap"), o.width, o.height), Wh(r, a, i, n);
25752}
25753function dL(r, e) {
25754  var t = bi(e.get("padding")), a = e.getItemStyle(["color", "opacity"]);
25755  return a.fill = e.get("backgroundColor"), r = new xt({ shape: { x: r.x - t[3], y: r.y - t[0], width: r.width + t[1] + t[3], height: r.height + t[0] + t[2], r: e.get("borderRadius") }, style: a, silent: true, z2: -1 }), r;
25756}
25757var JU = function(r) {
25758  N(e, r);
25759  function e() {
25760    return r !== null && r.apply(this, arguments) || this;
25761  }
25762  return e.prototype.render = function(t, a, n, i) {
25763    var o = this.group;
25764    if (o.removeAll(), !t.get("show")) return;
25765    var s = +t.get("itemSize"), l = t.get("orient") === "vertical", u = t.get("feature") || {}, f = this._features || (this._features = {}), h = [];
25766    D(u, function(p, d) {
25767      h.push(d);
25768    }), new Sa(this._featureNames || [], h).add(v).update(v).remove(lt(v, null)).execute(), this._featureNames = h;
25769    function v(p, d) {
25770      var g = h[p], y = h[d], m = u[g], _ = new At(m, t, t.ecModel), S;
25771      if (i && i.newTitle != null && i.featureName === g && (m.title = i.newTitle), g && !y) {
25772        if (QU(g)) S = { onclick: _.option.onclick, featureName: g };
25773        else {
25774          var b = pL(g);
25775          if (!b) return;
25776          S = new b();
25777        }
25778        f[g] = S;
25779      } else if (S = f[y], !S) return;
25780      S.uid = No("toolbox-feature"), S.model = _, S.ecModel = a, S.api = n;
25781      var x = S instanceof sr;
25782      if (!g && y) {
25783        x && S.dispose && S.dispose(a, n);
25784        return;
25785      }
25786      if (!_.get("show") || x && S.unusable) {
25787        x && S.remove && S.remove(a, n);
25788        return;
25789      }
25790      c(_, S, g), _.setIconStatus = function(w, T) {
25791        var C = this.option, A = this.iconPaths;
25792        C.iconStatus = C.iconStatus || {}, C.iconStatus[w] = T, A[w] && (T === "emphasis" ? ma : _a)(A[w]);
25793      }, S instanceof sr && S.render && S.render(_, a, n, i);
25794    }
25795    function c(p, d, g) {
25796      var y = p.getModel("iconStyle"), m = p.getModel(["emphasis", "iconStyle"]), _ = d instanceof sr && d.getIcons ? d.getIcons() : p.get("icon"), S = p.get("title") || {}, b, x;
25797      Y(_) ? (b = {}, b[g] = _) : b = _, Y(S) ? (x = {}, x[g] = S) : x = S;
25798      var w = p.iconPaths = {};
25799      D(b, function(T, C) {
25800        var A = ko(T, {}, { x: -s / 2, y: -s / 2, width: s, height: s });
25801        A.setStyle(y.getItemStyle());
25802        var M = A.ensureState("emphasis");
25803        M.style = m.getItemStyle();
25804        var I = new St({ style: { text: x[C], align: m.get("textAlign"), borderRadius: m.get("textBorderRadius"), padding: m.get("textPadding"), fill: null, font: sy({ fontStyle: m.get("textFontStyle"), fontFamily: m.get("textFontFamily"), fontSize: m.get("textFontSize"), fontWeight: m.get("textFontWeight") }, a) }, ignore: true });
25805        A.setTextContent(I), Si({ el: A, componentModel: t, itemName: C, formatterParamsExtra: { title: x[C] } }), A.__title = x[C], A.on("mouseover", function() {
25806          var L = m.getItemStyle(), P = l ? t.get("right") == null && t.get("left") !== "right" ? "right" : "left" : t.get("bottom") == null && t.get("top") !== "bottom" ? "bottom" : "top";
25807          I.setStyle({ fill: m.get("textFill") || L.fill || L.stroke || "#000", backgroundColor: m.get("textBackgroun
25807dColor") }), A.setTextConfig({ position: m.get("textPosition") || P }), I.ignore = !t.get("showTitle"), n.enterEmphasis(this);
25808        }).on("mouseout", function() {
25809          p.get(["iconStatus", C]) !== "emphasis" && n.leaveEmphasis(this), I.hide();
25810        }), (p.get(["iconStatus", C]) === "emphasis" ? ma : _a)(A), o.add(A), A.on("click", $(d.onclick, d, a, n, C)), w[C] = A;
25811      });
25812    }
25813    jU(o, t, n), o.add(dL(o.getBoundingRect(), t)), l || o.eachChild(function(p) {
25814      var d = p.__title, g = p.ensureState("emphasis"), y = g.textConfig || (g.textConfig = {}), m = p.getTextContent(), _ = m && m.ensureState("emphasis");
25815      if (_ && !j(_) && d) {
25816        var S = _.style || (_.style = {}), b = El(d, St.makeFont(S)), x = p.x + o.x, w = p.y + o.y + s, T = false;
25817        w + b.height > n.getHeight() && (y.position = "top", T = true);
25818        var C = T ? -5 - b.height : s + 10;
25819        x + b.width / 2 > n.getWidth() ? (y.position = ["100%", C], S.align = "right") : x - b.width / 2 < 0 && (y.position = [0, C], S.align = "left");
25820      }
25821    });
25822  }, e.prototype.updateView = function(t, a, n, i) {
25823    D(this._features, function(o) {
25824      o instanceof sr && o.updateView && o.updateView(o.model, a, n, i);
25825    });
25826  }, e.prototype.remove = function(t, a) {
25827    D(this._features, function(n) {
25828      n instanceof sr && n.remove && n.remove(t, a);
25829    }), this.group.removeAll();
25830  }, e.prototype.dispose = function(t, a) {
25831    D(this._features, function(n) {
25832      n instanceof sr && n.dispose && n.dispose(t, a);
25833    });
25834  }, e.type = "toolbox", e;
25835}(Vt);
25836function QU(r) {
25837  return r.indexOf("my") === 0;
25838}
25839var t8 = function(r) {
25840  N(e, r);
25841  function e() {
25842    return r !== null && r.apply(this, arguments) || this;
25843  }
25844  return e.prototype.onclick = function(t, a) {
25845    var n = this.model, i = n.get("name") || t.get("title.0.text") || "echarts", o = a.getZr().painter.getType() === "svg", s = o ? "svg" : n.get("type", true) || "png", l = a.getConnectedDataURL({ type: s, backgroundColor: n.get("backgroundColor", true) || t.get("backgroundColor") || "#fff", connectedBackgroundColor: n.get("connectedBackgroundColor"), excludeComponents: n.get("excludeComponents"), pixelRatio: n.get("pixelRatio") }), u = yt.browser;
25846    if (typeof MouseEvent == "function" && (u.newEdge || !u.ie && !u.edge)) {
25847      var f = document.createElement("a");
25848      f.download = i + "." + s, f.target = "_blank", f.href = l;
25849      var h = new MouseEvent("click", { view: document.defaultView, bubbles: true, cancelable: false });
25850      f.dispatchEvent(h);
25851    } else if (window.navigator.msSaveOrOpenBlob || o) {
25852      var v = l.split(","), c = v[0].indexOf("base64") > -1, p = o ? decodeURIComponent(v[1]) : v[1];
25853      c && (p = window.atob(p));
25854      var d = i + "." + s;
25855      if (window.navigator.msSaveOrOpenBlob) {
25856        for (var g = p.length, y = new Uint8Array(g); g--; ) y[g] = p.charCodeAt(g);
25857        var m = new Blob([y]);
25858        window.navigator.msSaveOrOpenBlob(m, d);
25859      } else {
25860        var _ = document.createElement("iframe");
25861        document.body.appendChild(_);
25862        var S = _.contentWindow, b = S.document;
25863        b.open("image/svg+xml", "replace"), b.write(p), b.close(), S.focus(), b.execCommand("SaveAs", true, d), document.body.removeChild(_);
25864      }
25865    } else {
25866      var x = n.get("lang"), w = '<body style="margin:0;"><img src="' + l + '" style="max-width:100%;" title="' + (x && x[0] || "") + '" /></body>', T = window.open();
25867      T.document.write(w), T.document.title = i;
25868    }
25869  }, e.getDefaultOption = function(t) {
25870    var a = { show: true, 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"]) };
25871    return a;
25872  }, e;
25873}(sr), Bb = "__ec_magicType_stack__", e8 = [["line", "bar"], ["stack"]], r8 = function(r) {
25874  N(e, r);
25875  function e() {
25876    return r !== null && r.apply(this, arguments) || this;
25877  }
25878  return e.prototype.getIcons = function() {
25879    var t = this.model, a = t.get("icon"), n = {};
25880    return D(t.get("type"), function(i) {
25881      a[i] && (n[i] = a[i]);
25882    }), n;
25883  }, e.getDefaultOption = function(t) {
25884    var a = { show: true, 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: {} };
25885    return a;
25886  }, e.prototype.onclick = function(t, a, n) {
25887    var i = this.model, o = i.get(["seriesIndex", n]);
25888    if (zb[n]) {
25889      var s = { series: [] }, l = function(h) {
25890        var v = h.subType, c = h.id, p = zb[n](v, c, h, i);
25891        p && (Q(p, h.option), s.series.push(p));
25892        var d = h.coordinateSystem;
25893        if (d && d.type === "cartesian2d" && (n === "line" || n === "bar")) {
25894          var g = d.getAxesByScale("ordinal")[0];
25895          if (g) {
25896            var y = g.dim, m = y + "Axis", _ = h.getReferringComponents(m, Jt).models[0], S = _.componentIndex;
25897            s[m] = s[m] || [];
25898            for (var b = 0; b <= S; b++) s[m][S] = s[m][S] || {};
25899            s[m][S].boundaryGap = n === "bar";
25900          }
25901        }
25902      };
25903      D(e8, function(h) {
25904        vt(h, n) >= 0 && D(h, function(v) {
25905          i.setIconStatus(v, "normal");
25906        });
25907      }), i.setIconStatus(n, "emphasis"), t.eachComponent({ mainType: "series", query: o == null ? null : { seriesIndex: o } }, l);
25908      var u, f = n;
25909      n === "stack" && (u = ut({ stack: i.option.title.tiled, tiled: i.option.title.stack }, i.option.title), i.get(["iconStatus", n]) !== "emphasis" && (f = "tiled")), a.dispatchAction({ type: "changeMagicType", currentType: f, newOption: s, newTitle: u, featureName: "magicType" });
25910    }
25911  }, e;
25912}(sr), zb = { line: function(r, e, t, a) {
25913  if (r === "bar") return ut({ id: e, type: "line", data: t.get("data"), stack: t.get("stack"), markPoint: t.get("markPoint"), markLine: t.get("markLine") }, a.get(["option", "line"]) || {}, true);
25914}, bar: function(r, e, t, a) {
25915  if (r === "line") return ut({ id: e, type: "bar", data: t.get("data"), stack: t.get("stack"), markPoint: t.get("markPoint"), markLine: t.get("markLine") }, a.get(["option", "bar"]) || {}, true);
25916}, stack: function(r, e, t, a) {
25917  var n = t.get("stack") === Bb;
25918  if (r === "line" || r === "bar") return a.setIconStatus("stack", n ? "normal" : "emphasis"), ut({ id: e, stack: n ? "" : Bb }, a.get(["option", "stack"]) || {}, true);
25919} };
25920kr({ type: "changeMagicType", event: "magicTypeChanged", update: "prepareAndUpdate" }, function(r, e) {
25921  e.mergeOption(r.newOption);
25922});
25923var sv = new Array(60).join("-"), Ao = "	";
25924function a8(r) {
25925  var e = {}, t = [], a = [];
25926  return r.eachRawSeries(function(n) {
25927    var i = n.coordinateSystem;
25928    if (i && (i.type === "cartesian2d" || i.type === "polar")) {
25929      var o = i.getBaseAxis();
25930      if (o.type === "category") {
25931        var s = o.dim + "_" + o.index;
25932        e[s] || (e[s] = { categoryAxis: o, valueAxis: i.getOtherAxis(o), series: [] }, a.push({ axisDim: o.dim, axisIndex: o.index })), e[s].series.push(n);
25933      } else t.push(n);
25934    } else t.push(n);
25935  }), { seriesGroupByCategoryAxis: e, other: t, meta: a };
25936}
25937function n8(r) {
25938  var e = [];
25939  return D(r, function(t, a) {
25940    var n = t.categoryAxis, i = t.valueAxis, o = i.dim, s = [" "].concat(G(t.series, function(c) {
25941      return c.name;
25942    })), l = [n.model.getCategories()];
25943    D(t.series, function(c) {
25944      var p = c.getRawData();
25945      l.push(c.getRawData().mapArray(p.mapDimension(o), function(d) {
25946        return d;
25947      }));
25948    });
25949    for (var u = [s.join(Ao)], f = 0; f < l[0].length; f++) {
25950      for (var h = [], v = 0; v < l.length; v++) h.push(l[v][f]);
25951      u.push(h.join(Ao));
25952    }
25953    e.push(u.join(`
25954`));
25955  }), e.join(`
25956
25957` + sv + `
25958
25959`);
25960}
25961function i8(r) {
25962  return G(r, function(e) {
25963    var t = e.getRawData(), a = [e.name], n = [];
25964    return t.each(t.dimensions, function() {
25965      for (var i = arguments.length, o = arguments[i - 1], s = t.getName(o), l = 0; l < i - 1; l++) n[l] = arguments[l];
25966      a.push((s ? s + Ao : "") + n.join(Ao));
25967    }), a.join(`
25968`);
25969  }).join(`
25970
25971` + sv + `
25972
25973`);
25974}
25975function o8(r) {
25976  var e = a8(r);
25977  return { value: Ct([n8(e.seriesGroupByCategoryAxis), i8(e.other)], function(t) {
25978    return !!t.replace(/[\n\t\s]/g, "");
25979  }).join(`
25980
25981` + sv + `
25982
25983`), meta: e.meta };
25984}
25985function fh(r) {
25986  return r.replace(/^\s\s*/, "").replace(/\s\s*$/, "");
25987}
25988function s8(r) {
25989  var e = r.slice(0, r.indexOf(`
25990`));
25991  if (e.indexOf(Ao) >= 0) return true;
25992}
25993var cg = new RegExp("[" + Ao + "]+", "g");
25994function l8(r) {
25995  for (var e = r.split(/\n+/g), t = fh(e.shift()).split(cg), a = [], n = G(t, function(l) {
25996    return { name: l, data: [] };
25997  }), i = 0; i < e.length; i++) {
25998    var o = fh(e[i]).split(cg);
25999    a.push(o.shift());
26000    for (var s = 0; s < o.length; s++) n[s] && (n[s].data[i] = o[s]);
26001  }
26002  return { series: n, categories: a };
26003}
26004function u8(r) {
26005  for (var e = r.split(/\n+/g), t = fh(e.shift()), a = [], n = 0; n < e.length; n++) {
26006    var i = fh(e[n]);
26007    if (i) {
26008      var o = i.split(cg), s = "", l = void 0, u = false;
26009      isNaN(o[0]) ? (u = true, s = o[0], o = o.slice(1), a[n] = { name: s, value: [] }, l = a[n].value) : l = a[n] = [];
26010      for (var f = 0; f < o.length; f++) l.push(+o[f]);
26011      l.length === 1 && (u ? a[n].value = l[0] : a[n] = l[0]);
26012    }
26013  }
26014  return { name: t, data: a };
26015}
26016function f8(r, e) {
26017  var t = r.split(new RegExp(`
26018*` + sv + `
26019*`, "g")), a = { series: [] };
26020  return D(t, function(n, i) {
26021    if (s8(n)) {
26022      var o = l8(n), s = e[i], l = s.axisDim + "Axis";
26023      s && (a[l] = a[l] || [], a[l][s.axisIndex] = { data: o.categories }, a.series = a.series.concat(o.series));
26024    } else {
26025      var o = u8(n);
26026      a.series.push(o);
26027    }
26028  }), a;
26029}
26030var h8 = function(r) {
26031  N(e, r);
26032  function e() {
26033    return r !== null && r.apply(this, arguments) || this;
26034  }
26035  return e.prototype.onclick = function(t, a) {
26036    setTimeout(function() {
26037      a.dispatchAction({ type: "hideTip" });
26038    });
26039    var n = a.getDom(), i = this.model;
26040    this._dom && n.removeChild(this._dom);
26041    var o = document.createElement("div");
26042    o.style.cssText = "position:absolute;top:0;bottom:0;left:0;right:0;padding:5px", o.style.backgroundColor = i.get("backgroundColor") || "#fff";
26043    var s = document.createElement("h4"), l = i.get("lang") || [];
26044    s.innerHTML = l[0] || i.get("title"), s.style.cssText = "margin:10px 20px", s.style.color = i.get("textColor");
26045    var u = document.createElement("div"), f = document.createElement("textarea");
26046    u.style.cssText = "overflow:auto";
26047    var h = i.get("optionToContent"), v = i.get("contentToOption"), c = o8(t);
26048    if (j(h)) {
26049      var p = h(a.getOption());
26050      Y(p) ? u.innerHTML = p : ui(p) && u.appendChild(p);
26051    } else {
26052      f.readOnly = i.get("readOnly");
26053      var d = f.style;
26054      d.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", d.color = i.get("textColor"), d.borderColor = i.get("textareaBorderColor"), d.backgroundColor = i.get("textareaColor"), f.value = c.value, u.appendChild(f);
26055    }
26056    var g = c.meta, y = document.createElement("div");
26057    y.style.cssText = "position:absolute;bottom:5px;left:0;right:0";
26058    var m = "float:right;margin-right:20px;border:none;cursor:pointer;padding:2px 5px;font-size:12px;border-radius:3px", _ = document.createElement("div"), S = document.createElement("div");
26059    m += ";background-color:" + i.get("buttonColor"), m += ";color:" + i.get("buttonTextColor");
26060    var b = this;
26061    function x() {
26062      n.removeChild(o), b._dom = null;
26063    }
26064    Wp(_, "click", x), Wp(S, "click", function() {
26065      if (v == null && h != null || v != null && h == null) {
26066        x();
26067        return;
26068      }
26069      var w;
26070      try {
26071        j(v) ? w = v(u, a.getOption()) : w = f8(f.value, g);
26072      } catch (T) {
26073        throw x(), new Error("Data view format error " + T);
26074      }
26075      w && a.dispatchAction({ type: "changeDataView", newOption: w }), x();
26076    }), _.innerHTML = l[1], S.innerHTML = l[2], S.style.cssText = _.style.cssText = m, !i.get("readOnly") && y.appendChild(S), y.appendChild(_), o.appendChild(s), o.appendChild(u), o.appendChild(y), u.style.height = n.clientHeight - 80 + "px", n.appendChild(o), this._dom = o;
26077  }, e.prototype.remove = function(t, a) {
26078    this._dom && a.getDom().removeChild(this._dom);
26079  }, e.prototype.dispose = function(t, a) {
26080    this.remove(t, a);
26081  }, e.getDefaultOption = function(t) {
26082    var a = { show: true, readOnly: false, 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" };
26083    return a;
26084  }, e;
26085}(sr);
26086function v8(r, e) {
26087  return G(r, function(t, a) {
26088    var n = e && e[a];
26089    if (tt(n) && !V(n)) {
26090      var i = tt(t) && !V(t);
26091      i || (t = { value: t });
26092      var o = n.name != null && t.name == null;
26093      return t = Q(t, n), o && delete t.name, t;
26094    } else return t;
26095  });
26096}
26097kr({ type: "changeDataView", event: "dataViewChanged", update: "prepareAndUpdate" }, function(r, e) {
26098  var t = [];
26099  D(r.newOption.series, function(a) {
26100    var n = e.getSeriesByName(a.name)[0];
26101    if (!n) t.push(z({ type: "scatter" }, a));
26102    else {
26103      var i = n.get("data");
26104      t.push({ name: a.name, data: v8(a.data, i) });
26105    }
26106  }), e.mergeOption(Q({ series: t }, r.newOption));
26107});
26108var gL = D, yL = bt();
26109function c8(r, e) {
26110  var t = Gm(r);
26111  gL(e, function(a, n) {
26112    for (var i = t.length - 1; i >= 0; i--) {
26113      var o = t[i];
26114      if (o[n]) break;
26115    }
26116    if (i < 0) {
26117      var s = r.queryComponents({ mainType: "dataZoom", subType: "select", id: n })[0];
26118      if (s) {
26119        var l = s.getPercentRange();
26120        t[0][n] = { dataZoomId: n, start: l[0], end: l[1] };
26121      }
26122    }
26123  }), t.push(e);
26124}
26125function p8(r) {
26126  var e = Gm(r), t = e[e.length - 1];
26127  e.length > 1 && e.pop();
26128  var a = {};
26129  return gL(t, function(n, i) {
26130    for (var o = e.length - 1; o >= 0; o--) if (n = e[o][i], n) {
26131      a[i] = n;
26132      break;
26133    }
26134  }), a;
26135}
26136function d8(r) {
26137  yL(r).snapshots = null;
26138}
26139function g8(r) {
26140  return Gm(r).length;
26141}
26142function Gm(r) {
26143  var e = yL(r);
26144  return e.snapshots || (e.snapshots = [{}]), e.snapshots;
26145}
26146var y8 = function(r) {
26147  N(e, r);
26148  function e() {
26149    return r !== null && r.apply(this, arguments) || this;
26150  }
26151  return e.prototype.onclick = function(t, a) {
26152    d8(t), a.dispatchAction({ type: "restore", from: this.uid });
26153  }, e.getDefaultOption = function(t) {
26154    var a = { show: true, 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"]) };
26155    return a;
26156  }, e;
26157}(sr);
26158kr({ type: "restore", event: "restore", update: "prepareAndUpdate" }, function(r, e) {
26159  e.resetOption("recreate");
26160});
26161var m8 = ["grid", "xAxis", "yAxis", "geo", "graph", "polar", "radiu
26161sAxis", "angleAxis", "bmap"], Fm = function() {
26162  function r(e, t, a) {
26163    var n = this;
26164    this._targetInfoList = [];
26165    var i = Vb(t, e);
26166    D(_8, function(o, s) {
26167      (!a || !a.include || vt(a.include, s) >= 0) && o(i, n._targetInfoList);
26168    });
26169  }
26170  return r.prototype.setOutputRanges = function(e, t) {
26171    return this.matchOutputRanges(e, t, function(a, n, i) {
26172      if ((a.coordRanges || (a.coordRanges = [])).push(n), !a.coordRange) {
26173        a.coordRange = n;
26174        var o = mp[a.brushType](0, i, n);
26175        a.__rangeOffset = { offset: Wb[a.brushType](o.values, a.range, [1, 1]), xyMinMax: o.xyMinMax };
26176      }
26177    }), e;
26178  }, r.prototype.matchOutputRanges = function(e, t, a) {
26179    D(e, function(n) {
26180      var i = this.findTargetInfo(n, t);
26181      i && i !== true && D(i.coordSyses, function(o) {
26182        var s = mp[n.brushType](1, o, n.range, true);
26183        a(n, s.values, o, t);
26184      });
26185    }, this);
26186  }, r.prototype.setInputRanges = function(e, t) {
26187    D(e, function(a) {
26188      var n = this.findTargetInfo(a, t);
26189      if (a.range = a.range || [], n && n !== true) {
26190        a.panelId = n.panelId;
26191        var i = mp[a.brushType](0, n.coordSys, a.coordRange), o = a.__rangeOffset;
26192        a.range = o ? Wb[a.brushType](i.values, o.offset, S8(i.xyMinMax, o.xyMinMax)) : i.values;
26193      }
26194    }, this);
26195  }, r.prototype.makePanelOpts = function(e, t) {
26196    return G(this._targetInfoList, function(a) {
26197      var n = a.getPanelRect();
26198      return { panelId: a.panelId, defaultBrushType: t ? t(a) : null, clipPath: CI(n), isTargetByCursor: DI(n, e, a.coordSysModel), getLinearBrushOtherExtent: AI(n) };
26199    });
26200  }, r.prototype.controlSeries = function(e, t, a) {
26201    var n = this.findTargetInfo(e, a);
26202    return n === true || n && vt(n.coordSyses, t.coordinateSystem) >= 0;
26203  }, r.prototype.findTargetInfo = function(e, t) {
26204    for (var a = this._targetInfoList, n = Vb(t, e), i = 0; i < a.length; i++) {
26205      var o = a[i], s = e.panelId;
26206      if (s) {
26207        if (o.panelId === s) return o;
26208      } else for (var l = 0; l < Gb.length; l++) if (Gb[l](n, o)) return o;
26209    }
26210    return true;
26211  }, r;
26212}();
26213function pg(r) {
26214  return r[0] > r[1] && r.reverse(), r;
26215}
26216function Vb(r, e) {
26217  return Hs(r, e, { includeMainTypes: m8 });
26218}
26219var _8 = { grid: function(r, e) {
26220  var t = r.xAxisModels, a = r.yAxisModels, n = r.gridModels, i = Z(), o = {}, s = {};
26221  !t && !a && !n || (D(t, function(l) {
26222    var u = l.axis.grid.model;
26223    i.set(u.id, u), o[u.id] = true;
26224  }), D(a, function(l) {
26225    var u = l.axis.grid.model;
26226    i.set(u.id, u), s[u.id] = true;
26227  }), D(n, function(l) {
26228    i.set(l.id, l), o[l.id] = true, s[l.id] = true;
26229  }), i.each(function(l) {
26230    var u = l.coordinateSystem, f = [];
26231    D(u.getCartesians(), function(h, v) {
26232      (vt(t, h.getAxis("x").model) >= 0 || vt(a, h.getAxis("y").model) >= 0) && f.push(h);
26233    }), e.push({ panelId: "grid--" + l.id, gridModel: l, coordSysModel: l, coordSys: f[0], coordSyses: f, getPanelRect: Fb.grid, xAxisDeclared: o[l.id], yAxisDeclared: s[l.id] });
26234  }));
26235}, geo: function(r, e) {
26236  D(r.geoModels, function(t) {
26237    var a = t.coordinateSystem;
26238    e.push({ panelId: "geo--" + t.id, geoModel: t, coordSysModel: t, coordSys: a, coordSyses: [a], getPanelRect: Fb.geo });
26239  });
26240} }, Gb = [function(r, e) {
26241  var t = r.xAxisModel, a = r.yAxisModel, n = r.gridModel;
26242  return !n && t && (n = t.axis.grid.model), !n && a && (n = a.axis.grid.model), n && n === e.gridModel;
26243}, function(r, e) {
26244  var t = r.geoModel;
26245  return t && t === e.geoModel;
26246}], Fb = { grid: function() {
26247  return this.coordSys.master.getRect().clone();
26248}, geo: function() {
26249  var r = this.coordSys, e = r.getBoundingRect().clone();
26250  return e.applyTransform(qa(r)), e;
26251} }, mp = { lineX: lt(Hb, 0), lineY: lt(Hb, 1), rect: function(r, e, t, a) {
26252  var n = r ? e.pointToData([t[0][0], t[1][0]], a) : e.dataToPoint([t[0][0], t[1][0]], a), i = r ? e.pointToData([t[0][1], t[1][1]], a) : e.dataToPoint([t[0][1], t[1][1]], a), o = [pg([n[0], i[0]]), pg([n[1], i[1]])];
26253  return { values: o, xyMinMax: o };
26254}, polygon: function(r, e, t, a) {
26255  var n = [[1 / 0, -1 / 0], [1 / 0, -1 / 0]], i = G(t, function(o) {
26256    var s = r ? e.pointToData(o, a) : e.dataToPoint(o, a);
26257    return n[0][0] = Math.min(n[0][0], s[0]), n[1][0] = Math.min(n[1][0], s[1]), n[0][1] = Math.max(n[0][1], s[0]), n[1][1] = Math.max(n[1][1], s[1]), s;
26258  });
26259  return { values: i, xyMinMax: n };
26260} };
26261function Hb(r, e, t, a) {
26262  var n = t.getAxis(["x", "y"][r]), i = pg(G([0, 1], function(s) {
26263    return e ? n.coordToData(n.toLocalCoord(a[s]), true) : n.toGlobalCoord(n.dataToCoord(a[s]));
26264  })), o = [];
26265  return o[r] = i, o[1 - r] = [NaN, NaN], { values: i, xyMinMax: o };
26266}
26267var Wb = { lineX: lt(Ub, 0), lineY: lt(Ub, 1), rect: function(r, e, t) {
26268  return [[r[0][0] - t[0] * e[0][0], r[0][1] - t[0] * e[0][1]], [r[1][0] - t[1] * e[1][0], r[1][1] - t[1] * e[1][1]]];
26269}, polygon: function(r, e, t) {
26270  return G(r, function(a, n) {
26271    return [a[0] - t[0] * e[n][0], a[1] - t[1] * e[n][1]];
26272  });
26273} };
26274function Ub(r, e, t, a) {
26275  return [e[0] - a[r] * t[0], e[1] - a[r] * t[1]];
26276}
26277function S8(r, e) {
26278  var t = Yb(r), a = Yb(e), n = [t[0] / a[0], t[1] / a[1]];
26279  return isNaN(n[0]) && (n[0] = 1), isNaN(n[1]) && (n[1] = 1), n;
26280}
26281function Yb(r) {
26282  return r ? [r[0][1] - r[0][0], r[1][1] - r[1][0]] : [NaN, NaN];
26283}
26284var dg = D, x8 = pR("toolbox-dataZoom_"), b8 = function(r) {
26285  N(e, r);
26286  function e() {
26287    return r !== null && r.apply(this, arguments) || this;
26288  }
26289  return e.prototype.render = function(t, a, n, i) {
26290    this._brushController || (this._brushController = new pm(n.getZr()), this._brushController.on("brush", $(this._onBrush, this)).mount()), C8(t, a, this, i, n), T8(t, a);
26291  }, e.prototype.onclick = function(t, a, n) {
26292    w8[n].call(this);
26293  }, e.prototype.remove = function(t, a) {
26294    this._brushController && this._brushController.unmount();
26295  }, e.prototype.dispose = function(t, a) {
26296    this._brushController && this._brushController.dispose();
26297  }, e.prototype._onBrush = function(t) {
26298    var a = t.areas;
26299    if (!t.isEnd || !a.length) return;
26300    var n = {}, i = this.ecModel;
26301    this._brushController.updateCovers([]);
26302    var o = new Fm(Hm(this.model), i, { include: ["grid"] });
26303    o.matchOutputRanges(a, i, function(u, f, h) {
26304      if (h.type === "cartesian2d") {
26305        var v = u.brushType;
26306        v === "rect" ? (s("x", h, f[0]), s("y", h, f[1])) : s({ lineX: "x", lineY: "y" }[v], h, f);
26307      }
26308    }), c8(i, n), this._dispatchZoomAction(n);
26309    function s(u, f, h) {
26310      var v = f.getAxis(u), c = v.model, p = l(u, c, i), d = p.findRepresentativeAxisProxy(c).getMinMaxSpan();
26311      (d.minValueSpan != null || d.maxValueSpan != null) && (h = Ai(0, h.slice(), v.scale.getExtent(), 0, d.minValueSpan, d.maxValueSpan)), p && (n[p.id] = { dataZoomId: p.id, startValue: h[0], endValue: h[1] });
26312    }
26313    function l(u, f, h) {
26314      var v;
26315      return h.eachComponent({ mainType: "dataZoom", subType: "select" }, function(c) {
26316        var p = c.getAxisModel(u, f.componentIndex);
26317        p && (v = c);
26318      }), v;
26319    }
26320  }, e.prototype._dispatchZoomAction = function(t) {
26321    var a = [];
26322    dg(t, function(n, i) {
26323      a.push(rt(n));
26324    }), a.length && this.api.dispatchAction({ type: "dataZoom", from: this.uid, batch: a });
26325  }, e.getDefaultOption = function(t) {
26326    var a = { show: true, 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)" } };
26327    return a;
26328  }, e;
26329}(sr), w8 = { zoom: function() {
26330  var r = !this._isZoomActive;
26331  this.api.dispatchAction({ type: "takeGlobalCursor", key: "dataZoomSelect", dataZoomSelectActive: r });
26332}, back: function() {
26333  this._dispatchZoomAction(p8(this.ecModel));
26334} };
26335function Hm(r) {
26336  var e = { xAxisIndex: r.get("xAxisIndex", true), yAxisIndex: r.get("yAxisIndex", true), xAxisId: r.get("xAxisId", true), yAxisId: r.get("yAxisId", true) };
26337  return e.xAxisIndex == null && e.xAxisId == null && (e.xAxisIndex = "all"), e.yAxisIndex == null && e.yAxisId == null && (e.yAxisIndex = "all"), e;
26338}
26339function T8(r, e) {
26340  r.setIconStatus("back", g8(e) > 1 ? "emphasis" : "normal");
26341}
26342function C8(r, e, t, a, n) {
26343  var i = t._isZoomActive;
26344  a && a.type === "takeGlobalCursor" && (i = a.key === "dataZoomSelect" ? a.dataZoomSelectActive : false), t._isZoomActive = i, r.setIconStatus("zoom", i ? "emphasis" : "normal");
26345  var o = new Fm(Hm(r), e, { include: ["grid"] }), s = o.makePanelOpts(n, function(l) {
26346    return l.xAxisDeclared && !l.yAxisDeclared ? "lineX" : !l.xAxisDeclared && l.yAxisDeclared ? "lineY" : "rect";
26347  });
26348  t._brushController.setPanels(s).enableBrush(i && s.length ? { brushType: "auto", brushStyle: r.getModel("brushStyle").getItemStyle() } : false);
26349}
26350Bk("dataZoom", function(r) {
26351  var e = r.getComponent("toolbox", 0), t = ["feature", "dataZoom"];
26352  if (!e || e.get(t) == null) return;
26353  var a = e.getModel(t), n = [], i = Hm(a), o = Hs(r, i);
26354  dg(o.xAxisModels, function(l) {
26355    return s(l, "xAxis", "xAxisIndex");
26356  }), dg(o.yAxisModels, function(l) {
26357    return s(l, "yAxis", "yAxisIndex");
26358  });
26359  function s(l, u, f) {
26360    var h = l.componentIndex, v = { type: "select", $fromToolbox: true, filterMode: a.get("filterMode", true) || "filter", id: x8 + u + h };
26361    v[f] = h, n.push(v);
26362  }
26363  return n;
26364});
26365function A8(r) {
26366  r.registerComponentModel(KU), r.registerComponentView(JU), eo("saveAsImage", t8), eo("magicType", r8), eo("dataView", h8), eo("dataZoom", b8), eo("restore", y8), pt(qU);
26367}
26368var D8 = function(r) {
26369  N(e, r);
26370  function e() {
26371    var t = r !== null && r.apply(this, arguments) || this;
26372    return t.type = e.type, t;
26373  }
26374  return e.type = "tooltip", e.dependencies = ["axisPointer"], e.defaultOption = { z: 60, show: true, showContent: true, trigger: "item", triggerOn: "mousemove|click", alwaysShowContent: false, displayMode: "single", renderMode: "auto", confine: null, showDelay: 0, hideDelay: 100, transitionDuration: 0.4, enterable: false, 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;
26375}(gt);
26376function mL(r) {
26377  var e = r.get("confine");
26378  return e != null ? !!e : r.get("renderMode") === "richText";
26379}
26380function _L(r) {
26381  if (yt.domSupported) {
26382    for (var e = document.documentElement.style, t = 0, a = r.length; t < a; t++) if (r[t] in e) return r[t];
26383  }
26384}
26385var SL = _L(["transform", "webkitTransform", "OTransform", "MozTransform", "msTransform"]), M8 = _L(["webkitTransition", "transition", "OTransition", "MozTransition", "msTransition"]);
26386function xL(r, e) {
26387  if (!r) return e;
26388  e = dy(e, true);
26389  var t = r.indexOf(e);
26390  return r = t === -1 ? e : "-" + r.slice(0, t) + "-" + e, r.toLowerCase();
26391}
26392function I8(r, e) {
26393  var t = r.currentStyle || document.defaultView && document.defaultView.getComputedStyle(r);
26394  return t ? t[e] : null;
26395}
26396var L8 = xL(M8, "transition"), Wm = xL(SL, "transform"), P8 = "position:absolute;display:block;border-style:solid;white-space:nowrap;z-index:9999999;" + (yt.transform3dSupported ? "will-change:transform;" : "");
26397function R8(r) {
26398  return r = r === "left" ? "right" : r === "right" ? "left" : r === "top" ? "bottom" : "top", r;
26399}
26400function E8(r, e, t) {
26401  if (!Y(t) || t === "inside") return "";
26402  var a = r.get("backgroundColor"), n = r.get("borderWidth");
26403  e = pi(e);
26404  var i = R8(t), o = Math.max(Math.round(n) * 1.5, 6), s = "", l = Wm + ":", u;
26405  vt(["left", "right"], i) > -1 ? (s += "top:50%", l += "translateY(-50%) rotate(" + (u = i === "left" ? -225 : -45) + "deg)") : (s += "left:50%", l += "translateX(-50%) rotate(" + (u = i === "top" ? 225 : 45) + "deg)");
26406  var f = u * Math.PI / 180, h = o + n, v = h * Math.abs(Math.cos(f)) + h * Math.abs(Math.sin(f)), c = Math.round(((v - Math.SQRT2 * n) / 2 + Math.SQRT2 * n - (v - h) / 2) * 100) / 100;
26407  s += ";" + i + ":-" + c + "px";
26408  var p = e + " solid " + n + "px;", d = ["position:absolute;
26408width:" + o + "px;height:" + o + "px;z-index:-1;", s + ";" + l + ";", "border-bottom:" + p, "border-right:" + p, "background-color:" + a + ";"];
26409  return '<div style="' + d.join("") + '"></div>';
26410}
26411function k8(r, e) {
26412  var t = "cubic-bezier(0.23,1,0.32,1)", a = " " + r / 2 + "s " + t, n = "opacity" + a + ",visibility" + a;
26413  return e || (a = " " + r + "s " + t, n += yt.transformSupported ? "," + Wm + a : ",left" + a + ",top" + a), L8 + ":" + n;
26414}
26415function $b(r, e, t) {
26416  var a = r.toFixed(0) + "px", n = e.toFixed(0) + "px";
26417  if (!yt.transformSupported) return t ? "top:" + n + ";left:" + a + ";" : [["top", n], ["left", a]];
26418  var i = yt.transform3dSupported, o = "translate" + (i ? "3d" : "") + "(" + a + "," + n + (i ? ",0" : "") + ")";
26419  return t ? "top:0;left:0;" + Wm + ":" + o + ";" : [["top", 0], ["left", 0], [SL, o]];
26420}
26421function O8(r) {
26422  var e = [], t = r.get("fontSize"), a = r.getTextColor();
26423  a && e.push("color:" + a), e.push("font:" + r.getFont());
26424  var n = st(r.get("lineHeight"), Math.round(t * 3 / 2));
26425  t && e.push("line-height:" + n + "px");
26426  var i = r.get("textShadowColor"), o = r.get("textShadowBlur") || 0, s = r.get("textShadowOffsetX") || 0, l = r.get("textShadowOffsetY") || 0;
26427  return i && o && e.push("text-shadow:" + s + "px " + l + "px " + o + "px " + i), D(["decoration", "align"], function(u) {
26428    var f = r.get(u);
26429    f && e.push("text-" + u + ":" + f);
26430  }), e.join(";");
26431}
26432function N8(r, e, t) {
26433  var a = [], n = r.get("transitionDuration"), i = r.get("backgroundColor"), o = r.get("shadowBlur"), s = r.get("shadowColor"), l = r.get("shadowOffsetX"), u = r.get("shadowOffsetY"), f = r.getModel("textStyle"), h = LA(r, "html"), v = l + "px " + u + "px " + o + "px " + s;
26434  return a.push("box-shadow:" + v), e && n && a.push(k8(n, t)), i && a.push("background-color:" + i), D(["width", "color", "radius"], function(c) {
26435    var p = "border-" + c, d = dy(p), g = r.get(d);
26436    g != null && a.push(p + ":" + g + (c === "color" ? "" : "px"));
26437  }), a.push(O8(f)), h != null && a.push("padding:" + bi(h).join("px ") + "px"), a.join(";") + ";";
26438}
26439function Xb(r, e, t, a, n) {
26440  var i = e && e.painter;
26441  if (t) {
26442    var o = i && i.getViewportRoot();
26443    o && H2(r, o, t, a, n);
26444  } else {
26445    r[0] = a, r[1] = n;
26446    var s = i && i.getViewportRootOffset();
26447    s && (r[0] += s.offsetLeft, r[1] += s.offsetTop);
26448  }
26449  r[2] = r[0] / e.getWidth(), r[3] = r[1] / e.getHeight();
26450}
26451var B8 = function() {
26452  function r(e, t) {
26453    if (this._show = false, this._styleCoord = [0, 0, 0, 0], this._enterable = true, this._alwaysShowContent = false, this._firstShow = true, this._longHide = true, yt.wxa) return null;
26454    var a = document.createElement("div");
26455    a.domBelongToZr = true, this.el = a;
26456    var n = this._zr = e.getZr(), i = t.appendTo, o = i && (Y(i) ? document.querySelector(i) : ui(i) ? i : j(i) && i(e.getDom()));
26457    Xb(this._styleCoord, n, o, e.getWidth() / 2, e.getHeight() / 2), (o || e.getDom()).appendChild(a), this._api = e, this._container = o;
26458    var s = this;
26459    a.onmouseenter = function() {
26460      s._enterable && (clearTimeout(s._hideTimeout), s._show = true), s._inContent = true;
26461    }, a.onmousemove = function(l) {
26462      if (l = l || window.event, !s._enterable) {
26463        var u = n.handler, f = n.painter.getViewportRoot();
26464        rr(f, l, true), u.dispatch("mousemove", l);
26465      }
26466    }, a.onmouseleave = function() {
26467      s._inContent = false, s._enterable && s._show && s.hideLater(s._hideDelay);
26468    };
26469  }
26470  return r.prototype.update = function(e) {
26471    if (!this._container) {
26472      var t = this._api.getDom(), a = I8(t, "position"), n = t.style;
26473      n.position !== "absolute" && a !== "absolute" && (n.position = "relative");
26474    }
26475    var i = e.get("alwaysShowContent");
26476    i && this._moveIfResized(), this._alwaysShowContent = i, this.el.className = e.get("className") || "";
26477  }, r.prototype.show = function(e, t) {
26478    clearTimeout(this._hideTimeout), clearTimeout(this._longHideTimeout);
26479    var a = this.el, n = a.style, i = this._styleCoord;
26480    a.innerHTML ? n.cssText = P8 + N8(e, !this._firstShow, this._longHide) + $b(i[0], i[1], true) + ("border-color:" + pi(t) + ";") + (e.get("extraCssText") || "") + (";pointer-events:" + (this._enterable ? "auto" : "none")) : n.display = "none", this._show = true, this._firstShow = false, this._longHide = false;
26481  }, r.prototype.setContent = function(e, t, a, n, i) {
26482    var o = this.el;
26483    if (e == null) {
26484      o.innerHTML = "";
26485      return;
26486    }
26487    var s = "";
26488    if (Y(i) && a.get("trigger") === "item" && !mL(a) && (s = E8(a, n, i)), Y(e)) o.innerHTML = e + s;
26489    else if (e) {
26490      o.innerHTML = "", V(e) || (e = [e]);
26491      for (var l = 0; l < e.length; l++) ui(e[l]) && e[l].parentNode !== o && o.appendChild(e[l]);
26492      if (s && o.childNodes.length) {
26493        var u = document.createElement("div");
26494        u.innerHTML = s, o.appendChild(u);
26495      }
26496    }
26497  }, r.prototype.setEnterable = function(e) {
26498    this._enterable = e;
26499  }, r.prototype.getSize = function() {
26500    var e = this.el;
26501    return e ? [e.offsetWidth, e.offsetHeight] : [0, 0];
26502  }, r.prototype.moveTo = function(e, t) {
26503    if (this.el) {
26504      var a = this._styleCoord;
26505      if (Xb(a, this._zr, this._container, e, t), a[0] != null && a[1] != null) {
26506        var n = this.el.style, i = $b(a[0], a[1]);
26507        D(i, function(o) {
26508          n[o[0]] = o[1];
26509        });
26510      }
26511    }
26512  }, r.prototype._moveIfResized = function() {
26513    var e = this._styleCoord[2], t = this._styleCoord[3];
26514    this.moveTo(e * this._zr.getWidth(), t * this._zr.getHeight());
26515  }, r.prototype.hide = function() {
26516    var e = this, t = this.el.style;
26517    t.visibility = "hidden", t.opacity = "0", yt.transform3dSupported && (t.willChange = ""), this._show = false, this._longHideTimeout = setTimeout(function() {
26518      return e._longHide = true;
26519    }, 500);
26520  }, r.prototype.hideLater = function(e) {
26521    this._show && !(this._inContent && this._enterable) && !this._alwaysShowContent && (e ? (this._hideDelay = e, this._show = false, this._hideTimeout = setTimeout($(this.hide, this), e)) : this.hide());
26522  }, r.prototype.isShow = function() {
26523    return this._show;
26524  }, r.prototype.dispose = function() {
26525    clearTimeout(this._hideTimeout), clearTimeout(this._longHideTimeout);
26526    var e = this.el.parentNode;
26527    e && e.removeChild(this.el), this.el = this._container = null;
26528  }, r;
26529}(), z8 = function() {
26530  function r(e) {
26531    this._show = false, this._styleCoord = [0, 0, 0, 0], this._alwaysShowContent = false, this._enterable = true, this._zr = e.getZr(), qb(this._styleCoord, this._zr, e.getWidth() / 2, e.getHeight() / 2);
26532  }
26533  return r.prototype.update = function(e) {
26534    var t = e.get("alwaysShowContent");
26535    t && this._moveIfResized(), this._alwaysShowContent = t;
26536  }, r.prototype.show = function() {
26537    this._hideTimeout && clearTimeout(this._hideTimeout), this.el.show(), this._show = true;
26538  }, r.prototype.setContent = function(e, t, a, n, i) {
26539    var o = this;
26540    tt(e) && Mt(""), this.el && this._zr.remove(this.el);
26541    var s = a.getModel("textStyle");
26542    this.el = new St({ style: { rich: t.richTextStyles, text: e, lineHeight: 22, borderWidth: 1, borderColor: n, textShadowColor: s.get("textShadowColor"), fill: a.get(["textStyle", "color"]), padding: LA(a, "richText"), verticalAlign: "top", align: "left" }, z: a.get("z") }), D(["backgroundColor", "borderRadius", "shadowColor", "shadowBlur", "shadowOffsetX", "shadowOffsetY"], function(u) {
26543      o.el.style[u] = a.get(u);
26544    }), D(["textShadowBlur", "textShadowOffsetX", "textShadowOffsetY"], function(u) {
26545      o.el.style[u] = s.get(u) || 0;
26546    }), this._zr.add(this.el);
26547    var l = this;
26548    this.el.on("mouseover", function() {
26549      l._enterable && (clearTimeout(l._hideTimeout), l._show = true), l._inContent = true;
26550    }), this.el.on("mouseout", function() {
26551      l._enterable && l._show && l.hideLater(l._hideDelay), l._inContent = false;
26552    });
26553  }, r.prototype.setEnterable = function(e) {
26554    this._enterable = e;
26555  }, r.prototype.getSize = function() {
26556    var e = this.el, t = this.el.getBoundingRect(), a = Zb(e.style);
26557    return [t.width + a.left + a.right, t.height + a.top + a.bottom];
26558  }, r.prototype.moveTo = function(e, t) {
26559    var a = this.el;
26560    if (a) {
26561      var n = this._styleCoord;
26562      qb(n, this._zr, e, t), e = n[0], t = n[1];
26563      var i = a.style, o = Na(i.borderWidth || 0), s = Zb(i);
26564      a.x = e + o + s.left, a.y = t + o + s.top, a.markRedraw();
26565    }
26566  }, r.prototype._moveIfResized = function() {
26567    var e = this._styleCoord[2], t = this._styleCoord[3];
26568    this.moveTo(e * this._zr.getWidth(), t * this._zr.getHeight());
26569  }, r.prototype.hide = function() {
26570    this.el && this.el.hide(), this._show = false;
26571  }, r.prototype.hideLater = function(e) {
26572    this._show && !(this._inContent && this._enterable) && !this._alwaysShowContent && (e ? (this._hideDelay = e, this._show = false, this._hideTimeout = setTimeout($(this.hide, this), e)) : this.hide());
26573  }, r.prototype.isShow = function() {
26574    return this._show;
26575  }, r.prototype.dispose = function() {
26576    this._zr.remove(this.el);
26577  }, r;
26578}();
26579function Na(r) {
26580  return Math.max(0, r);
26581}
26582function Zb(r) {
26583  var e = Na(r.shadowBlur || 0), t = Na(r.shadowOffsetX || 0), a = Na(r.shadowOffsetY || 0);
26584  return { left: Na(e - t), right: Na(e + t), top: Na(e - a), bottom: Na(e + a) };
26585}
26586function qb(r, e, t, a) {
26587  r[0] = t, r[1] = a, r[2] = r[0] / e.getWidth(), r[3] = r[1] / e.getHeight();
26588}
26589var V8 = new xt({ shape: { x: -1, y: -1, width: 2, height: 2 } }), G8 = function(r) {
26590  N(e, r);
26591  function e() {
26592    var t = r !== null && r.apply(this, arguments) || this;
26593    return t.type = e.type, t;
26594  }
26595  return e.prototype.init = function(t, a) {
26596    if (!(yt.node || !a.getDom())) {
26597      var n = t.getComponent("tooltip"), i = this._renderMode = xR(n.get("renderMode"));
26598      this._tooltipContent = i === "richText" ? new z8(a) : new B8(a, { appendTo: n.get("appendToBody", true) ? "body" : n.get("appendTo", true) });
26599    }
26600  }, e.prototype.render = function(t, a, n) {
26601    if (!(yt.node || !n.getDom())) {
26602      this.group.removeAll(), this._tooltipModel = t, this._ecModel = a, this._api = n;
26603      var i = this._tooltipContent;
26604      i.update(t), i.setEnterable(t.get("enterable")), this._initGlobalListener(), this._keepShow(), this._renderMode !== "richText" && t.get("transitionDuration") ? Fo(this, "_updatePosition", 50, "fixRate") : cl(this, "_updatePosition");
26605    }
26606  }, e.prototype._initGlobalListener = function() {
26607    var t = this._tooltipModel, a = t.get("triggerOn");
26608    iL("itemTooltip", this._api, $(function(n, i, o) {
26609      a !== "none" && (a.indexOf(n) >= 0 ? this._tryShow(i, o) : n === "leave" && this._hide(o));
26610    }, this));
26611  }, e.prototype._keepShow = function() {
26612    var t = this._tooltipModel, a = this._ecModel, n = this._api, i = t.get("triggerOn");
26613    if (this._lastX != null && this._lastY != null && i !== "none" && i !== "click") {
26614      var o = this;
26615      clearTimeout(this._refreshUpdateTimeout), this._refreshUpdateTimeout = setTimeout(function() {
26616        !n.isDisposed() && o.manuallyShowTip(t, a, n, { x: o._lastX, y: o._lastY, dataByCoordSys: o._lastDataByCoordSys });
26617      });
26618    }
26619  }, e.prototype.manuallyShowTip = function(t, a, n, i) {
26620    if (!(i.from === this.uid || yt.node || !n.getDom())) {
26621      var o = Kb(i, n);
26622      this._ticket = "";
26623      var s = i.dataByCoordSys, l = U8(i, a, n);
26624      if (l) {
26625        var u = l.el.getBoundingRect().clone();
26626        u.applyTransform(l.el.transform), this._tryShow({ offsetX: u.x + u.width / 2, offsetY: u.y + u.height / 2, target: l.el, position: i.position, positionDefault: "bottom" }, o);
26627      } else if (i.tooltip && i.x != null && i.y != null) {
26628        var f = V8;
26629        f.x = i.x, f.y = i.y, f.update(), it(f).tooltipConfig = { name: null, option: i.tooltip }, this._tryShow({ offsetX: i.x, offsetY: i.y, target: f }, o);
26630      } else if (s) this._tryShow({ offsetX: i.x, offsetY: i.y, position: i.position, dataByCoordSys: s, tooltipOption: i.tooltipOption }, o);
26631      else if (i.seriesIndex != null) {
26632        if (this._manuallyAxisShowTip(t, a, n, i)) return;
26633        var h = oL(i, a), v = h.point[0], c = h.point[1];
26634        v != null && c != null && this._tryShow({ offsetX: v, offsetY: c, target: h.el, position: i.position, positionDefault: "bottom" }, o);
26635      } else i.x != null && i.y != null && (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));
26636    }
26637  }, e.prototype.manuallyHideTip = function(t, a, n, i) {
26638    var o = this._tooltipContent;
26639    this._tooltipModel && o.hideLater(this._tooltipModel.get("hideDelay")), this._lastX = this._lastY = this._lastDataByCoordSys = null, i.from !== this.uid && this._hide(Kb(i, n));
26640  }, e.prototype._manuallyAxisShowTip = function(t, a, n, i) {
26641    var o = i.seriesIndex, s = i.dataIndex, l = a.getComponent("axisPointer").coordSysAxesInfo;
26642    if (!(o == null || s == null || l == null)) {
26643      var u = a.getSeriesByIndex(o);
26644      if (u) {
26645        var f = u.getData(), h = ys([f.getItemModel(s), u, (u.coordinateSystem || {}).model], this._tooltipModel);
26646        if (h.get("trigger") === "axis") return n.dispatchAction({ type: "updateAxisPointer", seriesIndex: o, dataIndex: s, position: i.position }), true;
26647      }
26648    }
26649  }, e.prototype._tryShow = function(t, a) {
26650    var n = t.target, i = this._tooltipModel;
26651    if (i) {
26652      this._lastX = t.offsetX, this._lastY = t.offsetY;
26653      var o = t.dataByCoordSys;
26654      if (o && o.length) this._showAxisTooltip(o, t);
26655      else if (n) {
26656        var s = it(n);
26657        if (s.ssrType === "legend") return;
26658        this._lastDataByCoordSys = null;
26659        var l, u;
26660        jn(n, function(f) {
26661          if (it(f).dataIndex != null) return l = f, true;
26662          if (it(f).tooltipConfig != null) return u = f, true;
26663        }, true), l ? this._showSeriesItemTooltip(t, l, a) : u ? this._showComponentItemTooltip(t, u, a) : this._hide(a);
26664      } else this._lastDataByCoordSys = null, this._hide(a);
26665    }
26666  }, e.prototype._showOrMove = function(t, a) {
26667    var n = t.get("showDelay");
26668    a = $(a, this), clearTimeout(this._showTimout), n > 0 ? this._showTimout = setTimeout(a, n) : a();
26669  }, e.prototype._showAxisTooltip = function(t, a) {
26670    var n = this._ecModel, i = this._tooltipModel, o = [a.offsetX, a.offsetY], s = ys([a.tooltipOption], i), l = this._renderMode, u = [], f = le("section", { blocks: [], noHeader: true }), h = [], v = new ac();
26671    D(t, function(m) {
26672      D(m.dataByAxis, function(_) {
26673        var S = n.getComponent(_.axisDim + "Axis", _.axisIndex), b = _.value;
26674        if (!(!S || b == null)) {
26675          var x = rL(b, S.axis, n, _.seriesDataIndices, _.valueLabelOpt), w = le("section", { header: x, noHeader: !ur(x), sortBlocks: true, blocks: [] });
26676          f.blocks.push(w), D(_.seriesDataIndices, function(T) {
26677            var C = n.getSeriesByIndex(T.seriesIndex), A = T.dataIndexInside, M = C.getDataParams(A);
26678            if (!(M.dataIndex < 0)) {
26679              M.axisDim = _.axisDim, M.axisIndex = _.axisIndex, M.axisType = _.axisType, M.axisId = _.axisId, M.axisValue = Hy(S.axis, { value: b }), M.axisValueLabel = x, M.marker = v.makeTooltipMarker("item", pi(M.color), l);
26680              var I = N_(C.formatTooltip(A, true, null)), L = I.frag;
26681              if (L) {
26682                var P = ys([C], i).get("valueFormatter");
26683                w.blocks.push(P ? z({ valueFormatter: P }
26683, L) : L);
26684              }
26685              I.text && h.push(I.text), u.push(M);
26686            }
26687          });
26688        }
26689      });
26690    }), f.blocks.reverse(), h.reverse();
26691    var c = a.position, p = s.get("order"), d = H_(f, v, l, p, n.get("useUTC"), s.get("textStyle"));
26692    d && h.unshift(d);
26693    var g = l === "richText" ? `
26694
26695` : "<br/>", y = h.join(g);
26696    this._showOrMove(s, function() {
26697      this._updateContentNotChangedOnAxis(t, u) ? this._updatePosition(s, c, o[0], o[1], this._tooltipContent, u) : this._showTooltipContent(s, y, u, Math.random() + "", o[0], o[1], c, null, v);
26698    });
26699  }, e.prototype._showSeriesItemTooltip = function(t, a, n) {
26700    var i = this._ecModel, o = it(a), s = o.seriesIndex, l = i.getSeriesByIndex(s), u = o.dataModel || l, f = o.dataIndex, h = o.dataType, v = u.getData(h), c = this._renderMode, p = t.positionDefault, d = ys([v.getItemModel(f), u, l && (l.coordinateSystem || {}).model], this._tooltipModel, p ? { position: p } : null), g = d.get("trigger");
26701    if (!(g != null && g !== "item")) {
26702      var y = u.getDataParams(f, h), m = new ac();
26703      y.marker = m.makeTooltipMarker("item", pi(y.color), c);
26704      var _ = N_(u.formatTooltip(f, false, h)), S = d.get("order"), b = d.get("valueFormatter"), x = _.frag, w = x ? H_(b ? z({ valueFormatter: b }, x) : x, m, c, S, i.get("useUTC"), d.get("textStyle")) : _.text, T = "item_" + u.name + "_" + f;
26705      this._showOrMove(d, function() {
26706        this._showTooltipContent(d, w, y, T, t.offsetX, t.offsetY, t.position, t.target, m);
26707      }), n({ type: "showTip", dataIndexInside: f, dataIndex: v.getRawIndex(f), seriesIndex: s, from: this.uid });
26708    }
26709  }, e.prototype._showComponentItemTooltip = function(t, a, n) {
26710    var i = this._renderMode === "html", o = it(a), s = o.tooltipConfig, l = s.option || {}, u = l.encodeHTMLContent;
26711    if (Y(l)) {
26712      var f = l;
26713      l = { content: f, formatter: f }, u = true;
26714    }
26715    u && i && l.content && (l = rt(l), l.content = xe(l.content));
26716    var h = [l], v = this._ecModel.getComponent(o.componentMainType, o.componentIndex);
26717    v && h.push(v), h.push({ formatter: l.content });
26718    var c = t.positionDefault, p = ys(h, this._tooltipModel, c ? { position: c } : null), d = p.get("content"), g = Math.random() + "", y = new ac();
26719    this._showOrMove(p, function() {
26720      var m = rt(p.get("formatterParams") || {});
26721      this._showTooltipContent(p, d, m, g, t.offsetX, t.offsetY, t.position, a, y);
26722    }), n({ type: "showTip", from: this.uid });
26723  }, e.prototype._showTooltipContent = function(t, a, n, i, o, s, l, u, f) {
26724    if (this._ticket = "", !(!t.get("showContent") || !t.get("show"))) {
26725      var h = this._tooltipContent;
26726      h.setEnterable(t.get("enterable"));
26727      var v = t.get("formatter");
26728      l = l || t.get("position");
26729      var c = a, p = this._getNearestPoint([o, s], n, t.get("trigger"), t.get("borderColor")), d = p.color;
26730      if (v) if (Y(v)) {
26731        var g = t.ecModel.get("useUTC"), y = V(n) ? n[0] : n, m = y && y.axisType && y.axisType.indexOf("time") >= 0;
26732        c = v, m && (c = Gl(y.axisValue, c, g)), c = gy(c, n, true);
26733      } else if (j(v)) {
26734        var _ = $(function(S, b) {
26735          S === this._ticket && (h.setContent(b, f, t, d, l), this._updatePosition(t, l, o, s, h, n, u));
26736        }, this);
26737        this._ticket = i, c = v(n, i, _);
26738      } else c = v;
26739      h.setContent(c, f, t, d, l), h.show(t, d), this._updatePosition(t, l, o, s, h, n, u);
26740    }
26741  }, e.prototype._getNearestPoint = function(t, a, n, i) {
26742    if (n === "axis" || V(a)) return { color: i || (this._renderMode === "html" ? "#fff" : "none") };
26743    if (!V(a)) return { color: i || a.color || a.borderColor };
26744  }, e.prototype._updatePosition = function(t, a, n, i, o, s, l) {
26745    var u = this._api.getWidth(), f = this._api.getHeight();
26746    a = a || t.get("position");
26747    var h = o.getSize(), v = t.get("align"), c = t.get("verticalAlign"), p = l && l.getBoundingRect().clone();
26748    if (l && p.applyTransform(l.transform), j(a) && (a = a([n, i], s, o.el, p, { viewSize: [u, f], contentSize: h.slice() })), V(a)) n = W(a[0], u), i = W(a[1], f);
26749    else if (tt(a)) {
26750      var d = a;
26751      d.width = h[0], d.height = h[1];
26752      var g = Qt(d, { width: u, height: f });
26753      n = g.x, i = g.y, v = null, c = null;
26754    } else if (Y(a) && l) {
26755      var y = W8(a, p, h, t.get("borderWidth"));
26756      n = y[0], i = y[1];
26757    } else {
26758      var y = F8(n, i, o, u, f, v ? null : 20, c ? null : 20);
26759      n = y[0], i = y[1];
26760    }
26761    if (v && (n -= jb(v) ? h[0] / 2 : v === "right" ? h[0] : 0), c && (i -= jb(c) ? h[1] / 2 : c === "bottom" ? h[1] : 0), mL(t)) {
26762      var y = H8(n, i, o, u, f);
26763      n = y[0], i = y[1];
26764    }
26765    o.moveTo(n, i);
26766  }, e.prototype._updateContentNotChangedOnAxis = function(t, a) {
26767    var n = this._lastDataByCoordSys, i = this._cbParamsList, o = !!n && n.length === t.length;
26768    return o && D(n, function(s, l) {
26769      var u = s.dataByAxis || [], f = t[l] || {}, h = f.dataByAxis || [];
26770      o = o && u.length === h.length, o && D(u, function(v, c) {
26771        var p = h[c] || {}, d = v.seriesDataIndices || [], g = p.seriesDataIndices || [];
26772        o = o && v.value === p.value && v.axisType === p.axisType && v.axisId === p.axisId && d.length === g.length, o && D(d, function(y, m) {
26773          var _ = g[m];
26774          o = o && y.seriesIndex === _.seriesIndex && y.dataIndex === _.dataIndex;
26775        }), i && D(v.seriesDataIndices, function(y) {
26776          var m = y.seriesIndex, _ = a[m], S = i[m];
26777          _ && S && S.data !== _.data && (o = false);
26778        });
26779      });
26780    }), this._lastDataByCoordSys = t, this._cbParamsList = a, !!o;
26781  }, e.prototype._hide = function(t) {
26782    this._lastDataByCoordSys = null, t({ type: "hideTip", from: this.uid });
26783  }, e.prototype.dispose = function(t, a) {
26784    yt.node || !a.getDom() || (cl(this, "_updatePosition"), this._tooltipContent.dispose(), fg("itemTooltip", a));
26785  }, e.type = "tooltip", e;
26786}(Vt);
26787function ys(r, e, t) {
26788  var a = e.ecModel, n;
26789  t ? (n = new At(t, a, a), n = new At(e.option, n, a)) : n = e;
26790  for (var i = r.length - 1; i >= 0; i--) {
26791    var o = r[i];
26792    o && (o instanceof At && (o = o.get("tooltip", true)), Y(o) && (o = { formatter: o }), o && (n = new At(o, n, a)));
26793  }
26794  return n;
26795}
26796function Kb(r, e) {
26797  return r.dispatchAction || $(e.dispatchAction, e);
26798}
26799function F8(r, e, t, a, n, i, o) {
26800  var s = t.getSize(), l = s[0], u = s[1];
26801  return i != null && (r + l + i + 2 > a ? r -= l + i : r += i), o != null && (e + u + o > n ? e -= u + o : e += o), [r, e];
26802}
26803function H8(r, e, t, a, n) {
26804  var i = t.getSize(), o = i[0], s = i[1];
26805  return r = Math.min(r + o, a) - o, e = Math.min(e + s, n) - s, r = Math.max(r, 0), e = Math.max(e, 0), [r, e];
26806}
26807function W8(r, e, t, a) {
26808  var n = t[0], i = t[1], o = Math.ceil(Math.SQRT2 * a) + 8, s = 0, l = 0, u = e.width, f = e.height;
26809  switch (r) {
26810    case "inside":
26811      s = e.x + u / 2 - n / 2, l = e.y + f / 2 - i / 2;
26812      break;
26813    case "top":
26814      s = e.x + u / 2 - n / 2, l = e.y - i - o;
26815      break;
26816    case "bottom":
26817      s = e.x + u / 2 - n / 2, l = e.y + f + o;
26818      break;
26819    case "left":
26820      s = e.x - n - o, l = e.y + f / 2 - i / 2;
26821      break;
26822    case "right":
26823      s = e.x + u + o, l = e.y + f / 2 - i / 2;
26824  }
26825  return [s, l];
26826}
26827function jb(r) {
26828  return r === "center" || r === "middle";
26829}
26830function U8(r, e, t) {
26831  var a = $g(r).queryOptionMap, n = a.keys()[0];
26832  if (!(!n || n === "series")) {
26833    var i = kl(e, n, a.get(n), { useDefault: false, enableAll: false, enableNone: false }), o = i.models[0];
26834    if (o) {
26835      var s = t.getViewOfComponentModel(o), l;
26836      if (s.group.traverse(function(u) {
26837        var f = it(u).tooltipConfig;
26838        if (f && f.name === r.name) return l = u, true;
26839      }), l) return { componentMainType: n, componentIndex: o.componentIndex, el: l };
26840    }
26841  }
26842}
26843function Y8(r) {
26844  pt(jl), r.registerComponentModel(D8), r.registerComponentView(G8), r.registerAction({ type: "showTip", event: "showTip", update: "tooltip:manuallyShowTip" }, $t), r.registerAction({ type: "hideTip", event: "hideTip", update: "tooltip:manuallyHideTip" }, $t);
26845}
26846var $8 = ["rect", "polygon", "keep", "clear"];
26847function X8(r, e) {
26848  var t = Rt(r ? r.brush : []);
26849  if (t.length) {
26850    var a = [];
26851    D(t, function(l) {
26852      var u = l.hasOwnProperty("toolbox") ? l.toolbox : [];
26853      u instanceof Array && (a = a.concat(u));
26854    });
26855    var n = r && r.toolbox;
26856    V(n) && (n = n[0]), n || (n = { feature: {} }, r.toolbox = [n]);
26857    var i = n.feature || (n.feature = {}), o = i.brush || (i.brush = {}), s = o.type || (o.type = []);
26858    s.push.apply(s, a), Z8(s), e && !s.length && s.push.apply(s, $8);
26859  }
26860}
26861function Z8(r) {
26862  var e = {};
26863  D(r, function(t) {
26864    e[t] = 1;
26865  }), r.length = 0, D(e, function(t, a) {
26866    r.push(a);
26867  });
26868}
26869var Jb = D;
26870function Qb(r) {
26871  if (r) {
26872    for (var e in r) if (r.hasOwnProperty(e)) return true;
26873  }
26874}
26875function gg(r, e, t) {
26876  var a = {};
26877  return Jb(e, function(i) {
26878    var o = a[i] = n();
26879    Jb(r[i], function(s, l) {
26880      if (oe.isValidType(l)) {
26881        var u = { type: l, visual: s };
26882        t && t(u, i), o[l] = new oe(u), l === "opacity" && (u = rt(u), u.type = "colorAlpha", o.__hidden.__alphaForOpacity = new oe(u));
26883      }
26884    });
26885  }), a;
26886  function n() {
26887    var i = function() {
26888    };
26889    i.prototype.__hidden = i.prototype;
26890    var o = new i();
26891    return o;
26892  }
26893}
26894function bL(r, e, t) {
26895  var a;
26896  D(t, function(n) {
26897    e.hasOwnProperty(n) && Qb(e[n]) && (a = true);
26898  }), a && D(t, function(n) {
26899    e.hasOwnProperty(n) && Qb(e[n]) ? r[n] = rt(e[n]) : delete r[n];
26900  });
26901}
26902function q8(r, e, t, a, n, i) {
26903  var o = {};
26904  D(r, function(h) {
26905    var v = oe.prepareVisualTypes(e[h]);
26906    o[h] = v;
26907  });
26908  var s;
26909  function l(h) {
26910    return Ay(t, s, h);
26911  }
26912  function u(h, v) {
26913    GA(t, s, h, v);
26914  }
26915  t.each(f);
26916  function f(h, v) {
26917    s = h;
26918    var c = t.getRawDataItem(s);
26919    if (!(c && c.visualMap === false)) for (var p = a.call(n, h), d = e[p], g = o[p], y = 0, m = g.length; y < m; y++) {
26920      var _ = g[y];
26921      d[_] && d[_].applyVisual(h, l, u);
26922    }
26923  }
26924}
26925function K8(r, e, t, a) {
26926  var n = {};
26927  return D(r, function(i) {
26928    var o = oe.prepareVisualTypes(e[i]);
26929    n[i] = o;
26930  }), { progress: function(o, s) {
26931    var l;
26932    a != null && (l = s.getDimensionIndex(a));
26933    function u(b) {
26934      return Ay(s, h, b);
26935    }
26936    function f(b, x) {
26937      GA(s, h, b, x);
26938    }
26939    for (var h, v = s.getStore(); (h = o.next()) != null; ) {
26940      var c = s.getRawDataItem(h);
26941      if (!(c && c.visualMap === false)) for (var p = a != null ? v.get(l, h) : h, d = t(p), g = e[d], y = n[d], m = 0, _ = y.length; m < _; m++) {
26942        var S = y[m];
26943        g[S] && g[S].applyVisual(p, u, f);
26944      }
26945    }
26946  } };
26947}
26948function j8(r) {
26949  var e = r.brushType, t = { point: function(a) {
26950    return tw[e].point(a, t, r);
26951  }, rect: function(a) {
26952    return tw[e].rect(a, t, r);
26953  } };
26954  return t;
26955}
26956var tw = { lineX: ew(0), lineY: ew(1), rect: { point: function(r, e, t) {
26957  return r && t.boundingRect.contain(r[0], r[1]);
26958}, rect: function(r, e, t) {
26959  return r && t.boundingRect.intersect(r);
26960} }, polygon: { point: function(r, e, t) {
26961  return r && t.boundingRect.contain(r[0], r[1]) && Wn(t.range, r[0], r[1]);
26962}, rect: function(r, e, t) {
26963  var a = t.range;
26964  if (!r || a.length <= 1) return false;
26965  var n = r.x, i = r.y, o = r.width, s = r.height, l = a[0];
26966  if (Wn(a, n, i) || Wn(a, n + o, i) || Wn(a, n, i + s) || Wn(a, n + o, i + s) || ht.create(r).contain(l[0], l[1]) || As(n, i, n + o, i, a) || As(n, i, n, i + s, a) || As(n + o, i, n + o, i + s, a) || As(n, i + s, n + o, i + s, a)) return true;
26967} } };
26968function ew(r) {
26969  var e = ["x", "y"], t = ["width", "height"];
26970  return { point: function(a, n, i) {
26971    if (a) {
26972      var o = i.range, s = a[r];
26973      return ms(s, o);
26974    }
26975  }, rect: function(a, n, i) {
26976    if (a) {
26977      var o = i.range, s = [a[e[r]], a[e[r]] + a[t[r]]];
26978      return s[1] < s[0] && s.reverse(), ms(s[0], o) || ms(s[1], o) || ms(o[0], s) || ms(o[1], s);
26979    }
26980  } };
26981}
26982function ms(r, e) {
26983  return e[0] <= r && r <= e[1];
26984}
26985var rw = ["inBrush", "outOfBrush"], _p = "__ecBrushSelect", yg = "__ecInBrushSelectEvent";
26986function wL(r) {
26987  r.eachComponent({ mainType: "brush" }, function(e) {
26988    var t = e.brushTargetManager = new Fm(e.option, r);
26989    t.setInputRanges(e.areas, r);
26990  });
26991}
26992function J8(r, e, t) {
26993  var a = [], n, i;
26994  r.eachComponent({ mainType: "brush" }, function(o) {
26995    t && t.type === "takeGlobalCursor" && o.setBrushOption(t.key === "brush" ? t.brushOption : { brushType: false });
26996  }), wL(r), r.eachComponent({ mainType: "brush" }, function(o, s) {
26997    var l = { brushId: o.id, brushIndex: s, brushName: o.name, areas: rt(o.areas), selected: [] };
26998    a.push(l);
26999    var u = o.option, f = u.brushLink, h = [], v = [], c = [], p = false;
27000    s || (n = u.throttleType, i = u.throttleDelay);
27001    var d = G(o.areas, function(b) {
27002      var x = rY[b.brushType], w = Q({ boundingRect: x ? x(b) : void 0 }, b);
27003      return w.selectors = j8(w), w;
27004    }), g = gg(o.option, rw, function(b) {
27005      b.mappingMethod = "fixed";
27006    });
27007    V(f) && D(f, function(b) {
27008      h[b] = 1;
27009    });
27010    function y(b) {
27011      return f === "all" || !!h[b];
27012    }
27013    function m(b) {
27014      return !!b.length;
27015    }
27016    r.eachSeries(function(b, x) {
27017      var w = c[x] = [];
27018      b.subType === "parallel" ? _(b, x) : S(b, x, w);
27019    });
27020    function _(b, x) {
27021      var w = b.coordinateSystem;
27022      p = p || w.hasAxisBrushed(), y(x) && w.eachActiveState(b.getData(), function(T, C) {
27023        T === "active" && (v[C] = 1);
27024      });
27025    }
27026    function S(b, x, w) {
27027      if (!(!b.brushSelector || eY(o, x)) && (D(d, function(C) {
27028        o.brushTargetManager.controlSeries(C, b, r) && w.push(C), p = p || m(w);
27029      }), y(x) && m(w))) {
27030        var T = b.getData();
27031        T.each(function(C) {
27032          aw(b, w, T, C) && (v[C] = 1);
27033        });
27034      }
27035    }
27036    r.eachSeries(function(b, x) {
27037      var w = { seriesId: b.id, seriesIndex: x, seriesName: b.name, dataIndex: [] };
27038      l.selected.push(w);
27039      var T = c[x], C = b.getData(), A = y(x) ? function(M) {
27040        return v[M] ? (w.dataIndex.push(C.getRawIndex(M)), "inBrush") : "outOfBrush";
27041      } : function(M) {
27042        return aw(b, T, C, M) ? (w.dataIndex.push(C.getRawIndex(M)), "inBrush") : "outOfBrush";
27043      };
27044      (y(x) ? p : m(T)) && q8(rw, g, C, A);
27045    });
27046  }), Q8(e, n, i, a, t);
27047}
27048function Q8(r, e, t, a, n) {
27049  if (n) {
27050    var i = r.getZr();
27051    if (!i[yg]) {
27052      i[_p] || (i[_p] = tY);
27053      var o = Fo(i, _p, t, e);
27054      o(r, a);
27055    }
27056  }
27057}
27058function tY(r, e) {
27059  if (!r.isDisposed()) {
27060    var t = r.getZr();
27061    t[yg] = true, r.dispatchAction({ type: "brushSelect", batch: e }), t[yg] = false;
27062  }
27063}
27064function aw(r, e, t, a) {
27065  for (var n = 0, i = e.length; n < i; n++) {
27066    var o = e[n];
27067    if (r.brushSelector(a, t, o.selectors, o)) return true;
27068  }
27069}
27070function eY(r, e) {
27071  var t = r.option.seriesIndex;
27072  return t != null && t !== "all" && (V(t) ? vt(t, e) < 0 : e !== t);
27073}
27074var rY = { rect: function(r) {
27075  return nw(r.range);
27076}, polygon: function(r) {
27077  for (var e, t = r.range, a = 0, n = t.length; a < n; a++) {
27078    e = e || [[1 / 0, -1 / 0], [1 / 0, -1 / 0]];
27079    var i = t[a];
27080    i[0] < e[0][0] && (e[0][0] = i[0]), i[0] > e[0][1] && (e[0][1] = i[0]), i[1] < e[1][0] && (e[1][0] = i[1]), i[1] > e[1][1] && (e[1][1] = i[1]);
27081  }
27082  return e && nw(e);
27083} };
27084function nw(r) {
27085  return new ht(r[0][0], r[1][0], r[0][1] - r[0][0], r[1][1] - r[1][0]);
27086}
27087var aY = function(r) {
27088  N(e, r);
27089  function e() {
27090    var t = r !== null && r.apply(this, arguments) || this;
27091    return t.type = e.type, t;
27092  }
27093  return e.prototype.init = function(t, a) {
27094    this.ecModel = t, this.api = a, this.model, (this._brushController = new pm(a.getZr())).on("brush", $(this._onBrush, this)).mount();
27095  }, e.prototype.render = function(t, a, n, i) {
27096    this.model = t, this._updateController(t, a, n, i);
27097  }, e.prototype.updateTransform = function(t, a, n, i) {
27098    wL(a), this._updateController(t, a, n, i);
27099  }, e.prototype.updateVisual = function(t, a, n, i) {
27100    this.updateTransform(t, a, n, i);
27101  }, e.prototype.updateView = function(t, a, n, i) {
27102    this._updateController(t, a, n, i);
27103  }, e.prototype._updateController = function(t, a, n, i) {
27104    (!i || i.$from !== t.id) && this._brushController.setPanels(t.brushTargetManager.makePanelOpts(n)).enableBrush(t.brushOption).updateCovers(t.areas.slice());
27105  }, e.prototype.dispose = function() {
27106    this._brushController.dispose();
27107  }, e.prototype._onBrush = function(t) {
27108    var a = this.model.id, n = this.model.brushTargetManager.setOutputRanges(t.areas, this.ecModel);
27109    (!t.isEnd || t.removeOnClick) && this.api.dispatchAction({ type: "brush", brushId: a, areas: rt(n), $from: a }), t.isEnd && this.api.dispatchAction({ type: "brushEnd", brushId: a, areas: rt(n), $from: a });
27110  }, e.type = "brush", e;
27111}(Vt), nY = "#ddd", iY = function(r) {
27112  N(e, r);
27113  function e() {
27114    var t = r !== null && r.apply(this, arguments) || this;
27115    return t.type = e.type, t.areas = [], t.brushOption = {}, t;
27116  }
27117  return e.prototype.optionUpdated = function(t, a) {
27118    var n = this.option;
27119    !a && bL(n, t, ["inBrush", "outOfBrush"]);
27120    var i = n.inBrush = n.inBrush || {};
27121    n.outOfBrush = n.outOfBrush || { color: nY }, i.hasOwnProperty("liftZ") || (i.liftZ = 5);
27122  }, e.prototype.setAreas = function(t) {
27123    t && (this.areas = G(t, function(a) {
27124      return iw(this.option, a);
27125    }, this));
27126  }, e.prototype.setBrushOption = function(t) {
27127    this.brushOption = iw(this.option, t), this.brushType = this.brushOption.brushType;
27128  }, e.type = "brush", e.dependencies = ["geo", "grid", "xAxis", "yAxis", "parallel", "series"], e.defaultOption = { seriesIndex: "all", brushType: "rect", brushMode: "single", transformable: true, brushStyle: { borderWidth: 1, color: "rgba(210,219,238,0.3)", borderColor: "#D2DBEE" }, throttleType: "fixRate", throttleDelay: 0, removeOnClick: true, z: 1e4 }, e;
27129}(gt);
27130function iw(r, e) {
27131  return ut({ brushType: r.brushType, brushMode: r.brushMode, transformable: r.transformable, brushStyle: new At(r.brushStyle).getItemStyle(), removeOnClick: r.removeOnClick, z: r.z }, e, true);
27132}
27133var oY = ["rect", "polygon", "lineX", "lineY", "keep", "clear"], sY = function(r) {
27134  N(e, r);
27135  function e() {
27136    return r !== null && r.apply(this, arguments) || this;
27137  }
27138  return e.prototype.render = function(t, a, n) {
27139    var i, o, s;
27140    a.eachComponent({ mainType: "brush" }, function(l) {
27141      i = l.brushType, o = l.brushOption.brushMode || "single", s = s || !!l.areas.length;
27142    }
27142), this._brushType = i, this._brushMode = o, D(t.get("type", true), function(l) {
27143      t.setIconStatus(l, (l === "keep" ? o === "multiple" : l === "clear" ? s : l === i) ? "emphasis" : "normal");
27144    });
27145  }, e.prototype.updateView = function(t, a, n) {
27146    this.render(t, a, n);
27147  }, e.prototype.getIcons = function() {
27148    var t = this.model, a = t.get("icon", true), n = {};
27149    return D(t.get("type", true), function(i) {
27150      a[i] && (n[i] = a[i]);
27151    }), n;
27152  }, e.prototype.onclick = function(t, a, n) {
27153    var i = this._brushType, o = this._brushMode;
27154    n === "clear" ? (a.dispatchAction({ type: "axisAreaSelect", intervals: [] }), a.dispatchAction({ type: "brush", command: "clear", areas: [] })) : a.dispatchAction({ type: "takeGlobalCursor", key: "brush", brushOption: { brushType: n === "keep" ? i : i === n ? false : n, brushMode: n === "keep" ? o === "multiple" ? "single" : "multiple" : o } });
27155  }, e.getDefaultOption = function(t) {
27156    var a = { show: true, type: oY.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"]) };
27157    return a;
27158  }, e;
27159}(sr);
27160function lY(r) {
27161  r.registerComponentView(aY), r.registerComponentModel(iY), r.registerPreprocessor(X8), r.registerVisual(r.PRIORITY.VISUAL.BRUSH, J8), r.registerAction({ type: "brush", event: "brush", update: "updateVisual" }, function(e, t) {
27162    t.eachComponent({ mainType: "brush", query: e }, function(a) {
27163      a.setAreas(e.areas);
27164    });
27165  }), r.registerAction({ type: "brushSelect", event: "brushSelected", update: "none" }, $t), r.registerAction({ type: "brushEnd", event: "brushEnd", update: "none" }, $t), eo("brush", sY);
27166}
27167var uY = function(r) {
27168  N(e, r);
27169  function e() {
27170    var t = r !== null && r.apply(this, arguments) || this;
27171    return t.type = e.type, t.layoutMode = { type: "box", ignoreSize: true }, t;
27172  }
27173  return e.type = "title", e.defaultOption = { z: 6, show: true, 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;
27174}(gt), fY = function(r) {
27175  N(e, r);
27176  function e() {
27177    var t = r !== null && r.apply(this, arguments) || this;
27178    return t.type = e.type, t;
27179  }
27180  return e.prototype.render = function(t, a, n) {
27181    if (this.group.removeAll(), !!t.get("show")) {
27182      var i = this.group, o = t.getModel("textStyle"), s = t.getModel("subtextStyle"), l = t.get("textAlign"), u = st(t.get("textBaseline"), t.get("textVerticalAlign")), f = new St({ style: Nt(o, { text: t.get("text"), fill: o.getTextColor() }, { disableBox: true }), z2: 10 }
27182), h = f.getBoundingRect(), v = t.get("subtext"), c = new St({ style: Nt(s, { text: v, fill: s.getTextColor(), y: h.height + t.get("itemGap"), verticalAlign: "top" }, { disableBox: true }), z2: 10 }), p = t.get("link"), d = t.get("sublink"), g = t.get("triggerEvent", true);
27183      f.silent = !p && !g, c.silent = !d && !g, p && f.on("click", function() {
27184        zf(p, "_" + t.get("target"));
27185      }), d && c.on("click", function() {
27186        zf(d, "_" + t.get("subtarget"));
27187      }), it(f).eventData = it(c).eventData = g ? { componentType: "title", componentIndex: t.componentIndex } : null, i.add(f), v && i.add(c);
27188      var y = i.getBoundingRect(), m = t.getBoxLayoutParams();
27189      m.width = y.width, m.height = y.height;
27190      var _ = Qt(m, { width: n.getWidth(), height: n.getHeight() }, t.get("padding"));
27191      l || (l = t.get("left") || t.get("right"), l === "middle" && (l = "center"), l === "right" ? _.x += _.width : l === "center" && (_.x += _.width / 2)), u || (u = t.get("top") || t.get("bottom"), u === "center" && (u = "middle"), u === "bottom" ? _.y += _.height : u === "middle" && (_.y += _.height / 2), u = u || "top"), i.x = _.x, i.y = _.y, i.markRedraw();
27192      var S = { align: l, verticalAlign: u };
27193      f.setStyle(S), c.setStyle(S), y = i.getBoundingRect();
27194      var b = _.margin, x = t.getItemStyle(["color", "opacity"]);
27195      x.fill = t.get("backgroundColor");
27196      var w = new xt({ shape: { x: y.x - b[3], y: y.y - b[0], width: y.width + b[1] + b[3], height: y.height + b[0] + b[2], r: t.get("borderRadius") }, style: x, subPixelOptimize: true, silent: true });
27197      i.add(w);
27198    }
27199  }, e.type = "title", e;
27200}(Vt);
27201function hY(r) {
27202  r.registerComponentModel(uY), r.registerComponentView(fY);
27203}
27204var ow = function(r) {
27205  N(e, r);
27206  function e() {
27207    var t = r !== null && r.apply(this, arguments) || this;
27208    return t.type = e.type, t.layoutMode = "box", t;
27209  }
27210  return e.prototype.init = function(t, a, n) {
27211    this.mergeDefaultAndTheme(t, n), this._initData();
27212  }, e.prototype.mergeOption = function(t) {
27213    r.prototype.mergeOption.apply(this, arguments), this._initData();
27214  }, e.prototype.setCurrentIndex = function(t) {
27215    t == null && (t = this.option.currentIndex);
27216    var a = this._data.count();
27217    this.option.loop ? t = (t % a + a) % a : (t >= a && (t = a - 1), t < 0 && (t = 0)), this.option.currentIndex = t;
27218  }, e.prototype.getCurrentIndex = function() {
27219    return this.option.currentIndex;
27220  }, e.prototype.isIndexMax = function() {
27221    return this.getCurrentIndex() >= this._data.count() - 1;
27222  }, e.prototype.setPlayState = function(t) {
27223    this.option.autoPlay = !!t;
27224  }, e.prototype.getPlayState = function() {
27225    return !!this.option.autoPlay;
27226  }, e.prototype._initData = function() {
27227    var t = this.option, a = t.data || [], n = t.axisType, i = this._names = [], o;
27228    n === "category" ? (o = [], D(a, function(u, f) {
27229      var h = te(Mo(u), ""), v;
27230      tt(u) ? (v = rt(u), v.value = f) : v = f, o.push(v), i.push(h);
27231    })) : o = a;
27232    var s = { category: "ordinal", time: "time", value: "number" }[n] || "number", l = this._data = new be([{ name: "value", type: s }], this);
27233    l.initData(o, i);
27234  }, e.prototype.getData = function() {
27235    return this._data;
27236  }, e.prototype.getCategories = function() {
27237    if (this.get("axisType") === "category") return this._names.slice();
27238  }, e.type = "timeline", e.defaultOption = { z: 4, show: true, axisType: "time", realtime: true, left: "20%", top: null, right: "20%", bottom: 0, width: null, height: 40, padding: 5, controlPosition: "left", autoPlay: false, rewind: false, loop: true, playInterval: 2e3, currentIndex: 0, itemStyle: {}, label: { color: "#000" }, data: [] }, e;
27239}(gt), TL = function(r) {
27240  N(e, r);
27241  function e() {
27242    var t = r !== null && r.apply(this, arguments) || this;
27243    return t.type = e.type, t;
27244  }
27245  return e.type = "timeline.slider", e.defaultOption = fn(ow.defaultOption, { backgroundColor: "rgba(0,0,0,0)", borderColor: "#ccc", borderWidth: 0, orient: "horizontal", inverse: false, tooltip: { trigger: "item" }, symbol: "circle", symbolSize: 12, lineStyle: { show: true, width: 2, color: "#DAE1F5" }, label: { position: "auto", show: true, 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: true, animationDuration: 300, animationEasing: "quinticInOut" }, controlStyle: { show: true, showPlayBtn: true, showPrevBtn: true, showNextBtn: true, itemSize: 24, itemGap: 12, position: "left", playIcon: "path://M31.6,53C17.5,53,6,41.5,6,27.4S1
272457.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: true, color: "#6f778d" }, itemStyle: { color: "#316BF3" }, controlStyle: { color: "#316BF3", borderColor: "#316BF3", borderWidth: 2 } }, progress: { lineStyle: { color: "#316BF3" }, itemStyle: { color: "#316BF3" }, label: { color: "#6f778d" } }, data: [] }), e;
27246}(ow);
27247Xt(TL, Yh.prototype);
27248var vY = function(r) {
27249  N(e, r);
27250  function e() {
27251    var t = r !== null && r.apply(this, arguments) || this;
27252    return t.type = e.type, t;
27253  }
27254  return e.type = "timeline", e;
27255}(Vt), cY = function(r) {
27256  N(e, r);
27257  function e(t, a, n, i) {
27258    var o = r.call(this, t, a, n) || this;
27259    return o.type = i || "value", o;
27260  }
27261  return e.prototype.getLabelModel = function() {
27262    return this.model.getModel("label");
27263  }, e.prototype.isHorizontal = function() {
27264    return this.model.get("orient") === "horizontal";
27265  }, e;
27266}(yr), Sp = Math.PI, sw = bt(), pY = function(r) {
27267  N(e, r);
27268  function e() {
27269    var t = r !== null && r.apply(this, arguments) || this;
27270    return t.type = e.type, t;
27271  }
27272  return e.prototype.init = function(t, a) {
27273    this.api = a;
27274  }, e.prototype.render = function(t, a, n) {
27275    if (this.model = t, this.api = n, this.ecModel = a, this.group.removeAll(), t.get("show", true)) {
27276      var i = this._layout(t, n), o = this._createGroup("_mainGroup"), s = this._createGroup("_labelGroup"), l = this._axis = this._createAxis(i, t);
27277      t.formatTooltip = function(u) {
27278        var f = l.scale.getLabel({ value: u });
27279        return le("nameValue", { noName: true, value: f });
27280      }, D(["AxisLine", "AxisTick", "Control", "CurrentPointer"], function(u) {
27281        this["_render" + u](i, o, l, t);
27282      }, this), this._renderAxisLabel(i, s, l, t), this._position(i, t);
27283    }
27284    this._doPlayStop(), this._updateTicksStatus();
27285  }, e.prototype.remove = function() {
27286    this._clearTimer(), this.group.removeAll();
27287  }, e.prototype.dispose = function() {
27288    this._clearTimer();
27289  }, e.prototype._layout = function(t, a) {
27290    var n = t.get(["label", "position"]), i = t.get("orient"), o = gY(t, a), s;
27291    n == null || n === "auto" ? s = i === "horizontal" ? o.y + o.height / 2 < a.getHeight() / 2 ? "-" : "+" : o.x + o.width / 2 < a.getWidth() / 2 ? "+" : "-" : Y(n) ? s = { horizontal: { top: "-", bottom: "+" }, vertical: { left: "-", right: "+" } }[i][n] : s = n;
27292    var l = { horizontal: "center", vertical: s >= 0 || s === "+" ? "left" : "right" }, u = { horizontal: s >= 0 || s === "+" ? "top" : "bottom", vertical: "middle" }, f = { horizontal: 0, vertical: Sp / 2 }, h = i === "vertical" ? o.height : o.width, v = t.getModel("controlStyle"), c = v.get("show", true), p = c ? v.get("itemSize") : 0, d = c ? v.get("itemGap") : 0, g = p + d, y = t.get(["label", "rotate"]) || 0;
27293    y = y * Sp / 180;
27294    var m, _, S, b = v.get("position", true), x = c && v.get("showPlayBtn", true), w = c && v.get("showPrevBtn", true), T = c && v.get("showNextBtn", true), C = 0, A = h;
27295    b === "left" || b === "bottom" ? (x && (m = [0, 0], C += g), w && (_ = [C, 0], C += g), T && (S = [A - p, 0], A -= g)) : (x && (m = [A - p, 0], A -= g), w && (_ = [0, 0], C += g), T && (S = [A - p, 0], A -= g));
27296    var M = [C, A];
27297    return t.get("inverse") && M.reverse(), { viewRect: o, mainLength: h, orient: i, rotation: f[i], labelRotation: y, labelPosOpt: s, labelAlign: t.get(["label", "align"]) || l[i], labelBaseline: t.get(["label", "verticalAlign"]) || t.get(["label", "baseline"]) || u[i], playPosition: m, prevBtnPosition: _, nextBtnPosition: S, axisExtent: M, controlSize: p, controlGa
27297p: d };
27298  }, e.prototype._position = function(t, a) {
27299    var n = this._mainGroup, i = this._labelGroup, o = t.viewRect;
27300    if (t.orient === "vertical") {
27301      var s = He(), l = o.x, u = o.y + o.height;
27302      Pr(s, s, [-l, -u]), ln(s, s, -Sp / 2), Pr(s, s, [l, u]), o = o.clone(), o.applyTransform(s);
27303    }
27304    var f = m(o), h = m(n.getBoundingRect()), v = m(i.getBoundingRect()), c = [n.x, n.y], p = [i.x, i.y];
27305    p[0] = c[0] = f[0][0];
27306    var d = t.labelPosOpt;
27307    if (d == null || Y(d)) {
27308      var g = d === "+" ? 0 : 1;
27309      _(c, h, f, 1, g), _(p, v, f, 1, 1 - g);
27310    } else {
27311      var g = d >= 0 ? 0 : 1;
27312      _(c, h, f, 1, g), p[1] = c[1] + d;
27313    }
27314    n.setPosition(c), i.setPosition(p), n.rotation = i.rotation = t.rotation, y(n), y(i);
27315    function y(S) {
27316      S.originX = f[0][0] - S.x, S.originY = f[1][0] - S.y;
27317    }
27318    function m(S) {
27319      return [[S.x, S.x + S.width], [S.y, S.y + S.height]];
27320    }
27321    function _(S, b, x, w, T) {
27322      S[w] += x[w][T] - b[w][T];
27323    }
27324  }, e.prototype._createAxis = function(t, a) {
27325    var n = a.getData(), i = a.get("axisType"), o = dY(a, i);
27326    o.getTicks = function() {
27327      return n.mapArray(["value"], function(u) {
27328        return { value: u };
27329      });
27330    };
27331    var s = n.getDataExtent("value");
27332    o.setExtent(s[0], s[1]), o.calcNiceTicks();
27333    var l = new cY("value", o, t.axisExtent, i);
27334    return l.model = a, l;
27335  }, e.prototype._createGroup = function(t) {
27336    var a = this[t] = new at();
27337    return this.group.add(a), a;
27338  }, e.prototype._renderAxisLine = function(t, a, n, i) {
27339    var o = n.getExtent();
27340    if (i.get(["lineStyle", "show"])) {
27341      var s = new ee({ shape: { x1: o[0], y1: 0, x2: o[1], y2: 0 }, style: z({ lineCap: "round" }, i.getModel("lineStyle").getLineStyle()), silent: true, z2: 1 });
27342      a.add(s);
27343      var l = this._progressLine = new ee({ shape: { x1: o[0], x2: this._currentPointer ? this._currentPointer.x : o[0], y1: 0, y2: 0 }, style: Q({ lineCap: "round", lineWidth: s.style.lineWidth }, i.getModel(["progress", "lineStyle"]).getLineStyle()), silent: true, z2: 1 });
27344      a.add(l);
27345    }
27346  }, e.prototype._renderAxisTick = function(t, a, n, i) {
27347    var o = this, s = i.getData(), l = n.scale.getTicks();
27348    this._tickSymbols = [], D(l, function(u) {
27349      var f = n.dataToCoord(u.value), h = s.getItemModel(u.value), v = h.getModel("itemStyle"), c = h.getModel(["emphasis", "itemStyle"]), p = h.getModel(["progress", "itemStyle"]), d = { x: f, y: 0, onclick: $(o._changeTimeline, o, u.value) }, g = lw(h, v, a, d);
27350      g.ensureState("emphasis").style = c.getItemStyle(), g.ensureState("progress").style = p.getItemStyle(), Za(g);
27351      var y = it(g);
27352      h.get("tooltip") ? (y.dataIndex = u.value, y.dataModel = i) : y.dataIndex = y.dataModel = null, o._tickSymbols.push(g);
27353    });
27354  }, e.prototype._renderAxisLabel = function(t, a, n, i) {
27355    var o = this, s = n.getLabelModel();
27356    if (s.get("show")) {
27357      var l = i.getData(), u = n.getViewLabels();
27358      this._tickLabels = [], D(u, function(f) {
27359        var h = f.tickValue, v = l.getItemModel(h), c = v.getModel("label"), p = v.getModel(["emphasis", "label"]), d = v.getModel(["progress", "label"]), g = n.dataToCoord(f.tickValue), y = new St({ x: g, y: 0, rotation: t.labelRotation - t.rotation, onclick: $(o._changeTimeline, o, h), silent: false, style: Nt(c, { text: f.formattedLabel, align: t.labelAlign, verticalAlign: t.labelBaseline }) });
27360        y.ensureState("emphasis").style = Nt(p), y.ensureState("progress").style = Nt(d), a.add(y), Za(y), sw(y).dataIndex = h, o._tickLabels.push(y);
27361      });
27362    }
27363  }, e.prototype._renderControl = function(t, a, n, i) {
27364    var o = t.controlSize, s = t.rotation, l = i.getModel("controlStyle").getItemStyle(), u = i.getModel(["emphasis", "controlStyle"]).getItemStyle(), f = i.getPlayState(), h = i.get("inverse", true);
27365    v(t.nextBtnPosition, "next", $(this._changeTimeline, this, h ? "-" : "+")), v(t.prevBtnPosition, "prev", $(this._changeTimeline, this, h ? "+" : "-")), v(t.playPosition, f ? "stop" : "play", $(this._handlePlayClick, this, !f), true);
27366    function v(c, p, d, g) {
27367      if (c) {
27368        var y = Rr(st(i.get(["controlStyle", p + "BtnSize"]), o), o), m = [0, -y / 2, y, y], _ = yY(i, p + "Icon", m, { x: c[0], y: c[1], originX: o / 2, originY: 0, rotation: g ? -s : 0, rectHover: true, style: l, onclick: d });
27369        _.ensureState("emphasis").style = u, a.add(_), Za(_);
27370      }
27371    }
27372  }, e.prototype._renderCurrentPointer = function(t, a, n, i) {
27373    var o = i.getData(), s = i.getCurrentIndex(), l = o.getItemModel(s).getModel("checkpointStyle"), u = this, f = { onCreate: function(h) {
27374      h.draggable = true, h.drift = $(u._handlePointerDrag, u), h.ondragend = $(u._handlePointerDragend, u), uw(h, u._progressLine, s, n, i, true);
27375    }
27375, onUpdate: function(h) {
27376      uw(h, u._progressLine, s, n, i);
27377    } };
27378    this._currentPointer = lw(l, l, this._mainGroup, {}, this._currentPointer, f);
27379  }, e.prototype._handlePlayClick = function(t) {
27380    this._clearTimer(), this.api.dispatchAction({ type: "timelinePlayChange", playState: t, from: this.uid });
27381  }, e.prototype._handlePointerDrag = function(t, a, n) {
27382    this._clearTimer(), this._pointerChangeTimeline([n.offsetX, n.offsetY]);
27383  }, e.prototype._handlePointerDragend = function(t) {
27384    this._pointerChangeTimeline([t.offsetX, t.offsetY], true);
27385  }, e.prototype._pointerChangeTimeline = function(t, a) {
27386    var n = this._toAxisCoord(t)[0], i = this._axis, o = Xe(i.getExtent().slice());
27387    n > o[1] && (n = o[1]), n < o[0] && (n = o[0]), this._currentPointer.x = n, this._currentPointer.markRedraw();
27388    var s = this._progressLine;
27389    s && (s.shape.x2 = n, s.dirty());
27390    var l = this._findNearestTick(n), u = this.model;
27391    (a || l !== u.getCurrentIndex() && u.get("realtime")) && this._changeTimeline(l);
27392  }, e.prototype._doPlayStop = function() {
27393    var t = this;
27394    this._clearTimer(), this.model.getPlayState() && (this._timer = setTimeout(function() {
27395      var a = t.model;
27396      t._changeTimeline(a.getCurrentIndex() + (a.get("rewind", true) ? -1 : 1));
27397    }, this.model.get("playInterval")));
27398  }, e.prototype._toAxisCoord = function(t) {
27399    var a = this._mainGroup.getLocalTransform();
27400    return Ir(t, a, true);
27401  }, e.prototype._findNearestTick = function(t) {
27402    var a = this.model.getData(), n = 1 / 0, i, o = this._axis;
27403    return a.each(["value"], function(s, l) {
27404      var u = o.dataToCoord(s), f = Math.abs(u - t);
27405      f < n && (n = f, i = l);
27406    }), i;
27407  }, e.prototype._clearTimer = function() {
27408    this._timer && (clearTimeout(this._timer), this._timer = null);
27409  }, e.prototype._changeTimeline = function(t) {
27410    var a = this.model.getCurrentIndex();
27411    t === "+" ? t = a + 1 : t === "-" && (t = a - 1), this.api.dispatchAction({ type: "timelineChange", currentIndex: t, from: this.uid });
27412  }, e.prototype._updateTicksStatus = function() {
27413    var t = this.model.getCurrentIndex(), a = this._tickSymbols, n = this._tickLabels;
27414    if (a) for (var i = 0; i < a.length; i++) a && a[i] && a[i].toggleState("progress", i < t);
27415    if (n) for (var i = 0; i < n.length; i++) n && n[i] && n[i].toggleState("progress", sw(n[i]).dataIndex <= t);
27416  }, e.type = "timeline.slider", e;
27417}(vY);
27418function dY(r, e) {
27419  if (e = e || r.get("type"), e) switch (e) {
27420    case "category":
27421      return new Qh({ ordinalMeta: r.getCategories(), extent: [1 / 0, -1 / 0] });
27422    case "time":
27423      return new Gy({ locale: r.ecModel.getLocaleModel(), useUTC: r.ecModel.get("useUTC") });
27424    default:
27425      return new ba();
27426  }
27427}
27428function gY(r, e) {
27429  return Qt(r.getBoxLayoutParams(), { width: e.getWidth(), height: e.getHeight() }, r.get("padding"));
27430}
27431function yY(r, e, t, a) {
27432  var n = a.style, i = ko(r.get(["controlStyle", e]), a || {}, new ht(t[0], t[1], t[2], t[3]));
27433  return n && i.setStyle(n), i;
27434}
27435function lw(r, e, t, a, n, i) {
27436  var o = e.get("color");
27437  if (n) n.setColor(o), t.add(n), i && i.onUpdate(n);
27438  else {
27439    var s = r.get("symbol");
27440    n = qt(s, -1, -1, 2, 2, o), n.setStyle("strokeNoScale", true), t.add(n), i && i.onCreate(n);
27441  }
27442  var l = e.getItemStyle(["color"]);
27443  n.setStyle(l), a = ut({ rectHover: true, z2: 100 }, a, true);
27444  var u = Ho(r.get("symbolSize"));
27445  a.scaleX = u[0] / 2, a.scaleY = u[1] / 2;
27446  var f = wi(r.get("symbolOffset"), u);
27447  f && (a.x = (a.x || 0) + f[0], a.y = (a.y || 0) + f[1]);
27448  var h = r.get("symbolRotate");
27449  return a.rotation = (h || 0) * Math.PI / 180 || 0, n.attr(a), n.updateTransform(), n;
27450}
27451function uw(r, e, t, a, n, i) {
27452  if (!r.dragging) {
27453    var o = n.getModel("checkpointStyle"), s = a.dataToCoord(n.getData().get("value", t));
27454    if (i || !o.get("animation", true)) r.attr({ x: s, y: 0 }), e && e.attr({ shape: { x2: s } });
27455    else {
27456      var l = { duration: o.get("animationDuration", true), easing: o.get("animationEasing", true) };
27457      r.stopAnimation(null, true), r.animateTo({ x: s, y: 0 }, l), e && e.animateTo({ shape: { x2: s } }, l);
27458    }
27459  }
27460}
27461function mY(r) {
27462  r.registerAction({ type: "timelineChange", event: "timelineChanged", update: "prepareAndUpdate" }, function(e, t, a) {
27463    var n = t.getComponent("timeline");
27464    return n && e.currentIndex != null && (n.setCurrentIndex(e.currentIndex), !n.get("loop", true) && n.isIndexMax() && n.getPlayState() && (n.setPlayState(false), a.dispatchAction({ type: "timelinePlayChange", playState: false, from: e.from }))), t.resetOption("timeline", { replaceMerge: n.get("replaceMerge", true) }), Q({ currentIndex: n.option.currentIndex }, e);
27465  }), r.registerAction({ type: "timelinePlayChange", event: "timelinePlayChanged", update: "update" }, function(e, t) {
27466    var a = t.getComponent("timeline");
27467    a && e.playState != null && a.setPlayState(e.playState);
27468  });
27469}
27470function _Y(r) {
27471  var e = r && r.timeline;
27472  V(e) || (e = e ? [e] : []), D(e, function(t) {
27473    t && SY(t);
27474  });
27475}
27476function SY(r) {
27477  var e = r.type, t = { number: "value", time: "time" };
27478  if (t[e] && (r.axisType = t[e], delete r.type), fw(r), $n(r, "controlPosition")) {
27479    var a = r.controlStyle || (r.controlStyle = {});
27480    $n(a, "position") || (a.position = r.controlPosition), a.position === "none" && !$n(a, "show") && (a.show = false, delete a.position), delete r.controlPosition;
27481  }
27482  D(r.data || [], function(n) {
27483    tt(n) && !V(n) && (!$n(n, "value") && $n(n, "name") && (n.value = n.name), fw(n));
27484  });
27485}
27486function fw(r) {
27487  var e = r.itemStyle || (r.itemStyle = {}
27487), t = e.emphasis || (e.emphasis = {}), a = r.label || r.label || {}, n = a.normal || (a.normal = {}), i = { normal: 1, emphasis: 1 };
27488  D(a, function(o, s) {
27489    !i[s] && !$n(n, s) && (n[s] = o);
27490  }), t.label && !$n(a, "emphasis") && (a.emphasis = t.label, delete t.label);
27491}
27492function $n(r, e) {
27493  return r.hasOwnProperty(e);
27494}
27495function xY(r) {
27496  r.registerComponentModel(TL), r.registerComponentView(pY), r.registerSubTypeDefaulter("timeline", function() {
27497    return "slider";
27498  }), mY(r), r.registerPreprocessor(_Y);
27499}
27500function Um(r, e) {
27501  if (!r) return false;
27502  for (var t = V(r) ? r : [r], a = 0; a < t.length; a++) if (t[a] && t[a][e]) return true;
27503  return false;
27504}
27505function Zu(r) {
27506  fi(r, "label", ["show"]);
27507}
27508var qu = bt(), Ta = function(r) {
27509  N(e, r);
27510  function e() {
27511    var t = r !== null && r.apply(this, arguments) || this;
27512    return t.type = e.type, t.createdBySelf = false, t;
27513  }
27514  return e.prototype.init = function(t, a, n) {
27515    this.mergeDefaultAndTheme(t, n), this._mergeOption(t, n, false, true);
27516  }, e.prototype.isAnimationEnabled = function() {
27517    if (yt.node) return false;
27518    var t = this.__hostSeries;
27519    return this.getShallow("animation") && t && t.isAnimationEnabled();
27520  }, e.prototype.mergeOption = function(t, a) {
27521    this._mergeOption(t, a, false, false);
27522  }, e.prototype._mergeOption = function(t, a, n, i) {
27523    var o = this.mainType;
27524    n || a.eachSeries(function(s) {
27525      var l = s.get(this.mainType, true), u = qu(s)[o];
27526      if (!l || !l.data) {
27527        qu(s)[o] = null;
27528        return;
27529      }
27530      u ? u._mergeOption(l, a, true) : (i && Zu(l), D(l.data, function(f) {
27531        f instanceof Array ? (Zu(f[0]), Zu(f[1])) : Zu(f);
27532      }), u = this.createMarkerModelFromSeries(l, this, a), z(u, { mainType: this.mainType, seriesIndex: s.seriesIndex, name: s.name, createdBySelf: true }), u.__hostSeries = s), qu(s)[o] = u;
27533    }, this);
27534  }, e.prototype.formatTooltip = function(t, a, n) {
27535    var i = this.getData(), o = this.getRawValue(t), s = i.getName(t);
27536    return le("section", { header: this.name, blocks: [le("nameValue", { name: s, value: o, noName: !s, noValue: o == null })] });
27537  }, e.prototype.getData = function() {
27538    return this._data;
27539  }, e.prototype.setData = function(t) {
27540    this._data = t;
27541  }, e.prototype.getDataParams = function(t, a) {
27542    var n = Yh.prototype.getDataParams.call(this, t, a), i = this.__hostSeries;
27543    return i && (n.seriesId = i.id, n.seriesName = i.name, n.seriesType = i.subType), n;
27544  }, e.getMarkerModelFromSeries = function(t, a) {
27545    return qu(t)[a];
27546  }, e.type = "marker", e.dependencies = ["series", "grid", "polar", "geo"], e;
27547}(gt);
27548Xt(Ta, Yh.prototype);
27549var bY = function(r) {
27550  N(e, r);
27551  function e() {
27552    var t = r !== null && r.apply(this, arguments) || this;
27553    return t.type = e.type, t;
27554  }
27555  return e.prototype.createMarkerModelFromSeries = function(t, a, n) {
27556    return new e(t, a, n);
27557  }, e.type = "markPoint", e.defaultOption = { z: 5, symbol: "pin", symbolSize: 50, tooltip: { trigger: "item" }, label: { show: true, position: "inside" }, itemStyle: { borderWidth: 2 }, emphasis: { label: { show: true } } }, e;
27558}(Ta);
27559function mg(r) {
27560  return !(isNaN(parseFloat(r.x)) && isNaN(parseFloat(r.y)));
27561}
27562function wY(r) {
27563  return !isNaN(parseFloat(r.x)) && !isNaN(parseFloat(r.y));
27564}
27565function Ku(r, e, t, a, n, i) {
27566  var o = [], s = xa(e, a), l = s ? e.getCalculationInfo("stackResultDimension") : a, u = Ym(e, l, r), f = e.indicesOfNearest(l, u)[0];
27567  o[n] = e.get(t, f), o[i] = e.get(l, f);
27568  var h = e.get(a, f), v = Tr(e.get(a, f));
27569  return v = Math.min(v, 20), v >= 0 && (o[i] = +o[i].toFixed(v)), [o, h];
27570}
27571var xp = { min: lt(Ku, "min"), max: lt(Ku, "max"), average: lt(Ku, "average"), median: lt(Ku, "median") };
27572function Dl(r, e) {
27573  if (e) {
27574    var t = r.getData(), a = r.coordinateSystem, n = a && a.dimensions;
27575    if (!wY(e) && !V(e.coord) && V(n)) {
27576      var i = CL(e, t, a, r);
27577      if (e = rt(e), e.type && xp[e.type] && i.baseAxis && i.valueAxis) {
27578        var o = vt(n, i.baseAxis.dim), s = vt(n, i.valueAxis.dim), l = xp[e.type](t, i.baseDataDim, i.valueDataDim, o, s);
27579        e.coord = l[0], e.value = l[1];
27580      } else e.coord = [e.xAxis != null ? e.xAxis : e.radiusAxis, e.yAxis != null ? e.yAxis : e.angleAxis];
27581    }
27582    if (e.coord == null || !V(n)) e.coord = [];
27583    else for (var u = e.coord, f = 0; f < 2; f++) xp[u[f]] && (u[f] = Ym(t, t.mapDimension(n[f]), u[f]));
27584    return e;
27585  }
27586}
27587function CL(r, e, t, a) {
27588  var n = {};
27589  return r.valueIndex != null || r.valueDim != null ? (n.valueDataDim = r.valueIndex != null ? e.getDimension(r.valueIndex) : r.valueDim, n.valueAxis = t.getAxis(TY(a, n.valueDataDim)), n.baseAxis = t.getOtherAxis(n.valueAxis), n.baseDataDim = e.mapDimension(n.baseAxis.dim)) : (n.baseAxis = a.getBaseAxis(), n.valueAxis = t.getOtherAxis(n.baseAxis), n.baseDataDim = e.mapDimension(n.baseAxis.dim), n.valueDataDim = e.mapDimension(n.valueAxis.dim)), n;
27590}
27591function TY(r, e) {
27592  var t = r.getData().getDimensionInfo(e);
27593  return t && t.coordDim;
27594}
27595function Ml(r, e) {
27596  return r && r.containData && e.coord && !mg(e) ? r.containData(e.coord) : true;
27597}
27598function CY(r, e, t) {
27599  return r && r.containZone && e.coord && t.coord && !mg(e) && !mg(t) ? r.containZone(e.coord, t.coord) : true;
27600}
27601function AL(r, e) {
27602  return r ? function(t, a, n, i) {
27603    var o = i < 2 ? t.coord && t.coord[i] : t.value;
27604    return ja(o, e[i]);
27605  } : function(t, a, n, i) {
27606    return ja(t.value, e[i]);
27607  };
27608}
27609function Ym(r, e, t) {
27610  if (t === "average") {
27611    var a = 0, n = 0;
27612    return r.each(e, function(i, o) {
27613      isNaN(i) || (a += i, n++);
27614    }), a / n;
27615  } else return t === "median" ? r.getMedian(e) : r.getDataExtent(e)[t === "max" ? 1 : 0];
27616}
27617var bp = bt(), $m = function(r) {
27618  N(e, r);
27619  function e() {
27620    var t = r !== null && r.apply(this, arguments) || this;
27621    return t.type = e.type, t;
27622  }
27623  return e.prototype.init = function() {
27624    this.markerGroupMap = Z();
27625  }, e.prototype.render = function(t, a, n) {
27626    var i = this, o = this.markerGroupMap;
27627    o.each(function(s) {
27628      bp(s).keep = false;
27629    }), a.eachSeries(function(s) {
27630      var l = Ta.getMarkerModelFromSeries(s, i.type);
27631      l && i.renderSeries(s, l, a, n);
27632    }), o.each(function(s) {
27633      !bp(s).keep && i.group.remove(s.group);
27634    });
27635  }, e.prototype.markKeep = function(t) {
27636    bp(t).keep = true;
27637  }, e.prototype.toggleBlurSeries = function(t, a) {
27638    var n = this;
27639    D(t, function(i) {
27640      var o = Ta.getMarkerModelFromSeries(i, n.type);
27641      if (o) {
27642        var s = o.getData();
27643        s.eachItemGraphicEl(function(l) {
27644          l && (a ? yC(l) : Qg(l));
27645        });
27646      }
27647    });
27648  }, e.type = "marker", e;
27649}(Vt);
27650function hw(r, e, t) {
27651  var a = e.coordinateSystem;
27652  r.each(function(n) {
27653    var i = r.getItemModel(n), o, s = W(i.get("x"), t.getWidth()), l = W(i.get("y"), t.getHeight());
27654    if (!isNaN(s) && !isNaN(l)) o = [s, l];
27655    else if (e.getMarkerPosition) o = e.getMarkerPosition(r.getValues(r.dimensions, n));
27656    else if (a) {
27657      var u = r.get(a.dimensions[0], n), f = r.get(a.dimensions[1], n);
27658      o = a.dataToPoint([u, f]);
27659    }
27660    isNaN(s) || (o[0] = s), isNaN(l) || (o[1] = l), r.setItemLayout(n, o);
27661  });
27662}
27663var AY = function(r) {
27664  N(e, r);
27665  function e() {
27666    var t = r !== null && r.apply(this, arguments) || this;
27667    return t.type = e.type, t;
27668  }
27669  return e.prototype.updateTransform = function(t, a, n) {
27670    a.eachSeries(function(i) {
27671      var o = Ta.getMarkerModelFromSeries(i, "markPoint");
27672      o && (hw(o.getData(), i, n), this.markerGroupMap.get(i.id).updateLayout());
27673    }, this);
27674  }, e.prototype.renderSeries = function(t, a, n, i) {
27675    var o = t.coordinateSystem, s = t.id, l = t.getData(), u = this.markerGroupMap, f = u.get(s) || u.set(s, new Ul()), h = DY(o, t, a);
27676    a.setData(h), hw(a.getData(), t, i), h.each(function(v) {
27677      var c = h.getItemModel(v), p = c.getShallow("symbol"), d = c.getShallow("symbolSize"), g = c.getShallow("symbolRotate"), y = c.getShallow("symbolOffset"), m = c.getShallow("symbolKeepAspect");
27678      if (j(p) || j(d) || j(g) || j(y)) {
27679        var _ = a.getRawValue(v), S = a.getDataParams(v);
27680        j(p) && (p = p(_, S)), j(d) && (d = d(_, S)), j(g) && (g = g(_, S)), j(y) && (y = y(_, S));
27681      }
27682      var b = c.getModel("itemStyle").getItemStyle(), x = Fl(l, "color");
27683      b.fill || (b.fill = x), h.setItemVisual(v, { symbol: p, symbolSize: d, symbolRotate: g, symbolOffset: y, symbolKeepAspect: m, style: b });
27684    }), f.updateData(h), this.group.add(f.group), h.eachItemGraphicEl(function(v) {
27685      v.traverse(function(c) {
27686        it(c).dataModel = a;
27687      });
27688    }), this.markKeep(f), f.group.silent = a.get("silent") || t.get("silent");
27689  }, e.type = "markPoint", e;
27690}($m);
27691function DY(r, e, t) {
27692  var a;
27693  r ? a = G(r && r.dimensions, function(s) {
27694    var l = e.getData().getDimensionInfo(e.getData().mapDimension(s)) || {};
27695    return z(z({}, l), { name: s, ordinalMeta: null });
27696  }) : a = [{ name: "value", type: "float" }];
27697  var n = new be(a, t), i = G(t.get("data"), lt(Dl, e));
27698  r && (i = Ct(i, lt(Ml, r)));
27699  var o = AL(!!r, a);
27700  return n.initData(i, null, o), n;
27701}
27702function MY(r) {
27703  r.registerComponentModel(bY), r.registerComponentView(AY), r.registerPreprocessor(function(e) {
27704    Um(e.series, "markPoint") && (e.markPoint = e.markPoint || {});
27705  });
27706}
27707var IY = function(r) {
27708  N(e, r);
27709  function e() {
27710    var t = r !== null && r.apply(this, arguments) || this;
27711    return t.type = e.type, t;
27712  }
27713  return e.prototype.createMarkerModelFromSeries = function(t, a, n) {
27714    return new e(t, a, n);
27715  }, e.type = "markLine", e.defaultOption = { z: 5, symbol: ["circle", "arrow"], symbolSize: [8, 16], symbolOffset: 0, precision: 2, tooltip: { trigger: "item" }, label: { show: true, position: "end", distance: 5 }, lineStyle: { type: "dashed" }, emphasis: { label: { show: true }, lineStyle: { width: 3 } }, animationEasing: "linear" }, e;
27716}(Ta), ju = bt(), LY = function(r, e, t, a) {
27717  var n = r.getData(), i;
27718  if (V(a)) i = a;
27719  else {
27720    var o = a.type;
27721    if (o === "min" || o === "max" || o === "average" || o === "median" || a.xAxis != null || a.yAxis != null) {
27722      var s = void 0, l = void 0;
27723      if (a.yAxis != null || a.xAxis != null) s = e.getAxis(a.yAxis != null ? "y" : "x"), l = ne(a.yAxis, a.xAxis);
27724      else {
27725        var u = CL(a, n, e, r);
27726        s = u.valueAxis;
27727        var f = zy(n, u.valueDataDim);
27728        l = Ym(n, f, o);
27729      }
27730      var h = s.dim === "x" ? 0 : 1, v = 1 - h, c = rt(a), p = { coord: [] };
27731      c.type = null, c.coord = [], c.coord[v] = -1 / 0, p.coord[v] = 1 / 0;
27732      var d = t.get("precision");
27733      d >= 0 && wt(l) && (l = +l.toFixed(Math.min(d, 20))), c.coord[h] = p.coord[h] = l, i = [c, p, { type: o, valueIndex: a.valueIndex, value: l }];
27734    } else i = [];
27735  }
27736  var g = [Dl(r, i[0]), Dl(r, i[1]), z({}, i[2])];
27737  return g[2].type = g[2].type || null, ut(g[2], g[0]), ut(g[2], g[1]), g;
27738};
27739function hh(r) {
27740  return !isNaN(r) && !isFinite(r);
27741}
27742function vw(r, e, t, a) {
27743  var n = 1 - r, i = a.dimensions[r];
27744  return hh(e[n]) && hh(t[n]) && e[r] === t[r] && a.getAxis(i).containData(e[r]);
27745}
27746function PY(r, e) {
27747  if (r.type === "cartesian2d") {
27748    var t = e[0].coord, a = e[1].coord;
27749    if (t && a && (vw(1, t, a, r) || vw(0, t, a, r))) return true;
27750  }
27751  return Ml(r, e[0]) && Ml(r, e[1]);
27752}
27753function wp(r, e, t, a, n) {
27754  var i = a.coordinateSystem, o = r.getItemModel(e), s, l = W(o.get("x"), n.getWidth()), u = W(o.get("y"), n.getHeight());
27755  if (!isNaN(l) && !isNaN(u)) s = [l, u];
27756  else {
27757    if (a.getMarkerPosition) s = a.getMarkerPosition(r.getValues(r.dimensions, e));
27758    else {
27759      var f = i.dimensions, h = r.get(f[0], e), v = r.get(f[1], e);
27760      s = i.dataToPoint([h, v]);
27761    }
27762    if (Ti(i, "cartesian2d")) {
27763      var c = i.getAxis("x"), p = i.getAxis("y"), f = i.dimensions;
27764      hh(r.get(f[0], e)) ? s[0] = c.toGlobalCoord(c.getExtent()[t ? 0 : 1]) : hh(r.get(f[1], e)) && (s[1] = p.toGlobalCoord(p.getExtent()[t ? 0 : 1]));
27765    }
27766    isNaN(l) || (s[0] = l), isNaN(u) || (s[1] = u);
27767  }
27768  r.setItemLayout(e, s);
27769}
27770var RY = function(r) {
27771  N(e, r);
27772  function e() {
27773    var t = r !== null && r.apply(this, arguments) || this;
27774    return t.type = e.type, t;
27775  }
27776  return e.prototype.updateTransform = function(t, a, n) {
27777    a.eachSeries(function(i) {
27778      var o = Ta.getMarkerModelFromSeries(i, "markLine");
27779      if (o) {
27780        var s = o.getData(), l = ju(o).from, u = ju(o).to;
27781        l.each(function(f) {
27782          wp(l, f, true, i, n), wp(u, f, false, i, n);
27783        }), s.each(function(f) {
27784          s.setItemLayout(f, [l.getItemLayout(f), u.getItemLayout(f)]);
27785        }), this.markerGroupMap.get(i.id).updateLayout();
27786      }
27787    }, this);
27788  }, e.prototype.renderSeries = function(t, a, n, i) {
27789    var o = t.coordinateSystem, s = t.id, l = t.getData(), u = this.markerGroupMap, f = u.get(s) || u.set(s, new cm());
27790    this.group.add(f.group);
27791    var h = EY(o, t, a), v = h.from, c = h.to, p = h.line;
27792    ju(a).from = v, ju(a).to = c, a.setData(p);
27793    var d = a.get("symbol"), g = a.get("symbolSize"), y = a.get("symbolRotate"), m = a.get("symbolOffset");
27794    V(d) || (d = [d, d]), V(g) || (g = [g, g]), V(y) || (y = [y, y]), V(m) || (m = [m, m]), h.from.each(function(S) {
27795      _(v, S, true), _(c, S, false);
27796    }), p.each(function(S) {
27797      var b = p.getItemModel(S).getModel("lineStyle").getLineStyle();
27798      p.setItemLayout(S, [v.getItemLayout(S), c.getItemLayout(S)]), b.stroke == null && (b.stroke = v.getItemVisual(S, "style").fill), p.setItemVisual(S, { fromSymbolKeepAspect: v.getItemVisual(S, "symbolKeepAspect"), fromSymbolOffset: v.getItemVisual(S, "symbolOffset"), fromSymbolRotate: v.getItemVisual(S, "symbolRotate"), fromSymbolSize: v.getItemVisual(S, "symbolSize"), fromSymbol
27798: v.getItemVisual(S, "symbol"), toSymbolKeepAspect: c.getItemVisual(S, "symbolKeepAspect"), toSymbolOffset: c.getItemVisual(S, "symbolOffset"), toSymbolRotate: c.getItemVisual(S, "symbolRotate"), toSymbolSize: c.getItemVisual(S, "symbolSize"), toSymbol: c.getItemVisual(S, "symbol"), style: b });
27799    }), f.updateData(p), h.line.eachItemGraphicEl(function(S) {
27800      it(S).dataModel = a, S.traverse(function(b) {
27801        it(b).dataModel = a;
27802      });
27803    });
27804    function _(S, b, x) {
27805      var w = S.getItemModel(b);
27806      wp(S, b, x, t, i);
27807      var T = w.getModel("itemStyle").getItemStyle();
27808      T.fill == null && (T.fill = Fl(l, "color")), S.setItemVisual(b, { symbolKeepAspect: w.get("symbolKeepAspect"), symbolOffset: st(w.get("symbolOffset", true), m[x ? 0 : 1]), symbolRotate: st(w.get("symbolRotate", true), y[x ? 0 : 1]), symbolSize: st(w.get("symbolSize"), g[x ? 0 : 1]), symbol: st(w.get("symbol", true), d[x ? 0 : 1]), style: T });
27809    }
27810    this.markKeep(f), f.group.silent = a.get("silent") || t.get("silent");
27811  }, e.type = "markLine", e;
27812}($m);
27813function EY(r, e, t) {
27814  var a;
27815  r ? a = G(r && r.dimensions, function(u) {
27816    var f = e.getData().getDimensionInfo(e.getData().mapDimension(u)) || {};
27817    return z(z({}, f), { name: u, ordinalMeta: null });
27818  }) : a = [{ name: "value", type: "float" }];
27819  var n = new be(a, t), i = new be(a, t), o = new be([], t), s = G(t.get("data"), lt(LY, e, r, t));
27820  r && (s = Ct(s, lt(PY, r)));
27821  var l = AL(!!r, a);
27822  return n.initData(G(s, function(u) {
27823    return u[0];
27824  }), null, l), i.initData(G(s, function(u) {
27825    return u[1];
27826  }), null, l), o.initData(G(s, function(u) {
27827    return u[2];
27828  })), o.hasItemOption = true, { from: n, to: i, line: o };
27829}
27830function kY(r) {
27831  r.registerComponentModel(IY), r.registerComponentView(RY), r.registerPreprocessor(function(e) {
27832    Um(e.series, "markLine") && (e.markLine = e.markLine || {});
27833  });
27834}
27835var OY = function(r) {
27836  N(e, r);
27837  function e() {
27838    var t = r !== null && r.apply(this, arguments) || this;
27839    return t.type = e.type, t;
27840  }
27841  return e.prototype.createMarkerModelFromSeries = function(t, a, n) {
27842    return new e(t, a, n);
27843  }, e.type = "markArea", e.defaultOption = { z: 1, tooltip: { trigger: "item" }, animation: false, label: { show: true, position: "top" }, itemStyle: { borderWidth: 0 }, emphasis: { label: { show: true, position: "top" } } }, e;
27844}(Ta), Ju = bt(), NY = function(r, e, t, a) {
27845  var n = a[0], i = a[1];
27846  if (!(!n || !i)) {
27847    var o = Dl(r, n), s = Dl(r, i), l = o.coord, u = s.coord;
27848    l[0] = ne(l[0], -1 / 0), l[1] = ne(l[1], -1 / 0), u[0] = ne(u[0], 1 / 0), u[1] = ne(u[1], 1 / 0);
27849    var f = Sh([{}, o, s]);
27850    return f.coord = [o.coord, s.coord], f.x0 = o.x, f.y0 = o.y, f.x1 = s.x, f.y1 = s.y, f;
27851  }
27852};
27853function vh(r) {
27854  return !isNaN(r) && !isFinite(r);
27855}
27856function cw(r, e, t, a) {
27857  var n = 1 - r;
27858  return vh(e[n]) && vh(t[n]);
27859}
27860function BY(r, e) {
27861  var t = e.coord[0], a = e.coord[1], n = { coord: t, x: e.x0, y: e.y0 }, i = { coord: a, x: e.x1, y: e.y1 };
27862  return Ti(r, "cartesian2d") ? t && a && (cw(1, t, a) || cw(0, t, a)) ? true : CY(r, n, i) : Ml(r, n) || Ml(r, i);
27863}
27864function pw(r, e, t, a, n) {
27865  var i = a.coordinateSystem, o = r.getItemModel(e), s, l = W(o.get(t[0]), n.getWidth()), u = W(o.get(t[1]), n.getHeight());
27866  if (!isNaN(l) && !isNaN(u)) s = [l, u];
27867  else {
27868    if (a.getMarkerPosition) {
27869      var f = r.getValues(["x0", "y0"], e), h = r.getValues(["x1", "y1"], e), v = i.clampData(f), c = i.clampData(h), p = [];
27870      t[0] === "x0" ? p[0] = v[0] > c[0] ? h[0] : f[0] : p[0] = v[0] > c[0] ? f[0] : h[0], t[1] === "y0" ? p[1] = v[1] > c[1] ? h[1] : f[1] : p[1] = v[1] > c[1] ? f[1] : h[1], s = a.getMarkerPosition(p, t, true);
27871    } else {
27872      var d = r.get(t[0], e), g = r.get(t[1], e), y = [d, g];
27873      i.clampData && i.clampData(y, y), s = i.dataToPoint(y, true);
27874    }
27875    if (Ti(i, "cartesian2d")) {
27876      var m = i.getAxis("x"), _ = i.getAxis("y"), d = r.get(t[0], e), g = r.get(t[1], e);
27877      vh(d) ? s[0] = m.toGlobalCoord(m.getExtent()[t[0] === "x0" ? 0 : 1]) : vh(g) && (s[1] = _.toGlobalCoord(_.getExtent()[t[1] === "y0" ? 0 : 1]));
27878    }
27879    isNaN(l) || (s[0] = l), isNaN(u) || (s[1] = u);
27880  }
27881  return s;
27882}
27883var dw = [["x0", "y0"], ["x1", "y0"], ["x1", "y1"], ["x0", "y1"]], zY = function(r) {
27884  N(e, r);
27885  function e() {
27886    var t = r !== null && r.apply(this, arguments) || this;
27887    return t.type = e.type, t;
27888  }
27889  return e.prototype.updateTransform = function(t, a, n) {
27890    a.eachSeries(function(i) {
27891      var o = Ta.getMarkerModelFromSeries(i, "markArea");
27892      if (o) {
27893        var s = o.getData();
27894        s.each(function(l) {
27895          var u = G(dw, function(h) {
27896            return pw(s, l, h, i, n);
27897          });
27898          s.setItemLayout(l, u);
27899          var f = s.getItemGraphicEl(l);
27900          f.setShape("points", u);
27901        });
27902      }
27903    }, this);
27904  }, e.prototype.renderSeries = function(t, a, n, i) {
27905    var o = t.coordinateSystem, s = t.id, l = t.getData(), u = this.markerGroupMap, f = u.get(s) || u.set(s, { group: new at() });
27906    this.group.add(f.group), this.markKeep(f);
27907    var h = VY(o, t, a);
27908    a.setData(h), h.each(function(v) {
27909      var c = G(dw, function(T) {
27910        return pw(h, v, T, t, i);
27911      }), p = o.getAxis("x").scale, d = o.getAxis("y").scale, g = p.getExtent(), y = d.getExtent(), m = [p.parse(h.get("x0", v)), p.parse(h.get("x1", v))], _ = [d.parse(h.get("y0", v)), d.parse(h.get("y1", v))];
27912      Xe(m), Xe(_);
27913      var S = !(g[0] > m[1] || g[1] < m[0] || y[0] > _[1] || y[1] < _[0]), b = !S;
27914      h.setItemLayout(v, { points: c, allClipped: b });
27915      var x = h.getItemModel(v).getModel("itemStyle").getItemStyle(), w = Fl(l, "color");
27916      x.fill || (x.fill = w, Y(x.fill) && (x.fill = al(x.fill, 0.4))), x.stroke || (x.stroke = w), h.setItemVisual(v, "style", x);
27917    }), h.diff(Ju(f).data).add(function(v) {
27918      var c = h.getItemLayout(v);
27919      if (!c.allClipped) {
27920        var p = new Ce({ shape: { points: c.points } });
27921        h.setItemGraphicEl(v, p), f.group.add(p);
27922      }
27923    }).update(function(v, c) {
27924      var p = Ju(f).data.getItemGraphicEl(c), d = h.getItemLayout(v);
27925      d.allClipped ? p && f.group.remove(p) : (p ? Tt(p, { shape: { points: d.points } }, a, v) : p = new Ce({ shape: { points: d.points } }), h.setItemGraphicEl(v, p), f.group.add(p));
27926    }).remove(function(v) {
27927      var c = Ju(f).data.getItemGraphicEl(v);
27928      f.group.remove(c);
27929    }).execute(), h.eachItemGraphicEl(function(v, c) {
27930      var p = h.getItemModel(c), d = h.getItemVisual(c, "style");
27931      v.useStyle(h.getItemVisual(c, "style")), de(v, se(p), { labelFetcher: a, labelDataIndex: c, defaultText: h.getName(c) || "", inheritColor: Y(d.fill) ? al(d.fill, 1) : "#000" }
27931), pe(v, p), Wt(v, null, null, p.get(["emphasis", "disabled"])), it(v).dataModel = a;
27932    }), Ju(f).data = h, f.group.silent = a.get("silent") || t.get("silent");
27933  }, e.type = "markArea", e;
27934}($m);
27935function VY(r, e, t) {
27936  var a, n, i = ["x0", "y0", "x1", "y1"];
27937  if (r) {
27938    var o = G(r && r.dimensions, function(u) {
27939      var f = e.getData(), h = f.getDimensionInfo(f.mapDimension(u)) || {};
27940      return z(z({}, h), { name: u, ordinalMeta: null });
27941    });
27942    n = G(i, function(u, f) {
27943      return { name: u, type: o[f % 2].type };
27944    }), a = new be(n, t);
27945  } else n = [{ name: "value", type: "float" }], a = new be(n, t);
27946  var s = G(t.get("data"), lt(NY, e, r, t));
27947  r && (s = Ct(s, lt(BY, r)));
27948  var l = r ? function(u, f, h, v) {
27949    var c = u.coord[Math.floor(v / 2)][v % 2];
27950    return ja(c, n[v]);
27951  } : function(u, f, h, v) {
27952    return ja(u.value, n[v]);
27953  };
27954  return a.initData(s, null, l), a.hasItemOption = true, a;
27955}
27956function GY(r) {
27957  r.registerComponentModel(OY), r.registerComponentView(zY), r.registerPreprocessor(function(e) {
27958    Um(e.series, "markArea") && (e.markArea = e.markArea || {});
27959  });
27960}
27961var FY = function(r, e) {
27962  if (e === "all") return { type: "all", title: r.getLocaleModel().get(["legend", "selector", "all"]) };
27963  if (e === "inverse") return { type: "inverse", title: r.getLocaleModel().get(["legend", "selector", "inverse"]) };
27964}, _g = function(r) {
27965  N(e, r);
27966  function e() {
27967    var t = r !== null && r.apply(this, arguments) || this;
27968    return t.type = e.type, t.layoutMode = { type: "box", ignoreSize: true }, t;
27969  }
27970  return e.prototype.init = function(t, a, n) {
27971    this.mergeDefaultAndTheme(t, n), t.selected = t.selected || {}, this._updateSelector(t);
27972  }, e.prototype.mergeOption = function(t, a) {
27973    r.prototype.mergeOption.call(this, t, a), this._updateSelector(t);
27974  }, e.prototype._updateSelector = function(t) {
27975    var a = t.selector, n = this.ecModel;
27976    a === true && (a = t.selector = ["all", "inverse"]), V(a) && D(a, function(i, o) {
27977      Y(i) && (i = { type: i }), a[o] = ut(i, FY(n, i.type));
27978    });
27979  }, e.prototype.optionUpdated = function() {
27980    this._updateData(this.ecModel);
27981    var t = this._data;
27982    if (t[0] && this.get("selectedMode") === "single") {
27983      for (var a = false, n = 0; n < t.length; n++) {
27984        var i = t[n].get("name");
27985        if (this.isSelected(i)) {
27986          this.select(i), a = true;
27987          break;
27988        }
27989      }
27990      !a && this.select(t[0].get("name"));
27991    }
27992  }, e.prototype._updateData = function(t) {
27993    var a = [], n = [];
27994    t.eachRawSeries(function(l) {
27995      var u = l.name;
27996      n.push(u);
27997      var f;
27998      if (l.legendVisualProvider) {
27999        var h = l.legendVisualProvider, v = h.getAllNames();
28000        t.isSeriesFiltered(l) || (n = n.concat(v)), v.length ? a = a.concat(v) : f = true;
28001      } else f = true;
28002      f && Yg(l) && a.push(l.name);
28003    }), this._availableNames = n;
28004    var i = this.get("data") || a, o = Z(), s = G(i, function(l) {
28005      return (Y(l) || wt(l)) && (l = { name: l }), o.get(l.name) ? null : (o.set(l.name, true), new At(l, this, this.ecModel));
28006    }, this);
28007    this._data = Ct(s, function(l) {
28008      return !!l;
28009    });
28010  }, e.prototype.getData = function() {
28011    return this._data;
28012  }, e.prototype.select = function(t) {
28013    var a = this.option.selected, n = this.get("selectedMode");
28014    if (n === "single") {
28015      var i = this._data;
28016      D(i, function(o) {
28017        a[o.get("name")] = false;
28018      });
28019    }
28020    a[t] = true;
28021  }, e.prototype.unSelect = function(t) {
28022    this.get("selectedMode") !== "single" && (this.option.selected[t] = false);
28023  }, e.prototype.toggleSelected = function(t) {
28024    var a = this.option.selected;
28025    a.hasOwnProperty(t) || (a[t] = true), this[a[t] ? "unSelect" : "select"](t);
28026  }, e.prototype.allSelect = function() {
28027    var t = this._data, a = this.option.selected;
28028    D(t, function(n) {
28029      a[n.get("name", true)] = true;
28030    });
28031  }, e.prototype.inverseSelect = function() {
28032    var t = this._data, a = this.option.selected;
28033    D(t, function(n) {
28034      var i = n.get("name", true);
28035      a.hasOwnProperty(i) || (a[i] = true), a[i] = !a[i];
28036    });
28037  }, e.prototype.isSelected = function(t) {
28038    var a = this.option.selected;
28039    return !(a.hasOwnProperty(t) && !a[t]) && vt(this._availableNames, t) >= 0;
28040  }, e.prototype.getOrient = function() {
28041    return this.get("orient") === "vertical" ? { index: 1, name: "vertical" } : { index: 0, name: "horizontal" };
28042  }, e.type = "legend.plain", e.dependencies = ["series"], e.defaultOption = { z: 4, show: true, 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: true, 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: true, selector: false, selectorLabel: { show: true, borderRadius: 10, padding: [3, 5, 3, 5], fontSize: 12, fontFamily: "sans-serif", color: "#666", borderWidth: 1, borderColor: "#666" }, emphasis: { selectorLabel: { show: true, color: "#eee", backgroundColor: "#666" } }, selectorPosition: "auto", selectorItemGap: 7, selectorButtonGap: 10, tooltip: { show: false } }, e;
28043}(gt), Xi = lt, Sg = D, Qu = at, DL = function(r) {
28044  N(e, r);
28045  function e() {
28046    var t = r !== null && r.apply(this, arguments) || this;
28047    return t.type = e.type, t.newlineDisabled = false, t;
28048  }
28049  return e.prototype.init = function() {
28050    this.group.add(this._contentGroup = new Qu()), this.group.add(this._selectorGroup = new Qu()), this._isFirstRender = true;
28051  }, e.prototype.getContentGroup = function() {
28052    return this._contentGroup;
28053  }, e.prototype.getSelectorGroup = function() {
28054    return this._selectorGroup;
28055  }, e.prototype.render = function(t, a, n) {
28056    var i = this._isFirstRender;
28057    if (this._isFirstRender = false, this.resetInner(), !!t.get("show", true)) {
28058      var o = t.get("align"), s = t.get("orient");
28059      (!o || o === "auto") && (o = t.get("left") === "right" && s === "vertical" ? "right" : "left");
28060      var l = t.get("selector", true), u = t.get("selectorPosition", true);
28061      l && (!u || u === "auto") && (u = s === "horizontal" ? "end" : "start"), this.renderInner(o, t, a, n, l, s, u);
28062      var f = t.getBoxLayoutParams(), h = { width: n.getWidth(), height: n.getHeight() }, v = t.get("padding"), c = Qt(f, h, v), p = this.layoutInner(t, o, c, i, l, u), d = Qt(Q({ width: p.width, height: p.height }, f), h, v);
28063      this.group.x = d.x - p.x, this.group.y = d.y - p.y, this.group.markRedraw(), this.group.add(this._backgroundEl = dL(p, t));
28064    }
28065  }, e.prototype.resetInner = function() {
28066    this.getContentGroup().removeAll(), this._backgroundEl && this.group.remove(this._backgroundEl), this.getSelectorGroup().removeAll();
28067  }, e.prototype.renderInner = function(t, a, n, i, o, s, l) {
28068    var u = this.getContentGroup(), f = Z(), h = a.get("selectedMode"), v = [];
28069    n.eachRawSeries(function(c) {
28070      !c.get("legendHoverLink") && v.push(c.id);
28071    }), Sg(a.getData(), function(c, p) {
28072      var d = c.get("name");
28073      if (!this.newlineDisabled && (d === "" || d === `
28074`)) {
28075        var g = new Qu();
28076        g.newline = true, u.add(g);
28077        return;
28078      }
28079      var y = n.getSeriesByName(d)[0];
28080      if (!f.get(d)) if (y) {
28081        var m = y.getData(), _ = m.getVisual("legendLineStyle") || {}, S = m.getVisual("legendIcon"), b = m.getVisual("style"), x = this._createItem(y, d, p, c, a, t, _, b, S, h, i);
28082        x.on("click", Xi(gw, d, null, i, v)).on("mouseover", Xi(xg, y.name, null, i, v)).on("mouseout", Xi(bg, y.name, null, i, v)), n.ssr && x.eachChild(function(w) {
28083          var T = it(w);
28084          T.seriesIndex = y.seriesIndex, T.dataIndex = p, T.ssrType = "legend";
28085        }), f.set(d, true);
28086      } else n.eachRawSeries(function(w) {
28087        if (!f.get(d) && w.legendVisualProvider) {
28088          var T = w.legendVisualProvider;
28089          if (!T.containName(d)) return;
28090          var C = T.indexOfName(d), A = T.getItemVisual(C, "style"), M = T.getItemVisual(C, "legendIcon"), I = Re(A.fill);
28091          I && I[3] === 0 && (I[3] = 0.2, A = z(z({}, A), { fill: Mr(I, "rgba") }));
28092          var L = this._createItem(w, d, p, c, a, t, {}, A, M, h, i);
28093          L.on("click", Xi(gw, null, d, i, v)).on("mouseover", Xi(xg, null, d, i, v)).on("mouseout", Xi(bg, null, d, i, v)), n.ssr && L.eachChild(function(P) {
28094            var R = it(P);
28095            R.seriesIndex = w.seriesIndex, R.dataIndex = p, R.ssrType = "legend";
28096          }), f.set(d, true);
28097        }
28098      }, this);
28099    }, this), o && this._createSelector(o, a, i, s, l);
28100  }, e.prototype._createSelector = function(t, a, n, i, o) {
28101    var s = this.getSelectorGroup();
28102    Sg(t, function(u) {
28103      var f = u.type, h = new St({ style: { x: 0, y: 0, align: "center", verticalAlign: "middle" }, onclick: function() {
28104        n.dispatchAction({ type: f === "all" ? "legendAllSelect" : "legendInverseSelect", legendId: a.id });
28105      } });
28106      s.add(h);
28107      var v = a.getModel("selectorLabel"), c = a.getModel(["emphasis", "selectorLabel"]);
28108      de(h, { normal: v, emphasis: c }, { defaultText: u.title }), Za(h);
28109    });
28110  }, e.prototype._createItem = function(t, a, n, i, o, s, l, u, f, h, v) {
28111    var c = t.visualDrawType, p = o.get("itemWidth"), d = o.get("itemHeight"), g = o.isSelected(a), y = i.get("symbolRotate"), m = i.get("symbolKeepAspect"), _ = i.get("icon");
28112    f = _ || f || "roundRect";
28113    var S = HY(f, i, l, u, c, g, v), b = new Qu(), x = i.getModel("textStyle");
28114    if (j(t.getLegendIcon) && (!_ || _ === "inherit")) b.add(t.getLegendIcon({ itemWidth: p, itemHeight: d, icon: f, iconRotate: y, itemStyle: S.itemStyle, lineStyle: S.lineStyle, symbolKeepAspect: m }));
28115    else {
28116      var w = _ === "inherit" && t.getData().getVisual("symbol") ? y === "inherit" ? t.getData().getVisual("symbolRotate") : y : 0;
28117      b.add(WY({ itemWidth: p, itemHeight: d, icon: f, iconRotate: w, itemStyle: S.itemStyle, symbolKeepAspect: m }));
28118    }
28119    var T = s === "left" ? p + 5 : -5, C = s, A = o.get("formatter"), M = a;
28120    Y(A) && A ? M = A.replace("{name}", a ?? "") : j(A) && (M = A(a));
28121    var I = g ? x.getTextColor() : i.get("inactiveColor");
28122    b.add(new St({ style: Nt(x, { text: M, x: T, y: d / 2, fill: I, align: C, verticalAlign: "middle" }, { inheritColor: I }) }));
28123    var L = new xt({ shape: b.getBoundingRect(), style: { fill: "transparent" } }), P = i.getModel("tooltip");
28124    return P.get("show") && Si({ el: L, componentModel: o, itemName: a, itemTooltipOption: P.option }), b.add(L), b.eachChild(function(R) {
28125      R.silent = true;
28126    }), L.silent = !h, this.getContentGroup().add(b), Za(b), b.__legendDataIndex = n, b;
28127  }, e.prototype.layoutInner = function(t, a, n, i, o, s) {
28128    var l = this.getContentGroup(), u = this.getSelectorGroup();
28129    ni(t.get("orient"), l, t.get("itemGap"), n.width, n.height);
28130    var f = l.getBoundingRect(), h = [-f.x, -f.y];
28131    if (u.markRedraw(), l.markRedraw(), o) {
28132      ni("horizontal", u, t.get("selectorItemGap", true));
28133      var v = u.getBoundingRect(), c = [-v.x, -v.y], p = t.get("selectorButtonGap", true), d = t.getOrient().index, g = d === 0 ? "width" : "height", y = d === 0 ? "height" : "width", m = d === 0 ? "y" : "x";
28134      s === "end" ? c[d] += f[g] + p : h[d] += v[g] + p, c[1 - d] += f[y] / 2 - v[y] / 2, u.x = c[0], u.y = c[1], l.x = h[0], l.y = h[1];
28135      var _ = { x: 0, y: 0 };
28136      return _[g] = f[g] + p + v[g], _[y] = Math.max(f[y], v[y]), _[m] = Math.min(0, v[m] + c[1 - d]), _;
28137    } else return l.x = h[0], l.y = h[1], this.group.getBoundingRect();
28138  }, e.prototype.remove = function() {
28139    this.getContentGroup().removeAll(), this._isFirstRender = true;
28140  }, e.type = "legend.plain", e;
28141}(Vt);
28142function HY(r, e, t, a, n, i, o) {
28143  function s(g, y) {
28144    g.lineWidth === "auto" && (g.lineWidth = y.lineWidth > 0 ? 2 : 0), Sg(g, function(m, _) {
28145      g[_] === "inherit" && (g[_] = y[_]);
28146    });
28147  }
28148  var l = e.getModel("itemStyle"), u = l.getItemStyle(), f = r.lastIndexOf("empty", 0) === 0 ? "fill" : "stroke", h = l.getShallow("decal");
28149  u.decal = !h || h === "inherit" ? a.decal : xo(h, o), u.fill === "inherit" && (u.fill = a[n]), u.stroke === "inherit" && (u.stroke = a[f]), u.opacity === "inherit" && (u.opacity = (n === "fill" ? a : t).opacity), s(u, a);
28150  var v = e.getModel("lineStyle"), c = v.getLineStyle();
28151  if (s(c, t), u.fill === "auto" && (u.fill = a.fill), u.stroke === "auto" && (u.stroke = a.fill), c.stroke === "auto" && (c.stroke = a.fill), !i) {
28152    var p = e.get("inactiveBorderWidth"), d = u[f];
28153    u.lineWidth = p === "auto" ? a.lineWidth > 0 && d ? 2 : 0 : u.lineWidth, u.fill = e.get("inactiveColor"), u.stroke = e.get("inactiveBorderColor"), c.stroke = v.get("inactiveColor"), c.lineWidth = v.get("inactiveWidth");
28154  }
28155  return { itemStyle: u, lineStyle: c };
28156}
28157function WY(r) {
28158  var e = r.icon || "roundRect", t = qt(e, 0, 0, r.itemWidth, r.itemHeight, r.itemStyle.fill, r.symbolKeepAspect);
28159  return t.setStyle(r.itemStyle), t.rotation = (r.iconRotate || 0) * Math.PI / 180, t.setOrigin([r.itemWidth / 2, r.itemHeight / 2]), e.indexOf("empty") > -1 && (t.style.stroke = t.style.fill, t.style.fill = "#fff", t.style.lineWidth = 2), t;
28160}
28161function gw(r, e, t, a) {
28162  bg(r, e, t, a), t.dispatchAction({ type: "legendToggleSelect", name: r ?? e }), xg(r, e, t, a);
28163}
28164function ML(r) {
28165  for (var e = r.getZr().storage.getDisplayList(), t, a = 0, n = e.length; a < n && !(t = e[a].states.emphasis); ) a++;
28166  return t && t.hoverLayer;
28167}
28168function xg(r, e, t, a) {
28169  ML(t) || t.dispatchAction({ type: "highlight", seriesName: r, name: e, excludeSeriesId: a });
28170}
28171function bg(r, e, t, a) {
28172  ML(t) || t.dispatchAction({ type: "downplay", seriesName: r, name: e, excludeSeriesId: a });
28173}
28174function UY(r) {
28175  var e = r.findComponents({ mainType: "legend" });
28176  e && e.length && r.filterSeries(function(t) {
28177    for (var a = 0; a < e.length; a++) if (!e[a].isSelected(t.name)) return false;
28178    return true;
28179  });
28180}
28181function _s(r, e, t) {
28182  var a = r === "allSelect" || r === "inverseSelect", n = {}, i = [];
28183  t.eachComponent({ mainType: "legend", query: e }, function(s) {
28184    a ? s[r]() : s[r](e.name), yw(s, n), i.push(s.componentIndex);
28185  });
28186  var o = {};
28187  return t.eachComponent("legend", function(s) {
28188    D(n, function(l, u) {
28189      s[l ? "select" : "unSelect"](u);
28190    }), yw(s, o);
28191  }), a ? { selected: o, legendIndex: i } : { name: e.name, selected: o };
28192}
28193function yw(r, e) {
28194  var t = e || {};
28195  return D(r.getData(), function(a) {
28196    var n = a.get("name");
28197    if (!(n === `
28198` || n === "")) {
28199      var i = r.isSelected(n);
28200      X(t, n) ? t[n] = t[n] && i : t[n] = i;
28201    }
28202  }), t;
28203}
28204function YY(r) {
28205  r.registerAction("legendToggleSelect", "legendselectchanged", lt(_s, "toggleSelected")), r.registerAction("legendAllSelect", "legendselectall", lt(_s, "allSelect")), r.registerAction("legendInverseSelect", "legendinverseselect", lt(_s, "inverseSelect")), r.registerAction("legendSelect", "legendselected", lt(_s, "select")), r.registerAction("legendUnSelect", "legendunselected", lt(_s, "unSelect"));
28206}
28207function IL(r) {
28208  r.registerComponentModel(_g), r.registerComponentView(DL), r.registerProcessor(r.PRIORITY.PROCESSOR.SERIES_FILTER, UY), r.registerSubTypeDefaulter("legend", function() {
28209    return "plain";
28210  }), YY(r);
28211}
28212var $Y = function(r) {
28213  N(e, r);
28214  function e() {
28215    var t = r !== null && r.apply(this, arguments) || this;
28216    return t.type = e.type, t;
28217  }
28218  return e.prototype.setScrollDataIndex = function(t) {
28219    this.option.scrollDataIndex = t;
28220  }, e.prototype.init = function(t, a, n) {
28221    var i = Bo(t);
28222    r.prototype.init.call(this, t, a, n), mw(this, t, i);
28223  }, e.prototype.mergeOption = function(t, a) {
28224    r.prototype.mergeOption.call(this, t, a), mw(this, this.option, t);
28225  }, e.type = "legend.scroll", e.defaultOption = fn(_g.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;
28226}(_g);
28227function mw(r, e, t) {
28228  var a = r.getOrient(), n = [1, 1];
28229  n[a.index] = 0, an(e, t, { type: "box", ignoreSize: !!n });
28230}
28231var _w = at, Tp = ["width", "height"], Cp = ["x", "y"], XY = function(r) {
28232  N(e, r);
28233  function e() {
28234    var t = r !== null && r.apply(this, arguments) || this;
28235    return t.type = e.type, t.newlineDisabled = true, t._currentIndex = 0, t;
28236  }
28237  return e.prototype.init = function() {
28238    r.prototype.init.call(this), this.group.add(this._containerGroup = new _w()), this._containerGroup.add(this.getContentGroup()), this.group.add(this._controllerGroup = new _w());
28239  }, e.prototype.resetInner = function() {
28240    r.prototype.resetInner.call(this), this._controllerGroup.removeAll(), this._containerGroup.removeClipPath(), this._containerGroup.__rectSize = null;
28241  }, e.prototype.renderInner = function(t, a, n, i, o, s, l) {
28242    var u = this;
28243    r.prototype.renderInner.call(this, t, a, n, i, o, s, l);
28244    var f = this._controllerGroup, h = a.get("pageIconSize", true), v = V(h) ? h : [h, h];
28245    p("pagePrev", 0);
28246    var c = a.getModel("pageTextStyle");
28247    f.add(new St({ name: "pageText", style: { text: "xx/xx", fill: c.getTextColor(), font: c.getFont(), verticalAlign: "middle", align: "center" }, silent: true })), p("pageNext", 1);
28248    function p(d, g) {
28249      var y = d + "DataIndex", m = ko(a.get("pageIcons", true)[a.getOrient().name][g], { onclick: $(u._pageGo, u, y, a, i) }, { x: -v[0] / 2, y: -v[1] / 2, width: v[0], height: v[1] });
28250      m.name = d, f.add(m);
28251    }
28252  }, e.prototype.layoutInner = function(t, a, n, i, o, s) {
28253    var l = this.getSelectorGroup(), u = t.getOrient().index, f = Tp[u], h = Cp[u], v = Tp[1 - u], c = Cp[1 - u];
28254    o && ni("horizontal", l, t.get("selectorItemGap", true));
28255    var p = t.get("selectorButtonGap", true), d = l.getBoundingRect(), g = [-d.x, -d.y], y = rt(n);
28256    o && (y[f] = n[f] - d[f] - p);
28257    var m = this._layoutContentAndController(t, i, y, u, f, v, c, h);
28258    if (o) {
28259      if (s === "end") g[u] += m[f] + p;
28260      else {
28261        var _ = d[f] + p;
28262        g[u] -= _, m[h] -= _;
28263      }
28264      m[f] += d[f] + p, g[1 - u] += m[c] + m[v] / 2 - d[v] / 2, m[v] = Math.max(m[v], d[v]), m[c] = Math.min(m[c], d[c] + g[1 - u]), l.x = g[0], l.y = g[1], l.markRedraw();
28265    }
28266    return m;
28267  }, e.prototype._layoutContentAndController = function(t, a, n, i, o, s, l, u) {
28268    var f = this.getContentGroup(), h = this._containerGroup, v = this._controllerGroup;
28269    ni(t.get("orient"), f, t.get("itemGap"), i ? n.width : null, i ? null : n.height), ni("horizontal", v, t.get("pageButtonItemGap", true));
28270    var c = f.getBoundingRect(), p = v.getBoundingRect(), d = this._showController = c[o] > n[o], g = [-c.x, -c.y];
28271    a || (g[i] = f[u]);
28272    var y = [0, 0], m = [-p.x, -p.y], _ = st(t.get("pageButtonGap", true), t.get("itemGap", true));
28273    if (d) {
28274      var S = t.get("pageButtonPosition", true);
28275      S === "end" ? m[i] += n[o] - p[o] : y[i] += p[o] + _;
28276    }
28277    m[1 - i] += c[s] / 2 - p[s] / 2, f.setPosition(g), h.setPosition(y), v.setPosition(m);
28278    var b = { x: 0, y: 0 };
28279    if (b[o] = d ? n[o] : c[o], b[s] = Math.max(c[s], p[s]), b[l] = Math.min(0, p[l] + m[1 - i]), h.__rectSize = n[o], d) {
28280      var x = { x: 0, y: 0 };
28281      x[o] = Math.max(n[o] - p[o] - _, 0), x[s] = b[s], h.setClipPath(new xt({ shape: x })), h.__rectSize = x[o];
28282    } else v.eachChild(function(T) {
28283      T.attr({ invisible: true, silent: true });
28284    });
28285    var w = this._getPageInfo(t);
28286    return w.pageIndex != null && Tt(f, { x: w.contentPosition[0], y: w.contentPosition[1] }, d ? t : null), this._updatePageInfoView(t, w), b;
28287  }, e.prototype._pageGo = function(t, a, n) {
28288    var i = this._getPageInfo(a)[t];
28289    i != null && n.dispatchAction({ type: "legendScroll", scrollDataIndex: i, legendId: a.id });
28290  }, e.prototype._updatePageInfoView = function(t, a) {
28291    var n = this._controllerGroup;
28292    D(["pagePrev", "pageNext"], function(f) {
28293      var h = f + "DataIndex", v = a[h] != null, c = n.childOfName(f);
28294      c && (c.setStyle("fill", v ? t.get("pageIconColor", true) : t.get("pageIconInactiveColor", true)), c.cursor = v ? "pointer" : "default");
28295    });
28296    var i = n.childOfName("pageText"), o = t.get("pageFormatter"), s = a.pageIndex, l = s != null ? s + 1 : 0, u = a.pageCount;
28297    i && o && i.setStyle("text", Y(o) ? o.replace("{current}", l == null ? "" : l + "").replace("{total}", u == null ? "" : u + "") : o({ current: l, total: u }));
28298  }, e.prototype._getPageInfo = function(t) {
28299    var a = t.get("scrollDataIndex", true), n = this.getContentGroup(), i = this._containerGroup.__rectSize, o = t.getOrient().index, s = Tp[o], l = Cp[o], u = this._findTargetItemIndex(a), f = n.children(), h = f[u], v = f.length, c = v ? 1 : 0, p = { contentPosition: [n.x, n.y], pageCount: c, pageIndex: c - 1, pagePrevDataIndex: null, pageNextDataIndex: null };
28300    if (!h) return p;
28301    var d = S(h);
28302    p.contentPosition[o] = -d.s;
28303    for (var g = u + 1, y = d, m = d, _ = null; g <= v; ++g) _ = S(f[g]), (!_ && m.e > y.s + i || _ && !b(_, y.s)) && (m.i > y.i ? y = m : y = _, y && (p.pageNextDataIndex == null && (p.pageNextDataIndex = y.i), ++p.pageCount)), m = _;
28304    for (var g = u - 1, y = d, m = d, _ = null; g >= -1; --g) _ = S(f[g]), (!_ || !b(m, _.s)) && y.i < m.i && (m = y, p.pagePrevDataIndex == null && (p.pagePrevDataIndex = y.i), ++p.pageCount, ++p.pageIndex), y = _;
28305    return p;
28306    function S(x) {
28307      if (x) {
28308        var w = x.getBoundingRect(), T = w[l] + x[l];
28309        return { s: T, e: T + w[s], i: x.__legendDataIndex };
28310      }
28311    }
28312    function b(x, w) {
28313      return x.e >= w && x.s <= w + i;
28314    }
28315  }, e.prototype._findTargetItemIndex = function(t) {
28316    if (!this._showController) return 0;
28317    var a, n = this.getContentGroup(), i;
28318    return n.eachChild(function(o, s) {
28319      var l = o.__legendDataIndex;
28320      i == null && l != null && (i = s), l === t && (a = s);
28321    }), a ?? i;
28322  }, e.type = "legend.scroll", e;
28323}(DL);
28324function ZY(r) {
28325  r.registerAction("legendScroll", "legendscroll", function(e, t) {
28326    var a = e.scrollDataIndex;
28327    a != null && t.eachComponent({ mainType: "legend", subType: "scroll", query: e }, function(n) {
28328      n.setScrollDataIndex(a);
28329    });
28330  });
28331}
28332function qY(r) {
28333  pt(IL), r.registerComponentModel($Y), r.registerComponentView(XY), ZY(r);
28334}
28335function KY(r) {
28336  pt(IL), pt(qY);
28337}
28338var jY = function(r) {
28339  N(e, r);
28340  function e() {
28341    var t = r !== null && r.apply(this, arguments) || this;
28342    return t.type = e.type, t;
28343  }
28344  return e.type = "dataZoom.inside", e.defaultOption = fn(Al.defaultOption, { disabled: false, zoomLock: false, zoomOnMouseWheel: true, moveOnMouseMove: true, moveOnMouseWheel: false, preventDefaultMouseMove: true }), e;
28345}(Al), Xm = bt();
28346function JY(r, e, t) {
28347  Xm(r).coordSysRecordMap.each(function(a) {
28348    var n = a.dataZoomInfoMap.get(e.uid);
28349    n && (n.getRange = t);
28350  });
28351}
28352function QY(r, e) {
28353  for (var t = Xm(r).coordSysRecordMap, a = t.keys(), n = 0; n < a.length; n++) {
28354    var i = a[n], o = t.get(i), s = o.dataZoomInfoMap;
28355    if (s) {
28356      var l = e.uid, u = s.get(l);
28357      u && (s.removeKey(l), s.keys().length || LL(t, o));
28358    }
28359  }
28360}
28361function LL(r, e) {
28362  if (e) {
28363    r.removeKey(e.model.uid);
28364    var t = e.controller;
28365    t && t.dispose();
28366  }
28367}
28368function t7(r, e) {
28369  var t = { model: e, containsPoint: lt(r7, e), dispatchAction: lt(e7, r), dataZoomInfoMap: null, controller: null }, a = t.controller = new ql(r.getZr());
28370  return D(["pan", "zoom", "scrollMove"], function(n) {
28371    a.on(n, function(i) {
28372      var o = [];
28373      t.dataZoomInfoMap.each(function(s) {
28374        if (i.isAvailableBehavior(s.model.option)) {
28375          var l = (s.getRange || {})[n], u = l && l(s.dzReferCoordSysInfo, t.model.mainType, t.controller, i);
28376          !s.model.get("disabled", true) && u && o.push({ dataZoomId: s.model.id, start: u[0], end: u[1] });
28377        }
28378      }), o.length && t.dispatchAction(o);
28379    });
28380  }), t;
28381}
28382function e7(r, e) {
28383  r.isDisposed() || r.dispatchAction({ type: "dataZoom", animation: { easing: "cubicOut", duration: 100 }, batch: e });
28384}
28385function r7(r, e, t, a) {
28386  return r.coordinateSystem.containPoint([t, a]);
28387}
28388function a7(r) {
28389  var e, t = "type_", a = { type_true: 2, type_move: 1, type_false: 0, type_undefined: -1 }, n = true;
28390  return r.each(function(i) {
28391    var o = i.model, s = o.get("disabled", true) ? false : o.get("zoomLock", true) ? "move" : true;
28392    a[t + s] > a[t + e] && (e = s), n = n && o.get("preventDefaultMouseMove", true);
28393  }), { controlType: e, opt: { zoomOnMouseWheel: true, moveOnMouseMove: true, moveOnMouseWheel: true, preventDefaultMouseMove: !!n } };
28394}
28395function n7(r) {
28396  r.registerProcessor(r.PRIORITY.PROCESSOR.FILTER, function(e, t) {
28397    var a = Xm(t), n = a.coordSysRecordMap || (a.coordSysRecordMap = Z());
28398    n.each(function(i) {
28399      i.dataZoomInfoMap = null;
28400    }), e.eachComponent({ mainType: "dataZoom", subType: "inside" }, function(i) {
28401      var o = vL(i);
28402      D(o.infoList, function(s) {
28403        var l = s.model.uid, u = n.get(l) || n.set(l, t7(t, s.model)), f = u.dataZoomInfoMap || (u.dataZoomInfoMap = Z());
28404        f.set(i.uid, { dzReferCoordSysInfo: s, model: i, getRange: null });
28405      });
28406    }), n.each(function(i) {
28407      var o = i.controller, s, l = i.dataZoomInfoMap;
28408      if (l) {
28409        var u = l.keys()[0];
28410        u != null && (s = l.get(u));
28411      }
28412      if (!s) {
28413        LL(n, i);
28414        return;
28415      }
28416      var f = a7(l);
28417      o.enable(f.controlType, f.opt), o.setPointerChecker(i.containsPoint), Fo(i, "dispatchAction", s.model.get("throttle", true), "fixRate");
28418    });
28419  });
28420}
28421var i7 = function(r) {
28422  N(e, r);
28423  function e() {
28424    var t = r !== null && r.apply(this, arguments) || this;
28425    return t.type = "dataZoom.inside", t;
28426  }
28427  return e.prototype.render = function(t, a, n) {
28428    if (r.prototype.render.apply(this, arguments), t.noTarget()) {
28429      this._clear();
28430      return;
28431    }
28432    this.range = t.getPercentRange(), JY(n, t, { pan: $(Ap.pan, this), zoom: $(Ap.zoom, this), scrollMove: $(Ap.scrollMove, this) });
28433  }, e.prototype.dispose = function() {
28434    this._clear(), r.prototype.dispose.apply(this, arguments);
28435  }, e.prototype._clear = function() {
28436    QY(this.api, this.dataZoomModel), this.range = null;
28437  }, e.type = "dataZoom.inside", e;
28438}(zm), Ap = { zoom: function(r, e, t, a) {
28439  var n = this.range, i = n.slice(), o = r.axisModels[0];
28440  if (o) {
28441    var s = Dp[e](null, [a.originX, a.originY], o, t, r), l = (s.signal > 0 ? s.pixelStart + s.pixelLength - s.pixel : s.pixel - s.pixelStart) / s.pixelLength * (i[1] - i[0]) + i[0], u = Math.max(1 / a.scale, 0);
28442    i[0] = (i[0] - l) * u + l, i[1] = (i[1] - l) * u + l;
28443    var f = this.dataZoomModel.findRepresentativeAxisProxy().getMinMaxSpan();
28444    if (Ai(0, i, [0, 100], 0, f.minSpan, f.maxSpan), this.range = i, n[0] !== i[0] || n[1] !== i[1]) return i;
28445  }
28446}, pan: Sw(function(r, e, t, a, n, i) {
28447  var o = Dp[a]([i.oldX, i.oldY], [i.newX, i.newY], e, n, t);
28448  return o.signal * (r[1] - r[0]) * o.pixel / o.pixelLength;
28449}), scrollMove: Sw(function(r, e, t, a, n, i) {
28450  var o = Dp[a]([0, 0], [i.scrollDelta, i.scrollDelta], e, n, t);
28451  return o.signal * (r[1] - r[0]) * i.scrollDelta;
28452}) };
28453function Sw(r) {
28454  return function(e, t, a, n) {
28455    var i = this.range, o = i.slice(), s = e.axisModels[0];
28456    if (s) {
28457      var l = r(o, s, e, t, a, n);
28458      if (Ai(l, o, [0, 100], "all"), this.range = o, i[0] !== o[0] || i[1] !== o[1]) return o;
28459    }
28460  };
28461}
28462var Dp = { grid: function(r, e, t, a, n) {
28463  var i = t.axis, o = {}, s = n.model.coordinateSystem.getRect();
28464  return r = r || [0, 0], i.dim === "x" ? (o.pixel = e[0] - r[0], o.pixelLength = s.width, o.pixelStart = s.x, o.signal = i.inverse ? 1 : -1) : (o.pixel = e[1] - r[1], o.pixelLength = s.height, o.pixelStart = s.y, o.signal = i.inverse ? -1 : 1), o;
28465}, polar: function(r, e, t, a, n) {
28466  var i = t.axis, o = {}, s = n.model.coordinateSystem, l = s.getRadiusAxis().getExtent(), u = s.getAngleAxis().getExtent();
28467  return r = r ? s.pointToCoord(r) : [0, 0], e = s.pointToCoord(e), t.mainType === "radiusAxis" ? (o.pixel = e[0] - r[0], o.pixelLength = l[1] - l[0], o.pixelStart = l[0], o.signal = i.inverse ? 1 : -1) : (o.pixel = e[1] - r[1], o.pixelLength = u[1] - u[0], o.pixelStart = u[0], o.signal = i.inverse ? -1 : 1), o;
28468}, singleAxis: function(r, e, t, a, n) {
28469  var i = t.axis, o = n.model.coordinateSystem.getRect(), s = {};
28470  return r = r || [0, 0], i.orient === "horizontal" ? (s.pixel = e[0] - r[0], s.pixelLength = o.width, s.pixelStart = o.x, s.signal = i.inverse ? 1 : -1) : (s.pixel = e[1] - r[1], s.pixelLength = o.height, s.pixelStart = o.y, s.signal = i.inverse ? -1 : 1), s;
28471} };
28472function PL(r) {
28473  Vm(r), r.registerComponentModel(jY), r.registerComponentView(i7), n7(r);
28474}
28475var o7 = function(r) {
28476  N(e, r);
28477  function e() {
28478    var t = r !== null && r.apply(this, arguments) || this;
28479    return t.type = e.type, t;
28480  }
28481  return e.type = "dataZoom.slider", e.layoutMode = "box", e.defaultOption = fn(Al.defaultOption, { show: true, right: "ph", top: "ph", width: "ph", height: "ph", left: null, bottom: null, borderColor: "#d2dbee", borderRadius: 3, backgroundColor: "rgba(47,69,84,0)", dataBackgroun
28481d: { lineStyle: { color: "#d2dbee", width: 0.5 }, areaStyle: { color: "#d2dbee", opacity: 0.2 } }, selectedDataBackground: { lineStyle: { color: "#8fb0f7", width: 0.5 }, areaStyle: { color: "#8fb0f7", opacity: 0.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: 0.7 }, showDetail: true, showDataShadow: "auto", realtime: true, zoomLock: false, textStyle: { color: "#6E7079" }, brushSelect: true, brushStyle: { color: "rgba(135,175,274,0.15)" }, emphasis: { handleLabel: { show: true }, handleStyle: { borderColor: "#8FB0F7" }, moveHandleStyle: { color: "#8FB0F7" } } }), e;
28482}(Al), Ss = xt, xw = 7, s7 = 1, Mp = 30, l7 = 7, xs = "horizontal", bw = "vertical", u7 = 5, f7 = ["line", "bar", "candlestick", "scatter"], h7 = { easing: "cubicOut", duration: 100, delay: 0 }, v7 = function(r) {
28483  N(e, r);
28484  function e() {
28485    var t = r !== null && r.apply(this, arguments) || this;
28486    return t.type = e.type, t._displayables = {}, t;
28487  }
28488  return e.prototype.init = function(t, a) {
28489    this.api = a, this._onBrush = $(this._onBrush, this), this._onBrushEnd = $(this._onBrushEnd, this);
28490  }, e.prototype.render = function(t, a, n, i) {
28491    if (r.prototype.render.apply(this, arguments), Fo(this, "_dispatchZoomAction", t.get("throttle"), "fixRate"), this._orient = t.getOrient(), t.get("show") === false) {
28492      this.group.removeAll();
28493      return;
28494    }
28495    if (t.noTarget()) {
28496      this._clear(), this.group.removeAll();
28497      return;
28498    }
28499    (!i || i.type !== "dataZoom" || i.from !== this.uid) && this._buildView(), this._updateView();
28500  }, e.prototype.dispose = function() {
28501    this._clear(), r.prototype.dispose.apply(this, arguments);
28502  }, e.prototype._clear = function() {
28503    cl(this, "_dispatchZoomAction");
28504    var t = this.api.getZr();
28505    t.off("mousemove", this._onBrush), t.off("mouseup", this._onBrushEnd);
28506  }, e.prototype._buildView = function() {
28507    var t = this.group;
28508    t.removeAll(), this._brushing = false, this._displayables.brushRect = null, this._resetLocation(), this._resetInterval();
28509    var a = this._displayables.sliderGroup = new at();
28510    this._renderBackground(), this._renderHandle(), this._renderDataShadow(), t.add(a), this._positionGroup();
28511  }, e.prototype._resetLocation = function() {
28512    var t = this.dataZoomModel, a = this.api, n = t.get("brushSelect"), i = n ? l7 : 0, o = this._findCoordRect(), s = { width: a.getWidth(), height: a.getHeight() }, l = this._orient === xs ? { right: s.width - o.x - o.width, top: s.height - Mp - xw - i, width: o.width, height: Mp } : { right: xw, top: o.y, width: Mp, height: o.height }, u = Bo(t.option);
28513    D(["right", "top", "width", "height"], function(h) {
28514      u[h] === "ph" && (u[h] = l[h]);
28515    });
28516    var f = Qt(u, s);
28517    this._location = { x: f.x, y: f.y }, this._size = [f.width, f.height], this._orient === bw && this._size.reverse();
28518  }, e.prototype._positionGroup = function() {
28519    var t = this.group, a = this._location, n = this._orient, i = this.dataZoomModel.getFirstTargetAxisModel(), o = i && i.get("inverse"), s = this._displayables.sliderGroup, l = (this._dataShadowInfo || {}).otherAxisInverse;
28520    s.attr(n === xs && !o ? { scaleY: l ? 1 : -1, scaleX: 1 } : n === xs && o ? { scaleY: l ? 1 : -1, scaleX: -1 } : n === bw && !o ? { scaleY: l ? -1 : 1, scaleX: 1, rotation: Math.PI / 2 } : { scaleY: l ? -1 : 1, scaleX: -1, rotation: Math.PI / 2 });
28521    var u = t.getBoundingRect([s]);
28522    t.x = a.x - u.x, t.y = a.y - u.y, t.markRedraw();
28523  }, e.prototype._getViewExtent = function() {
28524    return [0, this._size[0]];
28525  }
28525, e.prototype._renderBackground = function() {
28526    var t = this.dataZoomModel, a = this._size, n = this._displayables.sliderGroup, i = t.get("brushSelect");
28527    n.add(new Ss({ silent: true, shape: { x: 0, y: 0, width: a[0], height: a[1] }, style: { fill: t.get("backgroundColor") }, z2: -40 }));
28528    var o = new Ss({ shape: { x: 0, y: 0, width: a[0], height: a[1] }, style: { fill: "transparent" }, z2: 0, onclick: $(this._onClickPanel, this) }), s = this.api.getZr();
28529    i ? (o.on("mousedown", this._onBrushStart, this), o.cursor = "crosshair", s.on("mousemove", this._onBrush), s.on("mouseup", this._onBrushEnd)) : (s.off("mousemove", this._onBrush), s.off("mouseup", this._onBrushEnd)), n.add(o);
28530  }, e.prototype._renderDataShadow = function() {
28531    var t = this._dataShadowInfo = this._prepareDataShadowInfo();
28532    if (this._displayables.dataShadowSegs = [], !t) return;
28533    var a = this._size, n = this._shadowSize || [], i = t.series, o = i.getRawData(), s = i.getShadowDim && i.getShadowDim(), l = s && o.getDimensionInfo(s) ? i.getShadowDim() : t.otherDim;
28534    if (l == null) return;
28535    var u = this._shadowPolygonPts, f = this._shadowPolylinePts;
28536    if (o !== this._shadowData || l !== this._shadowDim || a[0] !== n[0] || a[1] !== n[1]) {
28537      var h = o.getDataExtent(l), v = (h[1] - h[0]) * 0.3;
28538      h = [h[0] - v, h[1] + v];
28539      var c = [0, a[1]], p = [0, a[0]], d = [[a[0], 0], [0, 0]], g = [], y = p[1] / (o.count() - 1), m = 0, _ = Math.round(o.count() / a[0]), S;
28540      o.each([l], function(C, A) {
28541        if (_ > 0 && A % _) {
28542          m += y;
28543          return;
28544        }
28545        var M = C == null || isNaN(C) || C === "", I = M ? 0 : Dt(C, h, c, true);
28546        M && !S && A ? (d.push([d[d.length - 1][0], 0]), g.push([g[g.length - 1][0], 0])) : !M && S && (d.push([m, 0]), g.push([m, 0])), d.push([m, I]), g.push([m, I]), m += y, S = M;
28547      }), u = this._shadowPolygonPts = d, f = this._shadowPolylinePts = g;
28548    }
28549    this._shadowData = o, this._shadowDim = l, this._shadowSize = [a[0], a[1]];
28550    var b = this.dataZoomModel;
28551    function x(C) {
28552      var A = b.getModel(C ? "selectedDataBackground" : "dataBackground"), M = new at(), I = new Ce({ shape: { points: u }, segmentIgnoreThreshold: 1, style: A.getModel("areaStyle").getAreaStyle(), silent: true, z2: -20 }), L = new De({ shape: { points: f }, segmentIgnoreThreshold: 1, style: A.getModel("lineStyle").getLineStyle(), silent: true, z2: -19 });
28553      return M.add(I), M.add(L), M;
28554    }
28555    for (var w = 0; w < 3; w++) {
28556      var T = x(w === 1);
28557      this._displayables.sliderGroup.add(T), this._displayables.dataShadowSegs.push(T);
28558    }
28559  }, e.prototype._prepareDataShadowInfo = function() {
28560    var t = this.dataZoomModel, a = t.get("showDataShadow");
28561    if (a !== false) {
28562      var n, i = this.ecModel;
28563      return t.eachTargetAxis(function(o, s) {
28564        var l = t.getAxisProxy(o, s).getTargetSeriesModels();
28565        D(l, function(u) {
28566          if (!n && !(a !== true && vt(f7, u.get("type")) < 0)) {
28567            var f = i.getComponent(Ya(o), s).axis, h = c7(o), v, c = u.coordinateSystem;
28568            h != null && c.getOtherAxis && (v = c.getOtherAxis(f).inverse), h = u.getData().mapDimension(h), n = { thisAxis: f, series: u, thisDim: o, otherDim: h, otherAxisInverse: v };
28569          }
28570        }, this);
28571      }, this), n;
28572    }
28573  }, e.prototype._renderHandle = function() {
28574    var t = this.group, a = this._displayables, n = a.handles = [null, null], i = a.handleLabels = [null, null], o = this._displayables.sliderGroup, s = this._size, l = this.dataZoomModel, u = this.api, f = l.get("borderRadius") || 0, h = l.get("brushSelect"), v = a.filler = new Ss({ silent: h, style: { fill: l.get("fillerColor") }, textConfig: { position: "inside" } });
28575    o.add(v), o.add(new Ss({ silent: true, subPixelOptimize: true, shape: { x: 0, y: 0, width: s[0], height: s[1], r: f }, style: { stroke: l.get("dataBackgroundColor") || l.get("borderColor"), lineWidth: s7, fill: "rgba(0,0,0,0)" } })), D([0, 1], function(_) {
28576      var S = l.get("handleIcon");
28577      !Ff[S] && S.indexOf("path://") < 0 && S.indexOf("image://") < 0 && (S = "path://" + S);
28578      var b = qt(S, -1, 0, 2, 2, null, true);
28579      b.attr({ cursor: ww(this._orient), draggable: true, drift: $(this._onDragMove, this, _), ondragend: $(this._onDragEnd, this), onmouseover: $(this._showDataInfo, this, true), onmouseout: $(this._showDataInfo, this, false), z2: 5 });
28580      var x = b.getBoundingRect(), w = l.get("handleSize");
28581      this._handleHeight = W(w, this._size[1]), this._handleWidth = x.width / x.height * this._handleHeight, b.setStyle(l.getModel("handleStyle").getItemStyle()), b.style.strokeNoScale = true, b.rectHover = true, b.ensureState("emphasis").style = l.getModel(["emphasis", "handleStyle"]).getItemStyle(), Za(b);
28582      var T = l.get("handleColor");
28583      T != null && (b.style.fill = T), o.add(n[_] = b);
28584      var C = l.getModel("textStyle"), A = l.get("handleLabel") || {}, M = A.show || false;
28585      t.add(i[_] = new St({ silent: true, invisible: !M, style: Nt(C, { x: 0, y: 0, text: "", verticalAlign: "middle", align: "center", fill: C.getTextColor(), font: C.getFont() }), z2: 10 }));
28586    }, this);
28587    var c = v;
28588    if (h) {
28589      var p = W(l.get("moveHandleSize"), s[1]), d = a.moveHandle = new xt({ style: l.getModel("moveHandleStyle").getItemStyle(), silent: true, shape: { r: [0, 0, 2, 2], y: s[1] - 0.5, height: p } }), g = p * 0.8, y = a.moveHandleIcon = qt(l.get("moveHandleIcon"), -g / 2, -g / 2, g, g, "#fff", true);
28590      y.silent = true, y.y = s[1] + p / 2 - 0.5, d.ensureState("emphasis").style = l.getModel(["emphasis", "moveHandleStyle"]).getItemStyle();
28591      var m = Math.min(s[1] / 2, Math.max(p, 10));
28592      c = a.moveZone = new xt({ invisible: true, shape: { y: s[1] - m, height: p + m } }), c.on("mouseover", function() {
28593        u.enterEmphasis(d);
28594      }).on("mouseout", function() {
28595        u.leaveEmphasis(d);
28596      }), o.add(d), o.add(y), o.add(c);
28597    }
28598    c.attr({ draggable: true, cursor: ww(this._orient), drift: $(this._onDragMove, this, "all"), ondragstart: $(this._showDataInfo, this, true), ondragend: $(this._onDragEnd, this), onmouseover: $(this._showDataInfo, this, true), onmouseout: $(this._showDataInfo, this, false) });
28599  }, e.prototype._resetInterval = function() {
28600    var t = this._range = this.dataZoomModel.getPercentRange(), a = this._getViewExtent();
28601    this._handleEnds = [Dt(t[0], [0, 100], a, true), Dt(t[1], [0, 100], a, true)];
28602  }, e.prototype._updateInterval = function(t, a) {
28603    var n = this.dataZoomModel, i = this._handleEnds, o = this._getViewExtent(), s = n.findRepresentativeAxisProxy().getMinMaxSpan(), l = [0, 100];
28604    Ai(a, i, o, n.get("zoomLock") ? "all" : t, s.minSpan != null ? Dt(s.minSpan, l, o, true) : null, s.maxSpan != null ? Dt(s.maxSpan, l, o, true) : null);
28605    var u = this._range, f = this._range = Xe([Dt(i[0], o, l, true), Dt(i[1], o, l, true)]);
28606    return !u || u[0] !== f[0] || u[1] !== f[1];
28607  }, e.prototype._updateView = function(t) {
28608    var a = this._displayables, n = this._handleEnds, i = Xe(n.slice()), o = this._size;
28609    D([0, 1], function(c) {
28610      var p = a.handles[c], d = this._handleHeight;
28611      p.attr({ scaleX: d / 2, scaleY: d / 2, x: n[c] + (c ? -1 : 1), y: o[1] / 2 - d / 2 });
28612    }, this), a.filler.setShape({ x: i[0], y: 0, width: i[1] - i[0], height: o[1] });
28613    var s = { x: i[0], width: i[1] - i[0] };
28614    a.moveHandle && (a.moveHandle.setShape(s), a.moveZone.setShape(s), a.moveZone.getBoundingRect(), a.moveHandleIcon && a.moveHandleIcon.attr("x", s.x + s.width / 2));
28615    for (var l = a.dataShadowSegs, u = [0, i[0], i[1], o[0]], f = 0; f < l.length; f++) {
28616      var h = l[f], v = h.getClipPath();
28617      v || (v = new xt(), h.setClipPath(v)), v.setShape({ x: u[f], y: 0, width: u[f + 1] - u[f], height: o[1] });
28618    }
28619    this._updateDataInfo(t);
28620  }, e.prototype._updateDataInfo = function(t) {
28621    var a = this.dataZoomModel, n = this._displayables, i = n.handleLabels, o = this._orient, s = ["", ""];
28622    if (a.get("showDetail")) {
28623      var l = a.findRepresentativeAxisProxy();
28624      if (l) {
28625        var u = l.getAxisModel().axis, f = this._range, h = t ? l.calculateDataWindow({ start: f[0], end: f[1] }).valueWindow : l.getDataValueWindow();
28626        s = [this._formatLabel(h[0], u), this._formatLabel(h[1], u)];
28627      }
28628    }
28629    var v = Xe(this._handleEnds.slice());
28630    c.call(this, 0), c.call(this, 1);
28631    function c(p) {
28632      var d = qa(n.handles[p].parent, this.group), g = Bh(p === 0 ? "right" : "left", d), y = this._handleWidth / 2 + u7, m = Ir([v[p] + (p === 0 ? -y : y), this._size[1] / 2], d);
28633      i[p].setStyle({ x: m[0], y: m[1], verticalAlign: o === xs ? "middle" : g, align: o === xs ? g : "center", text: s[p] });
28634    }
28635  }, e.prototype._formatLabel = function(t, a) {
28636    var n = this.dataZoomModel, i = n.get("labelFormatter"), o = n.get("labelPrecision");
28637    (o == null || o === "auto") && (o = a.getPixelPrecision());
28638    var s = t == null || isNaN(t) ? "" : a.type === "category" || a.type === "time" ? a.scale.getLabel({ value: Math.round(t) }) : t.toFixed(Math.min(o, 20));
28639    return j(i) ? i(t, s) : Y(i) ? i.replace("{value}", s) : s;
28640  }, e.prototype._showDataInfo = function(t) {
28641    var a = this.dataZoomModel.get("handleLabel") || {}, n = a.show || false, i = this.dataZoomModel.getModel(["emphasis", "handleLabel"]), o = i.get("show") || false, s = t || this._dragging ? o : n, l = this._displayables, u = l.handleLabels;
28642    u[0].attr("invisible", !s), u[1].attr("invisible", !s), l.moveHandle && this.api[s ? "enterEmphasis" : "leaveEmphasis"](l.moveHandle, 1);
28643  }, e.prototype._onDragMove = function(t, a, n, i) {
28644    this._dragging = true, ya(i.event);
28645    var o = this._displayables.sliderGroup.getLocalTransform(), s = Ir([a, n], o, true), l = this._updateInterval(t, s[0]), u = this.dataZoomModel.get("realtime");
28646    this._updateView(!u), l && u && this._dispatchZoomAction(true);
28647  }, e.prototype._onDragEnd = function() {
28648    this._dragging = false, this._showDataInfo(false);
28649    var t = this.dataZoomModel.get("realtime");
28650    !t && this._dispatchZoomAction(false);
28651  }, e.prototype._onClickPanel = function(t) {
28652    var a = this._size, n = this._displayables.sliderGroup.transformCoordToLocal(t.offsetX, t.offsetY);
28653    if (!(n[0] < 0 || n[0] > a[0] || n[1] < 0 || n[1] > a[1])) {
28654      var i = this._handleEnds, o = (i[0] + i[1]) / 2, s = this._updateInterval("all", n[0] - o);
28655      this._updateView(), s && this._dispatchZoomAction(false);
28656    }
28657  }, e.prototype._onBrushStart = function(t) {
28658    var a = t.offsetX, n = t.offsetY;
28659    this._brushStart = new ft(a, n), this._brushing = true, this._brushStartTime = +/* @__PURE__ */ new Date();
28660  }, e.prototype._onBrushEnd = function(t) {
28661    if (this._brushing) {
28662      var a = this._displayables.brushRect;
28663      if (this._brushing = false, !!a) {
28664        a.attr("ignore", true);
28665        var n = a.shape, i = +/* @__PURE__ */ new Date();
28666        if (!(i - this._brushStartTime < 200 && Math.abs(n.width) < 5)) {
28667          var o = this._getViewExtent(), s = [0, 100];
28668          this._range = Xe([Dt(n.x, o, s, true), Dt(n.x + n.width, o, s, true)]), this._handleEnds = [n.x, n.x + n.width], this._updateView(), this._dispatchZoomAction(false);
28669        }
28670      }
28671    }
28672  }, e.prototype._onBrush = function(t) {
28673    this._brushing && (ya(t.event), this._updateBrushRect(t.offsetX, t.offsetY));
28674  }, e.prototype._updateBrushRect = function(t, a) {
28675    var n = this._displayables, i = this.dataZoomModel, o = n.brushRect;
28676    o || (o = n.brushRect = new Ss({ silent: true, style: i.getModel("brushStyle").getItemStyle() }), n.sliderGroup.add(o)), o.attr("ignore", false);
28677    var s = this._brushStart, l = this._displayables.sliderGroup, u = l.transformCoordToLocal(t, a), f = l.transformCoordToLocal(s.x, s.y), h = this._size;
28678    u[0] = Math.max(Math.min(h[0], u[0]), 0), o.setShape({ x: f[0], y: 0, width: u[0] - f[0], height: h[1] });
28679  }, e.prototype._dispatchZoomAction = function(t) {
28680    var a = this._range;
28681    this.api.dispatchAction({ type: "dataZoom", from: this.uid, dataZoomId: this.dataZoomModel.id, animation: t ? h7 : null, start: a[0], end: a[1] });
28682  }, e.prototype._findCoordRect = function() {
28683    var t, a = vL(this.dataZoomModel).infoList;
28684    if (!t && a.length) {
28685      var n = a[0].model.coordinateSystem;
28686      t = n.getRect && n.getRect();
28687    }
28688    if (!t) {
28689      var i = this.api.getWidth(), o = this.api.getHeight();
28690      t = { x: i * 0.2, y: o * 0.2, width: i * 0.6, height: o * 0.6 };
28691    }
28692    return t;
28693  }, e.type = "dataZoom.slider", e;
28694}(zm);
28695function c7(r) {
28696  var e = { x: "y", y: "x", radius: "angle", angle: "radius" };
28697  return e[r];
28698}
28699function ww(r) {
28700  return r === "vertical" ? "ns-resize" : "ew-resize";
28701}
28702function RL(r) {
28703  r.registerComponentModel(o7), r.registerComponentView(v7), Vm(r);
28704}
28705function p7(r) {
28706  pt(PL), pt(RL);
28707}
28708var EL = { get: function(r, e, t) {
28709  var a = rt((d7[r] || {})[e]);
28710  return t && V(a) ? a[a.length - 1] : a;
28711} }, d7 = { color: { active: ["#006edd", "#e0ffff"], inactive: ["rgba(0,0,0,0)"] }, colorHue: { active: [0, 360], inactive: [0, 0] }, colorSaturation: { active: [0.3, 1], inactive: [0, 0] }, colorLightness: { active: [0.9, 0.5], inactive: [0, 0] }, colorAlpha: { active: [0.3, 1], inactive: [0, 0] }, opacity: { active: [0.3, 1], inactive: [0, 0] }, symbol: { active: ["circle", "roundRect", "diamond"], inactive: ["none"] }, symbolSize: { active: [10, 50], inactive: [0, 0] } }, Tw = oe.mapVisual, g7 = oe.eachVisual, y7 = V, Cw = D, m7 = Xe, _7 = Dt, ch = function(r) {
28712  N(e, r);
28713  function e() {
28714    var t = r !== null && r.apply(this, arguments) || this;
28715    return t.type = e.type, t.stateList = ["inRange", "outOfRange"], t.replacableOptionKeys = ["inRange", "outOfRange", "target", "controller", "color"], t.layoutMode = { type: "box", ignoreSize: true }, t.dataBound = [-1 / 0, 1 / 0], t.targetVisuals = {}, t.controllerVisuals = {}, t;
28716  }
28717  return e.prototype.init = function(t, a, n) {
28718    this.mergeDefaultAndTheme(t, n);
28719  }, e.prototype.optionUpdated = function(t, a) {
28720    var n = this.option;
28721    !a && bL(n, t, this.replacableOptionKeys), this.textStyleModel = this.getModel("textStyle"), this.resetItemSize(), this.completeVisualOption();
28722  }, e.prototype.resetVisual = function(t) {
28723    var a = this.stateList;
28724    t = $(t, this), this.controllerVisuals = gg(this.option.controller, a, t), this.targetVisuals = gg(this.option.target, a, t);
28725  }, e.prototype.getItemSymbol = function() {
28726    return null;
28727  }, e.prototype.getTargetSeriesIndices = function() {
28728    var t = this.option.seriesIndex, a = [];
28729    return t == null || t === "all" ? this.ecModel.eachSeries(function(n, i) {
28730      a.push(i);
28731    }) : a = Rt(t), a;
28732  }, e.prototype.eachTargetSeries = function(t, a) {
28733    D(this.getTargetSeriesIndices(), function(n) {
28734      var i = this.ecModel.getSeriesByIndex(n);
28735      i && t.call(a, i);
28736    }, this);
28737  }, e.prototype.isTargetSeries = function(t) {
28738    var a = false;
28739    return this.eachTargetSeries(function(n) {
28740      n === t && (a = true);
28741    }), a;
28742  }, e.prototype.formatValueText = function(t, a, n) {
28743    var i = this.option, o = i.precision, s = this.dataBound, l = i.formatter, u;
28744    n = n || ["<", ">"], V(t) && (t = t.slice(), u = true);
28745    var f = a ? t : u ? [h(t[0]), h(t[1])] : h(t);
28746    if (Y(l)) return l.replace("{value}", u ? f[0] : f).replace("{value2}", u ? f[1] : f);
28747    if (j(l)) return u ? l(t[0], t[1]) : l(t);
28748    if (u) return t[0] === s[0] ? n[0] + " " + f[1] : t[1] === s[1] ? n[1] + " " + f[0] : f[0] + " - " + f[1];
28749    return f;
28750    function h(v) {
28751      return v === s[0] ? "min" : v === s[1] ? "max" : (+v).toFixed(Math.min(o, 20));
28752    }
28753  }, e.prototype.resetExtent = function() {
28754    var t = this.option, a = m7([t.min, t.max]);
28755    this._dataExtent = a;
28756  }, e.prototype.getDataDimensionIndex = function(t) {
28757    var a = this.option.dimension;
28758    if (a != null) return t.getDimensionIndex(a);
28759    for (var n = t.dimensions, i = n.length - 1; i >= 0; i--) {
28760      var o = n[i], s = t.getDimensionInfo(o);
28761      if (!s.isCalculationCoord) return s.storeDimIndex;
28762    }
28763  }, e.prototype.getExtent = function() {
28764    return this._dataExtent.slice();
28765  }, e.prototype.completeVisualOption = function() {
28766    var t = this.ecModel, a = this.option, n = { inRange: a.inRange, outOfRange: a.outOfRange }, i = a.target || (a.target = {}), o = a.controller || (a.controller = {});
28767    ut(i, n), ut(o, n);
28768    var s = this.isCategory();
28769    l.call(this, i), l.call(this, o), u.call(this, i, "inRange", "outOfRange"), f.call(this, o);
28770    function l(h) {
28771      y7(a.color) && !h.inRange && (h.inRange = { color: a.color.slice().reverse() }), h.inRange = h.inRange || { color: t.get("gradientColor") };
28772    }
28773    function u(h, v, c) {
28774      var p = h[v], d = h[c];
28775      p && !d && (d = h[c] = {}, Cw(p, function(g, y) {
28776        if (oe.isValidType(y)) {
28777          var m = EL.get(y, "inactive", s);
28778          m != null && (d[y] = m, y === "color" && !d.hasOwnProperty("opacity") && !d.hasOwnProperty("colorAlpha") && (d.opacity = [0, 0]));
28779        }
28780      }));
28781    }
28782    function f(h) {
28783      var v = (h.inRange || {}).symbol || (h.outOfRange || {}).symbol, c = (h.inRange || {}).symbolSize || (h.outOfRange || {}).symbolSize, p = this.get("inactiveColor"), d = this.getItemSymbol(), g = d || "roundRect";
28784      Cw(this.stateList, function(y) {
28785        var m = this.itemSize, _ = h[y];
28786        _ || (_ = h[y] = { color: s ? p : [p] }), _.symbol == null && (_.symbol = v && rt(v) || (s ? g : [g])), _.symbolSize == null && (_.symbolSize = c && rt(c) || (s ? m[0] : [m[0], m[0]])), _.symbol = Tw(_.symbol, function(x) {
28787          return x === "none" ? g : x;
28788        });
28789        var S = _.symbolSize;
28790        if (S != null) {
28791          var b = -1 / 0;
28792          g7(S, function(x) {
28793            x > b && (b = x);
28794          }), _.symbolSize = Tw(S, function(x) {
28795            return _7(x, [0, b], [0, m[0]], true);
28796          });
28797        }
28798      }, this);
28799    }
28800  }, e.prototype.resetItemSize = function() {
28801    this.itemSize = [parseFloat(this.get("itemWidth")), parseFloat(this.get("itemHeight"))];
28802  }, e.prototype.isCategory = function() {
28803    return !!this.option.categories;
28804  }, e.prototype.setSelected = function(t) {
28805  }, e.prototype.getSelected = function() {
28806    return null;
28807  }, e.prototype.getValueState = function(t) {
28808    return null;
28809  }, e.prototype.getVisualMeta = function(t) {
28810    return null;
28811  }, e.type = "visualMap", e.dependencies = ["series"], e.defaultOption = { show: true, z: 4, seriesIndex: "all", min: 0, max: 200, left: 0, right: null, top: null, bottom: 0, itemWidth: null, itemHeight: null, inverse: false, 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;
28812}(gt), Aw = [20, 140], S7 = function(r) {
28813  N(e, r);
28814  function e() {
28815    var t = r !== null && r.apply(this, arguments) || this;
28816    return t.type = e.type, t;
28817  }
28818  return e.prototype.optionUpdated = function(t, a) {
28819    r.prototype.optionUpdated.apply(this, arguments), this.resetExtent(), this.resetVisual(function(n) {
28820      n.mappingMethod = "linear", n.dataExtent = this.getExtent();
28821    }), this._resetRange();
28822  }, e.prototype.resetItemSize = function() {
28823    r.prototype.resetItemSize.apply(this, arguments);
28824    var t = this.itemSize;
28825    (t[0] == null || isNaN(t[0])) && (t[0] = Aw[0]), (t[1] == null || isNaN(t[1])) && (t[1] = Aw[1]);
28826  }, e.prototype._resetRange = function() {
28827    var t = this.getExtent(), a = this.option.range;
28828    !a || a.auto ? (t.auto = 1, this.option.range = t) : V(a) && (a[0] > a[1] && a.reverse(), a[0] = Math.max(a[0], t[0]), a[1] = Math.min(a[1], t[1]));
28829  }, e.prototype.completeVisualOption = function() {
28830    r.prototype.completeVisualOption.apply(this, arguments), D(this.stateList, function(t) {
28831      var a = this.option.controller[t].symbolSize;
28832      a && a[0] !== a[1] && (a[0] = a[1] / 3);
28833    }, this);
28834  }, e.prototype.setSelected = function(t) {
28835    this.option.range = t.slice(), this._resetRange();
28836  }, e.prototype.getSelected = function() {
28837    var t = this.getExtent(), a = Xe((this.get("range") || []).slice());
28838    return a[0] > t[1] && (a[0] = t[1]), a[1] > t[1] && (a[1] = t[1]), a[0] < t[0] && (a[0] = t[0]), a[1] < t[0] && (a[1] = t[0]), a;
28839  }, e.prototype.getValueState = function(t) {
28840    var a = this.option.range, n = this.getExtent();
28841    return (a[0] <= n[0] || a[0] <= t) && (a[1] >= n[1] || t <= a[1]) ? "inRange" : "outOfRange";
28842  }, e.prototype.findTargetDataIndices = function(t) {
28843    var a = [];
28844    return this.eachTargetSeries(function(n) {
28845      var i = [], o = n.getData();
28846      o.each(this.getDataDimensionIndex(o), function(s, l) {
28847        t[0] <= s && s <= t[1] && i.push(l);
28848      }, this), a.push({ seriesId: n.id, dataIndex: i });
28849    }, this), a;
28850  }, e.prototype.getVisualMeta = function(t) {
28851    var a = Dw(this, "outOfRange", this.getExtent()), n = Dw(this, "inRange", this.option.range.slice()), i = [];
28852    function o(c, p) {
28853      i.push({ value: c, color: t(c, p) });
28854    }
28855    for (var s = 0, l = 0, u = n.length, f = a.length; l < f && (!n.length || a[l] <= n[0]); l++) a[l] < n[s] && o(a[l], "outOfRange");
28856    for (var h = 1; s < u; s++, h = 0) h && i.length && o(n[s], "outOfRange"), o(n[s], "inRange");
28857    for (var h = 1; l < f; l++) (!n.length || n[n.length - 1] < a[l]) && (h && (i.length && o(i[i.length - 1].value, "outOfRange"), h = 0), o(a[l], "outOfRange"));
28858    var v = i.length;
28859    return { stops: i, outerColors: [v ? i[0].color : "transparent", v ? i[v - 1].color : "transparent"] };
28860  }, e.type = "visualMap.continuous", e.defaultOption = fn(ch.defaultOption, { align: "auto", calculable: false, hoverLink: true, realtime: true, 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;
28861}(ch);
28862function Dw(r, e, t) {
28863  if (t[0] === t[1]) return t.slice();
28864  for (var a = 200, n = (t[1] - t[0]) / a, i = t[0], o = [], s = 0; s <= a && i < t[1]; s++) o.push(i), i += n;
28865  return o.push(t[1]), o;
28866}
28867var kL = function(r) {
28868  N(e, r);
28869  function e() {
28870    var t = r !== null && r.apply(this, arguments) || this;
28871    return t.type = e.type, t.autoPositionValues = { left: 1, right: 1, top: 1, bottom: 1 }, t;
28872  }
28873  return e.prototype.init = function(t, a) {
28874    this.ecModel = t, this.api = a;
28875  }, e.prototype.render = function(t, a, n, i) {
28876    if (this.visualMapModel = t, t.get("show") === false) {
28877      this.group.removeAll();
28878      return;
28879    }
28880    this.doRender(t, a, n, i);
28881  }
28881, e.prototype.renderBackground = function(t) {
28882    var a = this.visualMapModel, n = bi(a.get("padding") || 0), i = t.getBoundingRect();
28883    t.add(new xt({ z2: -1, silent: true, 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: a.get("backgroundColor"), stroke: a.get("borderColor"), lineWidth: a.get("borderWidth") } }));
28884  }, e.prototype.getControllerVisual = function(t, a, n) {
28885    n = n || {};
28886    var i = n.forceState, o = this.visualMapModel, s = {};
28887    if (a === "color") {
28888      var l = o.get("contentColor");
28889      s.color = l;
28890    }
28891    function u(c) {
28892      return s[c];
28893    }
28894    function f(c, p) {
28895      s[c] = p;
28896    }
28897    var h = o.controllerVisuals[i || o.getValueState(t)], v = oe.prepareVisualTypes(h);
28898    return D(v, function(c) {
28899      var p = h[c];
28900      n.convertOpacityToAlpha && c === "opacity" && (c = "colorAlpha", p = h.__alphaForOpacity), oe.dependsOn(c, a) && p && p.applyVisual(t, u, f);
28901    }), s[a];
28902  }, e.prototype.positionGroup = function(t) {
28903    var a = this.visualMapModel, n = this.api;
28904    Wh(t, a.getBoxLayoutParams(), { width: n.getWidth(), height: n.getHeight() });
28905  }, e.prototype.doRender = function(t, a, n, i) {
28906  }, e.type = "visualMap", e;
28907}(Vt), Mw = [["left", "right", "width"], ["top", "bottom", "height"]];
28908function OL(r, e, t) {
28909  var a = r.option, n = a.align;
28910  if (n != null && n !== "auto") return n;
28911  for (var i = { width: e.getWidth(), height: e.getHeight() }, o = a.orient === "horizontal" ? 1 : 0, s = Mw[o], l = [0, null, 10], u = {}, f = 0; f < 3; f++) u[Mw[1 - o][f]] = l[f], u[s[f]] = f === 2 ? t[0] : a[s[f]];
28912  var h = [["x", "width", 3], ["y", "height", 0]][o], v = Qt(u, i, a.padding);
28913  return s[(v.margin[h[2]] || 0) + v[h[0]] + v[h[1]] * 0.5 < i[h[1]] * 0.5 ? 0 : 1];
28914}
28915function _f(r, e) {
28916  return D(r || [], function(t) {
28917    t.dataIndex != null && (t.dataIndexInside = t.dataIndex, t.dataIndex = null), t.highlightKey = "visualMap" + (e ? e.componentIndex : "");
28918  }), r;
28919}
28920var Fr = Dt, x7 = D, Iw = Math.min, Ip = Math.max, b7 = 12, w7 = 6, T7 = function(r) {
28921  N(e, r);
28922  function e() {
28923    var t = r !== null && r.apply(this, arguments) || this;
28924    return t.type = e.type, t._shapes = {}, t._dataInterval = [], t._handleEnds = [], t._hoverLinkDataIndices = [], t;
28925  }
28926  return e.prototype.init = function(t, a) {
28927    r.prototype.init.call(this, t, a), this._hoverLinkFromSeriesMouseOver = $(this._hoverLinkFromSeriesMouseOver, this), this._hideIndicator = $(this._hideIndicator, this);
28928  }, e.prototype.doRender = function(t, a, n, i) {
28929    (!i || i.type !== "selectDataRange" || i.from !== this.uid) && this._buildView();
28930  }, e.prototype._buildView = function() {
28931    this.group.removeAll();
28932    var t = this.visualMapModel, a = this.group;
28933    this._orient = t.get("orient"), this._useHandle = t.get("calculable"), this._resetInterval(), this._renderBar(a);
28934    var n = t.get("text");
28935    this._renderEndsText(a, n, 0), this._renderEndsText(a, n, 1), this._updateView(true), this.renderBackground(a), this._updateView(), this._enableHoverLinkToSeries(), this._enableHoverLinkFromSeries(), this.positionGroup(a);
28936  }, e.prototype._renderEndsText = function(t, a, n) {
28937    if (a) {
28938      var i = a[1 - n];
28939      i = i != null ? i + "" : "";
28940      var o = this.visualMapModel, s = o.get("textGap"), l = o.itemSize, u = this._shapes.mainGroup, f = this._applyTransform([l[0] / 2, n === 0 ? -s : l[1] + s], u), h = this._applyTransform(n === 0 ? "bottom" : "top", u), v = this._orient, c = this.visualMapModel.textStyleModel;
28941      this.group.add(new St({ style: Nt(c, { x: f[0], y: f[1], verticalAlign: v === "horizontal" ? "middle" : h, align: v === "horizontal" ? h : "center", text: i }) }));
28942    }
28943  }, e.prototype._renderBar = function(t) {
28944    var a = this.visualMapModel, n = this._shapes, i = a.itemSize, o = this._orient, s = this._useHandle, l = OL(a, this.api, i), u = n.mainGroup = this._createBarGroup(l), f = new at();
28945    u.add(f), f.add(n.outOfRange = Lw()), f.add(n.inRange = Lw(null, s ? Rw(this._orient) : null, $(this._dragHandle, this, "all", false), $(this._dragHandle, this, "all", true))), f.setClipPath(new xt({ shape: { x: 0, y: 0, width: i[0], height: i[1], r: 3 } }));
28946    var h = a.textStyleModel.getTextRect("\u56FD"), v = Ip(h.width, h.height);
28947    s && (n.handleThumbs = [], n.handleLabels = [], n.handleLabelPoints = [], this._createHandle(a, u, 0, i, v, o), this._createHandle(a, u, 1, i, v, o)), this._createIndicator(a, u, i, v, o), t.add(u);
28948  }, e.prototype._createHandle = function(t, a, n, i, o, s) {
28949    var l = $(this._dragHandle, this, n, false), u = $(this._dragHandle, this, n, true), f = Rr(t.get("handleSize"), i[0]), h = qt(t.get("handleIcon"), -f / 2, -f / 2, f, f, null, true), v = Rw(this._orient);
28950    h.attr({ cursor: v, draggable: true, drift: l, ondragend: u, onmousemove: function(y) {
28951      ya(y.event);
28952    } }), h.x = i[0] / 2, h.useStyle(t.getModel("handleStyle").getItemStyle()), h.setStyle({ strokeNoScale: true, strokeFirst: true }), h.style.lineWidth *= 2, h.ensureState("emphasis").style = t.getModel(["emphasis", "handleStyle"]).getItemStyle(), qn(h, true), a.add(h);
28953    var c = this.visualMapModel.textStyleModel, p = new St({ cursor: v, draggable: true, drift: l, onmousemove: function(y) {
28954      ya(y.event);
28955    }, ondragend: u, style: Nt(c, { x: 0, y: 0, text: "" }) });
28956    p.ensureState("blur").style = { opacity: 0.1 }, p.stateTransition = { duration: 200 }, this.group.add(p);
28957    var d = [f, 0], g = this._shapes;
28958    g.handleThumbs[n] = h, g.handleLabelPoints[n] = d, g.handleLabels[n] = p;
28959  }, e.prototype._createIndicator = function(t, a, n, i, o) {
28960    var s = Rr(t.get("indicatorSize"), n[0]), l = qt(t.get("indicatorIcon"), -s / 2, -s / 2, s, s, null, true);
28961    l.attr({ cursor: "move", invisible: true, silent: true, x: n[0] / 2 });
28962    var u = t.getModel("indicatorStyle").getItemStyle();
28963    if (l instanceof ue) {
28964      var f = l.style;
28965      l.useStyle(z({ image: f.image, x: f.x, y: f.y, width: f.width, height: f.he
28965ight }, u));
28966    } else l.useStyle(u);
28967    a.add(l);
28968    var h = this.visualMapModel.textStyleModel, v = new St({ silent: true, invisible: true, style: Nt(h, { x: 0, y: 0, text: "" }) });
28969    this.group.add(v);
28970    var c = [(o === "horizontal" ? i / 2 : w7) + n[0] / 2, 0], p = this._shapes;
28971    p.indicator = l, p.indicatorLabel = v, p.indicatorLabelPoint = c, this._firstShowIndicator = true;
28972  }, e.prototype._dragHandle = function(t, a, n, i) {
28973    if (this._useHandle) {
28974      if (this._dragging = !a, !a) {
28975        var o = this._applyTransform([n, i], this._shapes.mainGroup, true);
28976        this._updateInterval(t, o[1]), this._hideIndicator(), this._updateView();
28977      }
28978      a === !this.visualMapModel.get("realtime") && this.api.dispatchAction({ type: "selectDataRange", from: this.uid, visualMapId: this.visualMapModel.id, selected: this._dataInterval.slice() }), a ? !this._hovering && this._clearHoverLinkToSeries() : Pw(this.visualMapModel) && this._doHoverLinkToSeries(this._handleEnds[t], false);
28979    }
28980  }, e.prototype._resetInterval = function() {
28981    var t = this.visualMapModel, a = this._dataInterval = t.getSelected(), n = t.getExtent(), i = [0, t.itemSize[1]];
28982    this._handleEnds = [Fr(a[0], n, i, true), Fr(a[1], n, i, true)];
28983  }, e.prototype._updateInterval = function(t, a) {
28984    a = a || 0;
28985    var n = this.visualMapModel, i = this._handleEnds, o = [0, n.itemSize[1]];
28986    Ai(a, i, o, t, 0);
28987    var s = n.getExtent();
28988    this._dataInterval = [Fr(i[0], o, s, true), Fr(i[1], o, s, true)];
28989  }, e.prototype._updateView = function(t) {
28990    var a = this.visualMapModel, n = a.getExtent(), i = this._shapes, o = [0, a.itemSize[1]], s = t ? o : this._handleEnds, l = this._createBarVisual(this._dataInterval, n, s, "inRange"), u = this._createBarVisual(n, n, o, "outOfRange");
28991    i.inRange.setStyle({ fill: l.barColor }).setShape("points", l.barPoints), i.outOfRange.setStyle({ fill: u.barColor }).setShape("points", u.barPoints), this._updateHandle(s, l);
28992  }, e.prototype._createBarVisual = function(t, a, n, i) {
28993    var o = { forceState: i, convertOpacityToAlpha: true }, s = this._makeColorGradient(t, o), l = [this.getControllerVisual(t[0], "symbolSize", o), this.getControllerVisual(t[1], "symbolSize", o)], u = this._createBarPoints(n, l);
28994    return { barColor: new Ro(0, 0, 0, 1, s), barPoints: u, handlesColor: [s[0].color, s[s.length - 1].color] };
28995  }, e.prototype._makeColorGradient = function(t, a) {
28996    var n = 100, i = [], o = (t[1] - t[0]) / n;
28997    i.push({ color: this.getControllerVisual(t[0], "color", a), offset: 0 });
28998    for (var s = 1; s < n; s++) {
28999      var l = t[0] + o * s;
29000      if (l > t[1]) break;
29001      i.push({ color: this.getControllerVisual(l, "color", a), offset: s / n });
29002    }
29003    return i.push({ color: this.getControllerVisual(t[1], "color", a), offset: 1 }), i;
29004  }, e.prototype._createBarPoints = function(t, a) {
29005    var n = this.visualMapModel.itemSize;
29006    return [[n[0] - a[0], t[0]], [n[0], t[0]], [n[0], t[1]], [n[0] - a[1], t[1]]];
29007  }, e.prototype._createBarGroup = function(t) {
29008    var a = this._orient, n = this.visualMapModel.get("inverse");
29009    return new at(a === "horizontal" && !n ? { scaleX: t === "bottom" ? 1 : -1, rotation: Math.PI / 2 } : a === "horizontal" && n ? { scaleX: t === "bottom" ? -1 : 1, rotation: -Math.PI / 2 } : a === "vertical" && !n ? { scaleX: t === "left" ? 1 : -1, scaleY: -1 } : { scaleX: t === "left" ? 1 : -1 });
29010  }, e.prototype._updateHandle = function(t, a) {
29011    if (this._useHandle) {
29012      var n = this._shapes, i = this.visualMapModel, o = n.handleThumbs, s = n.handleLabels, l = i.itemSize, u = i.getExtent(), f = this._applyTransform("left", n.mainGroup);
29013      x7([0, 1], function(h) {
29014        var v = o[h];
29015        v.setStyle("fill", a.handlesColor[h]), v.y = t[h];
29016        var c = Fr(t[h], [0, l[1]], u, true), p = this.getControllerVisual(c, "symbolSize");
29017        v.scaleX = v.scaleY = p / l[0], v.x = l[0] - p / 2;
29018        var d = Ir(n.handleLabelPoints[h], qa(v, this.group));
29019        if (this._orient === "horizontal") {
29020          var g = f === "left" || f === "top" ? (l[0] - p) / 2 : (l[0] - p) / -2;
29021          d[1] += g;
29022        }
29023        s[h].setStyle({ x: d[0], y: d[1], text: i.formatValueText(this._dataInterval[h]), verticalAlign: "middle", align: this._orient === "vertical" ? this._applyTransform("left", n.mainGroup) : "center" });
29024      }, this);
29025    }
29026  }, e.prototype._showIndicator = function(t, a, n, i) {
29027    var o = this.visualMapModel, s = o.getExtent(), l = o.itemSize, u = [0, l[1]], f = this._shapes, h = f.indicator;
29028    if (h) {
29029      h.attr("invisible", false);
29030      var v = { convertOpacityToAlpha: true }, c = this.getControllerVisual(t, "color", v), p = this.getControllerVisual(t, "symbolSize"), d = Fr(t, s, u, true), g = l[0] - p / 2, y = { x: h.x, y: h.y };
29031      h.y = d, h.x = g;
29032      var m = Ir(f.indicatorLabelPoint, qa(h, this.group)), _ = f.indicatorLabel;
29033      _.attr("invisible", false);
29034      var S = this._applyTransform("left", f.mainGroup), b = this._orient, x = b === "horizontal";
29035      _.setStyle({ text: (n || "") + o.formatValueText(a), verticalAlign: x ? S : "middle", align: x ? "center" : S });
29036      var w = { x: g, y: d, style: { fill: c } }, T = { style: { x: m[0], y: m[1] } };
29037      if (o.ecModel.isAnimationEnabled() && !this._firstShowIndicator) {
29038        var C = { duration: 100, easing: "cubicInOut", additive: true };
29039        h.x = y.x, h.y = y.y, h.animateTo(w, C), _.animateTo(T, C);
29040      } else h.attr(w), _.attr(T);
29041      this._firstShowIndicator = false;
29042      var A = this._shapes.handleLabels;
29043      if (A) for (var M = 0; M < A.length; M++) this.api.enterBlur(A[M]);
29044    }
29045  }, e.prototype._enableHoverLinkToSeries = function() {
29046    var t = this;
29047    this._shapes.mainGroup.on("mousemove", function(a) {
29048      if (t._hovering = true, !t._dragging) {
29049        var n = t.visualMapModel.itemSize, i = t._applyTransform([a.offsetX, a.offsetY], t._shapes.mainGroup, true, true);
29050        i[1] = Iw(Ip(0, i[1]), n[1]), t._doHoverLinkToSeries(i[1], 0 <= i[0] && i[0] <= n[0]);
29051      }
29052    }).on("mouseout", function() {
29053      t._hovering = false, !t._dragging && t._clearHoverLinkToSeries();
29054    });
29055  }, e.prototype._enableHoverLinkFromSeries = function() {
29056    var t = this.api.getZr();
29057    this.visualMapModel.option.hoverLink ? (t.on("mouseover", this._hoverLinkFromSeriesMouseOver, this), t.on("mouseout", this._hideIndicator, this)) : this._clearHoverLinkFromSeries();
29058  }, e.prototype._doHoverLinkToSeries = function(t, a) {
29059    var n = this.visualMapModel, i = n.itemSize;
29060    if (n.option.hoverLink) {
29061      var o = [0, i[1]], s = n.getExtent();
29062      t = Iw(Ip(o[0], t), o[1]);
29063      var l = C7(n, s, o), u = [t - l, t + l], f = Fr(t, o, s, true), h 
29063= [Fr(u[0], o, s, true), Fr(u[1], o, s, true)];
29064      u[0] < o[0] && (h[0] = -1 / 0), u[1] > o[1] && (h[1] = 1 / 0), a && (h[0] === -1 / 0 ? this._showIndicator(f, h[1], "< ", l) : h[1] === 1 / 0 ? this._showIndicator(f, h[0], "> ", l) : this._showIndicator(f, f, "\u2248 ", l));
29065      var v = this._hoverLinkDataIndices, c = [];
29066      (a || Pw(n)) && (c = this._hoverLinkDataIndices = n.findTargetDataIndices(h));
29067      var p = yR(v, c);
29068      this._dispatchHighDown("downplay", _f(p[0], n)), this._dispatchHighDown("highlight", _f(p[1], n));
29069    }
29070  }, e.prototype._hoverLinkFromSeriesMouseOver = function(t) {
29071    var a;
29072    if (jn(t.target, function(l) {
29073      var u = it(l);
29074      if (u.dataIndex != null) return a = u, true;
29075    }, true), !!a) {
29076      var n = this.ecModel.getSeriesByIndex(a.seriesIndex), i = this.visualMapModel;
29077      if (i.isTargetSeries(n)) {
29078        var o = n.getData(a.dataType), s = o.getStore().get(i.getDataDimensionIndex(o), a.dataIndex);
29079        isNaN(s) || this._showIndicator(s, s);
29080      }
29081    }
29082  }, e.prototype._hideIndicator = function() {
29083    var t = this._shapes;
29084    t.indicator && t.indicator.attr("invisible", true), t.indicatorLabel && t.indicatorLabel.attr("invisible", true);
29085    var a = this._shapes.handleLabels;
29086    if (a) for (var n = 0; n < a.length; n++) this.api.leaveBlur(a[n]);
29087  }, e.prototype._clearHoverLinkToSeries = function() {
29088    this._hideIndicator();
29089    var t = this._hoverLinkDataIndices;
29090    this._dispatchHighDown("downplay", _f(t, this.visualMapModel)), t.length = 0;
29091  }, e.prototype._clearHoverLinkFromSeries = function() {
29092    this._hideIndicator();
29093    var t = this.api.getZr();
29094    t.off("mouseover", this._hoverLinkFromSeriesMouseOver), t.off("mouseout", this._hideIndicator);
29095  }, e.prototype._applyTransform = function(t, a, n, i) {
29096    var o = qa(a, i ? null : this.group);
29097    return V(t) ? Ir(t, o, n) : Bh(t, o, n);
29098  }, e.prototype._dispatchHighDown = function(t, a) {
29099    a && a.length && this.api.dispatchAction({ type: t, batch: a });
29100  }, e.prototype.dispose = function() {
29101    this._clearHoverLinkFromSeries(), this._clearHoverLinkToSeries();
29102  }, e.type = "visualMap.continuous", e;
29103}(kL);
29104function Lw(r, e, t, a) {
29105  return new Ce({ shape: { points: r }, draggable: !!t, cursor: e, drift: t, onmousemove: function(n) {
29106    ya(n.event);
29107  }, ondragend: a });
29108}
29109function C7(r, e, t) {
29110  var a = b7 / 2, n = r.get("hoverLinkDataSize");
29111  return n && (a = Fr(n, e, t, true) / 2), a;
29112}
29113function Pw(r) {
29114  var e = r.get("hoverLinkOnHandle");
29115  return !!(e ?? r.get("realtime"));
29116}
29117function Rw(r) {
29118  return r === "vertical" ? "ns-resize" : "ew-resize";
29119}
29120var A7 = { type: "selectDataRange", event: "dataRangeSelected", update: "update" }, D7 = function(r, e) {
29121  e.eachComponent({ mainType: "visualMap", query: r }, function(t) {
29122    t.setSelected(r.selected);
29123  });
29124}, M7 = [{ createOnAllSeries: true, reset: function(r, e) {
29125  var t = [];
29126  return e.eachComponent("visualMap", function(a) {
29127    var n = r.pipelineContext;
29128    !a.isTargetSeries(r) || n && n.large || t.push(K8(a.stateList, a.targetVisuals, $(a.getValueState, a), a.getDataDimensionIndex(r.getData())));
29129  }), t;
29130} }, { createOnAllSeries: true, reset: function(r, e) {
29131  var t = r.getData(), a = [];
29132  e.eachComponent("visualMap", function(n) {
29133    if (n.isTargetSeries(r)) {
29134      var i = n.getVisualMeta($(I7, null, r, n)) || { stops: [], outerColors: [] }, o = n.getDataDimensionIndex(t);
29135      o >= 0 && (i.dimension = o, a.push(i));
29136    }
29137  }), r.getData().setVisual("visualMeta", a);
29138} }];
29139function I7(r, e, t, a) {
29140  for (var n = e.targetVisuals[a], i = oe.prepareVisualTypes(n), o = { color: Fl(r.getData(), "color") }, s = 0, l = i.length; s < l; s++) {
29141    var u = i[s], f = n[u === "opacity" ? "__alphaForOpacity" : u];
29142    f && f.applyVisual(t, h, v);
29143  }
29144  return o.color;
29145  function h(c) {
29146    return o[c];
29147  }
29148  function v(c, p) {
29149    o[c] = p;
29150  }
29151}
29152var Ew = D;
29153function L7(r) {
29154  var e = r && r.visualMap;
29155  V(e) || (e = e ? [e] : []), Ew(e, function(t) {
29156    if (t) {
29157      Zi(t, "splitList") && !Zi(t, "pieces") && (t.pieces = t.splitList, delete t.splitList);
29158      var a = t.pieces;
29159      a && V(a) && Ew(a, function(n) {
29160        tt(n) && (Zi(n, "start") && !Zi(n, "min") && (n.min = n.start), Zi(n, "end") && !Zi(n, "max") && (n.max = n.end));
29161      });
29162    }
29163  });
29164}
29165function Zi(r, e) {
29166  return r && r.hasOwnProperty && r.hasOwnProperty(e);
29167}
29168var kw = false;
29169function NL(r) {
29170  kw || (kw = true, r.registerSubTypeDefaulter("visualMap", function(e) {
29171    return !e.categories && (!(e.pieces ? e.pieces.length > 0 : e.splitNumber > 0) || e.calculable) ? "continuous" : "piecewise";
29172  }), r.registerAction(A7, D7), D(M7, function(e) {
29173    r.registerVisual(r.PRIORITY.VISUAL.COMPONENT, e);
29174  }), r.registerPreprocessor(L7));
29175}
29176function BL(r) {
29177  r.registerComponentModel(S7), r.registerComponentView(T7), NL(r);
29178}
29179var P7 = function(r) {
29180  N(e, r);
29181  function e() {
29182    var t = r !== null && r.apply(this, arguments) || this;
29183    return t.type = e.type, t._pieceList = [], t;
29184  }
29185  return e.prototype.optionUpdated = function(t, a) {
29186    r.prototype.optionUpdated.apply(this, arguments), this.resetExtent();
29187    var n = this._mode = this._determineMode();
29188    this._pieceList = [], R7[this._mode].call(this, this._pieceList), this._resetSelected(t, a);
29189    var i = this.option.categories;
29190    this.resetVisual(function(o, s) {
29191      n === "categories" ? (o.mappingMethod = "category", o.categories = rt(i)) : (o.dataExtent = this.getExtent(), o.mappingMethod = "piecewise", o.pieceList = G(this._pieceList, function(l) {
29192        return l = rt(l), s !== "inRange" && (l.visual = null), l;
29193      }));
29194    });
29195  }, e.prototype.completeVisualOption = function() {
29196    var t = this.option, a = {}, n = oe.listVisualTypes(), i = this.isCategory();
29197    D(t.pieces, function(s) {
29198      D(n, function(l) {
29199        s.hasOwnProperty(l) && (a[l] = 1);
29200      });
29201    }), D(a, function(s, l) {
29202      var u = false;
29203      D(this.stateList, function(f) {
29204        u = u || o(t, f, l) || o(t.target, f, l);
29205      }, this), !u && D(this.stateList, function(f) {
29206        (t[f] || (t[f] = {}))[l] = EL.get(l, f === "inRange" ? "active" : "inactive", i);
29207      });
29208    }, this);
29209    function o(s, l, u) {
29210      return s && s[l] && s[l].hasOwnProperty(u);
29211    }
29212    r.prototype.completeVisualOption.apply(this, arguments);
29213  }, e.prototype._resetSelected = function(t, a) {
29214    var n = this.option, i = this._pieceList, o = (a ? n : t).selected || {};
29215    if (n.selected = o, D(i, function(l, u) {
29216      var f = this.getSelectedMapKey(l);
29217      o.hasOwnProperty(f) || (o[f] = true);
29218    }, this), n.selectedMode === "single") {
29219      var s = false;
29220      D(i, function(l, u) {
29221        var f = this.getSelectedMapKey(l);
29222        o[f] && (s ? o[f] = false : s = true);
29223      }, this);
29224    }
29225  }, e.prototype.getItemSymbol = function() {
29226    return this.get("itemSymbol");
29227  }, e.prototype.getSelectedMapKey = function(t) {
29228    return this._mode === "categories" ? t.value + "" : t.index + "";
29229  }, e.prototype.getPieceList = function() {
29230    return this._pieceList;
29231  }, e.prototype._determineMode = function() {
29232    var t = this.option;
29233    return t.pieces && t.pieces.length > 0 ? "pieces" : this.option.categories ? "categories" : "splitNumber";
29234  }, e.prototype.setSelected = function(t) {
29235    this.option.selected = rt(t);
29236  }, e.prototype.getValueState = function(t) {
29237    var a = oe.findPieceIndex(t, this._pieceList);
29238    return a != null && this.option.selected[this.getSelectedMapKey(this._pieceList[a])] ? "inRange" : "outOfRange";
29239  }, e.prototype.findTargetDataIndices = function(t) {
29240    var a = [], n = this._pieceList;
29241    return this.eachTargetSeries(function(i) {
29242      var o = [], s = i.getData();
29243      s.each(this.getDataDimensionIndex(s), function(l, u) {
29244        var f = oe.findPieceIndex(l, n);
29245        f === t && o.push(u);
29246      }, this), a.push({ seriesId: i.id, dataIndex: o });
29247    }, this), a;
29248  }, e.prototype.getRepresentValue = function(t) {
29249    var a;
29250    if (this.isCategory()) a = t.value;
29251    else if (t.value != null) a = t.value;
29252    else {
29253      var n = t.interval || [];
29254      a = n[0] === -1 / 0 && n[1] === 1 / 0 ? 0 : (n[0] + n[1]) / 2;
29255    }
29256    return a;
29257  }, e.prototype.getVisualMeta = function(t) {
29258    if (this.isCategory()) return;
29259    var a = [], n = ["", ""], i = this;
29260    function o(f, h) {
29261      var v = i.getRepresentValue({ interval: f });
29262      h || (h = i.getValueState(v));
29263      var c = t(v, h);
29264      f[0] === -1 / 0 ? n[0] = c : f[1] === 1 / 0 ? n[1] = c : a.push({ value: f[0], color: c }, { value: f[1], color: c });
29265    }
29266    var s = this._pieceList.slice();
29267    if (!s.length) s.push({ interval: [-1 / 0, 1 / 0] });
29268    else {
29269      var l = s[0].interval[0];
29270      l !== -1 / 0 && s.unshift({ interval: [-1 / 0, l] }), l = s[s.length - 1].interval[1], l !== 1 / 0 && s.push({ interval: [l, 1 / 0] });
29271    }
29272    var u = -1 / 0;
29273    return D(s, function(f) {
29274      var h = f.interval;
29275      h && (h[0] > u && o([u, h[0]], "outOfRange"), o(h.slice()), u = h[1]);
29276    }, this), { stops: a, outerColors: n };
29277  }, e.type = "visualMap.piecewise", e.defaultOption = fn(ch.defaultOption, { selected: null, minOpen: false, maxOpen: false, align: "auto", itemWidth: 20, itemHeight: 14, itemSymbol: "roundRect", pieces: null, categories: null, splitNumber: 5, selectedMode: "multiple", itemGap: 10, hoverLink: true }), e;
29278}(ch), R7 = { splitNumber: function(r) {
29279  var e = this.option, t = Math.min(e.precision, 20), a = this.getExtent(), n = e.splitNumber;
29280  n = Math.max(parseInt(n, 10), 1), e.splitNumber = n;
29281  for (var i = (a[1] - a[0]) / n; +i.toFixed(t) !== i && t < 5; ) t++;
29282  e.precision = t, i = +i.toFixed(t), e.minOpen && r.push({ interval: [-1 / 0, a[0]], close: [0, 0] });
29283  for (var o = 0, s = a[0]; o < n; s += i, o++) {
29284    var l = o === n - 1 ? a[1] : s + i;
29285    r.push({ interval: [s, l], close: [1, 1] });
29286  }
29287  e.maxOpen && r.push({ interval: [a[1], 1 / 0], close: [0, 0] }), id(r), D(r, function(u, f) {
29288    u.index = f, u.text = this.formatValueText(u.interval);
29289  }, this);
29290}, categories: function(r) {
29291  var e = this.option;
29292  D(e.categories, function(t) {
29293    r.push({ text: this.formatValueText(t, true), value: t });
29294  }, this), Ow(e, r);
29295}, pieces: function(r) {
29296  var e = this.option;
29297  D(e.pieces, function(t, a) {
29298    tt(t) || (t = { value: t });
29299    var n = { text: "", index: a };
29300    if (t.label != null && (n.text = t.label), t.hasOwnProperty("value")) {
29301      var i = n.value = t.value;
29302      n.interval = [i, i], n.close = [1, 1];
29303    } else {
29304      for (var o = n.interval = [], s = n.close = [0, 0], l = [1, 0, 1], u = [-1 / 0, 1 / 0], f = [], h = 0; h < 2; h++) {
29305        for (var v = [["gte", "gt", "min"], ["lte", "lt", "max"]][h], c = 0; c < 3 && o[h] == null; c++) o[h] = t[v[c]], s[h] = l[c], f[h] = c === 2;
29306        o[h] == null && (o[h] = u[h]);
29307      }
29308      f[0] && o[1] === 1 / 0 && (s[0] = 0), f[1] && o[0] === -1 / 0 && (s[1] = 0), o[0] === o[1] && s[0] && s[1] && (n.value = o[0]);
29309    }
29310    n.visual = oe.retrieveVisuals(t), r.push(n);
29311  }, this), Ow(e, r), id(r), D(r, function(t) {
29312    var a = t.close, n = [["<", "\u2264"][a[1]], [">", "\u2265"][a[0]]];
29313    t.text = t.text || this.formatValueText(t.value != null ? t.value : t.interval, false, n);
29314  }, this);
29315} };
29316function Ow(r, e) {
29317  var t = r.inverse;
29318  (r.orient === "vertical" ? !t : t) && e.reverse();
29319}
29320var E7 = function(r) {
29321  N(e, r);
29322  function e() {
29323    var t = r !== null && r.apply(this, arguments) || this;
29324    return t.type = e.type, t;
29325  }
29326  return e.prototype.doRender = function() {
29327    var t = this.group;
29328    t.removeAll();
29329    var a = this.visualMapModel, n = a.get("textGap"), i = a.textStyleModel, o = i.getFont(), s = i.getTextColor(), l = this._getItemAlign(), u = a.itemSize, f = this._getViewData(), h = f.endsText, v = ne(a.get("showLabel", true), !h), c = !a.get("selectedMode");
29330    h && this._renderEndsText(t, h[0], u, v, l), D(f.viewPieceList, function(p) {
29331      var d = p.piece, g = new at();
29332      g.onclick = $(this._onItemClick, this, d), this._enableHoverLink(g, p.indexInModelPieceList);
29333      var y = a.getRepresentValue(d);
29334      if (this._createItemSymbol(g, y, [0, 0, u[0], u[1]], c), v) {
29335        var m = this.visualMapModel.getValueState(y);
29336        g.add(new St({ style: { x: l === "right" ? -n : u[0] + n, y: u[1] / 2, text: d.text, verticalAlign: "middle", align: l, font: o, fill: s, opacity: m === "outOfRange" ? 0.5 : 1 }, silent: c }));
29337      }
29338      t.add(g);
29339    }, this), h && this._renderEndsText(t, h[1], u, v, l), ni(a.get("orient"), t, a.get("itemGap")), this.renderBackgroun
29339d(t), this.positionGroup(t);
29340  }, e.prototype._enableHoverLink = function(t, a) {
29341    var n = this;
29342    t.on("mouseover", function() {
29343      return i("highlight");
29344    }).on("mouseout", function() {
29345      return i("downplay");
29346    });
29347    var i = function(o) {
29348      var s = n.visualMapModel;
29349      s.option.hoverLink && n.api.dispatchAction({ type: o, batch: _f(s.findTargetDataIndices(a), s) });
29350    };
29351  }, e.prototype._getItemAlign = function() {
29352    var t = this.visualMapModel, a = t.option;
29353    if (a.orient === "vertical") return OL(t, this.api, t.itemSize);
29354    var n = a.align;
29355    return (!n || n === "auto") && (n = "left"), n;
29356  }, e.prototype._renderEndsText = function(t, a, n, i, o) {
29357    if (a) {
29358      var s = new at(), l = this.visualMapModel.textStyleModel;
29359      s.add(new St({ style: Nt(l, { x: i ? o === "right" ? n[0] : 0 : n[0] / 2, y: n[1] / 2, verticalAlign: "middle", align: i ? o : "center", text: a }) })), t.add(s);
29360    }
29361  }, e.prototype._getViewData = function() {
29362    var t = this.visualMapModel, a = G(t.getPieceList(), function(s, l) {
29363      return { piece: s, indexInModelPieceList: l };
29364    }), n = t.get("text"), i = t.get("orient"), o = t.get("inverse");
29365    return (i === "horizontal" ? o : !o) ? a.reverse() : n && (n = n.slice().reverse()), { viewPieceList: a, endsText: n };
29366  }, e.prototype._createItemSymbol = function(t, a, n, i) {
29367    var o = qt(this.getControllerVisual(a, "symbol"), n[0], n[1], n[2], n[3], this.getControllerVisual(a, "color"));
29368    o.silent = i, t.add(o);
29369  }, e.prototype._onItemClick = function(t) {
29370    var a = this.visualMapModel, n = a.option, i = n.selectedMode;
29371    if (i) {
29372      var o = rt(n.selected), s = a.getSelectedMapKey(t);
29373      i === "single" || i === true ? (o[s] = true, D(o, function(l, u) {
29374        o[u] = u === s;
29375      })) : o[s] = !o[s], this.api.dispatchAction({ type: "selectDataRange", from: this.uid, visualMapId: this.visualMapModel.id, selected: o });
29376    }
29377  }, e.type = "visualMap.piecewise", e;
29378}(kL);
29379function zL(r) {
29380  r.registerComponentModel(P7), r.registerComponentView(E7), NL(r);
29381}
29382function k7(r) {
29383  pt(BL), pt(zL);
29384}
29385var O7 = { label: { enabled: true }, decal: { show: false } }, Nw = bt(), N7 = {};
29386function B7(r, e) {
29387  var t = r.getModel("aria");
29388  if (!t.get("enabled")) return;
29389  var a = rt(O7);
29390  ut(a.label, r.getLocaleModel().get("aria"), false), ut(t.option, a, false), n(), i();
29391  function n() {
29392    var u = t.getModel("decal"), f = u.get("show");
29393    if (f) {
29394      var h = Z();
29395      r.eachSeries(function(v) {
29396        if (!v.isColorBySeries()) {
29397          var c = h.get(v.type);
29398          c || (c = {}, h.set(v.type, c)), Nw(v).scope = c;
29399        }
29400      }), r.eachRawSeries(function(v) {
29401        if (r.isSeriesFiltered(v)) return;
29402        if (j(v.enableAriaDecal)) {
29403          v.enableAriaDecal();
29404          return;
29405        }
29406        var c = v.getData();
29407        if (v.isColorBySeries()) {
29408          var m = xd(v.ecModel, v.name, N7, r.getSeriesCount()), _ = c.getVisual("decal");
29409          c.setVisual("decal", S(_, m));
29410        } else {
29411          var p = v.getRawData(), d = {}, g = Nw(v).scope;
29412          c.each(function(b) {
29413            var x = c.getRawIndex(b);
29414            d[x] = b;
29415          });
29416          var y = p.count();
29417          p.each(function(b) {
29418            var x = d[b], w = p.getName(b) || b + "", T = xd(v.ecModel, w, g, y), C = c.getItemVisual(x, "decal");
29419            c.setItemVisual(x, "decal", S(C, T));
29420          });
29421        }
29422        function S(b, x) {
29423          var w = b ? z(z({}, x), b) : x;
29424          return w.dirty = true, w;
29425        }
29426      });
29427    }
29428  }
29429  function i() {
29430    var u = e.getZr().dom;
29431    if (u) {
29432      var f = r.getLocaleModel().get("aria"), h = t.getModel("label");
29433      if (h.option = Q(h.option, f), !!h.get("enabled")) {
29434        if (u.setAttribute("role", "img"), h.get("description")) {
29435          u.setAttribute("aria-label", h.get("description"));
29436          return;
29437        }
29438        var v = r.getSeriesCount(), c = h.get(["data", "maxCount"]) || 10, p = h.get(["series", "maxCount"]) || 10, d = Math.min(v, p), g;
29439        if (!(v < 1)) {
29440          var y = s();
29441          if (y) {
29442            var m = h.get(["general", "withTitle"]);
29443            g = o(m, { title: y });
29444          } else g = h.get(["general", "withoutTitle"]);
29445          var _ = [], S = v > 1 ? h.get(["series", "multiple", "prefix"]) : h.get(["series", "single", "prefix"]);
29446          g += o(S, { seriesCount: v }), r.eachSeries(function(T, C) {
29447            if (C < d) {
29448              var A = void 0, M = T.get("name"), I = M ? "withName" : "withoutName";
29449              A = v > 1 ? h.get(["series", "multiple", I]) : h.get(["series", "single", I]), A = o(A, { seriesId: T.seriesIndex, seriesName: T.get("name"), seriesType: l(T.subType) });
29450              var L = T.getData();
29451              if (L.count() > c) {
29452                var P = h.get(["data", "partialData"]);
29453                A += o(P, { displayCnt: c });
29454              } else A += h.get(["data", "allData"]);
29455              for (var R = h.get(["data", "separator", "middle"]), E = h.get(["data", "separator", "end"]), O = h.get(["data", "excludeDimensionId"]), k = [], B = 0; B < L.count(); B++) if (B < c) {
29456                var F = L.getName(B), H = O ? Ct(L.getValues(B), function(K, J) {
29457                  return vt(O, J) === -1;
29458                }) : L.getValues(B), U = h.get(["data", F ? "withName" : "withoutName"]);
29459                k.push(o(U, { name: F, value: H.join(R) }));
29460              }
29461              A += k.join(R) + E, _.push(A);
29462            }
29463          });
29464          var b = h.getModel(["series", "multiple", "separator"]), x = b.get("middle"), w = b.get("end");
29465          g += _.join(x) + w, u.setAttribute("aria-label", g);
29466        }
29467      }
29468    }
29469  }
29470  function o(u, f) {
29471    if (!Y(u)) return u;
29472    var h = u;
29473    return D(f, function(v, c) {
29474      h = h.replace(new RegExp("\\{\\s*" + c + "\\s*\\}", "g"), v);
29475    }), h;
29476  }
29477  function s() {
29478    var u = r.get("title");
29479    return u && u.length && (u = u[0]), u && u.text;
29480  }
29481  function l(u) {
29482    var f = r.getLocaleModel().get(["series", "typeNames"]);
29483    return f[u] || f.chart;
29484  }
29485}
29486function z7(r) {
29487  if (!(!r || !r.aria)) {
29488    var e = r.aria;
29489    e.show != null && (e.enabled = e.show), e.label = e.label || {}, D(["description", "general", "series", "data"], function(t) {
29490      e[t] != null && (e.label[t] = e[t]);
29491    });
29492  }
29493}
29494function V7(r) {
29495  r.registerPreprocessor(z7), r.registerVisual(r.PRIORITY.VISUAL.ARIA, B7);
29496}
29497var Bw = { value: "eq", "<": "lt", "<=": "lte", ">": "gt", ">=": "gte", "=": "eq", "!=": "ne", "<>": "ne" }, G7 = function() {
29498  function r(e) {
29499    var t = this._condVal = Y(e) ? new RegExp(e) : uT(e) ? e : null;
29500    if (t == null) {
29501      var a = "";
29502      Mt(a);
29503    }
29504  }
29505  return r.prototype.evaluate = function(e) {
29506    var t = typeof e;
29507    return Y(t) ? this._condVal.test(e) : wt(t) ? this._condVal.test(e + "") : false;
29508  }, r;
29509}(), F7 = function() {
29510  function r() {
29511  }
29512  return r.prototype.evaluate = function() {
29513    return this.value;
29514  }, r;
29515}(), H7 = function() {
29516  function r() {
29517  }
29518  return r.prototype.evaluate = function() {
29519    for (var e = this.children, t = 0; t < e.length; t++) if (!e[t].evaluate()) return false;
29520    return true;
29521  }, r;
29522}(), W7 = function() {
29523  function r() {
29524  }
29525  return r.prototype.evaluate = function() {
29526    for (var e = this.children, t = 0; t < e.length; t++) if (e[t].evaluate()) return true;
29527    return false;
29528  }, r;
29529}(), U7 = function() {
29530  function r() {
29531  }
29532  return r.prototype.evaluate = function() {
29533    return !this.child.evaluate();
29534  }, r;
29535}(), Y7 = function() {
29536  function r() {
29537  }
29538  return r.prototype.evaluate = function() {
29539    for (var e = !!this.valueParser, t = this.getValue, a = t(this.valueGetterParam), n = e ? this.valueParser(a) : null, i = 0; i < this.subCondList.length; i++) if (!this.subCondList[i].evaluate(e ? n : a)) return false;
29540    return true;
29541  }, r;
29542}();
29543function Zm(r, e) {
29544  if (r === true || r === false) {
29545    var t = new F7();
29546    return t.value = r, t;
29547  }
29548  var a = "";
29549  return VL(r) || Mt(a), r.and ? zw("and", r, e) : r.or ? zw("or", r, e) : r.not ? $7(r, e) : X7(r, e);
29550}
29551function zw(r, e, t) {
29552  var a = e[r], n = "";
29553  V(a) || Mt(n), a.length || Mt(n);
29554  var i = r === "and" ? new H7() : new W7();
29555  return i.children = G(a, function(o) {
29556    return Zm(o, t);
29557  }), i.children.length || Mt(n), i;
29558}
29559function $7(r, e) {
29560  var t = r.not, a = "";
29561  VL(t) || Mt(a);
29562  var n = new U7();
29563  return n.child = Zm(t, e), n.child || Mt(a), n;
29564}
29565function X7(r, e) {
29566  for (var t = "", a = e.prepareGetValue(r), n = [], i = _t(r), o = r.parser, s = o ? yA(o) : null, l = 0; l < i.length; l++) {
29567    var u = i[l];
29568    if (!(u === "parser" || e.valueGetterAttrMap.get(u))) {
29569      var f = X(Bw, u) ? Bw[u] : u, h = r[u], v = s ? s(h) : h, c = mO(f, v) || f === "reg" && new G7(v);
29570      c || Mt(t), n.push(c);
29571    }
29572  }
29573  n.length || Mt(t);
29574  var p = new Y7();
29575  return p.valueGetterParam = a, p.valueParser = s, p.getValue = e.getValue, p.subCondList = n, p;
29576}
29577function VL(r) {
29578  return tt(r) && !ce(r);
29579}
29580var Z7 = function() {
29581  function r(e, t) {
29582    this._cond = Zm(e, t);
29583  }
29584  return r.prototype.evaluate = function() {
29585    return this._cond.evaluate();
29586  }, r;
29587}();
29588function q7(r, e) {
29589  return new Z7(r, e);
29590}
29591var K7 = { type: "echarts:filter", transform: function(r) {
29592  for (var e = r.upstream, t, a = q7(r.config, { valueGetterAttrMap: Z({ dimension: true }), prepareGetValue: function(s) {
29593    var l = "", u = s.dimension;
29594    X(s, "dimension") || Mt(l);
29595    var f = e.getDimensionInfo(u);
29596    return f || Mt(l), { dimIdx: f.index };
29597  }, getValue: function(s) {
29598    return e.retrieveValueFromItem(t, s.dimIdx);
29599  } }), n = [], i = 0, o = e.count(); i < o; i++) t = e.getRawDataItem(i), a.evaluate() && n.push(t);
29600  return { data: n };
29601} }, j7 = { type: "echarts:sort", transform: function(r) {
29602  var e = r.upstream, t = r.config, a = "", n = Rt(t);
29603  n.length || Mt(a);
29604  var i = [];
29605  D(n, function(f) {
29606    var h = f.dimension, v = f.order, c = f.parser, p = f.incomparable;
29607    if (h == null && Mt(a), v !== "asc" && v !== "desc" && Mt(a), p && p !== "min" && p !== "max") {
29608      var d = "";
29609      Mt(d);
29610    }
29611    if (v !== "asc" && v !== "desc") {
29612      var g = "";
29613      Mt(g);
29614    }
29615    var y = e.getDimensionInfo(h);
29616    y || Mt(a);
29617    var m = c ? yA(c) : null;
29618    c && !m && Mt(a), i.push({ dimIdx: y.index, parser: m, comparator: new _A(v, p) });
29619  });
29620  var o = e.sourceFormat;
29621  o !== Ae && o !== gr && Mt(a);
29622  for (var s = [], l = 0, u = e.count(); l < u; l++) s.push(e.getRawDataItem(l));
29623  return s.sort(function(f, h) {
29624    for (var v = 0; v < i.length; v++) {
29625      var c = i[v], p = e.retrieveValueFromItem(f, c.dimIdx), d = e.retrieveValueFromItem(h, c.dimIdx);
29626      c.parser && (p = c.parser(p), d = c.parser(d));
29627      var g = c.comparator.evaluate(p, d);
29628      if (g !== 0) return g;
29629    }
29630    return 0;
29631  }), { data: s };
29632} };
29633function J7(r) {
29634  r.registerTransform(K7), r.registerTransform(j7);
29635}
29636var Q7 = function(r) {
29637  N(e, r);
29638  function e() {
29639    var t = r !== null && r.apply(this, arguments) || this;
29640    return t.type = "dataset", t;
29641  }
29642  return e.prototype.init = function(t, a, n) {
29643    r.prototype.init.call(this, t, a, n), this._sourceManager = new wA(this), G_(this);
29644  }, e.prototype.mergeOption = function(t, a) {
29645    r.prototype.mergeOption.call(this, t, a), G_(this);
29646  }, e.prototype.optionUpdated = function() {
29647    this._sourceManager.dirty();
29648  }, e.prototype.getSourceManager = function() {
29649    return this._sourceManager;
29650  }, e.type = "dataset", e.defaultOption = { seriesLayoutBy: Kr }, e;
29651}(gt), t$ = function(r) {
29652  N(e, r);
29653  function e() {
29654    var t = r !== null && r.apply(this, arguments) || this;
29655    return t.type = "dataset", t;
29656  }
29657  return e.type = "dataset", e;
29658}(Vt);
29659function e$(r) {
29660  r.registerComponentModel(Q7), r.registerComponentView(t$);
29661}
29662var Vr = ta.CMD;
29663function io(r, e) {
29664  return Math.abs(r - e) < 1e-5;
29665}
29666function wg(r) {
29667  var e = r.data, t = r.len(), a = [], n, i = 0, o = 0, s = 0, l = 0;
29668  function u(L, P) {
29669    n && n.length > 2 && a.push(n), n = [L, P];
29670  }
29671  function f(L, P, R, E) {
29672    io(L, R) && io(P, E) || n.push(L, P, R, E, R, E);
29673  }
29674  function h(L, P, R, E, O, k) {
29675    var B = Math.abs(P - L), F = Math.tan(B / 4) * 4 / 3, H = P < L ? -1 : 1, U = Math.cos(L), K = Math.sin(L), J = Math.
29675cos(P), nt = Math.sin(P), It = U * O + R, Yt = K * k + E, ct = J * O + R, et = nt * k + E, dt = O * F * H, q = k * F * H;
29676    n.push(It - dt * K, Yt + q * U, ct + dt * nt, et - q * J, ct, et);
29677  }
29678  for (var v, c, p, d, g = 0; g < t; ) {
29679    var y = e[g++], m = g === 1;
29680    switch (m && (i = e[g], o = e[g + 1], s = i, l = o, (y === Vr.L || y === Vr.C || y === Vr.Q) && (n = [s, l])), y) {
29681      case Vr.M:
29682        i = s = e[g++], o = l = e[g++], u(s, l);
29683        break;
29684      case Vr.L:
29685        v = e[g++], c = e[g++], f(i, o, v, c), i = v, o = c;
29686        break;
29687      case Vr.C:
29688        n.push(e[g++], e[g++], e[g++], e[g++], i = e[g++], o = e[g++]);
29689        break;
29690      case Vr.Q:
29691        v = e[g++], c = e[g++], p = e[g++], d = e[g++], n.push(i + 2 / 3 * (v - i), o + 2 / 3 * (c - o), p + 2 / 3 * (v - p), d + 2 / 3 * (c - d), p, d), i = p, o = d;
29692        break;
29693      case Vr.A:
29694        var _ = e[g++], S = e[g++], b = e[g++], x = e[g++], w = e[g++], T = e[g++] + w;
29695        g += 1;
29696        var C = !e[g++];
29697        v = Math.cos(w) * b + _, c = Math.sin(w) * x + S, m ? (s = v, l = c, u(s, l)) : f(i, o, v, c), i = Math.cos(T) * b + _, o = Math.sin(T) * x + S;
29698        for (var A = (C ? -1 : 1) * Math.PI / 2, M = w; C ? M > T : M < T; M += A) {
29699          var I = C ? Math.max(M + A, T) : Math.min(M + A, T);
29700          h(M, I, _, S, b, x);
29701        }
29702        break;
29703      case Vr.R:
29704        s = i = e[g++], l = o = e[g++], v = s + e[g++], c = l + e[g++], u(v, l), f(v, l, v, c), f(v, c, s, c), f(s, c, s, l), f(s, l, v, l);
29705        break;
29706      case Vr.Z:
29707        n && f(i, o, s, l), i = s, o = l;
29708        break;
29709    }
29710  }
29711  return n && n.length > 2 && a.push(n), a;
29712}
29713function Tg(r, e, t, a, n, i, o, s, l, u) {
29714  if (io(r, t) && io(e, a) && io(n, o) && io(i, s)) {
29715    l.push(o, s);
29716    return;
29717  }
29718  var f = 2 / u, h = f * f, v = o - r, c = s - e, p = Math.sqrt(v * v + c * c);
29719  v /= p, c /= p;
29720  var d = t - r, g = a - e, y = n - o, m = i - s, _ = d * d + g * g, S = y * y + m * m;
29721  if (_ < h && S < h) {
29722    l.push(o, s);
29723    return;
29724  }
29725  var b = v * d + c * g, x = -v * y - c * m, w = _ - b * b, T = S - x * x;
29726  if (w < h && b >= 0 && T < h && x >= 0) {
29727    l.push(o, s);
29728    return;
29729  }
29730  var C = [], A = [];
29731  en(r, t, n, o, 0.5, C), en(e, a, i, s, 0.5, A), Tg(C[0], A[0], C[1], A[1], C[2], A[2], C[3], A[3], l, u), Tg(C[4], A[4], C[5], A[5], C[6], A[6], C[7], A[7], l, u);
29732}
29733function r$(r, e) {
29734  var t = wg(r), a = [];
29735  e = e || 1;
29736  for (var n = 0; n < t.length; n++) {
29737    var i = t[n], o = [], s = i[0], l = i[1];
29738    o.push(s, l);
29739    for (var u = 2; u < i.length; ) {
29740      var f = i[u++], h = i[u++], v = i[u++], c = i[u++], p = i[u++], d = i[u++];
29741      Tg(s, l, f, h, v, c, p, d, o, e), s = p, l = d;
29742    }
29743    a.push(o);
29744  }
29745  return a;
29746}
29747function GL(r, e, t) {
29748  var a = r[e], n = r[1 - e], i = Math.abs(a / n), o = Math.ceil(Math.sqrt(i * t)), s = Math.floor(t / o);
29749  s === 0 && (s = 1, o = t);
29750  for (var l = [], u = 0; u < o; u++) l.push(s);
29751  var f = o * s, h = t - f;
29752  if (h > 0) for (var u = 0; u < h; u++) l[u % o] += 1;
29753  return l;
29754}
29755function Vw(r, e, t) {
29756  for (var a = r.r0, n = r.r, i = r.startAngle, o = r.endAngle, s = Math.abs(o - i), l = s * n, u = n - a, f = l > Math.abs(u), h = GL([l, u], f ? 0 : 1, e), v = (f ? s : u) / h.length, c = 0; c < h.length; c++) for (var p = (f ? u : s) / h[c], d = 0; d < h[c]; d++) {
29757    var g = {};
29758    f ? (g.startAngle = i + v * c, g.endAngle = i + v * (c + 1), g.r0 = a + p * d, g.r = a + p * (d + 1)) : (g.startAngle = i + p * d, g.endAngle = i + p * (d + 1), g.r0 = a + v * c, g.r = a + v * (c + 1)), g.clockwise = r.clockwise, g.cx = r.cx, g.cy = r.cy, t.push(g);
29759  }
29760}
29761function a$(r, e, t) {
29762  for (var a = r.width, n = r.height, i = a > n, o = GL([a, n], i ? 0 : 1, e), s = i ? "width" : "height", l = i ? "height" : "width", u = i ? "x" : "y", f = i ? "y" : "x", h = r[s] / o.length, v = 0; v < o.length; v++) for (var c = r[l] / o[v], p = 0; p < o[v]; p++) {
29763    var d = {};
29764    d[u] = v * h, d[f] = p * c, d[s] = h, d[l] = c, d.x += r.x, d.y += r.y, t.push(d);
29765  }
29766}
29767function Gw(r, e, t, a) {
29768  return r * a - t * e;
29769}
29770function n$(r, e, t, a, n, i, o, s) {
29771  var l = t - r, u = a - e, f = o - n, h = s - i, v = Gw(f, h, l, u);
29772  if (Math.abs(v) < 1e-6) return null;
29773  var c = r - n, p = e - i, d = Gw(c, p, f, h) / v;
29774  return d < 0 || d > 1 ? null : new ft(d * l + r, d * u + e);
29775}
29776function i$(r, e, t) {
29777  var a = new ft();
29778  ft.sub(a, t, e), a.normalize();
29779  var n = new ft();
29780  ft.sub(n, r, e);
29781  var i = n.dot(a);
29782  return i;
29783}
29784function qi(r, e) {
29785  var t = r[r.length - 1];
29786  t && t[0] === e[0] && t[1] === e[1] || r.push(e);
29787}
29788function o$(r, e, t) {
29789  for (var a = r.length, n = [], i = 0; i < a; i++) {
29790    var o = r[i], s = r[(i + 1) % a], l = n$(o[0], o[1], s[0], s[1], e.x, e.y, t.x, t.y);
29791    l && n.push({ projPt: i$(l, e, t), pt: l, idx: i });
29792  }
29793  if (n.length < 2) return [{ points: r }, { points: r }];
29794  n.sort(function(g, y) {
29795    return g.projPt - y.projPt;
29796  });
29797  var u = n[0], f = n[n.length - 1];
29798  if (f.idx < u.idx) {
29799    var h = u;
29800    u = f, f = h;
29801  }
29802  for (var v = [u.pt.x, u.pt.y], c = [f.pt.x, f.pt.y], p = [v], d = [c], i = u.idx + 1; i <= f.idx; i++) qi(p, r[i].slice());
29803  qi(p, c), qi(p, v);
29804  for (var i = f.idx + 1; i <= u.idx + a; i++) qi(d, r[i % a].slice());
29805  return qi(d, v), qi(d, c), [{ points: p }, { points: d }];
29806}
29807function Fw(r) {
29808  var e = r.points, t = [], a = [];
29809  Rh(e, t, a);
29810  var n = new ht(t[0], t[1], a[0] - t[0], a[1] - t[1]), i = n.width, o = n.height, s = n.x, l = n.y, u = new ft(), f = new ft();
29811  return i > o ? (u.x = f.x = s + i / 2, u.y = l, f.y = l + o) : (u.y = f.y = l + o / 2, u.x = s, f.x = s + i), o$(e, u, f);
29812}
29813function ph(r, e, t, a) {
29814  if (t === 1) a.push(e);
29815  else {
29816    var n = Math.floor(t / 2), i = r(e);
29817    ph(r, i[0], n, a), ph(r, i[1], t - n, a);
29818  }
29819  return a;
29820}
29821function s$(r, e) {
29822  for (var t = [], a = 0; a < e; a++) t.push(ey(r));
29823  return t;
29824}
29825function l$(r, e) {
29826  e.setStyle(r.style), e.z = r.z, e.z2 = r.z2, e.zlevel = r.zlevel;
29827}
29828function u$(r) {
29829  for (var e = [], t = 0; t < r.length; ) e.push([r[t++], r[t++]]);
29830  return e;
29831}
29832function f$(r, e) {
29833  var t = [], a = r.shape, n;
29834  switch (r.type) {
29835    case "rect":
29836      a$(a, e, t), n = xt;
29837      break;
29838    case "sector":
29839      Vw(a, e, t), n = Te;
29840      break;
29841    case "circle":
29842      Vw({ r0: 0, r: a.r, startAngle: 0, endAngle: Math.PI * 2, cx: a.cx, cy: a.cy }, e, t), n = Te;
29843      break;
29844    default:
29845      var i = r.getComputedTransform(), o = i ? Math.sqrt(Math.max(i[0] * i[0] + i[1] * i[1], i[2] * i[2] + i[3] * i[3])) : 1, s = G(r$(r.getUpdatedPathProxy(), o), function(y) {
29846        return u$(y);
29847      }), l = s.length;
29848      if (l === 0) ph(Fw, { points: s[0] }, e, t);
29849      else if (l === e) for (var u = 0; u < l; u++) t.push({ points: s[u] });
29850      else {
29851        var f = 0, h = G(s, function(y) {
29852          var m = [], _ = [];
29853          Rh(y, m, _);
29854          var S = (_[1] - m[1]) * (_[0] - m[0]);
29855          return f += S, { poly: y, area: S };
29856        });
29857        h.sort(function(y, m) {
29858          return m.area - y.area;
29859        });
29860        for (var v = e, u = 0; u < l; u++) {
29861          var c = h[u];
29862          if (v <= 0) break;
29863          var p = u === l - 1 ? v : Math.ceil(c.area / f * e);
29864          p < 0 || (ph(Fw, { points: c.poly }, p, t), v -= p);
29865        }
29866      }
29867      n = Ce;
29868      break;
29869  }
29870  if (!n) return s$(r, e);
29871  for (var d = [], u = 0; u < t.length; u++) {
29872    var g = new n();
29873    g.setShape(t[u]), l$(r, g), d.push(g);
29874  }
29875  return d;
29876}
29877function h$(r, e) {
29878  var t = r.length, a = e.length;
29879  if (t === a) return [r, e];
29880  for (var n = [], i = [], o = t < a ? r : e, s = Math.min(t, a), l = Math.abs(a - t) / 6, u = (s - 2) / 6, f = Math.ceil(l / u) + 1, h = [o[0], o[1]], v = l, c = 2; c < s; ) {
29881    var p = o[c - 2], d = o[c - 1], g = o[c++], y = o[c++], m = o[c++], _ = o[c++], S = o[c++], b = o[c++];
29882    if (v <= 0) {
29883      h.push(g, y, m, _, S, b);
29884      continue;
29885    }
29886    for (var x = Math.min(v, f - 1) + 1, w = 1; w <= x; w++) {
29887      var T = w / x;
29888      en(p, g, m, S, T, n), en(d, y, _, b, T, i), p = n[3], d = i[3], h.push(n[1], i[1], n[2], i[2], p, d), g = n[5], y = i[5], m = n[6], _ = i[6];
29889    }
29890    v -= x - 1;
29891  }
29892  return o === r ? [h, e] : [r, h];
29893}
29894function Hw(r, e) {
29895  for (var t = r.length, a = r[t - 2], n = r[t - 1], i = [], o = 0; o < e.length; ) i[o++] = a, i[o++] = n;
29896  return i;
29897}
29898function v$(r, e) {
29899  for (var t, a, n, i = [], o = [], s = 0; s < Math.max(r.length, e.length); s++) {
29900    var l = r[s], u = e[s], f = void 0, h = void 0;
29901    l ? u ? (t = h$(l, u), f = t[0], h = t[1], a = f, n = h) : (h = Hw(n || l, l), f = l) : (f = Hw(a || u, u), h = u), i.push(f), o.push(h);
29902  }
29903  return [i, o];
29904}
29905function Ww(r) {
29906  for (var e = 0, t = 0, a = 0, n = r.length, i = 0, o = n - 2; i < n; o = i, i += 2) {
29907    var s = r[o], l = r[o + 1], u = r[i], f = r[i + 1], h = s * f - u * l;
29908    e += h, t += (s + u) * h, a += (l + f) * h;
29909  }
29910  return e === 0 ? [r[0] || 0, r[1] || 0] : [t / e / 3, a / e / 3, e];
29911}
29912function c$(r, e, t, a) {
29913  for (var n = (r.length - 2) / 6, i = 1 / 0, o = 0, s = r.length, l = s - 2, u = 0; u < n; u++) {
29914    for (var f = u * 6, h = 0, v = 0; v < s; v += 2) {
29915      var c = v === 0 ? f : (f + v - 2) % l + 2, p = r[c] - t[0], d = r[c + 1] - t[1], g = e[v] - a[0], y = e[v + 1] - a[1], m = g - p, _ = y - d;
29916      h += m * m + _ * _;
29917    }
29918    h < i && (i = h, o = u);
29919  }
29920  return o;
29921}
29922function p$(r) {
29923  for (var e = [], t = r.length, a = 0; a < t; a += 2) e[a] = r[t - a - 2], e[a + 1] = r[t - a - 1];
29924  return e;
29925}
29926function d$(r, e, t, a) {
29927  for (var n = [], i, o = 0; o < r.length; o++) {
29928    var s = r[o], l = e[o], u = Ww(s), f = Ww(l);
29929    i == null && (i = u[2] < 0 != f[2] < 0);
29930    var h = [], v = [], c = 0, p = 1 / 0, d = [], g = s.length;
29931    i && (s = p$(s));
29932    for (var y = c$(s, l, u, f) * 6, m = g - 2, _ = 0; _ < m;
29932 _ += 2) {
29933      var S = (y + _) % m + 2;
29934      h[_ + 2] = s[S] - u[0], h[_ + 3] = s[S + 1] - u[1];
29935    }
29936    h[0] = s[y] - u[0], h[1] = s[y + 1] - u[1];
29937    for (var b = a / t, x = -a / 2; x <= a / 2; x += b) {
29938      for (var w = Math.sin(x), T = Math.cos(x), C = 0, _ = 0; _ < s.length; _ += 2) {
29939        var A = h[_], M = h[_ + 1], I = l[_] - f[0], L = l[_ + 1] - f[1], P = I * T - L * w, R = I * w + L * T;
29940        d[_] = P, d[_ + 1] = R;
29941        var E = P - A, O = R - M;
29942        C += E * E + O * O;
29943      }
29944      if (C < p) {
29945        p = C, c = x;
29946        for (var k = 0; k < d.length; k++) v[k] = d[k];
29947      }
29948    }
29949    n.push({ from: h, to: v, fromCp: u, toCp: f, rotation: -c });
29950  }
29951  return n;
29952}
29953function dh(r) {
29954  return r.__isCombineMorphing;
29955}
29956var FL = "__mOriginal_";
29957function gh(r, e, t) {
29958  var a = FL + e, n = r[a] || r[e];
29959  r[a] || (r[a] = r[e]);
29960  var i = t.replace, o = t.after, s = t.before;
29961  r[e] = function() {
29962    var l = arguments, u;
29963    return s && s.apply(this, l), i ? u = i.apply(this, l) : u = n.apply(this, l), o && o.apply(this, l), u;
29964  };
29965}
29966function js(r, e) {
29967  var t = FL + e;
29968  r[t] && (r[e] = r[t], r[t] = null);
29969}
29970function Uw(r, e) {
29971  for (var t = 0; t < r.length; t++) for (var a = r[t], n = 0; n < a.length; ) {
29972    var i = a[n], o = a[n + 1];
29973    a[n++] = e[0] * i + e[2] * o + e[4], a[n++] = e[1] * i + e[3] * o + e[5];
29974  }
29975}
29976function HL(r, e) {
29977  var t = r.getUpdatedPathProxy(), a = e.getUpdatedPathProxy(), n = v$(wg(t), wg(a)), i = n[0], o = n[1], s = r.getComputedTransform(), l = e.getComputedTransform();
29978  function u() {
29979    this.transform = null;
29980  }
29981  s && Uw(i, s), l && Uw(o, l), gh(e, "updateTransform", { replace: u }), e.transform = null;
29982  var f = d$(i, o, 10, Math.PI), h = [];
29983  gh(e, "buildPath", { replace: function(v) {
29984    for (var c = e.__morphT, p = 1 - c, d = [], g = 0; g < f.length; g++) {
29985      var y = f[g], m = y.from, _ = y.to, S = y.rotation * c, b = y.fromCp, x = y.toCp, w = Math.sin(S), T = Math.cos(S);
29986      Bs(d, b, x, c);
29987      for (var C = 0; C < m.length; C += 2) {
29988        var A = m[C], M = m[C + 1], I = _[C], L = _[C + 1], P = A * p + I * c, R = M * p + L * c;
29989        h[C] = P * T - R * w + d[0], h[C + 1] = P * w + R * T + d[1];
29990      }
29991      var E = h[0], O = h[1];
29992      v.moveTo(E, O);
29993      for (var C = 2; C < m.length; ) {
29994        var I = h[C++], L = h[C++], k = h[C++], B = h[C++], F = h[C++], H = h[C++];
29995        E === I && O === L && k === F && B === H ? v.lineTo(F, H) : v.bezierCurveTo(I, L, k, B, F, H), E = F, O = H;
29996      }
29997    }
29998  } });
29999}
30000function qm(r, e, t) {
30001  if (!r || !e) return e;
30002  var a = t.done, n = t.during;
30003  HL(r, e), e.__morphT = 0;
30004  function i() {
30005    js(e, "buildPath"), js(e, "updateTransform"), e.__morphT = -1, e.createPathProxy(), e.dirtyShape();
30006  }
30007  return e.animateTo({ __morphT: 1 }, Q({ during: function(o) {
30008    e.dirtyShape(), n && n(o);
30009  }, done: function() {
30010    i(), a && a();
30011  } }, t)), e;
30012}
30013function g$(r, e, t, a, n, i) {
30014  var o = 16;
30015  r = n === t ? 0 : Math.round(32767 * (r - t) / (n - t)), e = i === a ? 0 : Math.round(32767 * (e - a) / (i - a));
30016  for (var s = 0, l, u = (1 << o) / 2; u > 0; u /= 2) {
30017    var f = 0, h = 0;
30018    (r & u) > 0 && (f = 1), (e & u) > 0 && (h = 1), s += u * u * (3 * f ^ h), h === 0 && (f === 1 && (r = u - 1 - r, e = u - 1 - e), l = r, r = e, e = l);
30019  }
30020  return s;
30021}
30022function yh(r) {
30023  var e = 1 / 0, t = 1 / 0, a = -1 / 0, n = -1 / 0, i = G(r, function(s) {
30024    var l = s.getBoundingRect(), u = s.getComputedTransform(), f = l.x + l.width / 2 + (u ? u[4] : 0), h = l.y + l.height / 2 + (u ? u[5] : 0);
30025    return e = Math.min(f, e), t = Math.min(h, t), a = Math.max(f, a), n = Math.max(h, n), [f, h];
30026  }), o = G(i, function(s, l) {
30027    return { cp: s, z: g$(s[0], s[1], e, t, a, n), path: r[l] };
30028  });
30029  return o.sort(function(s, l) {
30030    return s.z - l.z;
30031  }).map(function(s) {
30032    return s.path;
30033  });
30034}
30035function WL(r) {
30036  return f$(r.path, r.count);
30037}
30038function Cg() {
30039  return { fromIndividuals: [], toIndividuals: [], count: 0 };
30040}
30041function y$(r, e, t) {
30042  var a = [];
30043  function n(b) {
30044    for (var x = 0; x < b.length; x++) {
30045      var w = b[x];
30046      dh(w) ? n(w.childrenRef()) : w instanceof mt && a.push(w);
30047    }
30048  }
30049  n(r);
30050  var i = a.length;
30051  if (!i) return Cg();
30052  var o = t.dividePath || WL, s = o({ path: e, count: i });
30053  if (s.length !== i) return console.error("Invalid morphing: unmatched splitted path"), Cg();
30054  a = yh(a), s = yh(s);
30055  for (var l = t.done, u = t.during, f = t.individualDelay, h = new ca(), v = 0; v < i; v++) {
30056    var c = a[v], p = s[v];
30057    p.parent = e, p.copyTransform(h), f || HL(c, p);
30058  }
30059  e.__isCombineMorphing = true, e.childrenRef = function() {
30060    return s;
30061  };
30062  function d(b) {
30063    for (var x = 0; x < s.length; x++) s[x].addSelfToZr(b);
30064  }
30065  gh(e, "addSelfToZr", { after: function(b) {
30066    d(b);
30067  } }), gh(e, "removeSelfFromZr", { after: function(b) {
30068    for (var x = 0; x < s.length; x++) s[x].removeSelfFromZr(b);
30069  } });
30070  function g() {
30071    e.__isCombineMorphing = false, e.__morphT = -1, e.childrenRef = null, js(e, "addSelfToZr"), js(e, "removeSelfFromZr");
30072  }
30073  var y = s.length;
30074  if (f) for (var m = y, _ = function() {
30075    m--, m === 0 && (g(), l && l());
30076  }, v = 0; v < y; v++) {
30077    var S = f ? Q({ delay: (t.delay || 0) + f(v, y, a[v], s[v]), done: _ }, t) : t;
30078    qm(a[v], s[v], S);
30079  }
30080  else e.__morphT = 0, e.animateTo({ __morphT: 1 }, Q({ during: function(b) {
30081    for (var x = 0; x < y; x++) {
30082      var w = s[x];
30083      w.__morphT = e.__morphT, w.dirtyShape();
30084    }
30085    u && u(b);
30086  }, done: function() {
30087    g();
30088    for (var b = 0; b < r.length; b++) js(r[b], "updateTransform");
30089    l && l();
30090  } }, t));
30091  return e.__zr && d(e.__zr), { fromIndividuals: a, toIndividuals: s, count: y };
30092}
30093function m$(r, e, t) {
30094  var a = e.length, n = [], i = t.dividePath || WL;
30095  function o(c) {
30096    for (var p = 0; p < c.length; p++) {
30097      var d = c[p];
30098      dh(d) ? o(d.childrenRef()) : d instanceof mt && n.push(d);
30099    }
30100  }
30101  if (dh(r)) {
30102    o(r.childrenRef());
30103    var s = n.length;
30104    if (s < a) for (var l = 0, u = s; u < a; u++) n.push(ey(n[l++ % s]));
30105    n.length = a;
30106  } else {
30107    n = i({ path: r, count: a });
30108    for (var f = r.getComputedTransform(), u = 0; u < n.length; u++) n[u].setLocalTransform(f);
30109    if (n.length !== a) return console.error("Invalid morphing: unmatched splitted path"), Cg();
30110  }
30111  n = yh(n), e = yh(e);
30112  for (var h = t.individualDelay, u = 0; u < a; u++) {
30113    var v = h ? Q({ delay: (t.delay || 0) + h(u, a, n[u], e[u]) }, t) : t;
30114    qm(n[u], e[u], v);
30115  }
30116  return { fromIndividuals: n, toIndividuals: e, count: e.length };
30117}
30118function Yw(r) {
30119  return V(r[0]);
30120}
30121function $w(r, e) {
30122  for (var t = [], a = r.length, n = 0; n < a; n++) t.push({ one: r[n], many: [] });
30123  for (var n = 0; n < e.length; n++) {
30124    var i = e[n].length, o = void 0;
30125    for (o = 0; o < i; o++) t[o % a].many.push(e[n][o]);
30126  }
30127  for (var s = 0, n = a - 1; n >= 0; n--) if (!t[n].many.length) {
30128    var l = t[s].many;
30129    if (l.length <= 1) if (s) s = 0;
30130    else return t;
30131    var i = l.length, u = Math.ceil(i / 2);
30132    t[n].many = l.slice(u, i), t[s].many = l.slice(0, u), s++;
30133  }
30134  return t;
30135}
30136var _$ = { clone: function(r) {
30137  for (var e = [], t = 1 - Math.pow(1 - r.path.style.opacity, 1 / r.count), a = 0; a < r.count; a++) {
30138    var n = ey(r.path);
30139    n.setStyle("opacity", t), e.push(n);
30140  }
30141  return e;
30142}, split: null };
30143function Lp(r, e, t, a, n, i) {
30144  if (!r.length || !e.length) return;
30145  var o = Eo("update", a, n);
30146  if (!(o && o.duration > 0)) return;
30147  var s = a.getModel("universalTransition").get("delay"), l = Object.assign({ setToFinal: true }, o), u, f;
30148  Yw(r) && (u = r, f = e), Yw(e) && (u = e, f = r);
30149  function h(y, m, _, S, b) {
30150    var x = y.many, w = y.one;
30151    if (x.length === 1 && !b) {
30152      var T = m ? x[0] : w, C = m ? w : x[0];
30153      if (dh(T)) h({ many: [T], one: C }, true, _, S, true);
30154      else {
30155        var A = s ? Q({ delay: s(_, S) }, l) : l;
30156        qm(T, C, A), i(T, C, T, C, A);
30157      }
30158    } else for (var M = Q({ dividePath: _$[t], individualDelay: s && function(O, k, B, F) {
30159      return s(O + _, S);
30160    } }, l), I = m ? y$(x, w, M) : m$(w, x, M), L = I.fromIndividuals, P = I.toIndividuals, R = L.length, E = 0; E < R; E++) {
30161      var A = s ? Q({ delay: s(E, R) }, l) : l;
30162      i(L[E], P[E], m ? x[E] : y.one, m ? y.one : x[E], A);
30163    }
30164  }
30165  for (var v = u ? u === r : r.length > e.length, c = u ? $w(f, u) : $w(v ? e : r, [v ? r : e]), p = 0, d = 0; d < c.length; d++) p += c[d].many.length;
30166  for (var g = 0, d = 0; d < c.length; d++) h(c[d], v, g, p), g += c[d].many.length;
30167}
30168function Hn(r) {
30169  if (!r) return [];
30170  if (V(r)) {
30171    for (var e = [], t = 0; t < r.length; t++) e.push(Hn(r[t]));
30172    return e;
30173  }
30174  var a = [];
30175  return r.traverse(function(n) {
30176    n instanceof mt && !n.disableMorphing && !n.invisible && !n.ignore && a.push(n);
30177  }), a;
30178}
30179var UL = 1e4, S$ = 0, Xw = 1, Zw = 2, x$ = bt();
30180function b$(r, e) {
30181  for (var t = r.dimensions, a = 0; a < t.length; a++) {
30182    var n = r.getDimensionInfo(t[a]);
30183    if (n && n.otherDims[e] === 0) return t[a];
30184  }
30185}
30186function w$(r, e, t) {
30187  var a = r.getDimensionInfo(t), n = a && a.ordinalMeta;
30188  if (a) {
30189    var i = r.get(a.name, e);
30190    return n && n.categories[i] || i + "";
30191  }
30192}
30193function qw(r, e, t, a) {
30194  var n = a ? "itemChildGroupId" : "itemGroupId", i = b$(r, n);
30195  if (i) {
30196    var o = w$(r, e, i);
30197    return o;
30198  }
30199  var s = r.getRawDataItem(e), l = a ? "childGroupId" : "groupId";
30200  if (s && s[l]) return s[l] + "";
30201  if (!a) return t || r.getId(e);
30202}
30203function Kw(r) {
30204  var e = [];
30205  return D(r, function(t) {
30206    var a = t.data, n = t.dataGroupId;
30207    if (!(a.count() > UL)) for (var i = a.getIndices(), o = 0; o < i.length; o++) e.push({ data: a, groupId: qw(a, o, n, false), childGroupId: qw(a, o, n, true), divide: t.divi
30207de, dataIndex: o });
30208  }), e;
30209}
30210function Pp(r, e, t) {
30211  r.traverse(function(a) {
30212    a instanceof mt && Gt(a, { style: { opacity: 0 } }, e, { dataIndex: t, isFrom: true });
30213  });
30214}
30215function Rp(r) {
30216  if (r.parent) {
30217    var e = r.getComputedTransform();
30218    r.setLocalTransform(e), r.parent.remove(r);
30219  }
30220}
30221function Ki(r) {
30222  r.stopAnimation(), r.isGroup && r.traverse(function(e) {
30223    e.stopAnimation();
30224  });
30225}
30226function T$(r, e, t) {
30227  var a = Eo("update", t, e);
30228  a && r.traverse(function(n) {
30229    if (n instanceof vr) {
30230      var i = rk(n);
30231      i && n.animateFrom({ style: i }, a);
30232    }
30233  });
30234}
30235function C$(r, e) {
30236  var t = r.length;
30237  if (t !== e.length) return false;
30238  for (var a = 0; a < t; a++) {
30239    var n = r[a], i = e[a];
30240    if (n.data.getId(n.dataIndex) !== i.data.getId(i.dataIndex)) return false;
30241  }
30242  return true;
30243}
30244function YL(r, e, t) {
30245  var a = Kw(r), n = Kw(e);
30246  function i(_, S, b, x, w) {
30247    (b || _) && S.animateFrom({ style: b && b !== _ ? z(z({}, b.style), _.style) : _.style }, w);
30248  }
30249  var o = false, s = S$, l = Z(), u = Z();
30250  a.forEach(function(_) {
30251    _.groupId && l.set(_.groupId, true), _.childGroupId && u.set(_.childGroupId, true);
30252  });
30253  for (var f = 0; f < n.length; f++) {
30254    var h = n[f].groupId;
30255    if (u.get(h)) {
30256      s = Xw;
30257      break;
30258    }
30259    var v = n[f].childGroupId;
30260    if (v && l.get(v)) {
30261      s = Zw;
30262      break;
30263    }
30264  }
30265  function c(_, S) {
30266    return function(b) {
30267      var x = b.data, w = b.dataIndex;
30268      return S ? x.getId(w) : _ ? s === Xw ? b.childGroupId : b.groupId : s === Zw ? b.childGroupId : b.groupId;
30269    };
30270  }
30271  var p = C$(a, n), d = {};
30272  if (!p) for (var f = 0; f < n.length; f++) {
30273    var g = n[f], y = g.data.getItemGraphicEl(g.dataIndex);
30274    y && (d[y.id] = true);
30275  }
30276  function m(_, S) {
30277    var b = a[S], x = n[_], w = x.data.hostModel, T = b.data.getItemGraphicEl(b.dataIndex), C = x.data.getItemGraphicEl(x.dataIndex);
30278    if (T === C) {
30279      C && T$(C, x.dataIndex, w);
30280      return;
30281    }
30282    T && d[T.id] || C && (Ki(C), T ? (Ki(T), Rp(T), o = true, Lp(Hn(T), Hn(C), x.divide, w, _, i)) : Pp(C, w, _));
30283  }
30284  new Sa(a, n, c(true, p), c(false, p), null, "multiple").update(m).updateManyToOne(function(_, S) {
30285    var b = n[_], x = b.data, w = x.hostModel, T = x.getItemGraphicEl(b.dataIndex), C = Ct(G(S, function(A) {
30286      return a[A].data.getItemGraphicEl(a[A].dataIndex);
30287    }), function(A) {
30288      return A && A !== T && !d[A.id];
30289    });
30290    T && (Ki(T), C.length ? (D(C, function(A) {
30291      Ki(A), Rp(A);
30292    }), o = true, Lp(Hn(C), Hn(T), b.divide, w, _, i)) : Pp(T, w, b.dataIndex));
30293  }).updateOneToMany(function(_, S) {
30294    var b = a[S], x = b.data.getItemGraphicEl(b.dataIndex);
30295    if (!(x && d[x.id])) {
30296      var w = Ct(G(_, function(C) {
30297        return n[C].data.getItemGraphicEl(n[C].dataIndex);
30298      }), function(C) {
30299        return C && C !== x;
30300      }), T = n[_[0]].data.hostModel;
30301      w.length && (D(w, function(C) {
30302        return Ki(C);
30303      }), x ? (Ki(x), Rp(x), o = true, Lp(Hn(x), Hn(w), b.divide, T, _[0], i)) : D(w, function(C) {
30304        return Pp(C, T, _[0]);
30305      }));
30306    }
30307  }).updateManyToMany(function(_, S) {
30308    new Sa(S, _, function(b) {
30309      return a[b].data.getId(a[b].dataIndex);
30310    }, function(b) {
30311      return n[b].data.getId(n[b].dataIndex);
30312    }).update(function(b, x) {
30313      m(_[b], S[x]);
30314    }).execute();
30315  }).execute(), o && D(e, function(_) {
30316    var S = _.data, b = S.hostModel, x = b && t.getViewOfSeriesModel(b), w = Eo("update", b, 0);
30317    x && b.isAnimationEnabled() && w && w.duration > 0 && x.group.traverse(function(T) {
30318      T instanceof mt && !T.animators.length && T.animateFrom({ style: { opacity: 0 } }, w);
30319    });
30320  });
30321}
30322function jw(r) {
30323  var e = r.getModel("universalTransition").get("seriesKey");
30324  return e || r.id;
30325}
30326function Jw(r) {
30327  return V(r) ? r.sort().join(",") : r;
30328}
30329function za(r) {
30330  if (r.hostModel) return r.hostModel.getModel("universalTransition").get("divideShape");
30331}
30332function A$(r, e) {
30333  var t = Z(), a = Z(), n = Z();
30334  return D(r.oldSeries, function(i, o) {
30335    var s = r.oldDataGroupIds[o], l = r.oldData[o], u = jw(i), f = Jw(u);
30336    a.set(f, { dataGroupId: s, data: l }), V(u) && D(u, function(h) {
30337      n.set(h, { key: f, dataGroupId: s, data: l });
30338    });
30339  }), D(e.updatedSeries, function(i) {
30340    if (i.isUniversalTransitionEnabled() && i.isAnimationEnabled()) {
30341      var o = i.get("dataGroupId"), s = i.getData(), l = jw(i), u = Jw(l), f = a.get(u);
30342      if (f) t.set(u, { oldSeries: [{ dataGroupId: f.dataGroupId, divide: za(f.data), data: f.data }], newSeries: [{ dataGroupId: o, divide: za(s), data: s }] });
30343      else if (V(l)) {
30344        var h = [];
30345        D(l, function(p) {
30346          var d = a.get(p);
30347          d.data && h.push({ dataGroupId: d.dataGroupId, divide: za(d.data), data: d.data });
30348        }), h.length && t.set(u, { oldSeries: h, newSeries: [{ dataGroupId: o, data: s, divide: za(s) }] });
30349      } else {
30350        var v = n.get(l);
30351        if (v) {
30352          var c = t.get(v.key);
30353          c || (c = { oldSeries: [{ dataGroupId: v.dataGroupId, data: v.data, divide: za(v.data) }], newSeries: [] }, t.set(v.key, c)), c.newSeries.push({ dataGroupId: o, data: s, divide: za(s) });
30354        }
30355      }
30356    }
30357  }), t;
30358}
30359function Qw(r, e) {
30360  for (var t = 0; t < r.length; t++) {
30361    var a = e.seriesIndex != null && e.seriesIndex === r[t].seriesIndex || e.seriesId != null && e.seriesId === r[t].id;
30362    if (a) return t;
30363  }
30364}
30365function D$(r, e, t, a) {
30366  var n = [], i = [];
30367  D(Rt(r.from), function(o) {
30368    var s = Qw(e.oldSeries, o);
30369    s >= 0 && n.push({ dataGroupId: e.oldDataGroupIds[s], data: e.oldData[s], divide: za(e.oldData[s]), groupIdDim: o.dimension });
30370  }), D(Rt(r.to), function(o) {
30371    var s = Qw(t.updatedSeries, o);
30372    if (s >= 0) {
30373      var l = t.updatedSeries[s].getData();
30374      i.push({ dataGroupId: e.oldDataGroupIds[s], data: l, divide: za(l), groupIdDim: o.dimension });
30375    }
30376  }), n.length > 0 && i.length > 0 && YL(n, i, a);
30377}
30378function M$(r) {
30379  r.registerUpdateLifecycle("series:beforeupdate", function(e, t, a) {
30380    D(Rt(a.seriesTransition), function(n) {
30381      D(Rt(n.to), function(i) {
30382        for (var o = a.updatedSeries, s = 0; s < o.length; s++) (i.seriesIndex != null && i.seriesIndex === o[s].seriesIndex || i.seriesId != null && i.seriesId === o[s].id) && (o[s][vf] = true);
30383      });
30384    });
30385  }), r.registerUpdateLifecycle("series:transition", function(e, t, a) {
30386    var n = x$(t);
30387    if (n.oldSeries && a.updatedSeries && a.optionChanged) {
30388      var i = a.seriesTransition;
30389      if (i) D(Rt(i), function(c) {
30390        D$(c, n, a, t);
30391      });
30392      else {
30393        var o = A$(n, a);
30394        D(o.keys(), function(c) {
30395          var p = o.get(c);
30396          YL(p.oldSeries, p.newSeries, t);
30397        });
30398      }
30399      D(a.updatedSeries, function(c) {
30400        c[vf] && (c[vf] = false);
30401      });
30402    }
30403    for (var s = e.getSeries(), l = n.oldSeries = [], u = n.oldDataGroupIds = [], f = n.oldData = [], h = 0; h < s.length; h++) {
30404      var v = s[h].getData();
30405      v.count() < UL && (l.push(s[h]), u.push(s[h].get("dataGroupId")), f.push(v));
30406    }
30407  });
30408}
30409pt([zV]);
30410pt([EV]);
30411pt([n5, _5, I5, lG, _G, iF, EF, g3, z3, U3, Q3, XH, m4, I4, Y4, q4, iW, vW, wW, IW, VW, b6]);
30412pt(F6);
30413pt(cU);
30414pt(WM);
30415pt(AU);
30416pt(MI);
30417pt(LU);
30418pt(VU);
30419pt(A8);
30420pt(Y8);
30421pt(jl);
30422pt(lY);
30423pt(hY);
30424pt(xY);
30425pt(MY);
30426pt(kY);
30427pt(GY);
30428pt(KY);
30429pt(p7);
30430pt(PL);
30431pt(RL);
30432pt(k7);
30433pt(BL);
30434pt(zL);
30435pt(V7);
30436pt(J7);
30437pt(e$);
30438pt(M$);
30439pt(Qz);
30440const I$ = Object.freeze(Object.defineProperty({ __proto__: null, Axis: yr, ChartView: Pt, ComponentModel: gt, ComponentView: Vt, List: be, Model: At, PRIORITY: JA, SeriesModel: Et, color: xP, connect: lB, dataTool: dB, dependencies: UN, disConnect: uB, disconnect: oD, dispose: fB, env: yt, extendChartView: Gz, extendComponentModel: Bz, extendComponentView: zz, extendSeriesModel: Vz, format: Az, getCoordinateSystemDimensions: vB, getInstanceByDom: Ry, getInstanceById: hB, getMap: pB, graphic: Cz, helper: yz, init: sB, innerDrawElementOnCanvas: My, matrix: Q2, number: wz, parseGeoJSON: Nd, parseGeoJson: Nd, registerAction: kr, registerCoordinateSystem: uD, registerLayout: fD, registerLoading: By, registerLocale: fy, registerMap: hD, registerPostInit: sD, registerPostUpdate: lD, registerPreprocessor: ky, registerProcessor: Oy, registerTheme: Ey, registerTransform: vD, registerUpdateLifecycle: qh, registerVisual: hn, setCanvasCreator: cB, setPlatformAPI: nT, throttle: Xh, time: Tz, use: pt, util: Dz, vector: V2, version: WN, zrUtil: R2, zrender: rR }, Symbol.toStringTag, { value: "Module" }));
30441var li = {}, Qa = {}, $L = {};
30442(function(r) {
30443  Object.defineProperty(r, "__esModule", { value: true }), r.default = void 0;
30444  var e = 1;
30445  r.default = function() {
30446    return "".concat(e++);
30447  };
30448})($L);
30449var lv = {}, uv = {}, Km = {};
30450(function(r) {
30451  Object.defineProperty(r, "__esModule", { value: true }), r.default = void 0, r.default = function(t) {
30452    var a = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 60, n = null;
30453    return function() {
30454      for (var i = this, o = arguments.length, s = new Array(o), l = 0; l < o; l++) s[l] = arguments[l];
30455      clearTimeout(n), n = setTimeout(function() {
30456        t.apply(i, s);
30457      }, a);
30458    };
30459  };
30460})(Km);
30461var jr = {};
30462Object.defineProperty(jr, "__esModule", { value: true });
30463jr.SizeSensorId = jr.SensorTabIndex = jr.SensorClassName = void 0;
30464jr.SizeSensorId = "size-sensor-id";
30465jr.SensorClassName = "size-sensor-object";
30466jr.SensorTabIndex = "-1";
30467Object.defineProperty(uv, "__esModule", { value: true });
30468uv.createSensor = void 0;
30469var L$ = P$(Km), Ep = jr;
30470function P$(r) {
30471  return r && r.__esModule ? r : { default: r };
30472}
30473uv.createSensor = function(e, t) {
30474  var a = void 0, n = [], i = function() {
30475    getComputedStyle(e).position === "static" && (e.style.position = "relative");
30476    var h = document.createElement("object");
30477    return h.onload = function() {
30478      h.contentDocument.defaultView.addEventListener("resize", o), o();
30479    }, h.style.display = "block", h.style.position = "absolute", h.style.top = "0", h.style.left = "0", h.style.height = "100%", h.style.width = "100%", h.style.overflow = "hidden", h.style.pointerEvents = "none", h.style.zIndex = "-1", h.style.opacity = "0", h.setAttribute("class", Ep.SensorClassName), h.setAttribute("tabindex", Ep.SensorTabIndex), h.type = "text/html", e.a
30479ppendChild(h), h.data = "about:blank", h;
30480  }, o = (0, L$.default)(function() {
30481    n.forEach(function(f) {
30482      f(e);
30483    });
30484  }), s = function(h) {
30485    a || (a = i()), n.indexOf(h) === -1 && n.push(h);
30486  }, l = function() {
30487    a && a.parentNode && (a.contentDocument && a.contentDocument.defaultView.removeEventListener("resize", o), a.parentNode.removeChild(a), e.removeAttribute(Ep.SizeSensorId), a = void 0, n = [], t && t());
30488  }, u = function(h) {
30489    var v = n.indexOf(h);
30490    v !== -1 && n.splice(v, 1), n.length === 0 && a && l();
30491  };
30492  return { element: e, bind: s, destroy: l, unbind: u };
30493};
30494var fv = {};
30495Object.defineProperty(fv, "__esModule", { value: true });
30496fv.createSensor = void 0;
30497var R$ = jr, E$ = k$(Km);
30498function k$(r) {
30499  return r && r.__esModule ? r : { default: r };
30500}
30501fv.createSensor = function(e, t) {
30502  var a = void 0, n = [], i = (0, E$.default)(function() {
30503    n.forEach(function(f) {
30504      f(e);
30505    });
30506  }), o = function() {
30507    var h = new ResizeObserver(i);
30508    return h.observe(e), i(), h;
30509  }, s = function(h) {
30510    a || (a = o()), n.indexOf(h) === -1 && n.push(h);
30511  }, l = function() {
30512    a && a.disconnect(), n = [], a = void 0, e.removeAttribute(R$.SizeSensorId), t && t();
30513  }, u = function(h) {
30514    var v = n.indexOf(h);
30515    v !== -1 && n.splice(v, 1), n.length === 0 && a && l();
30516  };
30517  return { element: e, bind: s, destroy: l, unbind: u };
30518};
30519Object.defineProperty(lv, "__esModule", { value: true });
30520lv.createSensor = void 0;
30521var O$ = uv, N$ = fv;
30522lv.createSensor = typeof ResizeObserver < "u" ? N$.createSensor : O$.createSensor;
30523Object.defineProperty(Qa, "__esModule", { value: true });
30524Qa.removeSensor = Qa.getSensor = Qa.Sensors = void 0;
30525var B$ = V$($L), z$ = lv, Ag = jr;
30526function V$(r) {
30527  return r && r.__esModule ? r : { default: r };
30528}
30529var Js = Qa.Sensors = {};
30530function XL(r) {
30531  r && Js[r] && delete Js[r];
30532}
30533Qa.getSensor = function(e) {
30534  var t = e.getAttribute(Ag.SizeSensorId);
30535  if (t && Js[t]) return Js[t];
30536  var a = (0, B$.default)();
30537  e.setAttribute(Ag.SizeSensorId, a);
30538  var n = (0, z$.createSensor)(e, function() {
30539    return XL(a);
30540  });
30541  return Js[a] = n, n;
30542};
30543Qa.removeSensor = function(e) {
30544  var t = e.element.getAttribute(Ag.SizeSensorId);
30545  e.destroy(), XL(t);
30546};
30547var jm, Jm;
30548Object.defineProperty(li, "__esModule", { value: true });
30549li.ver = Jm = li.clear = jm = li.bind = void 0;
30550var Dg = Qa;
30551jm = li.bind = function(e, t) {
30552  var a = (0, Dg.getSensor)(e);
30553  return a.bind(t), function() {
30554    a.unbind(t);
30555  };
30556};
30557Jm = li.clear = function(e) {
30558  var t = (0, Dg.getSensor)(e);
30559  (0, Dg.removeSensor)(t);
30560};
30561li.ver = "1.0.3";
30562function tT(r, e) {
30563  var t = {};
30564  return e.forEach(function(a) {
30565    t[a] = r[a];
30566  }), t;
30567}
30568function kp(r) {
30569  return typeof r == "function";
30570}
30571function G$(r) {
30572  return typeof r == "string";
30573}
30574var F$ = function(r) {
30575  rT(e, r);
30576  function e(t) {
30577    var a = r.call(this, t) || this;
30578    return a.echarts = t.echarts, a.ele = null, a.isInitialResize = true, a.eventHandlerRefs = {}, a;
30579  }
30580  return e.prototype.componentDidMount = function() {
30581    this.renderNewEcharts();
30582  }, e.prototype.componentDidUpdate = function(t) {
30583    var a = this.props.shouldSetOption;
30584    if (!(kp(a) && !a(t, this.props))) {
30585      if (!Mi(t.theme, this.props.theme) || !Mi(t.opts, this.props.opts)) {
30586        this.dispose(), this.renderNewEcharts();
30587        return;
30588      }
30589      var n = this.getEchartsInstance();
30590      Mi(t.onEvents, this.props.onEvents) || (this.unbindEvents(n), this.bindEvents(n, this.props.onEvents));
30591      var i = ["option", "notMerge", "replaceMerge", "lazyUpdate", "showLoading", "loadingOption"];
30592      Mi(tT(this.props, i), tT(t, i)) || this.updateEChartsOption(), (!Mi(t.style, this.props.style) || !Mi(t.className, this.props.className)) && this.resize();
30593    }
30594  }, e.prototype.componentWillUnmount = function() {
30595    this.dispose();
30596  }, e.prototype.initEchartsInstance = function() {
30597    return t0(this, void 0, void 0, function() {
30598      var t = this;
30599      return e0(this, function(a) {
30600        return [2, new Promise(function(n) {
30601          t.echarts.init(t.ele, t.props.theme, t.props.opts);
30602          var i = t.getEchartsInstance();
30603          i.on("finished", function() {
30604            var o = t.ele.clientWidth, s = t.ele.clientHeight;
30605            t.echarts.dispose(t.ele);
30606            var l = ks({ width: o, height: s }, t.props.opts);
30607            n(t.echarts.init(t.ele, t.props.theme, l));
30608          });
30609        })];
30610      });
30611    });
30612  }, e.prototype.getEchartsInstance = function() {
30613    return this.echarts.getInstanceByDom(this.ele);
30614  }, e.prototype.dispose = function() {
30615    if (this.ele) {
30616      try {
30617        Jm(this.ele);
30618      } catch (t) {
30619        console.warn(t);
30620      }
30621      this.echarts.dispose(this.ele);
30622    }
30623  }, e.prototype.renderNewEcharts = function() {
30624    return t0(this, void 0, void 0, function() {
30625      var t, a, n, i, o, s, l = this;
30626      return e0(this, function(u) {
30627        switch (u.label) {
30628          case 0:
30629            return t = this.props, a = t.onEvents, n = t.onChartReady, i = t.autoResize, o = i === void 0 ? true : i, [4, this.initEchartsInstance()];
30630          case 1:
30631            return u.sent(), s = this.updateEChartsOption(), this.bindEvents(s, a || {}), kp(n) && n(s), this.ele && o && jm(this.ele, function() {
30632              l.resize();
30633            }), [2];
30634        }
30635      });
30636    });
30637  }, e.prototype.bindEvents = function(t, a) {
30638    var n = this, i = function(s, l) {
30639      if (G$(s) && kp(l)) {
30640        var u = function(f) {
30641          l(f, t);
30642        };
30643        t.on(s, u), n.eventHandlerRefs[s] = u;
30644      }
30645    };
30646    for (var o in a) Object.prototype.hasOwnProperty.call(a, o) && i(o, a[o]);
30647  }, e.prototype.unbindEvents = function(t) {
30648    for (var a = 0, n = Object.entries(this.eventHandlerRefs); a < n.length; a++) {
30649      var i = n[a], o = i[0], s = i[1];
30650      t.off(o, s);
30651    }
30652    this.eventHandlerRefs = {};
30653  }, e.prototype.updateEChartsOption = function() {
30654    var t = this.props, a = t.option, n = t.notMerge, i = n === void 0 ? false : n, o = t.replaceMerge, s = o === void 0 ? null : o, l = t.lazyUpdate, u = l === void 0 ? false : l, f = t.showLoading, h = t.loadingOption, v = h === void 0 ? null : h, c = this.getEchartsInstance();
30655    return c.setOption(a, { notMerge: i, replaceMerge: s, lazyUpdate: u }), f ? c.showLoading(v) : c.hideLoading(), c;
30656  }, e.prototype.resize = function() {
30657    var t = this.getEchartsInstance();
30658    if (!this.isInitialResize) try {
30659      t.resize({ width: "auto", height: "auto" });
30660    } catch (a) {
30661      console.warn(a);
30662    }
30663    this.isInitialResize = false;
30664  }, e.prototype.render = function() {
30665    var t = this, a = this.props, n = a.style, i = a.className, o = i === void 0 ? "" : i;
30666    a.echarts, a.option, a.theme, a.notMerge, a.replaceMerge, a.lazyUpdate, a.showLoading, a.loadingOption, a.opts, a.onChartReady, a.onEvents, a.shouldSetOption, a.autoResize;
30667    var s = d2(a, ["style", "className", "echarts", "option", "theme", "notMerge", "replaceMerge", "lazyUpdate", "showLoading", "loadingOption", "opts", "onChartReady", "onEvents", "shouldSetOption", "autoResize"]), l = ks({ height: 300 }, n);
30668    return ZL.createElement("div", ks({ ref: function(u) {
30669      t.ele = u;
30670    }, style: l, className: "echarts-for-react ".concat(o) }, s));
30671  }, e;
30672}(Kt.PureComponent), Y$ = function(r) {
30673  rT(e, r);
30674  function e(t) {
30675    var a = r.call(this, t) || this;
30676    return a.echarts = I$, a;
30677  }
30678  return e;
30679}(F$);
30680export {
30681  Y$ as E,
30682  Mg as S
30683};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.