| Total Complexity | 763 |
| Complexity/F | 2.04 |
| Lines of Code | 2679 |
| Function Count | 374 |
| Duplicated Lines | 14 |
| Ratio | 0.52 % |
| Changes | 0 | ||
Duplicate code is one of the most pungent code smells. A rule that is often used is to re-structure code once it is duplicated in three or more places.
Common duplication problems, and corresponding solutions are:
Complex classes like demo/d3.min.js often do a lot of different things. To break such a class down, we need to identify a cohesive component within that class. A common approach to find such a component is to look for fields/methods that share the same prefixes, or suffixes.
Once you have determined the fields that belong together, you can apply the Extract Class refactoring. If the component makes sense as a sub-class, Extract Subclass is also a candidate, and is often faster.
| 1 | !function(t,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((t=t||self).d3={})}(this,(function(t){"use strict";var n="http://www.w3.org/1999/xhtml",e={svg:"http://www.w3.org/2000/svg",xhtml:n,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function r(t){var n=t+="",r=n.indexOf(":");return r>=0&&"xmlns"!==(n=t.slice(0,r))&&(t=t.slice(r+1)),e.hasOwnProperty(n)?{space:e[n],local:t}:t}function i(t){return function(){var e=this.ownerDocument,r=this.namespaceURI;return r===n&&e.documentElement.namespaceURI===n?e.createElement(t):e.createElementNS(r,t)}}function o(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function a(t){var n=r(t);return(n.local?o:i)(n)}function u(){}function s(t){return null==t?u:function(){return this.querySelector(t)}}function c(){return[]}function l(t){return new Array(t.length)}function h(t,n){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=n}h.prototype={constructor:h,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)}};function f(t,n,e,r,i,o){for(var a,u=0,s=n.length,c=o.length;u<c;++u)(a=n[u])?(a.__data__=o[u],r[u]=a):e[u]=new h(t,o[u]);for(;u<s;++u)(a=n[u])&&(i[u]=a)}function p(t,n,e,r,i,o,a){var u,s,c,l={},f=n.length,p=o.length,g=new Array(f);for(u=0;u<f;++u)(s=n[u])&&(g[u]=c="$"+a.call(s,s.__data__,u,n),c in l?i[u]=s:l[c]=s);for(u=0;u<p;++u)(s=l[c="$"+a.call(t,o[u],u,o)])?(r[u]=s,s.__data__=o[u],l[c]=null):e[u]=new h(t,o[u]);for(u=0;u<f;++u)(s=n[u])&&l[g[u]]===s&&(i[u]=s)}function g(t,n){return t<n?-1:t>n?1:t>=n?0:NaN}function d(t){return function(){this.removeAttribute(t)}}function m(t){return function(){this.removeAttributeNS(t.space,t.local)}}function y(t,n){return function(){this.setAttribute(t,n)}}function v(t,n){return function(){this.setAttributeNS(t.space,t.local,n)}}function _(t,n){return function(){var e=n.apply(this,arguments);null==e?this.removeAttribute(t):this.setAttribute(t,e)}}function w(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 b(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function x(t){return function(){this.style.removeProperty(t)}}function M(t,n,e){return function(){this.style.setProperty(t,n,e)}}function k(t,n,e){return function(){var r=n.apply(this,arguments);null==r?this.style.removeProperty(t):this.style.setProperty(t,r,e)}}function N(t,n){return t.style.getPropertyValue(n)||b(t).getComputedStyle(t,null).getPropertyValue(n)}function A(t){return function(){delete this[t]}}function E(t,n){return function(){this[t]=n}}function S(t,n){return function(){var e=n.apply(this,arguments);null==e?delete this[t]:this[t]=e}}function P(t){return t.trim().split(/^|\s+/)}function T(t){return t.classList||new q(t)}function q(t){this._node=t,this._names=P(t.getAttribute("class")||"")}function C(t,n){for(var e=T(t),r=-1,i=n.length;++r<i;)e.add(n[r])}function j(t,n){for(var e=T(t),r=-1,i=n.length;++r<i;)e.remove(n[r])}function L(t){return function(){C(this,t)}}function z(t){return function(){j(this,t)}}function O(t,n){return function(){(n.apply(this,arguments)?C:j)(this,t)}}function R(){this.textContent=""}function H(t){return function(){this.textContent=t}}function V(t){return function(){var n=t.apply(this,arguments);this.textContent=null==n?"":n}}function $(){this.innerHTML=""}function D(t){return function(){this.innerHTML=t}}function I(t){return function(){var n=t.apply(this,arguments);this.innerHTML=null==n?"":n}}function B(){this.nextSibling&&this.parentNode.appendChild(this)}function F(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function U(){return null}function X(){var t=this.parentNode;t&&t.removeChild(this)}function Y(){var t=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(t,this.nextSibling):t}function G(){var t=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(t,this.nextSibling):t}q.prototype={add:function(t){this._names.indexOf(t)<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 Z={};(t.event=null,"undefined"!=typeof document)&&("onmouseenter"in document.documentElement||(Z={mouseenter:"mouseover",mouseleave:"mouseout"}));function K(t,n,e){return t=Q(t,n,e),function(n){var e=n.relatedTarget;e&&(e===this||8&e.compareDocumentPosition(this))||t.call(this,n)}}function Q(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 J(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 W(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 tt(t,n,e){var r=Z.hasOwnProperty(t.type)?K:Q;return function(i,o,a){var u,s=this.__on,c=r(n,o,a);if(s)for(var l=0,h=s.length;l<h;++l)if((u=s[l]).type===t.type&&u.name===t.name)return this.removeEventListener(u.type,u.listener,u.capture),this.addEventListener(u.type,u.listener=c,u.capture=e),void(u.value=n);this.addEventListener(t.type,c,e),u={type:t.type,name:t.name,value:n,listener:c,capture:e},s?s.push(u):this.__on=[u]}}function nt(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 et(t,n,e){var r=b(t),i=r.CustomEvent;"function"==typeof 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 rt(t,n){return function(){return et(this,t,n)}}function it(t,n){return function(){return et(this,t,n.apply(this,arguments))}}var ot=[null];function at(t,n){this._groups=t,this._parents=n}function ut(t){return"string"==typeof t?new at([[document.querySelector(t)]],[document.documentElement]):new at([[t]],ot)}function st(){for(var n,e=t.event;n=e.sourceEvent;)e=n;return e}function ct(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())).x,r.y]}var i=t.getBoundingClientRect();return[n.clientX-i.left-t.clientLeft,n.clientY-i.top-t.clientTop]}function lt(t){var n=st();return n.changedTouches&&(n=n.changedTouches[0]),ct(t,n)}function ht(t,n,e){arguments.length<3&&(e=n,n=st().changedTouches);for(var r,i=0,o=n?n.length:0;i<o;++i)if((r=n[i]).identifier===e)return ct(t,r);return null}function ft(t,n){return t<n?-1:t>n?1:t>=n?0:NaN}at.prototype=function(){return new at([[document.documentElement]],ot)}.prototype={constructor:at,select:function(t){"function"!=typeof t&&(t=s(t));for(var n=this._groups,e=n.length,r=new Array(e),i=0;i<e;++i)for(var o,a,u=n[i],c=u.length,l=r[i]=new Array(c),h=0;h<c;++h)(o=u[h])&&(a=t.call(o,o.__data__,h,u))&&("__data__"in o&&(a.__data__=o.__data__),l[h]=a);return new at(r,this._parents)},selectAll:function(t){"function"!=typeof t&&(t=function(t){return null==t?c:function(){return this.querySelectorAll(t)}}(t));for(var n=this._groups,e=n.length,r=[],i=[],o=0;o<e;++o)for(var a,u=n[o],s=u.length,l=0;l<s;++l)(a=u[l])&&(r.push(t.call(a,a.__data__,l,u)),i.push(a));return new at(r,i)},filter:function(t){"function"!=typeof t&&(t=function(t){return function(){return this.matches(t)}}(t));for(var n=this._groups,e=n.length,r=new Array(e),i=0;i<e;++i)for(var o,a=n[i],u=a.length,s=r[i]=[],c=0;c<u;++c)(o=a[c])&&t.call(o,o.__data__,c,a)&&s.push(o);return new at(r,this._parents)},data:function(t,n){if(!t)return d=new Array(this.size()),c=-1,this.each((function(t){d[++c]=t})),d;var e=n?p:f,r=this._parents,i=this._groups;"function"!=typeof t&&(t=function(t){return function(){return t}}(t));for(var o=i.length,a=new Array(o),u=new Array(o),s=new Array(o),c=0;c<o;++c){var l=r[c],h=i[c],g=h.length,d=t.call(l,l&&l.__data__,c,r),m=d.length,y=u[c]=new Array(m),v=a[c]=new Array(m);e(l,h,y,v,s[c]=new Array(g),d,n);for(var _,w,b=0,x=0;b<m;++b)if(_=y[b]){for(b>=x&&(x=b+1);!(w=v[x])&&++x<m;);_._next=w||null}}return(a=new at(a,r))._enter=u,a._exit=s,a},enter:function(){return new at(this._enter||this._groups.map(l),this._parents)},exit:function(){return new at(this._exit||this._groups.map(l),this._parents)},join:function(t,n,e){var r=this.enter(),i=this,o=this.exit();return r="function"==typeof t?t(r):r.append(t+""),null!=n&&(i=n(i)),null==e?o.remove():e(o),r&&i?r.merge(i).order():i},merge:function(t){for(var n=this._groups,e=t._groups,r=n.length,i=e.length,o=Math.min(r,i),a=new Array(r),u=0;u<o;++u)for(var s,c=n[u],l=e[u],h=c.length,f=a[u]=new Array(h),p=0;p<h;++p)(s=c[p]||l[p])&&(f[p]=s);for(;u<r;++u)a[u]=n[u];return new at(a,this._parents)},order:function(){for(var t=this._groups,n=-1,e=t.length;++n<e;)for(var r,i=t[n],o=i.length-1,a=i[o];--o>=0;)(r=i[o])&&(a&&4^r.compareDocumentPosition(a)&&a.parentNode.insertBefore(r,a),a=r);return this},sort:function(t){function n(n,e){return n&&e?t(n.__data__,e.__data__):!n-!e}t||(t=g);for(var e=this._groups,r=e.length,i=new Array(r),o=0;o<r;++o){for(var a,u=e[o],s=u.length,c=i[o]=new Array(s),l=0;l<s;++l)(a=u[l])&&(c[l]=a);c.sort(n)}return new at(i,this._parents).order()},call:function(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this},nodes:function(){var t=new Array(this.size()),n=-1;return this.each((function(){t[++n]=this})),t},node: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 a=r[i];if(a)return a}return null},size:function(){var t=0;return this.each((function(){++t})),t},empty:function(){return!this.node()},each:function(t){for(var n=this._groups,e=0,r=n.length;e<r;++e)for(var i,o=n[e],a=0,u=o.length;a<u;++a)(i=o[a])&&t.call(i,i.__data__,a,o);return this},attr:function(t,n){var e=r(t);if(arguments.length<2){var i=this.node();return e.local?i.getAttributeNS(e.space,e.local):i.getAttribute(e)}return this.each((null==n?e.local?m:d:"function"==typeof n?e.local?w:_:e.local?v:y)(e,n))},style:function(t,n,e){return arguments.length>1?this.each((null==n?x:"function"==typeof n?k:M)(t,n,null==e?"":e)):N(this.node(),t)},property:function(t,n){return arguments.length>1?this.each((null==n?A:"function"==typeof n?S:E)(t,n)):this.node()[t]},classed:function(t,n){var e=P(t+"");if(arguments.length<2){for(var r=T(this.node()),i=-1,o=e.length;++i<o;)if(!r.contains(e[i]))return!1;return!0}return this.each(("function"==typeof n?O:n?L:z)(e,n))},text:function(t){return arguments.length?this.each(null==t?R:("function"==typeof t?V:H)(t)):this.node().textContent},html:function(t){return arguments.length?this.each(null==t?$:("function"==typeof t?I:D)(t)):this.node().innerHTML},raise:function(){return this.each(B)},lower:function(){return this.each(F)},append:function(t){var n="function"==typeof t?t:a(t);return this.select((function(){return this.appendChild(n.apply(this,arguments))}))},insert:function(t,n){var e="function"==typeof t?t:a(t),r=null==n?U:"function"==typeof n?n:s(n);return this.select((function(){return this.insertBefore(e.apply(this,arguments),r.apply(this,arguments)||null)}))},remove:function(){return this.each(X)},clone:function(t){return this.select(t?G:Y)},datum:function(t){return arguments.length?this.property("__data__",t):this.node().__data__},on:function(t,n,e){var r,i,o=J(t+""),a=o.length;if(!(arguments.length<2)){for(u=n?tt:W,null==e&&(e=!1),r=0;r<a;++r)this.each(u(o[r],n,e));return this}var u=this.node().__on;if(u)for(var s,c=0,l=u.length;c<l;++c)for(r=0,s=u[c];r<a;++r)if((i=o[r]).type===s.type&&i.name===s.name)return s.value},dispatch:function(t,n){return this.each(("function"==typeof n?it:rt)(t,n))}};var pt,gt,dt=(1===(pt=ft).length&&(gt=pt,pt=function(t,n){return ft(gt(t),n)}),{left:function(t,n,e,r){for(null==e&&(e=0),null==r&&(r=t.length);e<r;){var i=e+r>>>1;pt(t[i],n)<0?e=i+1:r=i}return e},right:function(t,n,e,r){for(null==e&&(e=0),null==r&&(r=t.length);e<r;){var i=e+r>>>1;pt(t[i],n)>0?r=i:e=i+1}return e}}).right;var mt=Math.sqrt(50),yt=Math.sqrt(10),vt=Math.sqrt(2);function _t(t,n,e){var r=(n-t)/Math.max(0,e),i=Math.floor(Math.log(r)/Math.LN10),o=r/Math.pow(10,i);return i>=0?(o>=mt?10:o>=yt?5:o>=vt?2:1)*Math.pow(10,i):-Math.pow(10,-i)/(o>=mt?10:o>=yt?5:o>=vt?2:1)}function wt(t,n){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(n).domain(t)}return this}function bt(t,n,e){t.prototype=n.prototype=e,e.constructor=t}function xt(t,n){var e=Object.create(t.prototype);for(var r in n)e[r]=n[r];return e}function Mt(){}var kt="\\s*([+-]?\\d+)\\s*",Nt="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)\\s*",At="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Et=/^#([0-9a-f]{3,8})$/,St=new RegExp("^rgb\\("+[kt,kt,kt]+"\\)$"),Pt=new RegExp("^rgb\\("+[At,At,At]+"\\)$"),Tt=new RegExp("^rgba\\("+[kt,kt,kt,Nt]+"\\)$"),qt=new RegExp("^rgba\\("+[At,At,At,Nt]+"\\)$"),Ct=new RegExp("^hsl\\("+[Nt,At,At]+"\\)$"),jt=new RegExp("^hsla\\("+[Nt,At,At,Nt]+"\\)$"),Lt={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};function zt(){return this.rgb().formatHex()}function Ot(){return this.rgb().formatRgb()}function Rt(t){var n,e;return t=(t+"").trim().toLowerCase(),(n=Et.exec(t))?(e=n[1].length,n=parseInt(n[1],16),6===e?Ht(n):3===e?new It(n>>8&15|n>>4&240,n>>4&15|240&n,(15&n)<<4|15&n,1):8===e?Vt(n>>24&255,n>>16&255,n>>8&255,(255&n)/255):4===e?Vt(n>>12&15|n>>8&240,n>>8&15|n>>4&240,n>>4&15|240&n,((15&n)<<4|15&n)/255):null):(n=St.exec(t))?new It(n[1],n[2],n[3],1):(n=Pt.exec(t))?new It(255*n[1]/100,255*n[2]/100,255*n[3]/100,1):(n=Tt.exec(t))?Vt(n[1],n[2],n[3],n[4]):(n=qt.exec(t))?Vt(255*n[1]/100,255*n[2]/100,255*n[3]/100,n[4]):(n=Ct.exec(t))?Xt(n[1],n[2]/100,n[3]/100,1):(n=jt.exec(t))?Xt(n[1],n[2]/100,n[3]/100,n[4]):Lt.hasOwnProperty(t)?Ht(Lt[t]):"transparent"===t?new It(NaN,NaN,NaN,0):null}function Ht(t){return new It(t>>16&255,t>>8&255,255&t,1)}function Vt(t,n,e,r){return r<=0&&(t=n=e=NaN),new It(t,n,e,r)}function $t(t){return t instanceof Mt||(t=Rt(t)),t?new It((t=t.rgb()).r,t.g,t.b,t.opacity):new It}function Dt(t,n,e,r){return 1===arguments.length?$t(t):new It(t,n,e,null==r?1:r)}function It(t,n,e,r){this.r=+t,this.g=+n,this.b=+e,this.opacity=+r}function Bt(){return"#"+Ut(this.r)+Ut(this.g)+Ut(this.b)}function Ft(){var t=this.opacity;return(1===(t=isNaN(t)?1:Math.max(0,Math.min(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+")")}function Ut(t){return((t=Math.max(0,Math.min(255,Math.round(t)||0)))<16?"0":"")+t.toString(16)}function Xt(t,n,e,r){return r<=0?t=n=e=NaN:e<=0||e>=1?t=n=NaN:n<=0&&(t=NaN),new Gt(t,n,e,r)}function Yt(t){if(t instanceof Gt)return new Gt(t.h,t.s,t.l,t.opacity);if(t instanceof Mt||(t=Rt(t)),!t)return new Gt;if(t instanceof Gt)return t;var n=(t=t.rgb()).r/255,e=t.g/255,r=t.b/255,i=Math.min(n,e,r),o=Math.max(n,e,r),a=NaN,u=o-i,s=(o+i)/2;return u?(a=n===o?(e-r)/u+6*(e<r):e===o?(r-n)/u+2:(n-e)/u+4,u/=s<.5?o+i:2-o-i,a*=60):u=s>0&&s<1?0:a,new Gt(a,u,s,t.opacity)}function Gt(t,n,e,r){this.h=+t,this.s=+n,this.l=+e,this.opacity=+r}function Zt(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){return function(){return t}}function Qt(t){return 1==(t=+t)?Jt:function(n,e){return e-n?function(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)}}(n,e,t):Kt(isNaN(n)?e:n)}}function Jt(t,n){var e=n-t;return e?function(t,n){return function(e){return t+e*n}}(t,e):Kt(isNaN(t)?n:t)}bt(Mt,Rt,{copy:function(t){return Object.assign(new this.constructor,this,t)},displayable:function(){return this.rgb().displayable()},hex:zt,formatHex:zt,formatHsl:function(){return Yt(this).formatHsl()},formatRgb:Ot,toString:Ot}),bt(It,Dt,xt(Mt,{brighter:function(t){return t=null==t?1/.7:Math.pow(1/.7,t),new It(this.r*t,this.g*t,this.b*t,this.opacity)},darker:function(t){return t=null==t?.7:Math.pow(.7,t),new It(this.r*t,this.g*t,this.b*t,this.opacity)},rgb:function(){return this},displayable:function(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Bt,formatHex:Bt,formatRgb:Ft,toString:Ft})),bt(Gt,(function(t,n,e,r){return 1===arguments.length?Yt(t):new Gt(t,n,e,null==r?1:r)}),xt(Mt,{brighter:function(t){return t=null==t?1/.7:Math.pow(1/.7,t),new Gt(this.h,this.s,this.l*t,this.opacity)},darker:function(t){return t=null==t?.7:Math.pow(.7,t),new Gt(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 It(Zt(t>=240?t-240:t+120,i,r),Zt(t,i,r),Zt(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},formatHsl:function(){var t=this.opacity;return(1===(t=isNaN(t)?1:Math.max(0,Math.min(1,t)))?"hsl(":"hsla(")+(this.h||0)+", "+100*(this.s||0)+"%, "+100*(this.l||0)+"%"+(1===t?")":", "+t+")")}}));var Wt=function t(n){var e=Qt(n);function r(t,n){var r=e((t=Dt(t)).r,(n=Dt(n)).r),i=e(t.g,n.g),o=e(t.b,n.b),a=Jt(t.opacity,n.opacity);return function(n){return t.r=r(n),t.g=i(n),t.b=o(n),t.opacity=a(n),t+""}}return r.gamma=t,r}(1);function tn(t,n){n||(n=[]);var e,r=t?Math.min(n.length,t.length):0,i=n.slice();return function(o){for(e=0;e<r;++e)i[e]=t[e]*(1-o)+n[e]*o;return i}}function nn(t,n){var e,r=n?n.length:0,i=t?Math.min(r,t.length):0,o=new Array(i),a=new Array(r);for(e=0;e<i;++e)o[e]=cn(t[e],n[e]);for(;e<r;++e)a[e]=n[e];return function(t){for(e=0;e<i;++e)a[e]=o[e](t);return a}}function en(t,n){var e=new Date;return t=+t,n=+n,function(r){return e.setTime(t*(1-r)+n*r),e}}function rn(t,n){return t=+t,n=+n,function(e){return t*(1-e)+n*e}}function on(t,n){var e,r={},i={};for(e in null!==t&&"object"==typeof t||(t={}),null!==n&&"object"==typeof n||(n={}),n)e in t?r[e]=cn(t[e],n[e]):i[e]=n[e];return function(t){for(e in r)i[e]=r[e](t);return i}}var an=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,un=new RegExp(an.source,"g");function sn(t,n){var e,r,i,o=an.lastIndex=un.lastIndex=0,a=-1,u=[],s=[];for(t+="",n+="";(e=an.exec(t))&&(r=un.exec(n));)(i=r.index)>o&&(i=n.slice(o,i),u[a]?u[a]+=i:u[++a]=i),(e=e[0])===(r=r[0])?u[a]?u[a]+=r:u[++a]=r:(u[++a]=null,s.push({i:a,x:rn(e,r)})),o=un.lastIndex;return o<n.length&&(i=n.slice(o),u[a]?u[a]+=i:u[++a]=i),u.length<2?s[0]?function(t){return function(n){return t(n)+""}}(s[0].x):function(t){return function(){return t}}(n):(n=s.length,function(t){for(var e,r=0;r<n;++r)u[(e=s[r]).i]=e.x(t);return u.join("")})}function cn(t,n){var e,r=typeof n;return null==n||"boolean"===r?Kt(n):("number"===r?rn:"string"===r?(e=Rt(n))?(n=e,Wt):sn:n instanceof Rt?Wt:n instanceof Date?en:function(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}(n)?tn:Array.isArray(n)?nn:"function"!=typeof n.valueOf&&"function"!=typeof n.toString||isNaN(n)?on:rn)(t,n)}function ln(t,n){return t=+t,n=+n,function(e){return Math.round(t*(1-e)+n*e)}}function hn(t){return+t}var fn=[0,1];function pn(t){return t}function gn(t,n){return(n-=t=+t)?function(e){return(e-t)/n}:function(t){return function(){return t}}(isNaN(n)?NaN:.5)}function dn(t,n,e){var r=t[0],i=t[1],o=n[0],a=n[1];return i<r?(r=gn(i,r),o=e(a,o)):(r=gn(r,i),o=e(o,a)),function(t){return o(r(t))}}function mn(t,n,e){var r=Math.min(t.length,n.length)-1,i=new Array(r),o=new Array(r),a=-1;for(t[r]<t[0]&&(t=t.slice().reverse(),n=n.slice().reverse());++a<r;)i[a]=gn(t[a],t[a+1]),o[a]=e(n[a],n[a+1]);return function(n){var e=dt(t,n,1,r)-1;return o[e](i[e](n))}}function yn(t,n){return n.domain(t.domain()).range(t.range()).interpolate(t.interpolate()).clamp(t.clamp()).unknown(t.unknown())}function vn(){var t,n,e,r,i,o,a=fn,u=fn,s=cn,c=pn;function l(){var t,n,e,s=Math.min(a.length,u.length);return c!==pn&&(t=a[0],n=a[s-1],t>n&&(e=t,t=n,n=e),c=function(e){return Math.max(t,Math.min(n,e))}),r=s>2?mn:dn,i=o=null,h}function h(n){return isNaN(n=+n)?e:(i||(i=r(a.map(t),u,s)))(t(c(n)))}return h.invert=function(e){return c(n((o||(o=r(u,a.map(t),rn)))(e)))},h.domain=function(t){return arguments.length?(a=Array.from(t,hn),l()):a.slice()},h.range=function(t){return arguments.length?(u=Array.from(t),l()):u.slice()},h.rangeRound=function(t){return u=Array.from(t),s=ln,l()},h.clamp=function(t){return arguments.length?(c=!!t||pn,l()):c!==pn},h.interpolate=function(t){return arguments.length?(s=t,l()):s},h.unknown=function(t){return arguments.length?(e=t,h):e},function(e,r){return t=e,n=r,l()}}function _n(){return vn()(pn,pn)}function wn(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)]}function bn(t){return(t=wn(Math.abs(t)))?t[1]:NaN}var xn,Mn=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function kn(t){if(!(n=Mn.exec(t)))throw new Error("invalid format: "+t);var n;return new Nn({fill:n[1],align:n[2],sign:n[3],symbol:n[4],zero:n[5],width:n[6],comma:n[7],precision:n[8]&&n[8].slice(1),trim:n[9],type:n[10]})}function Nn(t){this.fill=void 0===t.fill?" ":t.fill+"",this.align=void 0===t.align?">":t.align+"",this.sign=void 0===t.sign?"-":t.sign+"",this.symbol=void 0===t.symbol?"":t.symbol+"",this.zero=!!t.zero,this.width=void 0===t.width?void 0:+t.width,this.comma=!!t.comma,this.precision=void 0===t.precision?void 0:+t.precision,this.trim=!!t.trim,this.type=void 0===t.type?"":t.type+""}function An(t,n){var e=wn(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")}kn.prototype=Nn.prototype,Nn.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};var En={"%":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 An(100*t,n)},r:An,s:function(t,n){var e=wn(t,n);if(!e)return t+"";var r=e[0],i=e[1],o=i-(xn=3*Math.max(-8,Math.min(8,Math.floor(i/3))))+1,a=r.length;return o===a?r:o>a?r+new Array(o-a+1).join("0"):o>0?r.slice(0,o)+"."+r.slice(o):"0."+new Array(1-o).join("0")+wn(t,Math.max(0,n+o-1))[0]},X:function(t){return Math.round(t).toString(16).toUpperCase()},x:function(t){return Math.round(t).toString(16)}};function Sn(t){return t}var Pn,Tn,qn,Cn=Array.prototype.map,jn=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function Ln(t){var n,e,r=void 0===t.grouping||void 0===t.thousands?Sn:(n=Cn.call(t.grouping,Number),e=t.thousands+"",function(t,r){for(var i=t.length,o=[],a=0,u=n[0],s=0;i>0&&u>0&&(s+u+1>r&&(u=Math.max(1,r-s)),o.push(t.substring(i-=u,i+u)),!((s+=u+1)>r));)u=n[a=(a+1)%n.length];return o.reverse().join(e)}),i=void 0===t.currency?"":t.currency[0]+"",o=void 0===t.currency?"":t.currency[1]+"",a=void 0===t.decimal?".":t.decimal+"",u=void 0===t.numerals?Sn:function(t){return function(n){return n.replace(/[0-9]/g,(function(n){return t[+n]}))}}(Cn.call(t.numerals,String)),s=void 0===t.percent?"%":t.percent+"",c=void 0===t.minus?"-":t.minus+"",l=void 0===t.nan?"NaN":t.nan+"";function h(t){var n=(t=kn(t)).fill,e=t.align,h=t.sign,f=t.symbol,p=t.zero,g=t.width,d=t.comma,m=t.precision,y=t.trim,v=t.type;"n"===v?(d=!0,v="g"):En[v]||(void 0===m&&(m=12),y=!0,v="g"),(p||"0"===n&&"="===e)&&(p=!0,n="0",e="=");var _="$"===f?i:"#"===f&&/[boxX]/.test(v)?"0"+v.toLowerCase():"",w="$"===f?o:/[%p]/.test(v)?s:"",b=En[v],x=/[defgprs%]/.test(v);function M(t){var i,o,s,f=_,M=w;if("c"===v)M=b(t)+M,t="";else{var k=(t=+t)<0||1/t<0;if(t=isNaN(t)?l:b(Math.abs(t),m),y&&(t=function(t){t:for(var n,e=t.length,r=1,i=-1;r<e;++r)switch(t[r]){case".":i=n=r;break;case"0":0===i&&(i=r),n=r;break;default:if(!+t[r])break t;i>0&&(i=0)}return i>0?t.slice(0,i)+t.slice(n+1):t}(t)),k&&0==+t&&"+"!==h&&(k=!1),f=(k?"("===h?h:c:"-"===h||"("===h?"":h)+f,M=("s"===v?jn[8+xn/3]:"")+M+(k&&"("===h?")":""),x)for(i=-1,o=t.length;++i<o;)if(48>(s=t.charCodeAt(i))||s>57){M=(46===s?a+t.slice(i+1):t.slice(i))+M,t=t.slice(0,i);break}}d&&!p&&(t=r(t,1/0));var N=f.length+t.length+M.length,A=N<g?new Array(g-N+1).join(n):"";switch(d&&p&&(t=r(A+t,A.length?g-M.length:1/0),A=""),e){case"<":t=f+t+M+A;break;case"=":t=f+A+t+M;break;case"^":t=A.slice(0,N=A.length>>1)+f+t+M+A.slice(N);break;default:t=A+f+t+M}return u(t)}return m=void 0===m?6:/[gprs]/.test(v)?Math.max(1,Math.min(21,m)):Math.max(0,Math.min(20,m)),M.toString=function(){return t+""},M}return{format:h,formatPrefix:function(t,n){var e=h(((t=kn(t)).type="f",t)),r=3*Math.max(-8,Math.min(8,Math.floor(bn(n)/3))),i=Math.pow(10,-r),o=jn[8+r/3];return function(t){return e(i*t)+o}}}}function zn(t,n,e,r){var i,o=function(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>=mt?i*=10:o>=yt?i*=5:o>=vt&&(i*=2),n<t?-i:i}(t,n,e);switch((r=kn(null==r?",f":r)).type){case"s":var a=Math.max(Math.abs(t),Math.abs(n));return null!=r.precision||isNaN(i=function(t,n){return Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(bn(n)/3)))-bn(Math.abs(t)))}(o,a))||(r.precision=i),qn(r,a);case"":case"e":case"g":case"p":case"r":null!=r.precision||isNaN(i=function(t,n){return t=Math.abs(t),n=Math.abs(n)-t,Math.max(0,bn(n)-bn(t))+1}(o,Math.max(Math.abs(t),Math.abs(n))))||(r.precision=i-("e"===r.type));break;case"f":case"%":null!=r.precision||isNaN(i=function(t){return Math.max(0,-bn(Math.abs(t)))}(o))||(r.precision=i-2*("%"===r.type))}return Tn(r)}function On(t){var n=t.domain;return t.ticks=function(t){var e=n();return function(t,n,e){var r,i,o,a,u=-1;if(e=+e,(t=+t)===(n=+n)&&e>0)return[t];if((r=n<t)&&(i=t,t=n,n=i),0===(a=_t(t,n,e))||!isFinite(a))return[];if(a>0)for(t=Math.ceil(t/a),n=Math.floor(n/a),o=new Array(i=Math.ceil(n-t+1));++u<i;)o[u]=(t+u)*a;else for(t=Math.floor(t*a),n=Math.ceil(n*a),o=new Array(i=Math.ceil(t-n+1));++u<i;)o[u]=(t-u)/a;return r&&o.reverse(),o}(e[0],e[e.length-1],null==t?10:t)},t.tickFormat=function(t,e){var r=n();return zn(r[0],r[r.length-1],null==t?10:t,e)},t.nice=function(e){null==e&&(e=10);var r,i=n(),o=0,a=i.length-1,u=i[o],s=i[a];return s<u&&(r=u,u=s,s=r,r=o,o=a,a=r),(r=_t(u,s,e))>0?r=_t(u=Math.floor(u/r)*r,s=Math.ceil(s/r)*r,e):r<0&&(r=_t(u=Math.ceil(u*r)/r,s=Math.floor(s*r)/r,e)),r>0?(i[o]=Math.floor(u/r)*r,i[a]=Math.ceil(s/r)*r,n(i)):r<0&&(i[o]=Math.ceil(u*r)/r,i[a]=Math.floor(s*r)/r,n(i)),t},t}Pn=Ln({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"}),Tn=Pn.format,qn=Pn.formatPrefix;var Rn=Array.prototype.slice;function Hn(t){return t}function Vn(t){return"translate("+(t+.5)+",0)"}function $n(t){return"translate(0,"+(t+.5)+")"}function Dn(t){return function(n){return+t(n)}}function In(t){var n=Math.max(0,t.bandwidth()-1)/2;return t.round()&&(n=Math.round(n)),function(e){return+t(e)+n}}function Bn(){return!this.__axis}function Fn(t,n){var e=[],r=null,i=null,o=6,a=6,u=3,s=1===t||4===t?-1:1,c=4===t||2===t?"x":"y",l=1===t||3===t?Vn:$n;function h(h){var f=null==r?n.ticks?n.ticks.apply(n,e):n.domain():r,p=null==i?n.tickFormat?n.tickFormat.apply(n,e):Hn:i,g=Math.max(o,0)+u,d=n.range(),m=+d[0]+.5,y=+d[d.length-1]+.5,v=(n.bandwidth?In:Dn)(n.copy()),_=h.selection?h.selection():h,w=_.selectAll(".domain").data([null]),b=_.selectAll(".tick").data(f,n).order(),x=b.exit(),M=b.enter().append("g").attr("class","tick"),k=b.select("line"),N=b.select("text");w=w.merge(w.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),b=b.merge(M),k=k.merge(M.append("line").attr("stroke","currentColor").attr(c+"2",s*o)),N=N.merge(M.append("text").attr("fill","currentColor").attr(c,s*g).attr("dy",1===t?"0em":3===t?"0.71em":"0.32em")),h!==_&&(w=w.transition(h),b=b.transition(h),k=k.transition(h),N=N.transition(h),x=x.transition(h).attr("opacity",1e-6).attr("transform",(function(t){return isFinite(t=v(t))?l(t):this.getAttribute("transform")})),M.attr("opacity",1e-6).attr("transform",(function(t){var n=this.parentNode.__axis;return l(n&&isFinite(n=n(t))?n:v(t))}))),x.remove(),w.attr("d",4===t||2==t?a?"M"+s*a+","+m+"H0.5V"+y+"H"+s*a:"M0.5,"+m+"V"+y:a?"M"+m+","+s*a+"V0.5H"+y+"V"+s*a:"M"+m+",0.5H"+y),b.attr("opacity",1).attr("transform",(function(t){return l(v(t))})),k.attr(c+"2",s*o),N.attr(c,s*g).text(p),_.filter(Bn).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",2===t?"start":4===t?"end":"middle"),_.each((function(){this.__axis=v}))}return h.scale=function(t){return arguments.length?(n=t,h):n},h.ticks=function(){return e=Rn.call(arguments),h},h.tickArguments=function(t){return arguments.length?(e=null==t?[]:Rn.call(t),h):e.slice()},h.tickValues=function(t){return arguments.length?(r=null==t?null:Rn.call(t),h):r&&r.slice()},h.tickFormat=function(t){return arguments.length?(i=t,h):i},h.tickSize=function(t){return arguments.length?(o=a=+t,h):o},h.tickSizeInner=function(t){return arguments.length?(o=+t,h):o},h.tickSizeOuter=function(t){return arguments.length?(a=+t,h):a},h.tickPadding=function(t){return arguments.length?(u=+t,h):u},h}var Un=Math.PI,Xn=2*Un,Yn=Xn-1e-6;function Gn(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function Zn(){return new Gn}function Kn(t){return function(){return t}}function Qn(t){this._context=t}function Jn(t){return new Qn(t)}function Wn(t){return t[0]}function te(t){return t[1]}Gn.prototype=Zn.prototype={constructor:Gn,moveTo:function(t,n){this._+="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._+="Z")},lineTo:function(t,n){this._+="L"+(this._x1=+t)+","+(this._y1=+n)},quadraticCurveTo:function(t,n,e,r){this._+="Q"+ +t+","+ +n+","+(this._x1=+e)+","+(this._y1=+r)},bezierCurveTo:function(t,n,e,r,i,o){this._+="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,a=this._y1,u=e-t,s=r-n,c=o-t,l=a-n,h=c*c+l*l;if(i<0)throw new Error("negative radius: "+i);if(null===this._x1)this._+="M"+(this._x1=t)+","+(this._y1=n);else if(h>1e-6)if(Math.abs(l*u-s*c)>1e-6&&i){var f=e-o,p=r-a,g=u*u+s*s,d=f*f+p*p,m=Math.sqrt(g),y=Math.sqrt(h),v=i*Math.tan((Un-Math.acos((g+h-d)/(2*m*y)))/2),_=v/y,w=v/m;Math.abs(_-1)>1e-6&&(this._+="L"+(t+_*c)+","+(n+_*l)),this._+="A"+i+","+i+",0,0,"+ +(l*f>c*p)+","+(this._x1=t+w*u)+","+(this._y1=n+w*s)}else this._+="L"+(this._x1=t)+","+(this._y1=n);else;},arc:function(t,n,e,r,i,o){t=+t,n=+n,o=!!o;var a=(e=+e)*Math.cos(r),u=e*Math.sin(r),s=t+a,c=n+u,l=1^o,h=o?r-i:i-r;if(e<0)throw new Error("negative radius: "+e);null===this._x1?this._+="M"+s+","+c:(Math.abs(this._x1-s)>1e-6||Math.abs(this._y1-c)>1e-6)&&(this._+="L"+s+","+c),e&&(h<0&&(h=h%Xn+Xn),h>Yn?this._+="A"+e+","+e+",0,1,"+l+","+(t-a)+","+(n-u)+"A"+e+","+e+",0,1,"+l+","+(this._x1=s)+","+(this._y1=c):h>1e-6&&(this._+="A"+e+","+e+",0,"+ +(h>=Un)+","+l+","+(this._x1=t+e*Math.cos(i))+","+(this._y1=n+e*Math.sin(i))))},rect:function(t,n,e,r){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)+"h"+ +e+"v"+ +r+"h"+-e+"Z"},toString:function(){return this._}},Qn.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 ne={value:function(){}};function ee(){for(var t,n=0,e=arguments.length,r={};n<e;++n){if(!(t=arguments[n]+"")||t in r||/[\s.]/.test(t))throw new Error("illegal type: "+t);r[t]=[]}return new re(r)}function re(t){this._=t}function ie(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 oe(t,n){for(var e,r=0,i=t.length;r<i;++r)if((e=t[r]).name===n)return e.value}function ae(t,n,e){for(var r=0,i=t.length;r<i;++r)if(t[r].name===n){t[r]=ne,t=t.slice(0,r).concat(t.slice(r+1));break}return null!=e&&t.push({name:n,value:e}),t}function ue(){t.event.stopImmediatePropagation()}function se(){t.event.preventDefault(),t.event.stopImmediatePropagation()}function ce(t){var n=t.document.documentElement,e=ut(t).on("dragstart.drag",se,!0);"onselectstart"in n?e.on("selectstart.drag",se,!0):(n.__noselect=n.style.MozUserSelect,n.style.MozUserSelect="none")}function le(t){return function(){return t}}function he(t,n,e,r,i,o,a,u,s,c){this.target=t,this.type=n,this.subject=e,this.identifier=r,this.active=i,this.x=o,this.y=a,this.dx=u,this.dy=s,this._=c}function fe(){return!t.event.ctrlKey&&!t.event.button}function pe(){return this.parentNode}function ge(n){return null==n?{x:t.event.x,y:t.event.y}:n}function de(){return navigator.maxTouchPoints||"ontouchstart"in this}re.prototype=ee.prototype={constructor:re,on:function(t,n){var e,r=this._,i=ie(t+"",r),o=-1,a=i.length;if(!(arguments.length<2)){if(null!=n&&"function"!=typeof n)throw new Error("invalid callback: "+n);for(;++o<a;)if(e=(t=i[o]).type)r[e]=ae(r[e],t.name,n);else if(null==n)for(e in r)r[e]=ae(r[e],t.name,null);return this}for(;++o<a;)if((e=(t=i[o]).type)&&(e=oe(r[e],t.name)))return e},copy:function(){var t={},n=this._;for(var e in n)t[e]=n[e].slice();return new re(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(o=0,e=(r=this._[t]).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)}},he.prototype.on=function(){var t=this._.on.apply(this._,arguments);return t===this._?this:t},t.axisBottom=function(t){return Fn(3,t)},t.drag=function(){var n,e,r,i,o=fe,a=pe,u=ge,s=de,c={},l=ee("start","drag","end"),h=0,f=0;function p(t){t.on("mousedown.drag",g).filter(s).on("touchstart.drag",y).on("touchmove.drag",v).on("touchend.drag touchcancel.drag",_).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function g(){if(!i&&o.apply(this,arguments)){var u=w("mouse",a.apply(this,arguments),lt,this,arguments);u&&(ut(t.event.view).on("mousemove.drag",d,!0).on("mouseup.drag",m,!0),ce(t.event.view),ue(),r=!1,n=t.event.clientX,e=t.event.clientY,u("start"))}}function d(){if(se(),!r){var i=t.event.clientX-n,o=t.event.clientY-e;r=i*i+o*o>f}c.mouse("drag")}function m(){ut(t.event.view).on("mousemove.drag mouseup.drag",null),function(t,n){var e=t.document.documentElement,r=ut(t).on("dragstart.drag",null);n&&(r.on("click.drag",se,!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)}(t.event.view,r),se(),c.mouse("end")}function y(){if(o.apply(this,arguments)){var n,e,r=t.event.changedTouches,i=a.apply(this,arguments),u=r.length;for(n=0;n<u;++n)(e=w(r[n].identifier,i,ht,this,arguments))&&(ue(),e("start"))}}function v(){var n,e,r=t.event.changedTouches,i=r.length;for(n=0;n<i;++n)(e=c[r[n].identifier])&&(se(),e("drag"))}function _(){var n,e,r=t.event.changedTouches,o=r.length;for(i&&clearTimeout(i),i=setTimeout((function(){i=null}),500),n=0;n<o;++n)(e=c[r[n].identifier])&&(ue(),e("end"))}function w(n,e,r,i,o){var a,s,f,g=r(e,n),d=l.copy();if(nt(new he(p,"beforestart",a,n,h,g[0],g[1],0,0,d),(function(){return null!=(t.event.subject=a=u.apply(i,o))&&(s=a.x-g[0]||0,f=a.y-g[1]||0,!0)})))return function t(u){var l,m=g;switch(u){case"start":c[n]=t,l=h++;break;case"end":delete c[n],--h;case"drag":g=r(e,n),l=h}nt(new he(p,u,a,n,l,g[0]+s,g[1]+f,g[0]-m[0],g[1]-m[1],d),d.apply,d,[u,i,o])}}return p.filter=function(t){return arguments.length?(o="function"==typeof t?t:le(!!t),p):o},p.container=function(t){return arguments.length?(a="function"==typeof t?t:le(t),p):a},p.subject=function(t){return arguments.length?(u="function"==typeof t?t:le(t),p):u},p.touchable=function(t){return arguments.length?(s="function"==typeof t?t:le(!!t),p):s},p.on=function(){var t=l.on.apply(l,arguments);return t===l?p:t},p.clickDistance=function(t){return arguments.length?(f=(t=+t)*t,p):Math.sqrt(f)},p},t.line=function(){var t=Wn,n=te,e=Kn(!0),r=null,i=Jn,o=null;function a(a){var u,s,c,l=a.length,h=!1;for(null==r&&(o=i(c=Zn())),u=0;u<=l;++u)!(u<l&&e(s=a[u],u,a))===h&&((h=!h)?o.lineStart():o.lineEnd()),h&&o.point(+t(s,u,a),+n(s,u,a));if(c)return o=null,c+""||null}return a.x=function(n){return arguments.length?(t="function"==typeof n?n:Kn(+n),a):t},a.y=function(t){return arguments.length?(n="function"==typeof t?t:Kn(+t),a):n},a.defined=function(t){return arguments.length?(e="function"==typeof t?t:Kn(!!t),a):e},a.curve=function(t){return arguments.length?(i=t,null!=r&&(o=i(r)),a):i},a.context=function(t){return arguments.length?(null==t?r=o=null:o=i(r=t),a):r},a},t.range=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},t.scaleLinear=function t(){var n=_n();return n.copy=function(){return yn(n,t())},wt.apply(n,arguments),On(n)},t.select=ut,Object.defineProperty(t,"__esModule",{value:!0})})); |
||
| 2 |