http://git-wip-us.apache.org/repos/asf/stratos/blob/53c98dd9/extensions/das/metering-service/capps/stratos-metering-service/Gadget_Member_Count/Member_Count/js/d3.min.js ---------------------------------------------------------------------- diff --git a/extensions/das/metering-service/capps/stratos-metering-service/Gadget_Member_Count/Member_Count/js/d3.min.js b/extensions/das/metering-service/capps/stratos-metering-service/Gadget_Member_Count/Member_Count/js/d3.min.js deleted file mode 100644 index 01a8d22..0000000 --- a/extensions/das/metering-service/capps/stratos-metering-service/Gadget_Member_Count/Member_Count/js/d3.min.js +++ /dev/null @@ -1,6312 +0,0 @@ -!function () { - function n(n, t) { - return t > n ? -1 : n > t ? 1 : n >= t ? 0 : 0 / 0 - } - - function t(n) { - return null === n ? 0 / 0 : +n - } - - function e(n) { - return !isNaN(n) - } - - function r(n) { - return { - left: function (t, e, r, u) { - for (arguments.length < 3 && (r = 0), arguments.length < 4 && (u = t.length); u > r;) { - var i = r + u >>> 1; - n(t[i], e) < 0 ? r = i + 1 : u = i - } - return r - }, right: function (t, e, r, u) { - for (arguments.length < 3 && (r = 0), arguments.length < 4 && (u = t.length); u > r;) { - var i = r + u >>> 1; - n(t[i], e) > 0 ? u = i : r = i + 1 - } - return r - } - } - } - - function u(n) { - return n.length - } - - function i(n) { - for (var t = 1; n * t % 1;)t *= 10; - return t - } - - function o(n, t) { - for (var e in t)Object.defineProperty(n.prototype, e, {value: t[e], enumerable: !1}) - } - - function a() { - this._ = Object.create(null) - } - - function c(n) { - return (n += "") === da || n[0] === ma ? ma + n : n - } - - function l(n) { - return (n += "")[0] === ma ? n.slice(1) : n - } - - function s(n) { - return c(n)in this._ - } - - function f(n) { - return (n = c(n))in this._ && delete this._[n] - } - - function h() { - var n = []; - for (var t in this._)n.push(l(t)); - return n - } - - function g() { - var n = 0; - for (var t in this._)++n; - return n - } - - function p() { - for (var n in this._)return !1; - return !0 - } - - function v() { - this._ = Object.create(null) - } - - function d(n, t, e) { - return function () { - var r = e.apply(t, arguments); - return r === t ? n : r - } - } - - function m(n, t) { - if (t in n)return t; - t = t.charAt(0).toUpperCase() + t.slice(1); - for (var e = 0, r = ya.length; r > e; ++e) { - var u = ya[e] + t; - if (u in n)return u - } - } - - function y() { - } - - function M() { - } - - function x(n) { - function t() { - for (var t, r = e, u = -1, i = r.length; ++u < i;)(t = r[u].on) && t.apply(this, arguments); - return n - } - - var e = [], r = new a; - return t.on = function (t, u) { - var i, o = r.get(t); - return arguments.length < 2 ? o && o.on : (o && (o.on = null, e = e.slice(0, i = e.indexOf(o)).concat(e.slice(i + 1)), r.remove(t)), u && e.push(r.set(t, {on: u})), n) - }, t - } - - function b() { - ta.event.preventDefault() - } - - function _() { - for (var n, t = ta.event; n = t.sourceEvent;)t = n; - return t - } - - function w(n) { - for (var t = new M, e = 0, r = arguments.length; ++e < r;)t[arguments[e]] = x(t); - return t.of = function (e, r) { - return function (u) { - try { - var i = u.sourceEvent = ta.event; - u.target = n, ta.event = u, t[u.type].apply(e, r) - } finally { - ta.event = i - } - } - }, t - } - - function S(n) { - return xa(n, ka), n - } - - function k(n) { - return "function" == typeof n ? n : function () { - return ba(n, this) - } - } - - function E(n) { - return "function" == typeof n ? n : function () { - return _a(n, this) - } - } - - function A(n, t) { - function e() { - this.removeAttribute(n) - } - - function r() { - this.removeAttributeNS(n.space, n.local) - } - - function u() { - this.setAttribute(n, t) - } - - function i() { - this.setAttributeNS(n.space, n.local, t) - } - - function o() { - var e = t.apply(this, arguments); - null == e ? this.removeAttribute(n) : this.setAttribute(n, e) - } - - function a() { - var e = t.apply(this, arguments); - null == e ? this.removeAttributeNS(n.space, n.local) : this.setAttributeNS(n.space, n.local, e) - } - - return n = ta.ns.qualify(n), null == t ? n.local ? r : e : "function" == typeof t ? n.local ? a : o : n.local ? i : u - } - - function N(n) { - return n.trim().replace(/\s+/g, " ") - } - - function C(n) { - return new RegExp("(?:^|\\s+)" + ta.requote(n) + "(?:\\s+|$)", "g") - } - - function z(n) { - return (n + "").trim().split(/^|\s+/) - } - - function q(n, t) { - function e() { - for (var e = -1; ++e < u;)n[e](this, t) - } - - function r() { - for (var e = -1, r = t.apply(this, arguments); ++e < u;)n[e](this, r) - } - - n = z(n).map(L); - var u = n.length; - return "function" == typeof t ? r : e - } - - function L(n) { - var t = C(n); - return function (e, r) { - if (u = e.classList)return r ? u.add(n) : u.remove(n); - var u = e.getAttribute("class") || ""; - r ? (t.lastIndex = 0, t.test(u) || e.setAttribute("class", N(u + " " + n))) : e.setAttribute("class", N(u.replace(t, " "))) - } - } - - function T(n, t, e) { - function r() { - this.style.removeProperty(n) - } - - function u() { - this.style.setProperty(n, t, e) - } - - function i() { - var r = t.apply(this, arguments); - null == r ? this.style.removeProperty(n) : this.style.setProperty(n, r, e) - } - - return null == t ? r : "function" == typeof t ? i : u - } - - function R(n, t) { - function e() { - delete this[n] - } - - function r() { - this[n] = t - } - - function u() { - var e = t.apply(this, arguments); - null == e ? delete this[n] : this[n] = e - } - - return null == t ? e : "function" == typeof t ? u : r - } - - function D(n) { - return "function" == typeof n ? n : (n = ta.ns.qualify(n)).local ? function () { - return this.ownerDocument.createElementNS(n.space, n.local) - } : function () { - return this.ownerDocument.createElementNS(this.namespaceURI, n) - } - } - - function P() { - var n = this.parentNode; - n && n.removeChild(this) - } - - function U(n) { - return {__data__: n} - } - - function j(n) { - return function () { - return Sa(this, n) - } - } - - function F(t) { - return arguments.length || (t = n), function (n, e) { - return n && e ? t(n.__data__, e.__data__) : !n - !e - } - } - - function H(n, t) { - for (var e = 0, r = n.length; r > e; e++)for (var u, i = n[e], o = 0, a = i.length; a > o; o++)(u = i[o]) && t(u, o, e); - return n - } - - function O(n) { - return xa(n, Aa), n - } - - function Y(n) { - var t, e; - return function (r, u, i) { - var o, a = n[i].update, c = a.length; - for (i != e && (e = i, t = 0), u >= t && (t = u + 1); !(o = a[t]) && ++t < c;); - return o - } - } - - function I(n, t, e) { - function r() { - var t = this[o]; - t && (this.removeEventListener(n, t, t.$), delete this[o]) - } - - function u() { - var u = c(t, ra(arguments)); - r.call(this), this.addEventListener(n, this[o] = u, u.$ = e), u._ = t - } - - function i() { - var t, e = new RegExp("^__on([^.]+)" + ta.requote(n) + "$"); - for (var r in this)if (t = r.match(e)) { - var u = this[r]; - this.removeEventListener(t[1], u, u.$), delete this[r] - } - } - - var o = "__on" + n, a = n.indexOf("."), c = Z; - a > 0 && (n = n.slice(0, a)); - var l = Ca.get(n); - return l && (n = l, c = V), a ? t ? u : r : t ? y : i - } - - function Z(n, t) { - return function (e) { - var r = ta.event; - ta.event = e, t[0] = this.__data__; - try { - n.apply(this, t) - } finally { - ta.event = r - } - } - } - - function V(n, t) { - var e = Z(n, t); - return function (n) { - var t = this, r = n.relatedTarget; - r && (r === t || 8 & r.compareDocumentPosition(t)) || e.call(t, n) - } - } - - function X() { - var n = ".dragsuppress-" + ++qa, t = "click" + n, e = ta.select(oa).on("touchmove" + n, b).on("dragstart" + n, b).on("selectstart" + n, b); - if (za) { - var r = ia.style, u = r[za]; - r[za] = "none" - } - return function (i) { - if (e.on(n, null), za && (r[za] = u), i) { - var o = function () { - e.on(t, null) - }; - e.on(t, function () { - b(), o() - }, !0), setTimeout(o, 0) - } - } - } - - function $(n, t) { - t.changedTouches && (t = t.changedTouches[0]); - var e = n.ownerSVGElement || n; - if (e.createSVGPoint) { - var r = e.createSVGPoint(); - if (0 > La && (oa.scrollX || oa.scrollY)) { - e = ta.select("body").append("svg").style({ - position: "absolute", - top: 0, - left: 0, - margin: 0, - padding: 0, - border: "none" - }, "important"); - var u = e[0][0].getScreenCTM(); - La = !(u.f || u.e), e.remove() - } - return La ? (r.x = t.pageX, r.y = t.pageY) : (r.x = t.clientX, r.y = t.clientY), r = r.matrixTransform(n.getScreenCTM().inverse()), [r.x, r.y] - } - var i = n.getBoundingClientRect(); - return [t.clientX - i.left - n.clientLeft, t.clientY - i.top - n.clientTop] - } - - function B() { - return ta.event.changedTouches[0].identifier - } - - function W() { - return ta.event.target - } - - function J() { - return oa - } - - function G(n) { - return n > 0 ? 1 : 0 > n ? -1 : 0 - } - - function K(n, t, e) { - return (t[0] - n[0]) * (e[1] - n[1]) - (t[1] - n[1]) * (e[0] - n[0]) - } - - function Q(n) { - return n > 1 ? 0 : -1 > n ? Da : Math.acos(n) - } - - function nt(n) { - return n > 1 ? ja : -1 > n ? -ja : Math.asin(n) - } - - function tt(n) { - return ((n = Math.exp(n)) - 1 / n) / 2 - } - - function et(n) { - return ((n = Math.exp(n)) + 1 / n) / 2 - } - - function rt(n) { - return ((n = Math.exp(2 * n)) - 1) / (n + 1) - } - - function ut(n) { - return (n = Math.sin(n / 2)) * n - } - - function it() { - } - - function ot(n, t, e) { - return this instanceof ot ? (this.h = +n, this.s = +t, void(this.l = +e)) : arguments.length < 2 ? n instanceof ot ? new ot(n.h, n.s, n.l) : xt("" + n, bt, ot) : new ot(n, t, e) - } - - function at(n, t, e) { - function r(n) { - return n > 360 ? n -= 360 : 0 > n && (n += 360), 60 > n ? i + (o - i) * n / 60 : 180 > n ? o : 240 > n ? i + (o - i) * (240 - n) / 60 : i - } - - function u(n) { - return Math.round(255 * r(n)) - } - - var i, o; - return n = isNaN(n) ? 0 : (n %= 360) < 0 ? n + 360 : n, t = isNaN(t) ? 0 : 0 > t ? 0 : t > 1 ? 1 : t, e = 0 > e ? 0 : e > 1 ? 1 : e, o = .5 >= e ? e * (1 + t) : e + t - e * t, i = 2 * e - o, new dt(u(n + 120), u(n), u(n - 120)) - } - - function ct(n, t, e) { - return this instanceof ct ? (this.h = +n, this.c = +t, void(this.l = +e)) : arguments.length < 2 ? n instanceof ct ? new ct(n.h, n.c, n.l) : n instanceof st ? ht(n.l, n.a, n.b) : ht((n = _t((n = ta.rgb(n)).r, n.g, n.b)).l, n.a, n.b) : new ct(n, t, e) - } - - function lt(n, t, e) { - return isNaN(n) && (n = 0), isNaN(t) && (t = 0), new st(e, Math.cos(n *= Fa) * t, Math.sin(n) * t) - } - - function st(n, t, e) { - return this instanceof st ? (this.l = +n, this.a = +t, void(this.b = +e)) : arguments.length < 2 ? n instanceof st ? new st(n.l, n.a, n.b) : n instanceof ct ? lt(n.h, n.c, n.l) : _t((n = dt(n)).r, n.g, n.b) : new st(n, t, e) - } - - function ft(n, t, e) { - var r = (n + 16) / 116, u = r + t / 500, i = r - e / 200; - return u = gt(u) * Ja, r = gt(r) * Ga, i = gt(i) * Ka, new dt(vt(3.2404542 * u - 1.5371385 * r - .4985314 * i), vt(-.969266 * u + 1.8760108 * r + .041556 * i), vt(.0556434 * u - .2040259 * r + 1.0572252 * i)) - } - - function ht(n, t, e) { - return n > 0 ? new ct(Math.atan2(e, t) * Ha, Math.sqrt(t * t + e * e), n) : new ct(0 / 0, 0 / 0, n) - } - - function gt(n) { - return n > .206893034 ? n * n * n : (n - 4 / 29) / 7.787037 - } - - function pt(n) { - return n > .008856 ? Math.pow(n, 1 / 3) : 7.787037 * n + 4 / 29 - } - - function vt(n) { - return Math.round(255 * (.00304 >= n ? 12.92 * n : 1.055 * Math.pow(n, 1 / 2.4) - .055)) - } - - function dt(n, t, e) { - return this instanceof dt ? (this.r = ~~n, this.g = ~~t, void(this.b = ~~e)) : arguments.length < 2 ? n instanceof dt ? new dt(n.r, n.g, n.b) : xt("" + n, dt, at) : new dt(n, t, e) - } - - function mt(n) { - return new dt(n >> 16, 255 & n >> 8, 255 & n) - } - - function yt(n) { - return mt(n) + "" - } - - function Mt(n) { - return 16 > n ? "0" + Math.max(0, n).toString(16) : Math.min(255, n).toString(16) - } - - function xt(n, t, e) { - var r, u, i, o = 0, a = 0, c = 0; - if (r = /([a-z]+)\((.*)\)/i.exec(n))switch (u = r[2].split(","), r[1]) { - case"hsl": - return e(parseFloat(u[0]), parseFloat(u[1]) / 100, parseFloat(u[2]) / 100); - case"rgb": - return t(St(u[0]), St(u[1]), St(u[2])) - } - return (i = tc.get(n)) ? t(i.r, i.g, i.b) : (null == n || "#" !== n.charAt(0) || isNaN(i = parseInt(n.slice(1), 16)) || (4 === n.length ? (o = (3840 & i) >> 4, o = o >> 4 | o, a = 240 & i, a = a >> 4 | a, c = 15 & i, c = c << 4 | c) : 7 === n.length && (o = (16711680 & i) >> 16, a = (65280 & i) >> 8, c = 255 & i)), t(o, a, c)) - } - - function bt(n, t, e) { - var r, u, i = Math.min(n /= 255, t /= 255, e /= 255), o = Math.max(n, t, e), a = o - i, c = (o + i) / 2; - return a ? (u = .5 > c ? a / (o + i) : a / (2 - o - i), r = n == o ? (t - e) / a + (e > t ? 6 : 0) : t == o ? (e - n) / a + 2 : (n - t) / a + 4, r *= 60) : (r = 0 / 0, u = c > 0 && 1 > c ? 0 : r), new ot(r, u, c) - } - - function _t(n, t, e) { - n = wt(n), t = wt(t), e = wt(e); - var r = pt((.4124564 * n + .3575761 * t + .1804375 * e) / Ja), u = pt((.2126729 * n + .7151522 * t + .072175 * e) / Ga), i = pt((.0193339 * n + .119192 * t + .9503041 * e) / Ka); - return st(116 * u - 16, 500 * (r - u), 200 * (u - i)) - } - - function wt(n) { - return (n /= 255) <= .04045 ? n / 12.92 : Math.pow((n + .055) / 1.055, 2.4) - } - - function St(n) { - var t = parseFloat(n); - return "%" === n.charAt(n.length - 1) ? Math.round(2.55 * t) : t - } - - function kt(n) { - return "function" == typeof n ? n : function () { - return n - } - } - - function Et(n) { - return n - } - - function At(n) { - return function (t, e, r) { - return 2 === arguments.length && "function" == typeof e && (r = e, e = null), Nt(t, e, n, r) - } - } - - function Nt(n, t, e, r) { - function u() { - var n, t = c.status; - if (!t && zt(c) || t >= 200 && 300 > t || 304 === t) { - try { - n = e.call(i, c) - } catch (r) { - return o.error.call(i, r), void 0 - } - o.load.call(i, n) - } else o.error.call(i, c) - } - - var i = {}, o = ta.dispatch("beforesend", "progress", "load", "error"), a = {}, c = new XMLHttpRequest, l = null; - return !oa.XDomainRequest || "withCredentials"in c || !/^(http(s)?:)?\/\//.test(n) || (c = new XDomainRequest), "onload"in c ? c.onload = c.onerror = u : c.onreadystatechange = function () { - c.readyState > 3 && u() - }, c.onprogress = function (n) { - var t = ta.event; - ta.event = n; - try { - o.progress.call(i, c) - } finally { - ta.event = t - } - }, i.header = function (n, t) { - return n = (n + "").toLowerCase(), arguments.length < 2 ? a[n] : (null == t ? delete a[n] : a[n] = t + "", i) - }, i.mimeType = function (n) { - return arguments.length ? (t = null == n ? null : n + "", i) : t - }, i.responseType = function (n) { - return arguments.length ? (l = n, i) : l - }, i.response = function (n) { - return e = n, i - }, ["get", "post"].forEach(function (n) { - i[n] = function () { - return i.send.apply(i, [n].concat(ra(arguments))) - } - }), i.send = function (e, r, u) { - if (2 === arguments.length && "function" == typeof r && (u = r, r = null), c.open(e, n, !0), null == t || "accept"in a || (a.accept = t + ",*/*"), c.setRequestHeader)for (var s in a)c.setRequestHeader(s, a[s]); - return null != t && c.overrideMimeType && c.overrideMimeType(t), null != l && (c.responseType = l), null != u && i.on("error", u).on("load", function (n) { - u(null, n) - }), o.beforesend.call(i, c), c.send(null == r ? null : r), i - }, i.abort = function () { - return c.abort(), i - }, ta.rebind(i, o, "on"), null == r ? i : i.get(Ct(r)) - } - - function Ct(n) { - return 1 === n.length ? function (t, e) { - n(null == t ? e : null) - } : n - } - - function zt(n) { - var t = n.responseType; - return t && "text" !== t ? n.response : n.responseText - } - - function qt() { - var n = Lt(), t = Tt() - n; - t > 24 ? (isFinite(t) && (clearTimeout(ic), ic = setTimeout(qt, t)), uc = 0) : (uc = 1, ac(qt)) - } - - function Lt() { - var n = Date.now(); - for (oc = ec; oc;)n >= oc.t && (oc.f = oc.c(n - oc.t)), oc = oc.n; - return n - } - - function Tt() { - for (var n, t = ec, e = 1 / 0; t;)t.f ? t = n ? n.n = t.n : ec = t.n : (t.t < e && (e = t.t), t = (n = t).n); - return rc = n, e - } - - function Rt(n, t) { - return t - (n ? Math.ceil(Math.log(n) / Math.LN10) : 1) - } - - function Dt(n, t) { - var e = Math.pow(10, 3 * va(8 - t)); - return { - scale: t > 8 ? function (n) { - return n / e - } : function (n) { - return n * e - }, symbol: n - } - } - - function Pt(n) { - var t = n.decimal, e = n.thousands, r = n.grouping, u = n.currency, i = r && e ? function (n, t) { - for (var u = n.length, i = [], o = 0, a = r[0], c = 0; u > 0 && a > 0 && (c + a + 1 > t && (a = Math.max(1, t - c)), i.push(n.substring(u -= a, u + a)), !((c += a + 1) > t));)a = r[o = (o + 1) % r.length]; - return i.reverse().join(e) - } : Et; - return function (n) { - var e = lc.exec(n), r = e[1] || " ", o = e[2] || ">", a = e[3] || "-", c = e[4] || "", l = e[5], s = +e[6], f = e[7], h = e[8], g = e[9], p = 1, v = "", d = "", m = !1, y = !0; - switch (h && (h = +h.substring(1)), (l || "0" === r && "=" === o) && (l = r = "0", o = "="), g) { - case"n": - f = !0, g = "g"; - break; - case"%": - p = 100, d = "%", g = "f"; - break; - case"p": - p = 100, d = "%", g = "r"; - break; - case"b": - case"o": - case"x": - case"X": - "#" === c && (v = "0" + g.toLowerCase()); - case"c": - y = !1; - case"d": - m = !0, h = 0; - break; - case"s": - p = -1, g = "r" - } - "$" === c && (v = u[0], d = u[1]), "r" != g || h || (g = "g"), null != h && ("g" == g ? h = Math.max(1, Math.min(21, h)) : ("e" == g || "f" == g) && (h = Math.max(0, Math.min(20, h)))), g = sc.get(g) || Ut; - var M = l && f; - return function (n) { - var e = d; - if (m && n % 1)return ""; - var u = 0 > n || 0 === n && 0 > 1 / n ? (n = -n, "-") : "-" === a ? "" : a; - if (0 > p) { - var c = ta.formatPrefix(n, h); - n = c.scale(n), e = c.symbol + d - } else n *= p; - n = g(n, h); - var x, b, _ = n.lastIndexOf("."); - if (0 > _) { - var w = y ? n.lastIndexOf("e") : -1; - 0 > w ? (x = n, b = "") : (x = n.substring(0, w), b = n.substring(w)) - } else x = n.substring(0, _), b = t + n.substring(_ + 1); - !l && f && (x = i(x, 1 / 0)); - var S = v.length + x.length + b.length + (M ? 0 : u.length), k = s > S ? new Array(S = s - S + 1).join(r) : ""; - return M && (x = i(k + x, k.length ? s - b.length : 1 / 0)), u += v, n = x + b, ("<" === o ? u + n + k : ">" === o ? k + u + n : "^" === o ? k.substring(0, S >>= 1) + u + n + k.substring(S) : u + (M ? n : k + n)) + e - } - } - } - - function Ut(n) { - return n + "" - } - - function jt() { - this._ = new Date(arguments.length > 1 ? Date.UTC.apply(this, arguments) : arguments[0]) - } - - function Ft(n, t, e) { - function r(t) { - var e = n(t), r = i(e, 1); - return r - t > t - e ? e : r - } - - function u(e) { - return t(e = n(new hc(e - 1)), 1), e - } - - function i(n, e) { - return t(n = new hc(+n), e), n - } - - function o(n, r, i) { - var o = u(n), a = []; - if (i > 1)for (; r > o;)e(o) % i || a.push(new Date(+o)), t(o, 1); else for (; r > o;)a.push(new Date(+o)), t(o, 1); - return a - } - - function a(n, t, e) { - try { - hc = jt; - var r = new jt; - return r._ = n, o(r, t, e) - } finally { - hc = Date - } - } - - n.floor = n, n.round = r, n.ceil = u, n.offset = i, n.range = o; - var c = n.utc = Ht(n); - return c.floor = c, c.round = Ht(r), c.ceil = Ht(u), c.offset = Ht(i), c.range = a, n - } - - function Ht(n) { - return function (t, e) { - try { - hc = jt; - var r = new jt; - return r._ = t, n(r, e)._ - } finally { - hc = Date - } - } - } - - function Ot(n) { - function t(n) { - function t(t) { - for (var e, u, i, o = [], a = -1, c = 0; ++a < r;)37 === n.charCodeAt(a) && (o.push(n.slice(c, a)), null != (u = pc[e = n.charAt(++a)]) && (e = n.charAt(++a)), (i = N[e]) && (e = i(t, null == u ? "e" === e ? " " : "0" : u)), o.push(e), c = a + 1); - return o.push(n.slice(c, a)), o.join("") - } - - var r = n.length; - return t.parse = function (t) { - var r = {y: 1900, m: 0, d: 1, H: 0, M: 0, S: 0, L: 0, Z: null}, u = e(r, n, t, 0); - if (u != t.length)return null; - "p"in r && (r.H = r.H % 12 + 12 * r.p); - var i = null != r.Z && hc !== jt, o = new (i ? jt : hc); - return "j"in r ? o.setFullYear(r.y, 0, r.j) : "w"in r && ("W"in r || "U"in r) ? (o.setFullYear(r.y, 0, 1), o.setFullYear(r.y, 0, "W"in r ? (r.w + 6) % 7 + 7 * r.W - (o.getDay() + 5) % 7 : r.w + 7 * r.U - (o.getDay() + 6) % 7)) : o.setFullYear(r.y, r.m, r.d), o.setHours(r.H + (0 | r.Z / 100), r.M + r.Z % 100, r.S, r.L), i ? o._ : o - }, t.toString = function () { - return n - }, t - } - - function e(n, t, e, r) { - for (var u, i, o, a = 0, c = t.length, l = e.length; c > a;) { - if (r >= l)return -1; - if (u = t.charCodeAt(a++), 37 === u) { - if (o = t.charAt(a++), i = C[o in pc ? t.charAt(a++) : o], !i || (r = i(n, e, r)) < 0)return -1 - } else if (u != e.charCodeAt(r++))return -1 - } - return r - } - - function r(n, t, e) { - _.lastIndex = 0; - var r = _.exec(t.slice(e)); - return r ? (n.w = w.get(r[0].toLowerCase()), e + r[0].length) : -1 - } - - function u(n, t, e) { - x.lastIndex = 0; - var r = x.exec(t.slice(e)); - return r ? (n.w = b.get(r[0].toLowerCase()), e + r[0].length) : -1 - } - - function i(n, t, e) { - E.lastIndex = 0; - var r = E.exec(t.slice(e)); - return r ? (n.m = A.get(r[0].toLowerCase()), e + r[0].length) : -1 - } - - function o(n, t, e) { - S.lastIndex = 0; - var r = S.exec(t.slice(e)); - return r ? (n.m = k.get(r[0].toLowerCase()), e + r[0].length) : -1 - } - - function a(n, t, r) { - return e(n, N.c.toString(), t, r) - } - - function c(n, t, r) { - return e(n, N.x.toString(), t, r) - } - - function l(n, t, r) { - return e(n, N.X.toString(), t, r) - } - - function s(n, t, e) { - var r = M.get(t.slice(e, e += 2).toLowerCase()); - return null == r ? -1 : (n.p = r, e) - } - - var f = n.dateTime, h = n.date, g = n.time, p = n.periods, v = n.days, d = n.shortDays, m = n.months, y = n.shortMonths; - t.utc = function (n) { - function e(n) { - try { - hc = jt; - var t = new hc; - return t._ = n, r(t) - } finally { - hc = Date - } - } - - var r = t(n); - return e.parse = function (n) { - try { - hc = jt; - var t = r.parse(n); - return t && t._ - } finally { - hc = Date - } - }, e.toString = r.toString, e - }, t.multi = t.utc.multi = ae; - var M = ta.map(), x = It(v), b = Zt(v), _ = It(d), w = Zt(d), S = It(m), k = Zt(m), E = It(y), A = Zt(y); - p.forEach(function (n, t) { - M.set(n.toLowerCase(), t) - }); - var N = { - a: function (n) { - return d[n.getDay()] - }, A: function (n) { - return v[n.getDay()] - }, b: function (n) { - return y[n.getMonth()] - }, B: function (n) { - return m[n.getMonth()] - }, c: t(f), d: function (n, t) { - return Yt(n.getDate(), t, 2) - }, e: function (n, t) { - return Yt(n.getDate(), t, 2) - }, H: function (n, t) { - return Yt(n.getHours(), t, 2) - }, I: function (n, t) { - return Yt(n.getHours() % 12 || 12, t, 2) - }, j: function (n, t) { - return Yt(1 + fc.dayOfYear(n), t, 3) - }, L: function (n, t) { - return Yt(n.getMilliseconds(), t, 3) - }, m: function (n, t) { - return Yt(n.getMonth() + 1, t, 2) - }, M: function (n, t) { - return Yt(n.getMinutes(), t, 2) - }, p: function (n) { - return p[+(n.getHours() >= 12)] - }, S: function (n, t) { - return Yt(n.getSeconds(), t, 2) - }, U: function (n, t) { - return Yt(fc.sundayOfYear(n), t, 2) - }, w: function (n) { - return n.getDay() - }, W: function (n, t) { - return Yt(fc.mondayOfYear(n), t, 2) - }, x: t(h), X: t(g), y: function (n, t) { - return Yt(n.getFullYear() % 100, t, 2) - }, Y: function (n, t) { - return Yt(n.getFullYear() % 1e4, t, 4) - }, Z: ie, "%": function () { - return "%" - } - }, C = { - a: r, - A: u, - b: i, - B: o, - c: a, - d: Qt, - e: Qt, - H: te, - I: te, - j: ne, - L: ue, - m: Kt, - M: ee, - p: s, - S: re, - U: Xt, - w: Vt, - W: $t, - x: c, - X: l, - y: Wt, - Y: Bt, - Z: Jt, - "%": oe - }; - return t - } - - function Yt(n, t, e) { - var r = 0 > n ? "-" : "", u = (r ? -n : n) + "", i = u.length; - return r + (e > i ? new Array(e - i + 1).join(t) + u : u) - } - - function It(n) { - return new RegExp("^(?:" + n.map(ta.requote).join("|") + ")", "i") - } - - function Zt(n) { - for (var t = new a, e = -1, r = n.length; ++e < r;)t.set(n[e].toLowerCase(), e); - return t - } - - function Vt(n, t, e) { - vc.lastIndex = 0; - var r = vc.exec(t.slice(e, e + 1)); - return r ? (n.w = +r[0], e + r[0].length) : -1 - } - - function Xt(n, t, e) { - vc.lastIndex = 0; - var r = vc.exec(t.slice(e)); - return r ? (n.U = +r[0], e + r[0].length) : -1 - } - - function $t(n, t, e) { - vc.lastIndex = 0; - var r = vc.exec(t.slice(e)); - return r ? (n.W = +r[0], e + r[0].length) : -1 - } - - function Bt(n, t, e) { - vc.lastIndex = 0; - var r = vc.exec(t.slice(e, e + 4)); - return r ? (n.y = +r[0], e + r[0].length) : -1 - } - - function Wt(n, t, e) { - vc.lastIndex = 0; - var r = vc.exec(t.slice(e, e + 2)); - return r ? (n.y = Gt(+r[0]), e + r[0].length) : -1 - } - - function Jt(n, t, e) { - return /^[+-]\d{4}$/.test(t = t.slice(e, e + 5)) ? (n.Z = -t, e + 5) : -1 - } - - function Gt(n) { - return n + (n > 68 ? 1900 : 2e3) - } - - function Kt(n, t, e) { - vc.lastIndex = 0; - var r = vc.exec(t.slice(e, e + 2)); - return r ? (n.m = r[0] - 1, e + r[0].length) : -1 - } - - function Qt(n, t, e) { - vc.lastIndex = 0; - var r = vc.exec(t.slice(e, e + 2)); - return r ? (n.d = +r[0], e + r[0].length) : -1 - } - - function ne(n, t, e) { - vc.lastIndex = 0; - var r = vc.exec(t.slice(e, e + 3)); - return r ? (n.j = +r[0], e + r[0].length) : -1 - } - - function te(n, t, e) { - vc.lastIndex = 0; - var r = vc.exec(t.slice(e, e + 2)); - return r ? (n.H = +r[0], e + r[0].length) : -1 - } - - function ee(n, t, e) { - vc.lastIndex = 0; - var r = vc.exec(t.slice(e, e + 2)); - return r ? (n.M = +r[0], e + r[0].length) : -1 - } - - function re(n, t, e) { - vc.lastIndex = 0; - var r = vc.exec(t.slice(e, e + 2)); - return r ? (n.S = +r[0], e + r[0].length) : -1 - } - - function ue(n, t, e) { - vc.lastIndex = 0; - var r = vc.exec(t.slice(e, e + 3)); - return r ? (n.L = +r[0], e + r[0].length) : -1 - } - - function ie(n) { - var t = n.getTimezoneOffset(), e = t > 0 ? "-" : "+", r = 0 | va(t) / 60, u = va(t) % 60; - return e + Yt(r, "0", 2) + Yt(u, "0", 2) - } - - function oe(n, t, e) { - dc.lastIndex = 0; - var r = dc.exec(t.slice(e, e + 1)); - return r ? e + r[0].length : -1 - } - - function ae(n) { - for (var t = n.length, e = -1; ++e < t;)n[e][0] = this(n[e][0]); - return function (t) { - for (var e = 0, r = n[e]; !r[1](t);)r = n[++e]; - return r[0](t) - } - } - - function ce() { - } - - function le(n, t, e) { - var r = e.s = n + t, u = r - n, i = r - u; - e.t = n - i + (t - u) - } - - function se(n, t) { - n && xc.hasOwnProperty(n.type) && xc[n.type](n, t) - } - - function fe(n, t, e) { - var r, u = -1, i = n.length - e; - for (t.lineStart(); ++u < i;)r = n[u], t.point(r[0], r[1], r[2]); - t.lineEnd() - } - - function he(n, t) { - var e = -1, r = n.length; - for (t.polygonStart(); ++e < r;)fe(n[e], t, 1); - t.polygonEnd() - } - - function ge() { - function n(n, t) { - n *= Fa, t = t * Fa / 2 + Da / 4; - var e = n - r, o = e >= 0 ? 1 : -1, a = o * e, c = Math.cos(t), l = Math.sin(t), s = i * l, f = u * c + s * Math.cos(a), h = s * o * Math.sin(a); - _c.add(Math.atan2(h, f)), r = n, u = c, i = l - } - - var t, e, r, u, i; - wc.point = function (o, a) { - wc.point = n, r = (t = o) * Fa, u = Math.cos(a = (e = a) * Fa / 2 + Da / 4), i = Math.sin(a) - }, wc.lineEnd = function () { - n(t, e) - } - } - - function pe(n) { - var t = n[0], e = n[1], r = Math.cos(e); - return [r * Math.cos(t), r * Math.sin(t), Math.sin(e)] - } - - function ve(n, t) { - return n[0] * t[0] + n[1] * t[1] + n[2] * t[2] - } - - function de(n, t) { - return [n[1] * t[2] - n[2] * t[1], n[2] * t[0] - n[0] * t[2], n[0] * t[1] - n[1] * t[0]] - } - - function me(n, t) { - n[0] += t[0], n[1] += t[1], n[2] += t[2] - } - - function ye(n, t) { - return [n[0] * t, n[1] * t, n[2] * t] - } - - function Me(n) { - var t = Math.sqrt(n[0] * n[0] + n[1] * n[1] + n[2] * n[2]); - n[0] /= t, n[1] /= t, n[2] /= t - } - - function xe(n) { - return [Math.atan2(n[1], n[0]), nt(n[2])] - } - - function be(n, t) { - return va(n[0] - t[0]) < Ta && va(n[1] - t[1]) < Ta - } - - function _e(n, t) { - n *= Fa; - var e = Math.cos(t *= Fa); - we(e * Math.cos(n), e * Math.sin(n), Math.sin(t)) - } - - function we(n, t, e) { - ++Sc, Ec += (n - Ec) / Sc, Ac += (t - Ac) / Sc, Nc += (e - Nc) / Sc - } - - function Se() { - function n(n, u) { - n *= Fa; - var i = Math.cos(u *= Fa), o = i * Math.cos(n), a = i * Math.sin(n), c = Math.sin(u), l = Math.atan2(Math.sqrt((l = e * c - r * a) * l + (l = r * o - t * c) * l + (l = t * a - e * o) * l), t * o + e * a + r * c); - kc += l, Cc += l * (t + (t = o)), zc += l * (e + (e = a)), qc += l * (r + (r = c)), we(t, e, r) - } - - var t, e, r; - Dc.point = function (u, i) { - u *= Fa; - var o = Math.cos(i *= Fa); - t = o * Math.cos(u), e = o * Math.sin(u), r = Math.sin(i), Dc.point = n, we(t, e, r) - } - } - - function ke() { - Dc.point = _e - } - - function Ee() { - function n(n, t) { - n *= Fa; - var e = Math.cos(t *= Fa), o = e * Math.cos(n), a = e * Math.sin(n), c = Math.sin(t), l = u * c - i * a, s = i * o - r * c, f = r * a - u * o, h = Math.sqrt(l * l + s * s + f * f), g = r * o + u * a + i * c, p = h && -Q(g) / h, v = Math.atan2(h, g); - Lc += p * l, Tc += p * s, Rc += p * f, kc += v, Cc += v * (r + (r = o)), zc += v * (u + (u = a)), qc += v * (i + (i = c)), we(r, u, i) - } - - var t, e, r, u, i; - Dc.point = function (o, a) { - t = o, e = a, Dc.point = n, o *= Fa; - var c = Math.cos(a *= Fa); - r = c * Math.cos(o), u = c * Math.sin(o), i = Math.sin(a), we(r, u, i) - }, Dc.lineEnd = function () { - n(t, e), Dc.lineEnd = ke, Dc.point = _e - } - } - - function Ae(n, t) { - function e(e, r) { - return e = n(e, r), t(e[0], e[1]) - } - - return n.invert && t.invert && (e.invert = function (e, r) { - return e = t.invert(e, r), e && n.invert(e[0], e[1]) - }), e - } - - function Ne() { - return !0 - } - - function Ce(n, t, e, r, u) { - var i = [], o = []; - if (n.forEach(function (n) { - if (!((t = n.length - 1) <= 0)) { - var t, e = n[0], r = n[t]; - if (be(e, r)) { - u.lineStart(); - for (var a = 0; t > a; ++a)u.point((e = n[a])[0], e[1]); - return u.lineEnd(), void 0 - } - var c = new qe(e, n, null, !0), l = new qe(e, null, c, !1); - c.o = l, i.push(c), o.push(l), c = new qe(r, n, null, !1), l = new qe(r, null, c, !0), c.o = l, i.push(c), o.push(l) - } - }), o.sort(t), ze(i), ze(o), i.length) { - for (var a = 0, c = e, l = o.length; l > a; ++a)o[a].e = c = !c; - for (var s, f, h = i[0]; ;) { - for (var g = h, p = !0; g.v;)if ((g = g.n) === h)return; - s = g.z, u.lineStart(); - do { - if (g.v = g.o.v = !0, g.e) { - if (p)for (var a = 0, l = s.length; l > a; ++a)u.point((f = s[a])[0], f[1]); else r(g.x, g.n.x, 1, u); - g = g.n - } else { - if (p) { - s = g.p.z; - for (var a = s.length - 1; a >= 0; --a)u.point((f = s[a])[0], f[1]) - } else r(g.x, g.p.x, -1, u); - g = g.p - } - g = g.o, s = g.z, p = !p - } while (!g.v); - u.lineEnd() - } - } - } - - function ze(n) { - if (t = n.length) { - for (var t, e, r = 0, u = n[0]; ++r < t;)u.n = e = n[r], e.p = u, u = e; - u.n = e = n[0], e.p = u - } - } - - function qe(n, t, e, r) { - this.x = n, this.z = t, this.o = e, this.e = r, this.v = !1, this.n = this.p = null - } - - function Le(n, t, e, r) { - return function (u, i) { - function o(t, e) { - var r = u(t, e); - n(t = r[0], e = r[1]) && i.point(t, e) - } - - function a(n, t) { - var e = u(n, t); - d.point(e[0], e[1]) - } - - function c() { - y.point = a, d.lineStart() - } - - function l() { - y.point = o, d.lineEnd() - } - - function s(n, t) { - v.push([n, t]); - var e = u(n, t); - x.point(e[0], e[1]) - } - - function f() { - x.lineStart(), v = [] - } - - function h() { - s(v[0][0], v[0][1]), x.lineEnd(); - var n, t = x.clean(), e = M.buffer(), r = e.length; - if (v.pop(), p.push(v), v = null, r)if (1 & t) { - n = e[0]; - var u, r = n.length - 1, o = -1; - if (r > 0) { - for (b || (i.polygonStart(), b = !0), i.lineStart(); ++o < r;)i.point((u = n[o])[0], u[1]); - i.lineEnd() - } - } else r > 1 && 2 & t && e.push(e.pop().concat(e.shift())), g.push(e.filter(Te)) - } - - var g, p, v, d = t(i), m = u.invert(r[0], r[1]), y = { - point: o, - lineStart: c, - lineEnd: l, - polygonStart: function () { - y.point = s, y.lineStart = f, y.lineEnd = h, g = [], p = [] - }, - polygonEnd: function () { - y.point = o, y.lineStart = c, y.lineEnd = l, g = ta.merge(g); - var n = Fe(m, p); - g.length ? (b || (i.polygonStart(), b = !0), Ce(g, De, n, e, i)) : n && (b || (i.polygonStart(), b = !0), i.lineStart(), e(null, null, 1, i), i.lineEnd()), b && (i.polygonEnd(), b = !1), g = p = null - }, - sphere: function () { - i.polygonStart(), i.lineStart(), e(null, null, 1, i), i.lineEnd(), i.polygonEnd() - } - }, M = Re(), x = t(M), b = !1; - return y - } - } - - function Te(n) { - return n.length > 1 - } - - function Re() { - var n, t = []; - return { - lineStart: function () { - t.push(n = []) - }, point: function (t, e) { - n.push([t, e]) - }, lineEnd: y, buffer: function () { - var e = t; - return t = [], n = null, e - }, rejoin: function () { - t.length > 1 && t.push(t.pop().concat(t.shift())) - } - } - } - - function De(n, t) { - return ((n = n.x)[0] < 0 ? n[1] - ja - Ta : ja - n[1]) - ((t = t.x)[0] < 0 ? t[1] - ja - Ta : ja - t[1]) - } - - function Pe(n) { - var t, e = 0 / 0, r = 0 / 0, u = 0 / 0; - return { - lineStart: function () { - n.lineStart(), t = 1 - }, point: function (i, o) { - var a = i > 0 ? Da : -Da, c = va(i - e); - va(c - Da) < Ta ? (n.point(e, r = (r + o) / 2 > 0 ? ja : -ja), n.point(u, r), n.lineEnd(), n.lineStart(), n.point(a, r), n.point(i, r), t = 0) : u !== a && c >= Da && (va(e - u) < Ta && (e -= u * Ta), va(i - a) < Ta && (i -= a * Ta), r = Ue(e, r, i, o), n.point(u, r), n.lineEnd(), n.lineStart(), n.point(a, r), t = 0), n.point(e = i, r = o), u = a - }, lineEnd: function () { - n.lineEnd(), e = r = 0 / 0 - }, clean: function () { - return 2 - t - } - } - } - - function Ue(n, t, e, r) { - var u, i, o = Math.sin(n - e); - return va(o) > Ta ? Math.atan((Math.sin(t) * (i = Math.cos(r)) * Math.sin(e) - Math.sin(r) * (u = Math.cos(t)) * Math.sin(n)) / (u * i * o)) : (t + r) / 2 - } - - function je(n, t, e, r) { - var u; - if (null == n)u = e * ja, r.point(-Da, u), r.point(0, u), r.point(Da, u), r.point(Da, 0), r.point(Da, -u), r.point(0, -u), r.point(-Da, -u), r.point(-Da, 0), r.point(-Da, u); else if (va(n[0] - t[0]) > Ta) { - var i = n[0] < t[0] ? Da : -Da; - u = e * i / 2, r.point(-i, u), r.point(0, u), r.point(i, u) - } else r.point(t[0], t[1]) - } - - function Fe(n, t) { - var e = n[0], r = n[1], u = [Math.sin(e), -Math.cos(e), 0], i = 0, o = 0; - _c.reset(); - for (var a = 0, c = t.length; c > a; ++a) { - var l = t[a], s = l.length; - if (s)for (var f = l[0], h = f[0], g = f[1] / 2 + Da / 4, p = Math.sin(g), v = Math.cos(g), d = 1; ;) { - d === s && (d = 0), n = l[d]; - var m = n[0], y = n[1] / 2 + Da / 4, M = Math.sin(y), x = Math.cos(y), b = m - h, _ = b >= 0 ? 1 : -1, w = _ * b, S = w > Da, k = p * M; - if (_c.add(Math.atan2(k * _ * Math.sin(w), v * x + k * Math.cos(w))), i += S ? b + _ * Pa : b, S ^ h >= e ^ m >= e) { - var E = de(pe(f), pe(n)); - Me(E); - var A = de(u, E); - Me(A); - var N = (S ^ b >= 0 ? -1 : 1) * nt(A[2]); - (r > N || r === N && (E[0] || E[1])) && (o += S ^ b >= 0 ? 1 : -1) - } - if (!d++)break; - h = m, p = M, v = x, f = n - } - } - return (-Ta > i || Ta > i && 0 > _c) ^ 1 & o - } - - function He(n) { - function t(n, t) { - return Math.cos(n) * Math.cos(t) > i - } - - function e(n) { - var e, i, c, l, s; - return { - lineStart: function () { - l = c = !1, s = 1 - }, point: function (f, h) { - var g, p = [f, h], v = t(f, h), d = o ? v ? 0 : u(f, h) : v ? u(f + (0 > f ? Da : -Da), h) : 0; - if (!e && (l = c = v) && n.lineStart(), v !== c && (g = r(e, p), (be(e, g) || be(p, g)) && (p[0] += Ta, p[1] += Ta, v = t(p[0], p[1]))), v !== c)s = 0, v ? (n.lineStart(), g = r(p, e), n.point(g[0], g[1])) : (g = r(e, p), n.point(g[0], g[1]), n.lineEnd()), e = g; else if (a && e && o ^ v) { - var m; - d & i || !(m = r(p, e, !0)) || (s = 0, o ? (n.lineStart(), n.point(m[0][0], m[0][1]), n.point(m[1][0], m[1][1]), n.lineEnd()) : (n.point(m[1][0], m[1][1]), n.lineEnd(), n.lineStart(), n.point(m[0][0], m[0][1]))) - } - !v || e && be(e, p) || n.point(p[0], p[1]), e = p, c = v, i = d - }, lineEnd: function () { - c && n.lineEnd(), e = null - }, clean: function () { - return s | (l && c) << 1 - } - } - } - - function r(n, t, e) { - var r = pe(n), u = pe(t), o = [1, 0, 0], a = de(r, u), c = ve(a, a), l = a[0], s = c - l * l; - if (!s)return !e && n; - var f = i * c / s, h = -i * l / s, g = de(o, a), p = ye(o, f), v = ye(a, h); - me(p, v); - var d = g, m = ve(p, d), y = ve(d, d), M = m * m - y * (ve(p, p) - 1); - if (!(0 > M)) { - var x = Math.sqrt(M), b = ye(d, (-m - x) / y); - if (me(b, p), b = xe(b), !e)return b; - var _, w = n[0], S = t[0], k = n[1], E = t[1]; - w > S && (_ = w, w = S, S = _); - var A = S - w, N = va(A - Da) < Ta, C = N || Ta > A; - if (!N && k > E && (_ = k, k = E, E = _), C ? N ? k + E > 0 ^ b[1] < (va(b[0] - w) < Ta ? k : E) : k <= b[1] && b[1] <= E : A > Da ^ (w <= b[0] && b[0] <= S)) { - var z = ye(d, (-m + x) / y); - return me(z, p), [b, xe(z)] - } - } - } - - function u(t, e) { - var r = o ? n : Da - n, u = 0; - return -r > t ? u |= 1 : t > r && (u |= 2), -r > e ? u |= 4 : e > r && (u |= 8), u - } - - var i = Math.cos(n), o = i > 0, a = va(i) > Ta, c = gr(n, 6 * Fa); - return Le(t, e, c, o ? [0, -n] : [-Da, n - Da]) - } - - function Oe(n, t, e, r) { - return function (u) { - var i, o = u.a, a = u.b, c = o.x, l = o.y, s = a.x, f = a.y, h = 0, g = 1, p = s - c, v = f - l; - if (i = n - c, p || !(i > 0)) { - if (i /= p, 0 > p) { - if (h > i)return; - g > i && (g = i) - } else if (p > 0) { - if (i > g)return; - i > h && (h = i) - } - if (i = e - c, p || !(0 > i)) { - if (i /= p, 0 > p) { - if (i > g)return; - i > h && (h = i) - } else if (p > 0) { - if (h > i)return; - g > i && (g = i) - } - if (i = t - l, v || !(i > 0)) { - if (i /= v, 0 > v) { - if (h > i)return; - g > i && (g = i) - } else if (v > 0) { - if (i > g)return; - i > h && (h = i) - } - if (i = r - l, v || !(0 > i)) { - if (i /= v, 0 > v) { - if (i > g)return; - i > h && (h = i) - } else if (v > 0) { - if (h > i)return; - g > i && (g = i) - } - return h > 0 && (u.a = {x: c + h * p, y: l + h * v}), 1 > g && (u.b = { - x: c + g * p, - y: l + g * v - }), u - } - } - } - } - } - } - - function Ye(n, t, e, r) { - function u(r, u) { - return va(r[0] - n) < Ta ? u > 0 ? 0 : 3 : va(r[0] - e) < Ta ? u > 0 ? 2 : 1 : va(r[1] - t) < Ta ? u > 0 ? 1 : 0 : u > 0 ? 3 : 2 - } - - function i(n, t) { - return o(n.x, t.x) - } - - function o(n, t) { - var e = u(n, 1), r = u(t, 1); - return e !== r ? e - r : 0 === e ? t[1] - n[1] : 1 === e ? n[0] - t[0] : 2 === e ? n[1] - t[1] : t[0] - n[0] - } - - return function (a) { - function c(n) { - for (var t = 0, e = d.length, r = n[1], u = 0; e > u; ++u)for (var i, o = 1, a = d[u], c = a.length, l = a[0]; c > o; ++o)i = a[o], l[1] <= r ? i[1] > r && K(l, i, n) > 0 && ++t : i[1] <= r && K(l, i, n) < 0 && --t, l = i; - return 0 !== t - } - - function l(i, a, c, l) { - var s = 0, f = 0; - if (null == i || (s = u(i, c)) !== (f = u(a, c)) || o(i, a) < 0 ^ c > 0) { - do l.point(0 === s || 3 === s ? n : e, s > 1 ? r : t); while ((s = (s + c + 4) % 4) !== f) - } else l.point(a[0], a[1]) - } - - function s(u, i) { - return u >= n && e >= u && i >= t && r >= i - } - - function f(n, t) { - s(n, t) && a.point(n, t) - } - - function h() { - C.point = p, d && d.push(m = []), S = !0, w = !1, b = _ = 0 / 0 - } - - function g() { - v && (p(y, M), x && w && A.rejoin(), v.push(A.buffer())), C.point = f, w && a.lineEnd() - } - - function p(n, t) { - n = Math.max(-Uc, Math.min(Uc, n)), t = Math.max(-Uc, Math.min(Uc, t)); - var e = s(n, t); - if (d && m.push([n, t]), S)y = n, M = t, x = e, S = !1, e && (a.lineStart(), a.point(n, t)); else if (e && w)a.point(n, t); else { - var r = {a: {x: b, y: _}, b: {x: n, y: t}}; - N(r) ? (w || (a.lineStart(), a.point(r.a.x, r.a.y)), a.point(r.b.x, r.b.y), e || a.lineEnd(), k = !1) : e && (a.lineStart(), a.point(n, t), k = !1) - } - b = n, _ = t, w = e - } - - var v, d, m, y, M, x, b, _, w, S, k, E = a, A = Re(), N = Oe(n, t, e, r), C = { - point: f, - lineStart: h, - lineEnd: g, - polygonStart: function () { - a = A, v = [], d = [], k = !0 - }, - polygonEnd: function () { - a = E, v = ta.merge(v); - var t = c([n, r]), e = k && t, u = v.length; - (e || u) && (a.polygonStart(), e && (a.lineStart(), l(null, null, 1, a), a.lineEnd()), u && Ce(v, i, t, l, a), a.polygonEnd()), v = d = m = null - } - }; - return C - } - } - - function Ie(n) { - var t = 0, e = Da / 3, r = ir(n), u = r(t, e); - return u.parallels = function (n) { - return arguments.length ? r(t = n[0] * Da / 180, e = n[1] * Da / 180) : [180 * (t / Da), 180 * (e / Da)] - }, u - } - - function Ze(n, t) { - function e(n, t) { - var e = Math.sqrt(i - 2 * u * Math.sin(t)) / u; - return [e * Math.sin(n *= u), o - e * Math.cos(n)] - } - - var r = Math.sin(n), u = (r + Math.sin(t)) / 2, i = 1 + r * (2 * u - r), o = Math.sqrt(i) / u; - return e.invert = function (n, t) { - var e = o - t; - return [Math.atan2(n, e) / u, nt((i - (n * n + e * e) * u * u) / (2 * u))] - }, e - } - - function Ve() { - function n(n, t) { - Fc += u * n - r * t, r = n, u = t - } - - var t, e, r, u; - Zc.point = function (i, o) { - Zc.point = n, t = r = i, e = u = o - }, Zc.lineEnd = function () { - n(t, e) - } - } - - function Xe(n, t) { - Hc > n && (Hc = n), n > Yc && (Yc = n), Oc > t && (Oc = t), t > Ic && (Ic = t) - } - - function $e() { - function n(n, t) { - o.push("M", n, ",", t, i) - } - - function t(n, t) { - o.push("M", n, ",", t), a.point = e - } - - function e(n, t) { - o.push("L", n, ",", t) - } - - function r() { - a.point = n - } - - function u() { - o.push("Z") - } - - var i = Be(4.5), o = [], a = { - point: n, lineStart: function () { - a.point = t - }, lineEnd: r, polygonStart: function () { - a.lineEnd = u - }, polygonEnd: function () { - a.lineEnd = r, a.point = n - }, pointRadius: function (n) { - return i = Be(n), a - }, result: function () { - if (o.length) { - var n = o.join(""); - return o = [], n - } - } - }; - return a - } - - function Be(n) { - return "m0," + n + "a" + n + "," + n + " 0 1,1 0," + -2 * n + "a" + n + "," + n + " 0 1,1 0," + 2 * n + "z" - } - - function We(n, t) { - Ec += n, Ac += t, ++Nc - } - - function Je() { - function n(n, r) { - var u = n - t, i = r - e, o = Math.sqrt(u * u + i * i); - Cc += o * (t + n) / 2, zc += o * (e + r) / 2, qc += o, We(t = n, e = r) - } - - var t, e; - Xc.point = function (r, u) { - Xc.point = n, We(t = r, e = u) - } - } - - function Ge() { - Xc.point = We - } - - function Ke() { - function n(n, t) { - var e = n - r, i = t - u, o = Math.sqrt(e * e + i * i); - Cc += o * (r + n) / 2, zc += o * (u + t) / 2, qc += o, o = u * n - r * t, Lc += o * (r + n), Tc += o * (u + t), Rc += 3 * o, We(r = n, u = t) - } - - var t, e, r, u; - Xc.point = function (i, o) { - Xc.point = n, We(t = r = i, e = u = o) - }, Xc.lineEnd = function () { - n(t, e) - } - } - - function Qe(n) { - function t(t, e) { - n.moveTo(t + o, e), n.arc(t, e, o, 0, Pa) - } - - function e(t, e) { - n.moveTo(t, e), a.point = r - } - - function r(t, e) { - n.lineTo(t, e) - } - - function u() { - a.point = t - } - - function i() { - n.closePath() - } - - var o = 4.5, a = { - point: t, lineStart: function () { - a.point = e - }, lineEnd: u, polygonStart: function () { - a.lineEnd = i - }, polygonEnd: function () { - a.lineEnd = u, a.point = t - }, pointRadius: function (n) { - return o = n, a - }, result: y - }; - return a - } - - function nr(n) { - function t(n) { - return (a ? r : e)(n) - } - - function e(t) { - return rr(t, function (e, r) { - e = n(e, r), t.point(e[0], e[1]) - }) - } - - function r(t) { - function e(e, r) { - e = n(e, r), t.point(e[0], e[1]) - } - - function r() { - M = 0 / 0, S.point = i, t.lineStart() - } - - function i(e, r) { - var i = pe([e, r]), o = n(e, r); - u(M, x, y, b, _, w, M = o[0], x = o[1], y = e, b = i[0], _ = i[1], w = i[2], a, t), t.point(M, x) - } - - function o() { - S.point = e, t.lineEnd() - } - - function c() { - r(), S.point = l, S.lineEnd = s - } - - function l(n, t) { - i(f = n, h = t), g = M, p = x, v = b, d = _, m = w, S.point = i - } - - function s() { - u(M, x, y, b, _, w, g, p, f, v, d, m, a, t), S.lineEnd = o, o() - } - - var f, h, g, p, v, d, m, y, M, x, b, _, w, S = { - point: e, - lineStart: r, - lineEnd: o, - polygonStart: function () { - t.polygonStart(), S.lineStart = c - }, - polygonEnd: function () { - t.polygonEnd(), S.lineStart = r - } - }; - return S - } - - function u(t, e, r, a, c, l, s, f, h, g, p, v, d, m) { - var y = s - t, M = f - e, x = y * y + M * M; - if (x > 4 * i && d--) { - var b = a + g, _ = c + p, w = l + v, S = Math.sqrt(b * b + _ * _ + w * w), k = Math.asin(w /= S), E = va(va(w) - 1) < Ta || va(r - h) < Ta ? (r + h) / 2 : Math.atan2(_, b), A = n(E, k), N = A[0], C = A[1], z = N - t, q = C - e, L = M * z - y * q; - (L * L / x > i || va((y * z + M * q) / x - .5) > .3 || o > a * g + c * p + l * v) && (u(t, e, r, a, c, l, N, C, E, b /= S, _ /= S, w, d, m), m.point(N, C), u(N, C, E, b, _, w, s, f, h, g, p, v, d, m)) - } - } - - var i = .5, o = Math.cos(30 * Fa), a = 16; - return t.precision = function (n) { - return arguments.length ? (a = (i = n * n) > 0 && 16, t) : Math.sqrt(i) - }, t - } - - function tr(n) { - var t = nr(function (t, e) { - return n([t * Ha, e * Ha]) - }); - return function (n) { - return or(t(n)) - } - } - - function er(n) { - this.stream = n - } - - function rr(n, t) { - return { - point: t, sphere: function () { - n.sphere() - }, lineStart: function () { - n.lineStart() - }, lineEnd: function () { - n.lineEnd() - }, polygonStart: function () { - n.polygonStart() - }, polygonEnd: function () { - n.polygonEnd() - } - } - } - - function ur(n) { - return ir(function () { - return n - })() - } - - function ir(n) { - function t(n) { - return n = a(n[0] * Fa, n[1] * Fa), [n[0] * h + c, l - n[1] * h] - } - - function e(n) { - return n = a.invert((n[0] - c) / h, (l - n[1]) / h), n && [n[0] * Ha, n[1] * Ha] - } - - function r() { - a = Ae(o = lr(m, y, M), i); - var n = i(v, d); - return c = g - n[0] * h, l = p + n[1] * h, u() - } - - function u() { - return s && (s.valid = !1, s = null), t - } - - var i, o, a, c, l, s, f = nr(function (n, t) { - return n = i(n, t), [n[0] * h + c, l - n[1] * h] - }), h = 150, g = 480, p = 250, v = 0, d = 0, m = 0, y = 0, M = 0, x = Pc, b = Et, _ = null, w = null; - return t.stream = function (n) { - return s && (s.valid = !1), s = or(x(o, f(b(n)))), s.valid = !0, s - }, t.clipAngle = function (n) { - return arguments.length ? (x = null == n ? (_ = n, Pc) : He((_ = +n) * Fa), u()) : _ - }, t.clipExtent = function (n) { - return arguments.length ? (w = n, b = n ? Ye(n[0][0], n[0][1], n[1][0], n[1][1]) : Et, u()) : w - }, t.scale = function (n) { - return arguments.length ? (h = +n, r()) : h - }, t.translate = function (n) { - return arguments.length ? (g = +n[0], p = +n[1], r()) : [g, p] - }, t.center = function (n) { - return arguments.length ? (v = n[0] % 360 * Fa, d = n[1] % 360 * Fa, r()) : [v * Ha, d * Ha] - }, t.rotate = function (n) { - return arguments.length ? (m = n[0] % 360 * Fa, y = n[1] % 360 * Fa, M = n.length > 2 ? n[2] % 360 * Fa : 0, r()) : [m * Ha, y * Ha, M * Ha] - }, ta.rebind(t, f, "precision"), function () { - return i = n.apply(this, arguments), t.invert = i.invert && e, r() - } - } - - function or(n) { - return rr(n, function (t, e) { - n.point(t * Fa, e * Fa) - }) - } - - function ar(n, t) { - return [n, t] - } - - function cr(n, t) { - return [n > Da ? n - Pa : -Da > n ? n + Pa : n, t] - } - - function lr(n, t, e) { - return n ? t || e ? Ae(fr(n), hr(t, e)) : fr(n) : t || e ? hr(t, e) : cr - } - - function sr(n) { - return function (t, e) { - return t += n, [t > Da ? t - Pa : -Da > t ? t + Pa : t, e] - } - } - - function fr(n) { - var t = sr(n); - return t.invert = sr(-n), t - } - - function hr(n, t) { - function e(n, t) { - var e = Math.cos(t), a = Math.cos(n) * e, c = Math.sin(n) * e, l = Math.sin(t), s = l * r + a * u; - return [Math.atan2(c * i - s * o, a * r - l * u), nt(s * i + c * o)] - } - - var r = Math.cos(n), u = Math.sin(n), i = Math.cos(t), o = Math.sin(t); - return e.invert = function (n, t) { - var e = Math.cos(t), a = Math.cos(n) * e, c = Math.sin(n) * e, l = Math.sin(t), s = l * i - c * o; - return [Math.atan2(c * i + l * o, a * r + s * u), nt(s * r - a * u)] - }, e - } - - function gr(n, t) { - var e = Math.cos(n), r = Math.sin(n); - return function (u, i, o, a) { - var c = o * t; - null != u ? (u = pr(e, u), i = pr(e, i), (o > 0 ? i > u : u > i) && (u += o * Pa)) : (u = n + o * Pa, i = n - .5 * c); - for (var l, s = u; o > 0 ? s > i : i > s; s -= c)a.point((l = xe([e, -r * Math.cos(s), -r * Math.sin(s)]))[0], l[1]) - } - } - - function pr(n, t) { - var e = pe(t); - e[0] -= n, Me(e); - var r = Q(-e[1]); - return ((-e[2] < 0 ? -r : r) + 2 * Math.PI - Ta) % (2 * Math.PI) - } - - function vr(n, t, e) { - var r = ta.range(n, t - Ta, e).concat(t); - return function (n) { - return r.map(function (t) { - return [n, t] - }) - } - } - - function dr(n, t, e) { - var r = ta.range(n, t - Ta, e).concat(t); - return function (n) { - return r.map(function (t) { - return [t, n] - }) - } - } - - function mr(n) { - return n.source - } - - function yr(n) { - return n.target - } - - function Mr(n, t, e, r) { - var u = Math.cos(t), i = Math.sin(t), o = Math.cos(r), a = Math.sin(r), c = u * Math.cos(n), l = u * Math.sin(n), s = o * Math.cos(e), f = o * Math.sin(e), h = 2 * Math.asin(Math.sqrt(ut(r - t) + u * o * ut(e - n))), g = 1 / Math.sin(h), p = h ? function (n) { - var t = Math.sin(n *= h) * g, e = Math.sin(h - n) * g, r = e * c + t * s, u = e * l + t * f, o = e * i + t * a; - return [Math.atan2(u, r) * Ha, Math.atan2(o, Math.sqrt(r * r + u * u)) * Ha] - } : function () { - return [n * Ha, t * Ha] - }; - return p.distance = h, p - } - - function xr() { - function n(n, u) { - var i = Math.sin(u *= Fa), o = Math.cos(u), a = va((n *= Fa) - t), c = Math.cos(a); - $c += Math.atan2(Math.sqrt((a = o * Math.sin(a)) * a + (a = r * i - e * o * c) * a), e * i + r * o * c), t = n, e = i, r = o - } - - var t, e, r; - Bc.point = function (u, i) { - t = u * Fa, e = Math.sin(i *= Fa), r = Math.cos(i), Bc.point = n - }, Bc.lineEnd = function () { - Bc.point = Bc.lineEnd = y - } - } - - function br(n, t) { - function e(t, e) { - var r = Math.cos(t), u = Math.cos(e), i = n(r * u); - return [i * u * Math.sin(t), i * Math.sin(e)] - } - - return e.invert = function (n, e) { - var r = Math.sqrt(n * n + e * e), u = t(r), i = Math.sin(u), o = Math.cos(u); - return [Math.atan2(n * i, r * o), Math.asin(r && e * i / r)] - }, e - } - - function _r(n, t) { - function e(n, t) { - o > 0 ? -ja + Ta > t && (t = -ja + Ta) : t > ja - Ta && (t = ja - Ta); - var e = o / Math.pow(u(t), i); - return [e * Math.sin(i * n), o - e * Math.cos(i * n)] - } - - var r = Math.cos(n), u = function (n) { - return Math.tan(Da / 4 + n / 2) - }, i = n === t ? Math.sin(n) : Math.log(r / Math.cos(t)) / Math.log(u(t) / u(n)), o = r * Math.pow(u(n), i) / i; - return i ? (e.invert = function (n, t) { - var e = o - t, r = G(i) * Math.sqrt(n * n + e * e); - return [Math.atan2(n, e) / i, 2 * Math.atan(Math.pow(o / r, 1 / i)) - ja] - }, e) : Sr - } - - function wr(n, t) { - function e(n, t) { - var e = i - t; - return [e * Math.sin(u * n), i - e * Math.cos(u * n)] - } - - var r = Math.cos(n), u = n === t ? Math.sin(n) : (r - Math.cos(t)) / (t - n), i = r / u + n; - return va(u) < Ta ? ar : (e.invert = function (n, t) { - var e = i - t; - return [Math.atan2(n, e) / u, i - G(u) * Math.sqrt(n * n + e * e)] - }, e) - } - - function Sr(n, t) { - return [n, Math.log(Math.tan(Da / 4 + t / 2))] - } - - function kr(n) { - var t, e = ur(n), r = e.scale, u = e.translate, i = e.clipExtent; - return e.scale = function () { - var n = r.apply(e, arguments); - return n === e ? t ? e.clipExtent(null) : e : n - }, e.translate = function () { - var n = u.apply(e, arguments); - return n === e ? t ? e.clipExtent(null) : e : n - }, e.clipExtent = function (n) { - var o = i.apply(e, arguments); - if (o === e) { - if (t = null == n) { - var a = Da * r(), c = u(); - i([[c[0] - a, c[1] - a], [c[0] + a, c[1] + a]]) - } - } else t && (o = null); - return o - }, e.clipExtent(null) - } - - function Er(n, t) { - return [Math.log(Math.tan(Da / 4 + t / 2)), -n] - } - - function Ar(n) { - return n[0] - } - - function Nr(n) { - return n[1] - } - - function Cr(n) { - for (var t = n.length, e = [0, 1], r = 2, u = 2; t > u; u++) { - for (; r > 1 && K(n[e[r - 2]], n[e[r - 1]], n[u]) <= 0;)--r; - e[r++] = u - } - return e.slice(0, r) - } - - function zr(n, t) { - return n[0] - t[0] || n[1] - t[1] - } - - function qr(n, t, e) { - return (e[0] - t[0]) * (n[1] - t[1]) < (e[1] - t[1]) * (n[0] - t[0]) - } - - function Lr(n, t, e, r) { - var u = n[0], i = e[0], o = t[0] - u, a = r[0] - i, c = n[1], l = e[1], s = t[1] - c, f = r[1] - l, h = (a * (c - l) - f * (u - i)) / (f * o - a * s); - return [u + h * o, c + h * s] - } - - function Tr(n) { - var t = n[0], e = n[n.length - 1]; - return !(t[0] - e[0] || t[1] - e[1]) - } - - function Rr() { - tu(this), this.edge = this.site = this.circle = null - } - - function Dr(n) { - var t = ol.pop() || new Rr; - return t.site = n, t - } - - function Pr(n) { - Xr(n), rl.remove(n), ol.push(n), tu(n) - } - - function Ur(n) { - var t = n.circle, e = t.x, r = t.cy, u = {x: e, y: r}, i = n.P, o = n.N, a = [n]; - Pr(n); - for (var c = i; c.circle && va(e - c.circle.x) < Ta && va(r - c.circle.cy) < Ta;)i = c.P, a.unshift(c), Pr(c), c = i; - a.unshift(c), Xr(c); - for (var l = o; l.circle && va(e - l.circle.x) < Ta && va(r - l.circle.cy) < Ta;)o = l.N, a.push(l), Pr(l), l = o; - a.push(l), Xr(l); - var s, f = a.length; - for (s = 1; f > s; ++s)l = a[s], c = a[s - 1], Kr(l.edge, c.site, l.site, u); - c = a[0], l = a[f - 1], l.edge = Jr(c.site, l.site, null, u), Vr(c), Vr(l) - } - - function jr(n) { - for (var t, e, r, u, i = n.x, o = n.y, a = rl._; a;)if (r = Fr(a, o) - i, r > Ta)a = a.L; else { - if (u = i - Hr(a, o), !(u > Ta)) { - r > -Ta ? (t = a.P, e = a) : u > -Ta ? (t = a, e = a.N) : t = e = a; - break - } - if (!a.R) { - t = a; - break - } - a = a.R - } - var c = Dr(n); - if (rl.insert(t, c), t || e) { - if (t === e)return Xr(t), e = Dr(t.site), rl.insert(c, e), c.edge = e.edge = Jr(t.site, c.site), Vr(t), Vr(e), void 0; - if (!e)return c.edge = Jr(t.site, c.site), void 0; - Xr(t), Xr(e); - var l = t.site, s = l.x, f = l.y, h = n.x - s, g = n.y - f, p = e.site, v = p.x - s, d = p.y - f, m = 2 * (h * d - g * v), y = h * h + g * g, M = v * v + d * d, x = { - x: (d * y - g * M) / m + s, - y: (h * M - v * y) / m + f - }; - Kr(e.edge, l, p, x), c.edge = Jr(l, n, null, x), e.edge = Jr(n, p, null, x), Vr(t), Vr(e) - } - } - - function Fr(n, t) { - var e = n.site, r = e.x, u = e.y, i = u - t; - if (!i)return r; - var o = n.P; - if (!o)return -1 / 0; - e = o.site; - var a = e.x, c = e.y, l = c - t; - if (!l)return a; - var s = a - r, f = 1 / i - 1 / l, h = s / l; - return f ? (-h + Math.sqrt(h * h - 2 * f * (s * s / (-2 * l) - c + l / 2 + u - i / 2))) / f + r : (r + a) / 2 - } - - function Hr(n, t) { - var e = n.N; - if (e)return Fr(e, t); - var r = n.site; - return r.y === t ? r.x : 1 / 0 - } - - function Or(n) { - this.site = n, this.edges = [] - } - - function Yr(n) { - for (var t, e, r, u, i, o, a, c, l, s, f = n[0][0], h = n[1][0], g = n[0][1], p = n[1][1], v = el, d = v.length; d--;)if (i = v[d], i && i.prepare())for (a = i.edges, c = a.length, o = 0; c > o;)s = a[o].end(), r = s.x, u = s.y, l = a[++o % c].start(), t = l.x, e = l.y, (va(r - t) > Ta || va(u - e) > Ta) && (a.splice(o, 0, new Qr(Gr(i.site, s, va(r - f) < Ta && p - u > Ta ? { - x: f, - y: va(t - f) < Ta ? e : p - } : va(u - p) < Ta && h - r > Ta ? {x: va(e - p) < Ta ? t : h, y: p} : va(r - h) < Ta && u - g > Ta ? { - x: h, - y: va(t - h) < Ta ? e : g - } : va(u - g) < Ta && r - f > Ta ? {x: va(e - g) < Ta ? t : f, y: g} : null), i.site, null)), ++c) - } - - function Ir(n, t) { - return t.angle - n.angle - } - - function Zr() { - tu(this), this.x = this.y = this.arc = this.site = this.cy = null - } - - function Vr(n) { - var t = n.P, e = n.N; - if (t && e) { - var r = t.site, u = n.site, i = e.site; - if (r !== i) { - var o = u.x, a = u.y, c = r.x - o, l = r.y - a, s = i.x - o, f = i.y - a, h = 2 * (c * f - l * s); - if (!(h >= -Ra)) { - var g = c * c + l * l, p = s * s + f * f, v = (f * g - l * p) / h, d = (c * p - s * g) / h, f = d + a, m = al.pop() || new Zr; - m.arc = n, m.site = u, m.x = v + o, m.y = f + Math.sqrt(v * v + d * d), m.cy = f, n.circle = m; - for (var y = null, M = il._; M;)if (m.y < M.y || m.y === M.y && m.x <= M.x) { - if (!M.L) { - y = M.P; - break - } - M = M.L - } else { - if (!M.R) { - y = M; - break - } - M = M.R - } - il.insert(y, m), y || (ul = m) - } - } - } - } - - function Xr(n) { - var t = n.circle; - t && (t.P || (ul = t.N), il.remove(t), al.push(t), tu(t), n.circle = null) - } - - function $r(n) { - for (var t, e = tl, r = Oe(n[0][0], n[0][1], n[1][0], n[1][1]), u = e.length; u--;)t = e[u], (!Br(t, n) || !r(t) || va(t.a.x - t.b.x) < Ta && va(t.a.y - t.b.y) < Ta) && (t.a = t.b = null, e.splice(u, 1)) - } - - function Br(n, t) { - var e = n.b; - if (e)return !0; - var r, u, i = n.a, o = t[0][0], a = t[1][0], c = t[0][1], l = t[1][1], s = n.l, f = n.r, h = s.x, g = s.y, p = f.x, v = f.y, d = (h + p) / 2, m = (g + v) / 2; - if (v === g) { - if (o > d || d >= a)return; - if (h > p) { - if (i) { - if (i.y >= l)return - } else i = {x: d, y: c}; - e = {x: d, y: l} - } else { - if (i) { - if (i.y < c)return - } else i = {x: d, y: l}; - e = {x: d, y: c} - } - } else if (r = (h - p) / (v - g), u = m - r * d, -1 > r || r > 1)if (h > p) { - if (i) { - if (i.y >= l)return - } else i = {x: (c - u) / r, y: c}; - e = {x: (l - u) / r, y: l} - } else { - if (i) { - if (i.y < c)return - } else i = {x: (l - u) / r, y: l}; - e = {x: (c - u) / r, y: c} - } else if (v > g) { - if (i) { - if (i.x >= a)return - } else i = {x: o, y: r * o + u}; - e = {x: a, y: r * a + u} - } else { - if (i) { - if (i.x < o)return - } else i = {x: a, y: r * a + u}; - e = {x: o, y: r * o + u} - } - return n.a = i, n.b = e, !0 - } - - function Wr(n, t) { - this.l = n, this.r = t, this.a = this.b = null - } - - function Jr(n, t, e, r) { - var u = new Wr(n, t); - return tl.push(u), e && Kr(u, n, t, e), r && Kr(u, t, n, r), el[n.i].edges.push(new Qr(u, n, t)), el[t.i].edges.push(new Qr(u, t, n)), u - } - - function Gr(n, t, e) { - var r = new Wr(n, null); - return r.a = t, r.b = e, tl.push(r), r - } - - function Kr(n, t, e, r) { - n.a || n.b ? n.l === e ? n.b = r : n.a = r : (n.a = r, n.l = t, n.r = e) - } - - function Qr(n, t, e) { - var r = n.a, u = n.b; - this.edge = n, this.site = t, this.angle = e ? Math.atan2(e.y - t.y, e.x - t.x) : n.l === t ? Math.atan2(u.x - r.x, r.y - u.y) : Math.atan2(r.x - u.x, u.y - r.y) - } - - function nu() { - this._ = null - } - - function tu(n) { - n.U = n.C = n.L = n.R = n.P = n.N = null - } - - function eu(n, t) { - var e = t, r = t.R, u = e.U; - u ? u.L === e ? u.L = r : u.R = r : n._ = r, r.U = u, e.U = r, e.R = r.L, e.R && (e.R.U = e), r.L = e - } - - function ru(n, t) { - var e = t, r = t.L, u = e.U; - u ? u.L === e ? u.L = r : u.R = r : n._ = r, r.U = u, e.U = r, e.L = r.R, e.L && (e.L.U = e), r.R = e - } - - function uu(n) { - for (; n.L;)n = n.L; - return n - } - - function iu(n, t) { - var e, r, u, i = n.sort(ou).pop(); - for (tl = [], el = new Array(n.length), rl = new nu, il = new nu; ;)if (u = ul, i && (!u || i.y < u.y || i.y === u.y && i.x < u.x))(i.x !== e || i.y !== r) && (el[i.i] = new Or(i), jr(i), e = i.x, r = i.y), i = n.pop(); else { - if (!u)break; - Ur(u.arc) - } - t && ($r(t), Yr(t)); - var o = {cells: el, edges: tl}; - return rl = il = tl = el = null, o - } - - function ou(n, t) { - return t.y - n.y || t.x - n.x - } - - function au(n, t, e) { - return (n.x - e.x) * (t.y - n.y) - (n.x - t.x) * (e.y - n.y) - } - - function cu(n) { - return n.x - } - - function lu(n) { - return n.y - } - - function su() { - return {leaf: !0, nodes: [], point: null, x: null, y: null} - } - - function fu(n, t, e, r, u, i) { - if (!n(t, e, r, u, i)) { - var o = .5 * (e + u), a = .5 * (r + i), c = t.nodes; - c[0] && fu(n, c[0], e, r, o, a), c[1] && fu(n, c[1], o, r, u, a), c[2] && fu(n, c[2], e, a, o, i), c[3] && fu(n, c[3], o, a, u, i) - } - } - - function hu(n, t, e, r, u, i, o) { - var a, c = 1 / 0; - return function l(n, s, f, h, g) { - if (!(s > i || f > o || r > h || u > g)) { - if (p = n.point) { - var p, v = t - p[0], d = e - p[1], m = v * v + d * d; - if (c > m) { - var y = Math.sqrt(c = m); - r = t - y, u = e - y, i = t + y, o = e + y, a = p - } - } - for (var M = n.nodes, x = .5 * (s + h), b = .5 * (f + g), _ = t >= x, w = e >= b, S = w << 1 | _, k = S + 4; k > S; ++S)if (n = M[3 & S])switch (3 & S) { - case 0: - l(n, s, f, x, b); - break; - case 1: - l(n, x, f, h, b); - break; - case 2: - l(n, s, b, x, g); - break; - case 3: - l(n, x, b, h, g) - } - } - }(n, r, u, i, o), a - } - - function gu(n, t) { - n = ta.rgb(n), t = ta.rgb(t); - var e = n.r, r = n.g, u = n.b, i = t.r - e, o = t.g - r, a = t.b - u; - return function (n) { - return "#" + Mt(Math.round(e + i * n)) + Mt(Math.round(r + o * n)) + Mt(Math.round(u + a * n)) - } - } - - function pu(n, t) { - var e, r = {}, u = {}; - for (e in n)e in t ? r[e] = mu(n[e], t[e]) : u[e] = n[e]; - for (e in t)e in n || (u[e] = t[e]); - return function (n) { - for (e in r)u[e] = r[e](n); - return u - } - } - - function vu(n, t) { - return n = +n, t = +t, function (e) { - return n * (1 - e) + t * e - } - } - - function du(n, t) { - var e, r, u, i = ll.lastIndex = sl.lastIndex = 0, o = -1, a = [], c = []; - for (n += "", t += ""; (e = ll.exec(n)) && (r = sl.exec(t));)(u = r.index) > i && (u = t.slice(i, u), a[o] ? a[o] += u : a[++o] = u), (e = e[0]) === (r = r[0]) ? a[o] ? a[o] += r : a[++o] = r : (a[++o] = null, c.push({ - i: o, - x: vu(e, r) - })), i = sl.lastIndex; - return i < t.length && (u = t.slice(i), a[o] ? a[o] += u : a[++o] = u), a.length < 2 ? c[0] ? (t = c[0].x, function (n) { - return t(n) + "" - }) : function () { - return t - } : (t = c.length, function (n) { - for (var e, r = 0; t > r; ++r)a[(e = c[r]).i] = e.x(n); - return a.join("") - }) - } - - function mu(n, t) { - for (var e, r = ta.interpolators.length; --r >= 0 && !(e = ta.interpolators[r](n, t));); - return e - } - - function yu(n, t) { - var e, r = [], u = [], i = n.length, o = t.length, a = Math.min(n.length, t.length); - for (e = 0; a > e; ++e)r.push(mu(n[e], t[e])); - for (; i > e; ++e)u[e] = n[e]; - for (; o > e; ++e)u[e] = t[e]; - return function (n) { - for (e = 0; a > e; ++e)u[e] = r[e](n); - return u - } - } - - function Mu(n) { - return function (t) { - return 0 >= t ? 0 : t >= 1 ? 1 : n(t) - } - } - - function xu(n) { - return function (t) { - return 1 - n(1 - t) - } - } - - function bu(n) { - return function (t) { - return .5 * (.5 > t ? n(2 * t) : 2 - n(2 - 2 * t)) - } - } - - function _u(n) { - return n * n - } - - function wu(n) { - return n * n * n - } - - function Su(n) { - if (0 >= n)return 0; - if (n >= 1)return 1; - var t = n * n, e = t * n; - return 4 * (.5 > n ? e : 3 * (n - t) + e - .75) - } - - function ku(n) { - return function (t) { - return Math.pow(t, n) - } - } - - function Eu(n) { - return 1 - Math.cos(n * ja) - } - - function Au(n) { - return Math.pow(2, 10 * (n - 1)) - } - - function Nu(n) { - return 1 - Math.sqrt(1 - n * n) - } - - function Cu(n, t) { - var e; - return arguments.length < 2 && (t = .45), arguments.length ? e = t / Pa * Math.asin(1 / n) : (n = 1, e = t / 4), function (r) { - return 1 + n * Math.pow(2, -10 * r) * Math.sin((r - e) * Pa / t) - } - } - - function zu(n) { - return n || (n = 1.70158), function (t) { - return t * t * ((n + 1) * t - n) - } - } - - function qu(n) { - return 1 / 2.75 > n ? 7.5625 * n * n : 2 / 2.75 > n ? 7.5625 * (n -= 1.5 / 2.75) * n + .75 : 2.5 / 2.75 > n ? 7.5625 * (n -= 2.25 / 2.75) * n + .9375 : 7.5625 * (n -= 2.625 / 2.75) * n + .984375 - } - - function Lu(n, t) { - n = ta.hcl(n), t = ta.hcl(t); - var e = n.h, r = n.c, u = n.l, i = t.h - e, o = t.c - r, a = t.l - u; - return isNaN(o) && (o = 0, r = isNaN(r) ? t.c : r), isNaN(i) ? (i = 0, e = isNaN(e) ? t.h : e) : i > 180 ? i -= 360 : -180 > i && (i += 360), function (n) { - return lt(e + i * n, r + o * n, u + a * n) + "" - } - } - - function Tu(n, t) { - n = ta.hsl(n), t = ta.hsl(t); - var e = n.h, r = n.s, u = n.l, i = t.h - e, o = t.s - r, a = t.l - u; - return isNaN(o) && (o = 0, r = isNaN(r) ? t.s : r), isNaN(i) ? (i = 0, e = isNaN(e) ? t.h : e) : i > 180 ? i -= 360 : -180 > i && (i += 360), function (n) { - return at(e + i * n, r + o * n, u + a * n) + "" - } - } - - function Ru(n, t) { - n = ta.lab(n), t = ta.lab(t); - var e = n.l, r = n.a, u = n.b, i = t.l - e, o = t.a - r, a = t.b - u; - return function (n) { - return ft(e + i * n, r + o * n, u + a * n) + "" - } - } - - function Du(n, t) { - return t -= n, function (e) { - return Math.round(n + t * e) - } - } - - function Pu(n) { - var t = [n.a, n.b], e = [n.c, n.d], r = ju(t), u = Uu(t, e), i = ju(Fu(e, t, -u)) || 0; - t[0] * e[1] < e[0] * t[1] && (t[0] *= -1, t[1] *= -1, r *= -1, u *= -1), this.rotate = (r ? Math.atan2(t[1], t[0]) : Math.atan2(-e[0], e[1])) * Ha, this.translate = [n.e, n.f], this.scale = [r, i], this.skew = i ? Math.atan2(u, i) * Ha : 0 - } - - function Uu(n, t) { - return n[0] * t[0] + n[1] * t[1] - } - - function ju(n) { - var t = Math.sqrt(Uu(n, n)); - return t && (n[0] /= t, n[1] /= t), t - } - - function Fu(n, t, e) { - return n[0] += e * t[0], n[1] += e * t[1], n - } - - function Hu(n, t) { - var e, r = [], u = [], i = ta.transform(n), o = ta.transform(t), a = i.translate, c = o.translate, l = i.rotate, s = o.rotate, f = i.skew, h = o.skew, g = i.scale, p = o.scale; - return a[0] != c[0] || a[1] != c[1] ? (r.push("translate(", null, ",", null, ")"), u.push({ - i: 1, - x: vu(a[0], c[0]) - }, { - i: 3, - x: vu(a[1], c[1]) - })) : c[0] || c[1] ? r.push("translate(" + c + ")") : r.push(""), l != s ? (l - s > 180 ? s += 360 : s - l > 180 && (l += 360), u.push({ - i: r.push(r.pop() + "rotate(", null, ")") - 2, - x: vu(l, s) - })) : s && r.push(r.pop() + "rotate(" + s + ")"), f != h ? u.push({ - i: r.push(r.pop() + "skewX(", null, ")") - 2, - x: vu(f, h) - }) : h && r.push(r.pop() + "skewX(" + h + ")"), g[0] != p[0] || g[1] != p[1] ? (e = r.push(r.pop() + "scale(", null, ",", null, ")"), u.push({ - i: e - 4, - x: vu(g[0], p[0]) - }, { - i: e - 2, - x: vu(g[1], p[1]) - })) : (1 != p[0] || 1 != p[1]) && r.push(r.pop() + "scale(" + p + ")"), e = u.length, function (n) { - for (var t, i = -1; ++i < e;)r[(t = u[i]).i] = t.x(n); - return r.join("") - } - } - - function Ou(n, t) { - return t = (t -= n = +n) || 1 / t, function (e) { - return (e - n) / t - } - } - - function Yu(n, t) { - return t = (t -= n = +n) || 1 / t, function (e) { - return Math.max(0, Math.min(1, (e - n) / t)) - } - } - - function Iu(n) { - for (var t = n.source, e = n.target, r = Vu(t, e), u = [t]; t !== r;)t = t.parent, u.push(t); - for (var i = u.length; e !== r;)u.splice(i, 0, e), e = e.parent; - return u - } - - function Zu(n) { - for (var t = [], e = n.parent; null != e;)t.push(n), n = e, e = e.parent; - return t.push(n), t - } - - function Vu(n, t) { - if (n === t)return n; - for (var e = Zu(n), r = Zu(t), u = e.pop(), i = r.pop(), o = null; u === i;)o = u, u = e.pop(), i = r.pop(); - return o - } - - function Xu(n) { - n.fixed |= 2 - } - - function $u(n) { - n.fixed &= -7 - } - - function Bu(n) { - n.fixed |= 4, n.px = n.x, n.py = n.y - } - - function Wu(n) { - n.fixed &= -5 - } - - function Ju(n, t, e) { - var r = 0, u = 0; - if (n.charge = 0, !n.leaf)for (var i, o = n.nodes, a = o.length, c = -1; ++c < a;)i = o[c], null != i && (Ju(i, t, e), n.charge += i.charge, r += i.charge * i.cx, u += i.charge * i.cy); - if (n.point) { - n.leaf || (n.point.x += Math.random() - .5, n.point.y += Math.random() - .5); - var l = t * e[n.point.index]; - n.charge += n.pointCharge = l, r += l * n.point.x, u += l * n.point.y - } - n.cx = r / n.charge, n.cy = u / n.charge - } - - function Gu(n, t) { - return ta.rebind(n, t, "sort", "children", "value"), n.nodes = n, n.links = ri, n - } - - function Ku(n, t) { - for (var e = [n]; null != (n = e.pop());)if (t(n), (u = n.children) && (r = u.length))for (var r, u; --r >= 0;)e.push(u[r]) - } - - function Qu(n, t) { - for (var e = [n], r = []; null != (n = e.pop());)if (r.push(n), (i = n.children) && (u = i.length))for (var u, i, o = -1; ++o < u;)e.push(i[o]); - for (; null != (n = r.pop());)t(n) - } - - function ni(n) { - return n.children - } - - function ti(n) { - return n.value - } - - function ei(n, t) { - return t.value - n.value - } - - function ri(n) { - return ta.merge(n.map(function (n) { - return (n.children || []).map(function (t) { - return {source: n, target: t} - }) - })) - } - - function ui(n) { - return n.x - } - - function ii(n) { - return n.y - } - - function oi(n, t, e) { - n.y0 = t, n.y = e - } - - function ai(n) { - return ta.range(n.length) - } - - function ci(n) { - for (var t = -1, e = n[0].length, r = []; ++t < e;)r[t] = 0; - return r - } - - function li(n) { - for (var t, e = 1, r = 0, u = n[0][1], i = n.length; i > e; ++e)(t = n[e][1]) > u && (r = e, u = t); - return r - } - - function si(n) { - return
<TRUNCATED>
