diff --git a/_includes/head.html b/_includes/head.html
index 9713a03..d20a5c9 100644
--- a/_includes/head.html
+++ b/_includes/head.html
@@ -21,8 +21,4 @@
-
-
-
-
\ No newline at end of file
diff --git a/assets/js/bootstrap.min.js b/assets/js/bootstrap.min.js
deleted file mode 100644
index 2dd5553..0000000
--- a/assets/js/bootstrap.min.js
+++ /dev/null
@@ -1,1758 +0,0 @@
-/*!
- * Bootstrap v3.3.7 (http://getbootstrap.com)
- * Copyright 2011-2016 Twitter, Inc.
- * Licensed under the MIT license
- */
-if ("undefined" == typeof jQuery)
- throw new Error("Bootstrap's JavaScript requires jQuery");
-
-+ function (a) {
- "use strict";
- var b = a
- .fn
- .jquery
- .split(" ")[0]
- .split(".");
- if (b[0] < 2 && b[1] < 9 || 1 == b[0] && 9 == b[1] && b[2] < 1 || b[0] > 3)
- throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than v" +
- "ersion 4")
- }(jQuery), + function (a) {
- "use strict";
- function b() {
- var a = document.createElement("bootstrap"),
- b = {
- WebkitTransition: "webkitTransitionEnd",
- MozTransition: "transitionend",
- OTransition: "oTransitionEnd otransitionend",
- transition: "transitionend"
- };
- for (var c in b)
- if (void 0 !== a.style[c])
- return {end: b[c]};
- return !1
- }
- a.fn.emulateTransitionEnd = function (b) {
- var c = !1,
- d = this;
- a(this).one("bsTransitionEnd", function () {
- c = !0
- });
- var e = function () {
- c || a(d).trigger(a.support.transition.end)
- };
- return setTimeout(e, b),
- this
- },
- a(function () {
- a.support.transition = b(),
- a.support.transition && (a.event.special.bsTransitionEnd = {
- bindType: a.support.transition.end,
- delegateType: a.support.transition.end,
- handle: function (b) {
- if (a(b.target).is(this))
- return b.handleObj.handler.apply(this, arguments)
- }
- })
- })
-}(jQuery), + function (a) {
- "use strict";
- function b(b) {
- return this.each(function () {
- var c = a(this),
- e = c.data("bs.alert");
- e || c.data("bs.alert", e = new d(this)),
- "string" == typeof b && e[b].call(c)
- })
- }
- var c = '[data-dismiss="alert"]',
- d = function (b) {
- a(b).on("click", c, this.close)
- };
- d.VERSION = "3.3.7",
- d.TRANSITION_DURATION = 150,
- d.prototype.close = function (b) {
- function c() {
- g
- .detach()
- .trigger("closed.bs.alert")
- .remove()
- }
- var e = a(this),
- f = e.attr("data-target");
- f || (f = e.attr("href"), f = f && f.replace(/.*(?=#[^\s]*$)/, ""));
- var g = a("#" === f
- ? []
- : f);
- b && b.preventDefault(),
- g.length || (g = e.closest(".alert")),
- g.trigger(b = a.Event("close.bs.alert")),
- b.isDefaultPrevented() || (g.removeClass("in"), a.support.transition && g.hasClass("fade")
- ? g.one("bsTransitionEnd", c).emulateTransitionEnd(d.TRANSITION_DURATION)
- : c())
- };
- var e = a.fn.alert;
- a.fn.alert = b,
- a.fn.alert.Constructor = d,
- a.fn.alert.noConflict = function () {
- return a.fn.alert = e,
- this
- },
- a(document).on("click.bs.alert.data-api", c, d.prototype.close)
-}(jQuery), + function (a) {
- "use strict";
- function b(b) {
- return this.each(function () {
- var d = a(this),
- e = d.data("bs.button"),
- f = "object" == typeof b && b;
- e || d.data("bs.button", e = new c(this, f)),
- "toggle" == b
- ? e.toggle()
- : b && e.setState(b)
- })
- }
- var c = function (b, d) {
- this.$element = a(b),
- this.options = a.extend({}, c.DEFAULTS, d),
- this.isLoading = !1
- };
- c.VERSION = "3.3.7",
- c.DEFAULTS = {
- loadingText: "loading..."
- },
- c.prototype.setState = function (b) {
- var c = "disabled",
- d = this.$element,
- e = d.is("input")
- ? "val"
- : "html",
- f = d.data();
- b += "Text",
- null == f.resetText && d.data("resetText", d[e]()),
- setTimeout(a.proxy(function () {
- d[e](null == f[b]
- ? this.options[b]
- : f[b]),
- "loadingText" == b
- ? (this.isLoading = !0, d.addClass(c).attr(c, c).prop(c, !0))
- : this.isLoading && (this.isLoading = !1, d.removeClass(c).removeAttr(c).prop(c, !1))
- }, this), 0)
- },
- c.prototype.toggle = function () {
- var a = !0,
- b = this
- .$element
- .closest('[data-toggle="buttons"]');
- if (b.length) {
- var c = this
- .$element
- .find("input");
- "radio" == c.prop("type")
- ? (c.prop("checked") && (a = !1), b.find(".active").removeClass("active"), this.$element.addClass("active"))
- : "checkbox" == c.prop("type") && (c.prop("checked") !== this.$element.hasClass("active") && (a = !1), this.$element.toggleClass("active")),
- c.prop("checked", this.$element.hasClass("active")),
- a && c.trigger("change")
- } else
- this
- .$element
- .attr("aria-pressed", !this.$element.hasClass("active")),
- this
- .$element
- .toggleClass("active")
- };
- var d = a.fn.button;
- a.fn.button = b,
- a.fn.button.Constructor = c,
- a.fn.button.noConflict = function () {
- return a.fn.button = d,
- this
- },
- a(document).on("click.bs.button.data-api", '[data-toggle^="button"]', function (c) {
- var d = a(c.target).closest(".btn");
- b.call(d, "toggle"),
- a(c.target).is('input[type="radio"], input[type="checkbox"]') || (c.preventDefault(), d.is("input,button")
- ? d.trigger("focus")
- : d.find("input:visible,button:visible").first().trigger("focus"))
- })
- .on("focus.bs.button.data-api blur.bs.button.data-api", '[data-toggle^="button"]', function (b) {
- a(b.target)
- .closest(".btn")
- .toggleClass("focus", /^focus(in)?$/.test(b.type))
- })
-}(jQuery), + function (a) {
- "use strict";
- function b(b) {
- return this.each(function () {
- var d = a(this),
- e = d.data("bs.carousel"),
- f = a.extend({}, c.DEFAULTS, d.data(), "object" == typeof b && b),
- g = "string" == typeof b
- ? b
- : f.slide;
- e || d.data("bs.carousel", e = new c(this, f)),
- "number" == typeof b
- ? e.to(b)
- : g
- ? e[g]()
- : f.interval && e
- .pause()
- .cycle()
- })
- }
- var c = function (b, c) {
- this.$element = a(b),
- this.$indicators = this
- .$element
- .find(".carousel-indicators"),
- this.options = c,
- this.paused = null,
- this.sliding = null,
- this.interval = null,
- this.$active = null,
- this.$items = null,
- this.options.keyboard && this
- .$element
- .on("keydown.bs.carousel", a.proxy(this.keydown, this)),
- "hover" == this.options.pause && !("ontouchstart" in document.documentElement) && this
- .$element
- .on("mouseenter.bs.carousel", a.proxy(this.pause, this))
- .on("mouseleave.bs.carousel", a.proxy(this.cycle, this))
- };
- c.VERSION = "3.3.7",
- c.TRANSITION_DURATION = 600,
- c.DEFAULTS = {
- interval: 5e3,
- pause: "hover",
- wrap: !0,
- keyboard: !0
- },
- c.prototype.keydown = function (a) {
- if (!/input|textarea/i.test(a.target.tagName)) {
- switch (a.which) {
- case 37:
- this.prev();
- break;
- case 39:
- this.next();
- break;
- default:
- return
- }
- a.preventDefault()
- }
- },
- c.prototype.cycle = function (b) {
- return b || (this.paused = !1),
- this.interval && clearInterval(this.interval),
- this.options.interval && !this.paused && (this.interval = setInterval(a.proxy(this.next, this), this.options.interval)),
- this
- },
- c.prototype.getItemIndex = function (a) {
- return this.$items = a
- .parent()
- .children(".item"),
- this
- .$items
- .index(a || this.$active)
- },
- c.prototype.getItemForDirection = function (a, b) {
- var c = this.getItemIndex(b),
- d = "prev" == a && 0 === c || "next" == a && c == this.$items.length - 1;
- if (d && !this.options.wrap)
- return b;
- var e = "prev" == a
- ? -1
- : 1,
- f = (c + e) % this.$items.length;
- return this
- .$items
- .eq(f)
- },
- c.prototype.to = function (a) {
- var b = this,
- c = this.getItemIndex(this.$active = this.$element.find(".item.active"));
- if (!(a > this.$items.length - 1 || a < 0))
- return this.sliding
- ? this.$element.one("slid.bs.carousel", function () {
- b.to(a)
- })
- : c == a
- ? this.pause().cycle()
- : this.slide(a > c
- ? "next"
- : "prev", this.$items.eq(a))
- },
- c.prototype.pause = function (b) {
- return b || (this.paused = !0),
- this
- .$element
- .find(".next, .prev")
- .length && a.support.transition && (this.$element.trigger(a.support.transition.end), this.cycle(!0)),
- this.interval = clearInterval(this.interval),
- this
- },
- c.prototype.next = function () {
- if (!this.sliding)
- return this.slide("next")
- },
- c.prototype.prev = function () {
- if (!this.sliding)
- return this.slide("prev")
- },
- c.prototype.slide = function (b, d) {
- var e = this
- .$element
- .find(".item.active"),
- f = d || this.getItemForDirection(b, e),
- g = this.interval,
- h = "next" == b
- ? "left"
- : "right",
- i = this;
- if (f.hasClass("active"))
- return this.sliding = !1;
- var j = f[0],
- k = a.Event("slide.bs.carousel", {
- relatedTarget: j,
- direction: h
- });
- if (this.$element.trigger(k), !k.isDefaultPrevented()) {
- if (this.sliding = !0, g && this.pause(), this.$indicators.length) {
- this
- .$indicators
- .find(".active")
- .removeClass("active");
- var l = a(this.$indicators.children()[this.getItemIndex(f)]);
- l && l.addClass("active")
- }
- var m = a.Event("slid.bs.carousel", {
- relatedTarget: j,
- direction: h
- });
- return a.support.transition && this
- .$element
- .hasClass("slide")
- ? (f.addClass(b), f[0].offsetWidth, e.addClass(h), f.addClass(h), e.one("bsTransitionEnd", function () {
- f
- .removeClass([b, h].join(" "))
- .addClass("active"),
- e.removeClass(["active", h].join(" ")),
- i.sliding = !1,
- setTimeout(function () {
- i
- .$element
- .trigger(m)
- }, 0)
- }).emulateTransitionEnd(c.TRANSITION_DURATION))
- : (e.removeClass("active"), f.addClass("active"), this.sliding = !1, this.$element.trigger(m)),
- g && this.cycle(),
- this
- }
- };
- var d = a.fn.carousel;
- a.fn.carousel = b,
- a.fn.carousel.Constructor = c,
- a.fn.carousel.noConflict = function () {
- return a.fn.carousel = d,
- this
- };
- var e = function (c) {
- var d,
- e = a(this),
- f = a(e.attr("data-target") || (d = e.attr("href")) && d.replace(/.*(?=#[^\s]+$)/, ""));
- if (f.hasClass("carousel")) {
- var g = a.extend({}, f.data(), e.data()),
- h = e.attr("data-slide-to");
- h && (g.interval = !1),
- b.call(f, g),
- h && f
- .data("bs.carousel")
- .to(h),
- c.preventDefault()
- }
- };
- a(document)
- .on("click.bs.carousel.data-api", "[data-slide]", e)
- .on("click.bs.carousel.data-api", "[data-slide-to]", e),
- a(window).on("load", function () {
- a('[data-ride="carousel"]')
- .each(function () {
- var c = a(this);
- b.call(c, c.data())
- })
- })
-}(jQuery), + function (a) {
- "use strict";
- function b(b) {
- var c,
- d = b.attr("data-target") || (c = b.attr("href")) && c.replace(/.*(?=#[^\s]+$)/, "");
- return a(d)
- }
- function c(b) {
- return this.each(function () {
- var c = a(this),
- e = c.data("bs.collapse"),
- f = a.extend({}, d.DEFAULTS, c.data(), "object" == typeof b && b);
- !e && f.toggle && /show|hide/.test(b) && (f.toggle = !1),
- e || c.data("bs.collapse", e = new d(this, f)),
- "string" == typeof b && e[b]()
- })
- }
- var d = function (b, c) {
- this.$element = a(b),
- this.options = a.extend({}, d.DEFAULTS, c),
- this.$trigger = a('[data-toggle="collapse"][href="#' + b.id + '"],[data-toggle="collapse"][data-target="#' + b.id + '"]'),
- this.transitioning = null,
- this.options.parent
- ? this.$parent = this.getParent()
- : this.addAriaAndCollapsedClass(this.$element, this.$trigger),
- this.options.toggle && this.toggle()
- };
- d.VERSION = "3.3.7",
- d.TRANSITION_DURATION = 350,
- d.DEFAULTS = {
- toggle: !0
- },
- d.prototype.dimension = function () {
- var a = this
- .$element
- .hasClass("width");
- return a
- ? "width"
- : "height"
- },
- d.prototype.show = function () {
- if (!this.transitioning && !this.$element.hasClass("in")) {
- var b,
- e = this.$parent && this
- .$parent
- .children(".panel")
- .children(".in, .collapsing");
- if (!(e && e.length && (b = e.data("bs.collapse"), b && b.transitioning))) {
- var f = a.Event("show.bs.collapse");
- if (this.$element.trigger(f), !f.isDefaultPrevented()) {
- e && e.length && (c.call(e, "hide"), b || e.data("bs.collapse", null));
- var g = this.dimension();
- this
- .$element
- .removeClass("collapse")
- .addClass("collapsing")[g](0)
- .attr("aria-expanded", !0),
- this
- .$trigger
- .removeClass("collapsed")
- .attr("aria-expanded", !0),
- this.transitioning = 1;
- var h = function () {
- this
- .$element
- .removeClass("collapsing")
- .addClass("collapse in")[g](""),
- this.transitioning = 0,
- this
- .$element
- .trigger("shown.bs.collapse")
- };
- if (!a.support.transition)
- return h.call(this);
- var i = a.camelCase(["scroll", g].join("-"));
- this
- .$element
- .one("bsTransitionEnd", a.proxy(h, this))
- .emulateTransitionEnd(d.TRANSITION_DURATION)[g](this.$element[0][i])
- }
- }
- }
- },
- d.prototype.hide = function () {
- if (!this.transitioning && this.$element.hasClass("in")) {
- var b = a.Event("hide.bs.collapse");
- if (this.$element.trigger(b), !b.isDefaultPrevented()) {
- var c = this.dimension();
- this.$element[c](this.$element[c]())[0].offsetHeight,
- this
- .$element
- .addClass("collapsing")
- .removeClass("collapse in")
- .attr("aria-expanded", !1),
- this
- .$trigger
- .addClass("collapsed")
- .attr("aria-expanded", !1),
- this.transitioning = 1;
- var e = function () {
- this.transitioning = 0,
- this
- .$element
- .removeClass("collapsing")
- .addClass("collapse")
- .trigger("hidden.bs.collapse")
- };
- return a.support.transition
- ? void this
- .$element[c](0)
- .one("bsTransitionEnd", a.proxy(e, this))
- .emulateTransitionEnd(d.TRANSITION_DURATION)
- : e.call(this)
- }
- }
- },
- d.prototype.toggle = function () {
- this[this
- .$element
- .hasClass("in")
- ? "hide"
- : "show"]()
- },
- d.prototype.getParent = function () {
- return a(this.options.parent)
- .find('[data-toggle="collapse"][data-parent="' + this.options.parent + '"]')
- .each(a.proxy(function (c, d) {
- var e = a(d);
- this.addAriaAndCollapsedClass(b(e), e)
- }, this))
- .end()
- },
- d.prototype.addAriaAndCollapsedClass = function (a, b) {
- var c = a.hasClass("in");
- a.attr("aria-expanded", c),
- b
- .toggleClass("collapsed", !c)
- .attr("aria-expanded", c)
- };
- var e = a.fn.collapse;
- a.fn.collapse = c,
- a.fn.collapse.Constructor = d,
- a.fn.collapse.noConflict = function () {
- return a.fn.collapse = e,
- this
- },
- a(document).on("click.bs.collapse.data-api", '[data-toggle="collapse"]', function (d) {
- var e = a(this);
- e.attr("data-target") || d.preventDefault();
- var f = b(e),
- g = f.data("bs.collapse"),
- h = g
- ? "toggle"
- : e.data();
- c.call(f, h)
- })
-}(jQuery), + function (a) {
- "use strict";
- function b(b) {
- var c = b.attr("data-target");
- c || (c = b.attr("href"), c = c && /#[A-Za-z]/.test(c) && c.replace(/.*(?=#[^\s]*$)/, ""));
- var d = c && a(c);
- return d && d.length
- ? d
- : b.parent()
- }
- function c(c) {
- c && 3 === c.which || (a(e).remove(), a(f).each(function () {
- var d = a(this),
- e = b(d),
- f = {
- relatedTarget: this
- };
- e.hasClass("open") && (c && "click" == c.type && /input|textarea/i.test(c.target.tagName) && a.contains(e[0], c.target) || (e.trigger(c = a.Event("hide.bs.dropdown", f)), c.isDefaultPrevented() || (d.attr("aria-expanded", "false"), e.removeClass("open").trigger(a.Event("hidden.bs.dropdown", f)))))
- }))
- }
- function d(b) {
- return this.each(function () {
- var c = a(this),
- d = c.data("bs.dropdown");
- d || c.data("bs.dropdown", d = new g(this)),
- "string" == typeof b && d[b].call(c)
- })
- }
- var e = ".dropdown-backdrop",
- f = '[data-toggle="dropdown"]',
- g = function (b) {
- a(b).on("click.bs.dropdown", this.toggle)
- };
- g.VERSION = "3.3.7",
- g.prototype.toggle = function (d) {
- var e = a(this);
- if (!e.is(".disabled, :disabled")) {
- var f = b(e),
- g = f.hasClass("open");
- if (c(), !g) {
- "ontouchstart" in document.documentElement && !f
- .closest(".navbar-nav")
- .length && a(document.createElement("div"))
- .addClass("dropdown-backdrop")
- .insertAfter(a(this))
- .on("click", c);
- var h = {
- relatedTarget: this
- };
- if (f.trigger(d = a.Event("show.bs.dropdown", h)), d.isDefaultPrevented())
- return;
- e
- .trigger("focus")
- .attr("aria-expanded", "true"),
- f
- .toggleClass("open")
- .trigger(a.Event("shown.bs.dropdown", h))
- }
- return !1
- }
- },
- g.prototype.keydown = function (c) {
- if (/(38|40|27|32)/.test(c.which) && !/input|textarea/i.test(c.target.tagName)) {
- var d = a(this);
- if (c.preventDefault(), c.stopPropagation(), !d.is(".disabled, :disabled")) {
- var e = b(d),
- g = e.hasClass("open");
- if (!g && 27 != c.which || g && 27 == c.which)
- return 27 == c.which && e.find(f).trigger("focus"),
- d.trigger("click");
- var h = " li:not(.disabled):visible a",
- i = e.find(".dropdown-menu" + h);
- if (i.length) {
- var j = i.index(c.target);
- 38 == c.which && j > 0 && j--,
- 40 == c.which && j < i.length - 1 && j++, ~ j || (j = 0),
- i
- .eq(j)
- .trigger("focus")
- }
- }
- }
- };
- var h = a.fn.dropdown;
- a.fn.dropdown = d,
- a.fn.dropdown.Constructor = g,
- a.fn.dropdown.noConflict = function () {
- return a.fn.dropdown = h,
- this
- },
- a(document)
- .on("click.bs.dropdown.data-api", c)
- .on("click.bs.dropdown.data-api", ".dropdown form", function (a) {
- a.stopPropagation()
- })
- .on("click.bs.dropdown.data-api", f, g.prototype.toggle)
- .on("keydown.bs.dropdown.data-api", f, g.prototype.keydown)
- .on("keydown.bs.dropdown.data-api", ".dropdown-menu", g.prototype.keydown)
-}(jQuery), + function (a) {
- "use strict";
- function b(b, d) {
- return this.each(function () {
- var e = a(this),
- f = e.data("bs.modal"),
- g = a.extend({}, c.DEFAULTS, e.data(), "object" == typeof b && b);
- f || e.data("bs.modal", f = new c(this, g)),
- "string" == typeof b
- ? f[b](d)
- : g.show && f.show(d)
- })
- }
- var c = function (b, c) {
- this.options = c,
- this.$body = a(document.body),
- this.$element = a(b),
- this.$dialog = this
- .$element
- .find(".modal-dialog"),
- this.$backdrop = null,
- this.isShown = null,
- this.originalBodyPad = null,
- this.scrollbarWidth = 0,
- this.ignoreBackdropClick = !1,
- this.options.remote && this
- .$element
- .find(".modal-content")
- .load(this.options.remote, a.proxy(function () {
- this
- .$element
- .trigger("loaded.bs.modal")
- }, this))
- };
- c.VERSION = "3.3.7",
- c.TRANSITION_DURATION = 300,
- c.BACKDROP_TRANSITION_DURATION = 150,
- c.DEFAULTS = {
- backdrop: !0,
- keyboard: !0,
- show: !0
- },
- c.prototype.toggle = function (a) {
- return this.isShown
- ? this.hide()
- : this.show(a)
- },
- c.prototype.show = function (b) {
- var d = this,
- e = a.Event("show.bs.modal", {relatedTarget: b});
- this
- .$element
- .trigger(e),
- this.isShown || e.isDefaultPrevented() || (this.isShown = !0, this.checkScrollbar(), this.setScrollbar(), this.$body.addClass("modal-open"), this.escape(), this.resize(), this.$element.on("click.dismiss.bs.modal", '[data-dismiss="modal"]', a.proxy(this.hide, this)), this.$dialog.on("mousedown.dismiss.bs.modal", function () {
- d
- .$element
- .one("mouseup.dismiss.bs.modal", function (b) {
- a(b.target).is(d.$element) && (d.ignoreBackdropClick = !0)
- })
- }), this.backdrop(function () {
- var e = a.support.transition && d
- .$element
- .hasClass("fade");
- d
- .$element
- .parent()
- .length || d
- .$element
- .appendTo(d.$body),
- d
- .$element
- .show()
- .scrollTop(0),
- d.adjustDialog(),
- e && d.$element[0].offsetWidth,
- d
- .$element
- .addClass("in"),
- d.enforceFocus();
- var f = a.Event("shown.bs.modal", {relatedTarget: b});
- e
- ? d
- .$dialog
- .one("bsTransitionEnd", function () {
- d
- .$element
- .trigger("focus")
- .trigger(f)
- })
- .emulateTransitionEnd(c.TRANSITION_DURATION)
- : d
- .$element
- .trigger("focus")
- .trigger(f)
- }))
- },
- c.prototype.hide = function (b) {
- b && b.preventDefault(),
- b = a.Event("hide.bs.modal"),
- this
- .$element
- .trigger(b),
- this.isShown && !b.isDefaultPrevented() && (this.isShown = !1, this.escape(), this.resize(), a(document).off("focusin.bs.modal"), this.$element.removeClass("in").off("click.dismiss.bs.modal").off("mouseup.dismiss.bs.modal"), this.$dialog.off("mousedown.dismiss.bs.modal"), a.support.transition && this.$element.hasClass("fade")
- ? this.$element.one("bsTransitionEnd", a.proxy(this.hideModal, this)).emulateTransitionEnd(c.TRANSITION_DURATION)
- : this.hideModal())
- },
- c.prototype.enforceFocus = function () {
- a(document)
- .off("focusin.bs.modal")
- .on("focusin.bs.modal", a.proxy(function (a) {
- document === a.target || this.$element[0] === a.target || this
- .$element
- .has(a.target)
- .length || this
- .$element
- .trigger("focus")
- }, this))
- },
- c.prototype.escape = function () {
- this.isShown && this.options.keyboard
- ? this
- .$element
- .on("keydown.dismiss.bs.modal", a.proxy(function (a) {
- 27 == a.which && this.hide()
- }, this))
- : this.isShown || this
- .$element
- .off("keydown.dismiss.bs.modal")
- },
- c.prototype.resize = function () {
- this.isShown
- ? a(window).on("resize.bs.modal", a.proxy(this.handleUpdate, this))
- : a(window).off("resize.bs.modal")
- },
- c.prototype.hideModal = function () {
- var a = this;
- this
- .$element
- .hide(),
- this.backdrop(function () {
- a
- .$body
- .removeClass("modal-open"),
- a.resetAdjustments(),
- a.resetScrollbar(),
- a
- .$element
- .trigger("hidden.bs.modal")
- })
- },
- c.prototype.removeBackdrop = function () {
- this.$backdrop && this
- .$backdrop
- .remove(),
- this.$backdrop = null
- },
- c.prototype.backdrop = function (b) {
- var d = this,
- e = this
- .$element
- .hasClass("fade")
- ? "fade"
- : "";
- if (this.isShown && this.options.backdrop) {
- var f = a.support.transition && e;
- if (this.$backdrop = a(document.createElement("div")).addClass("modal-backdrop " + e).appendTo(this.$body), this.$element.on("click.dismiss.bs.modal", a.proxy(function (a) {
- return this.ignoreBackdropClick
- ? void(this.ignoreBackdropClick = !1)
- : void(a.target === a.currentTarget && ("static" == this.options.backdrop
- ? this.$element[0].focus()
- : this.hide()))
- }, this)), f && this.$backdrop[0].offsetWidth, this.$backdrop.addClass("in"), !b)
- return;
- f
- ? this
- .$backdrop
- .one("bsTransitionEnd", b)
- .emulateTransitionEnd(c.BACKDROP_TRANSITION_DURATION)
- : b()
- } else if (!this.isShown && this.$backdrop) {
- this
- .$backdrop
- .removeClass("in");
- var g = function () {
- d.removeBackdrop(),
- b && b()
- };
- a.support.transition && this
- .$element
- .hasClass("fade")
- ? this
- .$backdrop
- .one("bsTransitionEnd", g)
- .emulateTransitionEnd(c.BACKDROP_TRANSITION_DURATION)
- : g()
- } else
- b && b()
- },
- c.prototype.handleUpdate = function () {
- this.adjustDialog()
- },
- c.prototype.adjustDialog = function () {
- var a = this.$element[0].scrollHeight > document.documentElement.clientHeight;
- this
- .$element
- .css({
- paddingLeft: !this.bodyIsOverflowing && a
- ? this.scrollbarWidth
- : "",
- paddingRight: this.bodyIsOverflowing && !a
- ? this.scrollbarWidth
- : ""
- })
- },
- c.prototype.resetAdjustments = function () {
- this
- .$element
- .css({paddingLeft: "", paddingRight: ""})
- },
- c.prototype.checkScrollbar = function () {
- var a = window.innerWidth;
- if (!a) {
- var b = document
- .documentElement
- .getBoundingClientRect();
- a = b.right - Math.abs(b.left)
- }
- this.bodyIsOverflowing = document.body.clientWidth < a,
- this.scrollbarWidth = this.measureScrollbar()
- },
- c.prototype.setScrollbar = function () {
- var a = parseInt(this.$body.css("padding-right") || 0, 10);
- this.originalBodyPad = document.body.style.paddingRight || "",
- this.bodyIsOverflowing && this
- .$body
- .css("padding-right", a + this.scrollbarWidth)
- },
- c.prototype.resetScrollbar = function () {
- this
- .$body
- .css("padding-right", this.originalBodyPad)
- },
- c.prototype.measureScrollbar = function () {
- var a = document.createElement("div");
- a.className = "modal-scrollbar-measure",
- this
- .$body
- .append(a);
- var b = a.offsetWidth - a.clientWidth;
- return this
- .$body[0]
- .removeChild(a),
- b
- };
- var d = a.fn.modal;
- a.fn.modal = b,
- a.fn.modal.Constructor = c,
- a.fn.modal.noConflict = function () {
- return a.fn.modal = d,
- this
- },
- a(document).on("click.bs.modal.data-api", '[data-toggle="modal"]', function (c) {
- var d = a(this),
- e = d.attr("href"),
- f = a(d.attr("data-target") || e && e.replace(/.*(?=#[^\s]+$)/, "")),
- g = f.data("bs.modal")
- ? "toggle"
- : a.extend({
- remote: !/#/.test(e) && e
- }, f.data(), d.data());
- d.is("a") && c.preventDefault(),
- f.one("show.bs.modal", function (a) {
- a.isDefaultPrevented() || f.one("hidden.bs.modal", function () {
- d.is(":visible") && d.trigger("focus")
- })
- }),
- b.call(f, g, this)
- })
-}(jQuery), + function (a) {
- "use strict";
- function b(b) {
- return this.each(function () {
- var d = a(this),
- e = d.data("bs.tooltip"),
- f = "object" == typeof b && b;
- !e && /destroy|hide/.test(b) || (e || d.data("bs.tooltip", e = new c(this, f)), "string" == typeof b && e[b]())
- })
- }
- var c = function (a, b) {
- this.type = null,
- this.options = null,
- this.enabled = null,
- this.timeout = null,
- this.hoverState = null,
- this.$element = null,
- this.inState = null,
- this.init("tooltip", a, b)
- };
- c.VERSION = "3.3.7",
- c.TRANSITION_DURATION = 150,
- c.DEFAULTS = {
- animation: !0,
- placement: "top",
- selector: !1,
- template: '
',
- trigger: "hover focus",
- title: "",
- delay: 0,
- html: !1,
- container: !1,
- viewport: {
- selector: "body",
- padding: 0
- }
- },
- c.prototype.init = function (b, c, d) {
- if (this.enabled = !0, this.type = b, this.$element = a(c), this.options = this.getOptions(d), this.$viewport = this.options.viewport && a(a.isFunction(this.options.viewport)
- ? this.options.viewport.call(this, this.$element)
- : this.options.viewport.selector || this.options.viewport), this.inState = {
- click: !1,
- hover: !1,
- focus: !1
- }, this.$element[0]instanceof document.constructor && !this.options.selector)
- throw new Error("`selector` option must be specified when initializing " + this.type + " on the window.document object!");
- for (var e = this.options.trigger.split(" "), f = e.length; f--;) {
- var g = e[f];
- if ("click" == g)
- this.$element.on("click." + this.type, this.options.selector, a.proxy(this.toggle, this));
- else if ("manual" != g) {
- var h = "hover" == g
- ? "mouseenter"
- : "focusin",
- i = "hover" == g
- ? "mouseleave"
- : "focusout";
- this
- .$element
- .on(h + "." + this.type, this.options.selector, a.proxy(this.enter, this)),
- this
- .$element
- .on(i + "." + this.type, this.options.selector, a.proxy(this.leave, this))
- }
- }
- this.options.selector
- ? this._options = a.extend({}, this.options, {
- trigger: "manual",
- selector: ""
- })
- : this.fixTitle()
- },
- c.prototype.getDefaults = function () {
- return c.DEFAULTS
- },
- c.prototype.getOptions = function (b) {
- return b = a.extend({}, this.getDefaults(), this.$element.data(), b),
- b.delay && "number" == typeof b.delay && (b.delay = {
- show: b.delay,
- hide: b.delay
- }),
- b
- },
- c.prototype.getDelegateOptions = function () {
- var b = {},
- c = this.getDefaults();
- return this._options && a.each(this._options, function (a, d) {
- c[a] != d && (b[a] = d)
- }),
- b
- },
- c.prototype.enter = function (b) {
- var c = b instanceof this.constructor
- ? b
- : a(b.currentTarget).data("bs." + this.type);
- return c || (c = new this.constructor(b.currentTarget, this.getDelegateOptions()), a(b.currentTarget).data("bs." + this.type, c)),
- b instanceof a.Event && (c.inState["focusin" == b.type
- ? "focus"
- : "hover"] = !0),
- c
- .tip()
- .hasClass("in") || "in" == c.hoverState
- ? void(c.hoverState = "in")
- : (clearTimeout(c.timeout), c.hoverState = "in", c.options.delay && c.options.delay.show
- ? void(c.timeout = setTimeout(function () {
- "in" == c.hoverState && c.show()
- }, c.options.delay.show))
- : c.show())
- },
- c.prototype.isInStateTrue = function () {
- for (var a in this.inState)
- if (this.inState[a])
- return !0;
- return !1
- },
- c.prototype.leave = function (b) {
- var c = b instanceof this.constructor
- ? b
- : a(b.currentTarget).data("bs." + this.type);
- if (c || (c = new this.constructor(b.currentTarget, this.getDelegateOptions()), a(b.currentTarget).data("bs." + this.type, c)), b instanceof a.Event && (c.inState["focusout" == b.type
- ? "focus"
- : "hover"] = !1), !c.isInStateTrue())
- return clearTimeout(c.timeout),
- c.hoverState = "out",
- c.options.delay && c.options.delay.hide
- ? void(c.timeout = setTimeout(function () {
- "out" == c.hoverState && c.hide()
- }, c.options.delay.hide))
- : c.hide()
- },
- c.prototype.show = function () {
- var b = a.Event("show.bs." + this.type);
- if (this.hasContent() && this.enabled) {
- this
- .$element
- .trigger(b);
- var d = a.contains(this.$element[0].ownerDocument.documentElement, this.$element[0]);
- if (b.isDefaultPrevented() || !d)
- return;
- var e = this,
- f = this.tip(),
- g = this.getUID(this.type);
- this.setContent(),
- f.attr("id", g),
- this
- .$element
- .attr("aria-describedby", g),
- this.options.animation && f.addClass("fade");
- var h = "function" == typeof this.options.placement
- ? this
- .options
- .placement
- .call(this, f[0], this.$element[0])
- : this.options.placement,
- i = /\s?auto?\s?/i,
- j = i.test(h);
- j && (h = h.replace(i, "") || "top"),
- f
- .detach()
- .css({top: 0, left: 0, display: "block"})
- .addClass(h)
- .data("bs." + this.type, this),
- this.options.container
- ? f.appendTo(this.options.container)
- : f.insertAfter(this.$element),
- this
- .$element
- .trigger("inserted.bs." + this.type);
- var k = this.getPosition(),
- l = f[0].offsetWidth,
- m = f[0].offsetHeight;
- if (j) {
- var n = h,
- o = this.getPosition(this.$viewport);
- h = "bottom" == h && k.bottom + m > o.bottom
- ? "top"
- : "top" == h && k.top - m < o.top
- ? "bottom"
- : "right" == h && k.right + l > o.width
- ? "left"
- : "left" == h && k.left - l < o.left
- ? "right"
- : h,
- f
- .removeClass(n)
- .addClass(h)
- }
- var p = this.getCalculatedOffset(h, k, l, m);
- this.applyPlacement(p, h);
- var q = function () {
- var a = e.hoverState;
- e
- .$element
- .trigger("shown.bs." + e.type),
- e.hoverState = null,
- "out" == a && e.leave(e)
- };
- a.support.transition && this
- .$tip
- .hasClass("fade")
- ? f
- .one("bsTransitionEnd", q)
- .emulateTransitionEnd(c.TRANSITION_DURATION)
- : q()
- }
- },
- c.prototype.applyPlacement = function (b, c) {
- var d = this.tip(),
- e = d[0].offsetWidth,
- f = d[0].offsetHeight,
- g = parseInt(d.css("margin-top"), 10),
- h = parseInt(d.css("margin-left"), 10);
- isNaN(g) && (g = 0),
- isNaN(h) && (h = 0),
- b.top += g,
- b.left += h,
- a
- .offset
- .setOffset(d[0], a.extend({
- using: function (a) {
- d.css({
- top: Math.round(a.top),
- left: Math.round(a.left)
- })
- }
- }, b), 0),
- d.addClass("in");
- var i = d[0].offsetWidth,
- j = d[0].offsetHeight;
- "top" == c && j != f && (b.top = b.top + f - j);
- var k = this.getViewportAdjustedDelta(c, b, i, j);
- k.left
- ? b.left += k.left
- : b.top += k.top;
- var l = /top|bottom/.test(c),
- m = l
- ? 2 * k.left - e + i
- : 2 * k.top - f + j,
- n = l
- ? "offsetWidth"
- : "offsetHeight";
- d.offset(b),
- this.replaceArrow(m, d[0][n], l)
- },
- c.prototype.replaceArrow = function (a, b, c) {
- this
- .arrow()
- .css(c
- ? "left"
- : "top", 50 * (1 - a / b) + "%")
- .css(c
- ? "top"
- : "left", "")
- },
- c.prototype.setContent = function () {
- var a = this.tip(),
- b = this.getTitle();
- a.find(".tooltip-inner")[this.options.html
- ? "html"
- : "text"](b),
- a.removeClass("fade in top bottom left right")
- },
- c.prototype.hide = function (b) {
- function d() {
- "in" != e.hoverState && f.detach(),
- e.$element && e
- .$element
- .removeAttr("aria-describedby")
- .trigger("hidden.bs." + e.type),
- b && b()
- }
- var e = this,
- f = a(this.$tip),
- g = a.Event("hide.bs." + this.type);
- if (this.$element.trigger(g), !g.isDefaultPrevented())
- return f.removeClass("in"),
- a.support.transition && f.hasClass("fade")
- ? f.one("bsTransitionEnd", d).emulateTransitionEnd(c.TRANSITION_DURATION)
- : d(),
- this.hoverState = null,
- this
- },
- c.prototype.fixTitle = function () {
- var a = this.$element;
- (a.attr("title") || "string" != typeof a.attr("data-original-title")) && a.attr("data-original-title", a.attr("title") || "").attr("title", "")
- },
- c.prototype.hasContent = function () {
- return this.getTitle()
- },
- c.prototype.getPosition = function (b) {
- b = b || this.$element;
- var c = b[0],
- d = "BODY" == c.tagName,
- e = c.getBoundingClientRect();
- null == e.width && (e = a.extend({}, e, {
- width: e.right - e.left,
- height: e.bottom - e.top
- }));
- var f = window.SVGElement && c instanceof window.SVGElement,
- g = d
- ? {
- top: 0,
- left: 0
- }
- : f
- ? null
- : b.offset(),
- h = {
- scroll: d
- ? document.documentElement.scrollTop || document.body.scrollTop
- : b.scrollTop()
- },
- i = d
- ? {
- width: a(window).width(),
- height: a(window).height()
- }
- : null;
- return a.extend({}, e, h, i, g)
- },
- c.prototype.getCalculatedOffset = function (a, b, c, d) {
- return "bottom" == a
- ? {
- top: b.top + b.height,
- left: b.left + b.width / 2 - c / 2
- }
- : "top" == a
- ? {
- top: b.top - d,
- left: b.left + b.width / 2 - c / 2
- }
- : "left" == a
- ? {
- top: b.top + b.height / 2 - d / 2,
- left: b.left - c
- }
- : {
- top: b.top + b.height / 2 - d / 2,
- left: b.left + b.width
- }
- },
- c.prototype.getViewportAdjustedDelta = function (a, b, c, d) {
- var e = {
- top: 0,
- left: 0
- };
- if (!this.$viewport)
- return e;
- var f = this.options.viewport && this.options.viewport.padding || 0,
- g = this.getPosition(this.$viewport);
- if (/right|left/.test(a)) {
- var h = b.top - f - g.scroll,
- i = b.top + f - g.scroll + d;
- h < g.top
- ? e.top = g.top - h
- : i > g.top + g.height && (e.top = g.top + g.height - i)
- } else {
- var j = b.left - f,
- k = b.left + f + c;
- j < g.left
- ? e.left = g.left - j
- : k > g.right && (e.left = g.left + g.width - k)
- }
- return e
- },
- c.prototype.getTitle = function () {
- var a,
- b = this.$element,
- c = this.options;
- return a = b.attr("data-original-title") || ("function" == typeof c.title
- ? c.title.call(b[0])
- : c.title)
- },
- c.prototype.getUID = function (a) {
- do
- a += ~~ (1e6 * Math.random());
- while (document.getElementById(a));
- return a
- },
- c.prototype.tip = function () {
- if (!this.$tip && (this.$tip = a(this.options.template), 1 != this.$tip.length))
- throw new Error(this.type + " `template` option must consist of exactly 1 top-level element!");
- return this.$tip
- },
- c.prototype.arrow = function () {
- return this.$arrow = this.$arrow || this
- .tip()
- .find(".tooltip-arrow")
- },
- c.prototype.enable = function () {
- this.enabled = !0
- },
- c.prototype.disable = function () {
- this.enabled = !1
- },
- c.prototype.toggleEnabled = function () {
- this.enabled = !this.enabled
- },
- c.prototype.toggle = function (b) {
- var c = this;
- b && (c = a(b.currentTarget).data("bs." + this.type), c || (c = new this.constructor(b.currentTarget, this.getDelegateOptions()), a(b.currentTarget).data("bs." + this.type, c))),
- b
- ? (c.inState.click = !c.inState.click, c.isInStateTrue()
- ? c.enter(c)
- : c.leave(c))
- : c
- .tip()
- .hasClass("in")
- ? c.leave(c)
- : c.enter(c)
- },
- c.prototype.destroy = function () {
- var a = this;
- clearTimeout(this.timeout),
- this.hide(function () {
- a
- .$element
- .off("." + a.type)
- .removeData("bs." + a.type),
- a.$tip && a
- .$tip
- .detach(),
- a.$tip = null,
- a.$arrow = null,
- a.$viewport = null,
- a.$element = null
- })
- };
- var d = a.fn.tooltip;
- a.fn.tooltip = b,
- a.fn.tooltip.Constructor = c,
- a.fn.tooltip.noConflict = function () {
- return a.fn.tooltip = d,
- this
- }
-}(jQuery), + function (a) {
- "use strict";
- function b(b) {
- return this.each(function () {
- var d = a(this),
- e = d.data("bs.popover"),
- f = "object" == typeof b && b;
- !e && /destroy|hide/.test(b) || (e || d.data("bs.popover", e = new c(this, f)), "string" == typeof b && e[b]())
- })
- }
- var c = function (a, b) {
- this.init("popover", a, b)
- };
- if (!a.fn.tooltip)
- throw new Error("Popover requires tooltip.js");
- c.VERSION = "3.3.7",
- c.DEFAULTS = a.extend({}, a.fn.tooltip.Constructor.DEFAULTS, {
- placement: "right",
- trigger: "click",
- content: "",
- template: ''
- }),
- c.prototype = a.extend({}, a.fn.tooltip.Constructor.prototype),
- c.prototype.constructor = c,
- c.prototype.getDefaults = function () {
- return c.DEFAULTS
- },
- c.prototype.setContent = function () {
- var a = this.tip(),
- b = this.getTitle(),
- c = this.getContent();
- a.find(".popover-title")[this.options.html
- ? "html"
- : "text"](b),
- a
- .find(".popover-content")
- .children()
- .detach()
- .end()[this.options.html
- ? "string" == typeof c
- ? "html"
- : "append"
- : "text"](c),
- a.removeClass("fade top bottom left right in"),
- a
- .find(".popover-title")
- .html() || a
- .find(".popover-title")
- .hide()
- },
- c.prototype.hasContent = function () {
- return this.getTitle() || this.getContent()
- },
- c.prototype.getContent = function () {
- var a = this.$element,
- b = this.options;
- return a.attr("data-content") || ("function" == typeof b.content
- ? b.content.call(a[0])
- : b.content)
- },
- c.prototype.arrow = function () {
- return this.$arrow = this.$arrow || this
- .tip()
- .find(".arrow")
- };
- var d = a.fn.popover;
- a.fn.popover = b,
- a.fn.popover.Constructor = c,
- a.fn.popover.noConflict = function () {
- return a.fn.popover = d,
- this
- }
-}(jQuery), + function (a) {
- "use strict";
- function b(c, d) {
- this.$body = a(document.body),
- this.$scrollElement = a(a(c).is(document.body)
- ? window
- : c),
- this.options = a.extend({}, b.DEFAULTS, d),
- this.selector = (this.options.target || "") + " .nav li > a",
- this.offsets = [],
- this.targets = [],
- this.activeTarget = null,
- this.scrollHeight = 0,
- this
- .$scrollElement
- .on("scroll.bs.scrollspy", a.proxy(this.process, this)),
- this.refresh(),
- this.process()
- }
- function c(c) {
- return this.each(function () {
- var d = a(this),
- e = d.data("bs.scrollspy"),
- f = "object" == typeof c && c;
- e || d.data("bs.scrollspy", e = new b(this, f)),
- "string" == typeof c && e[c]()
- })
- }
- b.VERSION = "3.3.7",
- b.DEFAULTS = {
- offset: 10
- },
- b.prototype.getScrollHeight = function () {
- return this.$scrollElement[0].scrollHeight || Math.max(this.$body[0].scrollHeight, document.documentElement.scrollHeight)
- },
- b.prototype.refresh = function () {
- var b = this,
- c = "offset",
- d = 0;
- this.offsets = [],
- this.targets = [],
- this.scrollHeight = this.getScrollHeight(),
- a.isWindow(this.$scrollElement[0]) || (c = "position", d = this.$scrollElement.scrollTop()),
- this
- .$body
- .find(this.selector)
- .map(function () {
- var b = a(this),
- e = b.data("target") || b.attr("href"),
- f = /^#./.test(e) && a(e);
- return f && f.length && f.is(":visible") && [
- [
- f[c]().top + d,
- e
- ]
- ] || null
- })
- .sort(function (a, b) {
- return a[0] - b[0]
- })
- .each(function () {
- b
- .offsets
- .push(this[0]),
- b
- .targets
- .push(this[1])
- })
- },
- b.prototype.process = function () {
- var a,
- b = this
- .$scrollElement
- .scrollTop() + this.options.offset,
- c = this.getScrollHeight(),
- d = this.options.offset + c - this
- .$scrollElement
- .height(),
- e = this.offsets,
- f = this.targets,
- g = this.activeTarget;
- if (this.scrollHeight != c && this.refresh(), b >= d)
- return g != (a = f[f.length - 1]) && this.activate(a);
- if (g && b < e[0])
- return this.activeTarget = null,
- this.clear();
- for (a = e.length; a--;)
- g != f[a] && b >= e[a] && (void 0 === e[a + 1] || b < e[a + 1]) && this.activate(f[a])
- },
- b.prototype.activate = function (b) {
- this.activeTarget = b,
- this.clear();
- var c = this.selector + '[data-target="' + b + '"],' + this.selector + '[href="' + b + '"]',
- d = a(c)
- .parents("li")
- .addClass("active");
- d
- .parent(".dropdown-menu")
- .length && (d = d.closest("li.dropdown").addClass("active")),
- d.trigger("activate.bs.scrollspy")
- },
- b.prototype.clear = function () {
- a(this.selector)
- .parentsUntil(this.options.target, ".active")
- .removeClass("active")
- };
- var d = a.fn.scrollspy;
- a.fn.scrollspy = c,
- a.fn.scrollspy.Constructor = b,
- a.fn.scrollspy.noConflict = function () {
- return a.fn.scrollspy = d,
- this
- },
- a(window).on("load.bs.scrollspy.data-api", function () {
- a('[data-spy="scroll"]')
- .each(function () {
- var b = a(this);
- c.call(b, b.data())
- })
- })
-}(jQuery), + function (a) {
- "use strict";
- function b(b) {
- return this.each(function () {
- var d = a(this),
- e = d.data("bs.tab");
- e || d.data("bs.tab", e = new c(this)),
- "string" == typeof b && e[b]()
- })
- }
- var c = function (b) {
- this.element = a(b)
- };
- c.VERSION = "3.3.7",
- c.TRANSITION_DURATION = 150,
- c.prototype.show = function () {
- var b = this.element,
- c = b.closest("ul:not(.dropdown-menu)"),
- d = b.data("target");
- if (d || (d = b.attr("href"), d = d && d.replace(/.*(?=#[^\s]*$)/, "")), !b.parent("li").hasClass("active")) {
- var e = c.find(".active:last a"),
- f = a.Event("hide.bs.tab", {relatedTarget: b[0]}),
- g = a.Event("show.bs.tab", {relatedTarget: e[0]});
- if (e.trigger(f), b.trigger(g), !g.isDefaultPrevented() && !f.isDefaultPrevented()) {
- var h = a(d);
- this.activate(b.closest("li"), c),
- this.activate(h, h.parent(), function () {
- e.trigger({type: "hidden.bs.tab", relatedTarget: b[0]}),
- b.trigger({type: "shown.bs.tab", relatedTarget: e[0]})
- })
- }
- }
- },
- c.prototype.activate = function (b, d, e) {
- function f() {
- g
- .removeClass("active")
- .find("> .dropdown-menu > .active")
- .removeClass("active")
- .end()
- .find('[data-toggle="tab"]')
- .attr("aria-expanded", !1),
- b
- .addClass("active")
- .find('[data-toggle="tab"]')
- .attr("aria-expanded", !0),
- h
- ? (b[0].offsetWidth, b.addClass("in"))
- : b.removeClass("fade"),
- b
- .parent(".dropdown-menu")
- .length && b
- .closest("li.dropdown")
- .addClass("active")
- .end()
- .find('[data-toggle="tab"]')
- .attr("aria-expanded", !0),
- e && e()
- }
- var g = d.find("> .active"),
- h = e && a.support.transition && (g.length && g.hasClass("fade") || !!d.find("> .fade").length);
- g.length && h
- ? g
- .one("bsTransitionEnd", f)
- .emulateTransitionEnd(c.TRANSITION_DURATION)
- : f(),
- g.removeClass("in")
- };
- var d = a.fn.tab;
- a.fn.tab = b,
- a.fn.tab.Constructor = c,
- a.fn.tab.noConflict = function () {
- return a.fn.tab = d,
- this
- };
- var e = function (c) {
- c.preventDefault(),
- b.call(a(this), "show")
- };
- a(document)
- .on("click.bs.tab.data-api", '[data-toggle="tab"]', e)
- .on("click.bs.tab.data-api", '[data-toggle="pill"]', e)
-}(jQuery), + function (a) {
- "use strict";
- function b(b) {
- return this.each(function () {
- var d = a(this),
- e = d.data("bs.affix"),
- f = "object" == typeof b && b;
- e || d.data("bs.affix", e = new c(this, f)),
- "string" == typeof b && e[b]()
- })
- }
- var c = function (b, d) {
- this.options = a.extend({}, c.DEFAULTS, d),
- this.$target = a(this.options.target)
- .on("scroll.bs.affix.data-api", a.proxy(this.checkPosition, this))
- .on("click.bs.affix.data-api", a.proxy(this.checkPositionWithEventLoop, this)),
- this.$element = a(b),
- this.affixed = null,
- this.unpin = null,
- this.pinnedOffset = null,
- this.checkPosition()
- };
- c.VERSION = "3.3.7",
- c.RESET = "affix affix-top affix-bottom",
- c.DEFAULTS = {
- offset: 0,
- target: window
- },
- c.prototype.getState = function (a, b, c, d) {
- var e = this
- .$target
- .scrollTop(),
- f = this
- .$element
- .offset(),
- g = this
- .$target
- .height();
- if (null != c && "top" == this.affixed)
- return e < c && "top";
- if ("bottom" == this.affixed)
- return null != c
- ? !(e + this.unpin <= f.top) && "bottom"
- : !(e + g <= a - d) && "bottom";
- var h = null == this.affixed,
- i = h
- ? e
- : f.top,
- j = h
- ? g
- : b;
- return null != c && e <= c
- ? "top"
- : null != d && i + j >= a - d && "bottom"
- },
- c.prototype.getPinnedOffset = function () {
- if (this.pinnedOffset)
- return this.pinnedOffset;
- this
- .$element
- .removeClass(c.RESET)
- .addClass("affix");
- var a = this
- .$target
- .scrollTop(),
- b = this
- .$element
- .offset();
- return this.pinnedOffset = b.top - a
- },
- c.prototype.checkPositionWithEventLoop = function () {
- setTimeout(a.proxy(this.checkPosition, this), 1)
- },
- c.prototype.checkPosition = function () {
- if (this.$element.is(":visible")) {
- var b = this
- .$element
- .height(),
- d = this.options.offset,
- e = d.top,
- f = d.bottom,
- g = Math.max(a(document).height(), a(document.body).height());
- "object" != typeof d && (f = e = d),
- "function" == typeof e && (e = d.top(this.$element)),
- "function" == typeof f && (f = d.bottom(this.$element));
- var h = this.getState(g, b, e, f);
- if (this.affixed != h) {
- null != this.unpin && this
- .$element
- .css("top", "");
- var i = "affix" + (h
- ? "-" + h
- : ""),
- j = a.Event(i + ".bs.affix");
- if (this.$element.trigger(j), j.isDefaultPrevented())
- return;
- this.affixed = h,
- this.unpin = "bottom" == h
- ? this.getPinnedOffset()
- : null,
- this
- .$element
- .removeClass(c.RESET)
- .addClass(i)
- .trigger(i.replace("affix", "affixed") + ".bs.affix")
- }
- "bottom" == h && this
- .$element
- .offset({
- top: g - b - f
- })
- }
- };
- var d = a.fn.affix;
- a.fn.affix = b,
- a.fn.affix.Constructor = c,
- a.fn.affix.noConflict = function () {
- return a.fn.affix = d,
- this
- },
- a(window).on("load", function () {
- a('[data-spy="affix"]')
- .each(function () {
- var c = a(this),
- d = c.data();
- d.offset = d.offset || {},
- null != d.offsetBottom && (d.offset.bottom = d.offsetBottom),
- null != d.offsetTop && (d.offset.top = d.offsetTop),
- b.call(c, d)
- })
- })
-}(jQuery);
\ No newline at end of file
diff --git a/assets/js/d3.min.js b/assets/js/d3.min.js
deleted file mode 100644
index e47efc6..0000000
--- a/assets/js/d3.min.js
+++ /dev/null
@@ -1,15924 +0,0 @@
-// https://d3js.org Version 4.3.0. Copyright 2016 Mike Bostock.
-(function (t, n) {
- "object" == typeof exports && "undefined" != typeof module
- ? n(exports)
- : "function" == typeof define && define.amd
- ? define(["exports"], n)
- : n(t.d3 = t.d3 || {})
-})(this, function (t) {
- "use strict";
- function n(t) {
- return function (n, e) {
- return Ms(t(n), e)
- }
- }
- function e(t, n, e) {
- var r = Math.abs(n - t) / Math.max(0, e),
- i = Math.pow(10, Math.floor(Math.log(r) / Math.LN10)),
- o = r / i;
- return o >= Fs
- ? i *= 10
- : o >= Is
- ? i *= 5
- : o >= Ys && (i *= 2),
- n < t
- ? -i
- : i
- }
- function r(t) {
- return t.length
- }
- function i() {}
- function o(t, n) {
- var e = new i;
- if (t instanceof i)
- t.each(function (t, n) {
- e.set(n, t)
- });
- else if (Array.isArray(t)) {
- var r,
- o = -1,
- u = t.length;
- if (null == n)
- for (; ++o < u;)
- e.set(o, t[o]);
- else
- for (; ++o < u;)
- e.set(n(r = t[o], o, t), r)
- } else if (t)
- for (var a in t)
- e.set(a, t[a]);
- return e
- }
- function u() {
- return {}
- }
- function a(t, n, e) {
- t[n] = e
- }
- function c() {
- return o()
- }
- function s(t, n, e) {
- t.set(n, e)
- }
- function f() {}
- function l(t, n) {
- var e = new f;
- if (t instanceof f)
- t.each(function (t) {
- e.add(t)
- });
- else if (t) {
- var r = -1,
- i = t.length;
- if (null == n)
- for (; ++r < i;)
- e.add(t[r]);
- else
- for (; ++r < i;)
- e.add(n(t[r], r, t))
- }
- return e
- }
- function h(t) {
- return + t
- }
- function p(t) {
- return t * t
- }
- function d(t) {
- return t * (2 - t)
- }
- function v(t) {
- return ((t *= 2) <= 1
- ? t * t
- : --t * (2 - t) + 1) / 2
- }
- function _(t) {
- return t * t * t
- }
- function y(t) {
- return-- t * t * t + 1
- }
- function g(t) {
- return ((t *= 2) <= 1
- ? t * t * t
- : (t -= 2) * t * t + 2) / 2
- }
- function m(t) {
- return 1 - Math.cos(t * Tf)
- }
- function x(t) {
- return Math.sin(t * Tf)
- }
- function b(t) {
- return (1 - Math.cos(Mf * t)) / 2
- }
- function w(t) {
- return Math.pow(2, 10 * t - 10)
- }
- function M(t) {
- return 1 - Math.pow(2, -10 * t)
- }
- function T(t) {
- return ((t *= 2) <= 1
- ? Math.pow(2, 10 * t - 10)
- : 2 - Math.pow(2, 10 - 10 * t)) / 2
- }
- function N(t) {
- return 1 - Math.sqrt(1 - t * t)
- }
- function k(t) {
- return Math.sqrt(1 - --t * t)
- }
- function S(t) {
- return ((t *= 2) <= 1
- ? 1 - Math.sqrt(1 - t * t)
- : Math.sqrt(1 - (t -= 2) * t) + 1) / 2
- }
- function A(t) {
- return 1 - E(1 - t)
- }
- function E(t) {
- return (t =+ t) < Nf
- ? Lf * t * t
- : t < Sf
- ? Lf * (t -= kf) * t + Af
- : t < Cf
- ? Lf * (t -= Ef) * t + zf
- : Lf * (t -= Pf) * t + qf
- }
- function C(t) {
- return ((t *= 2) <= 1
- ? 1 - E(1 - t)
- : E(t - 1) + 1) / 2
- }
- function z(t, n) {
- return t[0] - n[0] || t[1] - n[1]
- }
- function P(t) {
- for (var n = t.length, e = [
- 0, 1
- ], r = 2, i = 2; i < n; ++i) {
- for (; r > 1 && Wf(t[e[r - 2]], t[e[r - 1]], t[i]) <= 0;)
- --r;
- e[r++] = i
- }
- return e.slice(0, r)
- }
- function q() {
- this._x0 = this._y0 = this._x1 = this._y1 = null,
- this._ = []
- }
- function L() {
- return new q
- }
- function R(t, n, e, r) {
- if (isNaN(n) || isNaN(e))
- return t;
- var i,
- o,
- u,
- a,
- c,
- s,
- f,
- l,
- h,
- p = t._root,
- d = {
- data: r
- },
- v = t._x0,
- _ = t._y0,
- y = t._x1,
- g = t._y1;
- if (!p)
- return t._root = d,
- t;
- for (; p.length;)
- if ((s = n >= (o = (v + y) / 2))
- ? v = o
- : y = o, (f = e >= (u = (_ + g) / 2))
- ? _ = u
- : g = u, i = p, !(p = p[l = f << 1 | s]))
- return i[l] = d,
- t;
- if (a =+ t._x.call(null, p.data), c =+ t._y.call(null, p.data), n === a && e === c)
- return d.next = p,
- i
- ? i[l] = d
- : t._root = d,
- t;
- do
- i = i
- ? i[l] = new Array(4)
- : t._root = new Array(4),
- (s = n >= (o = (v + y) / 2))
- ? v = o
- : y = o,
- (f = e >= (u = (_ + g) / 2))
- ? _ = u
- : g = u;
- while ((l = f << 1 | s) === (h = (c >= u) << 1 | a >= o));
- return i[h] = p,
- i[l] = d,
- t
- }
- function U(t) {
- var n,
- e,
- r,
- i,
- o = t.length,
- u = new Array(o),
- a = new Array(o),
- c = 1 / 0,
- s = 1 / 0,
- f = -(1 / 0),
- l = -(1 / 0);
- for (e = 0; e < o; ++e)
- isNaN(r =+ this._x.call(null, n = t[e])) || isNaN(i =+ this._y.call(null, n)) || (u[e] = r, a[e] = i, r < c && (c = r), r > f && (f = r), i < s && (s = i), i > l && (l = i));
- for (f < c && (c = this._x0, f = this._x1), l < s && (s = this._y0, l = this._y1), this.cover(c, s).cover(f, l), e = 0; e < o; ++e)
- R(this, u[e], a[e], t[e]);
- return this
- }
- function D(t) {
- for (var n = 0, e = t.length; n < e; ++n)
- this.remove(t[n]);
- return this
- }
- function O(t) {
- return t[0]
- }
- function F(t) {
- return t[1]
- }
- function I(t, n, e) {
- var r = new Y(null == n
- ? O
- : n, null == e
- ? F
- : e, NaN, NaN, NaN, NaN);
- return null == t
- ? r
- : r.addAll(t)
- }
- function Y(t, n, e, r, i, o) {
- this._x = t,
- this._y = n,
- this._x0 = e,
- this._y0 = r,
- this._x1 = i,
- this._y1 = o,
- this._root = void 0
- }
- function B(t) {
- for (var n = {
- data: t.data
- }, e = n; t = t.next;)
- e = e.next = {
- data: t.data
- };
- return n
- }
- function j(t) {
- if (!(t >= 1))
- throw new Error;
- this._size = t,
- this._call = this._error = null,
- this._tasks = [],
- this._data = [],
- this._waiting = this._active = this._ended = this._start = 0
- }
- function H(t) {
- if (!t._start)
- try {
- X(t)
- } catch (n) {
- if (t._tasks[t._ended + t._active - 1])
- W(t, n);
- else if (!t._data)
- throw n
- }
- }
- function X(t) {
- for (; t._start = t._waiting && t._active < t._size;) {
- var n = t._ended + t._active,
- e = t._tasks[n],
- r = e.length - 1,
- i = e[r];
- e[r] = V(t, n),
- --t._waiting,
- ++t._active,
- e = i.apply(null, e),
- t._tasks[n] && (t._tasks[n] = e || _l)
- }
- }
- function V(t, n) {
- return function (e, r) {
- t._tasks[n] && (--t._active, ++t._ended, t._tasks[n] = null, null == t._error && (null != e
- ? W(t, e)
- : (t._data[n] = r, t._waiting
- ? H(t)
- : $(t))))
- }
- }
- function W(t, n) {
- var e,
- r = t._tasks.length;
- for (t._error = n, t._data = void 0, t._waiting = NaN; --r >= 0;)
- if ((e = t._tasks[r]) && (t._tasks[r] = null, e.abort))
- try {
- e.abort()
- } catch (t) {}
- t._active = NaN,
- $(t)
- }
- function $(t) {
- if (!t._active && t._call) {
- var n = t._data;
- t._data = void 0,
- t._call(t._error, n)
- }
- }
- function Z(t) {
- return new j(arguments.length ?+ t : 1 / 0)
- }
- function G(t) {
- return t.innerRadius
- }
- function J(t) {
- return t.outerRadius
- }
- function Q(t) {
- return t.startAngle
- }
- function K(t) {
- return t.endAngle
- }
- function tt(t) {
- return t && t.padAngle
- }
- function nt(t) {
- return t >= 1
- ? xl
- : t <= -1
- ? -xl
- : Math.asin(t)
- }
- function et(t, n, e, r, i, o, u, a) {
- var c = e - t,
- s = r - n,
- f = u - i,
- l = a - o,
- h = (f * (n - o) - l * (t - i)) / (l * c - f * s);
- return [
- t + h * c,
- n + h * s
- ]
- }
- function rt(t, n, e, r, i, o, u) {
- var a = t - e,
- c = n - r,
- s = (u
- ? o
- : -o) / Math.sqrt(a * a + c * c),
- f = s * c,
- l = -s * a,
- h = t + f,
- p = n + l,
- d = e + f,
- v = r + l,
- _ = (h + d) / 2,
- y = (p + v) / 2,
- g = d - h,
- m = v - p,
- x = g * g + m * m,
- b = i - o,
- w = h * v - d * p,
- M = (m < 0
- ? -1
- : 1) * Math.sqrt(Math.max(0, b * b * x - w * w)),
- T = (w * m - g * M) / x,
- N = (-w * g - m * M) / x,
- k = (w * m + g * M) / x,
- S = (-w * g + m * M) / x,
- A = T - _,
- E = N - y,
- C = k - _,
- z = S - y;
- return A * A + E * E > C * C + z * z && (T = k, N = S), {
- cx: T,
- cy: N,
- x01: -f,
- y01: -l,
- x11: *(i / b - 1),
- y11: *(i / b - 1)
- }
- }
- function it(t) {
- this._context = t
- }
- function ot(t) {
- return t[0]
- }
- function ut(t) {
- return t[1]
- }
- function at(t) {
- this._curve = t
- }
- function ct(t) {
- function n(n) {
- return new at(t(n))
- }
- return n._curve = t,
- n
- }
- function st(t) {
- var n = t.curve;
- return t.angle = t.x,
- delete t.x,
- t.radius = t.y,
- delete t.y,
- t.curve = function (t) {
- return arguments.length
- ? n(ct(t))
- : n()._curve
- },
- t
- }
- function ft(t, n, e) {
- t
- ._context
- .bezierCurveTo((2 * t._x0 + t._x1) / 3, (2 * t._y0 + t._y1) / 3, (t._x0 + 2 * t._x1) / 3, (t._y0 + 2 * t._y1) / 3, (t._x0 + 4 * t._x1 + n) / 6, (t._y0 + 4 * t._y1 + e) / 6)
- }
- function lt(t) {
- this._context = t
- }
- function ht(t) {
- this._context = t
- }
- function pt(t) {
- this._context = t
- }
- function dt(t, n) {
- this._basis = new lt(t),
- this._beta = n
- }
- function vt(t, n, e) {
- t
- ._context
- .bezierCurveTo(t._x1 + t._k * (t._x2 - t._x0), t._y1 + t._k * (t._y2 - t._y0), t._x2 + t._k * (t._x1 - n), t._y2 + t._k * (t._y1 - e), t._x2, t._y2)
- }
- function _t(t, n) {
- this._context = t,
- this._k = (1 - n) / 6
- }
- function yt(t, n) {
- this._context = t,
- this._k = (1 - n) / 6
- }
- function gt(t, n) {
- this._context = t,
- this._k = (1 - n) / 6
- }
- function mt(t, n, e) {
- var r = t._x1,
- i = t._y1,
- o = t._x2,
- u = t._y2;
- if (t._l01_a > gl) {
- var a = 2 * t._l01_2a + 3 * t._l01_a * t._l12_a + t._l12_2a,
- c = 3 * t._l01_a * (t._l01_a + t._l12_a);
- r = (r * a - t._x0 * t._l12_2a + t._x2 * t._l01_2a) / c,
- i = (i * a - t._y0 * t._l12_2a + t._y2 * t._l01_2a) / c
- }
- if (t._l23_a > gl) {
- var s = 2 * t._l23_2a + 3 * t._l23_a * t._l12_a + t._l12_2a,
- f = 3 * t._l23_a * (t._l23_a + t._l12_a);
- o = (o * s + t._x1 * t._l23_2a - n * t._l12_2a) / f,
- u = (u * s + t._y1 * t._l23_2a - e * t._l12_2a) / f
- }
- t
- ._context
- .bezierCurveTo(r, i, o, u, t._x2, t._y2)
- }
- function xt(t, n) {
- this._context = t,
- this._alpha = n
- }
- function bt(t, n) {
- this._context = t,
- this._alpha = n
- }
- function wt(t, n) {
- this._context = t,
- this._alpha = n
- }
- function Mt(t) {
- this._context = t
- }
- function Tt(t) {
- return t < 0
- ? -1
- : 1
- }
- function Nt(t, n, e) {
- var r = t._x1 - t._x0,
- i = n - t._x1,
- o = (t._y1 - t._y0) / (r || i < 0 && -0),
- u = (e - t._y1) / (i || r < 0 && -0),
- a = (o * i + u * r) / (r + i);
- return (Tt(o) + Tt(u)) * Math.min(Math.abs(o), Math.abs(u), .5 * Math.abs(a)) || 0
- }
- function kt(t, n) {
- var e = t._x1 - t._x0;
- return e
- ? (3 * (t._y1 - t._y0) / e - n) / 2
- : n
- }
- function St(t, n, e) {
- var r = t._x0,
- i = t._y0,
- o = t._x1,
- u = t._y1,
- a = (o - r) / 3;
- t
- ._context
- .bezierCurveTo(r + a, i + a * n, o - a, u - a * e, o, u)
- }
- function At(t) {
- this._context = t
- }
- function Et(t) {
- this._context = new Ct(t)
- }
- function Ct(t) {
- this._context = t
- }
- function zt(t) {
- return new At(t)
- }
- function Pt(t) {
- return new Et(t)
- }
- function qt(t) {
- this._context = t
- }
- function Lt(t) {
- var n,
- e,
- r = t.length - 1,
- i = new Array(r),
- o = new Array(r),
- u = new Array(r);
- for (i[0] = 0, o[0] = 2, u[0] = t[0] + 2 * t[1], n = 1; n < r - 1; ++n)
- i[n] = 1,
- o[n] = 4,
- u[n] = 4 * t[n] + 2 * t[n + 1];
- for (i[r - 1] = 2, o[r - 1] = 7, u[r - 1] = 8 * t[r - 1] + t[r], n = 1; n < r; ++n)
- e = i[n] / o[n - 1],
- o[n] -= e,
- u[n] -= e * u[n - 1];
- for (i[r - 1] = u[r - 1] / o[r - 1], n = r - 2; n >= 0; --n)
- i[n] = (u[n] - i[n + 1]) / o[n];
- for (o[r - 1] = (t[r] + i[r - 1]) / 2, n = 0; n < r - 1; ++n)
- o[n] = 2 * t[n + 1] - i[n + 1];
- return [i, o]
- }
- function Rt(t, n) {
- this._context = t,
- this._t = n
- }
- function Ut(t) {
- return new Rt(t, 0)
- }
- function Dt(t) {
- return new Rt(t, 1)
- }
- function Ot(t, n) {
- return t[n]
- }
- function Ft(t) {
- for (var n, e = 0, r = -1, i = t.length; ++r < i;)
- (n =+ t[r][1]) && (e += n);
- return e
- }
- function It(t, n) {
- var e = Object.create(t.prototype);
- for (var r in n)
- e[r] = n[r];
- return e
- }
- function Yt() {}
- function Bt(t) {
- var n;
- return t = (t + "")
- .trim()
- .toLowerCase(),
- (n = kh.exec(t))
- ? (n = parseInt(n[1], 16), new Wt(n >> 8 & 15 | n >> 4 & 240, n >> 4 & 15 | 240 & n, (15 & n) << 4 | 15 & n, 1))
- : (n = Sh.exec(t))
- ? jt(parseInt(n[1], 16))
- : (n = Ah.exec(t))
- ? new Wt(n[1], n[2], n[3], 1)
- : (n = Eh.exec(t))
- ? new Wt(255 * n[1] / 100, 255 * n[2] / 100, 255 * n[3] / 100, 1)
- : (n = Ch.exec(t))
- ? Ht(n[1], n[2], n[3], n[4])
- : (n = zh.exec(t))
- ? Ht(255 * n[1] / 100, 255 * n[2] / 100, 255 * n[3] / 100, n[4])
- : (n = Ph.exec(t))
- ? $t(n[1], n[2] / 100, n[3] / 100, 1)
- : (n = qh.exec(t))
- ? $t(n[1], n[2] / 100, n[3] / 100, n[4])
- : Lh.hasOwnProperty(t)
- ? jt(Lh[t])
- : "transparent" === t
- ? new Wt(NaN, NaN, NaN, 0)
- : null
- }
- function jt(t) {
- return new Wt(t >> 16 & 255, t >> 8 & 255, 255 & t, 1)
- }
- function Ht(t, n, e, r) {
- return r <= 0 && (t = n = e = NaN),
- new Wt(t, n, e, r)
- }
- function Xt(t) {
- return t instanceof Yt || (t = Bt(t)),
- t
- ? (t = t.rgb(), new Wt(t.r, t.g, t.b, t.opacity))
- : new Wt
- }
- function Vt(t, n, e, r) {
- return 1 === arguments.length
- ? Xt(t)
- : new Wt(t, n, e, null == r
- ? 1
- : r)
- }
- function Wt(t, n, e, r) {
- this.r =+ t,
- this.g =+ n,
- this.b =+ e,
- this.opacity =+ r
- }
- function $t(t, n, e, r) {
- return r <= 0
- ? t = n = e = NaN
- : e <= 0 || e >= 1
- ? t = n = NaN
- : n <= 0 && (t = NaN),
- new Jt(t, n, e, r)
- }
- function Zt(t) {
- if (t instanceof Jt)
- return new Jt(t.h, t.s, t.l, t.opacity);
- if (t instanceof Yt || (t = Bt(t)), !t)
- return new Jt;
- if (t instanceof Jt)
- return t;
- t = t.rgb();
- var n = t.r / 255,
- e = t.g / 255,
- r = t.b / 255,
- i = Math.min(n, e, r),
- o = Math.max(n, e, r),
- u = NaN,
- a = o - i,
- c = (o + i) / 2;
- return a
- ? (u = n === o
- ? (e - r) / a + 6 * (e < r)
- : e === o
- ? (r - n) / a + 2
- : (n - e) / a + 4, a /= c < .5
- ? o + i
- : 2 - o - i, u *= 60)
- : a = c > 0 && c < 1
- ? 0
- : u,
- new Jt(u, a, c, t.opacity)
- }
- function Gt(t, n, e, r) {
- return 1 === arguments.length
- ? Zt(t)
- : new Jt(t, n, e, null == r
- ? 1
- : r)
- }
- function Jt(t, n, e, r) {
- this.h =+ t,
- this.s =+ n,
- this.l =+ e,
- this.opacity =+ r
- }
- function Qt(t, n, e) {
- return 255 * (t < 60
- ? n + (e - n) * t / 60
- : t < 180
- ? e
- : t < 240
- ? n + (e - n) * (240 - t) / 60
- : n)
- }
- function Kt(t) {
- if (t instanceof nn)
- return new nn(t.l, t.a, t.b, t.opacity);
- if (t instanceof sn) {
- var n = t.h * Rh;
- return new nn(t.l, Math.cos(n) * t.c, Math.sin(n) * t.c, t.opacity)
- }
- t instanceof Wt || (t = Xt(t));
- var e = un(t.r),
- r = un(t.g),
- i = un(t.b),
- o = en((.4124564 * e + .3575761 * r + .1804375 * i) / Oh),
- u = en((.2126729 * e + .7151522 * r + .072175 * i) / Fh),
- a = en((.0193339 * e + .119192 * r + .9503041 * i) / Ih);
- return new nn(116 * u - 16, 500 * (o - u), 200 * (u - a), t.opacity)
- }
- function tn(t, n, e, r) {
- return 1 === arguments.length
- ? Kt(t)
- : new nn(t, n, e, null == r
- ? 1
- : r)
- }
- function nn(t, n, e, r) {
- this.l =+ t,
- this.a =+ n,
- this.b =+ e,
- this.opacity =+ r
- }
- function en(t) {
- return t > Hh
- ? Math.pow(t, 1 / 3)
- : t / jh + Yh
- }
- function rn(t) {
- return t > Bh
- ? t * t * t
- : jh * (t - Yh)
- }
- function on(t) {
- return 255 * (t <= .0031308
- ? 12.92 * t
- : 1.055 * Math.pow(t, 1 / 2.4) - .055)
- }
- function un(t) {
- return (t /= 255) <= .04045
- ? t / 12.92
- : Math.pow((t + .055) / 1.055, 2.4)
- }
- function an(t) {
- if (t instanceof sn)
- return new sn(t.h, t.c, t.l, t.opacity);
- t instanceof nn || (t = Kt(t));
- var n = Math.atan2(t.b, t.a) * Uh;
- return new sn(n < 0
- ? n + 360
- : n, Math.sqrt(t.a * t.a + t.b * t.b), t.l, t.opacity)
- }
- function cn(t, n, e, r) {
- return 1 === arguments.length
- ? an(t)
- : new sn(t, n, e, null == r
- ? 1
- : r)
- }
- function sn(t, n, e, r) {
- this.h =+ t,
- this.c =+ n,
- this.l =+ e,
- this.opacity =+ r
- }
- function fn(t) {
- if (t instanceof hn)
- return new hn(t.h, t.s, t.l, t.opacity);
- t instanceof Wt || (t = Xt(t));
- var n = t.r / 255,
- e = t.g / 255,
- r = t.b / 255,
- i = (Qh * r + Gh * n - Jh * e) / (Qh + Gh - Jh),
- o = r - i,
- u = (Zh * (e - i) - Wh * o) / $h,
- a = Math.sqrt(u * u + o * o) / (Zh * i * (1 - i)),
- c = a
- ? Math.atan2(u, o) * Uh - 120
- : NaN;
- return new hn(c < 0
- ? c + 360
- : c, a, i, t.opacity)
- }
- function ln(t, n, e, r) {
- return 1 === arguments.length
- ? fn(t)
- : new hn(t, n, e, null == r
- ? 1
- : r)
- }
- function hn(t, n, e, r) {
- this.h =+ t,
- this.s =+ n,
- this.l =+ e,
- this.opacity =+ r
- }
- function pn(t, n, e, r, i) {
- var o = t * t,
- u = o * t;
- return ((1 - 3 * t + 3 * o - u) * n + (4 - 6 * o + 3 * u) * e + (1 + 3 * t + 3 * o - 3 * u) * r + u * i) / 6
- }
- function dn(t, n) {
- return function (e) {
- return t + e * n
- }
- }
- function vn(t, n, e) {
- return t = Math.pow(t, e),
- n = Math.pow(n, e) - t,
- e = 1 / e,
- function (r) {
- return Math.pow(t + r * n, e)
- }
- }
- function _n(t, n) {
- var e = n - t;
- return e
- ? dn(t, e > 180 || e < -180
- ? e - 360 * Math.round(e / 360)
- : e)
- : op(isNaN(t)
- ? n
- : t)
- }
- function yn(t) {
- return 1 === (t =+ t)
- ? gn
- : function (n, e) {
- return e - n
- ? vn(n, e, t)
- : op(isNaN(n)
- ? e
- : n)
- }
- }
- function gn(t, n) {
- var e = n - t;
- return e
- ? dn(t, e)
- : op(isNaN(t)
- ? n
- : t)
- }
- function mn(t) {
- return function (n) {
- var e,
- r,
- i = n.length,
- o = new Array(i),
- u = new Array(i),
- a = new Array(i);
- for (e = 0; e < i; ++e)
- r = Vt(n[e]),
- o[e] = r.r || 0,
- u[e] = r.g || 0,
- a[e] = r.b || 0;
- return o = t(o),
- u = t(u),
- a = t(a),
- r.opacity = 1,
- function (t) {
- return r.r = o(t),
- r.g = u(t),
- r.b = a(t),
- r + ""
- }
- }
- }
- function xn(t) {
- return function () {
- return t
- }
- }
- function bn(t) {
- return function (n) {
- return t(n) + ""
- }
- }
- function wn(t) {
- return "none" === t
- ? mp
- : (Kh || (Kh = document.createElement("DIV"), tp = document.documentElement, np = document.defaultView), Kh.style.transform = t, t = np.getComputedStyle(tp.appendChild(Kh), null).getPropertyValue("transform"), tp.removeChild(Kh), t = t.slice(7, -1).split(","), xp(+ t[0], + t[1], + t[2], + t[3], + t[4], + t[5]))
- }
- function Mn(t) {
- return null == t
- ? mp
- : (ep || (ep = document.createElementNS("http://www.w3.org/2000/svg", "g")), ep.setAttribute("transform", t), (t = ep.transform.baseVal.consolidate())
- ? (t = t.matrix, xp(t.a, t.b, t.c, t.d, t.e, t.f))
- : mp)
- }
- function Tn(t, n, e, r) {
- function i(t) {
- return t.length
- ? t.pop() + " "
- : ""
- }
- function o(t, r, i, o, u, a) {
- if (t !== i || r !== o) {
- var c = u.push("translate(", null, n, null, e);
- a.push({
- i: c - 4,
- x: lp(t, i)
- }, {
- i: c - 2,
- x: lp(r, o)
- })
- } else
- (i || o) && u.push("translate(" + i + n + o + e)
- }
- function u(t, n, e, o) {
- t !== n
- ? (t - n > 180
- ? n += 360
- : n - t > 180 && (t += 360), o.push({
- i: e.push(i(e) + "rotate(", null, r) - 2,
- x: lp(t, n)
- }))
- : n && e.push(i(e) + "rotate(" + n + r)
- }
- function a(t, n, e, o) {
- t !== n
- ? o.push({
- i: e.push(i(e) + "skewX(", null, r) - 2,
- x: lp(t, n)
- })
- : n && e.push(i(e) + "skewX(" + n + r)
- }
- function c(t, n, e, r, o, u) {
- if (t !== e || n !== r) {
- var a = o.push(i(o) + "scale(", null, ",", null, ")");
- u.push({
- i: a - 4,
- x: lp(t, e)
- }, {
- i: a - 2,
- x: lp(n, r)
- })
- } else
- 1 === e && 1 === r || o.push(i(o) + "scale(" + e + "," + r + ")")
- }
- return function (n, e) {
- var r = [],
- i = [];
- return n = t(n),
- e = t(e),
- o(n.translateX, n.translateY, e.translateX, e.translateY, r, i),
- u(n.rotate, e.rotate, r, i),
- a(n.skewX, e.skewX, r, i),
- c(n.scaleX, n.scaleY, e.scaleX, e.scaleY, r, i),
- n = e = null,
- function (t) {
- for (var n, e = -1, o = i.length; ++e < o;)
- r[(n = i[e]).i] = n.x(t);
- return r.join("")
- }
- }
- }
- function Nn(t) {
- return ((t = Math.exp(t)) + 1 / t) / 2
- }
- function kn(t) {
- return ((t = Math.exp(t)) - 1 / t) / 2
- }
- function Sn(t) {
- return ((t = Math.exp(2 * t)) - 1) / (t + 1)
- }
- function An(t) {
- return function (n, e) {
- var r = t((n = Gt(n)).h, (e = Gt(e)).h),
- i = gn(n.s, e.s),
- o = gn(n.l, e.l),
- u = gn(n.opacity, e.opacity);
- return function (t) {
- return n.h = r(t),
- n.s = i(t),
- n.l = o(t),
- n.opacity = u(t),
- n + ""
- }
- }
- }
- function En(t, n) {
- var e = gn((t = tn(t)).l, (n = tn(n)).l),
- r = gn(t.a, n.a),
- i = gn(t.b, n.b),
- o = gn(t.opacity, n.opacity);
- return function (n) {
- return t.l = e(n),
- t.a = r(n),
- t.b = i(n),
- t.opacity = o(n),
- t + ""
- }
- }
- function Cn(t) {
- return function (n, e) {
- var r = t((n = cn(n)).h, (e = cn(e)).h),
- i = gn(n.c, e.c),
- o = gn(n.l, e.l),
- u = gn(n.opacity, e.opacity);
- return function (t) {
- return n.h = r(t),
- n.c = i(t),
- n.l = o(t),
- n.opacity = u(t),
- n + ""
- }
- }
- }
- function zn(t) {
- return function n(e) {
- function r(n, r) {
- var i = t((n = ln(n)).h, (r = ln(r)).h),
- o = gn(n.s, r.s),
- u = gn(n.l, r.l),
- a = gn(n.opacity, r.opacity);
- return function (t) {
- return n.h = i(t),
- n.s = o(t),
- n.l = u(Math.pow(t, e)),
- n.opacity = a(t),
- n + ""
- }
- }
- return e =+ e,
- r.gamma = n,
- r
- }(1)
- }
- function Pn() {
- for (var t, n = 0, e = arguments.length, r = {}; n < e; ++n) {
- if (!(t = arguments[n] + "") || t in r)
- throw new Error("illegal type: " + t);
- r[t] = []
- }
- return new qn(r)
- }
- function qn(t) {
- this._ = t
- }
- function Ln(t, n) {
- return t
- .trim()
- .split(/^|\s+/)
- .map(function (t) {
- var e = "",
- r = t.indexOf(".");
- if (r >= 0 && (e = t.slice(r + 1), t = t.slice(0, r)), t && !n.hasOwnProperty(t))
- throw new Error("unknown type: " + t);
- return {type: t, name: e}
- })
- }
- function Rn(t, n) {
- for (var e, r = 0, i = t.length; r < i; ++r)
- if ((e = t[r]).name === n)
- return e.value
- }
- function Un(t, n, e) {
- for (var r = 0, i = t.length; r < i; ++r)
- if (t[r].name === n) {
- t[r] = Rp,
- t = t
- .slice(0, r)
- .concat(t.slice(r + 1));
- break
- }
- return null != e && t.push({name: n, value: e}),
- t
- }
- function Dn(t) {
- return new Function("d", "return {" + t.map(function (t, n) {
- return JSON.stringify(t) + ": d[" + n + "]"
- }).join(",") + "}")
- }
- function On(t, n) {
- var e = Dn(t);
- return function (r, i) {
- return n(e(r), i, t)
- }
- }
- function Fn(t) {
- var n = Object.create(null),
- e = [];
- return t.forEach(function (t) {
- for (var r in t)
- r in n || e.push(n[r] = r)
- }),
- e
- }
- function In(t) {
- return function (n, e) {
- t(null == n
- ? e
- : null)
- }
- }
- function Yn(t) {
- var n = t.responseType;
- return n && "text" !== n
- ? t.response
- : t.responseText
- }
- function Bn(t, n) {
- return function (e) {
- return t(e.responseText, n)
- }
- }
- function jn() {
- return sd || (hd(Hn), sd = ld.now() + fd)
- }
- function Hn() {
- sd = 0
- }
- function Xn() {
- this._call = this._time = this._next = null
- }
- function Vn(t, n, e) {
- var r = new Xn;
- return r.restart(t, n, e),
- r
- }
- function Wn() {
- jn(),
- ++id;
- for (var t, n = Up; n;)
- (t = sd - n._time) >= 0 && n._call.call(null, t),
- n = n._next;
-
- --id
- }
- function $n() {
- sd = (cd = ld.now()) + fd,
- id = od = 0;
- try {
- Wn()
- } finally {
- id = 0,
- Gn(),
- sd = 0
- }
- }
- function Zn() {
- var t = ld.now(),
- n = t - cd;
- n > ad && (fd -= n, cd = t)
- }
- function Gn() {
- for (var t, n, e = Up, r = 1 / 0; e;)
- e._call
- ? (r > e._time && (r = e._time), t = e, e = e._next)
- : (n = e._next, e._next = null, e = t
- ? t._next = n
- : Up = n);
- Dp = t,
- Jn(r)
- }
- function Jn(t) {
- if (!id) {
- od && (od = clearTimeout(od));
- var n = t - sd;
- n > 24
- ? (t < 1 / 0 && (od = setTimeout($n, n)), ud && (ud = clearInterval(ud)))
- : (ud || (ud = setInterval(Zn, ad)), id = 1, hd($n))
- }
- }
- function Qn(t, n, e, r) {
- function i(n) {
- return t(n = new Date(+ n)),
- n
- }
- return i.floor = i,
- i.ceil = function (e) {
- return t(e = new Date(e - 1)),
- n(e, 1),
- t(e),
- e
- },
- i.round = function (t) {
- var n = i(t),
- e = i.ceil(t);
- return t - n < e - t
- ? n
- : e
- },
- i.offset = function (t, e) {
- return n(t = new Date(+ t), null == e
- ? 1
- : Math.floor(e)),
- t
- },
- i.range = function (e, r, o) {
- var u = [];
- if (e = i.ceil(e), o = null == o
- ? 1
- : Math.floor(o), !(e < r && o > 0))
- return u;
- do
- u.push(new Date(+ e));
- while (n(e, o), t(e), e < r);
- return u
- },
- i.filter = function (e) {
- return Qn(function (n) {
- if (n >= n)
- for (; t(n), !e(n);)
- n.setTime(n - 1)
- }, function (t, r) {
- if (t >= t)
- for (; --r >= 0;)
- for (; n(t, 1), !e(t);) ;
- }
- )
- },
- e && (i.count = function (n, r) {
- return vd.setTime(+ n),
- _d.setTime(+ r),
- t(vd),
- t(_d),
- Math.floor(e(vd, _d))
- },
- i.every = function (t) {
- return t = Math.floor(t),
- isFinite(t) && t > 0
- ? t > 1
- ? i.filter(r
- ? function (n) {
- return r(n) % t === 0
- }
- : function (n) {
- return i.count(0, n) % t === 0
- })
- : i
- : null
- }),
- i
- }
- function Kn(t) {
- return Qn(function (n) {
- n.setDate(n.getDate() - (n.getDay() + 7 - t) % 7),
- n.setHours(0, 0, 0, 0)
- }, function (t, n) {
- t.setDate(t.getDate() + 7 * n)
- }, function (t, n) {
- return (n - t - (n.getTimezoneOffset() - t.getTimezoneOffset()) * xd) / Md
- })
- }
- function te(t) {
- return Qn(function (n) {
- n.setUTCDate(n.getUTCDate() - (n.getUTCDay() + 7 - t) % 7),
- n.setUTCHours(0, 0, 0, 0)
- }, function (t, n) {
- t.setUTCDate(t.getUTCDate() + 7 * n)
- }, function (t, n) {
- return (n - t) / Md
- })
- }
- function ne(t) {
- if (!(n = Av.exec(t)))
- throw new Error("invalid format: " + t);
- var n,
- e = n[1] || " ",
- r = n[2] || ">",
- i = n[3] || "-",
- o = n[4] || "",
- u = !!n[5],
- a = n[6] &&+ n[6],
- c = !!n[7],
- s = n[8] &&+ n[8].slice(1),
- f = n[9] || "";
- "n" === f
- ? (c = !0, f = "g")
- : Sv[f] || (f = ""),
- (u || "0" === e && "=" === r) && (u = !0, e = "0", r = "="),
- this.fill = e,
- this.align = r,
- this.sign = i,
- this.symbol = o,
- this.zero = u,
- this.width = a,
- this.comma = c,
- this.precision = s,
- this.type = f
- }
- function ee(t) {
- return t
- }
- function re(n) {
- return Cv = Pv(n),
- t.format = Cv.format,
- t.formatPrefix = Cv.formatPrefix,
- Cv
- }
- function ie(t) {
- if (0 <= t.y && t.y < 100) {
- var n = new Date(-1, t.m, t.d, t.H, t.M, t.S, t.L);
- return n.setFullYear(t.y),
- n
- }
- return new Date(t.y, t.m, t.d, t.H, t.M, t.S, t.L)
- }
- function oe(t) {
- if (0 <= t.y && t.y < 100) {
- var n = new Date(Date.UTC(-1, t.m, t.d, t.H, t.M, t.S, t.L));
- return n.setUTCFullYear(t.y),
- n
- }
- return new Date(Date.UTC(t.y, t.m, t.d, t.H, t.M, t.S, t.L))
- }
- function ue(t) {
- return {
- y: t,
- m: 0,
- d: 1,
- H: 0,
- M: 0,
- S: 0,
- L: 0
- }
- }
- function ae(t) {
- function n(t, n) {
- return function (e) {
- var r,
- i,
- o,
- u = [],
- a = -1,
- c = 0,
- s = t.length;
- for (e instanceof Date || (e = new Date(+ e)); ++a < s;)
- 37 === t.charCodeAt(a) && (u.push(t.slice(c, a)), null != (i = Dv[r = t.charAt(++a)])
- ? r = t.charAt(++a)
- : i = "e" === r
- ? " "
- : "0", (o = n[r]) && (r = o(e, i)), u.push(r), c = a + 1);
- return u.push(t.slice(c, a)),
- u.join("")
- }
- }
- function e(t, n) {
- return function (e) {
- var i = ue(1900),
- o = r(i, t, e += "", 0);
- if (o != e.length)
- return null;
- if ("p" in i && (i.H = i.H % 12 + 12 * i.p), "W" in i || "U" in i) {
- "w" in i || (i.w = "W" in i
- ? 1
- : 0);
- var u = "Z" in i
- ? oe(ue(i.y)).getUTCDay()
- : n(ue(i.y)).getDay();
- i.m = 0,
- i.d = "W" in i
- ? (i.w + 6) % 7 + 7 * i.W - (u + 5) % 7
- : i.w + 7 * i.U - (u + 6) % 7
- }
- return "Z" in i
- ? (i.H += i.Z / 100 | 0, i.M += i.Z % 100, oe(i))
- : n(i)
- }
- }
- function r(t, n, e, r) {
- for (var i, o, u = 0, a = n.length, c = e.length; u < a;) {
- if (r >= c)
- return -1;
- if (i = n.charCodeAt(u++), 37 === i) {
- if (i = n.charAt(u++), o = B[i in Dv
- ? n.charAt(u++)
- : i], !o || (r = o(t, e, r)) < 0)
- return -1
- } else if (i != e.charCodeAt(r++))
- return -1
- }
- return r
- }
- function i(t, n, e) {
- var r = C.exec(n.slice(e));
- return r
- ? (t.p = z[r[0].toLowerCase()], e + r[0].length)
- : -1
- }
- function o(t, n, e) {
- var r = L.exec(n.slice(e));
- return r
- ? (t.w = R[r[0].toLowerCase()], e + r[0].length)
- : -1
- }
- function u(t, n, e) {
- var r = P.exec(n.slice(e));
- return r
- ? (t.w = q[r[0].toLowerCase()], e + r[0].length)
- : -1
- }
- function a(t, n, e) {
- var r = O.exec(n.slice(e));
- return r
- ? (t.m = F[r[0].toLowerCase()], e + r[0].length)
- : -1
- }
- function c(t, n, e) {
- var r = U.exec(n.slice(e));
- return r
- ? (t.m = D[r[0].toLowerCase()], e + r[0].length)
- : -1
- }
- function s(t, n, e) {
- return r(t, w, n, e)
- }
- function f(t, n, e) {
- return r(t, M, n, e)
- }
- function l(t, n, e) {
- return r(t, T, n, e)
- }
- function h(t) {
- return S[t.getDay()]
- }
- function p(t) {
- return k[t.getDay()]
- }
- function d(t) {
- return E[t.getMonth()]
- }
- function v(t) {
- return A[t.getMonth()]
- }
- function _(t) {
- return N[+ (t.getHours() >= 12)]
- }
- function y(t) {
- return S[t.getUTCDay()]
- }
- function g(t) {
- return k[t.getUTCDay()]
- }
- function m(t) {
- return E[t.getUTCMonth()]
- }
- function x(t) {
- return A[t.getUTCMonth()]
- }
- function b(t) {
- return N[+ (t.getUTCHours() >= 12)]
- }
- var w = t.dateTime,
- M = t.date,
- T = t.time,
- N = t.periods,
- k = t.days,
- S = t.shortDays,
- A = t.months,
- E = t.shortMonths,
- C = fe(N),
- z = le(N),
- P = fe(k),
- q = le(k),
- L = fe(S),
- R = le(S),
- U = fe(A),
- D = le(A),
- O = fe(E),
- F = le(E),
- I = {
- a: h,
- A: p,
- b: d,
- B: v,
- c: null,
- d: ke,
- e: ke,
- H: Se,
- I: Ae,
- j: Ee,
- L: Ce,
- m: ze,
- M: Pe,
- p: _,
- S: qe,
- U: Le,
- w: Re,
- W: Ue,
- x: null,
- X: null,
- y: De,
- Y: Oe,
- Z: Fe,
- "%": tr
- },
- Y = {
- a: y,
- A: g,
- b: m,
- B: x,
- c: null,
- d: Ie,
- e: Ie,
- H: Ye,
- I: Be,
- j: je,
- L: He,
- m: Xe,
- M: Ve,
- p: b,
- S: We,
- U: $e,
- w: Ze,
- W: Ge,
- x: null,
- X: null,
- y: Je,
- Y: Qe,
- Z: Ke,
- "%": tr
- },
- B = {
- a: o,
- A: u,
- b: a,
- B: c,
- c: s,
- d: me,
- e: me,
- H: be,
- I: be,
- j: xe,
- L: Te,
- m: ge,
- M: we,
- p: i,
- S: Me,
- U: pe,
- w: he,
- W: de,
- x: f,
- X: l,
- y: _e,
- Y: ve,
- Z: ye,
- "%": Ne
- };
- return I.x = n(M, I),
- I.X = n(T, I),
- I.c = n(w, I),
- Y.x = n(M, Y),
- Y.X = n(T, Y),
- Y.c = n(w, Y), {
- format: function (t) {
- var e = n(t += "", I);
- return e.toString = function () {
- return t
- },
- e
- },
- parse: function (t) {
- var n = e(t += "", ie);
- return n.toString = function () {
- return t
- },
- n
- },
- utcFormat: function (t) {
- var e = n(t += "", Y);
- return e.toString = function () {
- return t
- },
- e
- },
- utcParse: function (t) {
- var n = e(t, oe);
- return n.toString = function () {
- return t
- },
- n
- }
- }
- }
- function ce(t, n, e) {
- var r = t < 0
- ? "-"
- : "",
- i = (r
- ? -t
- : t) + "",
- o = i.length;
- return r + (o < e
- ? new Array(e - o + 1).join(n) + i
- : i)
- }
- function se(t) {
- return t.replace(Iv, "\\$&")
- }
- function fe(t) {
- return new RegExp("^(?:" + t.map(se).join("|") + ")", "i")
- }
- function le(t) {
- for (var n = {}, e = -1, r = t.length; ++e < r;)
- n[t[e].toLowerCase()] = e;
- return n
- }
- function he(t, n, e) {
- var r = Ov.exec(n.slice(e, e + 1));
- return r
- ? (t.w =+ r[0], e + r[0].length)
- : -1
- }
- function pe(t, n, e) {
- var r = Ov.exec(n.slice(e));
- return r
- ? (t.U =+ r[0], e + r[0].length)
- : -1
- }
- function de(t, n, e) {
- var r = Ov.exec(n.slice(e));
- return r
- ? (t.W =+ r[0], e + r[0].length)
- : -1
- }
- function ve(t, n, e) {
- var r = Ov.exec(n.slice(e, e + 4));
- return r
- ? (t.y =+ r[0], e + r[0].length)
- : -1
- }
- function _e(t, n, e) {
- var r = Ov.exec(n.slice(e, e + 2));
- return r
- ? (t.y =+ r[0] + (+ r[0] > 68
- ? 1900
- : 2e3), e + r[0].length)
- : -1
- }
- function ye(t, n, e) {
- var r = /^(Z)|([+-]\d\d)(?:\:?(\d\d))?/.exec(n.slice(e, e + 6));
- return r
- ? (t.Z = r[1]
- ? 0
- : -(r[2] + (r[3] || "00")), e + r[0].length)
- : -1
- }
- function ge(t, n, e) {
- var r = Ov.exec(n.slice(e, e + 2));
- return r
- ? (t.m = r[0] - 1, e + r[0].length)
- : -1
- }
- function me(t, n, e) {
- var r = Ov.exec(n.slice(e, e + 2));
- return r
- ? (t.d =+ r[0], e + r[0].length)
- : -1
- }
- function xe(t, n, e) {
- var r = Ov.exec(n.slice(e, e + 3));
- return r
- ? (t.m = 0, t.d =+ r[0], e + r[0].length)
- : -1
- }
- function be(t, n, e) {
- var r = Ov.exec(n.slice(e, e + 2));
- return r
- ? (t.H =+ r[0], e + r[0].length)
- : -1
- }
- function we(t, n, e) {
- var r = Ov.exec(n.slice(e, e + 2));
- return r
- ? (t.M =+ r[0], e + r[0].length)
- : -1
- }
- function Me(t, n, e) {
- var r = Ov.exec(n.slice(e, e + 2));
- return r
- ? (t.S =+ r[0], e + r[0].length)
- : -1
- }
- function Te(t, n, e) {
- var r = Ov.exec(n.slice(e, e + 3));
- return r
- ? (t.L =+ r[0], e + r[0].length)
- : -1
- }
- function Ne(t, n, e) {
- var r = Fv.exec(n.slice(e, e + 1));
- return r
- ? e + r[0].length
- : -1
- }
- function ke(t, n) {
- return ce(t.getDate(), n, 2)
- }
- function Se(t, n) {
- return ce(t.getHours(), n, 2)
- }
- function Ae(t, n) {
- return ce(t.getHours() % 12 || 12, n, 2)
- }
- function Ee(t, n) {
- return ce(1 + Cd.count($d(t), t), n, 3)
- }
- function Ce(t, n) {
- return ce(t.getMilliseconds(), n, 3)
- }
- function ze(t, n) {
- return ce(t.getMonth() + 1, n, 2)
- }
- function Pe(t, n) {
- return ce(t.getMinutes(), n, 2)
- }
- function qe(t, n) {
- return ce(t.getSeconds(), n, 2)
- }
- function Le(t, n) {
- return ce(Pd.count($d(t), t), n, 2)
- }
- function Re(t) {
- return t.getDay()
- }
- function Ue(t, n) {
- return ce(qd.count($d(t), t), n, 2)
- }
- function De(t, n) {
- return ce(t.getFullYear() % 100, n, 2)
- }
- function Oe(t, n) {
- return ce(t.getFullYear() % 1e4, n, 4)
- }
- function Fe(t) {
- var n = t.getTimezoneOffset();
- return (n > 0
- ? "-"
- : (n *= -1, "+")) + ce(n / 60 | 0, "0", 2) + ce(n % 60, "0", 2)
- }
- function Ie(t, n) {
- return ce(t.getUTCDate(), n, 2)
- }
- function Ye(t, n) {
- return ce(t.getUTCHours(), n, 2)
- }
- function Be(t, n) {
- return ce(t.getUTCHours() % 12 || 12, n, 2)
- }
- function je(t, n) {
- return ce(1 + tv.count(gv(t), t), n, 3)
- }
- function He(t, n) {
- return ce(t.getUTCMilliseconds(), n, 3)
- }
- function Xe(t, n) {
- return ce(t.getUTCMonth() + 1, n, 2)
- }
- function Ve(t, n) {
- return ce(t.getUTCMinutes(), n, 2)
- }
- function We(t, n) {
- return ce(t.getUTCSeconds(), n, 2)
- }
- function $e(t, n) {
- return ce(ev.count(gv(t), t), n, 2)
- }
- function Ze(t) {
- return t.getUTCDay()
- }
- function Ge(t, n) {
- return ce(rv.count(gv(t), t), n, 2)
- }
- function Je(t, n) {
- return ce(t.getUTCFullYear() % 100, n, 2)
- }
- function Qe(t, n) {
- return ce(t.getUTCFullYear() % 1e4, n, 4)
- }
- function Ke() {
- return "+0000"
- }
- function tr() {
- return "%"
- }
- function nr(n) {
- return qv = ae(n),
- t.timeFormat = qv.format,
- t.timeParse = qv.parse,
- t.utcFormat = qv.utcFormat,
- t.utcParse = qv.utcParse,
- qv
- }
- function er(t) {
- return t.toISOString()
- }
- function rr(t) {
- var n = new Date(t);
- return isNaN(n)
- ? null
- : n
- }
- function ir(t) {
- function n(n) {
- var o = n + "",
- u = e.get(o);
- if (!u) {
- if (i !== Wv)
- return i;
- e.set(o, u = r.push(n))
- }
- return t[(u - 1) % t.length]
- }
- var e = o(),
- r = [],
- i = Wv;
- return t = null == t
- ? []
- : Vv.call(t),
- n.domain = function (t) {
- if (!arguments.length)
- return r.slice();
- r = [],
- e = o();
- for (var i, u, a = -1, c = t.length; ++a < c;)
- e.has(u = (i = t[a]) + "") || e.set(u, r.push(i));
- return n
- },
- n.range = function (e) {
- return arguments.length
- ? (t = Vv.call(e), n)
- : t.slice()
- },
- n.unknown = function (t) {
- return arguments.length
- ? (i = t, n)
- : i
- },
- n.copy = function () {
- return ir()
- .domain(r)
- .range(t)
- .unknown(i)
- },
- n
- }
- function or() {
- function t() {
- var t = i().length,
- r = u[1] < u[0],
- l = u[r - 0],
- h = u[1 - r];
- n = (h - l) / Math.max(1, t - c + 2 * s),
- a && (n = Math.floor(n)),
- l += (h - l - n * (t - c)) * f,
- e = n * (1 - c),
- a && (l = Math.round(l), e = Math.round(e));
- var p = Os(t).map(function (t) {
- return l + n * t
- });
- return o(r
- ? p.reverse()
- : p)
- }
- var n,
- e,
- r = ir().unknown(void 0),
- i = r.domain,
- o = r.range,
- u = [
- 0, 1
- ],
- a = !1,
- c = 0,
- s = 0,
- f = .5;
- return delete r.unknown,
- r.domain = function (n) {
- return arguments.length
- ? (i(n), t())
- : i()
- },
- r.range = function (n) {
- return arguments.length
- ? (u = [ + n[0], + n[1]
- ], t())
- : u.slice()
- },
- r.rangeRound = function (n) {
- return u = [ + n[0], + n[1]
- ],
- a = !0,
- t()
- },
- r.bandwidth = function () {
- return e
- },
- r.step = function () {
- return n
- },
- r.round = function (n) {
- return arguments.length
- ? (a = !!n, t())
- : a
- },
- r.padding = function (n) {
- return arguments.length
- ? (c = s = Math.max(0, Math.min(1, n)), t())
- : c
- },
- r.paddingInner = function (n) {
- return arguments.length
- ? (c = Math.max(0, Math.min(1, n)), t())
- : c
- },
- r.paddingOuter = function (n) {
- return arguments.length
- ? (s = Math.max(0, Math.min(1, n)), t())
- : s
- },
- r.align = function (n) {
- return arguments.length
- ? (f = Math.max(0, Math.min(1, n)), t())
- : f
- },
- r.copy = function () {
- return or()
- .domain(i())
- .range(u)
- .round(a)
- .paddingInner(c)
- .paddingOuter(s)
- .align(f)
- },
- t()
- }
- function ur(t) {
- var n = t.copy;
- return t.padding = t.paddingOuter,
- delete t.paddingInner,
- delete t.paddingOuter,
- t.copy = function () {
- return ur(n())
- },
- t
- }
- function ar() {
- return ur(or().paddingInner(1))
- }
- function cr(t, n) {
- return (n -= t =+ t)
- ? function (e) {
- return (e - t) / n
- }
- : $v(n)
- }
- function sr(t) {
- return function (n, e) {
- var r = t(n =+ n, e =+ e);
- return function (t) {
- return t <= n
- ? 0
- : t >= e
- ? 1
- : r(t)
- }
- }
- }
- function fr(t) {
- return function (n, e) {
- var r = t(n =+ n, e =+ e);
- return function (t) {
- return t <= 0
- ? n
- : t >= 1
- ? e
- : r(t)
- }
- }
- }
- function lr(t, n, e, r) {
- var i = t[0],
- o = t[1],
- u = n[0],
- a = n[1];
- return o < i
- ? (i = e(o, i), u = r(a, u))
- : (i = e(i, o), u = r(u, a)),
- function (t) {
- return u(i(t))
- }
- }
- function hr(t, n, e, r) {
- var i = Math.min(t.length, n.length) - 1,
- o = new Array(i),
- u = new Array(i),
- a = -1;
- for (t[i] < t[0] && (t = t.slice().reverse(), n = n.slice().reverse()); ++a < i;)
- o[a] = e(t[a], t[a + 1]),
- u[a] = r(n[a], n[a + 1]);
- return function (n) {
- var e = ks(t, n, 1, i) - 1;
- return u[e](o[e](n))
- }
- }
- function pr(t, n) {
- return n
- .domain(t.domain())
- .range(t.range())
- .interpolate(t.interpolate())
- .clamp(t.clamp())
- }
- function dr(t, n) {
- function e() {
- return i = Math.min(a.length, c.length) > 2
- ? hr
- : lr,
- o = u = null,
- r
- }
- function r(n) {
- return (o || (o = i(a, c, f
- ? sr(t)
- : t, s)))(+ n)
- }
- var i,
- o,
- u,
- a = Gv,
- c = Gv,
- s = _p,
- f = !1;
- return r.invert = function (t) {
- return (u || (u = i(c, a, cr, f
- ? fr(n)
- : n)))(+ t)
- },
- r.domain = function (t) {
- return arguments.length
- ? (a = Xv.call(t, Zv), e())
- : a.slice()
- },
- r.range = function (t) {
- return arguments.length
- ? (c = Vv.call(t), e())
- : c.slice()
- },
- r.rangeRound = function (t) {
- return c = Vv.call(t),
- s = yp,
- e()
- },
- r.clamp = function (t) {
- return arguments.length
- ? (f = !!t, e())
- : f
- },
- r.interpolate = function (t) {
- return arguments.length
- ? (s = t, e())
- : s
- },
- e()
- }
- function vr(t) {
- var n = t.domain;
- return t.ticks = function (t) {
- var e = n();
- return Bs(e[0], e[e.length - 1], null == t
- ? 10
- : t)
- },
- t.tickFormat = function (t, e) {
- return Jv(n(), t, e)
- },
- t.nice = function (r) {
- var i = n(),
- o = i.length - 1,
- u = null == r
- ? 10
- : r,
- a = i[0],
- c = i[o],
- s = e(a, c, u);
- return s && (s = e(Math.floor(a / s) * s, Math.ceil(c / s) * s, u), i[0] = Math.floor(a / s) * s, i[o] = Math.ceil(c / s) * s, n(i)),
- t
- },
- t
- }
- function _r() {
- var t = dr(cr, lp);
- return t.copy = function () {
- return pr(t, _r())
- },
- vr(t)
- }
- function yr() {
- function t(t) {
- return + t
- }
- var n = [0, 1];
- return t.invert = t,
- t.domain = t.range = function (e) {
- return arguments.length
- ? (n = Xv.call(e, Zv), t)
- : n.slice()
- },
- t.copy = function () {
- return yr().domain(n)
- },
- vr(t)
- }
- function gr(t, n) {
- return (n = Math.log(n / t))
- ? function (e) {
- return Math.log(e / t) / n
- }
- : $v(n)
- }
- function mr(t, n) {
- return t < 0
- ? function (e) {
- return -Math.pow(-n, e) * Math.pow(-t, 1 - e)
- }
- : function (e) {
- return Math.pow(n, e) * Math.pow(t, 1 - e)
- }
- }
- function xr(t) {
- return isFinite(t) ?+ ("1e" + t) : t < 0
- ? 0
- : t
- }
- function br(t) {
- return 10 === t
- ? xr
- : t === Math.E
- ? Math.exp
- : function (n) {
- return Math.pow(t, n)
- }
- }
- function wr(t) {
- return t === Math.E
- ? Math.log
- : 10 === t && Math.log10 || 2 === t && Math.log2 || (t = Math.log(t), function (n) {
- return Math.log(n) / t
- })
- }
- function Mr(t) {
- return function (n) {
- return -t(-n)
- }
- }
- function Tr() {
- function n() {
- return o = wr(i),
- u = br(i),
- r()[0] < 0 && (o = Mr(o), u = Mr(u)),
- e
- }
- var e = dr(gr, mr).domain([1, 10]),
- r = e.domain,
- i = 10,
- o = wr(10),
- u = br(10);
- return e.base = function (t) {
- return arguments.length
- ? (i =+ t, n())
- : i
- },
- e.domain = function (t) {
- return arguments.length
- ? (r(t), n())
- : r()
- },
- e.ticks = function (t) {
- var n,
- e = r(),
- a = e[0],
- c = e[e.length - 1];
- (n = c < a) && (h = a, a = c, c = h);
- var s,
- f,
- l,
- h = o(a),
- p = o(c),
- d = null == t
- ? 10 :+ t,
- v = [];
- if (!(i % 1) && p - h < d) {
- if (h = Math.round(h) - 1, p = Math.round(p) + 1, a > 0) {
- for (; h < p; ++h)
- for (f = 1, s = u(h); f < i; ++f)
- if (l = s * f, !(l < a)) {
- if (l > c)
- break;
- v.push(l)
- }
- } else
- for (; h < p; ++h)
- for (f = i - 1, s = u(h); f >= 1; --f)
- if (l = s * f, !(l < a)) {
- if (l > c)
- break;
- v.push(l)
- }
- } else
- v = Bs(h, p, Math.min(p - h, d)).map(u);
- return n
- ? v.reverse()
- : v
- },
- e.tickFormat = function (n, r) {
- if (null == r && (r = 10 === i
- ? ".0e"
- : ","), "function" != typeof r && (r = t.format(r)), n === 1 / 0)
- return r;
- null == n && (n = 10);
- var a = Math.max(1, i * n / e.ticks().length);
- return function (t) {
- var n = t / u(Math.round(o(t)));
- return n * i < i - .5 && (n *= i),
- n <= a
- ? r(t)
- : ""
- }
- },
- e.nice = function () {
- return r(Qv(r(), {
- floor: function (t) {
- return u(Math.floor(o(t)))
- },
- ceil: function (t) {
- return u(Math.ceil(o(t)))
- }
- }))
- },
- e.copy = function () {
- return pr(e, Tr().base(i))
- },
- e
- }
- function Nr(t, n) {
- return t < 0
- ? -Math.pow(-t, n)
- : Math.pow(t, n)
- }
- function kr() {
- function t(t, n) {
- return (n = Nr(n, e) - (t = Nr(t, e)))
- ? function (r) {
- return (Nr(r, e) - t) / n
- }
- : $v(n)
- }
- function n(t, n) {
- return n = Nr(n, e) - (t = Nr(t, e)),
- function (r) {
- return Nr(t + n * r, 1 / e)
- }
- }
- var e = 1,
- r = dr(t, n),
- i = r.domain;
- return r.exponent = function (t) {
- return arguments.length
- ? (e =+ t, i(i()))
- : e
- },
- r.copy = function () {
- return pr(r, kr().exponent(e))
- },
- vr(r)
- }
- function Sr() {
- return kr().exponent(.5)
- }
- function Ar() {
- function t() {
- var t = 0,
- o = Math.max(1, r.length);
- for (i = new Array(o - 1); ++t < o;)
- i[t - 1] = Xs(e, t / o);
- return n
- }
- function n(t) {
- if (!isNaN(t =+ t))
- return r[ks(i, t)]
- }
- var e = [],
- r = [],
- i = [];
- return n.invertExtent = function (t) {
- var n = r.indexOf(t);
- return n < 0
- ? [NaN, NaN]
- : [
- n > 0
- ? i[n - 1]
- : e[0],
- n < i.length
- ? i[n]
- : e[e.length - 1]
- ]
- },
- n.domain = function (n) {
- if (!arguments.length)
- return e.slice();
- e = [];
- for (var r, i = 0, o = n.length; i < o; ++i)
- r = n[i],
- null == r || isNaN(r =+ r) || e.push(r);
- return e.sort(Ms),
- t()
- },
- n.range = function (n) {
- return arguments.length
- ? (r = Vv.call(n), t())
- : r.slice()
- },
- n.quantiles = function () {
- return i.slice()
- },
- n.copy = function () {
- return Ar()
- .domain(e)
- .range(r)
- },
- n
- }
- function Er() {
- function t(t) {
- if (t <= t)
- return u[ks(o, t, 0, i)]
- }
- function n() {
- var n = -1;
- for (o = new Array(i); ++n < i;)
- o[n] = ((n + 1) * r - (n - i) * e) / (i + 1);
- return t
- }
- var e = 0,
- r = 1,
- i = 1,
- o = [.5],
- u = [0, 1];
- return t.domain = function (t) {
- return arguments.length
- ? (e =+ t[0], r =+ t[1], n())
- : [e, r]
- },
- t.range = function (t) {
- return arguments.length
- ? (i = (u = Vv.call(t)).length - 1, n())
- : u.slice()
- },
- t.invertExtent = function (t) {
- var n = u.indexOf(t);
- return n < 0
- ? [NaN, NaN]
- : n < 1
- ? [e, o[0]]
- : n >= i
- ? [
- o[i - 1],
- r
- ]
- : [
- o[n - 1],
- o[n]
- ]
- },
- t.copy = function () {
- return Er()
- .domain([e, r])
- .range(u)
- },
- vr(t)
- }
- function Cr() {
- function t(t) {
- if (t <= t)
- return e[ks(n, t, 0, r)]
- }
- var n = [.5],
- e = [
- 0, 1
- ],
- r = 1;
- return t.domain = function (i) {
- return arguments.length
- ? (n = Vv.call(i), r = Math.min(n.length, e.length - 1), t)
- : n.slice()
- },
- t.range = function (i) {
- return arguments.length
- ? (e = Vv.call(i), r = Math.min(n.length, e.length - 1), t)
- : e.slice()
- },
- t.invertExtent = function (t) {
- var r = e.indexOf(t);
- return [
- n[r - 1],
- n[r]
- ]
- },
- t.copy = function () {
- return Cr()
- .domain(n)
- .range(e)
- },
- t
- }
- function zr(t) {
- return new Date(t);
- }
- function Pr(t) {
- return t instanceof Date ?+ t :+ new Date(+ t)
- }
- function qr(t, n, r, i, o, u, a, c, s) {
- function f(e) {
- return (a(e) < e
- ? v
- : u(e) < e
- ? _
- : o(e) < e
- ? y
- : i(e) < e
- ? g
- : n(e) < e
- ? r(e) < e
- ? m
- : x
- : t(e) < e
- ? b
- : w)(e)
- }
- function l(n, r, i, o) {
- if (null == n && (n = 10), "number" == typeof n) {
- var u = Math.abs(i - r) / n,
- a = Ts(function (t) {
- return t[2]
- }).right(M, u);
- a === M.length
- ? (o = e(r / o_, i / o_, n), n = t)
- : a
- ? (a = M[u / M[a - 1][2] < M[a][2] / u
- ? a - 1
- : a], o = a[1], n = a[0])
- : (o = e(r, i, n), n = c)
- }
- return null == o
- ? n
- : n.every(o)
- }
- var h = dr(cr, lp),
- p = h.invert,
- d = h.domain,
- v = s(".%L"),
- _ = s(":%S"),
- y = s("%I:%M"),
- g = s("%I %p"),
- m = s("%a %d"),
- x = s("%b %d"),
- b = s("%B"),
- w = s("%Y"),
- M = [
- [
- a, 1, Kv
- ],
- [
- a, 5, 5 * Kv
- ],
- [
- a, 15, 15 * Kv
- ],
- [
- a, 30, 30 * Kv
- ],
- [
- u, 1, t_
- ],
- [
- u, 5, 5 * t_
- ],
- [
- u, 15, 15 * t_
- ],
- [
- u, 30, 30 * t_
- ],
- [
- o, 1, n_
- ],
- [
- o, 3, 3 * n_
- ],
- [
- o, 6, 6 * n_
- ],
- [
- o, 12, 12 * n_
- ],
- [
- i, 1, e_
- ],
- [
- i, 2, 2 * e_
- ],
- [
- r, 1, r_
- ],
- [
- n, 1, i_
- ],
- [
- n, 3, 3 * i_
- ],
- [t, 1, o_]
- ];
- return h.invert = function (t) {
- return new Date(p(t))
- },
- h.domain = function (t) {
- return arguments.length
- ? d(Xv.call(t, Pr))
- : d().map(zr)
- },
- h.ticks = function (t, n) {
- var e,
- r = d(),
- i = r[0],
- o = r[r.length - 1],
- u = o < i;
- return u && (e = i, i = o, o = e),
- e = l(t, i, o, n),
- e = e
- ? e.range(i, o + 1)
- : [],
- u
- ? e.reverse()
- : e
- },
- h.tickFormat = function (t, n) {
- return null == n
- ? f
- : s(n)
- },
- h.nice = function (t, n) {
- var e = d();
- return (t = l(t, e[0], e[e.length - 1], n))
- ? d(Qv(e, t))
- : h
- },
- h.copy = function () {
- return pr(h, qr(t, n, r, i, o, u, a, c, s))
- },
- h
- }
- function Lr(t) {
- var n = t.length;
- return function (e) {
- return t[Math.max(0, Math.min(n - 1, Math.floor(e * n)))]
- }
- }
- function Rr(t) {
- function n(n) {
- var o = (n - e) / (r - e);
- return t(i
- ? Math.max(0, Math.min(1, o))
- : o)
- }
- var e = 0,
- r = 1,
- i = !1;
- return n.domain = function (t) {
- return arguments.length
- ? (e =+ t[0], r =+ t[1], n)
- : [e, r]
- },
- n.clamp = function (t) {
- return arguments.length
- ? (i = !!t, n)
- : i
- },
- n.interpolator = function (e) {
- return arguments.length
- ? (t = e, n)
- : t
- },
- n.copy = function () {
- return Rr(t)
- .domain([e, r])
- .clamp(i)
- },
- vr(n)
- }
- function Ur(t) {
- return function () {
- var n = this.ownerDocument,
- e = this.namespaceURI;
- return e === w_ && n.documentElement.namespaceURI === w_
- ? n.createElement(t)
- : n.createElementNS(e, t)
- }
- }
- function Dr(t) {
- return function () {
- return this
- .ownerDocument
- .createElementNS(t.space, t.local)
- }
- }
- function Or() {
- return new Fr
- }
- function Fr() {
- this._ = "@" + (++k_).toString(36)
- }
- function Ir(t, n, e) {
- return t = Yr(t, n, e),
- function (n) {
- var e = n.relatedTarget;
- e && (e === this || 8 & e.compareDocumentPosition(this)) || t.call(this, n)
- }
- }
- function Yr(n, e, r) {
- return function (i) {
- var o = t.event;
- t.event = i;
- try {
- n.call(this, this.__data__, e, r)
- } finally {
- t.event = o
- }
- }
- }
- function Br(t) {
- return t
- .trim()
- .split(/^|\s+/)
- .map(function (t) {
- var n = "",
- e = t.indexOf(".");
- return e >= 0 && (n = t.slice(e + 1), t = t.slice(0, e)), {
- type: t,
- name: n
- }
- })
- }
- function jr(t) {
- return function () {
- var n = this.__on;
- if (n) {
- for (var e, r = 0, i = -1, o = n.length; r < o; ++r)
- e = n[r],
- t.type && e.type !== t.type || e.name !== t.name
- ? n[++i] = e
- : this.removeEventListener(e.type, e.listener, e.capture);
-
- ++i
- ? n.length = i
- : delete this.__on
- }
- }
- }
- function Hr(t, n, e) {
- var r = z_.hasOwnProperty(t.type)
- ? Ir
- : Yr;
- return function (i, o, u) {
- var a,
- c = this.__on,
- s = r(n, o, u);
- if (c)
- for (var f = 0, l = c.length; f < l; ++f)
- if ((a = c[f]).type === t.type && a.name === t.name)
- return this.removeEventListener(a.type, a.listener, a.capture),
- this.addEventListener(a.type, a.listener = s, a.capture = e),
- void(a.value = n);
- this.addEventListener(t.type, s, e),
- a = {
- type: t.type,
- name: t.name,
- value: n,
- listener: s,
- capture: e
- },
- c
- ? c.push(a)
- : this.__on = [a]
- }
- }
- function Xr(n, e, r, i) {
- var o = t.event;
- n.sourceEvent = t.event,
- t.event = n;
- try {
- return e.apply(r, i)
- } finally {
- t.event = o
- }
- }
- function Vr() {}
- function Wr() {
- return []
- }
- function $r(t, n) {
- this.ownerDocument = t.ownerDocument,
- this.namespaceURI = t.namespaceURI,
- this._next = null,
- this._parent = t,
- this.__data__ = n
- }
- function Zr(t, n, e, r, i, o) {
- for (var u, a = 0, c = n.length, s = o.length; a < s; ++a)
- (u = n[a])
- ? (u.__data__ = o[a], r[a] = u)
- : e[a] = new $r(t, o[a]);
- for (; a < c; ++a)
- (u = n[a]) && (i[a] = u)
- }
- function Gr(t, n, e, r, i, o, u) {
- var a,
- c,
- s,
- f = {},
- l = n.length,
- h = o.length,
- p = new Array(l);
- for (a = 0; a < l; ++a)
- (c = n[a]) && (p[a] = s = X_ + u.call(c, c.__data__, a, n), s in f
- ? i[a] = c
- : f[s] = c);
- for (a = 0; a < h; ++a)
- s = X_ + u.call(t, o[a], a, o),
- (c = f[s])
- ? (r[a] = c, c.__data__ = o[a], f[s] = null)
- : e[a] = new $r(t, o[a]);
- for (a = 0; a < l; ++a)
- (c = n[a]) && f[p[a]] === c && (i[a] = c)
- }
- function Jr(t, n) {
- return t < n
- ? -1
- : t > n
- ? 1
- : t >= n
- ? 0
- : NaN
- }
- function Qr(t) {
- return function () {
- this.removeAttribute(t)
- }
- }
- function Kr(t) {
- return function () {
- this.removeAttributeNS(t.space, t.local)
- }
- }
- function ti(t, n) {
- return function () {
- this.setAttribute(t, n)
- }
- }
- function ni(t, n) {
- return function () {
- this.setAttributeNS(t.space, t.local, n)
- }
- }
- function ei(t, n) {
- return function () {
- var e = n.apply(this, arguments);
- null == e
- ? this.removeAttribute(t)
- : this.setAttribute(t, e)
- }
- }
- function ri(t, n) {
- return function () {
- var e = n.apply(this, arguments);
- null == e
- ? this.removeAttributeNS(t.space, t.local)
- : this.setAttributeNS(t.space, t.local, e)
- }
- }
- function ii(t) {
- return function () {
- this
- .style
- .removeProperty(t)
- }
- }
- function oi(t, n, e) {
- return function () {
- this
- .style
- .setProperty(t, n, e)
- }
- }
- function ui(t, n, e) {
- return function () {
- var r = n.apply(this, arguments);
- null == r
- ? this
- .style
- .removeProperty(t)
- : this
- .style
- .setProperty(t, r, e)
- }
- }
- function ai(t) {
- return function () {
- delete this[t]
- }
- }
- function ci(t, n) {
- return function () {
- this[t] = n
- }
- }
- function si(t, n) {
- return function () {
- var e = n.apply(this, arguments);
- null == e
- ? delete this[t]
- : this[t] = e
- }
- }
- function fi(t) {
- return t
- .trim()
- .split(/^|\s+/)
- }
- function li(t) {
- return t.classList || new hi(t)
- }
- function hi(t) {
- this._node = t,
- this._names = fi(t.getAttribute("class") || "")
- }
- function pi(t, n) {
- for (var e = li(t), r = -1, i = n.length; ++r < i;)
- e.add(n[r])
- }
- function di(t, n) {
- for (var e = li(t), r = -1, i = n.length; ++r < i;)
- e.remove(n[r])
- }
- function vi(t) {
- return function () {
- pi(this, t)
- }
- }
- function _i(t) {
- return function () {
- di(this, t)
- }
- }
- function yi(t, n) {
- return function () {
- (n.apply(this, arguments)
- ? pi
- : di)(this, t)
- }
- }
- function gi() {
- this.textContent = ""
- }
- function mi(t) {
- return function () {
- this.textContent = t
- }
- }
- function xi(t) {
- return function () {
- var n = t.apply(this, arguments);
- this.textContent = null == n
- ? ""
- : n
- }
- }
- function bi() {
- this.innerHTML = ""
- }
- function wi(t) {
- return function () {
- this.innerHTML = t
- }
- }
- function Mi(t) {
- return function () {
- var n = t.apply(this, arguments);
- this.innerHTML = null == n
- ? ""
- : n
- }
- }
- function Ti() {
- this.nextSibling && this
- .parentNode
- .appendChild(this)
- }
- function Ni() {
- this.previousSibling && this
- .parentNode
- .insertBefore(this, this.parentNode.firstChild)
- }
- function ki() {
- return null
- }
- function Si() {
- var t = this.parentNode;
- t && t.removeChild(this)
- }
- function Ai(t, n, e) {
- var r = iy(t),
- i = r.CustomEvent;
- i
- ? i = new i(n, e)
- : (i = r.document.createEvent("Event"), e
- ? (i.initEvent(n, e.bubbles, e.cancelable), i.detail = e.detail)
- : i.initEvent(n, !1, !1)),
- t.dispatchEvent(i)
- }
- function Ei(t, n) {
- return function () {
- return Ai(this, t, n)
- }
- }
- function Ci(t, n) {
- return function () {
- return Ai(this, t, n.apply(this, arguments))
- }
- }
- function zi(t, n) {
- this._groups = t,
- this._parents = n
- }
- function Pi() {
- return new zi([
- [document.documentElement]
- ], yy)
- }
- function qi(t, n) {
- var e = t.__transition;
- if (!e || !(e = e[n]) || e.state > Ty)
- throw new Error("too late");
- return e
- }
- function Li(t, n) {
- var e = t.__transition;
- if (!e || !(e = e[n]) || e.state > ky)
- throw new Error("too late");
- return e
- }
- function Ri(t, n) {
- var e = t.__transition;
- if (!e || !(e = e[n]))
- throw new Error("too late");
- return e
- }
- function Ui(t, n, e) {
- function r(t) {
- e.state = Ny,
- e
- .timer
- .restart(i, e.delay, e.time),
- e.delay <= t && i(t - e.delay)
- }
- function i(r) {
- var s,
- f,
- l,
- h;
- if (e.state !== Ny)
- return u();
- for (s in c)
- if (h = c[s], h.name === e.name) {
- if (h.state === Sy)
- return pd(i);
- h.state === Ay
- ? (h.state = Cy, h.timer.stop(), h.on.call("interrupt", t, t.__data__, h.index, h.group), delete c[s]) :+ s < n && (h.state = Cy, h.timer.stop(), delete c[s])
- }
- if (pd(function () {
- e.state === Sy && (e.state = Ay, e.timer.restart(o, e.delay, e.time), o(r))
- }), e.state = ky, e.on.call("start", t, t.__data__, e.index, e.group), e.state === ky) {
- for (e.state = Sy, a = new Array(l = e.tween.length), s = 0, f = -1; s < l; ++s)
- (h = e.tween[s].value.call(t, t.__data__, e.index, e.group)) && (a[++f] = h);
- a.length = f + 1
- }
- }
- function o(n) {
- for (var r = n < e.duration
- ? e.ease.call(null, n / e.duration)
- : (e.timer.restart(u), e.state = Ey, 1), i = -1, o = a.length; ++i < o;)
- a[i].call(null, r);
- e.state === Ey && (e.on.call("end", t, t.__data__, e.index, e.group), u())
- }
- function u() {
- e.state = Cy,
- e
- .timer
- .stop(),
- delete c[n];
- for (var r in c)
- return;
- delete t.__transition
- }
- var a,
- c = t.__transition;
- c[n] = e,
- e.timer = Vn(r, 0, e.time)
- }
- function Di(t, n) {
- var e,
- r;
- return function () {
- var i = Li(this, t),
- o = i.tween;
- if (o !== e) {
- r = e = o;
- for (var u = 0, a = r.length; u < a; ++u)
- if (r[u].name === n) {
- r = r.slice(),
- r.splice(u, 1);
- break
- }
- }
- i.tween = r
- }
- }
- function Oi(t, n, e) {
- var r,
- i;
- if ("function" != typeof e)
- throw new Error;
- return function () {
- var o = Li(this, t),
- u = o.tween;
- if (u !== r) {
- i = (r = u).slice();
- for (var a = {
- name: n,
- value: e
- }, c = 0, s = i.length; c < s; ++c)
- if (i[c].name === n) {
- i[c] = a;
- break
- }
- c === s && i.push(a)
- }
- o.tween = i
- }
- }
- function Fi(t, n, e) {
- var r = t._id;
- return t.each(function () {
- var t = Li(this, r);
- (t.value || (t.value = {}))[n] = e.apply(this, arguments)
- }),
- function (t) {
- return Ri(t, r).value[n]
- }
- }
- function Ii(t) {
- return function () {
- this.removeAttribute(t)
- }
- }
- function Yi(t) {
- return function () {
- this.removeAttributeNS(t.space, t.local)
- }
- }
- function Bi(t, n, e) {
- var r,
- i;
- return function () {
- var o = this.getAttribute(t);
- return o === e
- ? null
- : o === r
- ? i
- : i = n(r = o, e)
- }
- }
- function ji(t, n, e) {
- var r,
- i;
- return function () {
- var o = this.getAttributeNS(t.space, t.local);
- return o === e
- ? null
- : o === r
- ? i
- : i = n(r = o, e)
- }
- }
- function Hi(t, n, e) {
- var r,
- i,
- o;
- return function () {
- var u,
- a = e(this);
- return null == a
- ? void this.removeAttribute(t)
- : (u = this.getAttribute(t), u === a
- ? null
- : u === r && a === i
- ? o
- : o = n(r = u, i = a))
- }
- }
- function Xi(t, n, e) {
- var r,
- i,
- o;
- return function () {
- var u,
- a = e(this);
- return null == a
- ? void this.removeAttributeNS(t.space, t.local)
- : (u = this.getAttributeNS(t.space, t.local), u === a
- ? null
- : u === r && a === i
- ? o
- : o = n(r = u, i = a))
- }
- }
- function Vi(t, n) {
- function e() {
- var e = this,
- r = n.apply(e, arguments);
- return r && function (n) {
- e.setAttributeNS(t.space, t.local, r(n))
- }
- }
- return e._value = n,
- e
- }
- function Wi(t, n) {
- function e() {
- var e = this,
- r = n.apply(e, arguments);
- return r && function (n) {
- e.setAttribute(t, r(n))
- }
- }
- return e._value = n,
- e
- }
- function $i(t, n) {
- return function () {
- qi(this, t).delay =+ n.apply(this, arguments)
- }
- }
- function Zi(t, n) {
- return n =+ n,
- function () {
- qi(this, t).delay = n
- }
- }
- function Gi(t, n) {
- return function () {
- Li(this, t).duration =+ n.apply(this, arguments)
- }
- }
- function Ji(t, n) {
- return n =+ n,
- function () {
- Li(this, t).duration = n
- }
- }
- function Qi(t, n) {
- if ("function" != typeof n)
- throw new Error;
- return function () {
- Li(this, t).ease = n
- }
- }
- function Ki(t) {
- return (t + "")
- .trim()
- .split(/^|\s+/)
- .every(function (t) {
- var n = t.indexOf(".");
- return n >= 0 && (t = t.slice(0, n)),
- !t || "start" === t
- })
- }
- function to(t, n, e) {
- var r,
- i,
- o = Ki(n)
- ? qi
- : Li;
- return function () {
- var u = o(this, t),
- a = u.on;
- a !== r && (i = (r = a).copy()).on(n, e),
- u.on = i
- }
- }
- function no(t) {
- return function () {
- var n = this.parentNode;
- for (var e in this.__transition)
- if (+ e !== t)
- return;
- n && n.removeChild(this)
- }
- }
- function eo(t, n) {
- var e,
- r,
- i;
- return function () {
- var o = iy(this).getComputedStyle(this, null),
- u = o.getPropertyValue(t),
- a = (this.style.removeProperty(t), o.getPropertyValue(t));
- return u === a
- ? null
- : u === e && a === r
- ? i
- : i = n(e = u, r = a)
- }
- }
- function ro(t) {
- return function () {
- this
- .style
- .removeProperty(t)
- }
- }
- function io(t, n, e) {
- var r,
- i;
- return function () {
- var o = iy(this)
- .getComputedStyle(this, null)
- .getPropertyValue(t);
- return o === e
- ? null
- : o === r
- ? i
- : i = n(r = o, e)
- }
- }
- function oo(t, n, e) {
- var r,
- i,
- o;
- return function () {
- var u = iy(this).getComputedStyle(this, null),
- a = u.getPropertyValue(t),
- c = e(this);
- return null == c && (this.style.removeProperty(t), c = u.getPropertyValue(t)),
- a === c
- ? null
- : a === r && c === i
- ? o
- : o = n(r = a, i = c)
- }
- }
- function uo(t, n, e) {
- function r() {
- var r = this,
- i = n.apply(r, arguments);
- return i && function (n) {
- r
- .style
- .setProperty(t, i(n), e)
- }
- }
- return r._value = n,
- r
- }
- function ao(t) {
- return function () {
- this.textContent = t
- }
- }
- function co(t) {
- return function () {
- var n = t(this);
- this.textContent = null == n
- ? ""
- : n
- }
- }
- function so(t, n, e, r) {
- this._groups = t,
- this._parents = n,
- this._name = e,
- this._id = r
- }
- function fo(t) {
- return Pi().transition(t)
- }
- function lo() {
- return++ Ky
- }
- function ho(t, n) {
- for (var e; !(e = t.__transition) || !(e = e[n]);)
- if (!(t = t.parentNode))
- return ng.time = jn(),
- ng;
- return e
- }
- function po(t, n, e) {
- var r = t(e);
- return "translate(" + (isFinite(r)
- ? r
- : n(e)) + ",0)"
- }
- function vo(t, n, e) {
- var r = t(e);
- return "translate(0," + (isFinite(r)
- ? r
- : n(e)) + ")"
- }
- function _o(t) {
- var n = t.bandwidth() / 2;
- return t.round() && (n = Math.round(n)),
- function (e) {
- return t(e) + n
- }
- }
- function yo() {
- return !this.__axis
- }
- function go(t, n) {
- function e(e) {
- var s,
- f = null == i
- ? n.ticks
- ? n
- .ticks
- .apply(n, r)
- : n.domain()
- : i,
- l = null == o
- ? n.tickFormat
- ? n
- .tickFormat
- .apply(n, r)
- : ug
- : o,
- h = Math.max(u, 0) + c,
- p = t === ag || t === sg
- ? po
- : vo,
- d = n.range(),
- v = d[0] + .5,
- _ = d[d.length - 1] + .5,
- y = (n.bandwidth
- ? _o
- : ug)(n.copy()),
- g = e.selection
- ? e.selection()
- : e,
- m = g
- .selectAll(".domain")
- .data([null]),
- x = g
- .selectAll(".tick")
- .data(f, n)
- .order(),
- b = x.exit(),
- w = x
- .enter()
- .append("g")
- .attr("class", "tick"),
- M = x.select("line"),
- T = x.select("text"),
- N = t === ag || t === fg
- ? -1
- : 1,
- k = t === fg || t === cg
- ? (s = "x", "y")
- : (s = "y", "x");
- m = m.merge(m.enter().insert("path", ".tick").attr("class", "domain").attr("stroke", "#000")),
- x = x.merge(w),
- M = M.merge(w.append("line").attr("stroke", "#000").attr(s + "2", N * u).attr(k + "1", .5).attr(k + "2", .5)),
- T = T.merge(w.append("text").attr("fill", "#000").attr(s, N * h).attr(k, .5).attr("dy", t === ag
- ? "0em"
- : t === sg
- ? "0.71em"
- : "0.32em")),
- e !== g && (m = m.transition(e), x = x.transition(e), M = M.transition(e), T = T.transition(e), b = b.transition(e).attr("opacity", lg).attr("transform", function (t) {
- return p(y, this.parentNode.__axis || y, t)
- }), w.attr("opacity", lg).attr("transform", function (t) {
- return p(this.parentNode.__axis || y, y, t)
- })),
- b.remove(),
- m.attr("d", t === fg || t == cg
- ? "M" + N * a + "," + v + "H0.5V" + _ + "H" + N * a
- : "M" + v + "," + N * a + "V0.5H" + _ + "V" + N * a),
- x
- .attr("opacity", 1)
- .attr("transform", function (t) {
- return p(y, y, t)
- }),
- M.attr(s + "2", N * u),
- T
- .attr(s, N * h)
- .text(l),
- g
- .filter(yo)
- .attr("fill", "none")
- .attr("font-size", 10)
- .attr("font-family", "sans-serif")
- .attr("text-anchor", t === cg
- ? "start"
- : t === fg
- ? "end"
- : "middle"),
- g.each(function () {
- this.__axis = y
- })
- }
- var r = [],
- i = null,
- o = null,
- u = 6,
- a = 6,
- c = 3;
- return e.scale = function (t) {
- return arguments.length
- ? (n = t, e)
- : n
- },
- e.ticks = function () {
- return r = og.call(arguments),
- e
- },
- e.tickArguments = function (t) {
- return arguments.length
- ? (r = null == t
- ? []
- : og.call(t), e)
- : r.slice()
- },
- e.tickValues = function (t) {
- return arguments.length
- ? (i = null == t
- ? null
- : og.call(t), e)
- : i && i.slice()
- },
- e.tickFormat = function (t) {
- return arguments.length
- ? (o = t, e)
- : o
- },
- e.tickSize = function (t) {
- return arguments.length
- ? (u = a =+ t, e)
- : u
- },
- e.tickSizeInner = function (t) {
- return arguments.length
- ? (u =+ t, e)
- : u
- },
- e.tickSizeOuter = function (t) {
- return arguments.length
- ? (a =+ t, e)
- : a
- },
- e.tickPadding = function (t) {
- return arguments.length
- ? (c =+ t, e)
- : c
- },
- e
- }
- function mo(t) {
- return go(ag, t)
- }
- function xo(t) {
- return go(cg, t)
- }
- function bo(t) {
- return go(sg, t)
- }
- function wo(t) {
- return go(fg, t)
- }
- function Mo(t, n) {
- return t.parent === n.parent
- ? 1
- : 2
- }
- function To(t) {
- return t.reduce(No, 0) / t.length
- }
- function No(t, n) {
- return t + n.x
- }
- function ko(t) {
- return 1 + t.reduce(So, 0)
- }
- function So(t, n) {
- return Math.max(t, n.y)
- }
- function Ao(t) {
- for (var n; n = t.children;)
- t = n[0];
- return t
- }
- function Eo(t) {
- for (var n; n = t.children;)
- t = n[n.length - 1];
- return t
- }
- function Co(t, n) {
- if (t === n)
- return t;
- var e = t.ancestors(),
- r = n.ancestors(),
- i = null;
- for (t = e.pop(), n = r.pop(); t === n;)
- i = t,
- t = e.pop(),
- n = r.pop();
- return i
- }
- function zo(t, n) {
- var e,
- r,
- i,
- o,
- u,
- a = new Uo(t),
- c =+ t.value && (a.value = t.value),
- s = [a];
- for (null == n && (n = qo); e = s.pop();)
- if (c && (e.value =+ e.data.value), (i = n(e.data)) && (u = i.length))
- for (e.children = new Array(u), o = u - 1; o >= 0; --o)
- s.push(r = e.children[o] = new Uo(i[o])),
- r.parent = e,
- r.depth = e.depth + 1;
- return a.eachBefore(Ro)
- }
- function Po() {
- return zo(this).eachBefore(Lo)
- }
- function qo(t) {
- return t.children
- }
- function Lo(t) {
- t.data = t.data.data
- }
- function Ro(t) {
- var n = 0;
- do
- t.height = n;
- while ((t = t.parent) && t.height < ++n)
- }
- function Uo(t) {
- this.data = t,
- this.depth = this.height = 0,
- this.parent = null
- }
- function Do(t) {
- this._ = t,
- this.next = null
- }
- function Oo(t, n) {
- var e = n.x - t.x,
- r = n.y - t.y,
- i = t.r - n.r;
- return i * i + 1e-6 > e * e + r * r
- }
- function Fo(t, n) {
- var e,
- r,
- i,
- o = null,
- u = t.head;
- switch (n.length) {
- case 1:
- e = Io(n[0]);
- break;
- case 2:
- e = Yo(n[0], n[1]);
- break;
- case 3:
- e = Bo(n[0], n[1], n[2])
- }
- for (; u;)
- i = u._,
- r = u.next,
- e && Oo(e, i)
- ? o = u
- : (o
- ? (t.tail = o, o.next = null)
- : t.head = t.tail = null, n.push(i), e = Fo(t, n), n.pop(), t.head
- ? (u.next = t.head, t.head = u)
- : (u.next = null, t.head = t.tail = u), o = t.tail, o.next = r),
- u = r;
- return t.tail = o,
- e
- }
- function Io(t) {
- return {x: t.x, y: t.y, r: t.r}
- }
- function Yo(t, n) {
- var e = t.x,
- r = t.y,
- i = t.r,
- o = n.x,
- u = n.y,
- a = n.r,
- c = o - e,
- s = u - r,
- f = a - i,
- l = Math.sqrt(c * c + s * s);
- return {
- x: (e + o + c / l * f) / 2,
- y: (r + u + s / l * f) / 2,
- r: (l + i + a) / 2
- }
- }
- function Bo(t, n, e) {
- var r = t.x,
- i = t.y,
- o = t.r,
- u = n.x,
- a = n.y,
- c = n.r,
- s = e.x,
- f = e.y,
- l = e.r,
- h = 2 * (r - u),
- p = 2 * (i - a),
- d = 2 * (c - o),
- v = r * r + i * i - o * o - u * u - a * a + c * c,
- _ = 2 * (r - s),
- y = 2 * (i - f),
- g = 2 * (l - o),
- m = r * r + i * i - o * o - s * s - f * f + l * l,
- x = _ * p - h * y,
- b = (p * m - y * v) / x - r,
- w = (y * d - p * g) / x,
- M = (_ * v - h * m) / x - i,
- T = (h * g - _ * d) / x,
- N = w * w + T * T - 1,
- k = 2 * (b * w + M * T + o),
- S = b * b + M * M - o * o,
- A = (-k - Math.sqrt(k * k - 4 * N * S)) / (2 * N);
- return {
- x: b + *A + r,
- y: M + *A + i,
- r: A
- }
- }
- function jo(t, n, e) {
- var r = t.x,
- i = t.y,
- o = n.r + e.r,
- u = t.r + e.r,
- a = n.x - r,
- c = n.y - i,
- s = a * a + c * c;
- if (s) {
- var f = .5 + ((u *= u) - (o *= o)) / (2 * s),
- l = Math.sqrt(Math.max(0, 2 * o * (u + s) - (u -= s) * u - o * o)) / (2 * s);
- e.x = r + f * a + l * c,
- e.y = i + f * c - l * a
- } else
- e.x = r + u,
- e.y = i
- }
- function Ho(t, n) {
- var e = n.x - t.x,
- r = n.y - t.y,
- i = t.r + n.r;
- return i * i > e * e + r * r
- }
- function Xo(t, n, e) {
- var r = t.x - n,
- i = t.y - e;
- return r * r + i * i
- }
- function Vo(t) {
- this._ = t,
- this.next = null,
- this.previous = null
- }
- function Wo(t) {
- if (!(i = t.length))
- return 0;
- var n,
- e,
- r,
- i;
- if (n = t[0], n.x = 0, n.y = 0, !(i > 1))
- return n.r;
- if (e = t[1], n.x = -e.r, e.x = n.r, e.y = 0, !(i > 2))
- return n.r + e.r;
- jo(e, n, r = t[2]);
- var o,
- u,
- a,
- c,
- s,
- f,
- l,
- h = n.r * n.r,
- p = e.r * e.r,
- d = r.r * r.r,
- v = h + p + d,
- _ = h * n.x + p * e.x + d * r.x,
- y = h * n.y + p * e.y + d * r.y;
- n = new Vo(n),
- e = new Vo(e),
- r = new Vo(r),
- n.next = r.previous = e,
- e.next = n.previous = r,
- r.next = e.previous = n;
- t : for (a = 3; a < i; ++a) {
- if (jo(n._, e._, r = t[a]), r = new Vo(r), (s = n.previous) === (c = e.next)) {
- if (Ho(c._, r._)) {
- n = e,
- e = c,
- --a;
- continue t
- }
- } else {
- f = c._.r,
- l = s._.r;
- do
- if (f <= l) {
- if (Ho(c._, r._)) {
- e = c,
- n.next = e,
- e.previous = n,
- --a;
- continue t
- }
- c = c.next,
- f += c._.r
- }
- else {
- if (Ho(s._, r._)) {
- n = s,
- n.next = e,
- e.previous = n,
- --a;
- continue t
- }
- s = s.previous,
- l += s._.r
- }
- while (c !== s.next)
- }
- for (r.previous = n, r.next = e, n.next = e.previous = e = r, v += d = r._.r * r._.r, _ += d * r._.x, y += d * r._.y, h = Xo(n._, o = _ / v, u = y / v); (r = r.next) !== e;)
- (d = Xo(r._, o, u)) < h && (n = r, h = d);
- e = n.next
- }
- for (n = [e._], r = e; (r = r.next) !== e;)
- n.push(r._);
- for (r = Tg(n), a = 0; a < i; ++a)
- n = t[a],
- n.x -= r.x,
- n.y -= r.y;
- return r.r
- }
- function $o(t) {
- return null == t
- ? null
- : Zo(t)
- }
- function Zo(t) {
- if ("function" != typeof t)
- throw new Error;
- return t
- }
- function Go() {
- return 0
- }
- function Jo(t) {
- return Math.sqrt(t.value)
- }
- function Qo(t) {
- return function (n) {
- n.children || (n.r = Math.max(0, + t(n) || 0))
- }
- }
- function Ko(t, n) {
- return function (e) {
- if (r = e.children) {
- var r,
- i,
- o,
- u = r.length,
- a = t(e) * n || 0;
- if (a)
- for (i = 0; i < u; ++i)
- r[i].r += a;
- if (o = Wo(r), a)
- for (i = 0; i < u; ++i)
- r[i].r -= a;
- e.r = o + a
- }
- }
- }
- function tu(t) {
- return function (n) {
- var e = n.parent;
- n.r *= t,
- e && (n.x = e.x + t * n.x, n.y = e.y + t * n.y)
- }
- }
- function nu(t) {
- return t.id
- }
- function eu(t) {
- return t.parentId
- }
- function ru(t, n) {
- return t.parent === n.parent
- ? 1
- : 2
- }
- function iu(t) {
- var n = t.children;
- return n
- ? n[0]
- : t.t
- }
- function ou(t) {
- var n = t.children;
- return n
- ? n[n.length - 1]
- : t.t
- }
- function uu(t, n, e) {
- var r = e / (n.i - t.i);
- n.c -= r,
- n.s += e,
- t.c += r,
- n.z += e,
- n.m += e
- }
- function au(t) {
- for (var n, e = 0, r = 0, i = t.children, o = i.length; --o >= 0;)
- n = i[o],
- n.z += e,
- n.m += e,
- e += n.s + (r += n.c)
- }
- function cu(t, n, e) {
- return t.a.parent === n.parent
- ? t.a
- : e
- }
- function su(t, n) {
- this._ = t,
- this.parent = null,
- this.children = null,
- this.A = null,
- this.a = this,
- this.z = 0,
- this.m = 0,
- this.c = 0,
- this.s = 0,
- this.t = null,
- this.i = n
- }
- function fu(t) {
- for (var n, e, r, i, o, u = new su(t, 0), a = [u]; n = a.pop();)
- if (r = n._.children)
- for (n.children = new Array(o = r.length), i = o - 1; i >= 0; --i)
- a.push(e = n.children[i] = new su(r[i], i)),
- e.parent = n;
- return (u.parent = new su(null, 0)).children = [u],
- u
- }
- function lu(t, n, e, r, i, o) {
- for (var u, a, c, s, f, l, h, p, d, v, _, y, g = [], m = n.children, x = 0, b = m.length, w = n.value; x < b;) {
- for (s = i - e, f = o - r, h = p = l = m[x].value, _ = Math.max(f / s, s / f) / (w * t), y = l * l * _, v = Math.max(p / y, y / h), c = x + 1; c < b; ++c) {
- if (l += a = m[c].value, a < h && (h = a), a > p && (p = a), y = l * l * _, d = Math.max(p / y, y / h), d > v) {
- l -= a;
- break
- }
- v = d
- }
- g.push(u = {
- value: l,
- dice: s < f,
- children: m.slice(x, c)
- }),
- u.dice
- ? Eg(u, e, r, i, w
- ? r += f * l / w
- : o)
- : Ug(u, e, r, w
- ? e += s * l / w
- : i, o),
- w -= l,
- x = c
- }
- return g
- }
- function hu(t) {
- return t.x + t.vx
- }
- function pu(t) {
- return t.y + t.vy
- }
- function du(t, n) {
- return n
- }
- function vu(t, n) {
- var e = t.get(n);
- if (!e)
- throw new Error("missing: " + n);
- return e
- }
- function _u(t) {
- return t.x
- }
- function yu(t) {
- return t.y
- }
- function gu() {
- t
- .event
- .stopImmediatePropagation()
- }
- function mu(t, n) {
- var e = t.document.documentElement,
- r = gy(t).on("dragstart.drag", null);
- n && (r.on("click.drag", tm, !0), setTimeout(function () {
- r.on("click.drag", null)
- }, 0)),
- "onselectstart" in e
- ? r.on("selectstart.drag", null)
- : (e.style.MozUserSelect = e.__noselect, delete e.__noselect)
- }
- function xu(t, n, e, r, i, o, u, a, c, s) {
- this.target = t,
- this.type = n,
- this.subject = e,
- this.identifier = r,
- this.active = i,
- this.x = o,
- this.y = u,
- this.dx = a,
- this.dy = c,
- this._ = s
- }
- function bu() {
- return !t.event.button
- }
- function wu() {
- return this.parentNode
- }
- function Mu(n) {
- return null == n
- ? {
- x: t.event.x,
- y: t.event.y
- }
- : n
- }
- function Tu(t) {
- return t[0]
- }
- function Nu(t) {
- return t[1]
- }
- function ku() {
- this._ = null
- }
- function Su(t) {
- t.U = t.C = t.L = t.R = t.P = t.N = null
- }
- function Au(t, n) {
- var e = n,
- r = n.R,
- i = e.U;
- i
- ? i.L === e
- ? i.L = r
- : i.R = r
- : t._ = r,
- r.U = i,
- e.U = r,
- e.R = r.L,
- e.R && (e.R.U = e),
- r.L = e
- }
- function Eu(t, n) {
- var e = n,
- r = n.L,
- i = e.U;
- i
- ? i.L === e
- ? i.L = r
- : i.R = r
- : t._ = r,
- r.U = i,
- e.U = r,
- e.L = r.R,
- e.L && (e.L.U = e),
- r.R = e
- }
- function Cu(t) {
- for (; t.L;)
- t = t.L;
- return t
- }
- function zu(t, n, e, r) {
- var i = [
- null, null
- ],
- o = sm.push(i) - 1;
- return i.left = t,
- i.right = n,
- e && qu(i, t, n, e),
- r && qu(i, n, t, r),
- am[t.index]
- .halfedges
- .push(o),
- am[n.index]
- .halfedges
- .push(o),
- i
- }
- function Pu(t, n, e) {
- var r = [n, e];
- return r.left = t,
- r
- }
- function qu(t, n, e, r) {
- t[0] || t[1]
- ? t.left === e
- ? t[1] = r
- : t[0] = r
- : (t[0] = r, t.left = n, t.right = e)
- }
- function Lu(t, n, e, r, i) {
- var o,
- u = t[0],
- a = t[1],
- c = u[0],
- s = u[1],
- f = a[0],
- l = a[1],
- h = 0,
- p = 1,
- d = f - c,
- v = l - s;
- if (o = n - c, d || !(o > 0)) {
- if (o /= d, d < 0) {
- if (o < h)
- return;
- o < p && (p = o)
- } else if (d > 0) {
- if (o > p)
- return;
- o > h && (h = o)
- }
- if (o = r - c, d || !(o < 0)) {
- if (o /= d, d < 0) {
- if (o > p)
- return;
- o > h && (h = o)
- } else if (d > 0) {
- if (o < h)
- return;
- o < p && (p = o)
- }
- if (o = e - s, v || !(o > 0)) {
- if (o /= v, v < 0) {
- if (o < h)
- return;
- o < p && (p = o)
- } else if (v > 0) {
- if (o > p)
- return;
- o > h && (h = o)
- }
- if (o = i - s, v || !(o < 0)) {
- if (o /= v, v < 0) {
- if (o > p)
- return;
- o > h && (h = o)
- } else if (v > 0) {
- if (o < h)
- return;
- o < p && (p = o)
- }
- return !(h > 0 || p < 1) || (h > 0 && (t[0] = [
- c + h * d,
- s + h * v
- ]), p < 1 && (t[1] = [
- c + p * d,
- s + p * v
- ]), !0)
- }
- }
- }
- }
- }
- function Ru(t, n, e, r, i) {
- var o = t[1];
- if (o)
- return !0;
- var u,
- a,
- c = t[0],
- s = t.left,
- f = t.right,
- l = s[0],
- h = s[1],
- p = f[0],
- d = f[1],
- v = (l + p) / 2,
- _ = (h + d) / 2;
- if (d === h) {
- if (v < n || v >= r)
- return;
- if (l > p) {
- if (c) {
- if (c[1] >= i)
- return
- } else
- c = [v, e];
- o = [v, i]
- } else {
- if (c) {
- if (c[1] < e)
- return
- } else
- c = [v, i];
- o = [v, e]
- }
- } else if (u = (l - p) / (d - h), a = _ - u * v, u < -1 || u > 1)
- if (l > p) {
- if (c) {
- if (c[1] >= i)
- return
- } else
- c = [
- (e - a) / u,
- e
- ];
- o = [
- (i - a) / u,
- i
- ]
- }
- else {
- if (c) {
- if (c[1] < e)
- return
- } else
- c = [
- (i - a) / u,
- i
- ];
- o = [
- (e - a) / u,
- e
- ]
- } else if (h < d) {
- if (c) {
- if (c[0] >= r)
- return
- } else
- c = [
- n, u * n + a
- ];
- o = [
- r, u * r + a
- ]
- } else {
- if (c) {
- if (c[0] < n)
- return
- } else
- c = [
- r, u * r + a
- ];
- o = [
- n, u * n + a
- ]
- }
- return t[0] = c,
- t[1] = o,
- !0
- }
- function Uu(t, n, e, r) {
- for (var i, o = sm.length; o--;)
- Ru(i = sm[o], t, n, e, r) && Lu(i, t, n, e, r) && (Math.abs(i[0][0] - i[1][0]) > hm || Math.abs(i[0][1] - i[1][1]) > hm) || delete sm[o]
- }
- function Du(t) {
- return am[t.index] = {
- site: t,
- halfedges: []
- }
- }
- function Ou(t, n) {
- var e = t.site,
- r = n.left,
- i = n.right;
- return e === i && (i = r, r = e),
- i
- ? Math.atan2(i[1] - r[1], i[0] - r[0])
- : (e === r
- ? (r = n[1], i = n[0])
- : (r = n[0], i = n[1]), Math.atan2(r[0] - i[0], i[1] - r[1]))
- }
- function Fu(t, n) {
- return n[+ (n.left !== t.site)]
- }
- function Iu(t, n) {
- return n[+ (n.left === t.site)]
- }
- function Yu() {
- for (var t, n, e, r, i = 0, o = am.length; i < o; ++i)
- if ((t = am[i]) && (r = (n = t.halfedges).length)) {
- var u = new Array(r),
- a = new Array(r);
- for (e = 0; e < r; ++e)
- u[e] = e,
- a[e] = Ou(t, sm[n[e]]);
- for (u.sort(function (t, n) {
- return a[n] - a[t]
- }), e = 0; e < r; ++e)
- a[e] = n[u[e]];
- for (e = 0; e < r; ++e)
- n[e] = a[e]
- }
- }
- function Bu(t, n, e, r) {
- var i,
- o,
- u,
- a,
- c,
- s,
- f,
- l,
- h,
- p,
- d,
- v,
- _ = am.length,
- y = !0;
- for (i = 0; i < _; ++i)
- if (o = am[i]) {
- for (u = o.site, c = o.halfedges, a = c.length; a--;)
- sm[c[a]] || c.splice(a, 1);
- for (a = 0, s = c.length; a < s;)
- p = Iu(o, sm[c[a]]),
- d = p[0],
- v = p[1],
- f = Fu(o, sm[c[++a % s]]),
- l = f[0],
- h = f[1],
- (Math.abs(d - l) > hm || Math.abs(v - h) > hm) && (c.splice(a, 0, sm.push(Pu(u, p, Math.abs(d - t) < hm && r - v > hm
- ? [
- t, Math.abs(l - t) < hm
- ? h
- : r
- ]
- : Math.abs(v - r) < hm && e - d > hm
- ? [
- Math.abs(h - r) < hm
- ? l
- : e,
- r
- ]
- : Math.abs(d - e) < hm && v - n > hm
- ? [
- e, Math.abs(l - e) < hm
- ? h
- : n
- ]
- : Math.abs(v - n) < hm && d - t > hm
- ? [
- Math.abs(h - n) < hm
- ? l
- : t,
- n
- ]
- : null)) - 1), ++s);
- s && (y = !1)
- }
- if (y) {
- var g,
- m,
- x,
- b = 1 / 0;
- for (i = 0, y = null; i < _; ++i)
- (o = am[i]) && (u = o.site, g = u[0] - t, m = u[1] - n, x = g * g + m * m, x < b && (b = x, y = o));
- if (y) {
- var w = [
- t, n
- ],
- M = [
- t, r
- ],
- T = [
- e, r
- ],
- N = [e, n];
- y
- .halfedges
- .push(sm.push(Pu(u = y.site, w, M)) - 1, sm.push(Pu(u, M, T)) - 1, sm.push(Pu(u, T, N)) - 1, sm.push(Pu(u, N, w)) - 1)
- }
- }
- for (i = 0; i < _; ++i)
- (o = am[i]) && (o.halfedges.length || delete am[i])
- }
- function ju() {
- Su(this),
- this.x = this.y = this.arc = this.site = this.cy = null
- }
- function Hu(t) {
- var n = t.P,
- e = t.N;
- if (n && e) {
- var r = n.site,
- i = t.site,
- o = e.site;
- if (r !== o) {
- var u = i[0],
- a = i[1],
- c = r[0] - u,
- s = r[1] - a,
- f = o[0] - u,
- l = o[1] - a,
- h = 2 * (c * l - s * f);
- if (!(h >= -pm)) {
- var p = c * c + s * s,
- d = f * f + l * l,
- v = (l * p - s * d) / h,
- _ = (c * d - f * p) / h,
- y = fm.pop() || new ju;
- y.arc = t,
- y.site = i,
- y.x = v + u,
- y.y = (y.cy = _ + a) + Math.sqrt(v * v + _ * _),
- t.circle = y;
- for (var g = null, m = cm._; m;)
- if (y.y < m.y || y.y === m.y && y.x <= m.x) {
- if (!m.L) {
- g = m.P;
- break
- }
- m = m.L
- }
- else {
- if (!m.R) {
- g = m;
- break
- }
- m = m.R
- }
- cm.insert(g, y),
- g || (om = y)
- }
- }
- }
- }
- function Xu(t) {
- var n = t.circle;
- n && (n.P || (om = n.N), cm.remove(n), fm.push(n), Su(n), t.circle = null)
- }
- function Vu() {
- Su(this),
- this.edge = this.site = this.circle = null
- }
- function Wu(t) {
- var n = lm.pop() || new Vu;
- return n.site = t,
- n
- }
- function $u(t) {
- Xu(t),
- um.remove(t),
- lm.push(t),
- Su(t)
- }
- function Zu(t) {
- var n = t.circle,
- e = n.x,
- r = n.cy,
- i = [
- e, r
- ],
- o = t.P,
- u = t.N,
- a = [t];
- $u(t);
- for (var c = o; c.circle && Math.abs(e - c.circle.x) < hm && Math.abs(r - c.circle.cy) < hm;)
- o = c.P,
- a.unshift(c),
- $u(c),
- c = o;
- a.unshift(c),
- Xu(c);
- for (var s = u; s.circle && Math.abs(e - s.circle.x) < hm && Math.abs(r - s.circle.cy) < hm;)
- u = s.N,
- a.push(s),
- $u(s),
- s = u;
- a.push(s),
- Xu(s);
- var f,
- l = a.length;
- for (f = 1; f < l; ++f)
- s = a[f],
- c = a[f - 1],
- qu(s.edge, c.site, s.site, i);
- c = a[0],
- s = a[l - 1],
- s.edge = zu(c.site, s.site, null, i),
- Hu(c),
- Hu(s)
- }
- function Gu(t) {
- for (var n, e, r, i, o = t[0], u = t[1], a = um._; a;)
- if (r = Ju(a, u) - o, r > hm)
- a = a.L;
- else {
- if (i = o - Qu(a, u), !(i > hm)) {
- r > -hm
- ? (n = a.P, e = a)
- : i > -hm
- ? (n = a, e = a.N)
- : n = e = a;
- break
- }
- if (!a.R) {
- n = a;
- break
- }
- a = a.R
- }
- Du(t);
- var c = Wu(t);
- if (um.insert(n, c), n || e) {
- if (n === e)
- return Xu(n),
- e = Wu(n.site),
- um.insert(c, e),
- c.edge = e.edge = zu(n.site, c.site),
- Hu(n),
- void Hu(e);
- if (!e)
- return void(c.edge = zu(n.site, c.site));
- Xu(n),
- Xu(e);
- var s = n.site,
- f = s[0],
- l = s[1],
- h = t[0] - f,
- p = t[1] - l,
- d = e.site,
- v = d[0] - f,
- _ = d[1] - l,
- y = 2 * (h * _ - p * v),
- g = h * h + p * p,
- m = v * v + _ * _,
- x = [
- (_ * g - p * m) / y + f,
- (h * m - v * g) / y + l
- ];
- qu(e.edge, s, d, x),
- c.edge = zu(s, t, null, x),
- e.edge = zu(t, d, null, x),
- Hu(n),
- Hu(e)
- }
- }
- function Ju(t, n) {
- var e = t.site,
- r = e[0],
- i = e[1],
- o = i - n;
- if (!o)
- return r;
- var u = t.P;
- if (!u)
- return -(1 / 0);
- e = u.site;
- var a = e[0],
- c = e[1],
- s = c - n;
- if (!s)
- return a;
- var f = a - r,
- l = 1 / o - 1 / s,
- h = f / s;
- return l
- ? (-h + Math.sqrt(h * h - 2 * l * (f * f / (-2 * s) - c + s / 2 + i - o / 2))) / l + r
- : (r + a) / 2
- }
- function Qu(t, n) {
- var e = t.N;
- if (e)
- return Ju(e, n);
- var r = t.site;
- return r[1] === n
- ? r[0]
- : 1 / 0
- }
- function Ku(t, n, e) {
- return (t[0] - e[0]) * (n[1] - t[1]) - (t[0] - n[0]) * (e[1] - t[1])
- }
- function ta(t, n) {
- return n[1] - t[1] || n[0] - t[0]
- }
- function na(t, n) {
- var e,
- r,
- i,
- o = t
- .sort(ta)
- .pop();
- for (sm = [], am = new Array(t.length), um = new ku, cm = new ku;;)
- if (i = om, o && (!i || o[1] < i.y || o[1] === i.y && o[0] < i.x))
- o[0] === e && o[1] === r || (Gu(o), e = o[0], r = o[1]),
- o = t.pop();
- else {
- if (!i)
- break;
- Zu(i.arc)
- }
- if (Yu(), n) {
- var u =+ n[0][0],
- a =+ n[0][1],
- c =+ n[1][0],
- s =+ n[1][1];
- Uu(u, a, c, s),
- Bu(u, a, c, s)
- }
- this.edges = sm,
- this.cells = am,
- um = cm = sm = am = null
- }
- function ea(t, n, e) {
- this.target = t,
- this.type = n,
- this.transform = e
- }
- function ra(t, n, e) {
- this.k = t,
- this.x = n,
- this.y = e
- }
- function ia(t) {
- return t.__zoom || _m
- }
- function oa() {
- t
- .event
- .stopImmediatePropagation()
- }
- function ua() {
- return !t.event.button
- }
- function aa() {
- var t,
- n,
- e = this;
- return e instanceof SVGElement
- ? (e = e.ownerSVGElement || e, t = e.width.baseVal.value, n = e.height.baseVal.value)
- : (t = e.clientWidth, n = e.clientHeight),
- [
- [
- 0, 0
- ],
- [t, n]
- ]
- }
- function ca() {
- return this.__zoom || _m
- }
- function sa() {
- t
- .event
- .stopImmediatePropagation()
- }
- function fa(t) {
- return {type: t}
- }
- function la() {
- return !t.event.button
- }
- function ha() {
- var t = this.ownerSVGElement || this;
- return [
- [
- 0, 0
- ],
- [t.width.baseVal.value, t.height.baseVal.value]
- ]
- }
- function pa(t) {
- for (; !t.__brush;)
- if (!(t = t.parentNode))
- return;
- return t.__brush
- }
- function da(t) {
- return t[0][0] === t[1][0] || t[0][1] === t[1][1]
- }
- function va(t) {
- var n = t.__brush;
- return n
- ? n
- .dim
- .output(n.selection)
- : null
- }
- function _a() {
- return ga(km)
- }
- function ya() {
- return ga(Sm)
- }
- function ga(n) {
- function e(t) {
- var e = t
- .property("__brush", a)
- .selectAll(".overlay")
- .data([fa("overlay")]);
- e
- .enter()
- .append("rect")
- .attr("class", "overlay")
- .attr("pointer-events", "all")
- .attr("cursor", Em.overlay)
- .merge(e)
- .each(function () {
- var t = pa(this).extent;
- gy(this)
- .attr("x", t[0][0])
- .attr("y", t[0][1])
- .attr("width", t[1][0] - t[0][0])
- .attr("height", t[1][1] - t[0][1])
- }),
- t
- .selectAll(".selection")
- .data([fa("selection")])
- .enter()
- .append("rect")
- .attr("class", "selection")
- .attr("cursor", Em.selection)
- .attr("fill", "#777")
- .attr("fill-opacity", .3)
- .attr("stroke", "#fff")
- .attr("shape-rendering", "crispEdges");
- var i = t
- .selectAll(".handle")
- .data(n.handles, function (t) {
- return t.type
- });
- i
- .exit()
- .remove(),
- i
- .enter()
- .append("rect")
- .attr("class", function (t) {
- return "handle handle--" + t.type
- })
- .attr("cursor", function (t) {
- return Em[t.type]
- }),
- t
- .each(r)
- .attr("fill", "none")
- .attr("pointer-events", "all")
- .style("-webkit-tap-highlight-color", "rgba(0,0,0,0)")
- .on("mousedown.brush touchstart.brush", u)
- }
- function r() {
- var t = gy(this),
- n = pa(this).selection;
- n
- ? (t.selectAll(".selection").style("display", null).attr("x", n[0][0]).attr("y", n[0][1]).attr("width", n[1][0] - n[0][0]).attr("height", n[1][1] - n[0][1]), t.selectAll(".handle").style("display", null).attr("x", function (t) {
- return "e" === t.type[t.type.length - 1]
- ? n[1][0] - h / 2
- : n[0][0] - h / 2
- }).attr("y", function (t) {
- return "s" === t.type[0]
- ? n[1][1] - h / 2
- : n[0][1] - h / 2
- }).attr("width", function (t) {
- return "n" === t.type || "s" === t.type
- ? n[1][0] - n[0][0] + h
- : h
- }).attr("height", function (t) {
- return "e" === t.type || "w" === t.type
- ? n[1][1] - n[0][1] + h
- : h
- }))
- : t
- .selectAll(".selection,.handle")
- .style("display", "none")
- .attr("x", null)
- .attr("y", null)
- .attr("width", null)
- .attr("height", null)
- }
- function i(t, n) {
- return t.__brush.emitter || new o(t, n)
- }
- function o(t, n) {
- this.that = t,
- this.args = n,
- this.state = t.__brush,
- this.active = 0
- }
- function u() {
- function e() {
- var t = U_(T);
- !U || w || M || (Math.abs(t[0] - O[0]) > Math.abs(t[1] - O[1])
- ? M = !0
- : w = !0),
- O = t,
- b = !0,
- bm(),
- o()
- }
- function o() {
- var t;
- switch (m = O[0] - D[0], x = O[1] - D[1], k) {
- case Mm:
- case wm:
- S && (m = Math.max(P - l, Math.min(L - v, m)), h = l + m, _ = v + m),
- A && (x = Math.max(q - p, Math.min(R - y, x)), d = p + x, g = y + x);
- break;
- case Tm:
- S < 0
- ? (m = Math.max(P - l, Math.min(L - l, m)), h = l + m, _ = v)
- : S > 0 && (m = Math.max(P - v, Math.min(L - v, m)), h = l, _ = v + m),
- A < 0
- ? (x = Math.max(q - p, Math.min(R - p, x)), d = p + x, g = y)
- : A > 0 && (x = Math.max(q - y, Math.min(R - y, x)), d = p, g = y + x);
- break;
- case Nm:
- S && (h = Math.max(P, Math.min(L, l - m * S)), _ = Math.max(P, Math.min(L, v + m * S))),
- A && (d = Math.max(q, Math.min(R, p - x * A)), g = Math.max(q, Math.min(R, y + x * A)))
- }
- _ < h && (S *= -1, t = l, l = v, v = t, t = h, h = _, _ = t, N in Cm && Y.attr("cursor", Em[N = Cm[N]])),
- g < d && (A *= -1, t = p, p = y, y = t, t = d, d = g, g = t, N in zm && Y.attr("cursor", Em[N = zm[N]])),
- E.selection && (z = E.selection),
- w && (h = z[0][0], _ = z[1][0]),
- M && (d = z[0][1], g = z[1][1]),
- z[0][0] === h && z[0][1] === d && z[1][0] === _ && z[1][1] === g || (E.selection = [
- [
- h, d
- ],
- [_, g]
- ], r.call(T), F.brush())
- }
- function u() {
- if (sa(), t.event.touches) {
- if (t.event.touches.length)
- return;
- c && clearTimeout(c),
- c = setTimeout(function () {
- c = null
- }, 500),
- I.on("touchmove.brush touchend.brush touchcancel.brush", null)
- } else
- mu(t.event.view, b),
- B.on("keydown.brush keyup.brush mousemove.brush mouseup.brush", null);
- I.attr("pointer-events", "all"),
- Y.attr("cursor", Em.overlay),
- E.selection && (z = E.selection),
- da(z) && (E.selection = null, r.call(T)),
- F.end()
- }
- function a() {
- switch (t.event.keyCode) {
- case 16:
- U = S && A;
- break;
- case 18:
- k === Tm && (S && (v = _ - m * S, l = h + m * S), A && (y = g - x * A, p = d + x * A), k = Nm, o());
- break;
- case 32:
- k !== Tm && k !== Nm || (S < 0
- ? v = _ - m
- : S > 0 && (l = h - m), A < 0
- ? y = g - x
- : A > 0 && (p = d - x), k = Mm, Y.attr("cursor", Em.selection), o());
- break;
- default:
- return
- }
- bm()
- }
- function s() {
- switch (t.event.keyCode) {
- case 16:
- U && (w = M = U = !1, o());
- break;
- case 18:
- k === Nm && (S < 0
- ? v = _
- : S > 0 && (l = h), A < 0
- ? y = g
- : A > 0 && (p = d), k = Tm, o());
- break;
- case 32:
- k === Mm && (t.event.altKey
- ? (S && (v = _ - m * S, l = h + m * S), A && (y = g - x * A, p = d + x * A), k = Nm)
- : (S < 0
- ? v = _
- : S > 0 && (l = h), A < 0
- ? y = g
- : A > 0 && (p = d), k = Tm), Y.attr("cursor", Em[N]), o());
- break;
- default:
- return
- }
- bm()
- }
- if (t.event.touches) {
- if (t.event.changedTouches.length < t.event.touches.length)
- return bm()
- } else if (c)
- return;
- if (f.apply(this, arguments)) {
- var l,
- h,
- p,
- d,
- v,
- _,
- y,
- g,
- m,
- x,
- b,
- w,
- M,
- T = this,
- N = t.event.target.__data__.type,
- k = "selection" === (t.event.metaKey
- ? N = "overlay"
- : N)
- ? wm
- : t.event.altKey
- ? Nm
- : Tm,
- S = n === Sm
- ? null
- : Pm[N],
- A = n === km
- ? null
- : qm[N],
- E = pa(T),
- C = E.extent,
- z = E.selection,
- P = C[0][0],
- q = C[0][1],
- L = C[1][0],
- R = C[1][1],
- U = S && A && t.event.shiftKey,
- D = U_(T),
- O = D,
- F = i(T, arguments).beforestart();
- "overlay" === N
- ? E.selection = z = [
- [
- l = n === Sm
- ? P
- : D[0],
- p = n === km
- ? q
- : D[1]
- ],
- [
- v = n === Sm
- ? L
- : l,
- y = n === km
- ? R
- : p
- ]
- ]
- : (l = z[0][0], p = z[0][1], v = z[1][0], y = z[1][1]),
- h = l,
- d = p,
- _ = v,
- g = y;
- var I = gy(T).attr("pointer-events", "none"),
- Y = I
- .selectAll(".overlay")
- .attr("cursor", Em[N]);
- if (t.event.touches)
- I.on("touchmove.brush", e, !0).on("touchend.brush touchcancel.brush", u, !0);
- else {
- var B = gy(t.event.view)
- .on("keydown.brush", a, !0)
- .on("keyup.brush", s, !0)
- .on("mousemove.brush", e, !0)
- .on("mouseup.brush", u, !0);
- nm(t.event.view)
- }
- sa(),
- Py(T),
- r.call(T),
- F.start()
- }
- }
- function a() {
- var t = this.__brush || {
- selection: null
- };
- return t.extent = s.apply(this, arguments),
- t.dim = n,
- t
- }
- var c,
- s = ha,
- f = la,
- l = Pn(e, "start", "brush", "end"),
- h = 6;
- return e.move = function (t, e) {
- t.selection
- ? t.on("start.brush", function () {
- i(this, arguments)
- .beforestart()
- .start()
- })
- .on("interrupt.brush end.brush", function () {
- i(this, arguments).end()
- })
- .tween("brush", function () {
- function t(t) {
- u.selection = 1 === t && da(s)
- ? null
- : f(t),
- r.call(o),
- a.brush()
- }
- var o = this,
- u = o.__brush,
- a = i(o, arguments),
- c = u.selection,
- s = n.input("function" == typeof e
- ? e.apply(this, arguments)
- : e, u.extent),
- f = _p(c, s);
- return c && s
- ? t
- : t(1)
- })
- : t.each(function () {
- var t = this,
- o = arguments,
- u = t.__brush,
- a = n.input("function" == typeof e
- ? e.apply(t, o)
- : e, u.extent),
- c = i(t, o).beforestart();
- Py(t),
- u.selection = null == a || da(a)
- ? null
- : a,
- r.call(t),
- c
- .start()
- .brush()
- .end()
- })
- },
- o.prototype = {
- beforestart: function () {
- return 1 === ++this.active && (this.state.emitter = this, this.starting = !0),
- this
- },
- start: function () {
- return this.starting && (this.starting = !1, this.emit("start")),
- this
- },
- brush: function () {
- return this.emit("brush"),
- this
- },
- end: function () {
- return 0 === --this.active && (delete this.state.emitter, this.emit("end")),
- this
- },
- emit: function (t) {
- Xr(new xm(e, t, n.output(this.state.selection)), l.apply, l, [t, this.that, this.args])
- }
- },
- e.extent = function (t) {
- return arguments.length
- ? (s = "function" == typeof t
- ? t
- : mm([
- [ + t[0][0], + t[0][1]
- ],
- [ + t[1][0], + t[1][1]
- ]
- ]), e)
- : s
- },
- e.filter = function (t) {
- return arguments.length
- ? (f = "function" == typeof t
- ? t
- : mm(!!t), e)
- : f
- },
- e.handleSize = function (t) {
- return arguments.length
- ? (h =+ t, e)
- : h
- },
- e.on = function () {
- var t = l
- .on
- .apply(l, arguments);
- return t === l
- ? e
- : t
- },
- e
- }
- function ma(t) {
- return function (n, e) {
- return t(n.source.value + n.target.value, e.source.value + e.target.value)
- }
- }
- function xa(t) {
- return t.source
- }
- function ba(t) {
- return t.target
- }
- function wa(t) {
- return t.radius
- }
- function Ma(t) {
- return t.startAngle
- }
- function Ta(t) {
- return t.endAngle
- }
- function Na() {
- this.reset()
- }
- function ka(t, n, e) {
- var r = t.s = n + e,
- i = r - n,
- o = r - i;
- t.t = n - o + (e - i)
- }
- function Sa(t) {
- return t > 1
- ? 0
- : t < -1
- ? kx
- : Math.acos(t)
- }
- function Aa(t) {
- return t > 1
- ? Sx
- : t < -1
- ? -Sx
- : Math.asin(t)
- }
- function Ea(t) {
- return (t = Ix(t / 2)) * t
- }
- function Ca() {}
- function za(t, n) {
- t && Xx.hasOwnProperty(t.type) && Xx[t.type](t, n)
- }
- function Pa(t, n, e) {
- var r,
- i = -1,
- o = t.length - e;
- for (n.lineStart(); ++i < o;)
- r = t[i],
- n.point(r[0], r[1], r[2]);
- n.lineEnd()
- }
- function qa(t, n) {
- var e = -1,
- r = t.length;
- for (n.polygonStart(); ++e < r;)
- Pa(t[e], n, 1);
- n.polygonEnd()
- }
- function La() {
- Zx.point = Ua
- }
- function Ra() {
- Da(Vm, Wm)
- }
- function Ua(t, n) {
- Zx.point = Da,
- Vm = t,
- Wm = n,
- t *= zx,
- n *= zx,
- $m = t,
- Zm = Rx(n = n / 2 + Ax),
- Gm = Ix(n)
- }
- function Da(t, n) {
- t *= zx,
- n *= zx,
- n = n / 2 + Ax;
- var e = t - $m,
- r = e >= 0
- ? 1
- : -1,
- i = r * e,
- o = Rx(n),
- u = Ix(n),
- a = Gm * u,
- c = Zm * o + a * Rx(i),
- s = a * r * Ix(i);
- Wx.add(Lx(s, c)),
- $m = t,
- Zm = o,
- Gm = u
- }
- function Oa(t) {
- return [
- Lx(t[1], t[0]),
- Aa(t[2])
- ]
- }
- function Fa(t) {
- var n = t[0],
- e = t[1],
- r = Rx(e);
- return [
- r * Rx(n),
- r * Ix(n),
- Ix(e)
- ]
- }
- function Ia(t, n) {
- return t[0] * n[0] + t[1] * n[1] + t[2] * n[2]
- }
- function Ya(t, n) {
- return [
- t[1] * n[2] - t[2] * n[1],
- t[2] * n[0] - t[0] * n[2],
- t[0] * n[1] - t[1] * n[0]
- ]
- }
- function Ba(t, n) {
- t[0] += n[0],
- t[1] += n[1],
- t[2] += n[2]
- }
- function ja(t, n) {
- return [
- t[0] * n,
- t[1] * n,
- t[2] * n
- ]
- }
- function Ha(t) {
- var n = Bx(t[0] * t[0] + t[1] * t[1] + t[2] * t[2]);
- t[0] /= n,
- t[1] /= n,
- t[2] /= n
- }
- function Xa(t, n) {
- ox.push(ux = [
- Jm = t,
- Km = t
- ]),
- n < Qm && (Qm = n),
- n > tx && (tx = n)
- }
- function Va(t, n) {
- var e = Fa([
- t * zx,
- n * zx
- ]);
- if (ix) {
- var r = Ya(ix, e),
- i = [
- r[1], -r[0],
- 0
- ],
- o = Ya(i, r);
- Ha(o),
- o = Oa(o);
- var u,
- a = t - nx,
- c = a > 0
- ? 1
- : -1,
- s = o[0] * Cx * c,
- f = Px(a) > 180;
- f ^ (c * nx < s && s < c * t)
- ? (u = o[1] * Cx, u > tx && (tx = u))
- : (s = (s + 360) % 360 - 180, f ^ (c * nx < s && s < c * t)
- ? (u = -o[1] * Cx, u < Qm && (Qm = u))
- : (n < Qm && (Qm = n), n > tx && (tx = n))),
- f
- ? t < nx
- ? Qa(Jm, t) > Qa(Jm, Km) && (Km = t)
- : Qa(t, Km) > Qa(Jm, Km) && (Jm = t)
- : Km >= Jm
- ? (t < Jm && (Jm = t), t > Km && (Km = t))
- : t > nx
- ? Qa(Jm, t) > Qa(Jm, Km) && (Km = t)
- : Qa(t, Km) > Qa(Jm, Km) && (Jm = t)
- } else
- Xa(t, n);
- ix = e,
- nx = t
- }
- function Wa() {
- Qx.point = Va
- }
- function $a() {
- ux[0] = Jm,
- ux[1] = Km,
- Qx.point = Xa,
- ix = null
- }
- function Za(t, n) {
- if (ix) {
- var e = t - nx;
- Jx.add(Px(e) > 180
- ? e + (e > 0
- ? 360
- : -360)
- : e)
- } else
- ex = t,
- rx = n;
- Zx.point(t, n),
- Va(t, n)
- }
- function Ga() {
- Zx.lineStart()
- }
- function Ja() {
- Za(ex, rx),
- Zx.lineEnd(),
- Px(Jx) > Tx && (Jm = -(Km = 180)),
- ux[0] = Jm,
- ux[1] = Km,
- ix = null
- }
- function Qa(t, n) {
- return (n -= t) < 0
- ? n + 360
- : n
- }
- function Ka(t, n) {
- return t[0] - n[0]
- }
- function tc(t, n) {
- return t[0] <= t[1]
- ? t[0] <= n && n <= t[1]
- : n < t[0] || t[1] < n
- }
- function nc(t, n) {
- t *= zx,
- n *= zx;
- var e = Rx(n);
- ec(e * Rx(t), e * Ix(t), Ix(n))
- }
- function ec(t, n, e) {
- ++ax,
- sx += (t - sx) / ax,
- fx += (n - fx) / ax,
- lx += (e - lx) / ax
- }
- function rc() {
- tb.point = ic
- }
- function ic(t, n) {
- t *= zx,
- n *= zx;
- var e = Rx(n);
- xx = e * Rx(t),
- bx = e * Ix(t),
- wx = Ix(n),
- tb.point = oc,
- ec(xx, bx, wx)
- }
- function oc(t, n) {
- t *= zx,
- n *= zx;
- var e = Rx(n),
- r = e * Rx(t),
- i = e * Ix(t),
- o = Ix(n),
- u = Lx(Bx((u = bx * o - wx * i) * u + (u = wx * r - xx * o) * u + (u = xx * i - bx * r) * u), xx * r + bx * i + wx * o);
- cx += u,
- hx += u * (xx + (xx = r)),
- px += u * (bx + (bx = i)),
- dx += u * (wx + (wx = o)),
- ec(xx, bx, wx)
- }
- function uc() {
- tb.point = nc
- }
- function ac() {
- tb.point = sc
- }
- function cc() {
- fc(gx, mx),
- tb.point = nc
- }
- function sc(t, n) {
- gx = t,
- mx = n,
- t *= zx,
- n *= zx,
- tb.point = fc;
- var e = Rx(n);
- xx = e * Rx(t),
- bx = e * Ix(t),
- wx = Ix(n),
- ec(xx, bx, wx)
- }
- function fc(t, n) {
- t *= zx,
- n *= zx;
- var e = Rx(n),
- r = e * Rx(t),
- i = e * Ix(t),
- o = Ix(n),
- u = bx * o - wx * i,
- a = wx * r - xx * o,
- c = xx * i - bx * r,
- s = Bx(u * u + a * a + c * c),
- f = xx * r + bx * i + wx * o,
- l = s && -Sa(f) / s,
- h = Lx(s, f);
- vx += l * u,
- _x += l * a,
- yx += l * c,
- cx += h,
- hx += h * (xx + (xx = r)),
- px += h * (bx + (bx = i)),
- dx += h * (wx + (wx = o)),
- ec(xx, bx, wx)
- }
- function lc(t, n) {
- return [
- t > kx
- ? t - Ex
- : t < -kx
- ? t + Ex
- : t,
- n
- ]
- }
- function hc(t, n, e) {
- return (t %= Ex)
- ? n || e
- ? rb(dc(t), vc(n, e))
- : dc(t)
- : n || e
- ? vc(n, e)
- : lc
- }
- function pc(t) {
- return function (n, e) {
- return n += t,
- [
- n > kx
- ? n - Ex
- : n < -kx
- ? n + Ex
- : n,
- e
- ]
- }
- }
- function dc(t) {
- var n = pc(t);
- return n.invert = pc(-t),
- n
- }
- function vc(t, n) {
- function e(t, n) {
- var e = Rx(n),
- a = Rx(t) * e,
- c = Ix(t) * e,
- s = Ix(n),
- f = s * r + a * i;
- return [
- Lx(c * o - f * u, a * r - s * i),
- Aa(f * o + c * u)
- ]
- }
- var r = Rx(t),
- i = Ix(t),
- o = Rx(n),
- u = Ix(n);
- return e.invert = function (t, n) {
- var e = Rx(n),
- a = Rx(t) * e,
- c = Ix(t) * e,
- s = Ix(n),
- f = s * o - c * u;
- return [
- Lx(c * o + s * u, a * r + f * i),
- Aa(f * r - a * i)
- ]
- },
- e
- }
- function _c(t, n, e, r, i, o) {
- if (e) {
- var u = Rx(n),
- a = Ix(n),
- c = r * e;
- null == i
- ? (i = n + r * Ex, o = n - c / 2)
- : (i = yc(u, i), o = yc(u, o), (r > 0
- ? i < o
- : i > o) && (i += r * Ex));
- for (var s, f = i; r > 0
- ? f > o
- : f < o; f -= c)
- s = Oa([
- u, -a * Rx(f), -a * Ix(f)
- ]),
- t.point(s[0], s[1])
- }
- }
- function yc(t, n) {
- n = Fa(n),
- n[0] -= t,
- Ha(n);
- var e = Sa(-n[1]);
- return ((-n[2] < 0
- ? -e
- : e) + Ex - Tx) % Ex
- }
- function gc(t, n, e, r) {
- this.x = t,
- this.z = n,
- this.o = e,
- this.e = r,
- this.v = !1,
- this.n = this.p = null
- }
- function mc(t) {
- if (n = t.length) {
- for (var n, e, r = 0, i = t[0]; ++r < n;)
- i.n = e = t[r],
- e.p = i,
- i = e;
- i.n = e = t[0],
- e.p = i
- }
- }
- function xc(t, n, e, r) {
- function i(i, o) {
- return t <= i && i <= e && n <= o && o <= r
- }
- function o(i, o, a, s) {
- var f = 0,
- l = 0;
- if (null == i || (f = u(i, a)) !== (l = u(o, a)) || c(i, o) < 0 ^ a > 0) {
- do
- s.point(0 === f || 3 === f
- ? t
- : e, f > 1
- ? r
- : n);
- while ((f = (f + a + 4) % 4) !== l)
- } else
- s.point(o[0], o[1])
- }
- function u(r, i) {
- return Px(r[0] - t) < Tx
- ? i > 0
- ? 0
- : 3
- : Px(r[0] - e) < Tx
- ? i > 0
- ? 2
- : 1
- : Px(r[1] - n) < Tx
- ? i > 0
- ? 1
- : 0
- : i > 0
- ? 3
- : 2
- }
- function a(t, n) {
- return c(t.x, n.x)
- }
- function c(t, n) {
- var e = u(t, 1),
- r = u(n, 1);
- return e !== r
- ? e - r
- : 0 === e
- ? n[1] - t[1]
- : 1 === e
- ? t[0] - n[0]
- : 2 === e
- ? t[1] - n[1]
- : n[0] - t[0]
- }
- return function (u) {
- function c(t, n) {
- i(t, n) && k.point(t, n)
- }
- function s() {
- for (var n = 0, e = 0, i = _.length; e < i; ++e)
- for (var o, u, a = _[e], c = 1, s = a.length, f = a[0], l = f[0], h = f[1]; c < s; ++c)
- o = l,
- u = h,
- f = a[c],
- l = f[0],
- h = f[1],
- u <= r
- ? h > r && (l - o) * (r - u) > (h - u) * (t - o) && ++n
- : h <= r && (l - o) * (r - u) < (h - u) * (t - o) && --n;
- return n
- }
- function f() {
- k = S,
- v = [],
- _ = [],
- N = !0
- }
- function l() {
- var t = s(),
- n = N && t,
- e = (v = Js(v)).length;
- (n || e) && (u.polygonStart(), n && (u.lineStart(), o(null, null, 1, u), u.lineEnd()), e && xb(v, a, t, o, u), u.polygonEnd()),
- k = u,
- v = _ = y = null
- }
- function h() {
- A.point = d,
- _ && _.push(y = []),
- T = !0,
- M = !1,
- b = w = NaN
- }
- function p() {
- v && (d(g, m), x && M && S.rejoin(), v.push(S.result())),
- A.point = c,
- M && k.lineEnd()
- }
- function d(o, u) {
- var a = i(o, u);
- if (_ && y.push([o, u]), T)
- g = o,
- m = u,
- x = a,
- T = !1,
- a && (k.lineStart(), k.point(o, u));
- else if (a && M)
- k.point(o, u);
- else {
- var c = [
- b = Math.max(wb, Math.min(bb, b)),
- w = Math.max(wb, Math.min(bb, w))
- ],
- s = [
- o = Math.max(wb, Math.min(bb, o)),
- u = Math.max(wb, Math.min(bb, u))
- ];
- gb(c, s, t, n, e, r)
- ? (M || (k.lineStart(), k.point(c[0], c[1])), k.point(s[0], s[1]), a || k.lineEnd(), N = !1)
- : a && (k.lineStart(), k.point(o, u), N = !1)
- }
- b = o,
- w = u,
- M = a
- }
- var v,
- _,
- y,
- g,
- m,
- x,
- b,
- w,
- M,
- T,
- N,
- k = u,
- S = yb(),
- A = {
- point: c,
- lineStart: h,
- lineEnd: p,
- polygonStart: f,
- polygonEnd: l
- };
- return A
- }
- }
- function bc() {
- Nb.point = Mc,
- Nb.lineEnd = wc
- }
- function wc() {
- Nb.point = Nb.lineEnd = Ca
- }
- function Mc(t, n) {
- t *= zx,
- n *= zx,
- ib = t,
- ob = Ix(n),
- ub = Rx(n),
- Nb.point = Tc
- }
- function Tc(t, n) {
- t *= zx,
- n *= zx;
- var e = Ix(n),
- r = Rx(n),
- i = Px(t - ib),
- o = Rx(i),
- u = Ix(i),
- a = r * u,
- c = ub * e - ob * r * o,
- s = ob * e + ub * r * o;
- Tb.add(Lx(Bx(a * a + c * c), s)),
- ib = t,
- ob = e,
- ub = r
- }
- function Nc(t, n, e) {
- var r = Os(t, n - Tx, e).concat(n);
- return function (t) {
- return r.map(function (n) {
- return [t, n]
- })
- }
- }
- function kc(t, n, e) {
- var r = Os(t, n - Tx, e).concat(n);
- return function (t) {
- return r.map(function (n) {
- return [n, t]
- })
- }
- }
- function Sc() {
- function t() {
- return {type: "MultiLineString", coordinates: n()}
- }
- function n() {
- return Os(Ux(o / _) * _, i, _)
- .map(h)
- .concat(Os(Ux(s / y) * y, c, y).map(p))
- .concat(Os(Ux(r / d) * d, e, d).filter(function (t) {
- return Px(t % _) > Tx
- }).map(f))
- .concat(Os(Ux(a / v) * v, u, v).filter(function (t) {
- return Px(t % y) > Tx
- }).map(l))
- }
- var e,
- r,
- i,
- o,
- u,
- a,
- c,
- s,
- f,
- l,
- h,
- p,
- d = 10,
- v = d,
- _ = 90,
- y = 360,
- g = 2.5;
- return t.lines = function () {
- return n().map(function (t) {
- return {type: "LineString", coordinates: t}
- })
- },
- t.outline = function () {
- return {
- type: "Polygon",
- coordinates: [h(o).concat(p(c).slice(1), h(i).reverse().slice(1), p(s).reverse().slice(1))]
- }
- },
- t.extent = function (n) {
- return arguments.length
- ? t
- .extentMajor(n)
- .extentMinor(n)
- : t.extentMinor()
- },
- t.extentMajor = function (n) {
- return arguments.length
- ? (o =+ n[0][0], i =+ n[1][0], s =+ n[0][1], c =+ n[1][1], o > i && (n = o, o = i, i = n), s > c && (n = s, s = c, c = n), t.precision(g))
- : [
- [
- o, s
- ],
- [i, c]
- ]
- },
- t.extentMinor = function (n) {
- return arguments.length
- ? (r =+ n[0][0], e =+ n[1][0], a =+ n[0][1], u =+ n[1][1], r > e && (n = r, r = e, e = n), a > u && (n = a, a = u, u = n), t.precision(g))
- : [
- [
- r, a
- ],
- [e, u]
- ]
- },
- t.step = function (n) {
- return arguments.length
- ? t
- .stepMajor(n)
- .stepMinor(n)
- : t.stepMinor()
- },
- t.stepMajor = function (n) {
- return arguments.length
- ? (_ =+ n[0], y =+ n[1], t)
- : [_, y]
- },
- t.stepMinor = function (n) {
- return arguments.length
- ? (d =+ n[0], v =+ n[1], t)
- : [d, v]
- },
- t.precision = function (n) {
- return arguments.length
- ? (g =+ n, f = Nc(a, u, 90), l = kc(r, e, g), h = Nc(s, c, 90), p = kc(o, i, g), t)
- : g
- },
- t.extentMajor([
- [
- -180, -90 + Tx
- ],
- [
- 180, 90 - Tx
- ]
- ]).extentMinor([
- [
- -180, -80 - Tx
- ],
- [
- 180, 80 + Tx
- ]
- ])
- }
- function Ac() {
- return Sc()()
- }
- function Ec() {
- Lb.point = Cc
- }
- function Cc(t, n) {
- Lb.point = zc,
- ab = sb = t,
- cb = fb = n
- }
- function zc(t, n) {
- qb.add(fb * t - sb * n),
- sb = t,
- fb = n
- }
- function Pc() {
- zc(ab, cb)
- }
- function qc(t, n) {
- t < Rb && (Rb = t),
- t > Db && (Db = t),
- n < Ub && (Ub = n),
- n > Ob && (Ob = n)
- }
- function Lc(t, n) {
- Ib += t,
- Yb += n,
- ++Bb
- }
- function Rc() {
- Zb.point = Uc
- }
- function Uc(t, n) {
- Zb.point = Dc,
- Lc(pb = t, db = n)
- }
- function Dc(t, n) {
- var e = t - pb,
- r = n - db,
- i = Bx(e * e + r * r);
- jb += i * (pb + t) / 2,
- Hb += i * (db + n) / 2,
- Xb += i,
- Lc(pb = t, db = n)
- }
- function Oc() {
- Zb.point = Lc
- }
- function Fc() {
- Zb.point = Yc
- }
- function Ic() {
- Bc(lb, hb)
- }
- function Yc(t, n) {
- Zb.point = Bc,
- Lc(lb = pb = t, hb = db = n)
- }
- function Bc(t, n) {
- var e = t - pb,
- r = n - db,
- i = Bx(e * e + r * r);
- jb += i * (pb + t) / 2,
- Hb += i * (db + n) / 2,
- Xb += i,
- i = db * t - pb * n,
- Vb += i * (pb + t),
- Wb += i * (db + n),
- $b += 3 * i,
- Lc(pb = t, db = n)
- }
- function jc(t) {
- this._context = t
- }
- function Hc() {
- this._string = []
- }
- function Xc(t) {
- return "m0," + t + "a" + t + "," + t + " 0 1,1 0," + -2 * t + "a" + t + "," + t + " 0 1,1 0," + 2 * t + "z"
- }
- function Vc(t) {
- return t.length > 1
- }
- function Wc(t, n) {
- return ((t = t.x)[0] < 0
- ? t[1] - Sx - Tx
- : Sx - t[1]) - ((n = n.x)[0] < 0
- ? n[1] - Sx - Tx
- : Sx - n[1])
- }
- function $c(t) {
- var n,
- e = NaN,
- r = NaN,
- i = NaN;
- return {
- lineStart: function () {
- t.lineStart(),
- n = 1
- },
- point: function (o, u) {
- var a = o > 0
- ? kx
- : -kx,
- c = Px(o - e);
- Px(c - kx) < Tx
- ? (t.point(e, r = (r + u) / 2 > 0
- ? Sx
- : -Sx), t.point(i, r), t.lineEnd(), t.lineStart(), t.point(a, r), t.point(o, r), n = 0)
- : i !== a && c >= kx && (Px(e - i) < Tx && (e -= i * Tx), Px(o - a) < Tx && (o -= a * Tx), r = Zc(e, r, o, u), t.point(i, r), t.lineEnd(), t.lineStart(), t.point(a, r), n = 0),
- t.point(e = o, r = u),
- i = a
- },
- lineEnd: function () {
- t.lineEnd(),
- e = r = NaN
- },
- clean: function () {
- return 2 - n
- }
- }
- }
- function Zc(t, n, e, r) {
- var i,
- o,
- u = Ix(t - e);
- return Px(u) > Tx
- ? qx((Ix(n) * (o = Rx(r)) * Ix(e) - Ix(r) * (i = Rx(n)) * Ix(t)) / (i * o * u))
- : (n + r) / 2
- }
- function Gc(t, n, e, r) {
- var i;
- if (null == t)
- i = e * Sx,
- r.point(-kx, i),
- r.point(0, i),
- r.point(kx, i),
- r.point(kx, 0),
- r.point(kx, -i),
- r.point(0, -i),
- r.point(-kx, -i),
- r.point(-kx, 0),
- r.point(-kx, i);
- else if (Px(t[0] - n[0]) > Tx) {
- var o = t[0] < n[0]
- ? kx
- : -kx;
- i = e * o / 2,
- r.point(-o, i),
- r.point(0, i),
- r.point(o, i)
- } else
- r.point(n[0], n[1])
- }
- function Jc(t) {
- return function (n) {
- var e = new Qc;
- for (var r in t)
- e[r] = t[r];
- return e.stream = n,
- e
- }
- }
- function Qc() {}
- function Kc(t, n, e) {
- var r = n[1][0] - n[0][0],
- i = n[1][1] - n[0][1],
- o = t.clipExtent && t.clipExtent();
- t
- .scale(150)
- .translate([0, 0]),
- null != o && t.clipExtent(null),
- Vx(e, t.stream(Fb));
- var u = Fb.result(),
- a = Math.min(r / (u[1][0] - u[0][0]), i / (u[1][1] - u[0][1])),
- c =+ n[0][0] + (r - a * (u[1][0] + u[0][0])) / 2,
- s =+ n[0][1] + (i - a * (u[1][1] + u[0][1])) / 2;
- return null != o && t.clipExtent(o),
- t
- .scale(150 * a)
- .translate([c, s])
- }
- function ts(t, n, e) {
- return Kc(t, [
- [
- 0, 0
- ],
- n
- ], e)
- }
- function ns(t) {
- return Jc({
- point: function (n, e) {
- n = t(n, e),
- this
- .stream
- .point(n[0], n[1])
- }
- })
- }
- function es(t, n) {
- function e(r, i, o, u, a, c, s, f, l, h, p, d, v, _) {
- var y = s - r,
- g = f - i,
- m = y * y + g * g;
- if (m > 4 * n && v--) {
- var x = u + h,
- b = a + p,
- w = c + d,
- M = Bx(x * x + b * b + w * w),
- T = Aa(w /= M),
- N = Px(Px(w) - 1) < Tx || Px(o - l) < Tx
- ? (o + l) / 2
- : Lx(b, x),
- k = t(N, T),
- S = k[0],
- A = k[1],
- E = S - r,
- C = A - i,
- z = g * E - y * C;
- (z * z / m > n || Px((y * E + g * C) / m - .5) > .3 || u * h + a * p + c * d < iw) && (e(r, i, o, u, a, c, S, A, N, x /= M, b /= M, w, v, _), _.point(S, A), e(S, A, N, x, b, w, s, f, l, h, p, d, v, _))
- }
- }
- return function (n) {
- function r(e, r) {
- e = t(e, r),
- n.point(e[0], e[1])
- }
- function i() {
- y = NaN,
- w.point = o,
- n.lineStart()
- }
- function o(r, i) {
- var o = Fa([r, i]),
- u = t(r, i);
- e(y, g, _, m, x, b, y = u[0], g = u[1], _ = r, m = o[0], x = o[1], b = o[2], rw, n),
- n.point(y, g)
- }
- function u() {
- w.point = r,
- n.lineEnd()
- }
- function a() {
- i(),
- w.point = c,
- w.lineEnd = s
- }
- function c(t, n) {
- o(f = t, n),
- l = y,
- h = g,
- p = m,
- d = x,
- v = b,
- w.point = o
- }
- function s() {
- e(y, g, _, m, x, b, l, h, f, p, d, v, rw, n),
- w.lineEnd = u,
- u()
- }
- var f,
- l,
- h,
- p,
- d,
- v,
- _,
- y,
- g,
- m,
- x,
- b,
- w = {
- point: r,
- lineStart: i,
- lineEnd: u,
- polygonStart: function () {
- n.polygonStart(),
- w.lineStart = a
- },
- polygonEnd: function () {
- n.polygonEnd(),
- w.lineStart = i
- }
- };
- return w
- }
- }
- function rs(t) {
- return is(function () {
- return t
- })()
- }
- function is(t) {
- function n(t) {
- return t = f(t[0] * zx, t[1] * zx),
- [
- t[0] * _ + a,
- c - t[1] * _
- ]
- }
- function e(t) {
- return t = f.invert((t[0] - a) / _, (c - t[1]) / _),
- t && [
- t[0] * Cx,
- t[1] * Cx
- ]
- }
- function r(t, n) {
- return t = u(t, n),
- [
- t[0] * _ + a,
- c - t[1] * _
- ]
- }
- function i() {
- f = rb(s = hc(b, w, M), u);
- var t = u(m, x);
- return a = y - t[0] * _,
- c = g + t[1] * _,
- o()
- }
- function o() {
- return d = v = null,
- n
- }
- var u,
- a,
- c,
- s,
- f,
- l,
- h,
- p,
- d,
- v,
- _ = 150,
- y = 480,
- g = 250,
- m = 0,
- x = 0,
- b = 0,
- w = 0,
- M = 0,
- T = null,
- N = tw,
- k = null,
- S = zb,
- A = .5,
- E = ow(r, A);
- return n.stream = function (t) {
- return d && v === t
- ? d
- : d = uw(N(s, E(S(v = t))))
- },
- n.clipAngle = function (t) {
- return arguments.length
- ? (N =+ t
- ? nw(T = t * zx, 6 * zx)
- : (T = null, tw), o())
- : T * Cx
- },
- n.clipExtent = function (t) {
- return arguments.length
- ? (S = null == t
- ? (k = l = h = p = null, zb)
- : xc(k =+ t[0][0], l =+ t[0][1], h =+ t[1][0], p =+ t[1][1]), o())
- : null == k
- ? null
- : [
- [
- k, l
- ],
- [h, p]
- ]
- },
- n.scale = function (t) {
- return arguments.length
- ? (_ =+ t, i())
- : _
- },
- n.translate = function (t) {
- return arguments.length
- ? (y =+ t[0], g =+ t[1], i())
- : [y, g]
- },
- n.center = function (t) {
- return arguments.length
- ? (m = t[0] % 360 * zx, x = t[1] % 360 * zx, i())
- : [
- m * Cx,
- x * Cx
- ]
- },
- n.rotate = function (t) {
- return arguments.length
- ? (b = t[0] % 360 * zx, w = t[1] % 360 * zx, M = t.length > 2
- ? t[2] % 360 * zx
- : 0, i())
- : [
- b * Cx,
- w * Cx,
- M * Cx
- ]
- },
- n.precision = function (t) {
- return arguments.length
- ? (E = ow(r, A = t * t), o())
- : Bx(A)
- },
- n.fitExtent = function (t, e) {
- return Kc(n, t, e)
- },
- n.fitSize = function (t, e) {
- return ts(n, t, e)
- },
- function () {
- return u = t.apply(this, arguments),
- n.invert = u.invert && e,
- i()
- }
- }
- function os(t) {
- var n = 0,
- e = kx / 3,
- r = is(t),
- i = r(n, e);
- return i.parallels = function (t) {
- return arguments.length
- ? r(n = t[0] * zx, e = t[1] * zx)
- : [
- n * Cx,
- e * Cx
- ]
- },
- i
- }
- function us(t) {
- function n(t, n) {
- return [
- t * e,
- Ix(n) / e
- ]
- }
- var e = Rx(t);
- return n.invert = function (t, n) {
- return [
- t / e,
- Aa(n * e)
- ]
- },
- n
- }
- function as(t, n) {
- function e(t, n) {
- var e = Bx(o - 2 * i * Ix(n)) / i;
- return [
- e * Ix(t *= i),
- u - e * Rx(t)
- ]
- }
- var r = Ix(t),
- i = (r + Ix(n)) / 2;
- if (Px(i) < Tx)
- return us(t);
- var o = 1 + r * (2 * i - r),
- u = Bx(o) / i;
- return e.invert = function (t, n) {
- var e = u - n;
- return [
- Lx(t, Px(e)) / i * Yx(e),
- Aa((o - (t * t + e * e) * i * i) / (2 * i))
- ]
- },
- e
- }
- function cs(t) {
- var n = t.length;
- return {
- point: function (e, r) {
- for (var i = -1; ++i < n;)
- t[i].point(e, r)
- },
- sphere: function () {
- for (var e = -1; ++e < n;)
- t[e].sphere()
- },
- lineStart: function () {
- for (var e = -1; ++e < n;)
- t[e].lineStart()
- },
- lineEnd: function () {
- for (var e = -1; ++e < n;)
- t[e].lineEnd()
- },
- polygonStart: function () {
- for (var e = -1; ++e < n;)
- t[e].polygonStart()
- },
- polygonEnd: function () {
- for (var e = -1; ++e < n;)
- t[e].polygonEnd()
- }
- }
- }
- function ss(t) {
- return function (n, e) {
- var r = Rx(n),
- i = Rx(e),
- o = t(r * i);
- return [
- o * i * Ix(n),
- o * Ix(e)
- ]
- }
- }
- function fs(t) {
- return function (n, e) {
- var r = Bx(n * n + e * e),
- i = t(r),
- o = Ix(i),
- u = Rx(i);
- return [
- Lx(n * o, r * u),
- Aa(r && e * o / r)
- ]
- }
- }
- function ls(t, n) {
- return [
- t,
- Ox(jx((Sx + n) / 2))
- ]
- }
- function hs(t) {
- var n,
- e = rs(t),
- r = e.scale,
- i = e.translate,
- o = e.clipExtent;
- return e.scale = function (t) {
- return arguments.length
- ? (r(t), n && e.clipExtent(null), e)
- : r()
- },
- e.translate = function (t) {
- return arguments.length
- ? (i(t), n && e.clipExtent(null), e)
- : i()
- },
- e.clipExtent = function (t) {
- if (!arguments.length)
- return n
- ? null
- : o();
- if (n = null == t) {
- var u = kx * r(),
- a = i();
- t = [
- [
- a[0] - u,
- a[1] - u
- ],
- [
- a[0] + u,
- a[1] + u
- ]
- ]
- }
- return o(t),
- e
- },
- e.clipExtent(null)
- }
- function ps(t) {
- return jx((Sx + t) / 2)
- }
- function ds(t, n) {
- function e(t, n) {
- o > 0
- ? n < -Sx + Tx && (n = -Sx + Tx)
- : n > Sx - Tx && (n = Sx - Tx);
- var e = o / Fx(ps(n), i);
- return [
- e * Ix(i * t),
- o - e * Rx(i * t)
- ]
- }
- var r = Rx(t),
- i = t === n
- ? Ix(t)
- : Ox(r / Rx(n)) / Ox(ps(n) / ps(t)),
- o = r * Fx(ps(t), i) / i;
- return i
- ? (e.invert = function (t, n) {
- var e = o - n,
- r = Yx(i) * Bx(t * t + e * e);
- return [
- Lx(t, Px(e)) / i * Yx(e),
- 2 * qx(Fx(o / r, 1 / i)) - Sx
- ]
- },
- e)
- : ls
- }
- function vs(t, n) {
- return [t, n]
- }
- function _s(t, n) {
- function e(t, n) {
- var e = o - n,
- r = i * t;
- return [
- e * Ix(r),
- o - e * Rx(r)
- ]
- }
- var r = Rx(t),
- i = t === n
- ? Ix(t)
- : (r - Rx(n)) / (n - t),
- o = r / i + t;
- return Px(i) < Tx
- ? vs
- : (e.invert = function (t, n) {
- var e = o - n;
- return [
- Lx(t, Px(e)) / i * Yx(e),
- o - Yx(i) * Bx(t * t + e * e)
- ]
- },
- e)
- }
- function ys(t, n) {
- var e = Rx(n),
- r = Rx(t) * e;
- return [
- e * Ix(t) / r,
- Ix(n) / r
- ]
- }
- function gs(t, n, e) {
- return 1 === t && 0 === n && 0 === e
- ? zb
- : Jc({
- point: function (r, i) {
- this
- .stream
- .point(r * t + n, i * t + e)
- }
- })
- }
- function ms(t, n) {
- return [
- Rx(n) * Ix(t),
- Ix(n)
- ]
- }
- function xs(t, n) {
- var e = Rx(n),
- r = 1 + Rx(t) * e;
- return [
- e * Ix(t) / r,
- Ix(n) / r
- ]
- }
- function bs(t, n) {
- return [
- Ox(jx((Sx + n) / 2)), -t
- ]
- }
- var ws = "4.3.0",
- Ms = function (t, n) {
- return t < n
- ? -1
- : t > n
- ? 1
- : t >= n
- ? 0
- : NaN
- },
- Ts = function (t) {
- return 1 === t.length && (t = n(t)), {
- left: function (n, e, r, i) {
- for (null == r && (r = 0), null == i && (i = n.length); r < i;) {
- var o = r + i >>> 1;
- t(n[o], e) < 0
- ? r = o + 1
- : i = o
- }
- return r
- },
- right: function (n, e, r, i) {
- for (null == r && (r = 0), null == i && (i = n.length); r < i;) {
- var o = r + i >>> 1;
- t(n[o], e) > 0
- ? i = o
- : r = o + 1
- }
- return r
- }
- }
- },
- Ns = Ts(Ms),
- ks = Ns.right,
- Ss = Ns.left,
- As = function (t, n) {
- return n < t
- ? -1
- : n > t
- ? 1
- : n >= t
- ? 0
- : NaN
- },
- Es = function (t) {
- return null === t
- ? NaN :+ t
- },
- Cs = function (t, n) {
- var e,
- r,
- i = t.length,
- o = 0,
- u = 0,
- a = -1,
- c = 0;
- if (null == n)
- for (; ++a < i;)
- isNaN(e = Es(t[a])) || (r = e - o, o += r / ++c, u += r * (e - o));
- else
- for (; ++a < i;)
- isNaN(e = Es(n(t[a], a, t))) || (r = e - o, o += r / ++c, u += r * (e - o));
- if (c > 1)
- return u / (c - 1)
- },
- zs = function (t, n) {
- var e = Cs(t, n);
- return e
- ? Math.sqrt(e)
- : e
- },
- Ps = function (t, n) {
- var e,
- r,
- i,
- o = -1,
- u = t.length;
- if (null == n) {
- for (; ++o < u;)
- if (null != (r = t[o]) && r >= r) {
- e = i = r;
- break
- }
- for (; ++o < u;)
- null != (r = t[o]) && (e > r && (e = r), i < r && (i = r))
- } else {
- for (; ++o < u;)
- if (null != (r = n(t[o], o, t)) && r >= r) {
- e = i = r;
- break
- }
- for (; ++o < u;)
- null != (r = n(t[o], o, t)) && (e > r && (e = r), i < r && (i = r))
- }
- return [e, i]
- },
- qs = Array.prototype,
- Ls = qs.slice,
- Rs = qs.map,
- Us = function (t) {
- return function () {
- return t
- }
- },
- Ds = function (t) {
- return t
- },
- Os = function (t, n, e) {
- t =+ t,
- n =+ n,
- e = (i = arguments.length) < 2
- ? (n = t, t = 0, 1)
- : i < 3
- ? 1 :+ e;
- for (var r = -1, i = 0 | Math.max(0, Math.ceil((n - t) / e)), o = new Array(i); ++r < i;)
- o[r] = t + r * e;
- return o
- },
- Fs = Math.sqrt(50),
- Is = Math.sqrt(10),
- Ys = Math.sqrt(2),
- Bs = function (t, n, r) {
- var i = e(t, n, r);
- return Os(Math.ceil(t / i) * i, Math.floor(n / i) * i + i / 2, i)
- },
- js = function (t) {
- return Math.ceil(Math.log(t.length) / Math.LN2) + 1
- },
- Hs = function () {
- function t(t) {
- var i,
- o,
- u = t.length,
- a = new Array(u);
- for (i = 0; i < u; ++i)
- a[i] = n(t[i], i, t);
- var c = e(a),
- s = c[0],
- f = c[1],
- l = r(a, s, f);
- Array.isArray(l) || (l = Bs(s, f, l));
- for (var h = l.length; l[0] <= s;)
- l.shift(),
- --h;
- for (; l[h - 1] >= f;)
- l.pop(),
- --h;
- var p,
- d = new Array(h + 1);
- for (i = 0; i <= h; ++i)
- p = d[i] = [],
- p.x0 = i > 0
- ? l[i - 1]
- : s,
- p.x1 = i < h
- ? l[i]
- : f;
- for (i = 0; i < u; ++i)
- o = a[i],
- s <= o && o <= f && d[ks(l, o, 0, h)].push(t[i]);
- return d
- }
- var n = Ds,
- e = Ps,
- r = js;
- return t.value = function (e) {
- return arguments.length
- ? (n = "function" == typeof e
- ? e
- : Us(e), t)
- : n
- },
- t.domain = function (n) {
- return arguments.length
- ? (e = "function" == typeof n
- ? n
- : Us([n[0], n[1]]), t)
- : e
- },
- t.thresholds = function (n) {
- return arguments.length
- ? (r = "function" == typeof n
- ? n
- : Us(Array.isArray(n)
- ? Ls.call(n)
- : n), t)
- : r
- },
- t
- },
- Xs = function (t, n, e) {
- if (null == e && (e = Es), r = t.length) {
- if ((n =+ n) <= 0 || r < 2)
- return + e(t[0], 0, t);
- if (n >= 1)
- return + e(t[r - 1], r - 1, t);
- var r,
- i = (r - 1) * n,
- o = Math.floor(i),
- u =+ e(t[o], o, t),
- a =+ e(t[o + 1], o + 1, t);
- return u + (a - u) * (i - o)
- }
- },
- Vs = function (t, n, e) {
- return t = Rs
- .call(t, Es)
- .sort(Ms),
- Math.ceil((e - n) / (2 * (Xs(t, .75) - Xs(t, .25)) * Math.pow(t.length, -1 / 3)))
- },
- Ws = function (t, n, e) {
- return Math.ceil((e - n) / (3.5 * zs(t) * Math.pow(t.length, -1 / 3)))
- },
- $s = function (t, n) {
- var e,
- r,
- i = -1,
- o = t.length;
- if (null == n) {
- for (; ++i < o;)
- if (null != (r = t[i]) && r >= r) {
- e = r;
- break
- }
- for (; ++i < o;)
- null != (r = t[i]) && r > e && (e = r)
- } else {
- for (; ++i < o;)
- if (null != (r = n(t[i], i, t)) && r >= r) {
- e = r;
- break
- }
- for (; ++i < o;)
- null != (r = n(t[i], i, t)) && r > e && (e = r)
- }
- return e
- },
- Zs = function (t, n) {
- var e,
- r = 0,
- i = t.length,
- o = -1,
- u = i;
- if (null == n)
- for (; ++o < i;)
- isNaN(e = Es(t[o]))
- ? --u
- : r += e;
- else
- for (; ++o < i;)
- isNaN(e = Es(n(t[o], o, t)))
- ? --u
- : r += e;
- if (u)
- return r / u
- },
- Gs = function (t, n) {
- var e,
- r = [],
- i = t.length,
- o = -1;
- if (null == n)
- for (; ++o < i;)
- isNaN(e = Es(t[o])) || r.push(e);
- else
- for (; ++o < i;)
- isNaN(e = Es(n(t[o], o, t))) || r.push(e);
- return Xs(r.sort(Ms), .5)
- },
- Js = function (t) {
- for (var n, e, r, i = t.length, o = -1, u = 0; ++o < i;)
- u += t[o].length;
- for (e = new Array(u); --i >= 0;)
- for (r = t[i], n = r.length; --n >= 0;)
- e[--u] = r[n];
- return e
- },
- Qs = function (t, n) {
- var e,
- r,
- i = -1,
- o = t.length;
- if (null == n) {
- for (; ++i < o;)
- if (null != (r = t[i]) && r >= r) {
- e = r;
- break
- }
- for (; ++i < o;)
- null != (r = t[i]) && e > r && (e = r)
- } else {
- for (; ++i < o;)
- if (null != (r = n(t[i], i, t)) && r >= r) {
- e = r;
- break
- }
- for (; ++i < o;)
- null != (r = n(t[i], i, t)) && e > r && (e = r)
- }
- return e
- },
- Ks = function (t) {
- for (var n = 0, e = t.length - 1, r = t[0], i = new Array(e < 0
- ? 0
- : e); n < e;)
- i[n] = [
- r, r = t[++n]
- ];
- return i
- },
- tf = function (t, n) {
- for (var e = n.length, r = new Array(e); e--;)
- r[e] = t[n[e]];
- return r
- },
- nf = function (t, n) {
- if (e = t.length) {
- var e,
- r,
- i = 0,
- o = 0,
- u = t[o];
- for (n || (n = Ms); ++i < e;)
- (n(r = t[i], u) < 0 || 0 !== n(u, u)) && (u = r, o = i);
- return 0 === n(u, u)
- ? o
- : void 0
- }
- },
- ef = function (t, n, e) {
- for (var r, i, o = (null == e
- ? t.length
- : e) - (n = null == n
- ? 0 :+ n); o;)
- i = Math.random() * o-- | 0,
- r = t[o + n],
- t[o + n] = t[i + n],
- t[i + n] = r;
- return t
- },
- rf = function (t, n) {
- var e,
- r = 0,
- i = t.length,
- o = -1;
- if (null == n)
- for (; ++o < i;)
- (e =+ t[o]) && (r += e);
- else
- for (; ++o < i;)
- (e =+ n(t[o], o, t)) && (r += e);
- return r
- },
- of = function (t) {
- if (!(o = t.length))
- return [];
- for (var n = -1, e = Qs(t, r), i = new Array(e); ++n < e;)
- for (var o, u = -1, a = i[n] = new Array(o); ++u < o;)
- a[u] = t[u][n];
- return i
- },
- uf = function () {
- return of(arguments)
- },
- af = "$";
- i.prototype = o.prototype = {
- constructor: i,
- has: function (t) {
- return af + t in this
- },
- get: function (t) {
- return this[af + t]
- },
- set: function (t, n) {
- return this[af + t] = n,
- this
- },
- remove: function (t) {
- var n = af + t;
- return n in this && delete this[n]
- },
- clear: function () {
- for (var t in this)
- t[0] === af && delete this[t]
- },
- keys: function () {
- var t = [];
- for (var n in this)
- n[0] === af && t.push(n.slice(1));
- return t
- },
- values: function () {
- var t = [];
- for (var n in this)
- n[0] === af && t.push(this[n]);
- return t
- },
- entries: function () {
- var t = [];
- for (var n in this)
- n[0] === af && t.push({
- key: n.slice(1),
- value: this[n]
- });
- return t
- },
- size: function () {
- var t = 0;
- for (var n in this)
- n[0] === af && ++t;
- return t
- },
- empty: function () {
- for (var t in this)
- if (t[0] === af)
- return !1;
- return !0
- },
- each: function (t) {
- for (var n in this)
- n[0] === af && t(this[n], n.slice(1), this)
- }
- };
- var cf = function () {
- function t(n, i, u, a) {
- if (i >= f.length)
- return null != r
- ? r(n)
- : null != e
- ? n.sort(e)
- : n;
- for (var c, s, l, h = -1, p = n.length, d = f[i++], v = o(), _ = u(); ++h < p;)
- (l = v.get(c = d(s = n[h]) + ""))
- ? l.push(s)
- : v.set(c, [s]);
- return v.each(function (n, e) {
- a(_, e, t(n, i, u, a))
- }),
- _
- }
- function n(t, e) {
- if (++e > f.length)
- return t;
- var i,
- o = l[e - 1];
- return null != r && e >= f.length
- ? i = t.entries()
- : (i = [], t.each(function (t, r) {
- i.push({
- key: r,
- values: n(t, e)
- })
- })),
- null != o
- ? i.sort(function (t, n) {
- return o(t.key, n.key)
- })
- : i
- }
- var e,
- r,
- i,
- f = [],
- l = [];
- return i = {
- object: function (n) {
- return t(n, 0, u, a)
- },
- map: function (n) {
- return t(n, 0, c, s)
- },
- entries: function (e) {
- return n(t(e, 0, c, s), 0)
- },
- key: function (t) {
- return f.push(t),
- i
- },
- sortKeys: function (t) {
- return l[f.length - 1] = t,
- i
- },
- sortValues: function (t) {
- return e = t,
- i
- },
- rollup: function (t) {
- return r = t,
- i
- }
- }
- },
- sf = o.prototype;
- f.prototype = l.prototype = {
- constructor: f,
- has: sf.has,
- add: function (t) {
- return t += "",
- this[af + t] = t,
- this
- },
- remove: sf.remove,
- clear: sf.clear,
- values: sf.keys,
- size: sf.size,
- empty: sf.empty,
- each: sf.each
- };
- var ff = function (t) {
- var n = [];
- for (var e in t)
- n.push(e);
- return n
- },
- lf = function (t) {
- var n = [];
- for (var e in t)
- n.push(t[e]);
- return n
- },
- hf = function (t) {
- var n = [];
- for (var e in t)
- n.push({key: e, value: t[e]});
- return n
- },
- pf = function (t, n) {
- return t = null == t
- ? 0 :+ t,
- n = null == n
- ? 1 :+ n,
- 1 === arguments.length
- ? (n = t, t = 0)
- : n -= t,
- function () {
- return Math.random() * n + t
- }
- },
- df = function (t, n) {
- var e,
- r;
- return t = null == t
- ? 0 :+ t,
- n = null == n
- ? 1 :+ n,
- function () {
- var i;
- if (null != e)
- i = e,
- e = null;
- else
- do
- e = 2 * Math.random() - 1,
- i = 2 * Math.random() - 1,
- r = e * e + i * i;
- while (!r || r > 1)
- ;
- return t + n * i * Math.sqrt(-2 * Math.log(r) / r)
- }
- },
- vf = function () {
- var t = df.apply(this, arguments);
- return function () {
- return Math.exp(t())
- }
- },
- _f = function (t) {
- return function () {
- for (var n = 0, e = 0; e < t; ++e)
- n += Math.random();
- return n
- }
- },
- yf = function (t) {
- var n = _f(t);
- return function () {
- return n() / t
- }
- },
- gf = function (t) {
- return function () {
- return -Math.log(1 - Math.random()) / t
- }
- },
- mf = 3,
- xf = function t(n) {
- function e(t) {
- return Math.pow(t, n)
- }
- return n =+ n,
- e.exponent = t,
- e
- }(mf),
- bf = function t(n) {
- function e(t) {
- return 1 - Math.pow(1 - t, n)
- }
- return n =+ n,
- e.exponent = t,
- e
- }(mf),
- wf = function t(n) {
- function e(t) {
- return ((t *= 2) <= 1
- ? Math.pow(t, n)
- : 2 - Math.pow(2 - t, n)) / 2
- }
- return n =+ n,
- e.exponent = t,
- e
- }(mf),
- Mf = Math.PI,
- Tf = Mf / 2,
- Nf = 4 / 11,
- kf = 6 / 11,
- Sf = 8 / 11,
- Af = .75,
- Ef = 9 / 11,
- Cf = 10 / 11,
- zf = .9375,
- Pf = 21 / 22,
- qf = 63 / 64,
- Lf = 1 / Nf / Nf,
- Rf = 1.70158,
- Uf = function t(n) {
- function e(t) {
- return t * t * ((n + 1) * t - n)
- }
- return n =+ n,
- e.overshoot = t,
- e
- }(Rf),
- Df = function t(n) {
- function e(t) {
- return-- t * t * ((n + 1) * t + n) + 1
- }
- return n =+ n,
- e.overshoot = t,
- e
- }(Rf),
- Of = function t(n) {
- function e(t) {
- return ((t *= 2) < 1
- ? t * t * ((n + 1) * t - n)
- : (t -= 2) * t * ((n + 1) * t + n) + 2) / 2
- }
- return n =+ n,
- e.overshoot = t,
- e
- }(Rf),
- Ff = 2 * Math.PI,
- If = 1,
- Yf = .3,
- Bf = function t(n, e) {
- function r(t) {
- return n * Math.pow(2, 10 * --t) * Math.sin((i - t) / e)
- }
- var i = Math.asin(1 / (n = Math.max(1, n))) * (e /= Ff);
- return r.amplitude = function (n) {
- return t(n, e * Ff)
- },
- r.period = function (e) {
- return t(n, e)
- },
- r
- }(If, Yf),
- jf = function t(n, e) {
- function r(t) {
- return 1 - n * Math.pow(2, -10 * (t =+ t)) * Math.sin((t + i) / e)
- }
- var i = Math.asin(1 / (n = Math.max(1, n))) * (e /= Ff);
- return r.amplitude = function (n) {
- return t(n, e * Ff)
- },
- r.period = function (e) {
- return t(n, e)
- },
- r
- }(If, Yf),
- Hf = function t(n, e) {
- function r(t) {
- return ((t = 2 * t - 1) < 0
- ? n * Math.pow(2, 10 * t) * Math.sin((i - t) / e)
- : 2 - n * Math.pow(2, -10 * t) * Math.sin((i + t) / e)) / 2
- }
- var i = Math.asin(1 / (n = Math.max(1, n))) * (e /= Ff);
- return r.amplitude = function (n) {
- return t(n, e * Ff)
- },
- r.period = function (e) {
- return t(n, e)
- },
- r
- }(If, Yf),
- Xf = function (t) {
- for (var n, e = -1, r = t.length, i = t[r - 1], o = 0; ++e < r;)
- n = i,
- i = t[e],
- o += n[1] * i[0] - n[0] * i[1];
- return o / 2
- },
- Vf = function (t) {
- for (var n, e, r = -1, i = t.length, o = 0, u = 0, a = t[i - 1], c = 0; ++r < i;)
- n = a,
- a = t[r],
- c += e = n[0] * a[1] - a[0] * n[1],
- o += (n[0] + a[0]) * e,
- u += (n[1] + a[1]) * e;
- return c *= 3,
- [
- o / c,
- u / c
- ]
- },
- Wf = function (t, n, e) {
- return (n[0] - t[0]) * (e[1] - t[1]) - (n[1] - t[1]) * (e[0] - t[0])
- },
- $f = function (t) {
- if ((e = t.length) < 3)
- return null;
- var n,
- e,
- r = new Array(e),
- i = new Array(e);
- for (n = 0; n < e; ++n)
- r[n] = [ + t[n][0], + t[n][1],
- n
- ];
- for (r.sort(z), n = 0; n < e; ++n)
- i[n] = [
- r[n][0], -r[n][1]
- ];
- var o = P(r),
- u = P(i),
- a = u[0] === o[0],
- c = u[u.length - 1] === o[o.length - 1],
- s = [];
- for (n = o.length - 1; n >= 0; --n)
- s.push(t[r[o[n]][2]]);
- for (n =+ a; n < u.length - c; ++n)
- s.push(t[r[u[n]][2]]);
- return s
- },
- Zf = function (t, n) {
- for (var e, r, i = t.length, o = t[i - 1], u = n[0], a = n[1], c = o[0], s = o[1], f = !1, l = 0; l < i; ++l)
- o = t[l],
- e = o[0],
- r = o[1],
- r > a != s > a && u < (c - e) * (a - r) / (s - r) + e && (f = !f),
- c = e,
- s = r;
- return f
- },
- Gf = function (t) {
- for (var n, e, r = -1, i = t.length, o = t[i - 1], u = o[0], a = o[1], c = 0; ++r < i;)
- n = u,
- e = a,
- o = t[r],
- u = o[0],
- a = o[1],
- n -= u,
- e -= a,
- c += Math.sqrt(n * n + e * e);
- return c
- },
- Jf = Math.PI,
- Qf = 2 * Jf,
- Kf = 1e-6,
- tl = Qf - Kf;
- q.prototype = L.prototype = {
- constructor: q,
- moveTo: function (t, n) {
- this
- ._
- .push("M", this._x0 = this._x1 =+ t, ",", this._y0 = this._y1 =+ n)
- },
- closePath: function () {
- null !== this._x1 && (this._x1 = this._x0, this._y1 = this._y0, this._.push("Z"))
- },
- lineTo: function (t, n) {
- this
- ._
- .push("L", this._x1 =+ t, ",", this._y1 =+ n)
- },
- quadraticCurveTo: function (t, n, e, r) {
- this
- ._
- .push("Q", + t, ",", + n, ",", this._x1 =+ e, ",", this._y1 =+ r)
- },
- bezierCurveTo: function (t, n, e, r, i, o) {
- this
- ._
- .push("C", + t, ",", + n, ",", + e, ",", + r, ",", this._x1 =+ i, ",", this._y1 =+ o)
- },
- arcTo: function (t, n, e, r, i) {
- t =+ t,
- n =+ n,
- e =+ e,
- r =+ r,
- i =+ i;
- var o = this._x1,
- u = this._y1,
- a = e - t,
- c = r - n,
- s = o - t,
- f = u - n,
- l = s * s + f * f;
- if (i < 0)
- throw new Error("negative radius: " + i);
- if (null === this._x1)
- this._.push("M", this._x1 = t, ",", this._y1 = n);
- else if (l > Kf)
- if (Math.abs(f * a - c * s) > Kf && i) {
- var h = e - o,
- p = r - u,
- d = a * a + c * c,
- v = h * h + p * p,
- _ = Math.sqrt(d),
- y = Math.sqrt(l),
- g = i * Math.tan((Jf - Math.acos((d + l - v) / (2 * _ * y))) / 2),
- m = g / y,
- x = g / _;
- Math.abs(m - 1) > Kf && this
- ._
- .push("L", t + m * s, ",", n + m * f),
- this
- ._
- .push("A", i, ",", i, ",0,0,", + (f * h > s * p), ",", this._x1 = t + x * a, ",", this._y1 = n + x * c)
- } else
- this
- ._
- .push("L", this._x1 = t, ",", this._y1 = n);
- else ;
- }
- ,
- arc: function (t, n, e, r, i, o) {
- t =+ t,
- n =+ n,
- e =+ e;
- var u = e * Math.cos(r),
- a = e * Math.sin(r),
- c = t + u,
- s = n + a,
- f = 1 ^ o,
- l = o
- ? r - i
- : i - r;
- if (e < 0)
- throw new Error("negative radius: " + e);
- null === this._x1
- ? this
- ._
- .push("M", c, ",", s)
- : (Math.abs(this._x1 - c) > Kf || Math.abs(this._y1 - s) > Kf) && this
- ._
- .push("L", c, ",", s),
- e && (l > tl
- ? this._.push("A", e, ",", e, ",0,1,", f, ",", t - u, ",", n - a, "A", e, ",", e, ",0,1,", f, ",", this._x1 = c, ",", this._y1 = s)
- : (l < 0 && (l = l % Qf + Qf), this._.push("A", e, ",", e, ",0,", + (l >= Jf), ",", f, ",", this._x1 = t + e * Math.cos(i), ",", this._y1 = n + e * Math.sin(i))))
- },
- rect: function (t, n, e, r) {
- this
- ._
- .push("M", this._x0 = this._x1 =+ t, ",", this._y0 = this._y1 =+ n, "h", + e, "v", + r, "h", -e, "Z")
- },
- toString: function () {
- return this
- ._
- .join("")
- }
- };
- var nl = function (t) {
- var n =+ this
- ._x
- .call(null, t),
- e =+ this
- ._y
- .call(null, t);
- return R(this.cover(n, e), n, e, t)
- },
- el = function (t, n) {
- if (isNaN(t =+ t) || isNaN(n =+ n))
- return this;
- var e = this._x0,
- r = this._y0,
- i = this._x1,
- o = this._y1;
- if (isNaN(e))
- i = (e = Math.floor(t)) + 1,
- o = (r = Math.floor(n)) + 1;
- else {
- if (!(e > t || t > i || r > n || n > o))
- return this;
- var u,
- a,
- c = i - e,
- s = this._root;
- switch (a = (n < (r + o) / 2) << 1 | t < (e + i) / 2) {
- case 0:
- do
- u = new Array(4),
- u[a] = s,
- s = u;
- while (c *= 2, i = e + c, o = r + c, t > i || n > o);
- break;
- case 1:
- do
- u = new Array(4),
- u[a] = s,
- s = u;
- while (c *= 2, e = i - c, o = r + c, e > t || n > o);
- break;
- case 2:
- do
- u = new Array(4),
- u[a] = s,
- s = u;
- while (c *= 2, i = e + c, r = o - c, t > i || r > n);
- break;
- case 3:
- do
- u = new Array(4),
- u[a] = s,
- s = u;
- while (c *= 2, e = i - c, r = o - c, e > t || r > n)
- }
- this._root && this._root.length && (this._root = s)
- }
- return this._x0 = e,
- this._y0 = r,
- this._x1 = i,
- this._y1 = o,
- this
- },
- rl = function () {
- var t = [];
- return this.visit(function (n) {
- if (!n.length)
- do
- t.push(n.data);
- while (n = n.next)
- }
- ),
- t
- },
- il = function (t) {
- return arguments.length
- ? this.cover( + t[0][0], + t[0][1]).cover( + t[1][0], + t[1][1])
- : isNaN(this._x0)
- ? void 0
- : [
- [
- this._x0, this._y0
- ],
- [this._x1, this._y1]
- ]
- },
- ol = function (t, n, e, r, i) {
- this.node = t,
- this.x0 = n,
- this.y0 = e,
- this.x1 = r,
- this.y1 = i
- },
- ul = function (t, n, e) {
- var r,
- i,
- o,
- u,
- a,
- c,
- s,
- f = this._x0,
- l = this._y0,
- h = this._x1,
- p = this._y1,
- d = [],
- v = this._root;
- for (v && d.push(new ol(v, f, l, h, p)), null == e
- ? e = 1 / 0
- : (f = t - e, l = n - e, h = t + e, p = n + e, e *= e); c = d.pop();)
- if (!(!(v = c.node) || (i = c.x0) > h || (o = c.y0) > p || (u = c.x1) < f || (a = c.y1) < l))
- if (v.length) {
- var _ = (i + u) / 2,
- y = (o + a) / 2;
- d.push(new ol(v[3], _, y, u, a), new ol(v[2], i, y, _, a), new ol(v[1], _, o, u, y), new ol(v[0], i, o, _, y)),
- (s = (n >= y) << 1 | t >= _) && (c = d[d.length - 1], d[d.length - 1] = d[d.length - 1 - s], d[d.length - 1 - s] = c)
- }
- else {
- var g = t - + this
- ._x
- .call(null, v.data),
- m = n - + this
- ._y
- .call(null, v.data),
- x = g * g + m * m;
- if (x < e) {
- var b = Math.sqrt(e = x);
- f = t - b,
- l = n - b,
- h = t + b,
- p = n + b,
- r = v.data
- }
- }
- return r
- },
- al = function (t) {
- if (isNaN(o =+ this._x.call(null, t)) || isNaN(u =+ this._y.call(null, t)))
- return this;
- var n,
- e,
- r,
- i,
- o,
- u,
- a,
- c,
- s,
- f,
- l,
- h,
- p = this._root,
- d = this._x0,
- v = this._y0,
- _ = this._x1,
- y = this._y1;
- if (!p)
- return this;
- if (p.length)
- for (;;) {
- if ((s = o >= (a = (d + _) / 2))
- ? d = a
- : _ = a, (f = u >= (c = (v + y) / 2))
- ? v = c
- : y = c, n = p, !(p = p[l = f << 1 | s]))
- return this;
- if (!p.length)
- break;
-
- (n[l + 1 & 3] || n[l + 2 & 3] || n[l + 3 & 3]) && (e = n, h = l)
- }
- for (; p.data !== t;)
- if (r = p, !(p = p.next))
- return this;
- return (i = p.next) && delete p.next,
- r
- ? (i
- ? r.next = i
- : delete r.next, this)
- : n
- ? (i
- ? n[l] = i
- : delete n[l], (p = n[0] || n[1] || n[2] || n[3]) && p === (n[3] || n[2] || n[1] || n[0]) && !p.length && (e
- ? e[h] = p
- : this._root = p), this)
- : (this._root = i, this)
- },
- cl = function () {
- return this._root
- },
- sl = function () {
- var t = 0;
- return this.visit(function (n) {
- if (!n.length)
- do
- ++t;
- while (n = n.next)
- }
- ),
- t
- },
- fl = function (t) {
- var n,
- e,
- r,
- i,
- o,
- u,
- a = [],
- c = this._root;
- for (c && a.push(new ol(c, this._x0, this._y0, this._x1, this._y1)); n = a.pop();)
- if (!t(c = n.node, r = n.x0, i = n.y0, o = n.x1, u = n.y1) && c.length) {
- var s = (r + o) / 2,
- f = (i + u) / 2;
- (e = c[3]) && a.push(new ol(e, s, f, o, u)),
- (e = c[2]) && a.push(new ol(e, r, f, s, u)),
- (e = c[1]) && a.push(new ol(e, s, i, o, f)),
- (e = c[0]) && a.push(new ol(e, r, i, s, f))
- }
- return this
- },
- ll = function (t) {
- var n,
- e = [],
- r = [];
- for (this._root && e.push(new ol(this._root, this._x0, this._y0, this._x1, this._y1)); n = e.pop();) {
- var i = n.node;
- if (i.length) {
- var o,
- u = n.x0,
- a = n.y0,
- c = n.x1,
- s = n.y1,
- f = (u + c) / 2,
- l = (a + s) / 2;
- (o = i[0]) && e.push(new ol(o, u, a, f, l)),
- (o = i[1]) && e.push(new ol(o, f, a, c, l)),
- (o = i[2]) && e.push(new ol(o, u, l, f, s)),
- (o = i[3]) && e.push(new ol(o, f, l, c, s))
- }
- r.push(n)
- }
- for (; n = r.pop();)
- t(n.node, n.x0, n.y0, n.x1, n.y1);
- return this
- },
- hl = function (t) {
- return arguments.length
- ? (this._x = t, this)
- : this._x
- },
- pl = function (t) {
- return arguments.length
- ? (this._y = t, this)
- : this._y
- },
- dl = I.prototype = Y.prototype;
- dl.copy = function () {
- var t,
- n,
- e = new Y(this._x, this._y, this._x0, this._y0, this._x1, this._y1),
- r = this._root;
- if (!r)
- return e;
- if (!r.length)
- return e._root = B(r),
- e;
- for (t = [
- {
- source: r,
- target: e._root = new Array(4)
- }
- ]; r = t.pop();)
- for (var i = 0; i < 4; ++i)
- (n = r.source[i]) && (n.length
- ? t.push({
- source: n,
- target: r.target[i] = new Array(4)
- })
- : r.target[i] = B(n));
- return e
- },
- dl.add = nl,
- dl.addAll = U,
- dl.cover = el,
- dl.data = rl,
- dl.extent = il,
- dl.find = ul,
- dl.remove = al,
- dl.removeAll = D,
- dl.root = cl,
- dl.size = sl,
- dl.visit = fl,
- dl.visitAfter = ll,
- dl.x = hl,
- dl.y = pl;
- var vl = [].slice,
- _l = {};
- j.prototype = Z.prototype = {
- constructor: j,
- defer: function (t) {
- if ("function" != typeof t || this._call)
- throw new Error;
- if (null != this._error)
- return this;
- var n = vl.call(arguments, 1);
- return n.push(t),
- ++this._waiting,
- this
- ._tasks
- .push(n),
- H(this),
- this
- },
- abort: function () {
- return null == this._error && W(this, new Error("abort")),
- this
- },
- await: function (t) {
- if ("function" != typeof t || this._call)
- throw new Error;
- return this._call = function (n, e) {
- t.apply(null, [n].concat(e))
- },
- $(this),
- this
- },
- awaitAll: function (t) {
- if ("function" != typeof t || this._call)
- throw new Error;
- return this._call = t,
- $(this),
- this
- }
- };
- var yl = function (t) {
- return function () {
- return t
- }
- },
- gl = 1e-12,
- ml = Math.PI,
- xl = ml / 2,
- bl = 2 * ml,
- wl = function () {
- function t() {
- var t,
- s,
- f =+ n.apply(this, arguments),
- l =+ e.apply(this, arguments),
- h = o.apply(this, arguments) - xl,
- p = u.apply(this, arguments) - xl,
- d = Math.abs(p - h),
- v = p > h;
- if (c || (c = t = L()), l < f && (s = l, l = f, f = s), l > gl)
- if (d > bl - gl)
- c.moveTo(l * Math.cos(h), l * Math.sin(h)),
- c.arc(0, 0, l, h, p, !v),
- f > gl && (c.moveTo(f * Math.cos(p), f * Math.sin(p)), c.arc(0, 0, f, p, h, v));
- else {
- var _,
- y,
- g = h,
- m = p,
- x = h,
- b = p,
- w = d,
- M = d,
- T = a.apply(this, arguments) / 2,
- N = T > gl && (i ?+ i.apply(this, arguments) : Math.sqrt(f * f + l * l)),
- k = Math.min(Math.abs(l - f) / 2, + r.apply(this, arguments)),
- S = k,
- A = k;
- if (N > gl) {
- var E = nt(N / f * Math.sin(T)),
- C = nt(N / l * Math.sin(T));
- (w -= 2 * E) > gl
- ? (E *= v
- ? 1
- : -1, x += E, b -= E)
- : (w = 0, x = b = (h + p) / 2),
- (M -= 2 * C) > gl
- ? (C *= v
- ? 1
- : -1, g += C, m -= C)
- : (M = 0, g = m = (h + p) / 2)
- }
- var z = l * Math.cos(g),
- P = l * Math.sin(g),
- q = f * Math.cos(b),
- R = f * Math.sin(b);
- if (k > gl) {
- var U = l * Math.cos(m),
- D = l * Math.sin(m),
- O = f * Math.cos(x),
- F = f * Math.sin(x);
- if (d < ml) {
- var I = w > gl
- ? et(z, P, O, F, U, D, q, R)
- : [
- q, R
- ],
- Y = z - I[0],
- B = P - I[1],
- j = U - I[0],
- H = D - I[1],
- X = 1 / Math.sin(Math.acos((Y * j + B * H) / (Math.sqrt(Y * Y + B * B) * Math.sqrt(j * j + H * H))) / 2),
- V = Math.sqrt(I[0] * I[0] + I[1] * I[1]);
- S = Math.min(k, (f - V) / (X - 1)),
- A = Math.min(k, (l - V) / (X + 1))
- }
- }
- M > gl
- ? A > gl
- ? (_ = rt(O, F, z, P, l, A, v), y = rt(U, D, q, R, l, A, v), c.moveTo(_.cx + _.x01, _.cy + _.y01), A < k
- ? c.arc(_.cx, _.cy, A, Math.atan2(_.y01, _.x01), Math.atan2(y.y01, y.x01), !v)
- : (c.arc(_.cx, _.cy, A, Math.atan2(_.y01, _.x01), Math.atan2(_.y11, _.x11), !v), c.arc(0, 0, l, Math.atan2(_.cy + _.y11, _.cx + _.x11), Math.atan2(y.cy + y.y11, y.cx + y.x11), !v), c.arc(y.cx, y.cy, A, Math.atan2(y.y11, y.x11), Math.atan2(y.y01, y.x01), !v)))
- : (c.moveTo(z, P), c.arc(0, 0, l, g, m, !v))
- : c.moveTo(z, P),
- f > gl && w > gl
- ? S > gl
- ? (_ = rt(q, R, U, D, f, -S, v), y = rt(z, P, O, F, f, -S, v), c.lineTo(_.cx + _.x01, _.cy + _.y01), S < k
- ? c.arc(_.cx, _.cy, S, Math.atan2(_.y01, _.x01), Math.atan2(y.y01, y.x01), !v)
- : (c.arc(_.cx, _.cy, S, Math.atan2(_.y01, _.x01), Math.atan2(_.y11, _.x11), !v), c.arc(0, 0, f, Math.atan2(_.cy + _.y11, _.cx + _.x11), Math.atan2(y.cy + y.y11, y.cx + y.x11), v), c.arc(y.cx, y.cy, S, Math.atan2(y.y11, y.x11), Math.atan2(y.y01, y.x01), !v)))
- : c.arc(0, 0, f, b, x, v)
- : c.lineTo(q, R)
- }
- else
- c.moveTo(0, 0);
- if (c.closePath(), t)
- return c = null,
- t + "" || null
- }
- var n = G,
- e = J,
- r = yl(0),
- i = null,
- o = Q,
- u = K,
- a = tt,
- c = null;
- return t.centroid = function () {
- var t = (+ n.apply(this, arguments) + + e.apply(this, arguments)) / 2,
- r = (+ o.apply(this, arguments) + + u.apply(this, arguments)) / 2 - ml / 2;
- return [
- Math.cos(r) * t,
- Math.sin(r) * t
- ]
- },
- t.innerRadius = function (e) {
- return arguments.length
- ? (n = "function" == typeof e
- ? e
- : yl(+ e), t)
- : n
- },
- t.outerRadius = function (n) {
- return arguments.length
- ? (e = "function" == typeof n
- ? n
- : yl(+ n), t)
- : e
- },
- t.cornerRadius = function (n) {
- return arguments.length
- ? (r = "function" == typeof n
- ? n
- : yl(+ n), t)
- : r
- },
- t.padRadius = function (n) {
- return arguments.length
- ? (i = null == n
- ? null
- : "function" == typeof n
- ? n
- : yl(+ n), t)
- : i
- },
- t.startAngle = function (n) {
- return arguments.length
- ? (o = "function" == typeof n
- ? n
- : yl(+ n), t)
- : o
- },
- t.endAngle = function (n) {
- return arguments.length
- ? (u = "function" == typeof n
- ? n
- : yl(+ n), t)
- : u
- },
- t.padAngle = function (n) {
- return arguments.length
- ? (a = "function" == typeof n
- ? n
- : yl(+ n), t)
- : a
- },
- t.context = function (n) {
- return arguments.length
- ? (c = null == n
- ? null
- : n, t)
- : c
- },
- t
- };
- it.prototype = {
- areaStart: function () {
- this._line = 0
- },
- areaEnd: function () {
- this._line = NaN
- },
- lineStart: function () {
- this._point = 0
- },
- lineEnd: function () {
- (this._line || 0 !== this._line && 1 === this._point) && this
- ._context
- .closePath(),
- this._line = 1 - this._line
- },
- point: function (t, n) {
- switch (t =+ t, n =+ n, this._point) {
- case 0:
- this._point = 1,
- this._line
- ? this
- ._context
- .lineTo(t, n)
- : this
- ._context
- .moveTo(t, n);
- break;
- case 1:
- this._point = 2;
- default:
- this
- ._context
- .lineTo(t, n)
- }
- }
- };
- var Ml = function (t) {
- return new it(t)
- },
- Tl = function () {
- function t(t) {
- var a,
- c,
- s,
- f = t.length,
- l = !1;
- for (null == i && (u = o(s = L())), a = 0; a <= f; ++a)
- !(a < f && r(c = t[a], a, t)) === l && ((l = !l)
- ? u.lineStart()
- : u.lineEnd()),
- l && u.point(+ n(c, a, t), + e(c, a, t));
- if (s)
- return u = null,
- s + "" || null
- }
- var n = ot,
- e = ut,
- r = yl(!0),
- i = null,
- o = Ml,
- u = null;
- return t.x = function (e) {
- return arguments.length
- ? (n = "function" == typeof e
- ? e
- : yl(+ e), t)
- : n
- },
- t.y = function (n) {
- return arguments.length
- ? (e = "function" == typeof n
- ? n
- : yl(+ n), t)
- : e
- },
- t.defined = function (n) {
- return arguments.length
- ? (r = "function" == typeof n
- ? n
- : yl(!!n), t)
- : r
- },
- t.curve = function (n) {
- return arguments.length
- ? (o = n, null != i && (u = o(i)), t)
- : o
- },
- t.context = function (n) {
- return arguments.length
- ? (null == n
- ? i = u = null
- : u = o(i = n), t)
- : i
- },
- t
- },
- Nl = function () {
- function t(t) {
- var n,
- f,
- l,
- h,
- p,
- d = t.length,
- v = !1,
- _ = new Array(d),
- y = new Array(d);
- for (null == a && (s = c(p = L())), n = 0; n <= d; ++n) {
- if (!(n < d && u(h = t[n], n, t)) === v)
- if (v = !v)
- f = n,
- s.areaStart(),
- s.lineStart();
- else {
- for (s.lineEnd(), s.lineStart(), l = n - 1; l >= f; --l)
- s.point(_[l], y[l]);
- s.lineEnd(),
- s.areaEnd()
- }
- v && (_[n] =+ e(h, n, t), y[n] =+ i(h, n, t), s.point(r ?+ r(h, n, t) : _[n], o ?+ o(h, n, t) : y[n]))
- }
- if (p)
- return s = null,
- p + "" || null
- }
- function n() {
- return Tl()
- .defined(u)
- .curve(c)
- .context(a)
- }
- var e = ot,
- r = null,
- i = yl(0),
- o = ut,
- u = yl(!0),
- a = null,
- c = Ml,
- s = null;
- return t.x = function (n) {
- return arguments.length
- ? (e = "function" == typeof n
- ? n
- : yl(+ n), r = null, t)
- : e
- },
- t.x0 = function (n) {
- return arguments.length
- ? (e = "function" == typeof n
- ? n
- : yl(+ n), t)
- : e
- },
- t.x1 = function (n) {
- return arguments.length
- ? (r = null == n
- ? null
- : "function" == typeof n
- ? n
- : yl(+ n), t)
- : r
- },
- t.y = function (n) {
- return arguments.length
- ? (i = "function" == typeof n
- ? n
- : yl(+ n), o = null, t)
- : i
- },
- t.y0 = function (n) {
- return arguments.length
- ? (i = "function" == typeof n
- ? n
- : yl(+ n), t)
- : i
- },
- t.y1 = function (n) {
- return arguments.length
- ? (o = null == n
- ? null
- : "function" == typeof n
- ? n
- : yl(+ n), t)
- : o
- },
- t.lineX0 = t.lineY0 = function () {
- return n()
- .x(e)
- .y(i)
- },
- t.lineY1 = function () {
- return n()
- .x(e)
- .y(o)
- },
- t.lineX1 = function () {
- return n()
- .x(r)
- .y(i)
- },
- t.defined = function (n) {
- return arguments.length
- ? (u = "function" == typeof n
- ? n
- : yl(!!n), t)
- : u
- },
- t.curve = function (n) {
- return arguments.length
- ? (c = n, null != a && (s = c(a)), t)
- : c
- },
- t.context = function (n) {
- return arguments.length
- ? (null == n
- ? a = s = null
- : s = c(a = n), t)
- : a
- },
- t
- },
- kl = function (t, n) {
- return n < t
- ? -1
- : n > t
- ? 1
- : n >= t
- ? 0
- : NaN
- },
- Sl = function (t) {
- return t
- },
- Al = function () {
- function t(t) {
- var a,
- c,
- s,
- f,
- l,
- h = t.length,
- p = 0,
- d = new Array(h),
- v = new Array(h),
- _ =+ i.apply(this, arguments),
- y = Math.min(bl, Math.max(-bl, o.apply(this, arguments) - _)),
- g = Math.min(Math.abs(y) / h, u.apply(this, arguments)),
- m = g * (y < 0
- ? -1
- : 1);
- for (a = 0; a < h; ++a)
- (l = v[d[a] = a] =+ n(t[a], a, t)) > 0 && (p += l);
- for (null != e
- ? d.sort(function (t, n) {
- return e(v[t], v[n])
- })
- : null != r && d.sort(function (n, e) {
- return r(t[n], t[e])
- }), a = 0, s = p
- ? (y - h * m) / p
- : 0; a < h; ++a, _ = f)
- c = d[a],
- l = v[c],
- f = _ + (l > 0
- ? l * s
- : 0) + m,
- v[c] = {
- data: t[c],
- index: a,
- value: l,
- startAngle: _,
- endAngle: f,
- padAngle: g
- };
- return v
- }
- var n = Sl,
- e = kl,
- r = null,
- i = yl(0),
- o = yl(bl),
- u = yl(0);
- return t.value = function (e) {
- return arguments.length
- ? (n = "function" == typeof e
- ? e
- : yl(+ e), t)
- : n
- },
- t.sortValues = function (n) {
- return arguments.length
- ? (e = n, r = null, t)
- : e
- },
- t.sort = function (n) {
- return arguments.length
- ? (r = n, e = null, t)
- : r
- },
- t.startAngle = function (n) {
- return arguments.length
- ? (i = "function" == typeof n
- ? n
- : yl(+ n), t)
- : i
- },
- t.endAngle = function (n) {
- return arguments.length
- ? (o = "function" == typeof n
- ? n
- : yl(+ n), t)
- : o
- },
- t.padAngle = function (n) {
- return arguments.length
- ? (u = "function" == typeof n
- ? n
- : yl(+ n), t)
- : u
- },
- t
- },
- El = ct(Ml);
- at.prototype = {
- areaStart: function () {
- this
- ._curve
- .areaStart()
- },
- areaEnd: function () {
- this
- ._curve
- .areaEnd()
- },
- lineStart: function () {
- this
- ._curve
- .lineStart()
- },
- lineEnd: function () {
- this
- ._curve
- .lineEnd()
- },
- point: function (t, n) {
- this
- ._curve
- .point(n * Math.sin(t), n * -Math.cos(t))
- }
- };
- var Cl = function () {
- return st(Tl().curve(El))
- },
- zl = function () {
- var t = Nl().curve(El),
- n = t.curve,
- e = t.lineX0,
- r = t.lineX1,
- i = t.lineY0,
- o = t.lineY1;
- return t.angle = t.x,
- delete t.x,
- t.startAngle = t.x0,
- delete t.x0,
- t.endAngle = t.x1,
- delete t.x1,
- t.radius = t.y,
- delete t.y,
- t.innerRadius = t.y0,
- delete t.y0,
- t.outerRadius = t.y1,
- delete t.y1,
- t.lineStartAngle = function () {
- return st(e())
- },
- delete t.lineX0,
- t.lineEndAngle = function () {
- return st(r())
- },
- delete t.lineX1,
- t.lineInnerRadius = function () {
- return st(i())
- },
- delete t.lineY0,
- t.lineOuterRadius = function () {
- return st(o())
- },
- delete t.lineY1,
- t.curve = function (t) {
- return arguments.length
- ? n(ct(t))
- : n()._curve
- },
- t
- },
- Pl = {
- draw: function (t, n) {
- var e = Math.sqrt(n / ml);
- t.moveTo(e, 0),
- t.arc(0, 0, e, 0, bl)
- }
- },
- ql = {
- draw: function (t, n) {
- var e = Math.sqrt(n / 5) / 2;
- t.moveTo(-3 * e, -e),
- t.lineTo(-e, -e),
- t.lineTo(-e, -3 * e),
- t.lineTo(e, -3 * e),
- t.lineTo(e, -e),
- t.lineTo(3 * e, -e),
- t.lineTo(3 * e, e),
- t.lineTo(e, e),
- t.lineTo(e, 3 * e),
- t.lineTo(-e, 3 * e),
- t.lineTo(-e, e),
- t.lineTo(-3 * e, e),
- t.closePath()
- }
- },
- Ll = Math.sqrt(1 / 3),
- Rl = 2 * Ll,
- Ul = {
- draw: function (t, n) {
- var e = Math.sqrt(n / Rl),
- r = e * Ll;
- t.moveTo(0, -e),
- t.lineTo(r, 0),
- t.lineTo(0, e),
- t.lineTo(-r, 0),
- t.closePath()
- }
- },
- Dl = .8908130915292852,
- Ol = Math.sin(ml / 10) / Math.sin(7 * ml / 10),
- Fl = Math.sin(bl / 10) * Ol,
- Il = -Math.cos(bl / 10) * Ol,
- Yl = {
- draw: function (t, n) {
- var e = Math.sqrt(n * Dl),
- r = Fl * e,
- i = Il * e;
- t.moveTo(0, -e),
- t.lineTo(r, i);
- for (var o = 1; o < 5; ++o) {
- var u = bl * o / 5,
- a = Math.cos(u),
- c = Math.sin(u);
- t.lineTo(c * e, -a * e),
- t.lineTo(a * r - c * i, c * r + a * i)
- }
- t.closePath()
- }
- },
- Bl = {
- draw: function (t, n) {
- var e = Math.sqrt(n),
- r = -e / 2;
- t.rect(r, r, e, e)
- }
- },
- jl = Math.sqrt(3),
- Hl = {
- draw: function (t, n) {
- var e = -Math.sqrt(n / (3 * jl));
- t.moveTo(0, 2 * e),
- t.lineTo(-jl * e, -e),
- t.lineTo(jl * e, -e),
- t.closePath()
- }
- },
- Xl = -.5,
- Vl = Math.sqrt(3) / 2,
- Wl = 1 / Math.sqrt(12),
- $l = 3 * (Wl / 2 + 1),
- Zl = {
- draw: function (t, n) {
- var e = Math.sqrt(n / $l),
- r = e / 2,
- i = e * Wl,
- o = r,
- u = e * Wl + e,
- a = -o,
- c = u;
- t.moveTo(r, i),
- t.lineTo(o, u),
- t.lineTo(a, c),
- t.lineTo(Xl * r - Vl * i, Vl * r + Xl * i),
- t.lineTo(Xl * o - Vl * u, Vl * o + Xl * u),
- t.lineTo(Xl * a - Vl * c, Vl * a + Xl * c),
- t.lineTo(Xl * r + Vl * i, Xl * i - Vl * r),
- t.lineTo(Xl * o + Vl * u, Xl * u - Vl * o),
- t.lineTo(Xl * a + Vl * c, Xl * c - Vl * a),
- t.closePath()
- }
- },
- Gl = [
- Pl,
- ql,
- Ul,
- Bl,
- Yl,
- Hl,
- Zl
- ],
- Jl = function () {
- function t() {
- var t;
- if (r || (r = t = L()), n.apply(this, arguments).draw(r, + e.apply(this, arguments)), t)
- return r = null,
- t + "" || null
- }
- var n = yl(Pl),
- e = yl(64),
- r = null;
- return t.type = function (e) {
- return arguments.length
- ? (n = "function" == typeof e
- ? e
- : yl(e), t)
- : n
- },
- t.size = function (n) {
- return arguments.length
- ? (e = "function" == typeof n
- ? n
- : yl(+ n), t)
- : e
- },
- t.context = function (n) {
- return arguments.length
- ? (r = null == n
- ? null
- : n, t)
- : r
- },
- t
- },
- Ql = function () {};
- lt.prototype = {
- areaStart: function () {
- this._line = 0
- },
- areaEnd: function () {
- this._line = NaN
- },
- lineStart: function () {
- this._x0 = this._x1 = this._y0 = this._y1 = NaN,
- this._point = 0
- },
- lineEnd: function () {
- switch (this._point) {
- case 3:
- ft(this, this._x1, this._y1);
- case 2:
- this
- ._context
- .lineTo(this._x1, this._y1)
- }(this._line || 0 !== this._line && 1 === this._point) && this
- ._context
- .closePath(),
- this._line = 1 - this._line
- },
- point: function (t, n) {
- switch (t =+ t, n =+ n, this._point) {
- case 0:
- this._point = 1,
- this._line
- ? this
- ._context
- .lineTo(t, n)
- : this
- ._context
- .moveTo(t, n);
- break;
- case 1:
- this._point = 2;
- break;
- case 2:
- this._point = 3,
- this
- ._context
- .lineTo((5 * this._x0 + this._x1) / 6, (5 * this._y0 + this._y1) / 6);
- default:
- ft(this, t, n)
- }
- this._x0 = this._x1,
- this._x1 = t,
- this._y0 = this._y1,
- this._y1 = n
- }
- };
- var Kl = function (t) {
- return new lt(t)
- };
- ht.prototype = {
- areaStart: Ql,
- areaEnd: Ql,
- lineStart: function () {
- this._x0 = this._x1 = this._x2 = this._x3 = this._x4 = this._y0 = this._y1 = this._y2 = this._y3 = this._y4 = NaN,
- this._point = 0
- },
- lineEnd: function () {
- switch (this._point) {
- case 1:
- this
- ._context
- .moveTo(this._x2, this._y2),
- this
- ._context
- .closePath();
- break;
- case 2:
- this
- ._context
- .moveTo((this._x2 + 2 * this._x3) / 3, (this._y2 + 2 * this._y3) / 3),
- this
- ._context
- .lineTo((this._x3 + 2 * this._x2) / 3, (this._y3 + 2 * this._y2) / 3),
- this
- ._context
- .closePath();
- break;
- case 3:
- this.point(this._x2, this._y2),
- this.point(this._x3, this._y3),
- this.point(this._x4, this._y4)
- }
- },
- point: function (t, n) {
- switch (t =+ t, n =+ n, this._point) {
- case 0:
- this._point = 1,
- this._x2 = t,
- this._y2 = n;
- break;
- case 1:
- this._point = 2,
- this._x3 = t,
- this._y3 = n;
- break;
- case 2:
- this._point = 3,
- this._x4 = t,
- this._y4 = n,
- this
- ._context
- .moveTo((this._x0 + 4 * this._x1 + t) / 6, (this._y0 + 4 * this._y1 + n) / 6);
- break;
- default:
- ft(this, t, n)
- }
- this._x0 = this._x1,
- this._x1 = t,
- this._y0 = this._y1,
- this._y1 = n
- }
- };
- var th = function (t) {
- return new ht(t)
- };
- pt.prototype = {
- areaStart: function () {
- this._line = 0
- },
- areaEnd: function () {
- this._line = NaN
- },
- lineStart: function () {
- this._x0 = this._x1 = this._y0 = this._y1 = NaN,
- this._point = 0
- },
- lineEnd: function () {
- (this._line || 0 !== this._line && 3 === this._point) && this
- ._context
- .closePath(),
- this._line = 1 - this._line
- },
- point: function (t, n) {
- switch (t =+ t, n =+ n, this._point) {
- case 0:
- this._point = 1;
- break;
- case 1:
- this._point = 2;
- break;
- case 2:
- this._point = 3;
- var e = (this._x0 + 4 * this._x1 + t) / 6,
- r = (this._y0 + 4 * this._y1 + n) / 6;
- this._line
- ? this
- ._context
- .lineTo(e, r)
- : this
- ._context
- .moveTo(e, r);
- break;
- case 3:
- this._point = 4;
- default:
- ft(this, t, n)
- }
- this._x0 = this._x1,
- this._x1 = t,
- this._y0 = this._y1,
- this._y1 = n
- }
- };
- var nh = function (t) {
- return new pt(t)
- };
- dt.prototype = {
- lineStart: function () {
- this._x = [],
- this._y = [],
- this
- ._basis
- .lineStart()
- },
- lineEnd: function () {
- var t = this._x,
- n = this._y,
- e = t.length - 1;
- if (e > 0)
- for (var r, i = t[0], o = n[0], u = t[e] - i, a = n[e] - o, c = -1; ++c <= e;)
- r = c / e,
- this._basis.point(this._beta * t[c] + (1 - this._beta) * (i + r * u), this._beta * n[c] + (1 - this._beta) * (o + r * a));
- this._x = this._y = null,
- this
- ._basis
- .lineEnd()
- },
- point: function (t, n) {
- this
- ._x
- .push(+ t),
- this
- ._y
- .push(+ n)
- }
- };
- var eh = function t(n) {
- function e(t) {
- return 1 === n
- ? new lt(t)
- : new dt(t, n)
- }
- return e.beta = function (n) {
- return t(+ n)
- },
- e
- }(.85);
- _t.prototype = {
- areaStart: function () {
- this._line = 0
- },
- areaEnd: function () {
- this._line = NaN
- },
- lineStart: function () {
- this._x0 = this._x1 = this._x2 = this._y0 = this._y1 = this._y2 = NaN,
- this._point = 0
- },
- lineEnd: function () {
- switch (this._point) {
- case 2:
- this
- ._context
- .lineTo(this._x2, this._y2);
- break;
- case 3:
- vt(this, this._x1, this._y1)
- }(this._line || 0 !== this._line && 1 === this._point) && this
- ._context
- .closePath(),
- this._line = 1 - this._line
- },
- point: function (t, n) {
- switch (t =+ t, n =+ n, this._point) {
- case 0:
- this._point = 1,
- this._line
- ? this
- ._context
- .lineTo(t, n)
- : this
- ._context
- .moveTo(t, n);
- break;
- case 1:
- this._point = 2,
- this._x1 = t,
- this._y1 = n;
- break;
- case 2:
- this._point = 3;
- default:
- vt(this, t, n)
- }
- this._x0 = this._x1,
- this._x1 = this._x2,
- this._x2 = t,
- this._y0 = this._y1,
- this._y1 = this._y2,
- this._y2 = n
- }
- };
- var rh = function t(n) {
- function e(t) {
- return new _t(t, n)
- }
- return e.tension = function (n) {
- return t(+ n)
- },
- e
- }(0);
- yt.prototype = {
- areaStart: Ql,
- areaEnd: Ql,
- lineStart: function () {
- this._x0 = this._x1 = this._x2 = this._x3 = this._x4 = this._x5 = this._y0 = this._y1 = this._y2 = this._y3 = this._y4 = this._y5 = NaN,
- this._point = 0
- },
- lineEnd: function () {
- switch (this._point) {
- case 1:
- this
- ._context
- .moveTo(this._x3, this._y3),
- this
- ._context
- .closePath();
- break;
- case 2:
- this
- ._context
- .lineTo(this._x3, this._y3),
- this
- ._context
- .closePath();
- break;
- case 3:
- this.point(this._x3, this._y3),
- this.point(this._x4, this._y4),
- this.point(this._x5, this._y5)
- }
- },
- point: function (t, n) {
- switch (t =+ t, n =+ n, this._point) {
- case 0:
- this._point = 1,
- this._x3 = t,
- this._y3 = n;
- break;
- case 1:
- this._point = 2,
- this
- ._context
- .moveTo(this._x4 = t, this._y4 = n);
- break;
- case 2:
- this._point = 3,
- this._x5 = t,
- this._y5 = n;
- break;
- default:
- vt(this, t, n)
- }
- this._x0 = this._x1,
- this._x1 = this._x2,
- this._x2 = t,
- this._y0 = this._y1,
- this._y1 = this._y2,
- this._y2 = n
- }
- };
- var ih = function t(n) {
- function e(t) {
- return new yt(t, n)
- }
- return e.tension = function (n) {
- return t(+ n)
- },
- e
- }(0);
- gt.prototype = {
- areaStart: function () {
- this._line = 0
- },
- areaEnd: function () {
- this._line = NaN
- },
- lineStart: function () {
- this._x0 = this._x1 = this._x2 = this._y0 = this._y1 = this._y2 = NaN,
- this._point = 0
- },
- lineEnd: function () {
- (this._line || 0 !== this._line && 3 === this._point) && this
- ._context
- .closePath(),
- this._line = 1 - this._line
- },
- point: function (t, n) {
- switch (t =+ t, n =+ n, this._point) {
- case 0:
- this._point = 1;
- break;
- case 1:
- this._point = 2;
- break;
- case 2:
- this._point = 3,
- this._line
- ? this
- ._context
- .lineTo(this._x2, this._y2)
- : this
- ._context
- .moveTo(this._x2, this._y2);
- break;
- case 3:
- this._point = 4;
- default:
- vt(this, t, n)
- }
- this._x0 = this._x1,
- this._x1 = this._x2,
- this._x2 = t,
- this._y0 = this._y1,
- this._y1 = this._y2,
- this._y2 = n
- }
- };
- var oh = function t(n) {
- function e(t) {
- return new gt(t, n)
- }
- return e.tension = function (n) {
- return t(+ n)
- },
- e
- }(0);
- xt.prototype = {
- areaStart: function () {
- this._line = 0
- },
- areaEnd: function () {
- this._line = NaN
- },
- lineStart: function () {
- this._x0 = this._x1 = this._x2 = this._y0 = this._y1 = this._y2 = NaN,
- this._l01_a = this._l12_a = this._l23_a = this._l01_2a = this._l12_2a = this._l23_2a = this._point = 0
- },
- lineEnd: function () {
- switch (this._point) {
- case 2:
- this
- ._context
- .lineTo(this._x2, this._y2);
- break;
- case 3:
- this.point(this._x2, this._y2)
- }(this._line || 0 !== this._line && 1 === this._point) && this
- ._context
- .closePath(),
- this._line = 1 - this._line
- },
- point: function (t, n) {
- if (t =+ t, n =+ n, this._point) {
- var e = this._x2 - t,
- r = this._y2 - n;
- this._l23_a = Math.sqrt(this._l23_2a = Math.pow(e * e + r * r, this._alpha))
- }
- switch (this._point) {
- case 0:
- this._point = 1,
- this._line
- ? this
- ._context
- .lineTo(t, n)
- : this
- ._context
- .moveTo(t, n);
- break;
- case 1:
- this._point = 2;
- break;
- case 2:
- this._point = 3;
- default:
- mt(this, t, n)
- }
- this._l01_a = this._l12_a,
- this._l12_a = this._l23_a,
- this._l01_2a = this._l12_2a,
- this._l12_2a = this._l23_2a,
- this._x0 = this._x1,
- this._x1 = this._x2,
- this._x2 = t,
- this._y0 = this._y1,
- this._y1 = this._y2,
- this._y2 = n
- }
- };
- var uh = function t(n) {
- function e(t) {
- return n
- ? new xt(t, n)
- : new _t(t, 0)
- }
- return e.alpha = function (n) {
- return t(+ n)
- },
- e
- }(.5);
- bt.prototype = {
- areaStart: Ql,
- areaEnd: Ql,
- lineStart: function () {
- this._x0 = this._x1 = this._x2 = this._x3 = this._x4 = this._x5 = this._y0 = this._y1 = this._y2 = this._y3 = this._y4 = this._y5 = NaN,
- this._l01_a = this._l12_a = this._l23_a = this._l01_2a = this._l12_2a = this._l23_2a = this._point = 0
- },
- lineEnd: function () {
- switch (this._point) {
- case 1:
- this
- ._context
- .moveTo(this._x3, this._y3),
- this
- ._context
- .closePath();
- break;
- case 2:
- this
- ._context
- .lineTo(this._x3, this._y3),
- this
- ._context
- .closePath();
- break;
- case 3:
- this.point(this._x3, this._y3),
- this.point(this._x4, this._y4),
- this.point(this._x5, this._y5)
- }
- },
- point: function (t, n) {
- if (t =+ t, n =+ n, this._point) {
- var e = this._x2 - t,
- r = this._y2 - n;
- this._l23_a = Math.sqrt(this._l23_2a = Math.pow(e * e + r * r, this._alpha))
- }
- switch (this._point) {
- case 0:
- this._point = 1,
- this._x3 = t,
- this._y3 = n;
- break;
- case 1:
- this._point = 2,
- this
- ._context
- .moveTo(this._x4 = t, this._y4 = n);
- break;
- case 2:
- this._point = 3,
- this._x5 = t,
- this._y5 = n;
- break;
- default:
- mt(this, t, n)
- }
- this._l01_a = this._l12_a,
- this._l12_a = this._l23_a,
- this._l01_2a = this._l12_2a,
- this._l12_2a = this._l23_2a,
- this._x0 = this._x1,
- this._x1 = this._x2,
- this._x2 = t,
- this._y0 = this._y1,
- this._y1 = this._y2,
- this._y2 = n
- }
- };
- var ah = function t(n) {
- function e(t) {
- return n
- ? new bt(t, n)
- : new yt(t, 0)
- }
- return e.alpha = function (n) {
- return t(+ n)
- },
- e
- }(.5);
- wt.prototype = {
- areaStart: function () {
- this._line = 0
- },
- areaEnd: function () {
- this._line = NaN
- },
- lineStart: function () {
- this._x0 = this._x1 = this._x2 = this._y0 = this._y1 = this._y2 = NaN,
- this._l01_a = this._l12_a = this._l23_a = this._l01_2a = this._l12_2a = this._l23_2a = this._point = 0
- },
- lineEnd: function () {
- (this._line || 0 !== this._line && 3 === this._point) && this
- ._context
- .closePath(),
- this._line = 1 - this._line
- },
- point: function (t, n) {
- if (t =+ t, n =+ n, this._point) {
- var e = this._x2 - t,
- r = this._y2 - n;
- this._l23_a = Math.sqrt(this._l23_2a = Math.pow(e * e + r * r, this._alpha))
- }
- switch (this._point) {
- case 0:
- this._point = 1;
- break;
- case 1:
- this._point = 2;
- break;
- case 2:
- this._point = 3,
- this._line
- ? this
- ._context
- .lineTo(this._x2, this._y2)
- : this
- ._context
- .moveTo(this._x2, this._y2);
- break;
- case 3:
- this._point = 4;
- default:
- mt(this, t, n)
- }
- this._l01_a = this._l12_a,
- this._l12_a = this._l23_a,
- this._l01_2a = this._l12_2a,
- this._l12_2a = this._l23_2a,
- this._x0 = this._x1,
- this._x1 = this._x2,
- this._x2 = t,
- this._y0 = this._y1,
- this._y1 = this._y2,
- this._y2 = n
- }
- };
- var ch = function t(n) {
- function e(t) {
- return n
- ? new wt(t, n)
- : new gt(t, 0)
- }
- return e.alpha = function (n) {
- return t(+ n)
- },
- e
- }(.5);
- Mt.prototype = {
- areaStart: Ql,
- areaEnd: Ql,
- lineStart: function () {
- this._point = 0
- },
- lineEnd: function () {
- this._point && this
- ._context
- .closePath()
- },
- point: function (t, n) {
- t =+ t,
- n =+ n,
- this._point
- ? this
- ._context
- .lineTo(t, n)
- : (this._point = 1, this._context.moveTo(t, n))
- }
- };
- var sh = function (t) {
- return new Mt(t)
- };
- At.prototype = {
- areaStart: function () {
- this._line = 0
- },
- areaEnd: function () {
- this._line = NaN
- },
- lineStart: function () {
- this._x0 = this._x1 = this._y0 = this._y1 = this._t0 = NaN,
- this._point = 0
- },
- lineEnd: function () {
- switch (this._point) {
- case 2:
- this
- ._context
- .lineTo(this._x1, this._y1);
- break;
- case 3:
- St(this, this._t0, kt(this, this._t0))
- }(this._line || 0 !== this._line && 1 === this._point) && this
- ._context
- .closePath(),
- this._line = 1 - this._line
- },
- point: function (t, n) {
- var e = NaN;
- if (t =+ t, n =+ n, t !== this._x1 || n !== this._y1) {
- switch (this._point) {
- case 0:
- this._point = 1,
- this._line
- ? this
- ._context
- .lineTo(t, n)
- : this
- ._context
- .moveTo(t, n);
- break;
- case 1:
- this._point = 2;
- break;
- case 2:
- this._point = 3,
- St(this, kt(this, e = Nt(this, t, n)), e);
- break;
- default:
- St(this, this._t0, e = Nt(this, t, n))
- }
- this._x0 = this._x1,
- this._x1 = t,
- this._y0 = this._y1,
- this._y1 = n,
- this._t0 = e
- }
- }
- },
- (Et.prototype = Object.create(At.prototype)).point = function (t, n) {
- At
- .prototype
- .point
- .call(this, n, t)
- },
- Ct.prototype = {
- moveTo: function (t, n) {
- this
- ._context
- .moveTo(n, t)
- },
- closePath: function () {
- this
- ._context
- .closePath()
- },
- lineTo: function (t, n) {
- this
- ._context
- .lineTo(n, t)
- },
- bezierCurveTo: function (t, n, e, r, i, o) {
- this
- ._context
- .bezierCurveTo(n, t, r, e, o, i)
- }
- },
- qt.prototype = {
- areaStart: function () {
- this._line = 0
- },
- areaEnd: function () {
- this._line = NaN
- },
- lineStart: function () {
- this._x = [],
- this._y = []
- },
- lineEnd: function () {
- var t = this._x,
- n = this._y,
- e = t.length;
- if (e)
- if (this._line
- ? this._context.lineTo(t[0], n[0])
- : this._context.moveTo(t[0], n[0]), 2 === e)
- this._context.lineTo(t[1], n[1]);
- else
- for (var r = Lt(t), i = Lt(n), o = 0, u = 1; u < e; ++o, ++u)
- this._context.bezierCurveTo(r[0][o], i[0][o], r[1][o], i[1][o], t[u], n[u]);
- (this._line || 0 !== this._line && 1 === e) && this
- ._context
- .closePath(),
- this._line = 1 - this._line,
- this._x = this._y = null
- },
- point: function (t, n) {
- this
- ._x
- .push(+ t),
- this
- ._y
- .push(+ n)
- }
- };
- var fh = function (t) {
- return new qt(t)
- };
- Rt.prototype = {
- areaStart: function () {
- this._line = 0
- },
- areaEnd: function () {
- this._line = NaN
- },
- lineStart: function () {
- this._x = this._y = NaN,
- this._point = 0
- },
- lineEnd: function () {
- 0 < this._t && this._t < 1 && 2 === this._point && this
- ._context
- .lineTo(this._x, this._y),
- (this._line || 0 !== this._line && 1 === this._point) && this
- ._context
- .closePath(),
- this._line >= 0 && (this._t = 1 - this._t, this._line = 1 - this._line)
- },
- point: function (t, n) {
- switch (t =+ t, n =+ n, this._point) {
- case 0:
- this._point = 1,
- this._line
- ? this
- ._context
- .lineTo(t, n)
- : this
- ._context
- .moveTo(t, n);
- break;
- case 1:
- this._point = 2;
- default:
- if (this._t <= 0)
- this._context.lineTo(this._x, n),
- this._context.lineTo(t, n);
- else {
- var e = this._x * (1 - this._t) + t * this._t;
- this
- ._context
- .lineTo(e, this._y),
- this
- ._context
- .lineTo(e, n)
- }
- }
- this._x = t,
- this._y = n
- }
- };
- var lh = function (t) {
- return new Rt(t, .5)
- },
- hh = Array.prototype.slice,
- ph = function (t, n) {
- if ((r = t.length) > 1)
- for (var e, r, i = 1, o = t[n[0]], u = o.length; i < r; ++i) {
- e = o,
- o = t[n[i]];
- for (var a = 0; a < u; ++a)
- o[a][1] += o[a][0] = isNaN(e[a][1])
- ? e[a][0]
- : e[a][1]
- }
- },
- dh = function (t) {
- for (var n = t.length, e = new Array(n); --n >= 0;)
- e[n] = n;
- return e
- },
- vh = function () {
- function t(t) {
- var o,
- u,
- a = n.apply(this, arguments),
- c = t.length,
- s = a.length,
- f = new Array(s);
- for (o = 0; o < s; ++o) {
- for (var l, h = a[o], p = f[o] = new Array(c), d = 0; d < c; ++d)
- p[d] = l = [
- 0, + i(t[d], h, d, t)
- ],
- l.data = t[d];
- p.key = h
- }
- for (o = 0, u = e(f); o < s; ++o)
- f[u[o]].index = o;
- return r(f, u),
- f
- }
- var n = yl([]),
- e = dh,
- r = ph,
- i = Ot;
- return t.keys = function (e) {
- return arguments.length
- ? (n = "function" == typeof e
- ? e
- : yl(hh.call(e)), t)
- : n
- },
- t.value = function (n) {
- return arguments.length
- ? (i = "function" == typeof n
- ? n
- : yl(+ n), t)
- : i
- },
- t.order = function (n) {
- return arguments.length
- ? (e = null == n
- ? dh
- : "function" == typeof n
- ? n
- : yl(hh.call(n)), t)
- : e
- },
- t.offset = function (n) {
- return arguments.length
- ? (r = null == n
- ? ph
- : n, t)
- : r
- },
- t
- },
- _h = function (t, n) {
- if ((r = t.length) > 0) {
- for (var e, r, i, o = 0, u = t[0].length; o < u; ++o) {
- for (i = e = 0; e < r; ++e)
- i += t[e][o][1] || 0;
- if (i)
- for (e = 0; e < r; ++e)
- t[e][o][1] /= i
- }
- ph(t, n)
- }
- },
- yh = function (t, n) {
- if ((e = t.length) > 0) {
- for (var e, r = 0, i = t[n[0]], o = i.length; r < o; ++r) {
- for (var u = 0, a = 0; u < e; ++u)
- a += t[u][r][1] || 0;
- i[r][1] += i[r][0] = -a / 2
- }
- ph(t, n)
- }
- },
- gh = function (t, n) {
- if ((i = t.length) > 0 && (r = (e = t[n[0]]).length) > 0) {
- for (var e, r, i, o = 0, u = 1; u < r; ++u) {
- for (var a = 0, c = 0, s = 0; a < i; ++a) {
- for (var f = t[n[a]], l = f[u][1] || 0,
- h = f[u - 1][1] || 0,
- p = (l - h) / 2,
- d = 0; d < a; ++d) {
- var v = t[n[d]],
- _ = v[u][1] || 0,
- y = v[u - 1][1] || 0;
- p += _ - y
- }
- c += l,
- s += p * l
- }
- e[u - 1][1] += e[u - 1][0] = o,
- c && (o -= s / c)
- }
- e[u - 1][1] += e[u - 1][0] = o,
- ph(t, n)
- }
- },
- mh = function (t) {
- var n = t.map(Ft);
- return dh(t).sort(function (t, e) {
- return n[t] - n[e]
- })
- },
- xh = function (t) {
- return mh(t).reverse()
- },
- bh = function (t) {
- var n,
- e,
- r = t.length,
- i = t.map(Ft),
- o = dh(t).sort(function (t, n) {
- return i[n] - i[t]
- }),
- u = 0,
- a = 0,
- c = [],
- s = [];
- for (n = 0; n < r; ++n)
- e = o[n],
- u < a
- ? (u += i[e], c.push(e))
- : (a += i[e], s.push(e));
- return s
- .reverse()
- .concat(c)
- },
- wh = function (t) {
- return dh(t).reverse()
- },
- Mh = function (t, n, e) {
- t.prototype = n.prototype = e,
- e.constructor = t
- },
- Th = .7,
- Nh = 1 / Th,
- kh = /^#([0-9a-f]{3})$/,
- Sh = /^#([0-9a-f]{6})$/,
- Ah = /^rgb\(\s*([-+]?\d+)\s*,\s*([-+]?\d+)\s*,\s*([-+]?\d+)\s*\)$/,
- Eh = /^rgb\(\s*([-+]?\d+(?:\.\d+)?)%\s*,\s*([-+]?\d+(?:\.\d+)?)%\s*,\s*([-+]?\d+(?:\.\d+)?)%\s*\)$/,
- Ch = /^rgba\(\s*([-+]?\d+)\s*,\s*([-+]?\d+)\s*,\s*([-+]?\d+)\s*,\s*([-+]?\d+(?:\.\d+)?)\s*\)$/,
- zh = /^rgba\(\s*([-+]?\d+(?:\.\d+)?)%\s*,\s*([-+]?\d+(?:\.\d+)?)%\s*,\s*([-+]?\d+(?:\.\d+)?)%\s*,\s*([-+]?\d+(?:\.\d+)?)\s*\)$/,
- Ph = /^hsl\(\s*([-+]?\d+(?:\.\d+)?)\s*,\s*([-+]?\d+(?:\.\d+)?)%\s*,\s*([-+]?\d+(?:\.\d+)?)%\s*\)$/,
- qh = /^hsla\(\s*([-+]?\d+(?:\.\d+)?)\s*,\s*([-+]?\d+(?:\.\d+)?)%\s*,\s*([-+]?\d+(?:\.\d+)?)%\s*,\s*([-+]?\d+(?:\.\d+)?)\s*\)$/,
- Lh = {
- aliceblue: 15792383,
- antiquewhite: 16444375,
- aqua: 65535,
- aquamarine: 8388564,
- azure: 15794175,
- beige: 16119260,
- bisque: 16770244,
- black: 0,
- blanchedalmond: 16772045,
- blue: 255,
- blueviolet: 9055202,
- brown: 10824234,
- burlywood: 14596231,
- cadetblue: 6266528,
- chartreuse: 8388352,
- chocolate: 13789470,
- coral: 16744272,
- cornflowerblue: 6591981,
- cornsilk: 16775388,
- crimson: 14423100,
- cyan: 65535,
- darkblue: 139,
- darkcyan: 35723,
- darkgoldenrod: 12092939,
- darkgray: 11119017,
- darkgreen: 25600,
- darkgrey: 11119017,
- darkkhaki: 12433259,
- darkmagenta: 9109643,
- darkolivegreen: 5597999,
- darkorange: 16747520,
- darkorchid: 10040012,
- darkred: 9109504,
- darksalmon: 15308410,
- darkseagreen: 9419919,
- darkslateblue: 4734347,
- darkslategray: 3100495,
- darkslategrey: 3100495,
- darkturquoise: 52945,
- darkviolet: 9699539,
- deeppink: 16716947,
- deepskyblue: 49151,
- dimgray: 6908265,
- dimgrey: 6908265,
- dodgerblue: 2003199,
- firebrick: 11674146,
- floralwhite: 16775920,
- forestgreen: 2263842,
- fuchsia: 16711935,
- gainsboro: 14474460,
- ghostwhite: 16316671,
- gold: 16766720,
- goldenrod: 14329120,
- gray: 8421504,
- green: 32768,
- greenyellow: 11403055,
- grey: 8421504,
- honeydew: 15794160,
- hotpink: 16738740,
- indianred: 13458524,
- indigo: 4915330,
- ivory: 16777200,
- khaki: 15787660,
- lavender: 15132410,
- lavenderblush: 16773365,
- lawngreen: 8190976,
- lemonchiffon: 16775885,
- lightblue: 11393254,
- lightcoral: 15761536,
- lightcyan: 14745599,
- lightgoldenrodyellow: 16448210,
- lightgray: 13882323,
- lightgreen: 9498256,
- lightgrey: 13882323,
- lightpink: 16758465,
- lightsalmon: 16752762,
- lightseagreen: 2142890,
- lightskyblue: 8900346,
- lightslategray: 7833753,
- lightslategrey: 7833753,
- lightsteelblue: 11584734,
- lightyellow: 16777184,
- lime: 65280,
- limegreen: 3329330,
- linen: 16445670,
- magenta: 16711935,
- maroon: 8388608,
- mediumaquamarine: 6737322,
- mediumblue: 205,
- mediumorchid: 12211667,
- mediumpurple: 9662683,
- mediumseagreen: 3978097,
- mediumslateblue: 8087790,
- mediumspringgreen: 64154,
- mediumturquoise: 4772300,
- mediumvioletred: 13047173,
- midnightblue: 1644912,
- mintcream: 16121850,
- mistyrose: 16770273,
- moccasin: 16770229,
- navajowhite: 16768685,
- navy: 128,
- oldlace: 16643558,
- olive: 8421376,
- olivedrab: 7048739,
- orange: 16753920,
- orangered: 16729344,
- orchid: 14315734,
- palegoldenrod: 15657130,
- palegreen: 10025880,
- paleturquoise: 11529966,
- palevioletred: 14381203,
- papayawhip: 16773077,
- peachpuff: 16767673,
- peru: 13468991,
- pink: 16761035,
- plum: 14524637,
- powderblue: 11591910,
- purple: 8388736,
- rebeccapurple: 6697881,
- red: 16711680,
- rosybrown: 12357519,
- royalblue: 4286945,
- saddlebrown: 9127187,
- salmon: 16416882,
- sandybrown: 16032864,
- seagreen: 3050327,
- seashell: 16774638,
- sienna: 10506797,
- silver: 12632256,
- skyblue: 8900331,
- slateblue: 6970061,
- slategray: 7372944,
- slategrey: 7372944,
- snow: 16775930,
- springgreen: 65407,
- steelblue: 4620980,
- tan: 13808780,
- teal: 32896,
- thistle: 14204888,
- tomato: 16737095,
- turquoise: 4251856,
- violet: 15631086,
- wheat: 16113331,
- white: 16777215,
- whitesmoke: 16119285,
- yellow: 16776960,
- yellowgreen: 10145074
- };
- Mh(Yt, Bt, {
- displayable: function () {
- return this
- .rgb()
- .displayable()
- },
- toString: function () {
- return this.rgb() + ""
- }
- }),
- Mh(Wt, Vt, It(Yt, {
- brighter: function (t) {
- return t = null == t
- ? Nh
- : Math.pow(Nh, t),
- new Wt(this.r * t, this.g * t, this.b * t, this.opacity)
- },
- darker: function (t) {
- return t = null == t
- ? Th
- : Math.pow(Th, t),
- new Wt(this.r * t, this.g * t, this.b * t, this.opacity)
- },
- rgb: function () {
- return this
- },
- displayable: function () {
- return 0 <= this.r && this.r <= 255 && 0 <= this.g && this.g <= 255 && 0 <= this.b && this.b <= 255 && 0 <= this.opacity && this.opacity <= 1
- },
- toString: function () {
- var t = this.opacity;
- return t = isNaN(t)
- ? 1
- : Math.max(0, Math.min(1, t)),
- (1 === t
- ? "rgb("
- : "rgba(") + Math.max(0, Math.min(255, Math.round(this.r) || 0)) + ", " + Math.max(0, Math.min(255, Math.round(this.g) || 0)) + ", " + Math.max(0, Math.min(255, Math.round(this.b) || 0)) + (1 === t
- ? ")"
- : ", " + t + ")")
- }
- })),
- Mh(Jt, Gt, It(Yt, {
- brighter: function (t) {
- return t = null == t
- ? Nh
- : Math.pow(Nh, t),
- new Jt(this.h, this.s, this.l * t, this.opacity)
- },
- darker: function (t) {
- return t = null == t
- ? Th
- : Math.pow(Th, t),
- new Jt(this.h, this.s, this.l * t, this.opacity)
- },
- rgb: function () {
- var t = this.h % 360 + 360 * (this.h < 0),
- n = isNaN(t) || isNaN(this.s)
- ? 0
- : this.s,
- e = this.l,
- r = e + (e < .5
- ? e
- : 1 - e) * n,
- i = 2 * e - r;
- return new Wt(Qt(t >= 240
- ? t - 240
- : t + 120, i, r), Qt(t, i, r), Qt(t < 120
- ? t + 240
- : t - 120, i, r), this.opacity)
- },
- displayable: function () {
- return (0 <= this.s && this.s <= 1 || isNaN(this.s)) && 0 <= this.l && this.l <= 1 && 0 <= this.opacity && this.opacity <= 1
- }
- }));
- var Rh = Math.PI / 180,
- Uh = 180 / Math.PI,
- Dh = 18,
- Oh = .95047,
- Fh = 1,
- Ih = 1.08883,
- Yh = 4 / 29,
- Bh = 6 / 29,
- jh = 3 * Bh * Bh,
- Hh = Bh * Bh * Bh;
- Mh(nn, tn, It(Yt, {
- brighter: function (t) {
- return new nn(this.l + Dh * (null == t
- ? 1
- : t), this.a, this.b, this.opacity)
- },
- darker: function (t) {
- return new nn(this.l - Dh * (null == t
- ? 1
- : t), this.a, this.b, this.opacity)
- },
- rgb: function () {
- var t = (this.l + 16) / 116,
- n = isNaN(this.a)
- ? t
- : t + this.a / 500,
- e = isNaN(this.b)
- ? t
- : t - this.b / 200;
- return t = Fh * rn(t),
- n = Oh * rn(n),
- e = Ih * rn(e),
- new Wt(on(3.2404542 * n - 1.5371385 * t - .4985314 * e), on(-.969266 * n + 1.8760108 * t + .041556 * e), on(.0556434 * n - .2040259 * t + 1.0572252 * e), this.opacity)
- }
- })),
- Mh(sn, cn, It(Yt, {
- brighter: function (t) {
- return new sn(this.h, this.c, this.l + Dh * (null == t
- ? 1
- : t), this.opacity)
- },
- darker: function (t) {
- return new sn(this.h, this.c, this.l - Dh * (null == t
- ? 1
- : t), this.opacity)
- },
- rgb: function () {
- return Kt(this).rgb()
- }
- }));
- var Xh = -.14861,
- Vh = 1.78277,
- Wh = -.29227,
- $h = -.90649,
- Zh = 1.97294,
- Gh = Zh * $h,
- Jh = Zh * Vh,
- Qh = Vh * Wh - $h * Xh;
- Mh(hn, ln, It(Yt, {
- brighter: function (t) {
- return t = null == t
- ? Nh
- : Math.pow(Nh, t),
- new hn(this.h, this.s, this.l * t, this.opacity)
- },
- darker: function (t) {
- return t = null == t
- ? Th
- : Math.pow(Th, t),
- new hn(this.h, this.s, this.l * t, this.opacity)
- },
- rgb: function () {
- var t = isNaN(this.h)
- ? 0
- : (this.h + 120) * Rh,
- n =+ this.l,
- e = isNaN(this.s)
- ? 0
- : this.s * n * (1 - n),
- r = Math.cos(t),
- i = Math.sin(t);
- return new Wt(255 * (n + e * (Xh * r + Vh * i)), 255 * (n + e * (Wh * r + $h * i)), 255 * (n + e * (Zh * r)), this.opacity)
- }
- }));
- var Kh,
- tp,
- np,
- ep,
- rp = function (t) {
- var n = t.length - 1;
- return function (e) {
- var r = e <= 0
- ? e = 0
- : e >= 1
- ? (e = 1, n - 1)
- : Math.floor(e * n),
- i = t[r],
- o = t[r + 1],
- u = r > 0
- ? t[r - 1]
- : 2 * i - o,
- a = r < n - 1
- ? t[r + 2]
- : 2 * o - i;
- return pn((e - r / n) * n, u, i, o, a)
- }
- },
- ip = function (t) {
- var n = t.length;
- return function (e) {
- var r = Math.floor(((e %= 1) < 0
- ? ++e
- : e) * n),
- i = t[(r + n - 1) % n],
- o = t[r % n],
- u = t[(r + 1) % n],
- a = t[(r + 2) % n];
- return pn((e - r / n) * n, i, o, u, a)
- }
- },
- op = function (t) {
- return function () {
- return t
- }
- },
- up = function t(n) {
- function e(t, n) {
- var e = r((t = Vt(t)).r, (n = Vt(n)).r),
- i = r(t.g, n.g),
- o = r(t.b, n.b),
- u = r(t.opacity, n.opacity);
- return function (n) {
- return t.r = e(n),
- t.g = i(n),
- t.b = o(n),
- t.opacity = u(n),
- t + ""
- }
- }
- var r = yn(n);
- return e.gamma = t,
- e
- }(1),
- ap = mn(rp),
- cp = mn(ip),
- sp = function (t, n) {
- var e,
- r = n
- ? n.length
- : 0,
- i = t
- ? Math.min(r, t.length)
- : 0,
- o = new Array(r),
- u = new Array(r);
- for (e = 0; e < i; ++e)
- o[e] = _p(t[e], n[e]);
- for (; e < r; ++e)
- u[e] = n[e];
- return function (t) {
- for (e = 0; e < i; ++e)
- u[e] = o[e](t);
- return u
- }
- },
- fp = function (t, n) {
- var e = new Date;
- return t =+ t,
- n -= t,
- function (r) {
- return e.setTime(t + n * r),
- e
- }
- },
- lp = function (t, n) {
- return t =+ t,
- n -= t,
- function (e) {
- return t + n * e
- }
- },
- hp = function (t, n) {
- var e,
- r = {},
- i = {};
- null !== t && "object" == typeof t || (t = {}),
- null !== n && "object" == typeof n || (n = {});
- for (e in n)
- e in t
- ? r[e] = _p(t[e], n[e])
- : i[e] = n[e];
- return function (t) {
- for (e in r)
- i[e] = r[e](t);
- return i
- }
- },
- pp = /[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,
- dp = new RegExp(pp.source, "g"),
- vp = function (t, n) {
- var e,
- r,
- i,
- o = pp.lastIndex = dp.lastIndex = 0,
- u = -1,
- a = [],
- c = [];
- for (t += "", n += ""; (e = pp.exec(t)) && (r = dp.exec(n));)
- (i = r.index) > o && (i = n.slice(o, i), a[u]
- ? a[u] += i
- : a[++u] = i),
- (e = e[0]) === (r = r[0])
- ? a[u]
- ? a[u] += r
- : a[++u] = r
- : (a[++u] = null, c.push({
- i: u,
- x: lp(e, r)
- })),
- o = dp.lastIndex;
- return o < n.length && (i = n.slice(o), a[u]
- ? a[u] += i
- : a[++u] = i),
- a.length < 2
- ? c[0]
- ? bn(c[0].x)
- : xn(n)
- : (n = c.length, function (t) {
- for (var e, r = 0; r < n; ++r)
- a[(e = c[r]).i] = e.x(t);
- return a.join("")
- })
- },
- _p = function (t, n) {
- var e,
- r = typeof n;
- return null == n || "boolean" === r
- ? op(n)
- : ("number" === r
- ? lp
- : "string" === r
- ? (e = Bt(n))
- ? (n = e, up)
- : vp
- : n instanceof Bt
- ? up
- : n instanceof Date
- ? fp
- : Array.isArray(n)
- ? sp
- : isNaN(n)
- ? hp
- : lp)(t, n)
- },
- yp = function (t, n) {
- return t =+ t,
- n -= t,
- function (e) {
- return Math.round(t + n * e)
- }
- },
- gp = 180 / Math.PI,
- mp = {
- translateX: 0,
- translateY: 0,
- rotate: 0,
- skewX: 0,
- scaleX: 1,
- scaleY: 1
- },
- xp = function (t, n, e, r, i, o) {
- var u,
- a,
- c;
- return (u = Math.sqrt(t * t + n * n)) && (t /= u, n /= u),
- (c = t * e + n * r) && (e -= t * c, r -= n * c),
- (a = Math.sqrt(e * e + r * r)) && (e /= a, r /= a, c /= a),
- t * r < n * e && (t = -t, n = -n, c = -c, u = -u), {
- translateX: i,
- translateY: o,
- rotate: Math.atan2(n, t) * gp,
- skewX: Math.atan(c) * gp,
- scaleX: u,
- scaleY: a
- }
- },
- bp = Tn(wn, "px, ", "px)", "deg)"),
- wp = Tn(Mn, ", ", ")", ")"),
- Mp = Math.SQRT2,
- Tp = 2,
- Np = 4,
- kp = 1e-12,
- Sp = function (t, n) {
- var e,
- r,
- i = t[0],
- o = t[1],
- u = t[2],
- a = n[0],
- c = n[1],
- s = n[2],
- f = a - i,
- l = c - o,
- h = f * f + l * l;
- if (h < kp)
- r = Math.log(s / u) / Mp,
- e = function (t) {
- return [
- i + t * f,
- o + t * l,
- u * Math.exp(Mp * t * r)
- ]
- };
- else {
- var p = Math.sqrt(h),
- d = (s * s - u * u + Np * h) / (2 * u * Tp * p),
- v = (s * s - u * u - Np * h) / (2 * s * Tp * p),
- _ = Math.log(Math.sqrt(d * d + 1) - d),
- y = Math.log(Math.sqrt(v * v + 1) - v);
- r = (y - _) / Mp,
- e = function (t) {
- var n = t * r,
- e = Nn(_),
- a = u / (Tp * p) * (e * Sn(Mp * n + _) - kn(_));
- return [
- i + a * f,
- o + a * l,
- u * e / Nn(Mp * n + _)
- ]
- }
- }
- return e.duration = 1e3 * r,
- e
- },
- Ap = An(_n),
- Ep = An(gn),
- Cp = Cn(_n),
- zp = Cn(gn),
- Pp = zn(_n),
- qp = zn(gn),
- Lp = function (t, n) {
- for (var e = new Array(n), r = 0; r < n; ++r)
- e[r] = t(r / (n - 1));
- return e
- },
- Rp = {
- value: function () {}
- };
- qn.prototype = Pn.prototype = {
- constructor: qn,
- on: function (t, n) {
- var e,
- r = this._,
- i = Ln(t + "", r),
- o = -1,
- u = i.length;
- {
- if (!(arguments.length < 2)) {
- if (null != n && "function" != typeof n)
- throw new Error("invalid callback: " + n);
- for (; ++o < u;)
- if (e = (t = i[o]).type)
- r[e] = Un(r[e], t.name, n);
- else if (null == n)
- for (e in r)
- r[e] = Un(r[e], t.name, null);
- return this
- }
- for (; ++o < u;)
- if ((e = (t = i[o]).type) && (e = Rn(r[e], t.name)))
- return e
- }
- },
- copy: function () {
- var t = {},
- n = this._;
- for (var e in n)
- t[e] = n[e].slice();
- return new qn(t)
- },
- call: function (t, n) {
- if ((e = arguments.length - 2) > 0)
- for (var e, r, i = new Array(e), o = 0; o < e; ++o)
- i[o] = arguments[o + 2];
- if (!this._.hasOwnProperty(t))
- throw new Error("unknown type: " + t);
- for (r = this._[t], o = 0, e = r.length; o < e; ++o)
- r[o].value.apply(n, i)
- },
- apply: function (t, n, e) {
- if (!this._.hasOwnProperty(t))
- throw new Error("unknown type: " + t);
- for (var r = this._[t], i = 0, o = r.length; i < o; ++i)
- r[i].value.apply(n, e)
- }
- };
- var Up,
- Dp,
- Op = function (t) {
- function n(t, n) {
- var r,
- i,
- o = e(t, function (t, e) {
- return r
- ? r(t, e - 1)
- : (i = t, void(r = n
- ? On(t, n)
- : Dn(t)))
- });
- return o.columns = i,
- o
- }
- function e(t, n) {
- function e() {
- if (f >= s)
- return u;
- if (i)
- return i = !1,
- o;
- var n,
- e = f;
- if (34 === t.charCodeAt(e)) {
- for (var r = e; r++ < s;)
- if (34 === t.charCodeAt(r)) {
- if (34 !== t.charCodeAt(r + 1))
- break;
-
- ++r
- }
- return f = r + 2,
- n = t.charCodeAt(r + 1),
- 13 === n
- ? (i = !0, 10 === t.charCodeAt(r + 2) && ++f)
- : 10 === n && (i = !0),
- t
- .slice(e + 1, r)
- .replace(/""/g, '"')
- }
- for (; f < s;) {
- var a = 1;
- if (n = t.charCodeAt(f++), 10 === n)
- i = !0;
- else if (13 === n)
- i = !0,
- 10 === t.charCodeAt(f) && (++f, ++a);
- else if (n !== c)
- continue;
- return t.slice(e, f - a)
- }
- return t.slice(e)
- }
- for (var r, i, o = {}, u = {}, a = [], s = t.length, f = 0, l = 0; (r = e()) !== u;) {
- for (var h = []; r !== o && r !== u;)
- h.push(r),
- r = e();
- n && null == (h = n(h, l++)) || a.push(h)
- }
- return a
- }
- function r(n, e) {
- return null == e && (e = Fn(n)),
- [
- e
- .map(u)
- .join(t)
- ].concat(n.map(function (n) {
- return e.map(function (t) {
- return u(n[t])
- }).join(t)
- })).join("\n")
- }
- function i(t) {
- return t
- .map(o)
- .join("\n")
- }
- function o(n) {
- return n
- .map(u)
- .join(t)
- }
- function u(t) {
- return null == t
- ? ""
- : a.test(t += "")
- ? '"' + t.replace(/\"/g, '""') + '"'
- : t
- }
- var a = new RegExp('["' + t + "\n]"),
- c = t.charCodeAt(0);
- return {parse: n, parseRows: e, format: r, formatRows: i}
- },
- Fp = Op(","),
- Ip = Fp.parse,
- Yp = Fp.parseRows,
- Bp = Fp.format,
- jp = Fp.formatRows,
- Hp = Op("\t"),
- Xp = Hp.parse,
- Vp = Hp.parseRows,
- Wp = Hp.format,
- $p = Hp.formatRows,
- Zp = function (t, n) {
- function e(t) {
- var n,
- e = f.status;
- if (!e && Yn(f) || e >= 200 && e < 300 || 304 === e) {
- if (u)
- try {
- n = u.call(r, f)
- } catch (t) {
- return void c.call("error", r, t)
- }
- else
- n = f;
- c.call("load", r, n)
- } else
- c.call("error", r, t)
- }
- var r,
- i,
- u,
- a,
- c = Pn("beforesend", "progress", "load", "error"),
- s = o(),
- f = new XMLHttpRequest,
- l = null,
- h = null,
- p = 0;
- if ("undefined" == typeof XDomainRequest || "withCredentials" in f || !/^(http(s)?:)?\/\//.test(t) || (f = new XDomainRequest), "onload" in f
- ? f.onload = f.onerror = f.ontimeout = e
- : f.onreadystatechange = function (t) {
- f.readyState > 3 && e(t)
- },
- f.onprogress = function (t) {
- c.call("progress", r, t)
- },
- r = {
- header: function (t, n) {
- return t = (t + "").toLowerCase(),
- arguments.length < 2
- ? s.get(t)
- : (null == n
- ? s.remove(t)
- : s.set(t, n + ""), r)
- },
- mimeType: function (t) {
- return arguments.length
- ? (i = null == t
- ? null
- : t + "", r)
- : i
- },
- responseType: function (t) {
- return arguments.length
- ? (a = t, r)
- : a
- },
- timeout: function (t) {
- return arguments.length
- ? (p =+ t, r)
- : p
- },
- user: function (t) {
- return arguments.length < 1
- ? l
- : (l = null == t
- ? null
- : t + "", r)
- },
- password: function (t) {
- return arguments.length < 1
- ? h
- : (h = null == t
- ? null
- : t + "", r)
- },
- response: function (t) {
- return u = t,
- r
- },
- get: function (t, n) {
- return r.send("GET", t, n)
- },
- post: function (t, n) {
- return r.send("POST", t, n)
- },
- send: function (n, e, o) {
- return f.open(n, t, !0, l, h),
- null == i || s.has("accept") || s.set("accept", i + ",*/*"),
- f.setRequestHeader && s.each(function (t, n) {
- f.setRequestHeader(n, t)
- }),
- null != i && f.overrideMimeType && f.overrideMimeType(i),
- null != a && (f.responseType = a),
- p > 0 && (f.timeout = p),
- null == o && "function" == typeof e && (o = e, e = null),
- null != o && 1 === o.length && (o = In(o)),
- null != o && r
- .on("error", o)
- .on("load", function (t) {
- o(null, t)
- }),
- c.call("beforesend", r, f),
- f.send(null == e
- ? null
- : e),
- r
- },
- abort: function () {
- return f.abort(),
- r
- },
- on: function () {
- var t = c
- .on
- .apply(c, arguments);
- return t === c
- ? r
- : t
- }
- },
- null != n) {
- if ("function" != typeof n)
- throw new Error("invalid callback: " + n);
- return r.get(n)
- }
- return r
- },
- Gp = function (t, n) {
- return function (e, r) {
- var i = Zp(e)
- .mimeType(t)
- .response(n);
- if (null != r) {
- if ("function" != typeof r)
- throw new Error("invalid callback: " + r);
- return i.get(r)
- }
- return i
- }
- },
- Jp = Gp("text/html", function (t) {
- return document
- .createRange()
- .createContextualFragment(t.responseText)
- }),
- Qp = Gp("application/json", function (t) {
- return JSON.parse(t.responseText)
- }),
- Kp = Gp("text/plain", function (t) {
- return t.responseText
- }),
- td = Gp("application/xml", function (t) {
- var n = t.responseXML;
- if (!n)
- throw new Error("parse error");
- return n
- }),
- nd = function (t, n) {
- return function (e, r, i) {
- arguments.length < 3 && (i = r, r = null);
- var o = Zp(e).mimeType(t);
- return o.row = function (t) {
- return arguments.length
- ? o.response(Bn(n, r = t))
- : r
- },
- o.row(r),
- i
- ? o.get(i)
- : o
- }
- },
- ed = nd("text/csv", Ip),
- rd = nd("text/tab-separated-values", Xp),
- id = 0,
- od = 0,
- ud = 0,
- ad = 1e3,
- cd = 0,
- sd = 0,
- fd = 0,
- ld = "object" == typeof performance && performance.now
- ? performance
- : Date,
- hd = "function" == typeof requestAnimationFrame
- ? requestAnimationFrame
- : function (t) {
- setTimeout(t, 17)
- };
- Xn.prototype = Vn.prototype = {
- constructor: Xn,
- restart: function (t, n, e) {
- if ("function" != typeof t)
- throw new TypeError("callback is not a function");
- e = (null == e
- ? jn() :+ e) + (null == n
- ? 0 :+ n),
- this._next || Dp === this || (Dp
- ? Dp._next = this
- : Up = this, Dp = this),
- this._call = t,
- this._time = e,
- Jn()
- },
- stop: function () {
- this._call && (this._call = null, this._time = 1 / 0, Jn())
- }
- };
- var pd = function (t, n, e) {
- var r = new Xn;
- return n = null == n
- ? 0 :+ n,
- r.restart(function (e) {
- r.stop(),
- t(e + n)
- }, n, e),
- r
- },
- dd = function (t, n, e) {
- var r = new Xn,
- i = n;
- return null == n
- ? (r.restart(t, n, e), r)
- : (n =+ n, e = null == e
- ? jn() :+ e, r.restart(function o(u) {
- u += i,
- r.restart(o, i += n, e),
- t(u)
- }, n, e), r)
- },
- vd = new Date,
- _d = new Date,
- yd = Qn(function () {}, function (t, n) {
- t.setTime(+ t + n)
- }, function (t, n) {
- return n - t
- });
- yd.every = function (t) {
- return t = Math.floor(t),
- isFinite(t) && t > 0
- ? t > 1
- ? Qn(function (n) {
- n.setTime(Math.floor(n / t) * t)
- }, function (n, e) {
- n.setTime(+ n + e * t)
- }, function (n, e) {
- return (e - n) / t
- })
- : yd
- : null
- };
- var gd = yd.range,
- md = 1e3,
- xd = 6e4,
- bd = 36e5,
- wd = 864e5,
- Md = 6048e5,
- Td = Qn(function (t) {
- t.setTime(Math.floor(t / md) * md)
- }, function (t, n) {
- t.setTime(+ t + n * md)
- }, function (t, n) {
- return (n - t) / md
- }, function (t) {
- return t.getUTCSeconds()
- }),
- Nd = Td.range,
- kd = Qn(function (t) {
- t.setTime(Math.floor(t / xd) * xd)
- }, function (t, n) {
- t.setTime(+ t + n * xd)
- }, function (t, n) {
- return (n - t) / xd
- }, function (t) {
- return t.getMinutes()
- }),
- Sd = kd.range,
- Ad = Qn(function (t) {
- var n = t.getTimezoneOffset() * xd % bd;
- n < 0 && (n += bd),
- t.setTime(Math.floor((+ t - n) / bd) * bd + n)
- }, function (t, n) {
- t.setTime(+ t + n * bd)
- }, function (t, n) {
- return (n - t) / bd
- }, function (t) {
- return t.getHours()
- }),
- Ed = Ad.range,
- Cd = Qn(function (t) {
- t.setHours(0, 0, 0, 0)
- }, function (t, n) {
- t.setDate(t.getDate() + n)
- }, function (t, n) {
- return (n - t - (n.getTimezoneOffset() - t.getTimezoneOffset()) * xd) / wd
- }, function (t) {
- return t.getDate() - 1
- }),
- zd = Cd.range,
- Pd = Kn(0),
- qd = Kn(1),
- Ld = Kn(2),
- Rd = Kn(3),
- Ud = Kn(4),
- Dd = Kn(5),
- Od = Kn(6),
- Fd = Pd.range,
- Id = qd.range,
- Yd = Ld.range,
- Bd = Rd.range,
- jd = Ud.range,
- Hd = Dd.range,
- Xd = Od.range,
- Vd = Qn(function (t) {
- t.setDate(1),
- t.setHours(0, 0, 0, 0)
- }, function (t, n) {
- t.setMonth(t.getMonth() + n)
- }, function (t, n) {
- return n.getMonth() - t.getMonth() + 12 * (n.getFullYear() - t.getFullYear())
- }, function (t) {
- return t.getMonth()
- }),
- Wd = Vd.range,
- $d = Qn(function (t) {
- t.setMonth(0, 1),
- t.setHours(0, 0, 0, 0)
- }, function (t, n) {
- t.setFullYear(t.getFullYear() + n)
- }, function (t, n) {
- return n.getFullYear() - t.getFullYear()
- }, function (t) {
- return t.getFullYear()
- });
- $d.every = function (t) {
- return isFinite(t = Math.floor(t)) && t > 0
- ? Qn(function (n) {
- n.setFullYear(Math.floor(n.getFullYear() / t) * t),
- n.setMonth(0, 1),
- n.setHours(0, 0, 0, 0)
- }, function (n, e) {
- n.setFullYear(n.getFullYear() + e * t)
- })
- : null
- };
- var Zd = $d.range,
- Gd = Qn(function (t) {
- t.setUTCSeconds(0, 0)
- }, function (t, n) {
- t.setTime(+ t + n * xd)
- }, function (t, n) {
- return (n - t) / xd
- }, function (t) {
- return t.getUTCMinutes()
- }),
- Jd = Gd.range,
- Qd = Qn(function (t) {
- t.setUTCMinutes(0, 0, 0)
- }, function (t, n) {
- t.setTime(+ t + n * bd)
- }, function (t, n) {
- return (n - t) / bd
- }, function (t) {
- return t.getUTCHours()
- }),
- Kd = Qd.range,
- tv = Qn(function (t) {
- t.setUTCHours(0, 0, 0, 0)
- }, function (t, n) {
- t.setUTCDate(t.getUTCDate() + n)
- }, function (t, n) {
- return (n - t) / wd
- }, function (t) {
- return t.getUTCDate() - 1
- }),
- nv = tv.range,
- ev = te(0),
- rv = te(1),
- iv = te(2),
- ov = te(3),
- uv = te(4),
- av = te(5),
- cv = te(6),
- sv = ev.range,
- fv = rv.range,
- lv = iv.range,
- hv = ov.range,
- pv = uv.range,
- dv = av.range,
- vv = cv.range,
- _v = Qn(function (t) {
- t.setUTCDate(1),
- t.setUTCHours(0, 0, 0, 0)
- }, function (t, n) {
- t.setUTCMonth(t.getUTCMonth() + n)
- }, function (t, n) {
- return n.getUTCMonth() - t.getUTCMonth() + 12 * (n.getUTCFullYear() - t.getUTCFullYear())
- }, function (t) {
- return t.getUTCMonth()
- }),
- yv = _v.range,
- gv = Qn(function (t) {
- t.setUTCMonth(0, 1),
- t.setUTCHours(0, 0, 0, 0)
- }, function (t, n) {
- t.setUTCFullYear(t.getUTCFullYear() + n)
- }, function (t, n) {
- return n.getUTCFullYear() - t.getUTCFullYear()
- }, function (t) {
- return t.getUTCFullYear()
- });
- gv.every = function (t) {
- return isFinite(t = Math.floor(t)) && t > 0
- ? Qn(function (n) {
- n.setUTCFullYear(Math.floor(n.getUTCFullYear() / t) * t),
- n.setUTCMonth(0, 1),
- n.setUTCHours(0, 0, 0, 0)
- }, function (n, e) {
- n.setUTCFullYear(n.getUTCFullYear() + e * t)
- })
- : null
- };
- var mv,
- xv = gv.range,
- bv = function (t, n) {
- if ((e = (t = n
- ? t.toExponential(n - 1)
- : t.toExponential()).indexOf("e")) < 0)
- return null;
- var e,
- r = t.slice(0, e);
- return [
- r.length > 1
- ? r[0] + r.slice(2)
- : r, + t.slice(e + 1)
- ]
- },
- wv = function (t) {
- return t = bv(Math.abs(t)),
- t
- ? t[1]
- : NaN
- },
- Mv = function (t, n) {
- return function (e, r) {
- for (var i = e.length, o = [], u = 0, a = t[0], c = 0; i > 0 && a > 0 && (c + a + 1 > r && (a = Math.max(1, r - c)), o.push(e.substring(i -= a, i + a)), !((c += a + 1) > r));)
- a = t[u = (u + 1) % t.length];
- return o
- .reverse()
- .join(n)
- }
- },
- Tv = function (t, n) {
- t = t.toPrecision(n);
- t : for (var e, r = t.length, i = 1, o = -1; i < r; ++i)
- switch (t[i]) {
- case ".":
- o = e = i;
- break;
- case "0":
- 0 === o && (o = i),
- e = i;
- break;
- case "e":
- break t;
- default:
- o > 0 && (o = 0)
- }
- return o > 0
- ? t.slice(0, o) + t.slice(e + 1)
- : t
- },
- Nv = function (t, n) {
- var e = bv(t, n);
- if (!e)
- return t + "";
- var r = e[0],
- i = e[1],
- o = i - (mv = 3 * Math.max(-8, Math.min(8, Math.floor(i / 3)))) + 1,
- u = r.length;
- return o === u
- ? r
- : o > u
- ? r + new Array(o - u + 1).join("0")
- : o > 0
- ? r.slice(0, o) + "." + r.slice(o)
- : "0." + new Array(1 - o).join("0") + bv(t, Math.max(0, n + o - 1))[0]
- },
- kv = function (t, n) {
- var e = bv(t, n);
- if (!e)
- return t + "";
- var r = e[0],
- i = e[1];
- return i < 0
- ? "0." + new Array(-i).join("0") + r
- : r.length > i + 1
- ? r.slice(0, i + 1) + "." + r.slice(i + 1)
- : r + new Array(i - r.length + 2).join("0")
- },
- Sv = {
- "": Tv,
- "%": function (t, n) {
- return (100 * t).toFixed(n)
- },
- b: function (t) {
- return Math
- .round(t)
- .toString(2)
- },
- c: function (t) {
- return t + ""
- },
- d: function (t) {
- return Math
- .round(t)
- .toString(10)
- },
- e: function (t, n) {
- return t.toExponential(n)
- },
- f: function (t, n) {
- return t.toFixed(n)
- },
- g: function (t, n) {
- return t.toPrecision(n)
- },
- o: function (t) {
- return Math
- .round(t)
- .toString(8)
- },
- p: function (t, n) {
- return kv(100 * t, n)
- },
- r: kv,
- s: Nv,
- X: function (t) {
- return Math
- .round(t)
- .toString(16)
- .toUpperCase()
- },
- x: function (t) {
- return Math
- .round(t)
- .toString(16)
- }
- },
- Av = /^(?:(.)?([<>=^]))?([+\-\( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?([a-z%])?$/i,
- Ev = function (t) {
- return new ne(t)
- };
- ne.prototype.toString = function () {
- return this.fill + this.align + this.sign + this.symbol + (this.zero
- ? "0"
- : "") + (null == this.width
- ? ""
- : Math.max(1, 0 | this.width)) + (this.comma
- ? ","
- : "") + (null == this.precision
- ? ""
- : "." + Math.max(0, 0 | this.precision)) + this.type
- };
- var Cv,
- zv = [
- "y",
- "z",
- "a",
- "f",
- "p",
- "n",
- "µ",
- "m",
- "",
- "k",
- "M",
- "G",
- "T",
- "P",
- "E",
- "Z",
- "Y"
- ],
- Pv = function (t) {
- function n(t) {
- function n(t) {
- var n,
- i,
- c,
- g = d,
- m = v;
- if ("c" === p)
- m = _(t) + m,
- t = "";
- else {
- t =+ t;
- var x = (t < 0 || 1 / t < 0) && (t *= -1, !0);
- if (t = _(t, h), x)
- for (n = -1, i = t.length, x = !1; ++n < i;)
- if (c = t.charCodeAt(n), 48 < c && c < 58 || "x" === p && 96 < c && c < 103 || "X" === p && 64 < c && c < 71) {
- x = !0;
- break
- }
- if (g = (x
- ? "(" === a
- ? a
- : "-"
- : "-" === a || "(" === a
- ? ""
- : a) + g, m = m + ("s" === p
- ? zv[8 + mv / 3]
- : "") + (x && "(" === a
- ? ")"
- : ""), y)
- for (n = -1, i = t.length; ++n < i;)
- if (c = t.charCodeAt(n), 48 > c || c > 57) {
- m = (46 === c
- ? o + t.slice(n + 1)
- : t.slice(n)) + m,
- t = t.slice(0, n);
- break
- }
- }
- l && !s && (t = r(t, 1 / 0));
- var b = g.length + t.length + m.length,
- w = b < f
- ? new Array(f - b + 1).join(e)
- : "";
- switch (l && s && (t = r(w + t, w.length
- ? f - m.length
- : 1 / 0), w = ""), u) {
- case "<":
- return g + t + m + w;
- case "=":
- return g + w + t + m;
- case "^":
- return w.slice(0, b = w.length >> 1) + g + t + m + w.slice(b)
- }
- return w + g + t + m
- }
- t = Ev(t);
- var e = t.fill,
- u = t.align,
- a = t.sign,
- c = t.symbol,
- s = t.zero,
- f = t.width,
- l = t.comma,
- h = t.precision,
- p = t.type,
- d = "$" === c
- ? i[0]
- : "#" === c && /[boxX]/.test(p)
- ? "0" + p.toLowerCase()
- : "",
- v = "$" === c
- ? i[1]
- : /[%p]/.test(p)
- ? "%"
- : "",
- _ = Sv[p],
- y = !p || /[defgprs%]/.test(p);
- return h = null == h
- ? p
- ? 6
- : 12
- : /[gprs]/.test(p)
- ? Math.max(1, Math.min(21, h))
- : Math.max(0, Math.min(20, h)),
- n.toString = function () {
- return t + ""
- },
- n
- }
- function e(t, e) {
- var r = n((t = Ev(t), t.type = "f", t)),
- i = 3 * Math.max(-8, Math.min(8, Math.floor(wv(e) / 3))),
- o = Math.pow(10, -i),
- u = zv[8 + i / 3];
- return function (t) {
- return r(o * t) + u
- }
- }
- var r = t.grouping && t.thousands
- ? Mv(t.grouping, t.thousands)
- : ee,
- i = t.currency,
- o = t.decimal;
- return {format: n, formatPrefix: e}
- };
- re({
- decimal: ".",
- thousands: ",",
- grouping: [3],
- currency: ["$", ""]
- });
- var qv,
- Lv = function (t) {
- return Math.max(0, -wv(Math.abs(t)))
- },
- Rv = function (t, n) {
- return Math.max(0, 3 * Math.max(-8, Math.min(8, Math.floor(wv(n) / 3))) - wv(Math.abs(t)))
- },
- Uv = function (t, n) {
- return t = Math.abs(t),
- n = Math.abs(n) - t,
- Math.max(0, wv(n) - wv(t)) + 1
- },
- Dv = {
- "-": "",
- _: " ",
- 0: "0"
- },
- Ov = /^\s*\d+/,
- Fv = /^%/,
- Iv = /[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g;
- nr({
- dateTime: "%x, %X",
- date: "%-m/%-d/%Y",
- time: "%-I:%M:%S %p",
- periods: [
- "AM", "PM"
- ],
- days: [
- "Sunday",
- "Monday",
- "Tuesday",
- "Wednesday",
- "Thursday",
- "Friday",
- "Saturday"
- ],
- shortDays: [
- "Sun",
- "Mon",
- "Tue",
- "Wed",
- "Thu",
- "Fri",
- "Sat"
- ],
- months: [
- "January",
- "February",
- "March",
- "April",
- "May",
- "June",
- "July",
- "August",
- "September",
- "October",
- "November",
- "December"
- ],
- shortMonths: [
- "Jan",
- "Feb",
- "Mar",
- "Apr",
- "May",
- "Jun",
- "Jul",
- "Aug",
- "Sep",
- "Oct",
- "Nov",
- "Dec"
- ]
- });
- var Yv = "%Y-%m-%dT%H:%M:%S.%LZ",
- Bv = Date.prototype.toISOString
- ? er
- : t.utcFormat(Yv),
- jv =+ new Date("2000-01-01T00:00:00.000Z")
- ? rr
- : t.utcParse(Yv),
- Hv = Array.prototype,
- Xv = Hv.map,
- Vv = Hv.slice,
- Wv = {
- name: "implicit"
- },
- $v = function (t) {
- return function () {
- return t
- }
- },
- Zv = function (t) {
- return + t
- },
- Gv = [
- 0, 1
- ],
- Jv = function (n, r, i) {
- var o,
- u = n[0],
- a = n[n.length - 1],
- c = e(u, a, null == r
- ? 10
- : r);
- switch (i = Ev(null == i
- ? ",f"
- : i), i.type) {
- case "s":
- var s = Math.max(Math.abs(u), Math.abs(a));
- return null != i.precision || isNaN(o = Rv(c, s)) || (i.precision = o),
- t.formatPrefix(i, s);
- case "":
- case "e":
- case "g":
- case "p":
- case "r":
- null != i.precision || isNaN(o = Uv(c, Math.max(Math.abs(u), Math.abs(a)))) || (i.precision = o - ("e" === i.type));
- break;
- case "f":
- case "%":
- null != i.precision || isNaN(o = Lv(c)) || (i.precision = o - 2 * ("%" === i.type))
- }
- return t.format(i)
- },
- Qv = function (t, n) {
- t = t.slice();
- var e,
- r = 0,
- i = t.length - 1,
- o = t[r],
- u = t[i];
- return u < o && (e = r, r = i, i = e, e = o, o = u, u = e),
- t[r] = n.floor(o),
- t[i] = n.ceil(u),
- t
- },
- Kv = 1e3,
- t_ = 60 * Kv,
- n_ = 60 * t_,
- e_ = 24 * n_,
- r_ = 7 * e_,
- i_ = 30 * e_,
- o_ = 365 * e_,
- u_ = function () {
- return qr($d, Vd, Pd, Cd, Ad, kd, Td, yd, t.timeFormat).domain([
- new Date(2e3, 0, 1),
- new Date(2e3, 0, 2)
- ])
- },
- a_ = function () {
- return qr(gv, _v, ev, tv, Qd, Gd, Td, yd, t.utcFormat).domain([
- Date.UTC(2e3, 0, 1),
- Date.UTC(2e3, 0, 2)
- ])
- },
- c_ = function (t) {
- return t
- .match(/.{6}/g)
- .map(function (t) {
- return "#" + t
- })
- },
- s_ = c_("1f77b4ff7f0e2ca02cd627289467bd8c564be377c27f7f7fbcbd2217becf"),
- f_ = c_("393b795254a36b6ecf9c9ede6379398ca252b5cf6bcedb9c8c6d31bd9e39e7ba52e7cb94843c39ad" +
- "494ad6616be7969c7b4173a55194ce6dbdde9ed6"),
- l_ = c_("3182bd6baed69ecae1c6dbefe6550dfd8d3cfdae6bfdd0a231a35474c476a1d99bc7e9c0756bb19e" +
- "9ac8bcbddcdadaeb636363969696bdbdbdd9d9d9"),
- h_ = c_("1f77b4aec7e8ff7f0effbb782ca02c98df8ad62728ff98969467bdc5b0d58c564bc49c94e377c2f7" +
- "b6d27f7f7fc7c7c7bcbd22dbdb8d17becf9edae5"),
- p_ = qp(ln(300, .5, 0), ln(-240, .5, 1)),
- d_ = qp(ln(-100, .75, .35), ln(80, 1.5, .8)),
- v_ = qp(ln(260, .75, .35), ln(80, 1.5, .8)),
- __ = ln(),
- y_ = function (t) {
- (t < 0 || t > 1) && (t -= Math.floor(t));
- var n = Math.abs(t - .5);
- return __.h = 360 * t - 100,
- __.s = 1.5 - 1.5 * n,
- __.l = .8 - .9 * n,
- __ + ""
- },
- g_ = Lr(c_("44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548" +
- "146748166848176948186a481a6c481b6d481c6e481d6f481f704820714821734823744824754825" +
- "76482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581" +
- "453781453882443983443a83443b84433d84433e85423f8542408642418641428741448740458840" +
- "46883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a54" +
- "8c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d" +
- "33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d" +
- "708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c" +
- "8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e" +
- "23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f" +
- "958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1" +
- "871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad81" +
- "28ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773a" +
- "ba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c5" +
- "6954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece58" +
- "70cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590" +
- "d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd" +
- "2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21a" +
- "d8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8" +
- "e621fbe723fde725")),
- m_ = Lr(c_("00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07" +
- "061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e" +
- "38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e221150241253251255271258" +
- "29115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f" +
- "0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c5413" +
- "7d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c81" +
- "6a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e" +
- "24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b" +
- "80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327d" +
- "aa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf" +
- "3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd343" +
- "6ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064" +
- "e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3" +
- "655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d" +
- "5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668" +
- "fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77fe" +
- "b078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec8" +
- "8cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1" +
- "fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fc" +
- "f9bbfcfbbdfcfdbf")),
- x_ = Lr(c_("00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08" +
- "051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c" +
- "3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b59" +
- "2f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a6845" +
- "0a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a11" +
- "6e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e" +
- "71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85" +
- "216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28" +
- "659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305c" +
- "b0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c3" +
- "3b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d448" +
- "42d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933" +
- "e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef" +
- "6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f784" +
- "10f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06" +
- "fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fb" +
- "b61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf" +
- "3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865" +
- "f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9" +
- "fc9dfafda1fcffa4")),
- b_ = Lr(c_("0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c" +
- "05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d4303" +
- "9e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a4" +
- "5901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e" +
- "00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104" +
- "a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a2" +
- "9511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a6" +
- "2098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f" +
- "8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80" +
- "c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d0" +
- "4d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c" +
- "68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5d" +
- "e66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef" +
- "7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d" +
- "45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3a" +
- "fba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffd" +
- "b42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc8" +
- "27fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25" +
- "f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1" +
- "f525f0f724f0f921")),
- w_ = "http://www.w3.org/1999/xhtml",
- M_ = {
- svg: "http://www.w3.org/2000/svg",
- xhtml: w_,
- xlink: "http://www.w3.org/1999/xlink",
- xml: "http://www.w3.org/XML/1998/namespace",
- xmlns: "http://www.w3.org/2000/xmlns/"
- },
- T_ = function (t) {
- var n = t += "",
- e = n.indexOf(":");
- return e >= 0 && "xmlns" !== (n = t.slice(0, e)) && (t = t.slice(e + 1)),
- M_.hasOwnProperty(n)
- ? {
- space: M_[n],
- local: t
- }
- : t
- },
- N_ = function (t) {
- var n = T_(t);
- return (n.local
- ? Dr
- : Ur)(n)
- },
- k_ = 0;
- Fr.prototype = Or.prototype = {
- constructor: Fr,
- get: function (t) {
- for (var n = this._; !(n in t);)
- if (!(t = t.parentNode))
- return;
- return t[n]
- },
- set: function (t, n) {
- return t[this._] = n
- },
- remove: function (t) {
- return this._ in t && delete t[this._]
- },
- toString: function () {
- return this._
- }
- };
- var S_ = function (t) {
- return function () {
- return this.matches(t)
- }
- };
- if ("undefined" != typeof document) {
- var A_ = document.documentElement;
- if (!A_.matches) {
- var E_ = A_.webkitMatchesSelector || A_.msMatchesSelector || A_.mozMatchesSelector || A_.oMatchesSelector;
- S_ = function (t) {
- return function () {
- return E_.call(this, t)
- }
- }
- }
- }
- var C_ = S_,
- z_ = {};
- if (t.event = null, "undefined" != typeof document) {
- var P_ = document.documentElement;
- "onmouseenter" in P_ || (z_ = {
- mouseenter: "mouseover",
- mouseleave: "mouseout"
- })
- }
- var q_ = function (t, n, e) {
- var r,
- i,
- o = Br(t + ""),
- u = o.length;
- {
- if (!(arguments.length < 2)) {
- for (a = n
- ? Hr
- : jr, null == e && (e = !1), r = 0; r < u; ++r)
- this.each(a(o[r], n, e));
- return this
- }
- var a = this
- .node()
- .__on;
- if (a)
- for (var c, s = 0, f = a.length; s < f; ++s)
- for (r = 0, c = a[s]; r < u; ++r)
- if ((i = o[r]).type === c.type && i.name === c.name)
- return c.value
- }
- },
- L_ = function () {
- for (var n, e = t.event; n = e.sourceEvent;)
- e = n;
- return e
- },
- R_ = function (t, n) {
- var e = t.ownerSVGElement || t;
- if (e.createSVGPoint) {
- var r = e.createSVGPoint();
- return r.x = n.clientX,
- r.y = n.clientY,
- r = r.matrixTransform(t.getScreenCTM().inverse()),
- [r.x, r.y]
- }
- var i = t.getBoundingClientRect();
- return [
- n.clientX - i.left - t.clientLeft,
- n.clientY - i.top - t.clientTop
- ]
- },
- U_ = function (t) {
- var n = L_();
- return n.changedTouches && (n = n.changedTouches[0]),
- R_(t, n)
- },
- D_ = function (t) {
- return null == t
- ? Vr
- : function () {
- return this.querySelector(t)
- }
- },
- O_ = function (t) {
- "function" != typeof t && (t = D_(t));
- for (var n = this._groups, e = n.length, r = new Array(e), i = 0; i < e; ++i)
- for (var o, u, a = n[i], c = a.length, s = r[i] = new Array(c), f = 0; f < c; ++f)
- (o = a[f]) && (u = t.call(o, o.__data__, f, a)) && ("__data__" in o && (u.__data__ = o.__data__), s[f] = u);
- return new zi(r, this._parents)
- },
- F_ = function (t) {
- return null == t
- ? Wr
- : function () {
- return this.querySelectorAll(t)
- }
- },
- I_ = function (t) {
- "function" != typeof t && (t = F_(t));
- for (var n = this._groups, e = n.length, r = [], i = [], o = 0; o < e; ++o)
- for (var u, a = n[o], c = a.length, s = 0; s < c; ++s)
- (u = a[s]) && (r.push(t.call(u, u.__data__, s, a)), i.push(u));
- return new zi(r, i)
- },
- Y_ = function (t) {
- "function" != typeof t && (t = C_(t));
- for (var n = this._groups, e = n.length, r = new Array(e), i = 0; i < e; ++i)
- for (var o, u = n[i], a = u.length, c = r[i] = [], s = 0; s < a; ++s)
- (o = u[s]) && t.call(o, o.__data__, s, u) && c.push(o);
- return new zi(r, this._parents)
- },
- B_ = function (t) {
- return new Array(t.length)
- },
- j_ = function () {
- return new zi(this._enter || this._groups.map(B_), this._parents)
- };
- $r.prototype = {
- constructor: $r,
- appendChild: function (t) {
- return this
- ._parent
- .insertBefore(t, this._next)
- },
- insertBefore: function (t, n) {
- return this
- ._parent
- .insertBefore(t, n)
- },
- querySelector: function (t) {
- return this
- ._parent
- .querySelector(t)
- },
- querySelectorAll: function (t) {
- return this
- ._parent
- .querySelectorAll(t)
- }
- };
- var H_ = function (t) {
- return function () {
- return t
- }
- },
- X_ = "$",
- V_ = function (t, n) {
- if (!t)
- return p = new Array(this.size()),
- s = -1,
- this.each(function (t) {
- p[++s] = t
- }),
- p;
- var e = n
- ? Gr
- : Zr,
- r = this._parents,
- i = this._groups;
- "function" != typeof t && (t = H_(t));
- for (var o = i.length, u = new Array(o), a = new Array(o), c = new Array(o), s = 0; s < o; ++s) {
- var f = r[s],
- l = i[s],
- h = l.length,
- p = t.call(f, f && f.__data__, s, r),
- d = p.length,
- v = a[s] = new Array(d),
- _ = u[s] = new Array(d),
- y = c[s] = new Array(h);
- e(f, l, v, _, y, p, n);
- for (var g, m, x = 0, b = 0; x < d; ++x)
- if (g = v[x]) {
- for (x >= b && (b = x + 1); !(m = _[b]) && ++b < d;)
- ;
- g._next = m || null
- }
- }
- return u = new zi(u, r),
- u._enter = a,
- u._exit = c,
- u
- },
- W_ = function () {
- return new zi(this._exit || this._groups.map(B_), this._parents)
- },
- $_ = function (t) {
- for (var n = this._groups, e = t._groups, r = n.length, i = e.length, o = Math.min(r, i), u = new Array(r), a = 0; a < o; ++a)
- for (var c, s = n[a], f = e[a], l = s.length, h = u[a] = new Array(l), p = 0; p < l; ++p)
- (c = s[p] || f[p]) && (h[p] = c);
- for (; a < r; ++a)
- u[a] = n[a];
- return new zi(u, this._parents)
- },
- Z_ = function () {
- for (var t = this._groups, n = -1, e = t.length; ++n < e;)
- for (var r, i = t[n], o = i.length - 1, u = i[o]; --o >= 0;)
- (r = i[o]) && (u && u !== r.nextSibling && u.parentNode.insertBefore(r, u), u = r);
- return this
- },
- G_ = function (t) {
- function n(n, e) {
- return n && e
- ? t(n.__data__, e.__data__)
- : !n - !e
- }
- t || (t = Jr);
- for (var e = this._groups, r = e.length, i = new Array(r), o = 0; o < r; ++o) {
- for (var u, a = e[o], c = a.length, s = i[o] = new Array(c), f = 0; f < c; ++f)
- (u = a[f]) && (s[f] = u);
- s.sort(n)
- }
- return new zi(i, this._parents).order()
- },
- J_ = function () {
- var t = arguments[0];
- return arguments[0] = this,
- t.apply(null, arguments),
- this
- },
- Q_ = function () {
- var t = new Array(this.size()),
- n = -1;
- return this.each(function () {
- t[++n] = this
- }),
- t
- },
- K_ = function () {
- for (var t = this._groups, n = 0, e = t.length; n < e; ++n)
- for (var r = t[n], i = 0, o = r.length; i < o; ++i) {
- var u = r[i];
- if (u)
- return u
- }
- return null
- },
- ty = function () {
- var t = 0;
- return this.each(function () {
- ++t
- }),
- t
- },
- ny = function () {
- return !this.node()
- },
- ey = function (t) {
- for (var n = this._groups, e = 0, r = n.length; e < r; ++e)
- for (var i, o = n[e], u = 0, a = o.length; u < a; ++u)
- (i = o[u]) && t.call(i, i.__data__, u, o);
- return this
- },
- ry = function (t, n) {
- var e = T_(t);
- if (arguments.length < 2) {
- var r = this.node();
- return e.local
- ? r.getAttributeNS(e.space, e.local)
- : r.getAttribute(e)
- }
- return this.each((null == n
- ? e.local
- ? Kr
- : Qr
- : "function" == typeof n
- ? e.local
- ? ri
- : ei
- : e.local
- ? ni
- : ti)(e, n))
- },
- iy = function (t) {
- return t.ownerDocument && t.ownerDocument.defaultView || t.document && t || t.defaultView
- },
- oy = function (t, n, e) {
- var r;
- return arguments.length > 1
- ? this.each((null == n
- ? ii
- : "function" == typeof n
- ? ui
- : oi)(t, n, null == e
- ? ""
- : e))
- : iy(r = this.node())
- .getComputedStyle(r, null)
- .getPropertyValue(t)
- },
- uy = function (t, n) {
- return arguments.length > 1
- ? this.each((null == n
- ? ai
- : "function" == typeof n
- ? si
- : ci)(t, n))
- : this.node()[t]
- };
- hi.prototype = {
- add: function (t) {
- var n = this
- ._names
- .indexOf(t);
- n < 0 && (this._names.push(t), this._node.setAttribute("class", this._names.join(" ")))
- },
- remove: function (t) {
- var n = this
- ._names
- .indexOf(t);
- n >= 0 && (this._names.splice(n, 1), this._node.setAttribute("class", this._names.join(" ")))
- },
- contains: function (t) {
- return this
- ._names
- .indexOf(t) >= 0
- }
- };
- var ay = function (t, n) {
- var e = fi(t + "");
- if (arguments.length < 2) {
- for (var r = li(this.node()), i = -1, o = e.length; ++i < o;)
- if (!r.contains(e[i]))
- return !1;
- return !0
- }
- return this.each(("function" == typeof n
- ? yi
- : n
- ? vi
- : _i)(e, n))
- },
- cy = function (t) {
- return arguments.length
- ? this.each(null == t
- ? gi
- : ("function" == typeof t
- ? xi
- : mi)(t))
- : this
- .node()
- .textContent
- },
- sy = function (t) {
- return arguments.length
- ? this.each(null == t
- ? bi
- : ("function" == typeof t
- ? Mi
- : wi)(t))
- : this
- .node()
- .innerHTML
- },
- fy = function () {
- return this.each(Ti)
- },
- ly = function () {
- return this.each(Ni)
- },
- hy = function (t) {
- var n = "function" == typeof t
- ? t
- : N_(t);
- return this.select(function () {
- return this.appendChild(n.apply(this, arguments))
- })
- },
- py = function (t, n) {
- var e = "function" == typeof t
- ? t
- : N_(t),
- r = null == n
- ? ki
- : "function" == typeof n
- ? n
- : D_(n);
- return this.select(function () {
- return this.insertBefore(e.apply(this, arguments), r.apply(this, arguments) || null)
- })
- },
- dy = function () {
- return this.each(Si)
- },
- vy = function (t) {
- return arguments.length
- ? this.property("__data__", t)
- : this
- .node()
- .__data__
- },
- _y = function (t, n) {
- return this.each(("function" == typeof n
- ? Ci
- : Ei)(t, n))
- },
- yy = [null];
- zi.prototype = Pi.prototype = {
- constructor: zi,
- select: O_,
- selectAll: I_,
- filter: Y_,
- data: V_,
- enter: j_,
- exit: W_,
- merge: $_,
- order: Z_,
- sort: G_,
- call: J_,
- nodes: Q_,
- node: K_,
- size: ty,
- empty: ny,
- each: ey,
- attr: ry,
- style: oy,
- property: uy,
- classed: ay,
- text: cy,
- html: sy,
- raise: fy,
- lower: ly,
- append: hy,
- insert: py,
- remove: dy,
- datum: vy,
- on: q_,
- dispatch: _y
- };
- var gy = function (t) {
- return "string" == typeof t
- ? new zi([
- [document.querySelector(t)]
- ], [document.documentElement])
- : new zi([
- [t]
- ], yy)
- },
- my = function (t) {
- return "string" == typeof t
- ? new zi([document.querySelectorAll(t)], [document.documentElement])
- : new zi([null == t
- ? []
- : t], yy)
- },
- xy = function (t, n, e) {
- arguments.length < 3 && (e = n, n = L_().changedTouches);
- for (var r, i = 0, o = n
- ? n.length
- : 0; i < o; ++i)
- if ((r = n[i]).identifier === e)
- return R_(t, r);
- return null
- },
- by = function (t, n) {
- null == n && (n = L_().touches);
- for (var e = 0, r = n
- ? n.length
- : 0, i = new Array(r); e < r; ++e)
- i[e] = R_(t, n[e]);
- return i
- },
- wy = Pn("start", "end", "interrupt"),
- My = [],
- Ty = 0,
- Ny = 1,
- ky = 2,
- Sy = 3,
- Ay = 4,
- Ey = 5,
- Cy = 6,
- zy = function (t, n, e, r, i, o) {
- var u = t.__transition;
- if (u) {
- if (e in u)
- return
- } else
- t.__transition = {};
- Ui(t, e, {
- name: n,
- index: r,
- group: i,
- on: wy,
- tween: My,
- time: o.time,
- delay: o.delay,
- duration: o.duration,
- ease: o.ease,
- timer: null,
- state: Ty
- })
- },
- Py = function (t, n) {
- var e,
- r,
- i,
- o = t.__transition,
- u = !0;
- if (o) {
- n = null == n
- ? null
- : n + "";
- for (i in o)
- (e = o[i]).name === n
- ? (r = e.state > ky && e.state < Ey, e.state = Cy, e.timer.stop(), r && e.on.call("interrupt", t, t.__data__, e.index, e.group), delete o[i])
- : u = !1;
- u && delete t.__transition
- }
- },
- qy = function (t) {
- return this.each(function () {
- Py(this, t)
- })
- },
- Ly = function (t, n) {
- var e = this._id;
- if (t += "", arguments.length < 2) {
- for (var r, i = Ri(this.node(), e).tween, o = 0, u = i.length; o < u; ++o)
- if ((r = i[o]).name === t)
- return r.value;
- return null
- }
- return this.each((null == n
- ? Di
- : Oi)(e, t, n))
- },
- Ry = function (t, n) {
- var e;
- return ("number" == typeof n
- ? lp
- : n instanceof Bt
- ? up
- : (e = Bt(n))
- ? (n = e, up)
- : vp)(t, n)
- },
- Uy = function (t, n) {
- var e = T_(t),
- r = "transform" === e
- ? wp
- : Ry;
- return this.attrTween(t, "function" == typeof n
- ? (e.local
- ? Xi
- : Hi)(e, r, Fi(this, "attr." + t, n))
- : null == n
- ? (e.local
- ? Yi
- : Ii)(e)
- : (e.local
- ? ji
- : Bi)(e, r, n))
- },
- Dy = function (t, n) {
- var e = "attr." + t;
- if (arguments.length < 2)
- return (e = this.tween(e)) && e._value;
- if (null == n)
- return this.tween(e, null);
- if ("function" != typeof n)
- throw new Error;
- var r = T_(t);
- return this.tween(e, (r.local
- ? Vi
- : Wi)(r, n))
- },
- Oy = function (t) {
- var n = this._id;
- return arguments.length
- ? this.each(("function" == typeof t
- ? $i
- : Zi)(n, t))
- : Ri(this.node(), n).delay
- },
- Fy = function (t) {
- var n = this._id;
- return arguments.length
- ? this.each(("function" == typeof t
- ? Gi
- : Ji)(n, t))
- : Ri(this.node(), n).duration
- },
- Iy = function (t) {
- var n = this._id;
- return arguments.length
- ? this.each(Qi(n, t))
- : Ri(this.node(), n).ease
- },
- Yy = function (t) {
- "function" != typeof t && (t = C_(t));
- for (var n = this._groups, e = n.length, r = new Array(e), i = 0; i < e; ++i)
- for (var o, u = n[i], a = u.length, c = r[i] = [], s = 0; s < a; ++s)
- (o = u[s]) && t.call(o, o.__data__, s, u) && c.push(o);
- return new so(r, this._parents, this._name, this._id)
- },
- By = function (t) {
- if (t._id !== this._id)
- throw new Error;
- for (var n = this._groups, e = t._groups, r = n.length, i = e.length, o = Math.min(r, i), u = new Array(r), a = 0; a < o; ++a)
- for (var c, s = n[a], f = e[a], l = s.length, h = u[a] = new Array(l), p = 0; p < l; ++p)
- (c = s[p] || f[p]) && (h[p] = c);
- for (; a < r; ++a)
- u[a] = n[a];
- return new so(u, this._parents, this._name, this._id)
- },
- jy = function (t, n) {
- var e = this._id;
- return arguments.length < 2
- ? Ri(this.node(), e)
- .on
- .on(t)
- : this.each(to(e, t, n))
- },
- Hy = function () {
- return this.on("end.remove", no(this._id))
- },
- Xy = function (t) {
- var n = this._name,
- e = this._id;
- "function" != typeof t && (t = D_(t));
- for (var r = this._groups, i = r.length, o = new Array(i), u = 0; u < i; ++u)
- for (var a, c, s = r[u], f = s.length, l = o[u] = new Array(f), h = 0; h < f; ++h)
- (a = s[h]) && (c = t.call(a, a.__data__, h, s)) && ("__data__" in a && (c.__data__ = a.__data__), l[h] = c, zy(l[h], n, e, h, l, Ri(a, e)));
- return new so(o, this._parents, n, e)
- },
- Vy = function (t) {
- var n = this._name,
- e = this._id;
- "function" != typeof t && (t = F_(t));
- for (var r = this._groups, i = r.length, o = [], u = [], a = 0; a < i; ++a)
- for (var c, s = r[a], f = s.length, l = 0; l < f; ++l)
- if (c = s[l]) {
- for (var h, p = t.call(c, c.__data__, l, s), d = Ri(c, e), v = 0, _ = p.length; v < _; ++v)
- (h = p[v]) && zy(h, n, e, v, p, d);
- o.push(p),
- u.push(c)
- }
- return new so(o, u, n, e)
- },
- Wy = Pi.prototype.constructor,
- $y = function () {
- return new Wy(this._groups, this._parents)
- },
- Zy = function (t, n, e) {
- var r = "transform" == (t += "")
- ? bp
- : Ry;
- return null == n
- ? this
- .styleTween(t, eo(t, r))
- .on("end.style." + t, ro(t))
- : this.styleTween(t, "function" == typeof n
- ? oo(t, r, Fi(this, "style." + t, n))
- : io(t, r, n), e)
- },
- Gy = function (t, n, e) {
- var r = "style." + (t += "");
- if (arguments.length < 2)
- return (r = this.tween(r)) && r._value;
- if (null == n)
- return this.tween(r, null);
- if ("function" != typeof n)
- throw new Error;
- return this.tween(r, uo(t, n, null == e
- ? ""
- : e))
- },
- Jy = function (t) {
- return this.tween("text", "function" == typeof t
- ? co(Fi(this, "text", t))
- : ao(null == t
- ? ""
- : t + ""))
- },
- Qy = function () {
- for (var t = this._name, n = this._id, e = lo(), r = this._groups, i = r.length, o = 0; o < i; ++o)
- for (var u, a = r[o], c = a.length, s = 0; s < c; ++s)
- if (u = a[s]) {
- var f = Ri(u, n);
- zy(u, t, e, s, a, {
- time: f.time + f.delay + f.duration,
- delay: 0,
- duration: f.duration,
- ease: f.ease
- })
- }
- return new so(r, this._parents, t, e)
- },
- Ky = 0,
- tg = Pi.prototype;
- so.prototype = fo.prototype = {
- constructor: so,
- select: Xy,
- selectAll: Vy,
- filter: Yy,
- merge: By,
- selection: $y,
- transition: Qy,
- call: tg.call,
- nodes: tg.nodes,
- node: tg.node,
- size: tg.size,
- empty: tg.empty,
- each: tg.each,
- on: jy,
- attr: Uy,
- attrTween: Dy,
- style: Zy,
- styleTween: Gy,
- text: Jy,
- remove: Hy,
- tween: Ly,
- delay: Oy,
- duration: Fy,
- ease: Iy
- };
- var ng = {
- time: null,
- delay: 0,
- duration: 250,
- ease: g
- },
- eg = function (t) {
- var n,
- e;
- t instanceof so
- ? (n = t._id, t = t._name)
- : (n = lo(), (e = ng).time = jn(), t = null == t
- ? null
- : t + "");
- for (var r = this._groups, i = r.length, o = 0; o < i; ++o)
- for (var u, a = r[o], c = a.length, s = 0; s < c; ++s)
- (u = a[s]) && zy(u, t, n, s, a, e || ho(u, n));
- return new so(r, this._parents, t, n)
- };
- Pi.prototype.interrupt = qy,
- Pi.prototype.transition = eg;
- var rg = [null],
- ig = function (t, n) {
- var e,
- r,
- i = t.__transition;
- if (i) {
- n = null == n
- ? null
- : n + "";
- for (r in i)
- if ((e = i[r]).state > Ny && e.name === n)
- return new so([
- [t]
- ], rg, n, + r)
- }
- return null
- },
- og = Array.prototype.slice,
- ug = function (t) {
- return t
- },
- ag = 1,
- cg = 2,
- sg = 3,
- fg = 4,
- lg = 1e-6,
- hg = function () {
- function t(t) {
- var o,
- u = 0;
- t.eachAfter(function (t) {
- var e = t.children;
- e
- ? (t.x = To(e), t.y = ko(e))
- : (t.x = o
- ? u += n(t, o)
- : 0, t.y = 0, o = t)
- });
- var a = Ao(t),
- c = Eo(t),
- s = a.x - n(a, c) / 2,
- f = c.x + n(c, a) / 2;
- return t.eachAfter(i
- ? function (n) {
- n.x = (n.x - t.x) * e,
- n.y = (t.y - n.y) * r
- }
- : function (n) {
- n.x = (n.x - s) / (f - s) * e,
- n.y = (1 - (t.y
- ? n.y / t.y
- : 1)) * r
- })
- }
- var n = Mo,
- e = 1,
- r = 1,
- i = !1;
- return t.separation = function (e) {
- return arguments.length
- ? (n = e, t)
- : n
- },
- t.size = function (n) {
- return arguments.length
- ? (i = !1, e =+ n[0], r =+ n[1], t)
- : i
- ? null
- : [e, r]
- },
- t.nodeSize = function (n) {
- return arguments.length
- ? (i = !0, e =+ n[0], r =+ n[1], t)
- : i
- ? [e, r]
- : null
- },
- t
- },
- pg = function (t) {
- var n,
- e,
- r,
- i,
- o = this,
- u = [o];
- do
- for (n = u.reverse(), u = []; o = n.pop();)
- if (t(o), e = o.children)
- for (r = 0, i = e.length; r < i; ++r)
- u.push(e[r]);
- while (u.length);
- return this
- },
- dg = function (t) {
- for (var n, e, r = this, i = [r]; r = i.pop();)
- if (t(r), n = r.children)
- for (e = n.length - 1; e >= 0; --e)
- i.push(n[e]);
- return this
- },
- vg = function (t) {
- for (var n, e, r, i = this, o = [i], u = []; i = o.pop();)
- if (u.push(i), n = i.children)
- for (e = 0, r = n.length; e < r; ++e)
- o.push(n[e]);
- for (; i = u.pop();)
- t(i);
- return this
- },
- _g = function (t) {
- return this.eachAfter(function (n) {
- for (var e =+ t(n.data) || 0, r = n.children, i = r && r.length; --i >= 0;)
- e += r[i].value;
- n.value = e
- })
- },
- yg = function (t) {
- return this.eachBefore(function (n) {
- n.children && n
- .children
- .sort(t)
- })
- },
- gg = function (t) {
- for (var n = this, e = Co(n, t), r = [n]; n !== e;)
- n = n.parent,
- r.push(n);
- for (var i = r.length; t !== e;)
- r.splice(i, 0, t),
- t = t.parent;
- return r
- },
- mg = function () {
- for (var t = this, n = [t]; t = t.parent;)
- n.push(t);
- return n
- },
- xg = function () {
- var t = [];
- return this.each(function (n) {
- t.push(n)
- }),
- t
- },
- bg = function () {
- var t = [];
- return this.eachBefore(function (n) {
- n.children || t.push(n)
- }),
- t
- },
- wg = function () {
- var t = this,
- n = [];
- return t.each(function (e) {
- e !== t && n.push({source: e.parent, target: e})
- }),
- n
- };
- Uo.prototype = zo.prototype = {
- constructor: Uo,
- each: pg,
- eachAfter: vg,
- eachBefore: dg,
- sum: _g,
- sort: yg,
- path: gg,
- ancestors: mg,
- descendants: xg,
- leaves: bg,
- links: wg,
- copy: Po
- };
- var Mg = function (t) {
- for (var n, e = (t = t.slice()).length, r = null, i = r; e;) {
- var o = new Do(t[e - 1]);
- i = i
- ? i.next = o
- : r = o,
- t[n] = t[--e]
- }
- return {head: r, tail: i}
- },
- Tg = function (t) {
- return Fo(Mg(t), [])
- },
- Ng = function (t) {
- return Wo(t),
- t
- },
- kg = function (t) {
- return function () {
- return t
- }
- },
- Sg = function () {
- function t(t) {
- return t.x = e / 2,
- t.y = r / 2,
- n
- ? t
- .eachBefore(Qo(n))
- .eachAfter(Ko(i, .5))
- .eachBefore(tu(1))
- : t
- .eachBefore(Qo(Jo))
- .eachAfter(Ko(Go, 1))
- .eachAfter(Ko(i, t.r / Math.min(e, r)))
- .eachBefore(tu(Math.min(e, r) / (2 * t.r))),
- t
- }
- var n = null,
- e = 1,
- r = 1,
- i = Go;
- return t.radius = function (e) {
- return arguments.length
- ? (n = $o(e), t)
- : n
- },
- t.size = function (n) {
- return arguments.length
- ? (e =+ n[0], r =+ n[1], t)
- : [e, r]
- },
- t.padding = function (n) {
- return arguments.length
- ? (i = "function" == typeof n
- ? n
- : kg(+ n), t)
- : i
- },
- t
- },
- Ag = function (t) {
- t.x0 = Math.round(t.x0),
- t.y0 = Math.round(t.y0),
- t.x1 = Math.round(t.x1),
- t.y1 = Math.round(t.y1)
- },
- Eg = function (t, n, e, r, i) {
- for (var o, u = t.children, a = -1, c = u.length, s = t.value && (r - n) / t.value; ++a < c;)
- o = u[a],
- o.y0 = e,
- o.y1 = i,
- o.x0 = n,
- o.x1 = n += o.value * s
- },
- Cg = function () {
- function t(t) {
- var u = t.height + 1;
- return t.x0 = t.y0 = i,
- t.x1 = e,
- t.y1 = r / u,
- t.eachBefore(n(r, u)),
- o && t.eachBefore(Ag),
- t
- }
- function n(t, n) {
- return function (e) {
- e.children && Eg(e, e.x0, t * (e.depth + 1) / n, e.x1, t * (e.depth + 2) / n);
- var r = e.x0,
- o = e.y0,
- u = e.x1 - i,
- a = e.y1 - i;
- u < r && (r = u = (r + u) / 2),
- a < o && (o = a = (o + a) / 2),
- e.x0 = r,
- e.y0 = o,
- e.x1 = u,
- e.y1 = a
- }
- }
- var e = 1,
- r = 1,
- i = 0,
- o = !1;
- return t.round = function (n) {
- return arguments.length
- ? (o = !!n, t)
- : o
- },
- t.size = function (n) {
- return arguments.length
- ? (e =+ n[0], r =+ n[1], t)
- : [e, r]
- },
- t.padding = function (n) {
- return arguments.length
- ? (i =+ n, t)
- : i
- },
- t
- },
- zg = "$",
- Pg = {
- depth: -1
- },
- qg = {},
- Lg = function () {
- function t(t) {
- var r,
- i,
- o,
- u,
- a,
- c,
- s,
- f = t.length,
- l = new Array(f),
- h = {};
- for (i = 0; i < f; ++i)
- r = t[i],
- a = l[i] = new Uo(r),
- null != (c = n(r, i, t)) && (c += "") && (s = zg + (a.id = c), h[s] = s in h
- ? qg
- : a);
- for (i = 0; i < f; ++i)
- if (a = l[i], c = e(t[i], i, t), null != c && (c += "")) {
- if (u = h[zg + c], !u)
- throw new Error("missing: " + c);
- if (u === qg)
- throw new Error("ambiguous: " + c);
- u.children
- ? u
- .children
- .push(a)
- : u.children = [a],
- a.parent = u
- }
- else {
- if (o)
- throw new Error("multiple roots");
- o = a
- }
- if (!o)
- throw new Error("no root");
- if (o.parent = Pg, o.eachBefore(function (t) {
- t.depth = t.parent.depth + 1,
- --f
- }).eachBefore(Ro), o.parent = null, f > 0)
- throw new Error("cycle");
- return o
- }
- var n = nu,
- e = eu;
- return t.id = function (e) {
- return arguments.length
- ? (n = Zo(e), t)
- : n
- },
- t.parentId = function (n) {
- return arguments.length
- ? (e = Zo(n), t)
- : e
- },
- t
- };
- su.prototype = Object.create(Uo.prototype);
- var Rg = function () {
- function t(t) {
- var r = fu(t);
- if (r.eachAfter(n), r.parent.m = -r.z, r.eachBefore(e), c)
- t.eachBefore(i);
- else {
- var s = t,
- f = t,
- l = t;
- t.eachBefore(function (t) {
- t.x < s.x && (s = t),
- t.x > f.x && (f = t),
- t.depth > l.depth && (l = t)
- });
- var h = s === f
- ? 1
- : o(s, f) / 2,
- p = h - s.x,
- d = u / (f.x + h + p),
- v = a / (l.depth || 1);
- t.eachBefore(function (t) {
- t.x = (t.x + p) * d,
- t.y = t.depth * v
- })
- }
- return t
- }
- function n(t) {
- var n = t.children,
- e = t.parent.children,
- i = t.i
- ? e[t.i - 1]
- : null;
- if (n) {
- au(t);
- var u = (n[0].z + n[n.length - 1].z) / 2;
- i
- ? (t.z = i.z + o(t._, i._), t.m = t.z - u)
- : t.z = u
- } else
- i && (t.z = i.z + o(t._, i._));
- t.parent.A = r(t, i, t.parent.A || e[0])
- }
- function e(t) {
- t._.x = t.z + t.parent.m,
- t.m += t.parent.m
- }
- function r(t, n, e) {
- if (n) {
- for (var r, i = t, u = t, a = n, c = i.parent.children[0], s = i.m, f = u.m, l = a.m, h = c.m; a = ou(a), i = iu(i), a && i;)
- c = iu(c),
- u = ou(u),
- u.a = t,
- r = a.z + l - i.z - s + o(a._, i._),
- r > 0 && (uu(cu(a, t, e), t, r), s += r, f += r),
- l += a.m,
- s += i.m,
- h += c.m,
- f += u.m;
- a && !ou(u) && (u.t = a, u.m += l - f),
- i && !iu(c) && (c.t = i, c.m += s - h, e = t)
- }
- return e
- }
- function i(t) {
- t.x *= u,
- t.y = t.depth * a
- }
- var o = ru,
- u = 1,
- a = 1,
- c = null;
- return t.separation = function (n) {
- return arguments.length
- ? (o = n, t)
- : o
- },
- t.size = function (n) {
- return arguments.length
- ? (c = !1, u =+ n[0], a =+ n[1], t)
- : c
- ? null
- : [u, a]
- },
- t.nodeSize = function (n) {
- return arguments.length
- ? (c = !0, u =+ n[0], a =+ n[1], t)
- : c
- ? [u, a]
- : null
- },
- t
- },
- Ug = function (t, n, e, r, i) {
- for (var o, u = t.children, a = -1, c = u.length, s = t.value && (i - e) / t.value; ++a < c;)
- o = u[a],
- o.x0 = n,
- o.x1 = r,
- o.y0 = e,
- o.y1 = e += o.value * s
- },
- Dg = (1 + Math.sqrt(5)) / 2,
- Og = function t(n) {
- function e(t, e, r, i, o) {
- lu(n, t, e, r, i, o)
- }
- return e.ratio = function (n) {
- return t((n =+ n) > 1
- ? n
- : 1)
- },
- e
- }(Dg),
- Fg = function () {
- function t(t) {
- return t.x0 = t.y0 = 0,
- t.x1 = i,
- t.y1 = o,
- t.eachBefore(n),
- u = [0],
- r && t.eachBefore(Ag),
- t
- }
- function n(t) {
- var n = u[t.depth],
- r = t.x0 + n,
- i = t.y0 + n,
- o = t.x1 - n,
- h = t.y1 - n;
- o < r && (r = o = (r + o) / 2),
- h < i && (i = h = (i + h) / 2),
- t.x0 = r,
- t.y0 = i,
- t.x1 = o,
- t.y1 = h,
- t.children && (n = u[t.depth + 1] = a(t) / 2, r += l(t) - n, i += c(t) - n, o -= s(t) - n, h -= f(t) - n, o < r && (r = o = (r + o) / 2), h < i && (i = h = (i + h) / 2), e(t, r, i, o, h))
- }
- var e = Og,
- r = !1,
- i = 1,
- o = 1,
- u = [0],
- a = Go,
- c = Go,
- s = Go,
- f = Go,
- l = Go;
- return t.round = function (n) {
- return arguments.length
- ? (r = !!n, t)
- : r
- },
- t.size = function (n) {
- return arguments.length
- ? (i =+ n[0], o =+ n[1], t)
- : [i, o]
- },
- t.tile = function (n) {
- return arguments.length
- ? (e = Zo(n), t)
- : e
- },
- t.padding = function (n) {
- return arguments.length
- ? t
- .paddingInner(n)
- .paddingOuter(n)
- : t.paddingInner()
- },
- t.paddingInner = function (n) {
- return arguments.length
- ? (a = "function" == typeof n
- ? n
- : kg(+ n), t)
- : a
- },
- t.paddingOuter = function (n) {
- return arguments.length
- ? t
- .paddingTop(n)
- .paddingRight(n)
- .paddingBottom(n)
- .paddingLeft(n)
- : t.paddingTop()
- },
- t.paddingTop = function (n) {
- return arguments.length
- ? (c = "function" == typeof n
- ? n
- : kg(+ n), t)
- : c
- },
- t.paddingRight = function (n) {
- return arguments.length
- ? (s = "function" == typeof n
- ? n
- : kg(+ n), t)
- : s
- },
- t.paddingBottom = function (n) {
- return arguments.length
- ? (f = "function" == typeof n
- ? n
- : kg(+ n), t)
- : f
- },
- t.paddingLeft = function (n) {
- return arguments.length
- ? (l = "function" == typeof n
- ? n
- : kg(+ n), t)
- : l
- },
- t
- },
- Ig = function (t, n, e, r, i) {
- function o(t, n, e, r, i, u, a) {
- if (t >= n - 1) {
- var s = c[t];
- return s.x0 = r,
- s.y0 = i,
- s.x1 = u,
- s.y1 = a,
- void 0
- }
- for (var l = f[t], h = e / 2 + l, p = t + 1, d = n - 1; p < d;) {
- var v = p + d >>> 1;
- f[v] < h
- ? p = v + 1
- : d = v
- }
- var _ = f[p] - l,
- y = e - _;
- if (a - i > u - r) {
- var g = (i * y + a * _) / e;
- o(t, p, _, r, i, u, g),
- o(p, n, y, r, g, u, a)
- } else {
- var m = (r * y + u * _) / e;
- o(t, p, _, r, i, m, a),
- o(p, n, y, m, i, u, a)
- }
- }
- var u,
- a,
- c = t.children,
- s = c.length,
- f = new Array(s + 1);
- for (f[0] = a = u = 0; u < s; ++u)
- f[u + 1] = a += c[u].value;
- o(0, s, t.value, n, e, r, i)
- },
- Yg = function (t, n, e, r, i) {
- (1 & t.depth
- ? Ug
- : Eg)(t, n, e, r, i)
- },
- Bg = function t(n) {
- function e(t, e, r, i, o) {
- if ((u = t._squarify) && u.ratio === n)
- for (var u, a, c, s, f, l = -1, h = u.length, p = t.value; ++l < h;) {
- for (a = u[l], c = a.children, s = a.value = 0, f = c.length; s < f; ++s)
- a.value += c[s].value;
- a.dice
- ? Eg(a, e, r, i, r += (o - r) * a.value / p)
- : Ug(a, e, r, e += (i - e) * a.value / p, o),
- p -= a.value
- }
- else
- t._squarify = u = lu(n, t, e, r, i, o),
- u.ratio = n
- }
- return e.ratio = function (n) {
- return t((n =+ n) > 1
- ? n
- : 1)
- },
- e
- }(Dg),
- jg = function (t, n) {
- function e() {
- var e,
- i,
- o = r.length,
- u = 0,
- a = 0;
- for (e = 0; e < o; ++e)
- i = r[e],
- u += i.x,
- a += i.y;
- for (u = u / o - t, a = a / o - n, e = 0; e < o; ++e)
- i = r[e],
- i.x -= u,
- i.y -= a
- }
- var r;
- return null == t && (t = 0),
- null == n && (n = 0),
- e.initialize = function (t) {
- r = t
- },
- e.x = function (n) {
- return arguments.length
- ? (t =+ n, e)
- : t
- },
- e.y = function (t) {
- return arguments.length
- ? (n =+ t, e)
- : n
- },
- e
- },
- Hg = function (t) {
- return function () {
- return t
- }
- },
- Xg = function () {
- return 1e-6 * (Math.random() - .5)
- },
- Vg = function (t) {
- function n() {
- function t(t, e, r, i, o) {
- var a = t.data,
- p = t.r,
- d = l + p;
- {
- if (!a)
- return e > s + d || i < s - d || r > f + d || o < f - d;
- if (a.index > n) {
- var v = s - a.x - a.vx,
- _ = f - a.y - a.vy,
- y = v * v + _ * _;
- y < d * d && (0 === v && (v = Xg(), y += v * v), 0 === _ && (_ = Xg(), y += _ * _), y = (d - (y = Math.sqrt(y))) / y * u, c.vx += (v *= y) * (d = (p *= p) / (h + p)), c.vy += (_ *= y) * d, a.vx -= v * (d = 1 - d), a.vy -= _ * d)
- }
- }
- }
- for (var n, r, c, s, f, l, h, p = i.length, d = 0; d < a; ++d)
- for (r = I(i, hu, pu).visitAfter(e), n = 0; n < p; ++n)
- c = i[n],
- l = o[n],
- h = l * l,
- s = c.x + c.vx,
- f = c.y + c.vy,
- r.visit(t)
- }
- function e(t) {
- if (t.data)
- return t.r = o[t.data.index];
- for (var n = t.r = 0; n < 4; ++n)
- t[n] && t[n].r > t.r && (t.r = t[n].r)
- }
- function r() {
- if (i) {
- var n,
- e = i.length;
- for (o = new Array(e), n = 0; n < e; ++n)
- o[n] =+ t(i[n], n, i)
- }
- }
- var i,
- o,
- u = 1,
- a = 1;
- return "function" != typeof t && (t = Hg(null == t
- ? 1 :+ t)),
- n.initialize = function (t) {
- i = t,
- r()
- },
- n.iterations = function (t) {
- return arguments.length
- ? (a =+ t, n)
- : a
- },
- n.strength = function (t) {
- return arguments.length
- ? (u =+ t, n)
- : u
- },
- n.radius = function (e) {
- return arguments.length
- ? (t = "function" == typeof e
- ? e
- : Hg(+ e), r(), n)
- : t
- },
- n
- },
- Wg = function (t) {
- function n(t) {
- return 1 / Math.min(f[t.source.index], f[t.target.index])
- }
- function e(n) {
- for (var e = 0, r = t.length; e < v; ++e)
- for (var i, o, u, s, f, h, p, d = 0; d < r; ++d)
- i = t[d],
- o = i.source,
- u = i.target,
- s = u.x + u.vx - o.x - o.vx || Xg(),
- f = u.y + u.vy - o.y - o.vy || Xg(),
- h = Math.sqrt(s * s + f * f),
- h = (h - c[d]) / h * n * a[d],
- s *= h,
- f *= h,
- u.vx -= s * (p = l[d]),
- u.vy -= f * p,
- o.vx += s * (p = 1 - p),
- o.vy += f * p
- }
- function r() {
- if (s) {
- var n,
- e,
- r = s.length,
- p = t.length,
- d = o(s, h);
- for (n = 0, f = new Array(r); n < r; ++n)
- f[n] = 0;
- for (n = 0; n < p; ++n)
- e = t[n],
- e.index = n,
- "object" != typeof e.source && (e.source = vu(d, e.source)),
- "object" != typeof e.target && (e.target = vu(d, e.target)),
- ++f[e.source.index],
- ++f[e.target.index];
- for (n = 0, l = new Array(p); n < p; ++n)
- e = t[n],
- l[n] = f[e.source.index] / (f[e.source.index] + f[e.target.index]);
- a = new Array(p),
- i(),
- c = new Array(p),
- u()
- }
- }
- function i() {
- if (s)
- for (var n = 0, e = t.length; n < e; ++n)
- a[n] =+ p(t[n], n, t)
- }
- function u() {
- if (s)
- for (var n = 0, e = t.length; n < e; ++n)
- c[n] =+ d(t[n], n, t)
- }
- var a,
- c,
- s,
- f,
- l,
- h = du,
- p = n,
- d = Hg(30),
- v = 1;
- return null == t && (t = []),
- e.initialize = function (t) {
- s = t,
- r()
- },
- e.links = function (n) {
- return arguments.length
- ? (t = n, r(), e)
- : t
- },
- e.id = function (t) {
- return arguments.length
- ? (h = t, e)
- : h
- },
- e.iterations = function (t) {
- return arguments.length
- ? (v =+ t, e)
- : v
- },
- e.strength = function (t) {
- return arguments.length
- ? (p = "function" == typeof t
- ? t
- : Hg(+ t), i(), e)
- : p
- },
- e.distance = function (t) {
- return arguments.length
- ? (d = "function" == typeof t
- ? t
- : Hg(+ t), u(), e)
- : d
- },
- e
- },
- $g = 10,
- Zg = Math.PI * (3 - Math.sqrt(5)),
- Gg = function (t) {
- function n() {
- e(),
- d.call("tick", u),
- a < c && (p.stop(), d.call("end", u))
- }
- function e() {
- var n,
- e,
- r = t.length;
- for (a += (f - a) * s, h.each(function (t) {
- t(a)
- }), n = 0; n < r; ++n)
- e = t[n],
- null == e.fx
- ? e.x += e.vx *= l
- : (e.x = e.fx, e.vx = 0),
- null == e.fy
- ? e.y += e.vy *= l
- : (e.y = e.fy, e.vy = 0)
- }
- function r() {
- for (var n, e = 0, r = t.length; e < r; ++e) {
- if (n = t[e], n.index = e, isNaN(n.x) || isNaN(n.y)) {
- var i = $g * Math.sqrt(e),
- o = e * Zg;
- n.x = i * Math.cos(o),
- n.y = i * Math.sin(o)
- }
- (isNaN(n.vx) || isNaN(n.vy)) && (n.vx = n.vy = 0)
- }
- }
- function i(n) {
- return n.initialize && n.initialize(t),
- n
- }
- var u,
- a = 1,
- c = .001,
- s = 1 - Math.pow(c, 1 / 300),
- f = 0,
- l = .6,
- h = o(),
- p = Vn(n),
- d = Pn("tick", "end");
- return null == t && (t = []),
- r(),
- u = {
- tick: e,
- restart: function () {
- return p.restart(n),
- u
- },
- stop: function () {
- return p.stop(),
- u
- },
- nodes: function (n) {
- return arguments.length
- ? (t = n, r(), h.each(i), u)
- : t
- },
- alpha: function (t) {
- return arguments.length
- ? (a =+ t, u)
- : a
- },
- alphaMin: function (t) {
- return arguments.length
- ? (c =+ t, u)
- : c
- },
- alphaDecay: function (t) {
- return arguments.length
- ? (s =+ t, u) :+ s
- },
- alphaTarget: function (t) {
- return arguments.length
- ? (f =+ t, u)
- : f
- },
- velocityDecay: function (t) {
- return arguments.length
- ? (l = 1 - t, u)
- : 1 - l
- },
- force: function (t, n) {
- return arguments.length > 1
- ? (null == n
- ? h.remove(t)
- : h.set(t, i(n)), u)
- : h.get(t)
- },
- find: function (n, e, r) {
- var i,
- o,
- u,
- a,
- c,
- s = 0,
- f = t.length;
- for (null == r
- ? r = 1 / 0
- : r *= r, s = 0; s < f; ++s)
- a = t[s],
- i = n - a.x,
- o = e - a.y,
- u = i * i + o * o,
- u < r && (c = a, r = u);
- return c
- },
- on: function (t, n) {
- return arguments.length > 1
- ? (d.on(t, n), u)
- : d.on(t)
- }
- }
- },
- Jg = function () {
- function t(t) {
- var n,
- a = i.length,
- c = I(i, _u, yu).visitAfter(e);
- for (u = t, n = 0; n < a; ++n)
- o = i[n],
- c.visit(r)
- }
- function n() {
- if (i) {
- var t,
- n = i.length;
- for (a = new Array(n), t = 0; t < n; ++t)
- a[t] =+ c(i[t], t, i)
- }
- }
- function e(t) {
- var n,
- e,
- r,
- i,
- o,
- u = 0;
- if (t.length) {
- for (r = i = o = 0; o < 4; ++o)
- (n = t[o]) && (e = n.value) && (u += e, r += e * n.x, i += e * n.y);
- t.x = r / u,
- t.y = i / u
- } else {
- n = t,
- n.x = n.data.x,
- n.y = n.data.y;
- do
- u += a[n.data.index];
- while (n = n.next)
- }
- t.value = u
- }
- function r(t, n, e, r) {
- if (!t.value)
- return !0;
- var i = t.x - o.x,
- c = t.y - o.y,
- h = r - n,
- p = i * i + c * c;
- if (h * h / l < p)
- return p < f && (0 === i && (i = Xg(), p += i * i), 0 === c && (c = Xg(), p += c * c), p < s && (p = Math.sqrt(s * p)), o.vx += i * t.value * u / p, o.vy += c * t.value * u / p),
- !0;
- if (!(t.length || p >= f)) {
- (t.data !== o || t.next) && (0 === i && (i = Xg(), p += i * i), 0 === c && (c = Xg(), p += c * c), p < s && (p = Math.sqrt(s * p)));
- do
- t.data !== o && (h = a[t.data.index] * u / p, o.vx += i * h, o.vy += c * h);
- while (t = t.next)
- }
- }
- var i,
- o,
- u,
- a,
- c = Hg(-30),
- s = 1,
- f = 1 / 0,
- l = .81;
- return t.initialize = function (t) {
- i = t,
- n()
- },
- t.strength = function (e) {
- return arguments.length
- ? (c = "function" == typeof e
- ? e
- : Hg(+ e), n(), t)
- : c
- },
- t.distanceMin = function (n) {
- return arguments.length
- ? (s = n * n, t)
- : Math.sqrt(s)
- },
- t.distanceMax = function (n) {
- return arguments.length
- ? (f = n * n, t)
- : Math.sqrt(f)
- },
- t.theta = function (n) {
- return arguments.length
- ? (l = n * n, t)
- : Math.sqrt(l)
- },
- t
- },
- Qg = function (t) {
- function n(t) {
- for (var n, e = 0, u = r.length; e < u; ++e)
- n = r[e],
- n.vx += (o[e] - n.x) * i[e] * t
- }
- function e() {
- if (r) {
- var n,
- e = r.length;
- for (i = new Array(e), o = new Array(e), n = 0; n < e; ++n)
- i[n] = isNaN(o[n] =+ t(r[n], n, r))
- ? 0 :+ u(r[n], n, r)
- }
- }
- var r,
- i,
- o,
- u = Hg(.1);
- return "function" != typeof t && (t = Hg(null == t
- ? 0 :+ t)),
- n.initialize = function (t) {
- r = t,
- e()
- },
- n.strength = function (t) {
- return arguments.length
- ? (u = "function" == typeof t
- ? t
- : Hg(+ t), e(), n)
- : u
- },
- n.x = function (r) {
- return arguments.length
- ? (t = "function" == typeof r
- ? r
- : Hg(+ r), e(), n)
- : t
- },
- n
- },
- Kg = function (t) {
- function n(t) {
- for (var n, e = 0, u = r.length; e < u; ++e)
- n = r[e],
- n.vy += (o[e] - n.y) * i[e] * t
- }
- function e() {
- if (r) {
- var n,
- e = r.length;
- for (i = new Array(e), o = new Array(e), n = 0; n < e; ++n)
- i[n] = isNaN(o[n] =+ t(r[n], n, r))
- ? 0 :+ u(r[n], n, r)
- }
- }
- var r,
- i,
- o,
- u = Hg(.1);
- return "function" != typeof t && (t = Hg(null == t
- ? 0 :+ t)),
- n.initialize = function (t) {
- r = t,
- e()
- },
- n.strength = function (t) {
- return arguments.length
- ? (u = "function" == typeof t
- ? t
- : Hg(+ t), e(), n)
- : u
- },
- n.y = function (r) {
- return arguments.length
- ? (t = "function" == typeof r
- ? r
- : Hg(+ r), e(), n)
- : t
- },
- n
- },
- tm = function () {
- t
- .event
- .preventDefault(),
- t
- .event
- .stopImmediatePropagation()
- },
- nm = function (t) {
- var n = t.document.documentElement,
- e = gy(t).on("dragstart.drag", tm, !0);
- "onselectstart" in n
- ? e.on("selectstart.drag", tm, !0)
- : (n.__noselect = n.style.MozUserSelect, n.style.MozUserSelect = "none")
- },
- em = function (t) {
- return function () {
- return t
- }
- };
- xu.prototype.on = function () {
- var t = this
- ._
- .on
- .apply(this._, arguments);
- return t === this._
- ? this
- : t
- };
- var rm = function () {
- function n(t) {
- t
- .on("mousedown.drag", e)
- .on("touchstart.drag", o)
- .on("touchmove.drag", u)
- .on("touchend.drag touchcancel.drag", a)
- .style("-webkit-tap-highlight-color", "rgba(0,0,0,0)")
- }
- function e() {
- if (!f && l.apply(this, arguments)) {
- var n = c("mouse", h.apply(this, arguments), U_, this, arguments);
- n && (gy(t.event.view).on("mousemove.drag", r, !0).on("mouseup.drag", i, !0), nm(t.event.view), gu(), s = !1, n("start"))
- }
- }
- function r() {
- tm(),
- s = !0,
- d.mouse("drag")
- }
- function i() {
- gy(t.event.view).on("mousemove.drag mouseup.drag", null),
- mu(t.event.view, s),
- tm(),
- d.mouse("end")
- }
- function o() {
- if (l.apply(this, arguments)) {
- var n,
- e,
- r = t.event.changedTouches,
- i = h.apply(this, arguments),
- o = r.length;
- for (n = 0; n < o; ++n)
- (e = c(r[n].identifier, i, xy, this, arguments)) && (gu(), e("start"))
- }
- }
- function u() {
- var n,
- e,
- r = t.event.changedTouches,
- i = r.length;
- for (n = 0; n < i; ++n)
- (e = d[r[n].identifier]) && (tm(), e("drag"))
- }
- function a() {
- var n,
- e,
- r = t.event.changedTouches,
- i = r.length;
- for (f && clearTimeout(f), f = setTimeout(function () {
- f = null
- }, 500), n = 0; n < i; ++n)
- (e = d[r[n].identifier]) && (gu(), e("end"))
- }
- function c(e, r, i, o, u) {
- var a,
- c,
- s,
- f = i(r, e),
- l = v.copy();
- if (Xr(new xu(n, "beforestart", a, e, _, f[0], f[1], 0, 0, l), function () {
- return null != (t.event.subject = a = p.apply(o, u)) && (c = a.x - f[0] || 0, s = a.y - f[1] || 0, !0)
- }))
- return function t(h) {
- var p,
- v = f;
- switch (h) {
- case "start":
- d[e] = t,
- p = _++;
- break;
- case "end":
- delete d[e],
- --_;
- case "drag":
- f = i(r, e),
- p = _
- }
- Xr(new xu(n, h, a, e, p, f[0] + c, f[1] + s, f[0] - v[0], f[1] - v[1], l), l.apply, l, [h, o, u])
- }
- }
- var s,
- f,
- l = bu,
- h = wu,
- p = Mu,
- d = {},
- v = Pn("start", "drag", "end"),
- _ = 0;
- return n.filter = function (t) {
- return arguments.length
- ? (l = "function" == typeof t
- ? t
- : em(!!t), n)
- : l
- },
- n.container = function (t) {
- return arguments.length
- ? (h = "function" == typeof t
- ? t
- : em(t), n)
- : h
- },
- n.subject = function (t) {
- return arguments.length
- ? (p = "function" == typeof t
- ? t
- : em(t), n)
- : p
- },
- n.on = function () {
- var t = v
- .on
- .apply(v, arguments);
- return t === v
- ? n
- : t
- },
- n
- },
- im = function (t) {
- return function () {
- return t
- }
- };
- ku.prototype = {
- constructor: ku,
- insert: function (t, n) {
- var e,
- r,
- i;
- if (t) {
- if (n.P = t, n.N = t.N, t.N && (t.N.P = n), t.N = n, t.R) {
- for (t = t.R; t.L;)
- t = t.L;
- t.L = n
- } else
- t.R = n;
- e = t
- } else
- this._
- ? (t = Cu(this._), n.P = null, n.N = t, t.P = t.L = n, e = t)
- : (n.P = n.N = null, this._ = n, e = null);
- for (n.L = n.R = null, n.U = e, n.C = !0, t = n; e && e.C;)
- r = e.U,
- e === r.L
- ? (i = r.R, i && i.C
- ? (e.C = i.C = !1, r.C = !0, t = r)
- : (t === e.R && (Au(this, e), t = e, e = t.U), e.C = !1, r.C = !0, Eu(this, r)))
- : (i = r.L, i && i.C
- ? (e.C = i.C = !1, r.C = !0, t = r)
- : (t === e.L && (Eu(this, e), t = e, e = t.U), e.C = !1, r.C = !0, Au(this, r))),
- e = t.U;
- this._.C = !1
- },
- remove: function (t) {
- t.N && (t.N.P = t.P),
- t.P && (t.P.N = t.N),
- t.N = t.P = null;
- var n,
- e,
- r,
- i = t.U,
- o = t.L,
- u = t.R;
- if (e = o
- ? u
- ? Cu(u)
- : o
- : u, i
- ? i.L === t
- ? i.L = e
- : i.R = e
- : this._ = e, o && u
- ? (r = e.C, e.C = t.C, e.L = o, o.U = e, e !== u
- ? (i = e.U, e.U = t.U, t = e.R, i.L = t, e.R = u, u.U = e)
- : (e.U = i, i = e, t = e.R))
- : (r = t.C, t = e), t && (t.U = i), !r) {
- if (t && t.C)
- return void(t.C = !1);
- do {
- if (t === this._)
- break;
- if (t === i.L) {
- if (n = i.R, n.C && (n.C = !1, i.C = !0, Au(this, i), n = i.R), n.L && n.L.C || n.R && n.R.C) {
- n.R && n.R.C || (n.L.C = !1, n.C = !0, Eu(this, n), n = i.R),
- n.C = i.C,
- i.C = n.R.C = !1,
- Au(this, i),
- t = this._;
- break
- }
- } else if (n = i.L, n.C && (n.C = !1, i.C = !0, Eu(this, i), n = i.L), n.L && n.L.C || n.R && n.R.C) {
- n.L && n.L.C || (n.R.C = !1, n.C = !0, Au(this, n), n = i.L),
- n.C = i.C,
- i.C = n.L.C = !1,
- Eu(this, i),
- t = this._;
- break
- }
- n.C = !0,
- t = i,
- i = i.U
- } while (!t.C);
- t && (t.C = !1)
- }
- }
- };
- var om,
- um,
- am,
- cm,
- sm,
- fm = [],
- lm = [],
- hm = 1e-6,
- pm = 1e-12;
- na.prototype = {
- constructor: na,
- polygons: function () {
- var t = this.edges;
- return this
- .cells
- .map(function (n) {
- var e = n
- .halfedges
- .map(function (e) {
- return Fu(n, t[e])
- });
- return e.data = n.site.data,
- e
- })
- },
- triangles: function () {
- var t = [],
- n = this.edges;
- return this
- .cells
- .forEach(function (e, r) {
- for (var i, o = e.site, u = e.halfedges, a = -1, c = u.length, s = n[u[c - 1]], f = s.left === o
- ? s.right
- : s.left; ++a < c;)
- i = f,
- s = n[u[a]],
- f = s.left === o
- ? s.right
- : s.left,
- i && f && r < i.index && r < f.index && Ku(o, i, f) < 0 && t.push([o.data, i.data, f.data])
- }),
- t
- },
- links: function () {
- return this
- .edges
- .filter(function (t) {
- return t.right
- })
- .map(function (t) {
- return {source: t.left.data, target: t.right.data}
- })
- },
- find: function (t, n, e) {
- var r,
- i = this,
- o = i._found || 0,
- u = i.cells[o] || i.cells[o = 0],
- a = t - u.site[0],
- c = n - u.site[1],
- s = a * a + c * c;
- do
- u = i.cells[r = o],
- o = null,
- u
- .halfedges
- .forEach(function (e) {
- var r = i.edges[e],
- a = r.left;
- if (a !== u.site && a || (a = r.right)) {
- var c = t - a[0],
- f = n - a[1],
- l = c * c + f * f;
- l < s && (s = l, o = a.index)
- }
- });
- while (null !== o);
- return i._found = r,
- null == e || s <= e * e
- ? u.site
- : null
- }
- };
- var dm = function () {
- function t(t) {
- return new na(t.map(function (r, i) {
- var o = [
- Math.round(n(r, i, t) / hm) * hm,
- Math.round(e(r, i, t) / hm) * hm
- ];
- return o.index = i,
- o.data = r,
- o
- }), r)
- }
- var n = Tu,
- e = Nu,
- r = null;
- return t.polygons = function (n) {
- return t(n).polygons()
- },
- t.links = function (n) {
- return t(n).links()
- },
- t.triangles = function (n) {
- return t(n).triangles()
- },
- t.x = function (e) {
- return arguments.length
- ? (n = "function" == typeof e
- ? e
- : im(+ e), t)
- : n
- },
- t.y = function (n) {
- return arguments.length
- ? (e = "function" == typeof n
- ? n
- : im(+ n), t)
- : e
- },
- t.extent = function (n) {
- return arguments.length
- ? (r = null == n
- ? null
- : [
- [ + n[0][0], + n[0][1]
- ],
- [ + n[1][0], + n[1][1]
- ]
- ], t)
- : r && [
- [r[0][0], r[0][1]
- ],
- [r[1][0], r[1][1]
- ]
- ]
- },
- t.size = function (n) {
- return arguments.length
- ? (r = null == n
- ? null
- : [
- [
- 0, 0
- ],
- [ + n[0], + n[1]
- ]
- ], t)
- : r && [r[1][0] - r[0][0],
- r[1][1] - r[0][1]
- ]
- },
- t
- },
- vm = function (t) {
- return function () {
- return t
- }
- };
- ra.prototype = {
- constructor: ra,
- scale: function (t) {
- return 1 === t
- ? this
- : new ra(this.k * t, this.x, this.y)
- },
- translate: function (t, n) {
- return 0 === t & 0 === n
- ? this
- : new ra(this.k, this.x + this.k * t, this.y + this.k * n)
- },
- apply: function (t) {
- return [
- t[0] * this.k + this.x,
- t[1] * this.k + this.y
- ]
- },
- applyX: function (t) {
- return t * this.k + this.x
- },
- applyY: function (t) {
- return t * this.k + this.y
- },
- invert: function (t) {
- return [
- (t[0] - this.x) / this.k,
- (t[1] - this.y) / this.k
- ]
- },
- invertX: function (t) {
- return (t - this.x) / this.k
- },
- invertY: function (t) {
- return (t - this.y) / this.k
- },
- rescaleX: function (t) {
- return t
- .copy()
- .domain(t.range().map(this.invertX, this).map(t.invert, t))
- },
- rescaleY: function (t) {
- return t
- .copy()
- .domain(t.range().map(this.invertY, this).map(t.invert, t))
- },
- toString: function () {
- return "translate(" + this.x + "," + this.y + ") scale(" + this.k + ")"
- }
- };
- var _m = new ra(1, 0, 0);
- ia.prototype = ra.prototype;
- var ym = function () {
- t
- .event
- .preventDefault(),
- t
- .event
- .stopImmediatePropagation()
- },
- gm = function () {
- function n(t) {
- t
- .on("wheel.zoom", s)
- .on("mousedown.zoom", f)
- .on("dblclick.zoom", l)
- .on("touchstart.zoom", h)
- .on("touchmove.zoom", p)
- .on("touchend.zoom touchcancel.zoom", d)
- .style("-webkit-tap-highlight-color", "rgba(0,0,0,0)")
- .property("__zoom", ca)
- }
- function e(t, n) {
- return n = Math.max(m, Math.min(x, n)),
- n === t.k
- ? t
- : new ra(n, t.x, t.y)
- }
- function r(t, n, e) {
- var r = n[0] - e[0] * t.k,
- i = n[1] - e[1] * t.k;
- return r === t.x && i === t.y
- ? t
- : new ra(t.k, r, i)
- }
- function i(t, n) {
- var e = Math.min(0, t.invertX(n[0][0]) - b) || Math.max(0, t.invertX(n[1][0]) - w),
- r = Math.min(0, t.invertY(n[0][1]) - M) || Math.max(0, t.invertY(n[1][1]) - T);
- return e || r
- ? t.translate(e, r)
- : t
- }
- function o(t) {
- return [
- ( + t[0][0] + + t[1][0]) / 2,
- ( + t[0][1] + + t[1][1]) / 2
- ]
- }
- function u(t, n, e) {
- t
- .on("start.zoom", function () {
- a(this, arguments).start()
- })
- .on("interrupt.zoom end.zoom", function () {
- a(this, arguments).end()
- })
- .tween("zoom", function () {
- var t = this,
- r = arguments,
- i = a(t, r),
- u = g.apply(t, r),
- c = e || o(u),
- s = Math.max(u[1][0] - u[0][0], u[1][1] - u[0][1]),
- f = t.__zoom,
- l = "function" == typeof n
- ? n.apply(t, r)
- : n,
- h = Sp(f.invert(c).concat(s / f.k), l.invert(c).concat(s / l.k));
- return function (t) {
- if (1 === t)
- t = l;
- else {
- var n = h(t),
- e = s / n[2];
- t = new ra(e, c[0] - n[0] * e, c[1] - n[1] * e)
- }
- i.zoom(null, t)
- }
- })
- }
- function a(t, n) {
- for (var e, r = 0, i = k.length; r < i; ++r)
- if ((e = k[r]).that === t)
- return e;
- return new c(t, n)
- }
- function c(t, n) {
- this.that = t,
- this.args = n,
- this.index = -1,
- this.active = 0,
- this.extent = g.apply(t, n)
- }
- function s() {
- function n() {
- o.wheel = null,
- o.end()
- }
- if (y.apply(this, arguments)) {
- var o = a(this, arguments),
- u = this.__zoom,
- c = Math.max(m, Math.min(x, u.k * Math.pow(2, -t.event.deltaY * (t.event.deltaMode
- ? 120
- : 1) / 500))),
- s = U_(this);
- if (o.wheel)
- o.mouse[0][0] === s[0] && o.mouse[0][1] === s[1] || (o.mouse[1] = u.invert(o.mouse[0] = s)),
- clearTimeout(o.wheel);
- else {
- if (u.k === c)
- return;
- o.mouse = [
- s, u.invert(s)
- ],
- Py(this),
- o.start()
- }
- ym(),
- o.wheel = setTimeout(n, E),
- o.zoom("mouse", i(r(e(u, c), o.mouse[0], o.mouse[1]), o.extent))
- }
- }
- function f() {
- function n() {
- ym(),
- o.moved = !0,
- o.zoom("mouse", i(r(o.that.__zoom, o.mouse[0] = U_(o.that), o.mouse[1]), o.extent))
- }
- function e() {
- u.on("mousemove.zoom mouseup.zoom", null),
- mu(t.event.view, o.moved),
- ym(),
- o.end()
- }
- if (!_ && y.apply(this, arguments)) {
- var o = a(this, arguments),
- u = gy(t.event.view)
- .on("mousemove.zoom", n, !0)
- .on("mouseup.zoom", e, !0),
- c = U_(this);
- nm(t.event.view),
- oa(),
- o.mouse = [
- c,
- this
- .__zoom
- .invert(c)
- ],
- Py(this),
- o.start()
- }
- }
- function l() {
- if (y.apply(this, arguments)) {
- var o = this.__zoom,
- a = U_(this),
- c = o.invert(a),
- s = o.k * (t.event.shiftKey
- ? .5
- : 2),
- f = i(r(e(o, s), a, c), g.apply(this, arguments));
- ym(),
- N > 0
- ? gy(this)
- .transition()
- .duration(N)
- .call(u, f, a)
- : gy(this).call(n.transform, f)
- }
- }
- function h() {
- if (y.apply(this, arguments)) {
- var n,
- e,
- r,
- i = a(this, arguments),
- o = t.event.changedTouches,
- u = o.length;
- for (oa(), n = 0; n < u; ++n)
- e = o[n],
- r = xy(this, o, e.identifier),
- r = [
- r,
- this
- .__zoom
- .invert(r),
- e.identifier
- ],
- i.touch0
- ? i.touch1 || (i.touch1 = r)
- : i.touch0 = r;
- return v && (v = clearTimeout(v), !i.touch1)
- ? (i.end(), l.apply(this, arguments))
- : void(t.event.touches.length === u && (v = setTimeout(function () {
- v = null
- }, A), Py(this), i.start()))
- }
- }
- function p() {
- var n,
- o,
- u,
- c,
- s = a(this, arguments),
- f = t.event.changedTouches,
- l = f.length;
- for (ym(), v && (v = clearTimeout(v)), n = 0; n < l; ++n)
- o = f[n],
- u = xy(this, f, o.identifier),
- s.touch0 && s.touch0[2] === o.identifier
- ? s.touch0[0] = u
- : s.touch1 && s.touch1[2] === o.identifier && (s.touch1[0] = u);
- if (o = s.that.__zoom, s.touch1) {
- var h = s.touch0[0],
- p = s.touch0[1],
- d = s.touch1[0],
- _ = s.touch1[1],
- y = (y = d[0] - h[0]) * y + (y = d[1] - h[1]) * y,
- g = (g = _[0] - p[0]) * g + (g = _[1] - p[1]) * g;
- o = e(o, Math.sqrt(y / g)),
- u = [
- (h[0] + d[0]) / 2,
- (h[1] + d[1]) / 2
- ],
- c = [
- (p[0] + _[0]) / 2,
- (p[1] + _[1]) / 2
- ]
- } else {
- if (!s.touch0)
- return;
- u = s.touch0[0],
- c = s.touch0[1]
- }
- s.zoom("touch", i(r(o, u, c), s.extent))
- }
- function d() {
- var n,
- e,
- r = a(this, arguments),
- i = t.event.changedTouches,
- o = i.length;
- for (oa(), _ && clearTimeout(_), _ = setTimeout(function () {
- _ = null
- }, A), n = 0; n < o; ++n)
- e = i[n],
- r.touch0 && r.touch0[2] === e.identifier
- ? delete r.touch0
- : r.touch1 && r.touch1[2] === e.identifier && delete r.touch1;
- r.touch1 && !r.touch0 && (r.touch0 = r.touch1, delete r.touch1),
- r.touch0 || r.end()
- }
- var v,
- _,
- y = ua,
- g = aa,
- m = 0,
- x = 1 / 0,
- b = -x,
- w = x,
- M = b,
- T = w,
- N = 250,
- k = [],
- S = Pn("start", "zoom", "end"),
- A = 500,
- E = 150;
- return n.transform = function (t, n) {
- var e = t.selection
- ? t.selection()
- : t;
- e.property("__zoom", ca),
- t !== e
- ? u(t, n)
- : e
- .interrupt()
- .each(function () {
- a(this, arguments)
- .start()
- .zoom(null, "function" == typeof n
- ? n.apply(this, arguments)
- : n)
- .end()
- })
- },
- n.scaleBy = function (t, e) {
- n
- .scaleTo(t, function () {
- var t = this.__zoom.k,
- n = "function" == typeof e
- ? e.apply(this, arguments)
- : e;
- return t * n
- })
- },
- n.scaleTo = function (t, u) {
- n
- .transform(t, function () {
- var t = g.apply(this, arguments),
- n = this.__zoom,
- a = o(t),
- c = n.invert(a),
- s = "function" == typeof u
- ? u.apply(this, arguments)
- : u;
- return i(r(e(n, s), a, c), t)
- })
- },
- n.translateBy = function (t, e, r) {
- n
- .transform(t, function () {
- return i(this.__zoom.translate("function" == typeof e
- ? e.apply(this, arguments)
- : e, "function" == typeof r
- ? r.apply(this, arguments)
- : r), g.apply(this, arguments))
- })
- },
- c.prototype = {
- start: function () {
- return 1 === ++this.active && (this.index = k.push(this) - 1, this.emit("start")),
- this
- },
- zoom: function (t, n) {
- return this.mouse && "mouse" !== t && (this.mouse[1] = n.invert(this.mouse[0])),
- this.touch0 && "touch" !== t && (this.touch0[1] = n.invert(this.touch0[0])),
- this.touch1 && "touch" !== t && (this.touch1[1] = n.invert(this.touch1[0])),
- this.that.__zoom = n,
- this.emit("zoom"),
- this
- },
- end: function () {
- return 0 === --this.active && (k.splice(this.index, 1), this.index = -1, this.emit("end")),
- this
- },
- emit: function (t) {
- Xr(new ea(n, t, this.that.__zoom), S.apply, S, [t, this.that, this.args])
- }
- },
- n.filter = function (t) {
- return arguments.length
- ? (y = "function" == typeof t
- ? t
- : vm(!!t), n)
- : y
- },
- n.extent = function (t) {
- return arguments.length
- ? (g = "function" == typeof t
- ? t
- : vm([
- [ + t[0][0], + t[0][1]
- ],
- [ + t[1][0], + t[1][1]
- ]
- ]), n)
- : g
- },
- n.scaleExtent = function (t) {
- return arguments.length
- ? (m =+ t[0], x =+ t[1], n)
- : [m, x]
- },
- n.translateExtent = function (t) {
- return arguments.length
- ? (b =+ t[0][0], w =+ t[1][0], M =+ t[0][1], T =+ t[1][1], n)
- : [
- [
- b, M
- ],
- [w, T]
- ]
- },
- n.duration = function (t) {
- return arguments.length
- ? (N =+ t, n)
- : N
- },
- n.on = function () {
- var t = S
- .on
- .apply(S, arguments);
- return t === S
- ? n
- : t
- },
- n
- },
- mm = function (t) {
- return function () {
- return t
- }
- },
- xm = function (t, n, e) {
- this.target = t,
- this.type = n,
- this.selection = e
- },
- bm = function () {
- t
- .event
- .preventDefault(),
- t
- .event
- .stopImmediatePropagation()
- },
- wm = {
- name: "drag"
- },
- Mm = {
- name: "space"
- },
- Tm = {
- name: "handle"
- },
- Nm = {
- name: "center"
- },
- km = {
- name: "x",
- handles: ["e", "w"].map(fa),
- input: function (t, n) {
- return t && [
- [t[0], n[0][1]
- ],
- [t[1], n[1][1]
- ]
- ]
- },
- output: function (t) {
- return t && [t[0][0], t[1][0]
- ]
- }
- },
- Sm = {
- name: "y",
- handles: ["n", "s"].map(fa),
- input: function (t, n) {
- return t && [
- [
- n[0][0], t[0]
- ],
- [n[1][0], t[1]]
- ]
- },
- output: function (t) {
- return t && [t[0][1], t[1][1]
- ]
- }
- },
- Am = {
- name: "xy",
- handles: [
- "n",
- "e",
- "s",
- "w",
- "nw",
- "ne",
- "se",
- "sw"
- ].map(fa),
- input: function (t) {
- return t
- },
- output: function (t) {
- return t
- }
- },
- Em = {
- overlay: "crosshair",
- selection: "move",
- n: "ns-resize",
- e: "ew-resize",
- s: "ns-resize",
- w: "ew-resize",
- nw: "nwse-resize",
- ne: "nesw-resize",
- se: "nwse-resize",
- sw: "nesw-resize"
- },
- Cm = {
- e: "w",
- w: "e",
- nw: "ne",
- ne: "nw",
- se: "sw",
- sw: "se"
- },
- zm = {
- n: "s",
- s: "n",
- nw: "sw",
- ne: "se",
- se: "ne",
- sw: "nw"
- },
- Pm = {
- overlay: 1,
- selection: 1,
- n: null,
- e: 1,
- s: null,
- w: -1,
- nw: -1,
- ne: 1,
- se: 1,
- sw: -1
- },
- qm = {
- overlay: 1,
- selection: 1,
- n: -1,
- e: null,
- s: 1,
- w: null,
- nw: -1,
- ne: -1,
- se: 1,
- sw: 1
- },
- Lm = function () {
- return ga(Am)
- },
- Rm = Math.cos,
- Um = Math.sin,
- Dm = Math.PI,
- Om = Dm / 2,
- Fm = 2 * Dm,
- Im = Math.max,
- Ym = function () {
- function t(t) {
- var o,
- u,
- a,
- c,
- s,
- f,
- l = t.length,
- h = [],
- p = Os(l),
- d = [],
- v = [],
- _ = v.groups = new Array(l),
- y = new Array(l * l);
- for (o = 0, s = -1; ++s < l;) {
- for (u = 0, f = -1; ++f < l;)
- u += t[s][f];
- h.push(u),
- d.push(Os(l)),
- o += u
- }
- for (e && p.sort(function (t, n) {
- return e(h[t], h[n])
- }), r && d.forEach(function (n, e) {
- n
- .sort(function (n, i) {
- return r(t[e][n], t[e][i])
- })
- }), o = Im(0, Fm - n * l) / o, c = o
- ? n
- : Fm / l, u = 0, s = -1; ++s < l;) {
- for (a = u, f = -1; ++f < l;) {
- var g = p[s],
- m = d[g][f],
- x = t[g][m],
- b = u,
- w = u += x * o;
- y[m * l + g] = {
- index: g,
- subindex: m,
- startAngle: b,
- endAngle: w,
- value: x
- }
- }
- _[g] = {
- index: g,
- startAngle: a,
- endAngle: u,
- value: h[g]
- },
- u += c
- }
- for (s = -1; ++s < l;)
- for (f = s - 1; ++f < l;) {
- var M = y[f * l + s],
- T = y[s * l + f];
- (M.value || T.value) && v.push(M.value < T.value
- ? {
- source: T,
- target: M
- }
- : {
- source: M,
- target: T
- })
- }
- return i
- ? v.sort(i)
- : v
- }
- var n = 0,
- e = null,
- r = null,
- i = null;
- return t.padAngle = function (e) {
- return arguments.length
- ? (n = Im(0, e), t)
- : n
- },
- t.sortGroups = function (n) {
- return arguments.length
- ? (e = n, t)
- : e
- },
- t.sortSubgroups = function (n) {
- return arguments.length
- ? (r = n, t)
- : r
- },
- t.sortChords = function (n) {
- return arguments.length
- ? (null == n
- ? i = null
- : (i = ma(n))._ = n, t)
- : i && i._
- },
- t
- },
- Bm = Array.prototype.slice,
- jm = function (t) {
- return function () {
- return t
- }
- },
- Hm = function () {
- function t() {
- var t,
- a = Bm.call(arguments),
- c = n.apply(this, a),
- s = e.apply(this, a),
- f =+ r.apply(this, (a[0] = c, a)),
- l = i.apply(this, a) - Om,
- h = o.apply(this, a) - Om,
- p = f * Rm(l),
- d = f * Um(l),
- v =+ r.apply(this, (a[0] = s, a)),
- _ = i.apply(this, a) - Om,
- y = o.apply(this, a) - Om;
- if (u || (u = t = L()), u.moveTo(p, d), u.arc(0, 0, f, l, h), l === _ && h === y || (u.quadraticCurveTo(0, 0, v * Rm(_), v * Um(_)), u.arc(0, 0, v, _, y)), u.quadraticCurveTo(0, 0, p, d), u.closePath(), t)
- return u = null,
- t + "" || null
- }
- var n = xa,
- e = ba,
- r = wa,
- i = Ma,
- o = Ta,
- u = null;
- return t.radius = function (n) {
- return arguments.length
- ? (r = "function" == typeof n
- ? n
- : jm(+ n), t)
- : r
- },
- t.startAngle = function (n) {
- return arguments.length
- ? (i = "function" == typeof n
- ? n
- : jm(+ n), t)
- : i
- },
- t.endAngle = function (n) {
- return arguments.length
- ? (o = "function" == typeof n
- ? n
- : jm(+ n), t)
- : o
- },
- t.source = function (e) {
- return arguments.length
- ? (n = e, t)
- : n
- },
- t.target = function (n) {
- return arguments.length
- ? (e = n, t)
- : e
- },
- t.context = function (n) {
- return arguments.length
- ? (u = null == n
- ? null
- : n, t)
- : u
- },
- t
- },
- Xm = function () {
- return new Na
- };
- Na.prototype = {
- constructor: Na,
- reset: function () {
- this.s = this.t = 0
- },
- add: function (t) {
- ka(Mx, t, this.t),
- ka(this, Mx.s, this.s),
- this.s
- ? this.t += Mx.t
- : this.s = Mx.t
- },
- valueOf: function () {
- return this.s
- }
- };
- var Vm,
- Wm,
- $m,
- Zm,
- Gm,
- Jm,
- Qm,
- Km,
- tx,
- nx,
- ex,
- rx,
- ix,
- ox,
- ux,
- ax,
- cx,
- sx,
- fx,
- lx,
- hx,
- px,
- dx,
- vx,
- _x,
- yx,
- gx,
- mx,
- xx,
- bx,
- wx,
- Mx = new Na,
- Tx = 1e-6,
- Nx = 1e-12,
- kx = Math.PI,
- Sx = kx / 2,
- Ax = kx / 4,
- Ex = 2 * kx,
- Cx = 180 / kx,
- zx = kx / 180,
- Px = Math.abs,
- qx = Math.atan,
- Lx = Math.atan2,
- Rx = Math.cos,
- Ux = Math.ceil,
- Dx = Math.exp,
- Ox = Math.log,
- Fx = Math.pow,
- Ix = Math.sin,
- Yx = Math.sign || function (t) {
- return t > 0
- ? 1
- : t < 0
- ? -1
- : 0;
- },
- Bx = Math.sqrt,
- jx = Math.tan,
- Hx = {
- Feature: function (t, n) {
- za(t.geometry, n)
- },
- FeatureCollection: function (t, n) {
- for (var e = t.features, r = -1, i = e.length; ++r < i;)
- za(e[r].geometry, n)
- }
- },
- Xx = {
- Sphere: function (t, n) {
- n.sphere()
- },
- Point: function (t, n) {
- t = t.coordinates,
- n.point(t[0], t[1], t[2])
- },
- MultiPoint: function (t, n) {
- for (var e = t.coordinates, r = -1, i = e.length; ++r < i;)
- t = e[r],
- n.point(t[0], t[1], t[2])
- },
- LineString: function (t, n) {
- Pa(t.coordinates, n, 0)
- },
- MultiLineString: function (t, n) {
- for (var e = t.coordinates, r = -1, i = e.length; ++r < i;)
- Pa(e[r], n, 0)
- },
- Polygon: function (t, n) {
- qa(t.coordinates, n)
- },
- MultiPolygon: function (t, n) {
- for (var e = t.coordinates, r = -1, i = e.length; ++r < i;)
- qa(e[r], n)
- },
- GeometryCollection: function (t, n) {
- for (var e = t.geometries, r = -1, i = e.length; ++r < i;)
- za(e[r], n)
- }
- },
- Vx = function (t, n) {
- t && Hx.hasOwnProperty(t.type)
- ? Hx[t.type](t, n)
- : za(t, n)
- },
- Wx = Xm(),
- $x = Xm(),
- Zx = {
- point: Ca,
- lineStart: Ca,
- lineEnd: Ca,
- polygonStart: function () {
- Wx.reset(),
- Zx.lineStart = La,
- Zx.lineEnd = Ra
- },
- polygonEnd: function () {
- var t =+ Wx;
- $x.add(t < 0
- ? Ex + t
- : t),
- this.lineStart = this.lineEnd = this.point = Ca
- },
- sphere: function () {
- $x.add(Ex)
- }
- },
- Gx = function (t) {
- return $x.reset(),
- Vx(t, Zx),
- 2 * $x
- },
- Jx = Xm(),
- Qx = {
- point: Xa,
- lineStart: Wa,
- lineEnd: $a,
- polygonStart: function () {
- Qx.point = Za,
- Qx.lineStart = Ga,
- Qx.lineEnd = Ja,
- Jx.reset(),
- Zx.polygonStart()
- },
- polygonEnd: function () {
- Zx.polygonEnd(),
- Qx.point = Xa,
- Qx.lineStart = Wa,
- Qx.lineEnd = $a,
- Wx < 0
- ? (Jm = -(Km = 180), Qm = -(tx = 90))
- : Jx > Tx
- ? tx = 90
- : Jx < -Tx && (Qm = -90),
- ux[0] = Jm,
- ux[1] = Km
- }
- },
- Kx = function (t) {
- var n,
- e,
- r,
- i,
- o,
- u,
- a;
- if (tx = Km = -(Jm = Qm = 1 / 0), ox = [], Vx(t, Qx), e = ox.length) {
- for (ox.sort(Ka), n = 1, r = ox[0], o = [r]; n < e; ++n)
- i = ox[n],
- tc(r, i[0]) || tc(r, i[1])
- ? (Qa(r[0], i[1]) > Qa(r[0], r[1]) && (r[1] = i[1]), Qa(i[0], r[1]) > Qa(r[0], r[1]) && (r[0] = i[0]))
- : o.push(r = i);
- for (u = -(1 / 0), e = o.length - 1, n = 0, r = o[e]; n <= e; r = i, ++n)
- i = o[n],
- (a = Qa(r[1], i[0])) > u && (u = a, Jm = i[0], Km = r[1])
- }
- return ox = ux = null,
- Jm === 1 / 0 || Qm === 1 / 0
- ? [
- [
- NaN, NaN
- ],
- [NaN, NaN]
- ]
- : [
- [
- Jm, Qm
- ],
- [Km, tx]
- ]
- },
- tb = {
- sphere: Ca,
- point: nc,
- lineStart: rc,
- lineEnd: uc,
- polygonStart: function () {
- tb.lineStart = ac,
- tb.lineEnd = cc
- },
- polygonEnd: function () {
- tb.lineStart = rc,
- tb.lineEnd = uc
- }
- },
- nb = function (t) {
- ax = cx = sx = fx = lx = hx = px = dx = vx = _x = yx = 0,
- Vx(t, tb);
- var n = vx,
- e = _x,
- r = yx,
- i = n * n + e * e + r * r;
- return i < Nx && (n = hx, e = px, r = dx, cx < Tx && (n = sx, e = fx, r = lx), i = n * n + e * e + r * r, i < Nx)
- ? [NaN, NaN]
- : [
- Lx(e, n) * Cx,
- Aa(r / Bx(i)) * Cx
- ]
- },
- eb = function (t) {
- return function () {
- return t
- }
- },
- rb = function (t, n) {
- function e(e, r) {
- return e = t(e, r),
- n(e[0], e[1])
- }
- return t.invert && n.invert && (e.invert = function (e, r) {
- return e = n.invert(e, r),
- e && t.invert(e[0], e[1])
- }),
- e
- };
- lc.invert = lc;
- var ib,
- ob,
- ub,
- ab,
- cb,
- sb,
- fb,
- lb,
- hb,
- pb,
- db,
- vb = function (t) {
- function n(n) {
- return n = t(n[0] * zx, n[1] * zx),
- n[0] *= Cx,
- n[1] *= Cx,
- n
- }
- return t = hc(t[0] * zx, t[1] * zx, t.length > 2
- ? t[2] * zx
- : 0),
- n.invert = function (n) {
- return n = t.invert(n[0] * zx, n[1] * zx),
- n[0] *= Cx,
- n[1] *= Cx,
- n
- },
- n
- },
- _b = function () {
- function t(t, n) {
- e.push(t = r(t, n)),
- t[0] *= Cx,
- t[1] *= Cx
- }
- function n() {
- var t = i.apply(this, arguments),
- n = o.apply(this, arguments) * zx,
- c = u.apply(this, arguments) * zx;
- return e = [],
- r = hc(-t[0] * zx, -t[1] * zx, 0).invert,
- _c(a, n, c, 1),
- t = {
- type: "Polygon",
- coordinates: [e]
- },
- e = r = null,
- t
- }
- var e,
- r,
- i = eb([0, 0]),
- o = eb(90),
- u = eb(6),
- a = {
- point: t
- };
- return n.center = function (t) {
- return arguments.length
- ? (i = "function" == typeof t
- ? t
- : eb([ + t[0], + t[1]
- ]), n)
- : i
- },
- n.radius = function (t) {
- return arguments.length
- ? (o = "function" == typeof t
- ? t
- : eb(+ t), n)
- : o
- },
- n.precision = function (t) {
- return arguments.length
- ? (u = "function" == typeof t
- ? t
- : eb(+ t), n)
- : u
- },
- n
- },
- yb = function () {
- var t,
- n = [];
- return {
- point: function (n, e) {
- t.push([n, e])
- },
- lineStart: function () {
- n.push(t = [])
- },
- lineEnd: Ca,
- rejoin: function () {
- n.length > 1 && n.push(n.pop().concat(n.shift()))
- },
- result: function () {
- var e = n;
- return n = [],
- t = null,
- e
- }
- }
- },
- gb = function (t, n, e, r, i, o) {
- var u,
- a = t[0],
- c = t[1],
- s = n[0],
- f = n[1],
- l = 0,
- h = 1,
- p = s - a,
- d = f - c;
- if (u = e - a, p || !(u > 0)) {
- if (u /= p, p < 0) {
- if (u < l)
- return;
- u < h && (h = u)
- } else if (p > 0) {
- if (u > h)
- return;
- u > l && (l = u)
- }
- if (u = i - a, p || !(u < 0)) {
- if (u /= p, p < 0) {
- if (u > h)
- return;
- u > l && (l = u)
- } else if (p > 0) {
- if (u < l)
- return;
- u < h && (h = u)
- }
- if (u = r - c, d || !(u > 0)) {
- if (u /= d, d < 0) {
- if (u < l)
- return;
- u < h && (h = u)
- } else if (d > 0) {
- if (u > h)
- return;
- u > l && (l = u)
- }
- if (u = o - c, d || !(u < 0)) {
- if (u /= d, d < 0) {
- if (u > h)
- return;
- u > l && (l = u)
- } else if (d > 0) {
- if (u < l)
- return;
- u < h && (h = u)
- }
- return l > 0 && (t[0] = a + l * p, t[1] = c + l * d),
- h < 1 && (n[0] = a + h * p, n[1] = c + h * d),
- !0
- }
- }
- }
- }
- },
- mb = function (t, n) {
- return Px(t[0] - n[0]) < Tx && Px(t[1] - n[1]) < Tx
- },
- xb = function (t, n, e, r, i) {
- var o,
- u,
- a = [],
- c = [];
- if (t.forEach(function (t) {
- if (!((n = t.length - 1) <= 0)) {
- var n,
- e,
- r = t[0],
- u = t[n];
- if (mb(r, u)) {
- for (i.lineStart(), o = 0; o < n; ++o)
- i.point((r = t[o])[0], r[1]);
- return void i.lineEnd()
- }
- a.push(e = new gc(r, t, null, !0)),
- c.push(e.o = new gc(r, null, e, !1)),
- a.push(e = new gc(u, t, null, !1)),
- c.push(e.o = new gc(u, null, e, !0))
- }
- }), a.length) {
- for (c.sort(n), mc(a), mc(c), o = 0, u = c.length; o < u; ++o)
- c[o].e = e = !e;
- for (var s, f, l = a[0];;) {
- for (var h = l, p = !0; h.v;)
- if ((h = h.n) === l)
- return;
- s = h.z,
- i.lineStart();
- do {
- if (h.v = h.o.v = !0, h.e) {
- if (p)
- for (o = 0, u = s.length; o < u; ++o)
- i.point((f = s[o])[0], f[1]);
- else
- r(h.x, h.n.x, 1, i);
- h = h.n
- } else {
- if (p)
- for (s = h.p.z, o = s.length - 1; o >= 0; --o)
- i.point((f = s[o])[0], f[1]);
- else
- r(h.x, h.p.x, -1, i);
- h = h.p
- }
- h = h.o,
- s = h.z,
- p = !p
- } while (!h.v);
- i.lineEnd()
- }
- }
- },
- bb = 1e9,
- wb = -bb,
- Mb = function () {
- var t,
- n,
- e,
- r = 0,
- i = 0,
- o = 960,
- u = 500;
- return e = {
- stream: function (e) {
- return t && n === e
- ? t
- : t = xc(r, i, o, u)(n = e)
- },
- extent: function (a) {
- return arguments.length
- ? (r =+ a[0][0], i =+ a[0][1], o =+ a[1][0], u =+ a[1][1], t = n = null, e)
- : [
- [
- r, i
- ],
- [o, u]
- ]
- }
- }
- },
- Tb = Xm(),
- Nb = {
- sphere: Ca,
- point: Ca,
- lineStart: bc,
- lineEnd: Ca,
- polygonStart: Ca,
- polygonEnd: Ca
- },
- kb = function (t) {
- return Tb.reset(),
- Vx(t, Nb), + Tb
- },
- Sb = [
- null, null
- ],
- Ab = {
- type: "LineString",
- coordinates: Sb
- },
- Eb = function (t, n) {
- return Sb[0] = t,
- Sb[1] = n,
- kb(Ab)
- },
- Cb = function (t, n) {
- var e = t[0] * zx,
- r = t[1] * zx,
- i = n[0] * zx,
- o = n[1] * zx,
- u = Rx(r),
- a = Ix(r),
- c = Rx(o),
- s = Ix(o),
- f = u * Rx(e),
- l = u * Ix(e),
- h = c * Rx(i),
- p = c * Ix(i),
- d = 2 * Aa(Bx(Ea(o - r) + u * c * Ea(i - e))),
- v = Ix(d),
- _ = d
- ? function (t) {
- var n = Ix(t *= d) / v,
- e = Ix(d - t) / v,
- r = e * f + n * h,
- i = e * l + n * p,
- o = e * a + n * s;
- return [
- Lx(i, r) * Cx,
- Lx(o, Bx(r * r + i * i)) * Cx
- ]
- }
- : function () {
- return [
- e * Cx,
- r * Cx
- ]
- };
- return _.distance = d,
- _
- },
- zb = function (t) {
- return t
- },
- Pb = Xm(),
- qb = Xm(),
- Lb = {
- point: Ca,
- lineStart: Ca,
- lineEnd: Ca,
- polygonStart: function () {
- Lb.lineStart = Ec,
- Lb.lineEnd = Pc
- },
- polygonEnd: function () {
- Lb.lineStart = Lb.lineEnd = Lb.point = Ca,
- Pb.add(Px(qb)),
- qb.reset()
- },
- result: function () {
- var t = Pb / 2;
- return Pb.reset(),
- t
- }
- },
- Rb = 1 / 0,
- Ub = Rb,
- Db = -Rb,
- Ob = Db,
- Fb = {
- point: qc,
- lineStart: Ca,
- lineEnd: Ca,
- polygonStart: Ca,
- polygonEnd: Ca,
- result: function () {
- var t = [
- [
- Rb, Ub
- ],
- [Db, Ob]
- ];
- return Db = Ob = -(Ub = Rb = 1 / 0),
- t
- }
- },
- Ib = 0,
- Yb = 0,
- Bb = 0,
- jb = 0,
- Hb = 0,
- Xb = 0,
- Vb = 0,
- Wb = 0,
- $b = 0,
- Zb = {
- point: Lc,
- lineStart: Rc,
- lineEnd: Oc,
- polygonStart: function () {
- Zb.lineStart = Fc,
- Zb.lineEnd = Ic
- },
- polygonEnd: function () {
- Zb.point = Lc,
- Zb.lineStart = Rc,
- Zb.lineEnd = Oc
- },
- result: function () {
- var t = $b
- ? [
- Vb / $b,
- Wb / $b
- ]
- : Xb
- ? [
- jb / Xb,
- Hb / Xb
- ]
- : Bb
- ? [
- Ib / Bb,
- Yb / Bb
- ]
- : [NaN, NaN];
- return Ib = Yb = Bb = jb = Hb = Xb = Vb = Wb = $b = 0,
- t
- }
- };
- jc.prototype = {
- _radius: 4.5,
- pointRadius: function (t) {
- return this._radius = t,
- this
- },
- polygonStart: function () {
- this._line = 0
- },
- polygonEnd: function () {
- this._line = NaN
- },
- lineStart: function () {
- this._point = 0
- },
- lineEnd: function () {
- 0 === this._line && this
- ._context
- .closePath(),
- this._point = NaN
- },
- point: function (t, n) {
- switch (this._point) {
- case 0:
- this
- ._context
- .moveTo(t, n),
- this._point = 1;
- break;
- case 1:
- this
- ._context
- .lineTo(t, n);
- break;
- default:
- this
- ._context
- .moveTo(t + this._radius, n),
- this
- ._context
- .arc(t, n, this._radius, 0, Ex)
- }
- },
- result: Ca
- },
- Hc.prototype = {
- _circle: Xc(4.5),
- pointRadius: function (t) {
- return this._circle = Xc(t),
- this
- },
- polygonStart: function () {
- this._line = 0
- },
- polygonEnd: function () {
- this._line = NaN
- },
- lineStart: function () {
- this._point = 0
- },
- lineEnd: function () {
- 0 === this._line && this
- ._string
- .push("Z"),
- this._point = NaN
- },
- point: function (t, n) {
- switch (this._point) {
- case 0:
- this
- ._string
- .push("M", t, ",", n),
- this._point = 1;
- break;
- case 1:
- this
- ._string
- .push("L", t, ",", n);
- break;
- default:
- this
- ._string
- .push("M", t, ",", n, this._circle)
- }
- },
- result: function () {
- if (this._string.length) {
- var t = this
- ._string
- .join("");
- return this._string = [],
- t
- }
- }
- };
- var Gb = function (t, n) {
- function e(t) {
- return t && ("function" == typeof o && i.pointRadius(+ o.apply(this, arguments)), Vx(t, r(i))),
- i.result()
- }
- var r,
- i,
- o = 4.5;
- return e.area = function (t) {
- return Vx(t, r(Lb)),
- Lb.result()
- },
- e.bounds = function (t) {
- return Vx(t, r(Fb)),
- Fb.result()
- },
- e.centroid = function (t) {
- return Vx(t, r(Zb)),
- Zb.result()
- },
- e.projection = function (n) {
- return arguments.length
- ? (r = null == (t = n)
- ? zb
- : n.stream, e)
- : t
- },
- e.context = function (t) {
- return arguments.length
- ? (i = null == (n = t)
- ? new Hc
- : new jc(t), "function" != typeof o && i.pointRadius(o), e)
- : n
- },
- e.pointRadius = function (t) {
- return arguments.length
- ? (o = "function" == typeof t
- ? t
- : (i.pointRadius(+ t), + t), e)
- : o
- },
- e
- .projection(t)
- .context(n)
- },
- Jb = Xm(),
- Qb = function (t, n) {
- var e = n[0],
- r = n[1],
- i = [
- Ix(e), -Rx(e),
- 0
- ],
- o = 0,
- u = 0;
- Jb.reset();
- for (var a = 0, c = t.length; a < c; ++a)
- if (f = (s = t[a]).length)
- for (var s, f, l = s[f - 1], h = l[0], p = l[1] / 2 + Ax, d = Ix(p), v = Rx(p), _ = 0; _ < f; ++_, h = g, d = x, v = b, l = y) {
- var y = s[_],
- g = y[0],
- m = y[1] / 2 + Ax,
- x = Ix(m),
- b = Rx(m),
- w = g - h,
- M = w >= 0
- ? 1
- : -1,
- T = M * w,
- N = T > kx,
- k = d * x;
- if (Jb.add(Lx(k * M * Ix(T), v * b + k * Rx(T))), o += N
- ? w + M * Ex
- : w, N ^ h >= e ^ g >= e) {
- var S = Ya(Fa(l), Fa(y));
- Ha(S);
- var A = Ya(i, S);
- Ha(A);
- var E = (N ^ w >= 0
- ? -1
- : 1) * Aa(A[2]);
- (r > E || r === E && (S[0] || S[1])) && (u += N ^ w >= 0
- ? 1
- : -1)
- }
- }
- return (o < -Tx || o < Tx && Jb < -Tx) ^ 1 & u
- },
- Kb = function (t, n, e, r) {
- return function (i, o) {
- function u(n, e) {
- var r = i(n, e);
- t(n = r[0], e = r[1]) && o.point(n, e)
- }
- function a(t, n) {
- var e = i(t, n);
- _.point(e[0], e[1])
- }
- function c() {
- b.point = a,
- _.lineStart()
- }
- function s() {
- b.point = u,
- _.lineEnd()
- }
- function f(t, n) {
- v.push([t, n]);
- var e = i(t, n);
- m.point(e[0], e[1])
- }
- function l() {
- m.lineStart(),
- v = []
- }
- function h() {
- f(v[0][0], v[0][1]),
- m.lineEnd();
- var t,
- n,
- e,
- r,
- i = m.clean(),
- u = g.result(),
- a = u.length;
- if (v.pop(), p.push(v), v = null, a)
- if (1 & i) {
- if (e = u[0], (n = e.length - 1) > 0) {
- for (x || (o.polygonStart(), x = !0), o.lineStart(), t = 0; t < n; ++t)
- o.point((r = e[t])[0], r[1]);
- o.lineEnd()
- }
- } else
- a > 1 && 2 & i && u.push(u.pop().concat(u.shift())),
- d.push(u.filter(Vc))
- }
- var p,
- d,
- v,
- _ = n(o),
- y = i.invert(r[0], r[1]),
- g = yb(),
- m = n(g),
- x = !1,
- b = {
- point: u,
- lineStart: c,
- lineEnd: s,
- polygonStart: function () {
- b.point = f,
- b.lineStart = l,
- b.lineEnd = h,
- d = [],
- p = []
- },
- polygonEnd: function () {
- b.point = u,
- b.lineStart = c,
- b.lineEnd = s,
- d = Js(d);
- var t = Qb(p, y);
- d.length
- ? (x || (o.polygonStart(), x = !0), xb(d, Wc, t, e, o))
- : t && (x || (o.polygonStart(), x = !0), o.lineStart(), e(null, null, 1, o), o.lineEnd()),
- x && (o.polygonEnd(), x = !1),
- d = p = null
- },
- sphere: function () {
- o.polygonStart(),
- o.lineStart(),
- e(null, null, 1, o),
- o.lineEnd(),
- o.polygonEnd()
- }
- };
- return b
- }
- },
- tw = Kb(function () {
- return !0
- }, $c, Gc, [-kx, -Sx
- ]),
- nw = function (t, n) {
- function e(e, r, i, o) {
- _c(o, t, n, i, e, r)
- }
- function r(t, n) {
- return Rx(t) * Rx(n) > a
- }
- function i(t) {
- var n,
- e,
- i,
- a,
- f;
- return {
- lineStart: function () {
- a = i = !1,
- f = 1
- },
- point: function (l, h) {
- var p,
- d = [
- l, h
- ],
- v = r(l, h),
- _ = c
- ? v
- ? 0
- : u(l, h)
- : v
- ? u(l + (l < 0
- ? kx
- : -kx), h)
- : 0;
- if (!n && (a = i = v) && t.lineStart(), v !== i && (p = o(n, d), (mb(n, p) || mb(d, p)) && (d[0] += Tx, d[1] += Tx, v = r(d[0], d[1]))), v !== i)
- f = 0,
- v
- ? (t.lineStart(), p = o(d, n), t.point(p[0], p[1]))
- : (p = o(n, d), t.point(p[0], p[1]), t.lineEnd()),
- n = p;
- else if (s && n && c ^ v) {
- var y;
- _ & e || !(y = o(d, n, !0)) || (f = 0, c
- ? (t.lineStart(), t.point(y[0][0], y[0][1]), t.point(y[1][0], y[1][1]), t.lineEnd())
- : (t.point(y[1][0], y[1][1]), t.lineEnd(), t.lineStart(), t.point(y[0][0], y[0][1])))
- }
- !v || n && mb(n, d) || t.point(d[0], d[1]),
- n = d,
- i = v,
- e = _
- },
- lineEnd: function () {
- i && t.lineEnd(),
- n = null
- },
- clean: function () {
- return f | (a && i) << 1
- }
- }
- }
- function o(t, n, e) {
- var r = Fa(t),
- i = Fa(n),
- o = [
- 1, 0, 0
- ],
- u = Ya(r, i),
- c = Ia(u, u),
- s = u[0],
- f = c - s * s;
- if (!f)
- return !e && t;
- var l = a * c / f,
- h = -a * s / f,
- p = Ya(o, u),
- d = ja(o, l),
- v = ja(u, h);
- Ba(d, v);
- var _ = p,
- y = Ia(d, _),
- g = Ia(_, _),
- m = y * y - g * (Ia(d, d) - 1);
- if (!(m < 0)) {
- var x = Bx(m),
- b = ja(_, (-y - x) / g);
- if (Ba(b, d), b = Oa(b), !e)
- return b;
- var w,
- M = t[0],
- T = n[0],
- N = t[1],
- k = n[1];
- T < M && (w = M, M = T, T = w);
- var S = T - M,
- A = Px(S - kx) < Tx,
- E = A || S < Tx;
- if (!A && k < N && (w = N, N = k, k = w), E
- ? A
- ? N + k > 0 ^ b[1] < (Px(b[0] - M) < Tx
- ? N
- : k)
- : N <= b[1] && b[1] <= k
- : S > kx ^ (M <= b[0] && b[0] <= T)) {
- var C = ja(_, (-y + x) / g);
- return Ba(C, d),
- [b, Oa(C)]
- }
- }
- }
- function u(n, e) {
- var r = c
- ? t
- : kx - t,
- i = 0;
- return n < -r
- ? i |= 1
- : n > r && (i |= 2),
- e < -r
- ? i |= 4
- : e > r && (i |= 8),
- i
- }
- var a = Rx(t),
- c = a > 0,
- s = Px(a) > Tx;
- return Kb(r, i, e, c
- ? [
- 0, -t
- ]
- : [-kx,
- t - kx
- ])
- },
- ew = function (t) {
- return {stream: Jc(t)}
- };
- Qc.prototype = {
- constructor: Qc,
- point: function (t, n) {
- this
- .stream
- .point(t, n)
- },
- sphere: function () {
- this
- .stream
- .sphere()
- },
- lineStart: function () {
- this
- .stream
- .lineStart()
- },
- lineEnd: function () {
- this
- .stream
- .lineEnd()
- },
- polygonStart: function () {
- this
- .stream
- .polygonStart()
- },
- polygonEnd: function () {
- this
- .stream
- .polygonEnd()
- }
- };
- var rw = 16,
- iw = Rx(30 * zx),
- ow = function (t, n) {
- return + n
- ? es(t, n)
- : ns(t)
- },
- uw = Jc({
- point: function (t, n) {
- this
- .stream
- .point(t * zx, n * zx)
- }
- }),
- aw = function () {
- return os(as)
- .scale(155.424)
- .center([0, 33.6442])
- },
- cw = function () {
- return aw()
- .parallels([29.5, 45.5])
- .scale(1070)
- .translate([480, 250])
- .rotate([96, 0])
- .center([-.6, 38.7])
- },
- sw = function () {
- function t(t) {
- var n = t[0],
- e = t[1];
- return a = null,
- i.point(n, e),
- a || (o.point(n, e), a) || (u.point(n, e), a)
- }
- function n() {
- return e = r = null,
- t
- }
- var e,
- r,
- i,
- o,
- u,
- a,
- c = cw(),
- s = aw()
- .rotate([154, 0])
- .center([-2, 58.5])
- .parallels([55, 65]),
- f = aw()
- .rotate([157, 0])
- .center([-3, 19.9])
- .parallels([8, 18]),
- l = {
- point: function (t, n) {
- a = [t, n]
- }
- };
- return t.invert = function (t) {
- var n = c.scale(),
- e = c.translate(),
- r = (t[0] - e[0]) / n,
- i = (t[1] - e[1]) / n;
- return (i >= .12 && i < .234 && r >= -.425 && r < -.214
- ? s
- : i >= .166 && i < .234 && r >= -.214 && r < -.115
- ? f
- : c).invert(t)
- },
- t.stream = function (t) {
- return e && r === t
- ? e
- : e = cs([
- c.stream(r = t),
- s.stream(t),
- f.stream(t)
- ])
- },
- t.precision = function (t) {
- return arguments.length
- ? (c.precision(t), s.precision(t), f.precision(t), n())
- : c.precision()
- },
- t.scale = function (n) {
- return arguments.length
- ? (c.scale(n), s.scale(.35 * n), f.scale(n), t.translate(c.translate()))
- : c.scale()
- },
- t.translate = function (t) {
- if (!arguments.length)
- return c.translate();
- var e = c.scale(),
- r =+ t[0],
- a =+ t[1];
- return i = c
- .translate(t)
- .clipExtent([
- [
- r - .455 * e,
- a - .238 * e
- ],
- [
- r + .455 * e,
- a + .238 * e
- ]
- ])
- .stream(l),
- o = s
- .translate([
- r - .307 * e,
- a + .201 * e
- ])
- .clipExtent([
- [
- r - .425 * e + Tx,
- a + .12 * e + Tx
- ],
- [
- r - .214 * e - Tx,
- a + .234 * e - Tx
- ]
- ])
- .stream(l),
- u = f
- .translate([
- r - .205 * e,
- a + .212 * e
- ])
- .clipExtent([
- [
- r - .214 * e + Tx,
- a + .166 * e + Tx
- ],
- [
- r - .115 * e - Tx,
- a + .234 * e - Tx
- ]
- ])
- .stream(l),
- n()
- },
- t.fitExtent = function (n, e) {
- return Kc(t, n, e)
- },
- t.fitSize = function (n, e) {
- return ts(t, n, e)
- },
- t.scale(1070)
- },
- fw = ss(function (t) {
- return Bx(2 / (1 + t))
- });
- fw.invert = fs(function (t) {
- return 2 * Aa(t / 2)
- });
- var lw = function () {
- return rs(fw)
- .scale(124.75)
- .clipAngle(179.999)
- },
- hw = ss(function (t) {
- return (t = Sa(t)) && t / Ix(t)
- });
- hw.invert = fs(function (t) {
- return t
- });
- var pw = function () {
- return rs(hw)
- .scale(79.4188)
- .clipAngle(179.999)
- };
- ls.invert = function (t, n) {
- return [
- t, 2 * qx(Dx(n)) - Sx
- ]
- };
- var dw = function () {
- return hs(ls).scale(961 / Ex)
- },
- vw = function () {
- return os(ds)
- .scale(109.5)
- .parallels([30, 30])
- };
- vs.invert = vs;
- var _w = function () {
- return rs(vs).scale(152.63)
- },
- yw = function () {
- return os(_s)
- .scale(131.154)
- .center([0, 13.9389])
- };
- ys.invert = fs(qx);
- var gw = function () {
- return rs(ys)
- .scale(144.049)
- .clipAngle(60)
- },
- mw = function () {
- function t() {
- return i = o = null,
- u
- }
- var n,
- e,
- r,
- i,
- o,
- u,
- a = 1,
- c = 0,
- s = 0,
- f = zb,
- l = null,
- h = zb;
- return u = {
- stream: function (t) {
- return i && o === t
- ? i
- : i = f(h(o = t))
- },
- clipExtent: function (i) {
- return arguments.length
- ? (h = null == i
- ? (l = n = e = r = null, zb)
- : xc(l =+ i[0][0], n =+ i[0][1], e =+ i[1][0], r =+ i[1][1]), t())
- : null == l
- ? null
- : [
- [
- l, n
- ],
- [e, r]
- ]
- },
- scale: function (n) {
- return arguments.length
- ? (f = gs(a =+ n, c, s), t())
- : a
- },
- translate: function (n) {
- return arguments.length
- ? (f = gs(a, c =+ n[0], s =+ n[1]), t())
- : [c, s]
- },
- fitExtent: function (t, n) {
- return Kc(u, t, n)
- },
- fitSize: function (t, n) {
- return ts(u, t, n)
- }
- }
- };
- ms.invert = fs(Aa);
- var xw = function () {
- return rs(ms)
- .scale(249.5)
- .clipAngle(90 + Tx)
- };
- xs.invert = fs(function (t) {
- return 2 * qx(t)
- });
- var bw = function () {
- return rs(xs)
- .scale(250)
- .clipAngle(142)
- };
- bs.invert = function (t, n) {
- return [-n,
- 2 * qx(Dx(t)) - Sx
- ]
- };
- var ww = function () {
- var t = hs(bs),
- n = t.center,
- e = t.rotate;
- return t.center = function (t) {
- return arguments.length
- ? n([-t[1],
- t[0]
- ])
- : (t = n(), [
- t[1], -t[0]
- ])
- },
- t.rotate = function (t) {
- return arguments.length
- ? e([
- t[0], t[1], t.length > 2
- ? t[2] + 90
- : 90
- ])
- : (t = e(), [
- t[0], t[1], t[2] - 90
- ])
- },
- e([0, 0, 90]).scale(159.155)
- };
- t.version = ws,
- t.bisect = ks,
- t.bisectRight = ks,
- t.bisectLeft = Ss,
- t.ascending = Ms,
- t.bisector = Ts,
- t.descending = As,
- t.deviation = zs,
- t.extent = Ps,
- t.histogram = Hs,
- t.thresholdFreedmanDiaconis = Vs,
- t.thresholdScott = Ws,
- t.thresholdSturges = js,
- t.max = $s,
- t.mean = Zs,
- t.median = Gs,
- t.merge = Js,
- t.min = Qs,
- t.pairs = Ks,
- t.permute = tf,
- t.quantile = Xs,
- t.range = Os,
- t.scan = nf,
- t.shuffle = ef,
- t.sum = rf,
- t.ticks = Bs,
- t.tickStep = e,
- t.transpose = of,
- t.variance = Cs,
- t.zip = uf,
- t.entries = hf,
- t.keys = ff,
- t.values = lf,
- t.map = o,
- t.set = l,
- t.nest = cf,
- t.randomUniform = pf,
- t.randomNormal = df,
- t.randomLogNormal = vf,
- t.randomBates = yf,
- t.randomIrwinHall = _f,
- t.randomExponential = gf,
- t.easeLinear = h,
- t.easeQuad = v,
- t.easeQuadIn = p,
- t.easeQuadOut = d,
- t.easeQuadInOut = v,
- t.easeCubic = g,
- t.easeCubicIn = _,
- t.easeCubicOut = y,
- t.easeCubicInOut = g,
- t.easePoly = wf,
- t.easePolyIn = xf,
- t.easePolyOut = bf,
- t.easePolyInOut = wf,
- t.easeSin = b,
- t.easeSinIn = m,
- t.easeSinOut = x,
- t.easeSinInOut = b,
- t.easeExp = T,
- t.easeExpIn = w,
- t.easeExpOut = M,
- t.easeExpInOut = T,
- t.easeCircle = S,
- t.easeCircleIn = N,
- t.easeCircleOut = k,
- t.easeCircleInOut = S,
- t.easeBounce = E,
- t.easeBounceIn = A,
- t.easeBounceOut = E,
- t.easeBounceInOut = C,
- t.easeBack = Of,
- t.easeBackIn = Uf,
- t.easeBackOut = Df,
- t.easeBackInOut = Of,
- t.easeElastic = jf,
- t.easeElasticIn = Bf,
- t.easeElasticOut = jf,
- t.easeElasticInOut = Hf,
- t.polygonArea = Xf,
- t.polygonCentroid = Vf,
- t.polygonHull = $f,
- t.polygonContains = Zf,
- t.polygonLength = Gf,
- t.path = L,
- t.quadtree = I,
- t.queue = Z,
- t.arc = wl,
- t.area = Nl,
- t.line = Tl,
- t.pie = Al,
- t.radialArea = zl,
- t.radialLine = Cl,
- t.symbol = Jl,
- t.symbols = Gl,
- t.symbolCircle = Pl,
- t.symbolCross = ql,
- t.symbolDiamond = Ul,
- t.symbolSquare = Bl,
- t.symbolStar = Yl,
- t.symbolTriangle = Hl,
- t.symbolWye = Zl,
- t.curveBasisClosed = th,
- t.curveBasisOpen = nh,
- t.curveBasis = Kl,
- t.curveBundle = eh,
- t.curveCardinalClosed = ih,
- t.curveCardinalOpen = oh,
- t.curveCardinal = rh,
- t.curveCatmullRomClosed = ah,
- t.curveCatmullRomOpen = ch,
- t.curveCatmullRom = uh,
- t.curveLinearClosed = sh,
- t.curveLinear = Ml,
- t.curveMonotoneX = zt,
- t.curveMonotoneY = Pt,
- t.curveNatural = fh,
- t.curveStep = lh,
- t.curveStepAfter = Dt,
- t.curveStepBefore = Ut,
- t.stack = vh,
- t.stackOffsetExpand = _h,
- t.stackOffsetNone = ph,
- t.stackOffsetSilhouette = yh,
- t.stackOffsetWiggle = gh,
- t.stackOrderAscending = mh,
- t.stackOrderDescending = xh,
- t.stackOrderInsideOut = bh,
- t.stackOrderNone = dh,
- t.stackOrderReverse = wh,
- t.color = Bt,
- t.rgb = Vt,
- t.hsl = Gt,
- t.lab = tn,
- t.hcl = cn,
- t.cubehelix = ln,
- t.interpolate = _p,
- t.interpolateArray = sp,
- t.interpolateDate = fp,
- t.interpolateNumber = lp,
- t.interpolateObject = hp,
- t.interpolateRound = yp,
- t.interpolateString = vp,
- t.interpolateTransformCss = bp,
- t.interpolateTransformSvg = wp,
- t.interpolateZoom = Sp,
- t.interpolateRgb = up,
- t.interpolateRgbBasis = ap,
- t.interpolateRgbBasisClosed = cp,
- t.interpolateHsl = Ap,
- t.interpolateHslLong = Ep,
- t.interpolateLab = En,
- t.interpolateHcl = Cp,
- t.interpolateHclLong = zp,
- t.interpolateCubehelix = Pp,
- t.interpolateCubehelixLong = qp,
- t.interpolateBasis = rp,
- t.interpolateBasisClosed = ip,
- t.quantize = Lp,
- t.dispatch = Pn,
- t.dsvFormat = Op,
- t.csvParse = Ip,
- t.csvParseRows = Yp,
- t.csvFormat = Bp,
- t.csvFormatRows = jp,
- t.tsvParse = Xp,
- t.tsvParseRows = Vp,
- t.tsvFormat = Wp,
- t.tsvFormatRows = $p,
- t.request = Zp,
- t.html = Jp,
- t.json = Qp,
- t.text = Kp,
- t.xml = td,
- t.csv = ed,
- t.tsv = rd,
- t.now = jn,
- t.timer = Vn,
- t.timerFlush = Wn,
- t.timeout = pd,
- t.interval = dd,
- t.timeInterval = Qn,
- t.timeMillisecond = yd,
- t.timeMilliseconds = gd,
- t.timeSecond = Td,
- t.timeSeconds = Nd,
- t.timeMinute = kd,
- t.timeMinutes = Sd,
- t.timeHour = Ad,
- t.timeHours = Ed,
- t.timeDay = Cd,
- t.timeDays = zd,
- t.timeWeek = Pd,
- t.timeWeeks = Fd,
- t.timeSunday = Pd,
- t.timeSundays = Fd,
- t.timeMonday = qd,
- t.timeMondays = Id,
- t.timeTuesday = Ld,
- t.timeTuesdays = Yd;
- t.timeWednesday = Rd;
- t.timeWednesdays = Bd,
- t.timeThursday = Ud,
- t.timeThursdays = jd,
- t.timeFriday = Dd,
- t.timeFridays = Hd,
- t.timeSaturday = Od,
- t.timeSaturdays = Xd,
- t.timeMonth = Vd,
- t.timeMonths = Wd,
- t.timeYear = $d,
- t.timeYears = Zd,
- t.utcMillisecond = yd,
- t.utcMilliseconds = gd,
- t.utcSecond = Td,
- t.utcSeconds = Nd,
- t.utcMinute = Gd,
- t.utcMinutes = Jd,
- t.utcHour = Qd,
- t.utcHours = Kd,
- t.utcDay = tv,
- t.utcDays = nv,
- t.utcWeek = ev,
- t.utcWeeks = sv,
- t.utcSunday = ev,
- t.utcSundays = sv,
- t.utcMonday = rv,
- t.utcMondays = fv,
- t.utcTuesday = iv,
- t.utcTuesdays = lv,
- t.utcWednesday = ov,
- t.utcWednesdays = hv,
- t.utcThursday = uv,
- t.utcThursdays = pv,
- t.utcFriday = av,
- t.utcFridays = dv,
- t.utcSaturday = cv,
- t.utcSaturdays = vv,
- t.utcMonth = _v,
- t.utcMonths = yv,
- t.utcYear = gv,
- t.utcYears = xv,
- t.formatLocale = Pv,
- t.formatDefaultLocale = re,
- t.formatSpecifier = Ev,
- t.precisionFixed = Lv,
- t.precisionPrefix = Rv,
- t.precisionRound = Uv,
- t.isoFormat = Bv,
- t.isoParse = jv,
- t.timeFormatLocale = ae,
- t.timeFormatDefaultLocale = nr,
- t.scaleBand = or,
- t.scalePoint = ar,
- t.scaleIdentity = yr,
- t.scaleLinear = _r,
- t.scaleLog = Tr,
- t.scaleOrdinal = ir,
- t.scaleImplicit = Wv,
- t.scalePow = kr,
- t.scaleSqrt = Sr,
- t.scaleQuantile = Ar,
- t.scaleQuantize = Er,
- t.scaleThreshold = Cr,
- t.scaleTime = u_,
- t.scaleUtc = a_,
- t.schemeCategory10 = s_,
- t.schemeCategory20b = f_,
- t.schemeCategory20c = l_,
- t.schemeCategory20 = h_,
- t.scaleSequential = Rr,
- t.interpolateCubehelixDefault = p_,
- t.interpolateRainbow = y_,
- t.interpolateWarm = d_,
- t.interpolateCool = v_,
- t.interpolateViridis = g_,
- t.interpolateMagma = m_,
- t.interpolateInferno = x_,
- t.interpolatePlasma = b_,
- t.creator = N_,
- t.customEvent = Xr,
- t.local = Or,
- t.matcher = C_,
- t.mouse = U_,
- t.namespace = T_,
- t.namespaces = M_,
- t.select = gy,
- t.selectAll = my,
- t.selection = Pi,
- t.selector = D_,
- t.selectorAll = F_,
- t.touch = xy,
- t.touches = by,
- t.window = iy,
- t.active = ig,
- t.interrupt = Py,
- t.transition = fo,
- t.axisTop = mo,
- t.axisRight = xo,
- t.axisBottom = bo,
- t.axisLeft = wo,
- t.cluster = hg,
- t.hierarchy = zo,
- t.pack = Sg,
- t.packSiblings = Ng,
- t.packEnclose = Tg,
- t.partition = Cg,
- t.stratify = Lg,
- t.tree = Rg,
- t.treemap = Fg,
- t.treemapBinary = Ig,
- t.treemapDice = Eg,
- t.treemapSlice = Ug,
- t.treemapSliceDice = Yg,
- t.treemapSquarify = Og,
- t.treemapResquarify = Bg,
- t.forceCenter = jg,
- t.forceCollide = Vg,
- t.forceLink = Wg,
- t.forceManyBody = Jg,
- t.forceSimulation = Gg,
- t.forceX = Qg,
- t.forceY = Kg,
- t.drag = rm,
- t.dragDisable = nm,
- t.dragEnable = mu,
- t.voronoi = dm,
- t.zoom = gm,
- t.zoomIdentity = _m,
- t.zoomTransform = ia,
- t.brush = Lm,
- t.brushX = _a,
- t.brushY = ya,
- t.brushSelection = va,
- t.chord = Ym,
- t.ribbon = Hm,
- t.geoAlbers = cw,
- t.geoAlbersUsa = sw,
- t.geoArea = Gx,
- t.geoAzimuthalEqualArea = lw,
- t.geoAzimuthalEqualAreaRaw = fw,
- t.geoAzimuthalEquidistant = pw,
- t.geoAzimuthalEquidistantRaw = hw,
- t.geoBounds = Kx,
- t.geoCentroid = nb,
- t.geoCircle = _b,
- t.geoClipExtent = Mb,
- t.geoConicConformal = vw,
- t.geoConicConformalRaw = ds,
- t.geoConicEqualArea = aw,
- t.geoConicEqualAreaRaw = as,
- t.geoConicEquidistant = yw,
- t.geoConicEquidistantRaw = _s,
- t.geoDistance = Eb,
- t.geoEquirectangular = _w,
- t.geoEquirectangularRaw = vs,
- t.geoGnomonic = gw,
- t.geoGnomonicRaw = ys,
- t.geoGraticule = Sc,
- t.geoGraticule10 = Ac,
- t.geoIdentity = mw,
- t.geoInterpolate = Cb,
- t.geoLength = kb,
- t.geoMercator = dw,
- t.geoMercatorRaw = ls,
- t.geoOrthographic = xw,
- t.geoOrthographicRaw = ms,
- t.geoPath = Gb,
- t.geoProjection = rs,
- t.geoProjectionMutator = is,
- t.geoRotation = vb,
- t.geoStereographic = bw,
- t.geoStereographicRaw = xs,
- t.geoStream = Vx,
- t.geoTransform = ew,
- t.geoTransverseMercator = ww,
- t.geoTransverseMercatorRaw = bs,
- Object.defineProperty(t, "__esModule", {
- value: !0
- })
- });
\ No newline at end of file
diff --git a/assets/js/jquery.min.js b/assets/js/jquery.min.js
deleted file mode 100644
index ac35a19..0000000
--- a/assets/js/jquery.min.js
+++ /dev/null
@@ -1,5315 +0,0 @@
-/*! jQuery v3.1.1 | (c) jQuery Foundation | jquery.org/license */
-!function (a, b) {
- "use strict";
- "object" == typeof module && "object" == typeof module.exports
- ? module.exports = a.document
- ? b(a, !0)
- : function (a) {
- if (!a.document)
- throw new Error("jQuery requires a window with a document");
- return b(a)
- }
- : b(a)
-}("undefined" != typeof window
- ? window
- : this, function (a, b) {
- "use strict";
- var c = [],
- d = a.document,
- e = Object.getPrototypeOf,
- f = c.slice,
- g = c.concat,
- h = c.push,
- i = c.indexOf,
- j = {},
- k = j.toString,
- l = j.hasOwnProperty,
- m = l.toString,
- n = m.call(Object),
- o = {};
- function p(a, b) {
- b = b || d;
- var c = b.createElement("script");
- c.text = a,
- b
- .head
- .appendChild(c)
- .parentNode
- .removeChild(c)
- }
- var q = "3.1.1",
- r = function (a, b) {
- return new r
- .fn
- .init(a, b)
- },
- s = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,
- t = /^-ms-/,
- u = /-([a-z])/g,
- v = function (a, b) {
- return b.toUpperCase()
- };
- r.fn = r.prototype = {
- jquery: q,
- constructor: r,
- length: 0,
- toArray: function () {
- return f.call(this)
- },
- get: function (a) {
- return null == a
- ? f.call(this)
- : a < 0
- ? this[a + this.length]
- : this[a]
- },
- pushStack: function (a) {
- var b = r.merge(this.constructor(), a);
- return b.prevObject = this,
- b
- },
- each: function (a) {
- return r.each(this, a)
- },
- map: function (a) {
- return this.pushStack(r.map(this, function (b, c) {
- return a.call(b, c, b)
- }))
- },
- slice: function () {
- return this.pushStack(f.apply(this, arguments))
- },
- first: function () {
- return this.eq(0)
- },
- last: function () {
- return this.eq(-1)
- },
- eq: function (a) {
- var b = this.length,
- c =+ a + (a < 0
- ? b
- : 0);
- return this.pushStack(c >= 0 && c < b
- ? [this[c]]
- : [])
- },
- end: function () {
- return this.prevObject || this.constructor()
- },
- push: h,
- sort: c.sort,
- splice: c.splice
- },
- r.extend = r.fn.extend = function () {
- var a,
- b,
- c,
- d,
- e,
- f,
- g = arguments[0] || {},
- h = 1,
- i = arguments.length,
- j = !1;
- for ("boolean" == typeof g && (j = g, g = arguments[h] || {}, h++), "object" == typeof g || r.isFunction(g) || (g = {}), h === i && (g = this, h--); h < i; h++)
- if (null != (a = arguments[h]))
- for (b in a)
- c = g[b],
- d = a[b],
- g !== d && (j && d && (r.isPlainObject(d) || (e = r.isArray(d)))
- ? (e
- ? (e = !1, f = c && r.isArray(c)
- ? c
- : [])
- : f = c && r.isPlainObject(c)
- ? c
- : {}, g[b] = r.extend(j, f, d))
- : void 0 !== d && (g[b] = d));
- return g
- },
- r.extend({
- expando: "jQuery" + (q + Math.random()).replace(/\D/g, ""),
- isReady: !0,
- error: function (a) {
- throw new Error(a)
- },
- noop: function () {},
- isFunction: function (a) {
- return "function" === r.type(a)
- },
- isArray: Array.isArray,
- isWindow: function (a) {
- return null != a && a === a.window
- },
- isNumeric: function (a) {
- var b = r.type(a);
- return ("number" === b || "string" === b) && !isNaN(a - parseFloat(a))
- },
- isPlainObject: function (a) {
- var b,
- c;
- return !(!a || "[object Object]" !== k.call(a)) && (!(b = e(a)) || (c = l.call(b, "constructor") && b.constructor, "function" == typeof c && m.call(c) === n))
- },
- isEmptyObject: function (a) {
- var b;
- for (b in a)
- return !1;
- return !0
- },
- type: function (a) {
- return null == a
- ? a + ""
- : "object" == typeof a || "function" == typeof a
- ? j[k.call(a)] || "object"
- : typeof a
- },
- globalEval: function (a) {
- p(a)
- },
- camelCase: function (a) {
- return a
- .replace(t, "ms-")
- .replace(u, v)
- },
- nodeName: function (a, b) {
- return a.nodeName && a
- .nodeName
- .toLowerCase() === b.toLowerCase()
- },
- each: function (a, b) {
- var c,
- d = 0;
- if (w(a)) {
- for (c = a.length; d < c; d++)
- if (b.call(a[d], d, a[d]) === !1)
- break
- }
- else
- for (d in a)
- if (b.call(a[d], d, a[d]) === !1)
- break;
- return a
- },
- trim: function (a) {
- return null == a
- ? ""
- : (a + "").replace(s, "")
- },
- makeArray: function (a, b) {
- var c = b || [];
- return null != a && (w(Object(a))
- ? r.merge(c, "string" == typeof a
- ? [a]
- : a)
- : h.call(c, a)),
- c
- },
- inArray: function (a, b, c) {
- return null == b
- ? -1
- : i.call(b, a, c)
- },
- merge: function (a, b) {
- for (var c =+ b.length, d = 0, e = a.length; d < c; d++)
- a[e++] = b[d];
- return a.length = e,
- a
- },
- grep: function (a, b, c) {
- for (var d, e = [], f = 0, g = a.length, h = !c; f < g; f++)
- d = !b(a[f], f),
- d !== h && e.push(a[f]);
- return e
- },
- map: function (a, b, c) {
- var d,
- e,
- f = 0,
- h = [];
- if (w(a))
- for (d = a.length; f < d; f++)
- e = b(a[f], f, c),
- null != e && h.push(e);
- else
- for (f in a)
- e = b(a[f], f, c),
- null != e && h.push(e);
- return g.apply([], h)
- },
- guid: 1,
- proxy: function (a, b) {
- var c,
- d,
- e;
- if ("string" == typeof b && (c = a[b], b = a, a = c), r.isFunction(a))
- return d = f.call(arguments, 2),
- e = function () {
- return a.apply(b || this, d.concat(f.call(arguments)))
- }
- ,
- e.guid = a.guid = a.guid || r.guid++,
- e
- },
- now: Date.now,
- support: o
- }),
- "function" == typeof Symbol && (r.fn[Symbol.iterator] = c[Symbol.iterator]),
- r.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "), function (a, b) {
- j["[object " + b + "]"] = b.toLowerCase()
- });
- function w(a) {
- var b = !!a && "length" in a && a.length,
- c = r.type(a);
- return "function" !== c && !r.isWindow(a) && ("array" === c || 0 === b || "number" == typeof b && b > 0 && b - 1 in a)
- }
- var x = function (a) {
- var b,
- c,
- d,
- e,
- f,
- g,
- h,
- i,
- j,
- k,
- l,
- m,
- n,
- o,
- p,
- q,
- r,
- s,
- t,
- u = "sizzle" + 1 * new Date,
- v = a.document,
- w = 0,
- x = 0,
- y = ha(),
- z = ha(),
- A = ha(),
- B = function (a, b) {
- return a === b && (l = !0),
- 0
- },
- C = {}.hasOwnProperty,
- D = [],
- E = D.pop,
- F = D.push,
- G = D.push,
- H = D.slice,
- I = function (a, b) {
- for (var c = 0, d = a.length; c < d; c++)
- if (a[c] === b)
- return c;
- return -1
- },
- J = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|l" +
- "oop|multiple|open|readonly|required|scoped",
- K = "[\\x20\\t\\r\\n\\f]",
- L = "(?:\\\\.|[\\w-]|[^\0-\\xa0])+",
- M = "\\[" + K + "*(" + L + ")(?:" + K + "*([*^$|!~]?=)" + K + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + L + "))|)" + K + "*\\]",
- N = ":(" + L + ")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[" +
- "\\]]|" + M + ")*)|.*)\\)|)",
- O = new RegExp(K + "+", "g"),
- P = new RegExp("^" + K + "+|((?:^|[^\\\\])(?:\\\\.)*)" + K + "+$", "g"),
- Q = new RegExp("^" + K + "*," + K + "*"),
- R = new RegExp("^" + K + "*([>+~]|" + K + ")" + K + "*"),
- S = new RegExp("=" + K + "*([^\\]'\"]*?)" + K + "*\\]", "g"),
- T = new RegExp(N),
- U = new RegExp("^" + L + "$"),
- V = {
- ID: new RegExp("^#(" + L + ")"),
- CLASS: new RegExp("^\\.(" + L + ")"),
- TAG: new RegExp("^(" + L + "|[*])"),
- ATTR: new RegExp("^" + M),
- PSEUDO: new RegExp("^" + N),
- CHILD: new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + K + "*(even|odd|(([+-]|)(\\d*)n|)" + K + "*(?:([+-]|)" + K + "*(\\d+)|))" + K + "*\\)|)", "i"),
- bool: new RegExp("^(?:" + J + ")$", "i"),
- needsContext: new RegExp("^" + K + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + K + "*((?:-\\d)?\\d*)" + K + "*\\)|)(?=[^-]|$)", "i")
- },
- W = /^(?:input|select|textarea|button)$/i,
- X = /^h\d$/i,
- Y = /^[^{]+\{\s*\[native \w/,
- Z = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,
- $ = /[+~]/,
- _ = new RegExp("\\\\([\\da-f]{1,6}" + K + "?|(" + K + ")|.)", "ig"),
- aa = function (a, b, c) {
- var d = "0x" + b - 65536;
- return d !== d || c
- ? b
- : d < 0
- ? String.fromCharCode(d + 65536)
- : String.fromCharCode(d >> 10 | 55296, 1023 & d | 56320)
- },
- ba = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,
- ca = function (a, b) {
- return b
- ? "\0" === a
- ? "\ufffd"
- : a.slice(0, -1) + "\\" + a
- .charCodeAt(a.length - 1)
- .toString(16) + " "
- : "\\" + a
- },
- da = function () {
- m()
- },
- ea = ta(function (a) {
- return a.disabled === !0 && ("form" in a || "label" in a)
- }, {
- dir: "parentNode",
- next: "legend"
- });
- try {
- G.apply(D = H.call(v.childNodes), v.childNodes),
- D[v.childNodes.length].nodeType
- } catch (fa) {
- G = {
- apply: D.length
- ? function (a, b) {
- F.apply(a, H.call(b))
- }
- : function (a, b) {
- var c = a.length,
- d = 0;
- while (a[c++] = b[d++])
- ;
- a.length = c - 1
- }
- }
- }
- function ga(a, b, d, e) {
- var f,
- h,
- j,
- k,
- l,
- o,
- r,
- s = b && b.ownerDocument,
- w = b
- ? b.nodeType
- : 9;
- if (d = d || [], "string" != typeof a || !a || 1 !== w && 9 !== w && 11 !== w)
- return d;
- if (!e && ((b
- ? b.ownerDocument || b
- : v) !== n && m(b), b = b || n, p)) {
- if (11 !== w && (l = Z.exec(a)))
- if (f = l[1]) {
- if (9 === w) {
- if (!(j = b.getElementById(f)))
- return d;
- if (j.id === f)
- return d.push(j),
- d
- } else if (s && (j = s.getElementById(f)) && t(b, j) && j.id === f)
- return d.push(j),
- d
- }
- else {
- if (l[2])
- return G.apply(d, b.getElementsByTagName(a)),
- d;
- if ((f = l[3]) && c.getElementsByClassName && b.getElementsByClassName)
- return G.apply(d, b.getElementsByClassName(f)),
- d
- }
- if (c.qsa && !A[a + " "] && (!q || !q.test(a))) {
- if (1 !== w)
- s = b,
- r = a;
- else if ("object" !== b.nodeName.toLowerCase()) {
- (k = b.getAttribute("id"))
- ? k = k.replace(ba, ca)
- : b.setAttribute("id", k = u),
- o = g(a),
- h = o.length;
- while (h--)
- o[h] = "#" + k + " " + sa(o[h]);
- r = o.join(","),
- s = $.test(a) && qa(b.parentNode) || b
- }
- if (r)
- try {
- return G.apply(d, s.querySelectorAll(r)),
- d
- } catch (x) {}
- finally {
- k === u && b.removeAttribute("id")
- }
- }
- }
- return i(a.replace(P, "$1"), b, d, e)
- }
- function ha() {
- var a = [];
- function b(c, e) {
- return a.push(c + " ") > d.cacheLength && delete b[a.shift()],
- b[c + " "] = e
- }
- return b
- }
- function ia(a) {
- return a[u] = !0,
- a
- }
- function ja(a) {
- var b = n.createElement("fieldset");
- try {
- return !!a(b)
- } catch (c) {
- return !1
- } finally {
- b.parentNode && b
- .parentNode
- .removeChild(b),
- b = null
- }
- }
- function ka(a, b) {
- var c = a.split("|"),
- e = c.length;
- while (e--)
- d.attrHandle[c[e]] = b
- }
- function la(a, b) {
- var c = b && a,
- d = c && 1 === a.nodeType && 1 === b.nodeType && a.sourceIndex - b.sourceIndex;
- if (d)
- return d;
- if (c)
- while (c = c.nextSibling)
- if (c === b)
- return -1;
- return a
- ? 1
- : -1
- }
- function ma(a) {
- return function (b) {
- var c = b
- .nodeName
- .toLowerCase();
- return "input" === c && b.type === a
- }
- }
- function na(a) {
- return function (b) {
- var c = b
- .nodeName
- .toLowerCase();
- return ("input" === c || "button" === c) && b.type === a
- }
- }
- function oa(a) {
- return function (b) {
- return "form" in b
- ? b.parentNode && b.disabled === !1
- ? "label" in b
- ? "label" in b.parentNode
- ? b.parentNode.disabled === a
- : b.disabled === a
- : b.isDisabled === a || b.isDisabled !== !a && ea(b) === a
- : b.disabled === a
- : "label" in b && b.disabled === a
- }
- }
- function pa(a) {
- return ia(function (b) {
- return b =+ b,
- ia(function (c, d) {
- var e,
- f = a([], c.length, b),
- g = f.length;
- while (g--)
- c[e = f[g]] && (c[e] = !(d[e] = c[e]))
- })
- })
- }
- function qa(a) {
- return a && "undefined" != typeof a.getElementsByTagName && a
- }
- c = ga.support = {},
- f = ga.isXML = function (a) {
- var b = a && (a.ownerDocument || a).documentElement;
- return !!b && "HTML" !== b.nodeName
- },
- m = ga.setDocument = function (a) {
- var b,
- e,
- g = a
- ? a.ownerDocument || a
- : v;
- return g !== n && 9 === g.nodeType && g.documentElement
- ? (n = g, o = n.documentElement, p = !f(n), v !== n && (e = n.defaultView) && e.top !== e && (e.addEventListener
- ? e.addEventListener("unload", da, !1)
- : e.attachEvent && e.attachEvent("onunload", da)), c.attributes = ja(function (a) {
- return a.className = "i",
- !a.getAttribute("className")
- }), c.getElementsByTagName = ja(function (a) {
- return a.appendChild(n.createComment("")),
- !a
- .getElementsByTagName("*")
- .length
- }), c.getElementsByClassName = Y.test(n.getElementsByClassName), c.getById = ja(function (a) {
- return o
- .appendChild(a)
- .id = u,
- !n.getElementsByName || !n
- .getElementsByName(u)
- .length
- }), c.getById
- ? (d.filter.ID = function (a) {
- var b = a.replace(_, aa);
- return function (a) {
- return a.getAttribute("id") === b
- }
- },
- d.find.ID = function (a, b) {
- if ("undefined" != typeof b.getElementById && p) {
- var c = b.getElementById(a);
- return c
- ? [c]
- : []
- }
- })
- : (d.filter.ID = function (a) {
- var b = a.replace(_, aa);
- return function (a) {
- var c = "undefined" != typeof a.getAttributeNode && a.getAttributeNode("id");
- return c && c.value === b
- }
- },
- d.find.ID = function (a, b) {
- if ("undefined" != typeof b.getElementById && p) {
- var c,
- d,
- e,
- f = b.getElementById(a);
- if (f) {
- if (c = f.getAttributeNode("id"), c && c.value === a)
- return [f];
- e = b.getElementsByName(a),
- d = 0;
- while (f = e[d++])
- if (c = f.getAttributeNode("id"), c && c.value === a)
- return [f]
- }
- return []
- }
- }), d.find.TAG = c.getElementsByTagName
- ? function (a, b) {
- return "undefined" != typeof b.getElementsByTagName
- ? b.getElementsByTagName(a)
- : c.qsa
- ? b.querySelectorAll(a)
- : void 0
- }
- : function (a, b) {
- var c,
- d = [],
- e = 0,
- f = b.getElementsByTagName(a);
- if ("*" === a) {
- while (c = f[e++])
- 1 === c.nodeType && d.push(c);
- return d
- }
- return f
- },
- d.find.CLASS = c.getElementsByClassName && function (a, b) {
- if ("undefined" != typeof b.getElementsByClassName && p)
- return b.getElementsByClassName(a)
- },
- r = [],
- q = [],
- (c.qsa = Y.test(n.querySelectorAll)) && (ja(function (a) {
- o
- .appendChild(a)
- .innerHTML = "",
- a
- .querySelectorAll("[msallowcapture^='']")
- .length && q.push("[*^$]=" + K + "*(?:''|\"\")"),
- a
- .querySelectorAll("[selected]")
- .length || q.push("\\[" + K + "*(?:value|" + J + ")"),
- a
- .querySelectorAll("[id~=" + u + "-]")
- .length || q.push("~="),
- a
- .querySelectorAll(":checked")
- .length || q.push(":checked"),
- a
- .querySelectorAll("a#" + u + "+*")
- .length || q.push(".#.+[+~]")
- }), ja(function (a) {
- a.innerHTML = "";
- var b = n.createElement("input");
- b.setAttribute("type", "hidden"),
- a
- .appendChild(b)
- .setAttribute("name", "D"),
- a
- .querySelectorAll("[name=d]")
- .length && q.push("name" + K + "*[*^$|!~]?="),
- 2 !== a
- .querySelectorAll(":enabled")
- .length && q.push(":enabled", ":disabled"),
- o
- .appendChild(a)
- .disabled = !0,
- 2 !== a
- .querySelectorAll(":disabled")
- .length && q.push(":enabled", ":disabled"),
- a.querySelectorAll("*,:x"),
- q.push(",.*:")
- })),
- (c.matchesSelector = Y.test(s = o.matches || o.webkitMatchesSelector || o.mozMatchesSelector || o.oMatchesSelector || o.msMatchesSelector)) && ja(function (a) {
- c.disconnectedMatch = s.call(a, "*"),
- s.call(a, "[s!='']:x"),
- r.push("!=", N)
- }),
- q = q.length && new RegExp(q.join("|")),
- r = r.length && new RegExp(r.join("|")),
- b = Y.test(o.compareDocumentPosition),
- t = b || Y.test(o.contains)
- ? function (a, b) {
- var c = 9 === a.nodeType
- ? a.documentElement
- : a,
- d = b && b.parentNode;
- return a === d || !(!d || 1 !== d.nodeType || !(c.contains
- ? c.contains(d)
- : a.compareDocumentPosition && 16 & a.compareDocumentPosition(d)))
- }
- : function (a, b) {
- if (b)
- while (b = b.parentNode)
- if (b === a)
- return !0;
- return !1
- },
- B = b
- ? function (a, b) {
- if (a === b)
- return l = !0,
- 0;
- var d = !a.compareDocumentPosition - !b.compareDocumentPosition;
- return d
- ? d
- : (d = (a.ownerDocument || a) === (b.ownerDocument || b)
- ? a.compareDocumentPosition(b)
- : 1, 1 & d || !c.sortDetached && b.compareDocumentPosition(a) === d
- ? a === n || a.ownerDocument === v && t(v, a)
- ? -1
- : b === n || b.ownerDocument === v && t(v, b)
- ? 1
- : k
- ? I(k, a) - I(k, b)
- : 0
- : 4 & d
- ? -1
- : 1)
- }
- : function (a, b) {
- if (a === b)
- return l = !0,
- 0;
- var c,
- d = 0,
- e = a.parentNode,
- f = b.parentNode,
- g = [a],
- h = [b];
- if (!e || !f)
- return a === n
- ? -1
- : b === n
- ? 1
- : e
- ? -1
- : f
- ? 1
- : k
- ? I(k, a) - I(k, b)
- : 0;
- if (e === f)
- return la(a, b);
- c = a;
- while (c = c.parentNode)
- g.unshift(c);
- c = b;
- while (c = c.parentNode)
- h.unshift(c);
- while (g[d] === h[d])
- d++;
- return d
- ? la(g[d], h[d])
- : g[d] === v
- ? -1
- : h[d] === v
- ? 1
- : 0
- },
- n)
- : n
- },
- ga.matches = function (a, b) {
- return ga(a, null, null, b)
- },
- ga.matchesSelector = function (a, b) {
- if ((a.ownerDocument || a) !== n && m(a), b = b.replace(S, "='$1']"), c.matchesSelector && p && !A[b + " "] && (!r || !r.test(b)) && (!q || !q.test(b)))
- try {
- var d = s.call(a, b);
- if (d || c.disconnectedMatch || a.document && 11 !== a.document.nodeType)
- return d
- } catch (e) {}
- return ga(b, n, null, [a]).length > 0
- },
- ga.contains = function (a, b) {
- return (a.ownerDocument || a) !== n && m(a),
- t(a, b)
- },
- ga.attr = function (a, b) {
- (a.ownerDocument || a) !== n && m(a);
- var e = d.attrHandle[b.toLowerCase()],
- f = e && C.call(d.attrHandle, b.toLowerCase())
- ? e(a, b, !p)
- : void 0;
- return void 0 !== f
- ? f
- : c.attributes || !p
- ? a.getAttribute(b)
- : (f = a.getAttributeNode(b)) && f.specified
- ? f.value
- : null
- },
- ga.escape = function (a) {
- return (a + "").replace(ba, ca)
- },
- ga.error = function (a) {
- throw new Error("Syntax error, unrecognized expression: " + a)
- },
- ga.uniqueSort = function (a) {
- var b,
- d = [],
- e = 0,
- f = 0;
- if (l = !c.detectDuplicates, k = !c.sortStable && a.slice(0), a.sort(B), l) {
- while (b = a[f++])
- b === a[f] && (e = d.push(f));
- while (e--)
- a.splice(d[e], 1)
- }
- return k = null,
- a
- },
- e = ga.getText = function (a) {
- var b,
- c = "",
- d = 0,
- f = a.nodeType;
- if (f) {
- if (1 === f || 9 === f || 11 === f) {
- if ("string" == typeof a.textContent)
- return a.textContent;
- for (a = a.firstChild; a; a = a.nextSibling)
- c += e(a)
- } else if (3 === f || 4 === f)
- return a.nodeValue
- } else
- while (b = a[d++])
- c += e(b);
- return c
- },
- d = ga.selectors = {
- cacheLength: 50,
- createPseudo: ia,
- match: V,
- attrHandle: {},
- find: {},
- relative: {
- ">": {
- dir: "parentNode",
- first: !0
- },
- " ": {
- dir: "parentNode"
- },
- "+": {
- dir: "previousSibling",
- first: !0
- },
- "~": {
- dir: "previousSibling"
- }
- },
- preFilter: {
- ATTR: function (a) {
- return a[1] = a[1].replace(_, aa),
- a[3] = (a[3] || a[4] || a[5] || "").replace(_, aa),
- "~=" === a[2] && (a[3] = " " + a[3] + " "),
- a.slice(0, 4)
- },
- CHILD: function (a) {
- return a[1] = a[1].toLowerCase(),
- "nth" === a[1].slice(0, 3)
- ? (a[3] || ga.error(a[0]), a[4] =+ (a[4]
- ? a[5] + (a[6] || 1)
- : 2 * ("even" === a[3] || "odd" === a[3])), a[5] =+ (a[7] + a[8] || "odd" === a[3]))
- : a[3] && ga.error(a[0]),
- a
- },
- PSEUDO: function (a) {
- var b,
- c = !a[6] && a[2];
- return V
- .CHILD
- .test(a[0])
- ? null
- : (a[3]
- ? a[2] = a[4] || a[5] || ""
- : c && T.test(c) && (b = g(c, !0)) && (b = c.indexOf(")", c.length - b) - c.length) && (a[0] = a[0].slice(0, b), a[2] = c.slice(0, b)), a.slice(0, 3))
- }
- },
- filter: {
- TAG: function (a) {
- var b = a
- .replace(_, aa)
- .toLowerCase();
- return "*" === a
- ? function () {
- return !0
- }
- : function (a) {
- return a.nodeName && a
- .nodeName
- .toLowerCase() === b
- }
- },
- CLASS: function (a) {
- var b = y[a + " "];
- return b || (b = new RegExp("(^|" + K + ")" + a + "(" + K + "|$)")) && y(a, function (a) {
- return b.test("string" == typeof a.className && a.className || "undefined" != typeof a.getAttribute && a.getAttribute("class") || "")
- })
- },
- ATTR: function (a, b, c) {
- return function (d) {
- var e = ga.attr(d, a);
- return null == e
- ? "!=" === b
- : !b || (e += "", "=" === b
- ? e === c
- : "!=" === b
- ? e !== c
- : "^=" === b
- ? c && 0 === e.indexOf(c)
- : "*=" === b
- ? c && e.indexOf(c) > -1
- : "$=" === b
- ? c && e.slice(-c.length) === c
- : "~=" === b
- ? (" " + e.replace(O, " ") + " ").indexOf(c) > -1
- : "|=" === b && (e === c || e.slice(0, c.length + 1) === c + "-"))
- }
- },
- CHILD: function (a, b, c, d, e) {
- var f = "nth" !== a.slice(0, 3),
- g = "last" !== a.slice(-4),
- h = "of-type" === b;
- return 1 === d && 0 === e
- ? function (a) {
- return !!a.parentNode
- }
- : function (b, c, i) {
- var j,
- k,
- l,
- m,
- n,
- o,
- p = f !== g
- ? "nextSibling"
- : "previousSibling",
- q = b.parentNode,
- r = h && b
- .nodeName
- .toLowerCase(),
- s = !i && !h,
- t = !1;
- if (q) {
- if (f) {
- while (p) {
- m = b;
- while (m = m[p])
- if (h
- ? m.nodeName.toLowerCase() === r
- : 1 === m.nodeType)
- return !1;
- o = p = "only" === a && !o && "nextSibling"
- }
- return !0
- }
- if (o = [g
- ? q.firstChild
- : q.lastChild], g && s) {
- m = q,
- l = m[u] || (m[u] = {}),
- k = l[m.uniqueID] || (l[m.uniqueID] = {}),
- j = k[a] || [],
- n = j[0] === w && j[1],
- t = n && j[2],
- m = n && q.childNodes[n];
- while (m = ++n && m && m[p] || (t = n = 0) || o.pop())
- if (1 === m.nodeType && ++t && m === b) {
- k[a] = [w, n, t];
- break
- }
- } else if (s && (m = b, l = m[u] || (m[u] = {}), k = l[m.uniqueID] || (l[m.uniqueID] = {}), j = k[a] || [], n = j[0] === w && j[1], t = n), t === !1)
- while (m = ++n && m && m[p] || (t = n = 0) || o.pop())
- if ((h
- ? m.nodeName.toLowerCase() === r
- : 1 === m.nodeType) && ++t && (s && (l = m[u] || (m[u] = {}), k = l[m.uniqueID] || (l[m.uniqueID] = {}), k[a] = [w, t]), m === b))
- break;
- return t -= e,
- t === d || t % d === 0 && t / d >= 0
- }
- }
- },
- PSEUDO: function (a, b) {
- var c,
- e = d.pseudos[a] || d.setFilters[a.toLowerCase()] || ga.error("unsupported pseudo: " + a);
- return e[u]
- ? e(b)
- : e.length > 1
- ? (c = [
- a, a, "", b
- ], d.setFilters.hasOwnProperty(a.toLowerCase())
- ? ia(function (a, c) {
- var d,
- f = e(a, b),
- g = f.length;
- while (g--)
- d = I(a, f[g]),
- a[d] = !(c[d] = f[g])
- })
- : function (a) {
- return e(a, 0, c)
- })
- : e
- }
- },
- pseudos: {
- not: ia(function (a) {
- var b = [],
- c = [],
- d = h(a.replace(P, "$1"));
- return d[u]
- ? ia(function (a, b, c, e) {
- var f,
- g = d(a, null, e, []),
- h = a.length;
- while (h--)
- (f = g[h]) && (a[h] = !(b[h] = f))
- })
- : function (a, e, f) {
- return b[0] = a,
- d(b, null, f, c),
- b[0] = null,
- !c.pop()
- }
- }),
- has: ia(function (a) {
- return function (b) {
- return ga(a, b).length > 0
- }
- }),
- contains: ia(function (a) {
- return a = a.replace(_, aa),
- function (b) {
- return (b.textContent || b.innerText || e(b)).indexOf(a) > -1
- }
- }),
- lang: ia(function (a) {
- return U.test(a || "") || ga.error("unsupported lang: " + a),
- a = a
- .replace(_, aa)
- .toLowerCase(),
- function (b) {
- var c;
- do
- if (c = p
- ? b.lang
- : b.getAttribute("xml:lang") || b.getAttribute("lang"))
- return c = c.toLowerCase(),
- c === a || 0 === c.indexOf(a + "-");
- while ((b = b.parentNode) && 1 === b.nodeType);
- return !1
- }
- }),
- target: function (b) {
- var c = a.location && a.location.hash;
- return c && c.slice(1) === b.id
- },
- root: function (a) {
- return a === o
- },
- focus: function (a) {
- return a === n.activeElement && (!n.hasFocus || n.hasFocus()) && !!(a.type || a.href ||~ a.tabIndex)
- },
- enabled: oa(!1),
- disabled: oa(!0),
- checked: function (a) {
- var b = a
- .nodeName
- .toLowerCase();
- return "input" === b && !!a.checked || "option" === b && !!a.selected
- },
- selected: function (a) {
- return a.parentNode && a.parentNode.selectedIndex,
- a.selected === !0
- },
- empty: function (a) {
- for (a = a.firstChild; a; a = a.nextSibling)
- if (a.nodeType < 6)
- return !1;
- return !0
- },
- parent: function (a) {
- return !d
- .pseudos
- .empty(a)
- },
- header: function (a) {
- return X.test(a.nodeName)
- },
- input: function (a) {
- return W.test(a.nodeName)
- },
- button: function (a) {
- var b = a
- .nodeName
- .toLowerCase();
- return "input" === b && "button" === a.type || "button" === b
- },
- text: function (a) {
- var b;
- return "input" === a
- .nodeName
- .toLowerCase() && "text" === a.type && (null == (b = a.getAttribute("type")) || "text" === b.toLowerCase())
- },
- first: pa(function () {
- return [0]
- }),
- last: pa(function (a, b) {
- return [b - 1]
- }),
- eq: pa(function (a, b, c) {
- return [c < 0
- ? c + b
- : c]
- }),
- even: pa(function (a, b) {
- for (var c = 0; c < b; c += 2)
- a.push(c);
- return a
- }),
- odd: pa(function (a, b) {
- for (var c = 1; c < b; c += 2)
- a.push(c);
- return a
- }),
- lt: pa(function (a, b, c) {
- for (var d = c < 0
- ? c + b
- : c; --d >= 0;)
- a.push(d);
- return a
- }),
- gt: pa(function (a, b, c) {
- for (var d = c < 0
- ? c + b
- : c; ++d < b;)
- a.push(d);
- return a
- })
- }
- },
- d.pseudos.nth = d.pseudos.eq;
- for (b in {
- radio: !0,
- checkbox: !0,
- file: !0,
- password: !0,
- image: !0
- })
- d.pseudos[b] = ma(b);
- for (b in {
- submit: !0,
- reset: !0
- })
- d.pseudos[b] = na(b);
- function ra() {}
- ra.prototype = d.filters = d.pseudos,
- d.setFilters = new ra,
- g = ga.tokenize = function (a, b) {
- var c,
- e,
- f,
- g,
- h,
- i,
- j,
- k = z[a + " "];
- if (k)
- return b
- ? 0
- : k.slice(0);
- h = a,
- i = [],
- j = d.preFilter;
- while (h) {
- c && !(e = Q.exec(h)) || (e && (h = h.slice(e[0].length) || h), i.push(f = [])),
- c = !1,
- (e = R.exec(h)) && (c = e.shift(), f.push({
- value: c,
- type: e[0].replace(P, " ")
- }), h = h.slice(c.length));
- for (g in d.filter)
- !(e = V[g].exec(h)) || j[g] && !(e = j[g](e)) || (c = e.shift(), f.push({value: c, type: g, matches: e}), h = h.slice(c.length));
- if (!c)
- break
- }
- return b
- ? h.length
- : h
- ? ga.error(a)
- : z(a, i).slice(0)
- };
- function sa(a) {
- for (var b = 0, c = a.length, d = ""; b < c; b++)
- d += a[b].value;
- return d
- }
- function ta(a, b, c) {
- var d = b.dir,
- e = b.next,
- f = e || d,
- g = c && "parentNode" === f,
- h = x++;
- return b.first
- ? function (b, c, e) {
- while (b = b[d])
- if (1 === b.nodeType || g)
- return a(b, c, e);
- return !1
- }
- : function (b, c, i) {
- var j,
- k,
- l,
- m = [w, h];
- if (i) {
- while (b = b[d])
- if ((1 === b.nodeType || g) && a(b, c, i))
- return !0
- }
- else
- while (b = b[d])
- if (1 === b.nodeType || g)
- if (l = b[u] || (b[u] = {}), k = l[b.uniqueID] || (l[b.uniqueID] = {}), e && e === b.nodeName.toLowerCase())
- b = b[d] || b;
- else {
- if ((j = k[f]) && j[0] === w && j[1] === h)
- return m[2] = j[2];
- if (k[f] = m, m[2] = a(b, c, i))
- return !0
- }
- return !1
- }
- }
- function ua(a) {
- return a.length > 1
- ? function (b, c, d) {
- var e = a.length;
- while (e--)
- if (!a[e](b, c, d))
- return !1;
- return !0
- }
- : a[0]
- }
- function va(a, b, c) {
- for (var d = 0, e = b.length; d < e; d++)
- ga(a, b[d], c);
- return c
- }
- function wa(a, b, c, d, e) {
- for (var f, g = [], h = 0, i = a.length, j = null != b; h < i; h++)
- (f = a[h]) && (c && !c(f, d, e) || (g.push(f), j && b.push(h)));
- return g
- }
- function xa(a, b, c, d, e, f) {
- return d && !d[u] && (d = xa(d)),
- e && !e[u] && (e = xa(e, f)),
- ia(function (f, g, h, i) {
- var j,
- k,
- l,
- m = [],
- n = [],
- o = g.length,
- p = f || va(b || "*", h.nodeType
- ? [h]
- : h, []),
- q = !a || !f && b
- ? p
- : wa(p, m, a, h, i),
- r = c
- ? e || (f
- ? a
- : o || d)
- ? []
- : g
- : q;
- if (c && c(q, r, h, i), d) {
- j = wa(r, n),
- d(j, [], h, i),
- k = j.length;
- while (k--)
- (l = j[k]) && (r[n[k]] = !(q[n[k]] = l))
- }
- if (f) {
- if (e || a) {
- if (e) {
- j = [],
- k = r.length;
- while (k--)
- (l = r[k]) && j.push(q[k] = l);
- e(null, r = [], j, i)
- }
- k = r.length;
- while (k--)
- (l = r[k]) && (j = e
- ? I(f, l)
- : m[k]) > -1 && (f[j] = !(g[j] = l))
- }
- } else
- r = wa(r === g
- ? r.splice(o, r.length)
- : r),
- e
- ? e(null, g, r, i)
- : G.apply(g, r)
- })
- }
- function ya(a) {
- for (var b, c, e, f = a.length, g = d.relative[a[0].type], h = g || d.relative[" "], i = g
- ? 1
- : 0, k = ta(function (a) {
- return a === b
- }, h, !0), l = ta(function (a) {
- return I(b, a) > -1
- }, h, !0), m = [function (a, c, d) {
- var e = !g && (d || c !== j) || ((b = c).nodeType
- ? k(a, c, d)
- : l(a, c, d));
- return b = null,
- e
- }
- ]; i < f; i++)
- if (c = d.relative[a[i].type])
- m = [ta(ua(m), c)];
- else {
- if (c = d.filter[a[i].type].apply(null, a[i].matches), c[u]) {
- for (e = ++i; e < f; e++)
- if (d.relative[a[e].type])
- break;
- return xa(i > 1 && ua(m), i > 1 && sa(a.slice(0, i - 1).concat({
- value: " " === a[i - 2].type
- ? "*"
- : ""
- })).replace(P, "$1"), c, i < e && ya(a.slice(i, e)), e < f && ya(a = a.slice(e)), e < f && sa(a))
- }
- m.push(c)
- }
- return ua(m)
- }
- function za(a, b) {
- var c = b.length > 0,
- e = a.length > 0,
- f = function (f, g, h, i, k) {
- var l,
- o,
- q,
- r = 0,
- s = "0",
- t = f && [],
- u = [],
- v = j,
- x = f || e && d
- .find
- .TAG("*", k),
- y = w += null == v
- ? 1
- : Math.random() || .1,
- z = x.length;
- for (k && (j = g === n || g || k); s !== z && null != (l = x[s]); s++) {
- if (e && l) {
- o = 0,
- g || l.ownerDocument === n || (m(l), h = !p);
- while (q = a[o++])
- if (q(l, g || n, h)) {
- i.push(l);
- break
- }
- k && (w = y)
- }
- c && ((l = !q && l) && r--, f && t.push(l))
- }
- if (r += s, c && s !== r) {
- o = 0;
- while (q = b[o++])
- q(t, u, g, h);
- if (f) {
- if (r > 0)
- while (s--)
- t[s] || u[s] || (u[s] = E.call(i));
- u = wa(u)
- }
- G.apply(i, u),
- k && !f && u.length > 0 && r + b.length > 1 && ga.uniqueSort(i)
- }
- return k && (w = y, j = v),
- t
- };
- return c
- ? ia(f)
- : f
- }
- return h = ga.compile = function (a, b) {
- var c,
- d = [],
- e = [],
- f = A[a + " "];
- if (!f) {
- b || (b = g(a)),
- c = b.length;
- while (c--)
- f = ya(b[c]),
- f[u]
- ? d.push(f)
- : e.push(f);
- f = A(a, za(e, d)),
- f.selector = a
- }
- return f
- },
- i = ga.select = function (a, b, c, e) {
- var f,
- i,
- j,
- k,
- l,
- m = "function" == typeof a && a,
- n = !e && g(a = m.selector || a);
- if (c = c || [], 1 === n.length) {
- if (i = n[0] = n[0].slice(0), i.length > 2 && "ID" === (j = i[0]).type && 9 === b.nodeType && p && d.relative[i[1].type]) {
- if (b = (d.find.ID(j.matches[0].replace(_, aa), b) || [])[0],
- !b)
- return c;
- m && (b = b.parentNode),
- a = a.slice(i.shift().value.length)
- }
- f = V
- .needsContext
- .test(a)
- ? 0
- : i.length;
- while (f--) {
- if (j = i[f], d.relative[k = j.type])
- break;
- if ((l = d.find[k]) && (e = l(j.matches[0].replace(_, aa), $.test(i[0].type) && qa(b.parentNode) || b))) {
- if (i.splice(f, 1), a = e.length && sa(i), !a)
- return G.apply(c, e),
- c;
- break
- }
- }
- }
- return (m || h(a, n))(e, b, !p, c, !b || $.test(a) && qa(b.parentNode) || b),
- c
- },
- c.sortStable = u
- .split("")
- .sort(B)
- .join("") === u,
- c.detectDuplicates = !!l,
- m(),
- c.sortDetached = ja(function (a) {
- return 1 & a.compareDocumentPosition(n.createElement("fieldset"))
- }),
- ja(function (a) {
- return a.innerHTML = "",
- "#" === a
- .firstChild
- .getAttribute("href")
- }) || ka("type|href|height|width", function (a, b, c) {
- if (!c)
- return a.getAttribute(b, "type" === b.toLowerCase()
- ? 1
- : 2)
- }),
- c.attributes && ja(function (a) {
- return a.innerHTML = "",
- a
- .firstChild
- .setAttribute("value", ""),
- "" === a
- .firstChild
- .getAttribute("value")
- }) || ka("value", function (a, b, c) {
- if (!c && "input" === a.nodeName.toLowerCase())
- return a.defaultValue
- }),
- ja(function (a) {
- return null == a.getAttribute("disabled")
- }) || ka(J, function (a, b, c) {
- var d;
- if (!c)
- return a[b] === !0
- ? b.toLowerCase()
- : (d = a.getAttributeNode(b)) && d.specified
- ? d.value
- : null
- }),
- ga
- }(a);
- r.find = x,
- r.expr = x.selectors,
- r.expr[":"] = r.expr.pseudos,
- r.uniqueSort = r.unique = x.uniqueSort,
- r.text = x.getText,
- r.isXMLDoc = x.isXML,
- r.contains = x.contains,
- r.escapeSelector = x.escape;
- var y = function (a, b, c) {
- var d = [],
- e = void 0 !== c;
- while ((a = a[b]) && 9 !== a.nodeType)
- if (1 === a.nodeType) {
- if (e && r(a).is(c))
- break;
- d.push(a)
- }
- return d
- },
- z = function (a, b) {
- for (var c = []; a; a = a.nextSibling)
- 1 === a.nodeType && a !== b && c.push(a);
- return c
- },
- A = r.expr.match.needsContext,
- B = /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i,
- C = /^.[^:#\[\.,]*$/;
- function D(a, b, c) {
- return r.isFunction(b)
- ? r.grep(a, function (a, d) {
- return !!b.call(a, d, a) !== c
- })
- : b.nodeType
- ? r.grep(a, function (a) {
- return a === b !== c
- })
- : "string" != typeof b
- ? r.grep(a, function (a) {
- return i.call(b, a) > -1 !== c
- })
- : C.test(b)
- ? r.filter(b, a, c)
- : (b = r.filter(b, a), r.grep(a, function (a) {
- return i.call(b, a) > -1 !== c && 1 === a.nodeType
- }))
- }
- r.filter = function (a, b, c) {
- var d = b[0];
- return c && (a = ":not(" + a + ")"),
- 1 === b.length && 1 === d.nodeType
- ? r
- .find
- .matchesSelector(d, a)
- ? [d]
- : []
- : r
- .find
- .matches(a, r.grep(b, function (a) {
- return 1 === a.nodeType
- }))
- },
- r
- .fn
- .extend({
- find: function (a) {
- var b,
- c,
- d = this.length,
- e = this;
- if ("string" != typeof a)
- return this.pushStack(r(a).filter(function () {
- for (b = 0; b < d; b++)
- if (r.contains(e[b], this))
- return !0
- }));
- for (c = this.pushStack([]), b = 0; b < d; b++)
- r.find(a, e[b], c);
- return d > 1
- ? r.uniqueSort(c)
- : c
- },
- filter: function (a) {
- return this.pushStack(D(this, a || [], !1))
- },
- not: function (a) {
- return this.pushStack(D(this, a || [], !0))
- },
- is: function (a) {
- return !!D(this, "string" == typeof a && A.test(a)
- ? r(a)
- : a || [], !1).length
- }
- });
- var E,
- F = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,
- G = r.fn.init = function (a, b, c) {
- var e,
- f;
- if (!a)
- return this;
- if (c = c || E, "string" == typeof a) {
- if (e = "<" === a[0] && ">" === a[a.length - 1] && a.length >= 3
- ? [null, a, null]
- : F.exec(a), !e || !e[1] && b)
- return !b || b.jquery
- ? (b || c).find(a)
- : this.constructor(b).find(a);
- if (e[1]) {
- if (b = b instanceof r
- ? b[0]
- : b, r.merge(this, r.parseHTML(e[1], b && b.nodeType
- ? b.ownerDocument || b
- : d, !0)), B.test(e[1]) && r.isPlainObject(b))
- for (e in b)
- r.isFunction(this[e])
- ? this[e](b[e])
- : this.attr(e, b[e]);
- return this
- }
- return f = d.getElementById(e[2]),
- f && (this[0] = f, this.length = 1),
- this
- }
- return a.nodeType
- ? (this[0] = a, this.length = 1, this)
- : r.isFunction(a)
- ? void 0 !== c.ready
- ? c.ready(a)
- : a(r)
- : r.makeArray(a, this)
- };
- G.prototype = r.fn,
- E = r(d);
- var H = /^(?:parents|prev(?:Until|All))/,
- I = {
- children: !0,
- contents: !0,
- next: !0,
- prev: !0
- };
- r
- .fn
- .extend({
- has: function (a) {
- var b = r(a, this),
- c = b.length;
- return this.filter(function () {
- for (var a = 0; a < c; a++)
- if (r.contains(this, b[a]))
- return !0
- })
- },
- closest: function (a, b) {
- var c,
- d = 0,
- e = this.length,
- f = [],
- g = "string" != typeof a && r(a);
- if (!A.test(a))
- for (; d < e; d++)
- for (c = this[d]; c && c !== b; c = c.parentNode)
- if (c.nodeType < 11 && (g
- ? g.index(c) > -1
- : 1 === c.nodeType && r.find.matchesSelector(c, a))) {
- f.push(c);
- break
- }
- return this.pushStack(f.length > 1
- ? r.uniqueSort(f)
- : f)
- },
- index: function (a) {
- return a
- ? "string" == typeof a
- ? i.call(r(a), this[0])
- : i.call(this, a.jquery
- ? a[0]
- : a)
- : this[0] && this[0].parentNode
- ? this
- .first()
- .prevAll()
- .length
- : -1
- },
- add: function (a, b) {
- return this.pushStack(r.uniqueSort(r.merge(this.get(), r(a, b))))
- },
- addBack: function (a) {
- return this.add(null == a
- ? this.prevObject
- : this.prevObject.filter(a))
- }
- });
- function J(a, b) {
- while ((a = a[b]) && 1 !== a.nodeType)
- ;
- return a
- }
- r
- .each({
- parent: function (a) {
- var b = a.parentNode;
- return b && 11 !== b.nodeType
- ? b
- : null
- },
- parents: function (a) {
- return y(a, "parentNode")
- },
- parentsUntil: function (a, b, c) {
- return y(a, "parentNode", c)
- },
- next: function (a) {
- return J(a, "nextSibling")
- },
- prev: function (a) {
- return J(a, "previousSibling")
- },
- nextAll: function (a) {
- return y(a, "nextSibling")
- },
- prevAll: function (a) {
- return y(a, "previousSibling")
- },
- nextUntil: function (a, b, c) {
- return y(a, "nextSibling", c)
- },
- prevUntil: function (a, b, c) {
- return y(a, "previousSibling", c)
- },
- siblings: function (a) {
- return z((a.parentNode || {}).firstChild, a)
- },
- children: function (a) {
- return z(a.firstChild)
- },
- contents: function (a) {
- return a.contentDocument || r.merge([], a.childNodes)
- }
- }, function (a, b) {
- r.fn[a] = function (c, d) {
- var e = r.map(this, b, c);
- return "Until" !== a.slice(-5) && (d = c),
- d && "string" == typeof d && (e = r.filter(d, e)),
- this.length > 1 && (I[a] || r.uniqueSort(e), H.test(a) && e.reverse()),
- this.pushStack(e)
- }
- });
- var K = /[^\x20\t\r\n\f]+/g;
- function L(a) {
- var b = {};
- return r.each(a.match(K) || [], function (a, c) {
- b[c] = !0
- }),
- b
- }
- r.Callbacks = function (a) {
- a = "string" == typeof a
- ? L(a)
- : r.extend({}, a);
- var b,
- c,
- d,
- e,
- f = [],
- g = [],
- h = -1,
- i = function () {
- for (e = a.once, d = b = !0; g.length; h = -1) {
- c = g.shift();
- while (++h < f.length)
- f[h].apply(c[0], c[1]) === !1 && a.stopOnFalse && (h = f.length, c = !1)
- }
- a.memory || (c = !1),
- b = !1,
- e && (f = c
- ? []
- : "")
- },
- j = {
- add: function () {
- return f && (c && !b && (h = f.length - 1, g.push(c)), function d(b) {
- r
- .each(b, function (b, c) {
- r.isFunction(c)
- ? a.unique && j.has(c) || f.push(c)
- : c && c.length && "string" !== r.type(c) && d(c)
- })
- }(arguments),
- c && !b && i()),
- this
- },
- remove: function () {
- return r.each(arguments, function (a, b) {
- var c;
- while ((c = r.inArray(b, f, c)) > -1)
- f.splice(c, 1),
- c <= h && h--
- }),
- this
- },
- has: function (a) {
- return a
- ? r.inArray(a, f) > -1
- : f.length > 0
- },
- empty: function () {
- return f && (f = []),
- this
- },
- disable: function () {
- return e = g = [],
- f = c = "",
- this
- },
- disabled: function () {
- return !f
- },
- lock: function () {
- return e = g = [],
- c || b || (f = c = ""),
- this
- },
- locked: function () {
- return !!e
- },
- fireWith: function (a, c) {
- return e || (c = c || [], c = [
- a, c.slice
- ? c.slice()
- : c
- ], g.push(c), b || i()),
- this
- },
- fire: function () {
- return j.fireWith(this, arguments),
- this
- },
- fired: function () {
- return !!d
- }
- };
- return j
- };
- function M(a) {
- return a
- }
- function N(a) {
- throw a
- }
- function O(a, b, c) {
- var d;
- try {
- a && r.isFunction(d = a.promise)
- ? d
- .call(a)
- .done(b)
- .fail(c)
- : a && r.isFunction(d = a.then)
- ? d.call(a, b, c)
- : b.call(void 0, a)
- } catch (a) {
- c.call(void 0, a)
- }
- }
- r.extend({
- Deferred: function (b) {
- var c = [
- [
- "notify", "progress", r.Callbacks("memory"),
- r.Callbacks("memory"),
- 2
- ],
- [
- "resolve", "done", r.Callbacks("once memory"),
- r.Callbacks("once memory"),
- 0,
- "resolved"
- ],
- [
- "reject", "fail", r.Callbacks("once memory"),
- r.Callbacks("once memory"),
- 1,
- "rejected"
- ]
- ],
- d = "pending",
- e = {
- state: function () {
- return d
- },
- always: function () {
- return f
- .done(arguments)
- .fail(arguments),
- this
- },
- "catch": function (a) {
- return e.then(null, a)
- },
- pipe: function () {
- var a = arguments;
- return r.Deferred(function (b) {
- r
- .each(c, function (c, d) {
- var e = r.isFunction(a[d[4]]) && a[d[4]];
- f[d[1]](function () {
- var a = e && e.apply(this, arguments);
- a && r.isFunction(a.promise)
- ? a
- .promise()
- .progress(b.notify)
- .done(b.resolve)
- .fail(b.reject)
- : b[d[0] + "With"](this, e
- ? [a]
- : arguments)
- })
- }),
- a = null
- }).promise()
- },
- then: function (b, d, e) {
- var f = 0;
- function g(b, c, d, e) {
- return function () {
- var h = this,
- i = arguments,
- j = function () {
- var a,
- j;
- if (!(b < f)) {
- if (a = d.apply(h, i), a === c.promise())
- throw new TypeError("Thenable self-resolution");
- j = a && ("object" == typeof a || "function" == typeof a) && a.then,
- r.isFunction(j)
- ? e
- ? j.call(a, g(f, c, M, e), g(f, c, N, e))
- : (f++, j.call(a, g(f, c, M, e), g(f, c, N, e), g(f, c, M, c.notifyWith)))
- : (d !== M && (h = void 0, i = [a]), (e || c.resolveWith)(h, i))
- }
- },
- k = e
- ? j
- : function () {
- try {
- j()
- } catch (a) {
- r.Deferred.exceptionHook && r
- .Deferred
- .exceptionHook(a, k.stackTrace),
- b + 1 >= f && (d !== N && (h = void 0, i = [a]), c.rejectWith(h, i))
- }
- };
- b
- ? k()
- : (r.Deferred.getStackHook && (k.stackTrace = r.Deferred.getStackHook()), a.setTimeout(k))
- }
- }
- return r.Deferred(function (a) {
- c[0][3].add(g(0, a, r.isFunction(e)
- ? e
- : M, a.notifyWith)),
- c[1][3].add(g(0, a, r.isFunction(b)
- ? b
- : M)),
- c[2][3].add(g(0, a, r.isFunction(d)
- ? d
- : N))
- }).promise()
- },
- promise: function (a) {
- return null != a
- ? r.extend(a, e)
- : e
- }
- },
- f = {};
- return r.each(c, function (a, b) {
- var g = b[2],
- h = b[5];
- e[b[1]] = g.add,
- h && g.add(function () {
- d = h
- }, c[3 - a][2].disable, c[0][2].lock),
- g.add(b[3].fire),
- f[b[0]] = function () {
- return f[b[0] + "With"](this === f
- ? void 0
- : this, arguments),
- this
- },
- f[b[0] + "With"] = g.fireWith
- }),
- e.promise(f),
- b && b.call(f, f),
- f
- },
- when: function (a) {
- var b = arguments.length,
- c = b,
- d = Array(c),
- e = f.call(arguments),
- g = r.Deferred(),
- h = function (a) {
- return function (c) {
- d[a] = this,
- e[a] = arguments.length > 1
- ? f.call(arguments)
- : c,
- --b || g.resolveWith(d, e)
- }
- };
- if (b <= 1 && (O(a, g.done(h(c)).resolve, g.reject), "pending" === g.state() || r.isFunction(e[c] && e[c].then)))
- return g.then();
- while (c--)
- O(e[c], h(c), g.reject);
- return g.promise()
- }
- });
- var P = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;
- r.Deferred.exceptionHook = function (b, c) {
- a.console && a.console.warn && b && P.test(b.name) && a
- .console
- .warn("jQuery.Deferred exception: " + b.message, b.stack, c)
- },
- r.readyException = function (b) {
- a
- .setTimeout(function () {
- throw b
- })
- };
- var Q = r.Deferred();
- r.fn.ready = function (a) {
- return Q.then(a)["catch"](function (a) {
- r.readyException(a)
- }),
- this
- },
- r.extend({
- isReady: !1,
- readyWait: 1,
- holdReady: function (a) {
- a
- ? r.readyWait++
- : r.ready(!0)
- },
- ready: function (a) {
- (a === !0
- ? --r.readyWait
- : r.isReady) || (r.isReady = !0, a !== !0 && --r.readyWait > 0 || Q.resolveWith(d, [r]))
- }
- }),
- r.ready.then = Q.then;
- function R() {
- d.removeEventListener("DOMContentLoaded", R),
- a.removeEventListener("load", R),
- r.ready()
- }
- "complete" === d.readyState || "loading" !== d.readyState && !d.documentElement.doScroll
- ? a.setTimeout(r.ready)
- : (d.addEventListener("DOMContentLoaded", R), a.addEventListener("load", R));
- var S = function (a, b, c, d, e, f, g) {
- var h = 0,
- i = a.length,
- j = null == c;
- if ("object" === r.type(c)) {
- e = !0;
- for (h in c)
- S(a, b, h, c[h], !0, f, g)
- } else if (void 0 !== d && (e = !0, r.isFunction(d) || (g = !0), j && (g
- ? (b.call(a, d), b = null)
- : (j = b, b = function (a, b, c) {
- return j.call(r(a), c)
- })), b))
- for (; h < i; h++)
- b(a[h], c, g
- ? d
- : d.call(a[h], h, b(a[h], c)));
- return e
- ? a
- : j
- ? b.call(a)
- : i
- ? b(a[0], c)
- : f
- },
- T = function (a) {
- return 1 === a.nodeType || 9 === a.nodeType || !+ a.nodeType
- };
- function U() {
- this.expando = r.expando + U.uid++
- }
- U.uid = 1,
- U.prototype = {
- cache: function (a) {
- var b = a[this.expando];
- return b || (b = {}, T(a) && (a.nodeType
- ? a[this.expando] = b
- : Object.defineProperty(a, this.expando, {
- value: b,
- configurable: !0
- }))),
- b
- },
- set: function (a, b, c) {
- var d,
- e = this.cache(a);
- if ("string" == typeof b)
- e[r.camelCase(b)] = c;
- else
- for (d in b)
- e[r.camelCase(d)] = b[d];
- return e
- },
- get: function (a, b) {
- return void 0 === b
- ? this.cache(a)
- : a[this.expando] && a[this.expando][r.camelCase(b)]
- },
- access: function (a, b, c) {
- return void 0 === b || b && "string" == typeof b && void 0 === c
- ? this.get(a, b)
- : (this.set(a, b, c), void 0 !== c
- ? c
- : b)
- },
- remove: function (a, b) {
- var c,
- d = a[this.expando];
- if (void 0 !== d) {
- if (void 0 !== b) {
- r.isArray(b)
- ? b = b.map(r.camelCase)
- : (b = r.camelCase(b), b = b in d
- ? [b]
- : b.match(K) || []),
- c = b.length;
- while (c--)
- delete d[b[c]]
- }
- (void 0 === b || r.isEmptyObject(d)) && (a.nodeType
- ? a[this.expando] = void 0
- : delete a[this.expando])
- }
- },
- hasData: function (a) {
- var b = a[this.expando];
- return void 0 !== b && !r.isEmptyObject(b)
- }
- };
- var V = new U,
- W = new U,
- X = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,
- Y = /[A-Z]/g;
- function Z(a) {
- return "true" === a || "false" !== a && ("null" === a
- ? null
- : a ===+ a + "" ?+ a : X.test(a)
- ? JSON.parse(a)
- : a)
- }
- function $(a, b, c) {
- var d;
- if (void 0 === c && 1 === a.nodeType)
- if (d = "data-" + b.replace(Y, "-$&").toLowerCase(), c = a.getAttribute(d), "string" == typeof c) {
- try {
- c = Z(c)
- } catch (e) {}
- W.set(a, b, c)
- } else
- c = void 0;
- return c
- }
- r.extend({
- hasData: function (a) {
- return W.hasData(a) || V.hasData(a)
- },
- data: function (a, b, c) {
- return W.access(a, b, c)
- },
- removeData: function (a, b) {
- W.remove(a, b)
- },
- _data: function (a, b, c) {
- return V.access(a, b, c)
- },
- _removeData: function (a, b) {
- V.remove(a, b)
- }
- }),
- r
- .fn
- .extend({
- data: function (a, b) {
- var c,
- d,
- e,
- f = this[0],
- g = f && f.attributes;
- if (void 0 === a) {
- if (this.length && (e = W.get(f), 1 === f.nodeType && !V.get(f, "hasDataAttrs"))) {
- c = g.length;
- while (c--)
- g[c] && (d = g[c].name, 0 === d.indexOf("data-") && (d = r.camelCase(d.slice(5)), $(f, d, e[d])));
- V.set(f, "hasDataAttrs", !0)
- }
- return e
- }
- return "object" == typeof a
- ? this.each(function () {
- W.set(this, a)
- })
- : S(this, function (b) {
- var c;
- if (f && void 0 === b) {
- if (c = W.get(f, a), void 0 !== c)
- return c;
- if (c = $(f, a), void 0 !== c)
- return c
- } else
- this
- .each(function () {
- W.set(this, a, b)
- })
- }, null, b, arguments.length > 1, null, !0)
- },
- removeData: function (a) {
- return this.each(function () {
- W.remove(this, a)
- })
- }
- }),
- r.extend({
- queue: function (a, b, c) {
- var d;
- if (a)
- return b = (b || "fx") + "queue",
- d = V.get(a, b),
- c && (!d || r.isArray(c)
- ? d = V.access(a, b, r.makeArray(c))
- : d.push(c)),
- d || []
- },
- dequeue: function (a, b) {
- b = b || "fx";
- var c = r.queue(a, b),
- d = c.length,
- e = c.shift(),
- f = r._queueHooks(a, b),
- g = function () {
- r.dequeue(a, b)
- };
- "inprogress" === e && (e = c.shift(), d--),
- e && ("fx" === b && c.unshift("inprogress"), delete f.stop, e.call(a, g, f)),
- !d && f && f
- .empty
- .fire()
- },
- _queueHooks: function (a, b) {
- var c = b + "queueHooks";
- return V.get(a, c) || V.access(a, c, {
- empty: r
- .Callbacks("once memory")
- .add(function () {
- V.remove(a, [
- b + "queue",
- c
- ])
- })
- })
- }
- }),
- r
- .fn
- .extend({
- queue: function (a, b) {
- var c = 2;
- return "string" != typeof a && (b = a, a = "fx", c--),
- arguments.length < c
- ? r.queue(this[0], a)
- : void 0 === b
- ? this
- : this.each(function () {
- var c = r.queue(this, a, b);
- r._queueHooks(this, a),
- "fx" === a && "inprogress" !== c[0] && r.dequeue(this, a)
- })
- },
- dequeue: function (a) {
- return this.each(function () {
- r.dequeue(this, a)
- })
- },
- clearQueue: function (a) {
- return this.queue(a || "fx", [])
- },
- promise: function (a, b) {
- var c,
- d = 1,
- e = r.Deferred(),
- f = this,
- g = this.length,
- h = function () {
- --d || e.resolveWith(f, [f])
- };
- "string" != typeof a && (b = a, a = void 0),
- a = a || "fx";
- while (g--)
- c = V.get(f[g], a + "queueHooks"),
- c && c.empty && (d++, c.empty.add(h));
- return h(),
- e.promise(b)
- }
- });
- var _ = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,
- aa = new RegExp("^(?:([+-])=|)(" + _ + ")([a-z%]*)$", "i"),
- ba = [
- "Top", "Right", "Bottom", "Left"
- ],
- ca = function (a, b) {
- return a = b || a,
- "none" === a.style.display || "" === a.style.display && r.contains(a.ownerDocument, a) && "none" === r.css(a, "display")
- },
- da = function (a, b, c, d) {
- var e,
- f,
- g = {};
- for (f in b)
- g[f] = a.style[f],
- a.style[f] = b[f];
- e = c.apply(a, d || []);
- for (f in b)
- a.style[f] = g[f];
- return e
- };
- function ea(a, b, c, d) {
- var e,
- f = 1,
- g = 20,
- h = d
- ? function () {
- return d.cur()
- }
- : function () {
- return r.css(a, b, "")
- },
- i = h(),
- j = c && c[3] || (r.cssNumber[b]
- ? ""
- : "px"),
- k = (r.cssNumber[b] || "px" !== j &&+ i) && aa.exec(r.css(a, b));
- if (k && k[3] !== j) {
- j = j || k[3],
- c = c || [],
- k =+ i || 1;
- do
- f = f || ".5",
- k /= f,
- r.style(a, b, k + j);
- while (f !== (f = h() / i) && 1 !== f && --g)
- }
- return c && (k =+ k ||+ i || 0, e = c[1]
- ? k + (c[1] + 1) * c[2] :+ c[2], d && (d.unit = j, d.start = k, d.end = e)),
- e
- }
- var fa = {};
- function ga(a) {
- var b,
- c = a.ownerDocument,
- d = a.nodeName,
- e = fa[d];
- return e
- ? e
- : (b = c.body.appendChild(c.createElement(d)), e = r.css(b, "display"), b.parentNode.removeChild(b), "none" === e && (e = "block"), fa[d] = e, e)
- }
- function ha(a, b) {
- for (var c, d, e = [], f = 0, g = a.length; f < g; f++)
- d = a[f],
- d.style && (c = d.style.display, b
- ? ("none" === c && (e[f] = V.get(d, "display") || null, e[f] || (d.style.display = "")), "" === d.style.display && ca(d) && (e[f] = ga(d)))
- : "none" !== c && (e[f] = "none", V.set(d, "display", c)));
- for (f = 0; f < g; f++)
- null != e[f] && (a[f].style.display = e[f]);
- return a
- }
- r
- .fn
- .extend({
- show: function () {
- return ha(this, !0)
- },
- hide: function () {
- return ha(this)
- },
- toggle: function (a) {
- return "boolean" == typeof a
- ? a
- ? this.show()
- : this.hide()
- : this.each(function () {
- ca(this)
- ? r(this).show()
- : r(this).hide()
- })
- }
- });
- var ia = /^(?:checkbox|radio)$/i,
- ja = /<([a-z][^\/\0>\x20\t\r\n\f]+)/i,
- ka = /^$|\/(?:java|ecma)script/i,
- la = {
- option: [
- 1, ""
- ],
- thead: [
- 1, ""
- ],
- col: [
- 2, ""
- ],
- tr: [
- 2, ""
- ],
- td: [
- 3, ""
- ],
- _default: [0, "", ""]
- };
- la.optgroup = la.option,
- la.tbody = la.tfoot = la.colgroup = la.caption = la.thead,
- la.th = la.td;
- function ma(a, b) {
- var c;
- return c = "undefined" != typeof a.getElementsByTagName
- ? a.getElementsByTagName(b || "*")
- : "undefined" != typeof a.querySelectorAll
- ? a.querySelectorAll(b || "*")
- : [],
- void 0 === b || b && r.nodeName(a, b)
- ? r.merge([a], c)
- : c
- }
- function na(a, b) {
- for (var c = 0, d = a.length; c < d; c++)
- V.set(a[c], "globalEval", !b || V.get(b[c], "globalEval"))
- }
- var oa = /<|?\w+;/;
- function pa(a, b, c, d, e) {
- for (var f, g, h, i, j, k, l = b.createDocumentFragment(), m = [], n = 0, o = a.length; n < o; n++)
- if (f = a[n], f || 0 === f)
- if ("object" === r.type(f))
- r.merge(m, f.nodeType
- ? [f]
- : f);
- else if (oa.test(f)) {
- g = g || l.appendChild(b.createElement("div")),
- h = (ja.exec(f) || ["", ""])[1].toLowerCase(),
- i = la[h] || la._default,
- g.innerHTML = i[1] + r.htmlPrefilter(f) + i[2],
- k = i[0];
- while (k--)
- g = g.lastChild;
- r.merge(m, g.childNodes),
- g = l.firstChild,
- g.textContent = ""
- }
- else
- m.push(b.createTextNode(f));
- l.textContent = "",
- n = 0;
- while (f = m[n++])
- if (d && r.inArray(f, d) > -1)
- e && e.push(f);
- else if (j = r.contains(f.ownerDocument, f), g = ma(l.appendChild(f), "script"), j && na(g), c) {
- k = 0;
- while (f = g[k++])
- ka.test(f.type || "") && c.push(f)
- }
- return l
- }
- !function () {
- var a = d.createDocumentFragment(),
- b = a.appendChild(d.createElement("div")),
- c = d.createElement("input");
- c.setAttribute("type", "radio"),
- c.setAttribute("checked", "checked"),
- c.setAttribute("name", "t"),
- b.appendChild(c),
- o.checkClone = b
- .cloneNode(!0)
- .cloneNode(!0)
- .lastChild
- .checked,
- b.innerHTML = "",
- o.noCloneChecked = !!b
- .cloneNode(!0)
- .lastChild
- .defaultValue
- }();
- var qa = d.documentElement,
- ra = /^key/,
- sa = /^(?:mouse|pointer|contextmenu|drag|drop)|click/,
- ta = /^([^.]*)(?:\.(.+)|)/;
- function ua() {
- return !0
- }
- function va() {
- return !1
- }
- function wa() {
- try {
- return d.activeElement
- } catch (a) {}
- }
- function xa(a, b, c, d, e, f) {
- var g,
- h;
- if ("object" == typeof b) {
- "string" != typeof c && (d = d || c, c = void 0);
- for (h in b)
- xa(a, h, c, d, b[h], f);
- return a
- }
- if (null == d && null == e
- ? (e = c, d = c = void 0)
- : null == e && ("string" == typeof c
- ? (e = d, d = void 0)
- : (e = d, d = c, c = void 0)), e === !1)
- e = va;
- else if (!e)
- return a;
- return 1 === f && (g = e, e = function (a) {
- return r().off(a),
- g.apply(this, arguments)
- },
- e.guid = g.guid || (g.guid = r.guid++)),
- a.each(function () {
- r
- .event
- .add(this, b, e, d, c)
- })
- }
- r.event = {
- global: {},
- add: function (a, b, c, d, e) {
- var f,
- g,
- h,
- i,
- j,
- k,
- l,
- m,
- n,
- o,
- p,
- q = V.get(a);
- if (q) {
- c.handler && (f = c, c = f.handler, e = f.selector),
- e && r
- .find
- .matchesSelector(qa, e),
- c.guid || (c.guid = r.guid++),
- (i = q.events) || (i = q.events = {}),
- (g = q.handle) || (g = q.handle = function (b) {
- return "undefined" != typeof r && r.event.triggered !== b.type
- ? r
- .event
- .dispatch
- .apply(a, arguments)
- : void 0
- }),
- b = (b || "").match(K) || [""],
- j = b.length;
- while (j--)
- h = ta.exec(b[j]) || [],
- n = p = h[1],
- o = (h[2] || "").split(".").sort(),
- n && (l = r.event.special[n] || {}, n = (e
- ? l.delegateType
- : l.bindType) || n, l = r.event.special[n] || {}, k = r.extend({
- type: n,
- origType: p,
- data: d,
- handler: c,
- guid: c.guid,
- selector: e,
- needsContext: e && r
- .expr
- .match
- .needsContext
- .test(e),
- namespace: o.join(".")
- }, f), (m = i[n]) || (m = i[n] = [], m.delegateCount = 0, l.setup && l.setup.call(a, d, o, g) !== !1 || a.addEventListener && a.addEventListener(n, g)), l.add && (l.add.call(a, k), k.handler.guid || (k.handler.guid = c.guid)), e
- ? m.splice(m.delegateCount++, 0, k)
- : m.push(k), r.event.global[n] = !0)
- }
- },
- remove: function (a, b, c, d, e) {
- var f,
- g,
- h,
- i,
- j,
- k,
- l,
- m,
- n,
- o,
- p,
- q = V.hasData(a) && V.get(a);
- if (q && (i = q.events)) {
- b = (b || "").match(K) || [""],
- j = b.length;
- while (j--)
- if (h = ta.exec(b[j]) || [], n = p = h[1], o = (h[2] || "").split(".").sort(), n) {
- l = r.event.special[n] || {},
- n = (d
- ? l.delegateType
- : l.bindType) || n,
- m = i[n] || [],
- h = h[2] && new RegExp("(^|\\.)" + o.join("\\.(?:.*\\.|)") + "(\\.|$)"),
- g = f = m.length;
- while (f--)
- k = m[f],
- !e && p !== k.origType || c && c.guid !== k.guid || h && !h.test(k.namespace) || d && d !== k.selector && ("**" !== d || !k.selector) || (m.splice(f, 1), k.selector && m.delegateCount--, l.remove && l.remove.call(a, k));
- g && !m.length && (l.teardown && l.teardown.call(a, o, q.handle) !== !1 || r.removeEvent(a, n, q.handle), delete i[n])
- }
- else
- for (n in i)
- r.event.remove(a, n + b[j], c, d, !0);
- r.isEmptyObject(i) && V.remove(a, "handle events")
- }
- },
- dispatch: function (a) {
- var b = r
- .event
- .fix(a),
- c,
- d,
- e,
- f,
- g,
- h,
- i = new Array(arguments.length),
- j = (V.get(this, "events") || {})[b.type] || [],
- k = r.event.special[b.type] || {};
- for (i[0] = b, c = 1; c < arguments.length; c++)
- i[c] = arguments[c];
- if (b.delegateTarget = this, !k.preDispatch || k.preDispatch.call(this, b) !== !1) {
- h = r
- .event
- .handlers
- .call(this, b, j),
- c = 0;
- while ((f = h[c++]) && !b.isPropagationStopped()) {
- b.currentTarget = f.elem,
- d = 0;
- while ((g = f.handlers[d++]) && !b.isImmediatePropagationStopped())
- b.rnamespace && !b.rnamespace.test(g.namespace) || (b.handleObj = g, b.data = g.data, e = ((r.event.special[g.origType] || {}).handle || g.handler).apply(f.elem, i), void 0 !== e && (b.result = e) === !1 && (b.preventDefault(), b.stopPropagation()))
- }
- return k.postDispatch && k
- .postDispatch
- .call(this, b),
- b.result
- }
- },
- handlers: function (a, b) {
- var c,
- d,
- e,
- f,
- g,
- h = [],
- i = b.delegateCount,
- j = a.target;
- if (i && j.nodeType && !("click" === a.type && a.button >= 1))
- for (; j !== this; j = j.parentNode || this)
- if (1 === j.nodeType && ("click" !== a.type || j.disabled !== !0)) {
- for (f = [], g = {}, c = 0; c < i; c++)
- d = b[c],
- e = d.selector + " ",
- void 0 === g[e] && (g[e] = d.needsContext
- ? r(e, this).index(j) > -1
- : r.find(e, this, null, [j]).length),
- g[e] && f.push(d);
- f.length && h.push({elem: j, handlers: f})
- }
- return j = this,
- i < b.length && h.push({
- elem: j,
- handlers: b.slice(i)
- }),
- h
- },
- addProp: function (a, b) {
- Object.defineProperty(r.Event.prototype, a, {
- enumerable: !0,
- configurable: !0,
- get: r.isFunction(b)
- ? function () {
- if (this.originalEvent)
- return b(this.originalEvent)
- }
- : function () {
- if (this.originalEvent)
- return this.originalEvent[a]
- },
- set: function (b) {
- Object.defineProperty(this, a, {
- enumerable: !0,
- configurable: !0,
- writable: !0,
- value: b
- })
- }
- })
- },
- fix: function (a) {
- return a[r.expando]
- ? a
- : new r.Event(a)
- },
- special: {
- load: {
- noBubble: !0
- },
- focus: {
- trigger: function () {
- if (this !== wa() && this.focus)
- return this.focus(),
- !1
- },
- delegateType: "focusin"
- },
- blur: {
- trigger: function () {
- if (this === wa() && this.blur)
- return this.blur(),
- !1
- },
- delegateType: "focusout"
- },
- click: {
- trigger: function () {
- if ("checkbox" === this.type && this.click && r.nodeName(this, "input"))
- return this.click(),
- !1
- },
- _default: function (a) {
- return r.nodeName(a.target, "a")
- }
- },
- beforeunload: {
- postDispatch: function (a) {
- void 0 !== a.result && a.originalEvent && (a.originalEvent.returnValue = a.result)
- }
- }
- }
- },
- r.removeEvent = function (a, b, c) {
- a.removeEventListener && a.removeEventListener(b, c)
- },
- r.Event = function (a, b) {
- return this instanceof r.Event
- ? (a && a.type
- ? (this.originalEvent = a, this.type = a.type, this.isDefaultPrevented = a.defaultPrevented || void 0 === a.defaultPrevented && a.returnValue === !1
- ? ua
- : va, this.target = a.target && 3 === a.target.nodeType
- ? a.target.parentNode
- : a.target, this.currentTarget = a.currentTarget, this.relatedTarget = a.relatedTarget)
- : this.type = a, b && r.extend(this, b), this.timeStamp = a && a.timeStamp || r.now(), void(this[r.expando] = !0))
- : new r.Event(a, b)
- },
- r.Event.prototype = {
- constructor: r.Event,
- isDefaultPrevented: va,
- isPropagationStopped: va,
- isImmediatePropagationStopped: va,
- isSimulated: !1,
- preventDefault: function () {
- var a = this.originalEvent;
- this.isDefaultPrevented = ua,
- a && !this.isSimulated && a.preventDefault()
- },
- stopPropagation: function () {
- var a = this.originalEvent;
- this.isPropagationStopped = ua,
- a && !this.isSimulated && a.stopPropagation()
- },
- stopImmediatePropagation: function () {
- var a = this.originalEvent;
- this.isImmediatePropagationStopped = ua,
- a && !this.isSimulated && a.stopImmediatePropagation(),
- this.stopPropagation()
- }
- },
- r.each({
- altKey: !0,
- bubbles: !0,
- cancelable: !0,
- changedTouches: !0,
- ctrlKey: !0,
- detail: !0,
- eventPhase: !0,
- metaKey: !0,
- pageX: !0,
- pageY: !0,
- shiftKey: !0,
- view: !0,
- "char": !0,
- charCode: !0,
- key: !0,
- keyCode: !0,
- button: !0,
- buttons: !0,
- clientX: !0,
- clientY: !0,
- offsetX: !0,
- offsetY: !0,
- pointerId: !0,
- pointerType: !0,
- screenX: !0,
- screenY: !0,
- targetTouches: !0,
- toElement: !0,
- touches: !0,
- which: function (a) {
- var b = a.button;
- return null == a.which && ra.test(a.type)
- ? null != a.charCode
- ? a.charCode
- : a.keyCode
- : !a.which && void 0 !== b && sa.test(a.type)
- ? 1 & b
- ? 1
- : 2 & b
- ? 3
- : 4 & b
- ? 2
- : 0
- : a.which
- }
- }, r.event.addProp),
- r.each({
- mouseenter: "mouseover",
- mouseleave: "mouseout",
- pointerenter: "pointerover",
- pointerleave: "pointerout"
- }, function (a, b) {
- r.event.special[a] = {
- delegateType: b,
- bindType: b,
- handle: function (a) {
- var c,
- d = this,
- e = a.relatedTarget,
- f = a.handleObj;
- return e && (e === d || r.contains(d, e)) || (a.type = f.origType, c = f.handler.apply(this, arguments), a.type = b),
- c
- }
- }
- }),
- r
- .fn
- .extend({
- on: function (a, b, c, d) {
- return xa(this, a, b, c, d)
- },
- one: function (a, b, c, d) {
- return xa(this, a, b, c, d, 1)
- },
- off: function (a, b, c) {
- var d,
- e;
- if (a && a.preventDefault && a.handleObj)
- return d = a.handleObj,
- r(a.delegateTarget).off(d.namespace
- ? d.origType + "." + d.namespace
- : d.origType, d.selector, d.handler),
- this;
- if ("object" == typeof a) {
- for (e in a)
- this.off(e, b, a[e]);
- return this
- }
- return b !== !1 && "function" != typeof b || (c = b, b = void 0),
- c === !1 && (c = va),
- this.each(function () {
- r
- .event
- .remove(this, a, c, b)
- })
- }
- });
- var ya = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,
- za = /