text: !function(t,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n(t.d3=t.d3||{})}(this,function(B){"use strict";function u(t,n){return t<n?-1:n<t?1:n<=t?0:NaN}function A(o){var e;return 1===o.length&&(e=o,o=function(t,n){return u(e(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;o(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;0<o(t[i],n)?r=i:e=i+1}return e}}}var t=A(u),v=t.right,n=t.left;function s(t,n){return[t,n]}function c(t){return null===t?NaN:+t}function r(t,n){var e,r,i=t.length,o=0,a=-1,u=0,f=0;if(null==n)for(;++a<i;)isNaN(e=c(t[a]))||(f+=(r=e-u)*(e-(u+=r/++o)));else for(;++a<i;)isNaN(e=c(n(t[a],a,t)))||(f+=(r=e-u)*(e-(u+=r/++o)));if(1<o)return f/(o-1)}function i(t,n){var e=r(t,n);return e?Math.sqrt(e):e}function f(t,n){var e,r,i,o=t.length,a=-1;if(null==n){for(;++a<o;)if(null!=(e=t[a])&&e<=e)for(r=i=e;++a<o;)null!=(e=t[a])&&(e<r&&(r=e),i<e&&(i=e))}else for(;++a<o;)if(null!=(e=n(t[a],a,t))&&e<=e)for(r=i=e;++a<o;)null!=(e=n(t[a],a,t))&&(e<r&&(r=e),i<e&&(i=e));return[r,i]}var e=Array.prototype,o=e.slice,a=e.map;function l(t){return function(){return t}}function g(t){return t}function T(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}var h=Math.sqrt(50),d=Math.sqrt(10),p=Math.sqrt(2);function y(t,n,e){var r,i,o,a,u=-1;if(e=+e,(t=+t)===(n=+n)&&0<e)return[t];if((r=n<t)&&(i=t,t=n,n=i),0===(a=_(t,n,e))||!isFinite(a))return[];if(0<a)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}function _(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 0<=i?(h<=o?10:d<=o?5:p<=o?2:1)*Math.pow(10,i):-Math.pow(10,-i)/(h<=o?10:d<=o?5:p<=o?2:1)}function N(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 h<=o?i*=10:d<=o?i*=5:p<=o&&(i*=2),n<t?-i:i}function b(t){return Math.ceil(Math.log(t.length)/Math.LN2)+1}function m(t,n,e){if(null==e&&(e=c),r=t.length){if((n=+n)<=0||r<2)return+e(t[0],0,t);if(1<=n)return+e(t[r-1],r-1,t);var r,i=(r-1)*n,o=Math.floor(i),a=+e(t[o],o,t);return a+(+e(t[o+1],o+1,t)-a)*(i-o)}}function x(t,n){var e,r,i=t.length,o=-1;if(null==n){for(;++o<i;)if(null!=(e=t[o])&&e<=e)for(r=e;++o<i;)null!=(e=t[o])&&r<e&&(r=e)}else for(;++o<i;)if(null!=(e=n(t[o],o,t))&&e<=e)for(r=e;++o<i;)null!=(e=n(t[o],o,t))&&r<e&&(r=e);return r}function S(t){for(var n,e,r,i=t.length,o=-1,a=0;++o<i;)a+=t[o].length;for(e=new Array(a);0<=--i;)for(n=(r=t[i]).length;0<=--n;)e[--a]=r[n];return e}function w(t,n){var e,r,i=t.length,o=-1;if(null==n){for(;++o<i;)if(null!=(e=t[o])&&e<=e)for(r=e;++o<i;)null!=(e=t[o])&&e<r&&(r=e)}else for(;++o<i;)if(null!=(e=n(t[o],o,t))&&e<=e)for(r=e;++o<i;)null!=(e=n(t[o],o,t))&&e<r&&(r=e);return r}function M(t){if(!(i=t.length))return[];for(var n=-1,e=w(t,E),r=new Array(e);++n<e;)for(var i,o=-1,a=r[n]=new Array(i);++o<i;)a[o]=t[o][n];return r}function E(t){return t.length}var k=Array.prototype.slice;function C(t){return t}var P=1,z=2,R=3,L=4,D=1e-6;function U(t){return"translate("+(t+.5)+",0)"}function q(t){return"translate(0,"+(t+.5)+")"}function O(){return!this.__axis}function Y(v,g){var y=[],_=null,b=null,m=6,x=6,w=3,M=v===P||v===L?-1:1,A=v===L||v===z?"x":"y",T=v===P||v===R?U:q;function n(t){var n=null==_?g.ticks?g.ticks.apply(g,y):g.domain():_,e=null==b?g.tickFormat?g.tickFormat.apply(g,y):C:b,r=Math.max(m,0)+w,i=g.range(),o=+i[0]+.5,a=+i[i.length-1]+.5,u=(g.bandwidth?function(n){var e=Math.max(0,n.bandwidth()-1)/2;return n.round()&&(e=Math.round(e)),function(t){return+n(t)+e}}:function(n){return function(t){return+n(t)}})(g.copy()),f=t.selection?t.selection():t,c=f.selectAll(".domain").data([null]),s=f.selectAll(".tick").data(n,g).order(),l=s.exit(),h=s.enter().append("g").attr("class","tick"),d=s.select("line"),p=s.select("text");c=c.merge(c.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),s=s.merge(h),d=d.merge(h.append("line").attr("stroke","currentColor").attr(A+"2",M*m)),p=p.merge(h.append("text").attr("fill","currentColor").attr(A,M*r).attr("dy",v===P?"0em":v===R?"0.71em":"0.32em")),t!==f&&(c=c.transition(t),s=s.transition(t),d=d.transition(t),p=p.transition(t),l=l.transition(t).attr("opacity",D).attr("transform",function(t){return isFinite(t=u(t))?T(t):this.getAttribute("transform")}),h.attr("opacity",D).attr("transform",function(t){var n=this.parentNode.__axis;return T(n&&isFinite(n=n(t))?n:u(t))})),l.remove(),c.attr("d",v===L||v==z?x?"M"+M*x+","+o+"H0.5V"+a+"H"+M*x:"M0.5,"+o+"V"+a:x?"M"+o+","+M*x+"V0.5H"+a+"V"+M*x:"M"+o+",0.5H"+a),s.attr("opacity",1).attr("transform",function(t){return T(u(t))}),d.attr(A+"2",M*m),p.attr(A,M*r).text(e),f.filter(O).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",v===z?"start":v===L?"end":"middle"),f.each(function(){this.__axis=u})}return n.scale=function(t){return arguments.length?(g=t,n):g},n.ticks=function(){return y=k.call(arguments),n},n.tickArguments=function(t){return arguments.length?(y=null==t?[]:k.call(t),n):y.slice()},n.tickValues=function(t){return arguments.length?(_=null==t?null:k.call(t),n):_&&_.slice()},n.tickFormat=function(t){return arguments.length?(b=t,n):b},n.tickSize=function(t){return arguments.length?(m=x=+t,n):m},n.tickSizeInner=function(t){return arguments.length?(m=+t,n):m},n.tickSizeOuter=function(t){return arguments.length?(x=+t,n):x},n.tickPadding=function(t){return arguments.length?(w=+t,n):w},n}var F={value:function(){}};function I(){for(var t,n=0,e=arguments.length,r={};n<e;++n){if(!(t=arguments[n]+"")||t in r)throw new Error("illegal type: "+t);r[t]=[]}return new H(r)}function H(t){this._=t}function j(t,n){for(var e,r=0,i=t.length;r<i;++r)if((e=t[r]).name===n)return e.value}function X(t,n,e){for(var r=0,i=t.length;r<i;++r)if(t[r].name===n){t[r]=F,t=t.slice(0,r).concat(t.slice(r+1));break}return null!=e&&t.push({name:n,value:e}),t}H.prototype=I.prototype={constructor:H,on:function(t,n){var e,r,i=this._,o=(r=i,(t+"").trim().split(/^|\s+/).map(function(t){var n="",e=t.indexOf(".");if(0<=e&&(n=t.slice(e+1),t=t.slice(0,e)),t&&!r.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:n}})),a=-1,u=o.length;if(!(arguments.length<2)){if(null!=n&&"function"!=typeof n)throw new Error("invalid callback: "+n);for(;++a<u;)if(e=(t=o[a]).type)i[e]=X(i[e],t.name,n);else if(null==n)for(e in i)i[e]=X(i[e],t.name,null);return this}for(;++a<u;)if((e=(t=o[a]).type)&&(e=j(i[e],t.name)))return e},copy:function(){var t={},n=this._;for(var e in n)t[e]=n[e].slice();return new H(t)},call:function(t,n){if(0<(e=arguments.length-2))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)}};var G="http://www.w3.org/1999/xhtml",V={svg:"http://www.w3.org/2000/svg",xhtml:G,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function W(t){var n=t+="",e=n.indexOf(":");return 0<=e&&"xmlns"!==(n=t.slice(0,e))&&(t=t.slice(e+1)),V.hasOwnProperty(n)?{space:V[n],local:t}:t}function $(t){var n=W(t);return(n.local?function(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}:function(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===G&&t.documentElement.namespaceURI===G?t.createElement(e):t.createElementNS(n,e)}})(n)}function Z(){}function Q(t){return null==t?Z:function(){return this.querySelector(t)}}function J(){return[]}function K(t){return null==t?J:function(){return this.querySelectorAll(t)}}var tt=function(t){return function(){return this.matches(t)}};if("undefined"!=typeof document){var nt=document.documentElement;if(!nt.matches){var et=nt.webkitMatchesSelector||nt.msMatchesSelector||nt.mozMatchesSelector||nt.oMatchesSelector;tt=function(t){return function(){return et.call(this,t)}}}}var rt=tt;function it(t){return new Array(t.length)}function ot(t,n){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=n}ot.prototype={constructor:ot,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,n){return this._parent.insertBefore(t,n)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};var at="$";function ut(t,n,e,r,i,o){for(var a,u=0,f=n.length,c=o.length;u<c;++u)(a=n[u])?(a.__data__=o[u],r[u]=a):e[u]=new ot(t,o[u]);for(;u<f;++u)(a=n[u])&&(i[u]=a)}function ft(t,n,e,r,i,o,a){var u,f,c,s={},l=n.length,h=o.length,d=new Array(l);for(u=0;u<l;++u)(f=n[u])&&(d[u]=c=at+a.call(f,f.__data__,u,n),c in s?i[u]=f:s[c]=f);for(u=0;u<h;++u)(f=s[c=at+a.call(t,o[u],u,o)])?((r[u]=f).__data__=o[u],s[c]=null):e[u]=new ot(t,o[u]);for(u=0;u<l;++u)(f=n[u])&&s[d[u]]===f&&(i[u]=f)}function ct(t,n){return t<n?-1:n<t?1:n<=t?0:NaN}function st(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function lt(t,n){return t.style.getPropertyValue(n)||st(t).getComputedStyle(t,null).getPropertyValue(n)}function ht(t){return t.trim().split(/^|\s+/)}function dt(t){return t.classList||new pt(t)}function pt(t){this._node=t,this._names=ht(t.getAttribute("class")||"")}function vt(t,n){for(var e=dt(t),r=-1,i=n.length;++r<i;)e.add(n[r])}function gt(t,n){for(var e=dt(t),r=-1,i=n.length;++r<i;)e.remove(n[r])}function yt(){this.textContent=""}function _t(){this.innerHTML=""}function bt(){this.nextSibling&&this.parentNode.appendChild(this)}function mt(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function xt(){return null}function wt(){var t=this.parentNode;t&&t.removeChild(this)}function Mt(){return this.parentNode.insertBefore(this.cloneNode(!1),this.nextSibling)}function At(){return this.parentNode.insertBefore(this.cloneNode(!0),this.nextSibling)}pt.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);0<=n&&(this._names.splice(n,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return 0<=this._names.indexOf(t)}};var Tt={};(B.event=null,"undefined"!=typeof document)&&("onmouseenter"in document.documentElement||(Tt={mouseenter:"mouseover",mouseleave:"mouseout"}));function Nt(e,t,n){return e=St(e,t,n),function(t){var n=t.relatedTarget;n&&(n===this||8&n.compareDocumentPosition(this))||e.call(this,t)}}function St(e,r,i){return function(t){var n=B.event;B.event=t;try{e.call(this,this.__data__,r,i)}finally{B.event=n}}}function Et(o){return function(){var t=this.__on;if(t){for(var n,e=0,r=-1,i=t.length;e<i;++e)n=t[e],o.type&&n.type!==o.type||n.name!==o.name?t[++r]=n:this.removeEventListener(n.type,n.listener,n.capture);++r?t.length=r:delete this.__on}}}function kt(f,c,s){var l=Tt.hasOwnProperty(f.type)?Nt:St;return function(t,n,e){var r,i=this.__on,o=l(c,n,e);if(i)for(var a=0,u=i.length;a<u;++a)if((r=i[a]).type===f.type&&r.name===f.name)return this.removeEventListener(r.type,r.listener,r.capture),this.addEventListener(r.type,r.listener=o,r.capture=s),void(r.value=c);this.addEventListener(f.type,o,s),r={type:f.type,name:f.name,value:c,listener:o,capture:s},i?i.push(r):this.__on=[r]}}function Ct(t,n,e,r){var i=B.event;t.sourceEvent=B.event,B.event=t;try{return n.apply(e,r)}finally{B.event=i}}function Pt(t,n,e){var r=st(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)}var zt=[null];function Rt(t,n){this._groups=t,this._parents=n}function Lt(){return new Rt([[document.documentElement]],zt)}function Dt(t){return"string"==typeof t?new Rt([[document.querySelector(t)]],[document.documentElement]):new Rt([[t]],zt)}Rt.prototype=Lt.prototype={constructor:Rt,select:function(t){"function"!=typeof t&&(t=Q(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],f=u.length,c=r[i]=new Array(f),s=0;s<f;++s)(o=u[s])&&(a=t.call(o,o.__data__,s,u))&&("__data__"in o&&(a.__data__=o.__data__),c[s]=a);return new Rt(r,this._parents)},selectAll:function(t){"function"!=typeof t&&(t=K(t));for(var n=this._groups,e=n.length,r=[],i=[],o=0;o<e;++o)for(var a,u=n[o],f=u.length,c=0;c<f;++c)(a=u[c])&&(r.push(t.call(a,a.__data__,c,u)),i.push(a));return new Rt(r,i)},filter:function(t){"function"!=typeof t&&(t=rt(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,f=r[i]=[],c=0;c<u;++c)(o=a[c])&&t.call(o,o.__data__,c,a)&&f.push(o);return new Rt(r,this._parents)},data:function(t,n){if(!t)return p=new Array(this.size()),s=-1,this.each(function(t){p[++s]=t}),p;var e,r=n?ft:ut,i=this._parents,o=this._groups;"function"!=typeof t&&(e=t,t=function(){return e});for(var a=o.length,u=new Array(a),f=new Array(a),c=new Array(a),s=0;s<a;++s){var l=i[s],h=o[s],d=h.length,p=t.call(l,l&&l.__data__,s,i),v=p.length,g=f[s]=new Array(v),y=u[s]=new Array(v);r(l,h,g,y,c[s]=new Array(d),p,n);for(var _,b,m=0,x=0;m<v;++m)if(_=g[m]){for(x<=m&&(x=m+1);!(b=y[x])&&++x<v;);_._next=b||null}}return(u=new Rt(u,i))._enter=f,u._exit=c,u},enter:function(){return new Rt(this._enter||this._groups.map(it),this._parents)},exit:function(){return new Rt(this._exit||this._groups.map(it),this._parents)},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 f,c=n[u],s=e[u],l=c.length,h=a[u]=new Array(l),d=0;d<l;++d)(f=c[d]||s[d])&&(h[d]=f);for(;u<r;++u)a[u]=n[u];return new Rt(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];0<=--o;)(r=i[o])&&(a&&a!==r.nextSibling&&a.parentNode.insertBefore(r,a),a=r);return this},sort:function(e){function t(t,n){return t&&n?e(t.__data__,n.__data__):!t-!n}e||(e=ct);for(var n=this._groups,r=n.length,i=new Array(r),o=0;o<r;++o){for(var a,u=n[o],f=u.length,c=i[o]=new Array(f),s=0;s<f;++s)(a=u[s])&&(c[s]=a);c.sort(t)}return new Rt(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=W(t);if(arguments.length<2){var r=this.node();return e.local?r.getAttributeNS(e.space,e.local):r.getAttribute(e)}return this.each((null==n?e.local?function(t){return function(){this.removeAttributeNS(t.space,t.local)}}:function(t){return function(){this.removeAttribute(t)}}:"function"==typeof n?e.local?function(n,e){return function(){var t=e.apply(this,arguments);null==t?this.removeAttributeNS(n.space,n.local):this.setAttributeNS(n.space,n.local,t)}}:function(n,e){return function(){var t=e.apply(this,arguments);null==t?this.removeAttribute(n):this.setAttribute(n,t)}}:e.local?function(t,n){return function(){this.setAttributeNS(t.space,t.local,n)}}:function(t,n){return function(){this.setAttribute(t,n)}})(e,n))},style:function(t,n,e){return 1<arguments.length?this.each((null==n?function(t){return function(){this.style.removeProperty(t)}}:"function"==typeof n?function(n,e,r){return function(){var t=e.apply(this,arguments);null==t?this.style.removeProperty(n):this.style.setProperty(n,t,r)}}:function(t,n,e){return function(){this.style.setProperty(t,n,e)}})(t,n,null==e?"":e)):lt(this.node(),t)},property:function(t,n){return 1<arguments.length?this.each((null==n?function(t){return function(){delete this[t]}}:"function"==typeof n?function(n,e){return function(){var t=e.apply(this,arguments);null==t?delete this[n]:this[n]=t}}:function(t,n){return function(){this[t]=n}})(t,n)):this.node()[t]},classed:function(t,n){var e=ht(t+"");if(arguments.length<2){for(var r=dt(this.node()),i=-1,o=e.length;++i<o;)if(!r.contains(e[i]))return!1;return!0}return this.each(("function"==typeof n?function(t,n){return function(){(n.apply(this,arguments)?vt:gt)(this,t)}}:n?function(t){return function(){vt(this,t)}}:function(t){return function(){gt(this,t)}})(e,n))},text:function(t){return arguments.length?this.each(null==t?yt:("function"==typeof t?function(n){return function(){var t=n.apply(this,arguments);this.textContent=null==t?"":t}}:function(t){return function(){this.textContent=t}})(t)):this.node().textContent},html:function(t){return arguments.length?this.each(null==t?_t:("function"==typeof t?function(n){return function(){var t=n.apply(this,arguments);this.innerHTML=null==t?"":t}}:function(t){return function(){this.innerHTML=t}})(t)):this.node().innerHTML},raise:function(){return this.each(bt)},lower:function(){return this.each(mt)},append:function(t){var n="function"==typeof t?t:$(t);return this.select(function(){return this.appendChild(n.apply(this,arguments))})},insert:function(t,n){var e="function"==typeof t?t:$(t),r=null==n?xt:"function"==typeof n?n:Q(n);return this.select(function(){return this.insertBefore(e.apply(this,arguments),r.apply(this,arguments)||null)})},remove:function(){return this.each(wt)},clone:function(t){return this.select(t?At:Mt)},datum:function(t){return arguments.length?this.property("__data__",t):this.node().__data__},on:function(t,n,e){var r,i,o=(t+"").trim().split(/^|\s+/).map(function(t){var n="",e=t.indexOf(".");return 0<=e&&(n=t.slice(e+1),t=t.slice(0,e)),{type:t,name:n}}),a=o.length;if(!(arguments.length<2)){for(u=n?kt:Et,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 f,c=0,s=u.length;c<s;++c)for(r=0,f=u[c];r<a;++r)if((i=o[r]).type===f.type&&i.name===f.name)return f.value},dispatch:function(t,n){return this.each(("function"==typeof n?function(t,n){return function(){return Pt(this,t,n.apply(this,arguments))}}:function(t,n){return function(){return Pt(this,t,n)}})(t,n))}};var Ut=0;function qt(){return new Ot}function Ot(){this._="@"+(++Ut).toString(36)}function Yt(){for(var t,n=B.event;t=n.sourceEvent;)n=t;return n}function Bt(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 Ft(t){var n=Yt();return n.changedTouches&&(n=n.changedTouches[0]),Bt(t,n)}function It(t,n,e){arguments.length<3&&(e=n,n=Yt().changedTouches);for(var r,i=0,o=n?n.length:0;i<o;++i)if((r=n[i]).identifier===e)return Bt(t,r);return null}function Ht(){B.event.stopImmediatePropagation()}function jt(){B.event.preventDefault(),B.event.stopImmediatePropagation()}function Xt(t){var n=t.document.documentElement,e=Dt(t).on("dragstart.drag",jt,!0);"onselectstart"in n?e.on("selectstart.drag",jt,!0):(n.__noselect=n.style.MozUserSelect,n.style.MozUserSelect="none")}function Gt(t,n){var e=t.document.documentElement,r=Dt(t).on("dragstart.drag",null);n&&(r.on("click.drag",jt,!0),setTimeout(function(){r.on("click.drag",null)},0)),"onselectstart"in e?r.on("selectstart.drag",null):(e.style.MozUserSelect=e.__noselect,delete e.__noselect)}function Vt(t){return function(){return t}}function Wt(t,n,e,r,i,o,a,u,f,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=f,this._=c}function $t(){return!B.event.button}function Zt(){return this.parentNode}function Qt(t){return null==t?{x:B.event.x,y:B.event.y}:t}function Jt(){return"ontouchstart"in this}function Kt(t,n,e){t.prototype=n.prototype=e,e.constructor=t}function tn(t,n){var e=Object.create(t.prototype);for(var r in n)e[r]=n[r];return e}function nn(){}Ot.prototype=qt.prototype={constructor:Ot,get:function(t){for(var n=this._;!(n in t);)if(!(t=t.parentNode))return;return t[n]},set:function(t,n){return t[this._]=n},remove:function(t){return this._ in t&&delete t[this._]},toString:function(){return this._}},Wt.prototype.on=function(){var t=this._.on.apply(this._,arguments);return t===this._?this:t};var en=1/.7,rn="\\s*([+-]?\\d+)\\s*",on="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)\\s*",an="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)%\\s*",un=/^#([0-9a-f]{3})$/,fn=/^#([0-9a-f]{6})$/,cn=new RegExp("^rgb\\("+[rn,rn,rn]+"\\)$"),sn=new RegExp("^rgb\\("+[an,an,an]+"\\)$"),ln=new RegExp("^rgba\\("+[rn,rn,rn,on]+"\\)$"),hn=new RegExp("^rgba\\("+[an,an,an,on]+"\\)$"),dn=new RegExp("^hsl\\("+[on,an,an]+"\\)$"),pn=new RegExp("^hsla\\("+[on,an,an,on]+"\\)$"),vn={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 gn(t){var n;return t=(t+"").trim().toLowerCase(),(n=un.exec(t))?new xn((n=parseInt(n[1],16))>>8&15|n>>4&240,n>>4&15|240&n,(15&n)<<4|15&n,1):(n=fn.exec(t))?yn(parseInt(n[1],16)):(n=cn.exec(t))?new xn(n[1],n[2],n[3],1):(n=sn.exec(t))?new xn(255*n[1]/100,255*n[2]/100,255*n[3]/100,1):(n=ln.exec(t))?_n(n[1],n[2],n[3],n[4]):(n=hn.exec(t))?_n(255*n[1]/100,255*n[2]/100,255*n[3]/100,n[4]):(n=dn.exec(t))?Mn(n[1],n[2]/100,n[3]/100,1):(n=pn.exec(t))?Mn(n[1],n[2]/100,n[3]/100,n[4]):vn.hasOwnProperty(t)?yn(vn[t]):"transparent"===t?new xn(NaN,NaN,NaN,0):null}function yn(t){return new xn(t>>16&255,t>>8&255,255&t,1)}function _n(t,n,e,r){return r<=0&&(t=n=e=NaN),new xn(t,n,e,r)}function bn(t){return t instanceof nn||(t=gn(t)),t?new xn((t=t.rgb()).r,t.g,t.b,t.opacity):new xn}function mn(t,n,e,r){return 1===arguments.length?bn(t):new xn(t,n,e,null==r?1:r)}function xn(t,n,e,r){this.r=+t,this.g=+n,this.b=+e,this.opacity=+r}function wn(t){return((t=Math.max(0,Math.min(255,Math.round(t)||0)))<16?"0":"")+t.toString(16)}function Mn(t,n,e,r){return r<=0?t=n=e=NaN:e<=0||1<=e?t=n=NaN:n<=0&&(t=NaN),new Tn(t,n,e,r)}function An(t,n,e,r){return 1===arguments.length?function(t){if(t instanceof Tn)return new Tn(t.h,t.s,t.l,t.opacity);if(t instanceof nn||(t=gn(t)),!t)return new Tn;if(t instanceof Tn)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,f=(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/=f<.5?o+i:2-o-i,a*=60):u=0<f&&f<1?0:a,new Tn(a,u,f,t.opacity)}(t):new Tn(t,n,e,null==r?1:r)}function Tn(t,n,e,r){this.h=+t,this.s=+n,this.l=+e,this.opacity=+r}function Nn(t,n,e){return 255*(t<60?n+(e-n)*t/60:t<180?e:t<240?n+(e-n)*(240-t)/60:n)}Kt(nn,gn,{displayable:function(){return this.rgb().displayable()},hex:function(){return this.rgb().hex()},toString:function(){return this.rgb()+""}}),Kt(xn,mn,tn(nn,{brighter:function(t){return t=null==t?en:Math.pow(en,t),new xn(this.r*t,this.g*t,this.b*t,this.opacity)},darker:function(t){return t=null==t?.7:Math.pow(.7,t),new xn(this.r*t,this.g*t,this.b*t,this.opacity)},rgb:function(){return this},displayable:function(){return 0<=this.r&&this.r<=255&&0<=this.g&&this.g<=255&&0<=this.b&&this.b<=255&&0<=this.opacity&&this.opacity<=1},hex:function(){return"#"+wn(this.r)+wn(this.g)+wn(this.b)},toString:function(){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+")")}})),Kt(Tn,An,tn(nn,{brighter:function(t){return t=null==t?en:Math.pow(en,t),new Tn(this.h,this.s,this.l*t,this.opacity)},darker:function(t){return t=null==t?.7:Math.pow(.7,t),new Tn(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 xn(Nn(240<=t?t-240:t+120,i,r),Nn(t,i,r),Nn(t<120?t+240:t-120,i,r),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1}}));var Sn=Math.PI/180,En=180/Math.PI,kn=.96422,Cn=1,Pn=.82521,zn=4/29,Rn=6/29,Ln=3*Rn*Rn,Dn=Rn*Rn*Rn;function Un(t){if(t instanceof On)return new On(t.l,t.a,t.b,t.opacity);if(t instanceof Xn){if(isNaN(t.h))return new On(t.l,0,0,t.opacity);var n=t.h*Sn;return new On(t.l,Math.cos(n)*t.c,Math.sin(n)*t.c,t.opacity)}t instanceof xn||(t=bn(t));var e,r,i=In(t.r),o=In(t.g),a=In(t.b),u=Yn((.2225045*i+.7168786*o+.0606169*a)/Cn);return i===o&&o===a?e=r=u:(e=Yn((.4360747*i+.3850649*o+.1430804*a)/kn),r=Yn((.0139322*i+.0971045*o+.7141733*a)/Pn)),new On(116*u-16,500*(e-u),200*(u-r),t.opacity)}function qn(t,n,e,r){return 1===arguments.length?Un(t):new On(t,n,e,null==r?1:r)}function On(t,n,e,r){this.l=+t,this.a=+n,this.b=+e,this.opacity=+r}function Yn(t){return Dn<t?Math.pow(t,1/3):t/Ln+zn}function Bn(t){return Rn<t?t*t*t:Ln*(t-zn)}function Fn(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function In(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Hn(t){if(t instanceof Xn)return new Xn(t.h,t.c,t.l,t.opacity);if(t instanceof On||(t=Un(t)),0===t.a&&0===t.b)return new Xn(NaN,0,t.l,t.opacity);var n=Math.atan2(t.b,t.a)*En;return new Xn(n<0?n+360:n,Math.sqrt(t.a*t.a+t.b*t.b),t.l,t.opacity)}function jn(t,n,e,r){return 1===arguments.length?Hn(t):new Xn(t,n,e,null==r?1:r)}function Xn(t,n,e,r){this.h=+t,this.c=+n,this.l=+e,this.opacity=+r}Kt(On,qn,tn(nn,{brighter:function(t){return new On(this.l+18*(null==t?1:t),this.a,this.b,this.opacity)},darker:function(t){return new On(this.l-18*(null==t?1:t),this.a,this.b,this.opacity)},rgb:function(){var t=(this.l+16)/116,n=isNaN(this.a)?t:t+this.a/500,e=isNaN(this.b)?t:t-this.b/200;return new xn(Fn(3.1338561*(n=kn*Bn(n))-1.6168667*(t=Cn*Bn(t))-.4906146*(e=Pn*Bn(e))),Fn(-.9787684*n+1.9161415*t+.033454*e),Fn(.0719453*n-.2289914*t+1.4052427*e),this.opacity)}})),Kt(Xn,jn,tn(nn,{brighter:function(t){return new Xn(this.h,this.c,this.l+18*(null==t?1:t),this.opacity)},darker:function(t){return new Xn(this.h,this.c,this.l-18*(null==t?1:t),this.opacity)},rgb:function(){return Un(this).rgb()}}));var Gn=1.78277,Vn=-.29227,Wn=-.90649,$n=1.97294,Zn=$n*Wn,Qn=$n*Gn,Jn=Gn*Vn- -.14861*Wn;function Kn(t,n,e,r){return 1===arguments.length?function(t){if(t instanceof te)return new te(t.h,t.s,t.l,t.opacity);t instanceof xn||(t=bn(t));var n=t.r/255,e=t.g/255,r=t.b/255,i=(Jn*r+Zn*n-Qn*e)/(Jn+Zn-Qn),o=r-i,a=($n*(e-i)-Vn*o)/Wn,u=Math.sqrt(a*a+o*o)/($n*i*(1-i)),f=u?Math.atan2(a,o)*En-120:NaN;return new te(f<0?f+360:f,u,i,t.opacity)}(t):new te(t,n,e,null==r?1:r)}function te(t,n,e,r){this.h=+t,this.s=+n,this.l=+e,this.opacity=+r}function ne(t,n,e,r,i){var o=t*t,a=o*t;return((1-3*t+3*o-a)*n+(4-6*o+3*a)*e+(1+3*t+3*o-3*a)*r+a*i)/6}function ee(a){var u=a.length-1;return function(t){var n=t<=0?t=0:1<=t?u-(t=1):Math.floor(t*u),e=a[n],r=a[n+1],i=0<n?a[n-1]:2*e-r,o=n<u-1?a[n+2]:2*r-e;return ne((t-n/u)*u,i,e,r,o)}}function re(a){var u=a.length;return function(t){var n=Math.floor(((t%=1)<0?++t:t)*u),e=a[(n+u-1)%u],r=a[n%u],i=a[(n+1)%u],o=a[(n+2)%u];return ne((t-n/u)*u,e,r,i,o)}}function ie(t){return function(){return t}}function oe(n,e){return function(t){return n+t*e}}function ae(t,n){var e=n-t;return e?oe(t,180<e||e<-180?e-360*Math.round(e/360):e):ie(isNaN(t)?n:t)}function ue(o){return 1==(o=+o)?fe:function(t,n){return n-t?(e=t,r=n,i=o,e=Math.pow(e,i),r=Math.pow(r,i)-e,i=1/i,function(t){return Math.pow(e+t*r,i)}):ie(isNaN(t)?n:t);var e,r,i}}function fe(t,n){var e=n-t;return e?oe(t,e):ie(isNaN(t)?n:t)}Kt(te,Kn,tn(nn,{brighter:function(t){return t=null==t?en:Math.pow(en,t),new te(this.h,this.s,this.l*t,this.opacity)},darker:function(t){return t=null==t?.7:Math.pow(.7,t),new te(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=isNaN(this.h)?0:(this.h+120)*Sn,n=+this.l,e=isNaN(this.s)?0:this.s*n*(1-n),r=Math.cos(t),i=Math.sin(t);return new xn(255*(n+e*(-.14861*r+Gn*i)),255*(n+e*(Vn*r+Wn*i)),255*(n+e*($n*r)),this.opacity)}}));var ce=function t(n){var a=ue(n);function e(n,t){var e=a((n=mn(n)).r,(t=mn(t)).r),r=a(n.g,t.g),i=a(n.b,t.b),o=fe(n.opacity,t.opacity);return function(t){return n.r=e(t),n.g=r(t),n.b=i(t),n.opacity=o(t),n+""}}return e.gamma=t,e}(1);function se(u){return function(t){var n,e,r=t.length,i=new Array(r),o=new Array(r),a=new Array(r);for(n=0;n<r;++n)e=mn(t[n]),i[n]=e.r||0,o[n]=e.g||0,a[n]=e.b||0;return i=u(i),o=u(o),a=u(a),e.opacity=1,function(t){return e.r=i(t),e.g=o(t),e.b=a(t),e+""}}}var le=se(ee),he=se(re);function de(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]=me(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 pe(n,e){var r=new Date;return e-=n=+n,function(t){return r.setTime(n+e*t),r}}function ve(n,e){return e-=n=+n,function(t){return n+e*t}}function ge(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]=me(t[e],n[e]):i[e]=n[e];return function(t){for(e in r)i[e]=r[e](t);return i}}var ye=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,_e=new RegExp(ye.source,"g");function be(t,r){var n,e,i,o,a,u=ye.lastIndex=_e.lastIndex=0,f=-1,c=[],s=[];for(t+="",r+="";(n=ye.exec(t))&&(e=_e.exec(r));)(i=e.index)>u&&(i=r.slice(u,i),c[f]?c[f]+=i:c[++f]=i),(n=n[0])===(e=e[0])?c[f]?c[f]+=e:c[++f]=e:(c[++f]=null,s.push({i:f,x:ve(n,e)})),u=_e.lastIndex;return u<r.length&&(i=r.slice(u),c[f]?c[f]+=i:c[++f]=i),c.length<2?s[0]?(a=s[0].x,function(t){return a(t)+""}):(o=r,function(){return o}):(r=s.length,function(t){for(var n,e=0;e<r;++e)c[(n=s[e]).i]=n.x(t);return c.join("")})}function me(t,n){var e,r=typeof n;return null==n||"boolean"===r?ie(n):("number"===r?ve:"string"===r?(e=gn(n))?(n=e,ce):be:n instanceof gn?ce:n instanceof Date?pe:Array.isArray(n)?de:"function"!=typeof n.valueOf&&"function"!=typeof n.toString||isNaN(n)?ge:ve)(t,n)}function xe(n,e){return e-=n=+n,function(t){return Math.round(n+e*t)}}var we,Me,Ae,Te,Ne=180/Math.PI,Se={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Ee(t,n,e,r,i,o){var a,u,f;return(a=Math.sqrt(t*t+n*n))&&(t/=a,n/=a),(f=t*e+n*r)&&(e-=t*f,r-=n*f),(u=Math.sqrt(e*e+r*r))&&(e/=u,r/=u,f/=u),t*r<n*e&&(t=-t,n=-n,f=-f,a=-a),{translateX:i,translateY:o,rotate:Math.atan2(n,t)*Ne,skewX:Math.atan(f)*Ne,scaleX:a,scaleY:u}}function ke(h,d,p,v){function g(t){return t.length?t.pop()+" ":""}return function(t,n){var e,r,i,o,a,u,f,c,s=[],l=[];return t=h(t),n=h(n),function(t,n,e,r,i,o){if(t!==e||n!==r){var a=i.push("translate(",null,d,null,p);o.push({i:a-4,x:ve(t,e)},{i:a-2,x:ve(n,r)})}else(e||r)&&i.push("translate("+e+d+r+p)}(t.translateX,t.translateY,n.translateX,n.translateY,s,l),e=t.rotate,r=n.rotate,i=s,o=l,e!==r?(180<e-r?r+=360:180<r-e&&(e+=360),o.push({i:i.push(g(i)+"rotate(",null,v)-2,x:ve(e,r)})):r&&i.push(g(i)+"rotate("+r+v),a=t.skewX,u=n.skewX,f=s,c=l,a!==u?c.push({i:f.push(g(f)+"skewX(",null,v)-2,x:ve(a,u)}):u&&f.push(g(f)+"skewX("+u+v),function(t,n,e,r,i,o){if(t!==e||n!==r){var a=i.push(g(i)+"scale(",null,",",null,")");o.push({i:a-4,x:ve(t,e)},{i:a-2,x:ve(n,r)})}else 1===e&&1===r||i.push(g(i)+"scale("+e+","+r+")")}(t.scaleX,t.scaleY,n.scaleX,n.scaleY,s,l),t=n=null,function(t){for(var n,e=-1,r=l.length;++e<r;)s[(n=l[e]).i]=n.x(t);return s.join("")}}}var Ce=ke(function(t){return"none"===t?Se:(we||(we=document.createElement("DIV"),Me=document.documentElement,Ae=document.defaultView),we.style.transform=t,t=Ae.getComputedStyle(Me.appendChild(we),null).getPropertyValue("transform"),Me.removeChild(we),Ee(+(t=t.slice(7,-1).split(","))[0],+t[1],+t[2],+t[3],+t[4],+t[5]))},"px, ","px)","deg)"),Pe=ke(function(t){return null==t?Se:(Te||(Te=document.createElementNS("http://www.w3.org/2000/svg","g")),Te.setAttribute("transform",t),(t=Te.transform.baseVal.consolidate())?Ee((t=t.matrix).a,t.b,t.c,t.d,t.e,t.f):Se)},", ",")",")"),ze=Math.SQRT2,Re=2,Le=4,De=1e-12;function Ue(t){return((t=Math.exp(t))+1/t)/2}function qe(t,n){var e,a,u=t[0],f=t[1],c=t[2],r=n[0],i=n[1],o=n[2],s=r-u,l=i-f,h=s*s+l*l;if(h<De)a=Math.log(o/c)/ze,e=function(t){return[u+t*s,f+t*l,c*Math.exp(ze*t*a)]};else{var d=Math.sqrt(h),p=(o*o-c*c+Le*h)/(2*c*Re*d),v=(o*o-c*c-Le*h)/(2*o*Re*d),g=Math.log(Math.sqrt(p*p+1)-p),y=Math.log(Math.sqrt(v*v+1)-v);a=(y-g)/ze,e=function(t){var n,e,r=t*a,i=Ue(g),o=c/(Re*d)*(i*(e=ze*r+g,((e=Math.exp(2*e))-1)/(e+1))-(n=g,((n=Math.exp(n))-1/n)/2));return[u+o*s,f+o*l,c*i/Ue(ze*r+g)]}}return e.duration=1e3*a,e}function Oe(a){return function(n,t){var e=a((n=An(n)).h,(t=An(t)).h),r=fe(n.s,t.s),i=fe(n.l,t.l),o=fe(n.opacity,t.opacity);return function(t){return n.h=e(t),n.s=r(t),n.l=i(t),n.opacity=o(t),n+""}}}var Ye=Oe(ae),Be=Oe(fe);function Fe(a){return function(n,t){var e=a((n=jn(n)).h,(t=jn(t)).h),r=fe(n.c,t.c),i=fe(n.l,t.l),o=fe(n.opacity,t.opacity);return function(t){return n.h=e(t),n.c=r(t),n.l=i(t),n.opacity=o(t),n+""}}}var Ie=Fe(ae),He=Fe(fe);function je(u){return function t(a){function n(n,t){var e=u((n=Kn(n)).h,(t=Kn(t)).h),r=fe(n.s,t.s),i=fe(n.l,t.l),o=fe(n.opacity,t.opacity);return function(t){return n.h=e(t),n.s=r(t),n.l=i(Math.pow(t,a)),n.opacity=o(t),n+""}}return a=+a,n.gamma=t,n}(1)}var Xe=je(ae),Ge=je(fe);var Ve,We,$e=0,Ze=0,Qe=0,Je=1e3,Ke=0,tr=0,nr=0,er="object"==typeof performance&&performance.now?performance:Date,rr="object"==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function ir(){return tr||(rr(or),tr=er.now()+nr)}function or(){tr=0}function ar(){this._call=this._time=this._next=null}function ur(t,n,e){var r=new ar;return r.restart(t,n,e),r}function fr(){ir(),++$e;for(var t,n=Ve;n;)0<=(t=tr-n._time)&&n._call.call(null,t),n=n._next;--$e}function cr(){tr=(Ke=er.now())+nr,$e=Ze=0;try{fr()}finally{$e=0,function(){var t,n,e=Ve,r=1/0;for(;e;)e=e._call?(r>e._time&&(r=e._time),(t=e)._next):(n=e._next,e._next=null,t?t._next=n:Ve=n);We=t,lr(r)}(),tr=0}}function sr(){var t=er.now(),n=t-Ke;Je<n&&(nr-=n,Ke=t)}function lr(t){$e||(Ze&&(Ze=clearTimeout(Ze)),24<t-tr?(t<1/0&&(Ze=setTimeout(cr,t-er.now()-nr)),Qe&&(Qe=clearInterval(Qe))):(Qe||(Ke=er.now(),Qe=setInterval(sr,Je)),$e=1,rr(cr)))}function hr(n,e,t){var r=new ar;return e=null==e?0:+e,r.restart(function(t){r.stop(),n(t+e)},e,t),r}ar.prototype=ur.prototype={constructor:ar,restart:function(t,n,e){if("function"!=typeof t)throw new TypeError("callback is not a function");e=(null==e?ir():+e)+(null==n?0:+n),this._next||We===this||(We?We._next=this:Ve=this,We=this),this._call=t,this._time=e,lr()},stop:function(){this._call&&(this._call=null,this._time=1/0,lr())}};var dr=I("start","end","interrupt"),pr=[],vr=0,gr=1,yr=2,_r=3,br=4,mr=5,xr=6;function wr(t,n,e,r,i,o){var a=t.__transition;if(a){if(e in a)return}else t.__transition={};!function(o,a,u){var f,c=o.__transition;function s(t){var n,e,r,i;if(u.state!==gr)return h();for(n in c)if((i=c[n]).name===u.name){if(i.state===_r)return hr(s);i.state===br?(i.state=xr,i.timer.stop(),i.on.call("interrupt",o,o.__data__,i.index,i.group),delete c[n]):+n<a&&(i.state=xr,i.timer.stop(),delete c[n])}if(hr(function(){u.state===_r&&(u.state=br,u.timer.restart(l,u.delay,u.time),l(t))}),u.state=yr,u.on.call("start",o,o.__data__,u.index,u.group),u.state===yr){for(u.state=_r,f=new Array(r=u.tween.length),n=0,e=-1;n<r;++n)(i=u.tween[n].value.call(o,o.__data__,u.index,u.group))&&(f[++e]=i);f.length=e+1}}function l(t){for(var n=t<u.duration?u.ease.call(null,t/u.duration):(u.timer.restart(h),u.state=mr,1),e=-1,r=f.length;++e<r;)f[e].call(null,n);u.state===mr&&(u.on.call("end",o,o.__data__,u.index,u.group),h())}function h(){for(var t in u.state=xr,u.timer.stop(),delete c[a],c)return;delete o.__transition}(c[a]=u).timer=ur(function(t){u.state=gr,u.timer.restart(s,u.delay,u.time),u.delay<=t&&s(t-u.delay)},0,u.time)}(t,e,{name:n,index:r,group:i,on:dr,tween:pr,time:o.time,delay:o.delay,duration:o.duration,ease:o.ease,timer:null,state:vr})}function Mr(t,n){var e=Tr(t,n);if(e.state>vr)throw new Error("too late; already scheduled");return e}function Ar(t,n){var e=Tr(t,n);if(e.state>yr)throw new Error("too late; already started");return e}function Tr(t,n){var e=t.__transition;if(!e||!(e=e[n]))throw new Error("transition not found");return e}function Nr(t,n){var e,r,i,o=t.__transition,a=!0;if(o){for(i in n=null==n?null:n+"",o)(e=o[i]).name===n?(r=e.state>yr&&e.state<mr,e.state=xr,e.timer.stop(),r&&e.on.call("interrupt",t,t.__data__,e.index,e.group),delete o[i]):a=!1;a&&delete t.__transition}}function Sr(t,n,e){var r=t._id;return t.each(function(){var t=Ar(this,r);(t.value||(t.value={}))[n]=e.apply(this,arguments)}),function(t){return Tr(t,r).value[n]}}function Er(t,n){var e;return("number"==typeof n?ve:n instanceof gn?ce:(e=gn(n))?(n=e,ce):be)(t,n)}var kr=Lt.prototype.constructor;var Cr=0;function Pr(t,n,e,r){this._groups=t,this._parents=n,this._name=e,this._id=r}function zr(t){return Lt().transition(t)}function Rr(){return++Cr}var Lr=Lt.prototype;function Dr(t){return((t*=2)<=1?t*t:--t*(2-t)+1)/2}function Ur(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}Pr.prototype=zr.prototype={constructor:Pr,select:function(t){var n=this._name,e=this._id;"function"!=typeof t&&(t=Q(t));for(var r=this._groups,i=r.length,o=new Array(i),a=0;a<i;++a)for(var u,f,c=r[a],s=c.length,l=o[a]=new Array(s),h=0;h<s;++h)(u=c[h])&&(f=t.call(u,u.__data__,h,c))&&("__data__"in u&&(f.__data__=u.__data__),l[h]=f,wr(l[h],n,e,h,l,Tr(u,e)));return new Pr(o,this._parents,n,e)},selectAll:function(t){var n=this._name,e=this._id;"function"!=typeof t&&(t=K(t));for(var r=this._groups,i=r.length,o=[],a=[],u=0;u<i;++u)for(var f,c=r[u],s=c.length,l=0;l<s;++l)if(f=c[l]){for(var h,d=t.call(f,f.__data__,l,c),p=Tr(f,e),v=0,g=d.length;v<g;++v)(h=d[v])&&wr(h,n,e,v,d,p);o.push(d),a.push(f)}return new Pr(o,a,n,e)},filter:function(t){"function"!=typeof t&&(t=rt(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,f=r[i]=[],c=0;c<u;++c)(o=a[c])&&t.call(o,o.__data__,c,a)&&f.push(o);return new Pr(r,this._parents,this._name,this._id)},merge:function(t){if(t._id!==this._id)throw new Error;for(var n=this._groups,e=t._groups,r=n.length,i=e.length,o=Math.min(r,i),a=new Array(r),u=0;u<o;++u)for(var f,c=n[u],s=e[u],l=c.length,h=a[u]=new Array(l),d=0;d<l;++d)(f=c[d]||s[d])&&(h[d]=f);for(;u<r;++u)a[u]=n[u];return new Pr(a,this._parents,this._name,this._id)},selection:function(){return new kr(this._groups,this._parents)},transition:function(){for(var t=this._name,n=this._id,e=Rr(),r=this._groups,i=r.length,o=0;o<i;++o)for(var a,u=r[o],f=u.length,c=0;c<f;++c)if(a=u[c]){var s=Tr(a,n);wr(a,t,e,c,u,{time:s.time+s.delay+s.duration,delay:0,duration:s.duration,ease:s.ease})}return new Pr(r,this._parents,t,e)},call:Lr.call,nodes:Lr.nodes,node:Lr.node,size:Lr.size,empty:Lr.empty,each:Lr.each,on:function(t,n){var e,r,i,o,a,u,f=this._id;return arguments.length<2?Tr(this.node(),f).on.on(t):this.each((e=f,i=n,u=((r=t)+"").trim().split(/^|\s+/).every(function(t){var n=t.indexOf(".");return 0<=n&&(t=t.slice(0,n)),!t||"start"===t})?Mr:Ar,function(){var t=u(this,e),n=t.on;n!==o&&(a=(o=n).copy()).on(r,i),t.on=a}))},attr:function(t,n){var e=W(t),r="transform"===e?Pe:Er;return this.attrTween(t,"function"==typeof n?(e.local?function(e,r,i){var o,a,u;return function(){var t,n=i(this);if(null!=n)return(t=this.getAttributeNS(e.space,e.local))===n?null:t===o&&n===a?u:u=r(o=t,a=n);this.removeAttributeNS(e.space,e.local)}}:function(e,r,i){var o,a,u;return function(){var t,n=i(this);if(null!=n)return(t=this.getAttribute(e))===n?null:t===o&&n===a?u:u=r(o=t,a=n);this.removeAttribute(e)}})(e,r,Sr(this,"attr."+t,n)):null==n?(e.local?function(t){return function(){this.removeAttributeNS(t.space,t.local)}}:function(t){return function(){this.removeAttribute(t)}})(e):(e.local?function(n,e,r){var i,o;return function(){var t=this.getAttributeNS(n.space,n.local);return t===r?null:t===i?o:o=e(i=t,r)}}:function(n,e,r){var i,o;return function(){var t=this.getAttribute(n);return t===r?null:t===i?o:o=e(i=t,r)}})(e,r,n+""))},attrTween:function(t,n){var e="attr."+t;if(arguments.length<2)return(e=this.tween(e))&&e._value;if(null==n)return this.tween(e,null);if("function"!=typeof n)throw new Error;var r=W(t);return this.tween(e,(r.local?function(r,t){function n(){var n=this,e=t.apply(n,arguments);return e&&function(t){n.setAttributeNS(r.space,r.local,e(t))}}return n._value=t,n}:function(r,t){function n(){var n=this,e=t.apply(n,arguments);return e&&function(t){n.setAttribute(r,e(t))}}return n._value=t,n})(r,n))},style:function(t,n,e){var r,i,o,a,u,f,c,s,l,h,d,p,v,g,y,_,b,m="transform"==(t+="")?Ce:Er;return null==n?this.styleTween(t,(v=t,g=m,function(){var t=lt(this,v),n=(this.style.removeProperty(v),lt(this,v));return t===n?null:t===y&&n===_?b:b=g(y=t,_=n)})).on("end.style."+t,(p=t,function(){this.style.removeProperty(p)})):this.styleTween(t,"function"==typeof n?(c=m,s=Sr(this,"style."+(f=t),n),function(){var t=lt(this,f),n=s(this);return null==n&&(this.style.removeProperty(f),n=lt(this,f)),t===n?null:t===l&&n===h?d:d=c(l=t,h=n)}):(r=t,i=m,o=n+"",function(){var t=lt(this,r);return t===o?null:t===a?u:u=i(a=t,o)}),e)},styleTween:function(t,n,e){var r="style."+(t+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(null==n)return this.tween(r,null);if("function"!=typeof n)throw new Error;return this.tween(r,function(r,t,i){function n(){var n=this,e=t.apply(n,arguments);return e&&function(t){n.style.setProperty(r,e(t),i)}}return n._value=t,n}(t,n,null==e?"":e))},text:function(t){return this.tween("text","function"==typeof t?(e=Sr(this,"text",t),function(){var t=e(this);this.textContent=null==t?"":t}):(n=null==t?"":t+"",function(){this.textContent=n}));var n,e},remove:function(){return this.on("end.remove",(e=this._id,function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}));var e},tween:function(t,n){var e=this._id;if(t+="",arguments.length<2){for(var r,i=Tr(this.node(),e).tween,o=0,a=i.length;o<a;++o)if((r=i[o]).name===t)return r.value;return null}return this.each((null==n?function(i,o){var a,u;return function(){var t=Ar(this,i),n=t.tween;if(n!==a)for(var e=0,r=(u=a=n).length;e<r;++e)if(u[e].name===o){(u=u.slice()).splice(e,1);break}t.tween=u}}:function(o,a,u){var f,c;if("function"!=typeof u)throw new Error;return function(){var t=Ar(this,o),n=t.tween;if(n!==f){c=(f=n).slice();for(var e={name:a,value:u},r=0,i=c.length;r<i;++r)if(c[r].name===a){c[r]=e;break}r===i&&c.push(e)}t.tween=c}})(e,t,n))},delay:function(t){var n=this._id;return arguments.length?this.each(("function"==typeof t?function(t,n){return function(){Mr(this,t).delay=+n.apply(this,arguments)}}:function(t,n){return n=+n,function(){Mr(this,t).delay=n}})(n,t)):Tr(this.node(),n).delay},duration:function(t){var n=this._id;return arguments.length?this.each(("function"==typeof t?function(t,n){return function(){Ar(this,t).duration=+n.apply(this,arguments)}}:function(t,n){return n=+n,function(){Ar(this,t).duration=n}})(n,t)):Tr(this.node(),n).duration},ease:function(t){var n=this._id;return arguments.length?this.each(function(t,n){if("function"!=typeof n)throw new Error;return function(){Ar(this,t).ease=n}}(n,t)):Tr(this.node(),n).ease}};var qr=function t(n){function e(t){return Math.pow(t,n)}return n=+n,e.exponent=t,e}(3),Or=function t(n){function e(t){return 1-Math.pow(1-t,n)}return n=+n,e.exponent=t,e}(3),Yr=function t(n){function e(t){return((t*=2)<=1?Math.pow(t,n):2-Math.pow(2-t,n))/2}return n=+n,e.exponent=t,e}(3),Br=Math.PI,Fr=Br/2;function Ir(t){return(1-Math.cos(Br*t))/2}function Hr(t){return((t*=2)<=1?Math.pow(2,10*t-10):2-Math.pow(2,10-10*t))/2}function jr(t){return((t*=2)<=1?1-Math.sqrt(1-t*t):Math.sqrt(1-(t-=2)*t)+1)/2}var Xr=4/11,Gr=6/11,Vr=8/11,Wr=.75,$r=9/11,Zr=10/11,Qr=.9375,Jr=21/22,Kr=63/64,ti=1/Xr/Xr;function ni(t){return(t=+t)<Xr?ti*t*t:t<Vr?ti*(t-=Gr)*t+Wr:t<Zr?ti*(t-=$r)*t+Qr:ti*(t-=Jr)*t+Kr}var ei=1.70158,ri=function t(n){function e(t){return t*t*((n+1)*t-n)}return n=+n,e.overshoot=t,e}(ei),ii=function t(n){function e(t){return--t*t*((n+1)*t+n)+1}return n=+n,e.overshoot=t,e}(ei),oi=function t(n){function e(t){return((t*=2)<1?t*t*((n+1)*t-n):(t-=2)*t*((n+1)*t+n)+2)/2}return n=+n,e.overshoot=t,e}(ei),ai=2*Math.PI,ui=function n(e,r){var i=Math.asin(1/(e=Math.max(1,e)))*(r/=ai);function t(t){return e*Math.pow(2,10*--t)*Math.sin((i-t)/r)}return t.amplitude=function(t){return n(t,r*ai)},t.period=function(t){return n(e,t)},t}(1,.3),fi=function n(e,r){var i=Math.asin(1/(e=Math.max(1,e)))*(r/=ai);function t(t){return 1-e*Math.pow(2,-10*(t=+t))*Math.sin((t+i)/r)}return t.amplitude=function(t){return n(t,r*ai)},t.period=function(t){return n(e,t)},t}(1,.3),ci=function n(e,r){var i=Math.asin(1/(e=Math.max(1,e)))*(r/=ai);function t(t){return((t=2*t-1)<0?e*Math.pow(2,10*t)*Math.sin((i-t)/r):2-e*Math.pow(2,-10*t)*Math.sin((i+t)/r))/2}return t.amplitude=function(t){return n(t,r*ai)},t.period=function(t){return n(e,t)},t}(1,.3),si={time:null,delay:0,duration:250,ease:Ur};function li(t,n){for(var e;!(e=t.__transition)||!(e=e[n]);)if(!(t=t.parentNode))return si.time=ir(),si;return e}Lt.prototype.interrupt=function(t){return this.each(function(){Nr(this,t)})},Lt.prototype.transition=function(t){var n,e;t=t instanceof Pr?(n=t._id,t._name):(n=Rr(),(e=si).time=ir(),null==t?null:t+"");for(var r=this._groups,i=r.length,o=0;o<i;++o)for(var a,u=r[o],f=u.length,c=0;c<f;++c)(a=u[c])&&wr(a,t,n,c,u,e||li(a,n));return new Pr(r,this._parents,t,n)};var hi=[null];function di(t){return function(){return t}}function pi(t,n,e){this.target=t,this.type=n,this.selection=e}function vi(){B.event.stopImmediatePropagation()}function gi(){B.event.preventDefault(),B.event.stopImmediatePropagation()}var yi={name:"drag"},_i={name:"space"},bi={name:"handle"},mi={name:"center"},xi={name:"x",handles:["e","w"].map(ki),input:function(t,n){return t&&[[t[0],n[0][1]],[t[1],n[1][1]]]},output:function(t){return t&&[t[0][0],t[1][0]]}},wi={name:"y",handles:["n","s"].map(ki),input:function(t,n){return t&&[[n[0][0],t[0]],[n[1][0],t[1]]]},output:function(t){return t&&[t[0][1],t[1][1]]}},Mi={name:"xy",handles:["n","e","s","w","nw","ne","se","sw"].map(ki),input:function(t){return t},output:function(t){return t}},Ai={overlay:"crosshair",selection:"move",n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},Ti={e:"w",w:"e",nw:"ne",ne:"nw",se:"sw",sw:"se"},Ni={n:"s",s:"n",nw:"sw",ne:"se",se:"ne",sw:"nw"},Si={overlay:1,selection:1,n:null,e:1,s:null,w:-1,nw:-1,ne:1,se:1,sw:-1},Ei={overlay:1,selection:1,n:-1,e:null,s:1,w:null,nw:-1,ne:-1,se:1,sw:1};function ki(t){return{type:t}}function Ci(){return!B.event.button}function Pi(){var t=this.ownerSVGElement||this;return[[0,0],[t.width.baseVal.value,t.height.baseVal.value]]}function zi(t){for(;!t.__brush;)if(!(t=t.parentNode))return;return t.__brush}function Ri(t){return t[0][0]===t[1][0]||t[0][1]===t[1][1]}function Li(D){var U,n=Pi,q=Ci,e=I(i,"start","brush","end"),r=6;function i(t){var n=t.property("__brush",u).selectAll(".overlay").data([ki("overlay")]);n.enter().append("rect").attr("class","overlay").attr("pointer-events","all").attr("cursor",Ai.overlay).merge(n).each(function(){var t=zi(this).extent;Dt(this).attr("x",t[0][0]).attr("y",t[0][1]).attr("width",t[1][0]-t[0][0]).attr("height",t[1][1]-t[0][1])}),t.selectAll(".selection").data([ki("selection")]).enter().append("rect").attr("class","selection").attr("cursor",Ai.selection).attr("fill","#777").attr("fill-opacity",.3).attr("stroke","#fff").attr("shape-rendering","crispEdges");var e=t.selectAll(".handle").data(D.handles,function(t){return t.type});e.exit().remove(),e.enter().append("rect").attr("class",function(t){return"handle handle--"+t.type}).attr("cursor",function(t){return Ai[t.type]}),t.each(O).attr("fill","none").attr("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush touchstart.brush",a)}function O(){var t=Dt(this),n=zi(this).selection;n?(t.selectAll(".selection").style("display",null).attr("x",n[0][0]).attr("y",n[0][1]).attr("width",n[1][0]-n[0][0]).attr("height",n[1][1]-n[0][1]),t.selectAll(".handle").style("display",null).attr("x",function(t){return"e"===t.type[t.type.length-1]?n[1][0]-r/2:n[0][0]-r/2}).attr("y",function(t){return"s"===t.type[0]?n[1][1]-r/2:n[0][1]-r/2}).attr("width",function(t){return"n"===t.type||"s"===t.type?n[1][0]-n[0][0]+r:r}).attr("height",function(t){return"e"===t.type||"w"===t.type?n[1][1]-n[0][1]+r:r})):t.selectAll(".selection,.handle").style("display","none").attr("x",null).attr("y",null).attr("width",null).attr("height",null)}function Y(t,n){return t.__brush.emitter||new o(t,n)}function o(t,n){this.that=t,this.args=n,this.state=t.__brush,this.active=0}function a(){if(B.event.touches){if(B.event.changedTouches.length<B.event.touches.length)return gi()}else if(U)return;if(q.apply(this,arguments)){var n,e,r,i,o,a,u,f,c,s,l,h,d,p=this,v=B.event.target.__data__.type,g="selection"===(B.event.metaKey?v="overlay":v)?yi:B.event.altKey?mi:bi,y=D===wi?null:Si[v],_=D===xi?null:Ei[v],b=zi(p),t=b.extent,m=b.selection,x=t[0][0],w=t[0][1],M=t[1][0],A=t[1][1],T=y&&_&&B.event.shiftKey,N=Ft(p),S=N,E=Y(p,arguments).beforestart();"overlay"===v?b.selection=m=[[n=D===wi?x:N[0],r=D===xi?w:N[1]],[o=D===wi?M:n,u=D===xi?A:r]]:(n=m[0][0],r=m[0][1],o=m[1][0],u=m[1][1]),e=n,i=r,a=o,f=u;var k=Dt(p).attr("pointer-events","none"),C=k.selectAll(".overlay").attr("cursor",Ai[v]);if(B.event.touches)k.on("touchmove.brush",z,!0).on("touchend.brush touchcancel.brush",L,!0);else{var P=Dt(B.event.view).on("keydown.brush",function(){switch(B.event.keyCode){case 16:T=y&&_;break;case 18:g===bi&&(y&&(o=a-c*y,n=e+c*y),_&&(u=f-s*_,r=i+s*_),g=mi,R());break;case 32:g!==bi&&g!==mi||(y<0?o=a-c:0<y&&(n=e-c),_<0?u=f-s:0<_&&(r=i-s),g=_i,C.attr("cursor",Ai.selection),R());break;default:return}gi()},!0).on("keyup.brush",function(){switch(B.event.keyCode){case 16:T&&(h=d=T=!1,R());break;case 18:g===mi&&(y<0?o=a:0<y&&(n=e),_<0?u=f:0<_&&(r=i),g=bi,R());break;case 32:g===_i&&(g=B.event.altKey?(y&&(o=a-c*y,n=e+c*y),_&&(u=f-s*_,r=i+s*_),mi):(y<0?o=a:0<y&&(n=e),_<0?u=f:0<_&&(r=i),bi),C.attr("cursor",Ai[v]),R());break;default:return}gi()},!0).on("mousemove.brush",z,!0).on("mouseup.brush",L,!0);Xt(B.event.view)}vi(),Nr(p),O.call(p),E.start()}function z(){var t=Ft(p);!T||h||d||(Math.abs(t[0]-S[0])>Math.abs(t[1]-S[1])?d=!0:h=!0),S=t,l=!0,gi(),R()}function R(){var t;switch(c=S[0]-N[0],s=S[1]-N[1],g){case _i:case yi:y&&(c=Math.max(x-n,Math.min(M-o,c)),e=n+c,a=o+c),_&&(s=Math.max(w-r,Math.min(A-u,s)),i=r+s,f=u+s);break;case bi:y<0?(c=Math.max(x-n,Math.min(M-n,c)),e=n+c,a=o):0<y&&(c=Math.max(x-o,Math.min(M-o,c)),e=n,a=o+c),_<0?(s=Math.max(w-r,Math.min(A-r,s)),i=r+s,f=u):0<_&&(s=Math.max(w-u,Math.min(A-u,s)),i=r,f=u+s);break;case mi:y&&(e=Math.max(x,Math.min(M,n-c*y)),a=Math.max(x,Math.min(M,o+c*y))),_&&(i=Math.max(w,Math.min(A,r-s*_)),f=Math.max(w,Math.min(A,u+s*_)))}a<e&&(y*=-1,t=n,n=o,o=t,t=e,e=a,a=t,v in Ti&&C.attr("cursor",Ai[v=Ti[v]])),f<i&&(_*=-1,t=r,r=u,u=t,t=i,i=f,f=t,v in Ni&&C.attr("cursor",Ai[v=Ni[v]])),b.selection&&(m=b.selection),h&&(e=m[0][0],a=m[1][0]),d&&(i=m[0][1],f=m[1][1]),m[0][0]===e&&m[0][1]===i&&m[1][0]===a&&m[1][1]===f||(b.selection=[[e,i],[a,f]],O.call(p),E.brush())}function L(){if(vi(),B.event.touches){if(B.event.touches.length)return;U&&clearTimeout(U),U=setTimeout(function(){U=null},500),k.on("touchmove.brush touchend.brush touchcancel.brush",null)}else Gt(B.event.view,l),P.on("keydown.brush keyup.brush mousemove.brush mouseup.brush",null);k.attr("pointer-events","all"),C.attr("cursor",Ai.overlay),b.selection&&(m=b.selection),Ri(m)&&(b.selection=null,O.call(p)),E.end()}}function u(){var t=this.__brush||{selection:null};return t.extent=n.apply(this,arguments),t.dim=D,t}return i.move=function(t,u){t.selection?t.on("start.brush",function(){Y(this,arguments).beforestart().start()}).on("interrupt.brush end.brush",function(){Y(this,arguments).end()}).tween("brush",function(){var n=this,e=n.__brush,r=Y(n,arguments),t=e.selection,i=D.input("function"==typeof u?u.apply(this,arguments):u,e.extent),o=me(t,i);function a(t){e.selection=1===t&&Ri(i)?null:o(t),O.call(n),r.brush()}return t&&i?a:a(1)}):t.each(function(){var t=this,n=arguments,e=t.__brush,r=D.input("function"==typeof u?u.apply(t,n):u,e.extent),i=Y(t,n).beforestart();Nr(t),e.selection=null==r||Ri(r)?null:r,O.call(t),i.start().brush().end()})},o.prototype={beforestart:function(){return 1==++this.active&&((this.state.emitter=this).starting=!0),this},start:function(){return this.starting&&(this.starting=!1,this.emit("start")),this},brush:function(){return this.emit("brush"),this},end:function(){return 0==--this.active&&(delete this.state.emitter,this.emit("end")),this},emit:function(t){Ct(new pi(i,t,D.output(this.state.selection)),e.apply,e,[t,this.that,this.args])}},i.extent=function(t){return arguments.length?(n="function"==typeof t?t:di([[+t[0][0],+t[0][1]],[+t[1][0],+t[1][1]]]),i):n},i.filter=function(t){return arguments.length?(q="function"==typeof t?t:di(!!t),i):q},i.handleSize=function(t){return arguments.length?(r=+t,i):r},i.on=function(){var t=e.on.apply(e,arguments);return t===e?i:t},i}var Di=Math.cos,Ui=Math.sin,qi=Math.PI,Oi=qi/2,Yi=2*qi,Bi=Math.max;var Fi=Array.prototype.slice;function Ii(t){return function(){return t}}var Hi=Math.PI,ji=2*Hi,Xi=1e-6,Gi=ji-Xi;function Vi(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function Wi(){return new Vi}function $i(t){return t.source}function Zi(t){return t.target}function Qi(t){return t.radius}function Ji(t){return t.startAngle}function Ki(t){return t.endAngle}Vi.prototype=Wi.prototype={constructor:Vi,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,f=r-n,c=o-t,s=a-n,l=c*c+s*s;if(i<0)throw new Error("negative radius: "+i);if(null===this._x1)this._+="M"+(this._x1=t)+","+(this._y1=n);else if(Xi<l)if(Math.abs(s*u-f*c)>Xi&&i){var h=e-o,d=r-a,p=u*u+f*f,v=h*h+d*d,g=Math.sqrt(p),y=Math.sqrt(l),_=i*Math.tan((Hi-Math.acos((p+l-v)/(2*g*y)))/2),b=_/y,m=_/g;Math.abs(b-1)>Xi&&(this._+="L"+(t+b*c)+","+(n+b*s)),this._+="A"+i+","+i+",0,0,"+ +(c*d<s*h)+","+(this._x1=t+m*u)+","+(this._y1=n+m*f)}else this._+="L"+(this._x1=t)+","+(this._y1=n);else;},arc:function(t,n,e,r,i,o){t=+t,n=+n;var a=(e=+e)*Math.cos(r),u=e*Math.sin(r),f=t+a,c=n+u,s=1^o,l=o?r-i:i-r;if(e<0)throw new Error("negative radius: "+e);null===this._x1?this._+="M"+f+","+c:(Math.abs(this._x1-f)>Xi||Math.abs(this._y1-c)>Xi)&&(this._+="L"+f+","+c),e&&(l<0&&(l=l%ji+ji),Gi<l?this._+="A"+e+","+e+",0,1,"+s+","+(t-a)+","+(n-u)+"A"+e+","+e+",0,1,"+s+","+(this._x1=f)+","+(this._y1=c):Xi<l&&(this._+="A"+e+","+e+",0,"+ +(Hi<=l)+","+s+","+(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._}};var to="$";function no(){}function eo(t,n){var e=new no;if(t instanceof no)t.each(function(t,n){e.set(n,t)});else if(Array.isArray(t)){var r,i=-1,o=t.length;if(null==n)for(;++i<o;)e.set(i,t[i]);else for(;++i<o;)e.set(n(r=t[i],i,t),r)}else if(t)for(var a in t)e.set(a,t[a]);return e}function ro(){return{}}function io(t,n,e){t[n]=e}function oo(){return eo()}function ao(t,n,e){t.set(n,e)}function uo(){}no.prototype=eo.prototype={constructor:no,has:function(t){return to+t in this},get:function(t){return this[to+t]},set:function(t,n){return this[to+t]=n,this},remove:function(t){var n=to+t;return n in this&&delete this[n]},clear:function(){for(var t in this)t[0]===to&&delete this[t]},keys:function(){var t=[];for(var n in this)n[0]===to&&t.push(n.slice(1));return t},values:function(){var t=[];for(var n in this)n[0]===to&&t.push(this[n]);return t},entries:function(){var t=[];for(var n in this)n[0]===to&&t.push({key:n.slice(1),value:this[n]});return t},size:function(){var t=0;for(var n in this)n[0]===to&&++t;return t},empty:function(){for(var t in this)if(t[0]===to)return!1;return!0},each:function(t){for(var n in this)n[0]===to&&t(this[n],n.slice(1),this)}};var fo=eo.prototype;function co(t,n){var e=new uo;if(t instanceof uo)t.each(function(t){e.add(t)});else if(t){var r=-1,i=t.length;if(null==n)for(;++r<i;)e.add(t[r]);else for(;++r<i;)e.add(n(t[r],r,t))}return e}uo.prototype=co.prototype={constructor:uo,has:fo.has,add:function(t){return this[to+(t+="")]=t,this},remove:fo.remove,clear:fo.clear,values:fo.keys,size:fo.size,empty:fo.empty,each:fo.each};var so=Array.prototype.slice;function lo(t,n){return t-n}function ho(t){return function(){return t}}function po(t,n){for(var e,r=-1,i=n.length;++r<i;)if(e=vo(t,n[r]))return e;return 0}function vo(t,n){for(var e,r,i,o,a,u,f,c,s,l,h=n[0],d=n[1],p=-1,v=0,g=t.length,y=g-1;v<g;y=v++){var _=t[v],b=_[0],m=_[1],x=t[y],w=x[0],M=x[1];if(l=void 0,o=f=_,u=s=n,((a=c=x)[0]-o[0])*(u[1]-o[1])==(u[0]-o[0])*(a[1]-o[1])&&(e=f[l=+(f[0]===c[0])],r=s[l],i=c[l],e<=r&&r<=i||i<=r&&r<=e))return 0;d<m!=d<M&&h<(w-b)*(d-m)/(M-m)+b&&(p=-p)}return p}function go(){}var yo=[[],[[[1,1.5],[.5,1]]],[[[1.5,1],[1,1.5]]],[[[1.5,1],[.5,1]]],[[[1,.5],[1.5,1]]],[[[1,1.5],[.5,1]],[[1,.5],[1.5,1]]],[[[1,.5],[1,1.5]]],[[[1,.5],[.5,1]]],[[[.5,1],[1,.5]]],[[[1,1.5],[1,.5]]],[[[.5,1],[1,.5]],[[1.5,1],[1,1.5]]],[[[1.5,1],[1,.5]]],[[[.5,1],[1.5,1]]],[[[1,1.5],[1.5,1]]],[[[.5,1],[1,1.5]]],[]];function _o(){var h=1,d=1,o=b,a=n;function r(n){var t=o(n);if(Array.isArray(t))t=t.slice().sort(lo);else{var e=f(n),r=e[0],i=e[1];t=N(r,i,t),t=T(Math.floor(r/t)*t,Math.floor(i/t)*t,t)}return t.map(function(t){return u(n,t)})}function u(n,e){var i=[],r=[];return function(t,n,u){var f,c,e,r,i,o,s=new Array,l=new Array;f=c=-1,r=t[0]>=n,yo[r<<1].forEach(a);for(;++f<h-1;)e=r,r=t[f+1]>=n,yo[e|r<<1].forEach(a);yo[r<<0].forEach(a);for(;++c<d-1;){for(f=-1,r=t[c*h+h]>=n,i=t[c*h]>=n,yo[r<<1|i<<2].forEach(a);++f<h-1;)e=r,r=t[c*h+h+f+1]>=n,o=i,i=t[c*h+f+1]>=n,yo[e|r<<1|i<<2|o<<3].forEach(a);yo[r|i<<3].forEach(a)}f=-1,i=t[c*h]>=n,yo[i<<2].forEach(a);for(;++f<h-1;)o=i,i=t[c*h+f+1]>=n,yo[i<<2|o<<3].forEach(a);function a(t){var n,e,r=[t[0][0]+f,t[0][1]+c],i=[t[1][0]+f,t[1][1]+c],o=p(r),a=p(i);(n=l[o])?(e=s[a])?(delete l[n.end],delete s[e.start],n===e?(n.ring.push(i),u(n.ring)):s[n.start]=l[e.end]={start:n.start,end:e.end,ring:n.ring.concat(e.ring)}):(delete l[n.end],n.ring.push(i),l[n.end=a]=n):(n=s[a])?(e=l[o])?(delete s[n.start],delete l[e.end],n===e?(n.ring.push(i),u(n.ring)):s[e.start]=l[n.end]={start:e.start,end:n.end,ring:e.ring.concat(n.ring)}):(delete s[n.start],n.ring.unshift(r),s[n.start=o]=n):s[o]=l[a]={start:o,end:a,ring:[r,i]}}yo[i<<3].forEach(a)}(n,e,function(t){a(t,n,e),0<function(t){for(var n=0,e=t.length,r=t[e-1][1]*t[0][0]-t[e-1][0]*t[0][1];++n<e;)r+=t[n-1][1]*t[n][0]-t[n-1][0]*t[n][1];return r}(t)?i.push([t]):r.push(t)}),r.forEach(function(t){for(var n,e=0,r=i.length;e<r;++e)if(-1!==po((n=i[e])[0],t))return void n.push(t)}),{type:"MultiPolygon",value:e,coordinates:i}}function p(t){return 2*t[0]+t[1]*(h+1)*4}function n(t,u,f){t.forEach(function(t){var n,e=t[0],r=t[1],i=0|e,o=0|r,a=u[o*h+i];0<e&&e<h&&i===e&&(n=u[o*h+i-1],t[0]=e+(f-n)/(a-n)-.5),0<r&&r<d&&o===r&&(n=u[(o-1)*h+i],t[1]=r+(f-n)/(a-n)-.5)})}return r.contour=u,r.size=function(t){if(!arguments.length)return[h,d];var n=Math.ceil(t[0]),e=Math.ceil(t[1]);if(!(0<n&&0<e))throw new Error("invalid size");return h=n,d=e,r},r.thresholds=function(t){return arguments.length?(o="function"==typeof t?t:Array.isArray(t)?ho(so.call(t)):ho(t),r):o},r.smooth=function(t){return arguments.length?(a=t?n:go,r):a===n},r}function bo(t,n,e){for(var r=t.width,i=t.height,o=1+(e<<1),a=0;a<i;++a)for(var u=0,f=0;u<r+e;++u)u<r&&(f+=t.data[u+a*r]),e<=u&&(o<=u&&(f-=t.data[u-o+a*r]),n.data[u-e+a*r]=f/Math.min(u+1,r-1+o-u,o))}function mo(t,n,e){for(var r=t.width,i=t.height,o=1+(e<<1),a=0;a<r;++a)for(var u=0,f=0;u<i+e;++u)u<i&&(f+=t.data[a+u*r]),e<=u&&(o<=u&&(f-=t.data[a+(u-o)*r]),n.data[a+(u-e)*r]=f/Math.min(u+1,i-1+o-u,o))}function xo(t){return t[0]}function wo(t){return t[1]}function Mo(){return 1}var Ao={},To={},No=34,So=10,Eo=13;function ko(t){return new Function("d","return {"+t.map(function(t,n){return JSON.stringify(t)+": d["+n+"]"}).join(",")+"}")}function Co(o){var n=new RegExp('["'+o+"\n\r]"),l=o.charCodeAt(0);function e(r,t){var n,e=[],i=r.length,o=0,a=0,u=i<=0,f=!1;function c(){if(u)return To;if(f)return f=!1,Ao;var t,n,e=o;if(r.charCodeAt(e)===No){for(;o++<i&&r.charCodeAt(o)!==No||r.charCodeAt(++o)===No;);return(t=o)>=i?u=!0:(n=r.charCodeAt(o++))===So?f=!0:n===Eo&&(f=!0,r.charCodeAt(o)===So&&++o),r.slice(e+1,t-1).replace(/""/g,'"')}for(;o<i;){if((n=r.charCodeAt(t=o++))===So)f=!0;else if(n===Eo)f=!0,r.charCodeAt(o)===So&&++o;else if(n!==l)continue;return r.slice(e,t)}return u=!0,r.slice(e,i)}for(r.charCodeAt(i-1)===So&&--i,r.charCodeAt(i-1)===Eo&&--i;(n=c())!==To;){for(var s=[];n!==Ao&&n!==To;)s.push(n),n=c();t&&null==(s=t(s,a++))||e.push(s)}return e}function r(t){return t.map(a).join(o)}function a(t){return null==t?"":n.test(t+="")?'"'+t.replace(/"/g,'""')+'"':t}return{parse:function(t,o){var a,u,n=e(t,function(t,n){if(a)return a(t,n-1);var e,r,i;u=t,a=o?(r=o,i=ko(e=t),function(t,n){return r(i(t),n,e)}):ko(t)});return n.columns=u||[],n},parseRows:e,format:function(t,e){var n,r,i;return null==e&&(n=t,r=Object.create(null),i=[],n.forEach(function(t){for(var n in t)n in r||i.push(r[n]=n)}),e=i),[e.map(a).join(o)].concat(t.map(function(n){return e.map(function(t){return a(n[t])}).join(o)})).join("\n")},formatRows:function(t){return t.map(r).join("\n")}}}var Po=Co(","),zo=Po.parse,Ro=Po.parseRows,Lo=Po.format,Do=Po.formatRows,Uo=Co("\t"),qo=Uo.parse,Oo=Uo.parseRows,Yo=Uo.format,Bo=Uo.formatRows;function Fo(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.blob()}function Io(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.arrayBuffer()}function Ho(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.text()}function jo(t,n){return fetch(t,n).then(Ho)}function Xo(r){return function(t,n,e){return 2===arguments.length&&"function"==typeof n&&(e=n,n=void 0),jo(t,n).then(function(t){return r(t,e)})}}var Go=Xo(zo),Vo=Xo(qo);function Wo(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.json()}function $o(e){return function(t,n){return jo(t,n).then(function(t){return(new DOMParser).parseFromString(t,e)})}}var Zo=$o("application/xml"),Qo=$o("text/html"),Jo=$o("image/svg+xml");function Ko(t){return function(){return t}}function ta(){return 1e-6*(Math.random()-.5)}function na(t,n,e,r){if(isNaN(n)||isNaN(e))return t;var i,o,a,u,f,c,s,l,h,d=t._root,p={data:r},v=t._x0,g=t._y0,y=t._x1,_=t._y1;if(!d)return t._root=p,t;for(;d.length;)if((c=n>=(o=(v+y)/2))?v=o:y=o,(s=e>=(a=(g+_)/2))?g=a:_=a,!(d=(i=d)[l=s<<1|c]))return i[l]=p,t;if(u=+t._x.call(null,d.data),f=+t._y.call(null,d.data),n===u&&e===f)return p.next=d,i?i[l]=p:t._root=p,t;for(;i=i?i[l]=new Array(4):t._root=new Array(4),(c=n>=(o=(v+y)/2))?v=o:y=o,(s=e>=(a=(g+_)/2))?g=a:_=a,(l=s<<1|c)==(h=(a<=f)<<1|o<=u););return i[h]=d,i[l]=p,t}function ea(t,n,e,r,i){this.node=t,this.x0=n,this.y0=e,this.x1=r,this.y1=i}function ra(t){return t[0]}function ia(t){return t[1]}function oa(t,n,e){var r=new aa(null==n?ra:n,null==e?ia:e,NaN,NaN,NaN,NaN);return null==t?r:r.addAll(t)}function aa(t,n,e,r,i,o){this._x=t,this._y=n,this._x0=e,this._y0=r,this._x1=i,this._y1=o,this._root=void 0}function ua(t){for(var n={data:t.data},e=n;t=t.next;)e=e.next={data:t.data};return n}var fa=oa.prototype=aa.prototype;function ca(t){return t.x+t.vx}function sa(t){return t.y+t.vy}function la(t){return t.index}function ha(t,n){var e=t.get(n);if(!e)throw new Error("missing: "+n);return e}function da(t){return t.x}function pa(t){return t.y}fa.copy=function(){var t,n,e=new aa(this._x,this._y,this._x0,this._y0,this._x1,this._y1),r=this._root;if(!r)return e;if(!r.length)return e._root=ua(r),e;for(t=[{source:r,target:e._root=new Array(4)}];r=t.pop();)for(var i=0;i<4;++i)(n=r.source[i])&&(n.length?t.push({source:n,target:r.target[i]=new Array(4)}):r.target[i]=ua(n));return e},fa.add=function(t){var n=+this._x.call(null,t),e=+this._y.call(null,t);return na(this.cover(n,e),n,e,t)},fa.addAll=function(t){var n,e,r,i,o=t.length,a=new Array(o),u=new Array(o),f=1/0,c=1/0,s=-1/0,l=-1/0;for(e=0;e<o;++e)isNaN(r=+this._x.call(null,n=t[e]))||isNaN(i=+this._y.call(null,n))||((a[e]=r)<f&&(f=r),s<r&&(s=r),(u[e]=i)<c&&(c=i),l<i&&(l=i));for(s<f&&(f=this._x0,s=this._x1),l<c&&(c=this._y0,l=this._y1),this.cover(f,c).cover(s,l),e=0;e<o;++e)na(this,a[e],u[e],t[e]);return this},fa.cover=function(t,n){if(isNaN(t=+t)||isNaN(n=+n))return this;var e=this._x0,r=this._y0,i=this._x1,o=this._y1;if(isNaN(e))i=(e=Math.floor(t))+1,o=(r=Math.floor(n))+1;else{if(!(t<e||i<t||n<r||o<n))return this;var a,u,f=i-e,c=this._root;switch(u=(n<(r+o)/2)<<1|t<(e+i)/2){case 0:for(;(a=new Array(4))[u]=c,c=a,o=r+(f*=2),(i=e+f)<t||o<n;);break;case 1:for(;(a=new Array(4))[u]=c,c=a,o=r+(f*=2),t<(e=i-f)||o<n;);break;case 2:for(;(a=new Array(4))[u]=c,c=a,r=o-(f*=2),(i=e+f)<t||n<r;);break;case 3:for(;(a=new Array(4))[u]=c,c=a,r=o-(f*=2),t<(e=i-f)||n<r;);}this._root&&this._root.length&&(this._root=c)}return this._x0=e,this._y0=r,this._x1=i,this._y1=o,this},fa.data=function(){var n=[];return this.visit(function(t){if(!t.length)for(;n.push(t.data),t=t.next;);}),n},fa.extent=function(t){return arguments.length?this.cover(+t[0][0],+t[0][1]).cover(+t[1][0],+t[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]},fa.find=function(t,n,e){var r,i,o,a,u,f,c,s=this._x0,l=this._y0,h=this._x1,d=this._y1,p=[],v=this._root;for(v&&p.push(new ea(v,s,l,h,d)),null==e?e=1/0:(s=t-e,l=n-e,h=t+e,d=n+e,e*=e);f=p.pop();)if(!(!(v=f.node)||(i=f.x0)>h||(o=f.y0)>d||(a=f.x1)<s||(u=f.y1)<l))if(v.length){var g=(i+a)/2,y=(o+u)/2;p.push(new ea(v[3],g,y,a,u),new ea(v[2],i,y,g,u),new ea(v[1],g,o,a,y),new ea(v[0],i,o,g,y)),(c=(y<=n)<<1|g<=t)&&(f=p[p.length-1],p[p.length-1]=p[p.length-1-c],p[p.length-1-c]=f)}else{var _=t-+this._x.call(null,v.data),b=n-+this._y.call(null,v.data),m=_*_+b*b;if(m<e){var x=Math.sqrt(e=m);s=t-x,l=n-x,h=t+x,d=n+x,r=v.data}}return r},fa.remove=function(t){if(isNaN(o=+this._x.call(null,t))||isNaN(a=+this._y.call(null,t)))return this;var n,e,r,i,o,a,u,f,c,s,l,h,d=this._root,p=this._x0,v=this._y0,g=this._x1,y=this._y1;if(!d)return this;if(d.length)for(;;){if((c=o>=(u=(p+g)/2))?p=u:g=u,(s=a>=(f=(v+y)/2))?v=f:y=f,!(d=(n=d)[l=s<<1|c]))return this;if(!d.length)break;(n[l+1&3]||n[l+2&3]||n[l+3&3])&&(e=n,h=l)}for(;d.data!==t;)if(!(d=(r=d).next))return this;return(i=d.next)&&delete d.next,r?i?r.next=i:delete r.next:n?(i?n[l]=i:delete n[l],(d=n[0]||n[1]||n[2]||n[3])&&d===(n[3]||n[2]||n[1]||n[0])&&!d.length&&(e?e[h]=d:this._root=d)):this._root=i,this},fa.removeAll=function(t){for(var n=0,e=t.length;n<e;++n)this.remove(t[n]);return this},fa.root=function(){return this._root},fa.size=function(){var n=0;return this.visit(function(t){if(!t.length)for(;++n,t=t.next;);}),n},fa.visit=function(t){var n,e,r,i,o,a,u=[],f=this._root;for(f&&u.push(new ea(f,this._x0,this._y0,this._x1,this._y1));n=u.pop();)if(!t(f=n.node,r=n.x0,i=n.y0,o=n.x1,a=n.y1)&&f.length){var c=(r+o)/2,s=(i+a)/2;(e=f[3])&&u.push(new ea(e,c,s,o,a)),(e=f[2])&&u.push(new ea(e,r,s,c,a)),(e=f[1])&&u.push(new ea(e,c,i,o,s)),(e=f[0])&&u.push(new ea(e,r,i,c,s))}return this},fa.visitAfter=function(t){var n,e=[],r=[];for(this._root&&e.push(new ea(this._root,this._x0,this._y0,this._x1,this._y1));n=e.pop();){var i=n.node;if(i.length){var o,a=n.x0,u=n.y0,f=n.x1,c=n.y1,s=(a+f)/2,l=(u+c)/2;(o=i[0])&&e.push(new ea(o,a,u,s,l)),(o=i[1])&&e.push(new ea(o,s,u,f,l)),(o=i[2])&&e.push(new ea(o,a,l,s,c)),(o=i[3])&&e.push(new ea(o,s,l,f,c))}r.push(n)}for(;n=r.pop();)t(n.node,n.x0,n.y0,n.x1,n.y1);return this},fa.x=function(t){return arguments.length?(this._x=t,this):this._x},fa.y=function(t){return arguments.length?(this._y=t,this):this._y};var va=Math.PI*(3-Math.sqrt(5));function ga(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[1<r.length?r[0]+r.slice(2):r,+t.slice(e+1)]}function ya(t){return(t=ga(Math.abs(t)))?t[1]:NaN}var _a,ba=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function ma(t){return new xa(t)}function xa(t){if(!(n=ba.exec(t)))throw new Error("invalid format: "+t);var n;this.fill=n[1]||" ",this.align=n[2]||">",this.sign=n[3]||"-",this.symbol=n[4]||"",this.zero=!!n[5],this.width=n[6]&&+n[6],this.comma=!!n[7],this.precision=n[8]&&+n[8].slice(1),this.trim=!!n[9],this.type=n[10]||""}function wa(t,n){var e=ga(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")}ma.prototype=xa.prototype,xa.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(null==this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(null==this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};var Ma={"%":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 wa(100*t,n)},r:wa,s:function(t,n){var e=ga(t,n);if(!e)return t+"";var r=e[0],i=e[1],o=i-(_a=3*Math.max(-8,Math.min(8,Math.floor(i/3))))+1,a=r.length;return o===a?r:a<o?r+new Array(o-a+1).join("0"):0<o?r.slice(0,o)+"."+r.slice(o):"0."+new Array(1-o).join("0")+ga(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 Aa(t){return t}var Ta,Na=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function Sa(t){var n,u,f,w=t.grouping&&t.thousands?(u=t.grouping,f=t.thousands,function(t,n){for(var e=t.length,r=[],i=0,o=u[0],a=0;0<e&&0<o&&(n<a+o+1&&(o=Math.max(1,n-a)),r.push(t.substring(e-=o,e+o)),!((a+=o+1)>n));)o=u[i=(i+1)%u.length];return r.reverse().join(f)}):Aa,r=t.currency,M=t.decimal,A=t.numerals?(n=t.numerals,function(t){return t.replace(/[0-9]/g,function(t){return n[+t]})}):Aa,i=t.percent||"%";function a(t){var c=(t=ma(t)).fill,s=t.align,l=t.sign,n=t.symbol,h=t.zero,d=t.width,p=t.comma,v=t.precision,g=t.trim,y=t.type;"n"===y?(p=!0,y="g"):Ma[y]||(null==v&&(v=12),g=!0,y="g"),(h||"0"===c&&"="===s)&&(h=!0,c="0",s="=");var _="$"===n?r[0]:"#"===n&&/[boxX]/.test(y)?"0"+y.toLowerCase():"",b="$"===n?r[1]:/[%p]/.test(y)?i:"",m=Ma[y],x=/[defgprs%]/.test(y);function e(t){var n,e,r,i=_,o=b;if("c"===y)o=m(t)+o,t="";else{var a=(t=+t)<0;if(t=m(Math.abs(t),v),g&&(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(0<i){if(!+t[r])break t;i=0}}return 0<i?t.slice(0,i)+t.slice(n+1):t}(t)),a&&0==+t&&(a=!1),i=(a?"("===l?l:"-":"-"===l||"("===l?"":l)+i,o=("s"===y?Na[8+_a/3]:"")+o+(a&&"("===l?")":""),x)for(n=-1,e=t.length;++n<e;)if((r=t.charCodeAt(n))<48||57<r){o=(46===r?M+t.slice(n+1):t.slice(n))+o,t=t.slice(0,n);break}}p&&!h&&(t=w(t,1/0));var u=i.length+t.length+o.length,f=u<d?new Array(d-u+1).join(c):"";switch(p&&h&&(t=w(f+t,f.length?d-o.length:1/0),f=""),s){case"<":t=i+t+o+f;break;case"=":t=i+f+t+o;break;case"^":t=f.slice(0,u=f.length>>1)+i+t+o+f.slice(u);break;default:t=f+i+t+o}return A(t)}return v=null==v?6:/[gprs]/.test(y)?Math.max(1,Math.min(21,v)):Math.max(0,Math.min(20,v)),e.toString=function(){return t+""},e}return{format:a,formatPrefix:function(t,n){var e=a(((t=ma(t)).type="f",t)),r=3*Math.max(-8,Math.min(8,Math.floor(ya(n)/3))),i=Math.pow(10,-r),o=Na[8+r/3];return function(t){return e(i*t)+o}}}}function Ea(t){return Ta=Sa(t),B.format=Ta.format,B.formatPrefix=Ta.formatPrefix,Ta}function ka(t){return Math.max(0,-ya(Math.abs(t)))}function Ca(t,n){return Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(ya(n)/3)))-ya(Math.abs(t)))}function Pa(t,n){return t=Math.abs(t),n=Math.abs(n)-t,Math.max(0,ya(n)-ya(t))+1}function za(){return new Ra}function Ra(){this.reset()}Ea({decimal:".",thousands:",",grouping:[3],currency:["$",""]}),Ra.prototype={constructor:Ra,reset:function(){this.s=this.t=0},add:function(t){Da(La,t,this.t),Da(this,La.s,this.s),this.s?this.t+=La.t:this.s=La.t},valueOf:function(){return this.s}};var La=new Ra;function Da(t,n,e){var r=t.s=n+e,i=r-n,o=r-i;t.t=n-o+(e-i)}var Ua=1e-6,qa=Math.PI,Oa=qa/2,Ya=qa/4,Ba=2*qa,Fa=180/qa,Ia=qa/180,Ha=Math.abs,ja=Math.atan,Xa=Math.atan2,Ga=Math.cos,Va=Math.ceil,Wa=Math.exp,$a=Math.log,Za=Math.pow,Qa=Math.sin,Ja=Math.sign||function(t){return 0<t?1:t<0?-1:0},Ka=Math.sqrt,tu=Math.tan;function nu(t){return 1<t?0:t<-1?qa:Math.acos(t)}function eu(t){return 1<t?Oa:t<-1?-Oa:Math.asin(t)}function ru(t){return(t=Qa(t/2))*t}function iu(){}function ou(t,n){t&&uu.hasOwnProperty(t.type)&&uu[t.type](t,n)}var au={Feature:function(t,n){ou(t.geometry,n)},FeatureCollection:function(t,n){for(var e=t.features,r=-1,i=e.length;++r<i;)ou(e[r].geometry,n)}},uu={Sphere:function(t,n){n.sphere()},Point:function(t,n){t=t.coordinates,n.point(t[0],t[1],t[2])},MultiPoint:function(t,n){for(var e=t.coordinates,r=-1,i=e.length;++r<i;)t=e[r],n.point(t[0],t[1],t[2])},LineString:function(t,n){fu(t.coordinates,n,0)},MultiLineString:function(t,n){for(var e=t.coordinates,r=-1,i=e.length;++r<i;)fu(e[r],n,0)},Polygon:function(t,n){cu(t.coordinates,n)},MultiPolygon:function(t,n){for(var e=t.coordinates,r=-1,i=e.length;++r<i;)cu(e[r],n)},GeometryCollection:function(t,n){for(var e=t.geometries,r=-1,i=e.length;++r<i;)ou(e[r],n)}};function fu(t,n,e){var r,i=-1,o=t.length-e;for(n.lineStart();++i<o;)r=t[i],n.point(r[0],r[1],r[2]);n.lineEnd()}function cu(t,n){var e=-1,r=t.length;for(n.polygonStart();++e<r;)fu(t[e],n,1);n.polygonEnd()}function su(t,n){t&&au.hasOwnProperty(t.type)?au[t.type](t,n):ou(t,n)}var lu,hu,du,pu,vu,gu=za(),yu=za(),_u={point:iu,lineStart:iu,lineEnd:iu,polygonStart:function(){gu.reset(),_u.lineStart=bu,_u.lineEnd=mu},polygonEnd:function(){var t=+gu;yu.add(t<0?Ba+t:t),this.lineStart=this.lineEnd=this.point=iu},sphere:function(){yu.add(Ba)}};function bu(){_u.point=xu}function mu(){wu(lu,hu)}function xu(t,n){_u.point=wu,lu=t,hu=n,du=t*=Ia,pu=Ga(n=(n*=Ia)/2+Ya),vu=Qa(n)}function wu(t,n){var e=(t*=Ia)-du,r=0<=e?1:-1,i=r*e,o=Ga(n=(n*=Ia)/2+Ya),a=Qa(n),u=vu*a,f=pu*o+u*Ga(i),c=u*r*Qa(i);gu.add(Xa(c,f)),du=t,pu=o,vu=a}function Mu(t){return[Xa(t[1],t[0]),eu(t[2])]}function Au(t){var n=t[0],e=t[1],r=Ga(e);return[r*Ga(n),r*Qa(n),Qa(e)]}function Tu(t,n){return t[0]*n[0]+t[1]*n[1]+t[2]*n[2]}function Nu(t,n){return[t[1]*n[2]-t[2]*n[1],t[2]*n[0]-t[0]*n[2],t[0]*n[1]-t[1]*n[0]]}function Su(t,n){t[0]+=n[0],t[1]+=n[1],t[2]+=n[2]}function Eu(t,n){return[t[0]*n,t[1]*n,t[2]*n]}function ku(t){var n=Ka(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]/=n,t[1]/=n,t[2]/=n}var Cu,Pu,zu,Ru,Lu,Du,Uu,qu,Ou,Yu,Bu,Fu,Iu,Hu,ju,Xu,Gu,Vu,Wu,$u,Zu,Qu,Ju,Ku,tf,nf,ef=za(),rf={point:of,lineStart:uf,lineEnd:ff,polygonStart:function(){rf.point=cf,rf.lineStart=sf,rf.lineEnd=lf,ef.reset(),_u.polygonStart()},polygonEnd:function(){_u.polygonEnd(),rf.point=of,rf.lineStart=uf,rf.lineEnd=ff,gu<0?(Cu=-(zu=180),Pu=-(Ru=90)):Ua<ef?Ru=90:ef<-Ua&&(Pu=-90),Yu[0]=Cu,Yu[1]=zu}};function of(t,n){Ou.push(Yu=[Cu=t,zu=t]),n<Pu&&(Pu=n),Ru<n&&(Ru=n)}function af(t,n){var e=Au([t*Ia,n*Ia]);if(qu){var r=Nu(qu,e),i=Nu([r[1],-r[0],0],r);ku(i),i=Mu(i);var o,a=t-Lu,u=0<a?1:-1,f=i[0]*Fa*u,c=180<Ha(a);c^(u*Lu<f&&f<u*t)?(o=i[1]*Fa,Ru<o&&(Ru=o)):c^(u*Lu<(f=(f+360)%360-180)&&f<u*t)?(o=-i[1]*Fa)<Pu&&(Pu=o):(n<Pu&&(Pu=n),Ru<n&&(Ru=n)),c?t<Lu?hf(Cu,t)>hf(Cu,zu)&&(zu=t):hf(t,zu)>hf(Cu,zu)&&(Cu=t):Cu<=zu?(t<Cu&&(Cu=t),zu<t&&(zu=t)):Lu<t?hf(Cu,t)>hf(Cu,zu)&&(zu=t):hf(t,zu)>hf(Cu,zu)&&(Cu=t)}else Ou.push(Yu=[Cu=t,zu=t]);n<Pu&&(Pu=n),Ru<n&&(Ru=n),qu=e,Lu=t}function uf(){rf.point=af}function ff(){Yu[0]=Cu,Yu[1]=zu,rf.point=of,qu=null}function cf(t,n){if(qu){var e=t-Lu;ef.add(180<Ha(e)?e+(0<e?360:-360):e)}else Du=t,Uu=n;_u.point(t,n),af(t,n)}function sf(){_u.lineStart()}function lf(){cf(Du,Uu),_u.lineEnd(),Ha(ef)>Ua&&(Cu=-(zu=180)),Yu[0]=Cu,Yu[1]=zu,qu=null}function hf(t,n){return(n-=t)<0?n+360:n}function df(t,n){return t[0]-n[0]}function pf(t,n){return t[0]<=t[1]?t[0]<=n&&n<=t[1]:n<t[0]||t[1]<n}var vf={sphere:iu,point:gf,lineStart:_f,lineEnd:xf,polygonStart:function(){vf.lineStart=wf,vf.lineEnd=Mf},polygonEnd:function(){vf.lineStart=_f,vf.lineEnd=xf}};function gf(t,n){t*=Ia;var e=Ga(n*=Ia);yf(e*Ga(t),e*Qa(t),Qa(n))}function yf(t,n,e){Iu+=(t-Iu)/++Bu,Hu+=(n-Hu)/Bu,ju+=(e-ju)/Bu}function _f(){vf.point=bf}function bf(t,n){t*=Ia;var e=Ga(n*=Ia);Ku=e*Ga(t),tf=e*Qa(t),nf=Qa(n),vf.point=mf,yf(Ku,tf,nf)}function mf(t,n){t*=Ia;var e=Ga(n*=Ia),r=e*Ga(t),i=e*Qa(t),o=Qa(n),a=Xa(Ka((a=tf*o-nf*i)*a+(a=nf*r-Ku*o)*a+(a=Ku*i-tf*r)*a),Ku*r+tf*i+nf*o);Fu+=a,Xu+=a*(Ku+(Ku=r)),Gu+=a*(tf+(tf=i)),Vu+=a*(nf+(nf=o)),yf(Ku,tf,nf)}function xf(){vf.point=gf}function wf(){vf.point=Af}function Mf(){Tf(Qu,Ju),vf.point=gf}function Af(t,n){Qu=t,Ju=n,t*=Ia,n*=Ia,vf.point=Tf;var e=Ga(n);Ku=e*Ga(t),tf=e*Qa(t),nf=Qa(n),yf(Ku,tf,nf)}function Tf(t,n){t*=Ia;var e=Ga(n*=Ia),r=e*Ga(t),i=e*Qa(t),o=Qa(n),a=tf*o-nf*i,u=nf*r-Ku*o,f=Ku*i-tf*r,c=Ka(a*a+u*u+f*f),s=eu(c),l=c&&-s/c;Wu+=l*a,$u+=l*u,Zu+=l*f,Fu+=s,Xu+=s*(Ku+(Ku=r)),Gu+=s*(tf+(tf=i)),Vu+=s*(nf+(nf=o)),yf(Ku,tf,nf)}function Nf(t){return function(){return t}}function Sf(e,r){function t(t,n){return t=e(t,n),r(t[0],t[1])}return e.invert&&r.invert&&(t.invert=function(t,n){return(t=r.invert(t,n))&&e.invert(t[0],t[1])}),t}function Ef(t,n){return[qa<t?t-Ba:t<-qa?t+Ba:t,n]}function kf(t,n,e){return(t%=Ba)?n||e?Sf(Pf(t),zf(n,e)):Pf(t):n||e?zf(n,e):Ef}function Cf(e){return function(t,n){return[qa<(t+=e)?t-Ba:t<-qa?t+Ba:t,n]}}function Pf(t){var n=Cf(t);return n.invert=Cf(-t),n}function zf(t,n){var u=Ga(t),f=Qa(t),c=Ga(n),s=Qa(n);function e(t,n){var e=Ga(n),r=Ga(t)*e,i=Qa(t)*e,o=Qa(n),a=o*u+r*f;return[Xa(i*c-a*s,r*u-o*f),eu(a*c+i*s)]}return e.invert=function(t,n){var e=Ga(n),r=Ga(t)*e,i=Qa(t)*e,o=Qa(n),a=o*c-i*s;return[Xa(i*c+o*s,r*u+a*f),eu(a*u-r*f)]},e}function Rf(n){function t(t){return(t=n(t[0]*Ia,t[1]*Ia))[0]*=Fa,t[1]*=Fa,t}return n=kf(n[0]*Ia,n[1]*Ia,2<n.length?n[2]*Ia:0),t.invert=function(t){return(t=n.invert(t[0]*Ia,t[1]*Ia))[0]*=Fa,t[1]*=Fa,t},t}function Lf(t,n,e,r,i,o){if(e){var a=Ga(n),u=Qa(n),f=r*e;null==i?(i=n+r*Ba,o=n-f/2):(i=Df(a,i),o=Df(a,o),(0<r?i<o:o<i)&&(i+=r*Ba));for(var c,s=i;0<r?o<s:s<o;s-=f)c=Mu([a,-u*Ga(s),-u*Qa(s)]),t.point(c[0],c[1])}}function Df(t,n){(n=Au(n))[0]-=t,ku(n);var e=nu(-n[1]);return((-n[2]<0?-e:e)+Ba-Ua)%Ba}function Uf(){var e,n=[];return{point:function(t,n){e.push([t,n])},lineStart:function(){n.push(e=[])},lineEnd:iu,rejoin:function(){1<n.length&&n.push(n.pop().concat(n.shift()))},result:function(){var t=n;return n=[],e=null,t}}}function qf(t,n){return Ha(t[0]-n[0])<Ua&&Ha(t[1]-n[1])<Ua}function Of(t,n,e,r){this.x=t,this.z=n,this.o=e,this.e=r,this.v=!1,this.n=this.p=null}function Yf(t,n,e,r,o){var a,i,u=[],f=[];if(t.forEach(function(t){if(!((n=t.length-1)<=0)){var n,e,r=t[0],i=t[n];if(qf(r,i)){for(o.lineStart(),a=0;a<n;++a)o.point((r=t[a])[0],r[1]);o.lineEnd()}else u.push(e=new Of(r,t,null,!0)),f.push(e.o=new Of(r,null,e,!1)),u.push(e=new Of(i,t,null,!1)),f.push(e.o=new Of(i,null,e,!0))}}),u.length){for(f.sort(n),Bf(u),Bf(f),a=0,i=f.length;a<i;++a)f[a].e=e=!e;for(var c,s,l=u[0];;){for(var h=l,d=!0;h.v;)if((h=h.n)===l)return;c=h.z,o.lineStart();do{if(h.v=h.o.v=!0,h.e){if(d)for(a=0,i=c.length;a<i;++a)o.point((s=c[a])[0],s[1]);else r(h.x,h.n.x,1,o);h=h.n}else{if(d)for(c=h.p.z,a=c.length-1;0<=a;--a)o.point((s=c[a])[0],s[1]);else r(h.x,h.p.x,-1,o);h=h.p}c=(h=h.o).z,d=!d}while(!h.v);o.lineEnd()}}}function Bf(t){if(n=t.length){for(var n,e,r=0,i=t[0];++r<n;)i.n=e=t[r],e.p=i,i=e;i.n=e=t[0],e.p=i}}Ef.invert=Ef;var Ff=za();function If(t,n){var e=n[0],r=n[1],i=Qa(r),o=[Qa(e),-Ga(e),0],a=0,u=0;Ff.reset(),1===i?r=Oa+Ua:-1===i&&(r=-Oa-Ua);for(var f=0,c=t.length;f<c;++f)if(l=(s=t[f]).length)for(var s,l,h=s[l-1],d=h[0],p=h[1]/2+Ya,v=Qa(p),g=Ga(p),y=0;y<l;++y,d=b,v=x,g=w,h=_){var _=s[y],b=_[0],m=_[1]/2+Ya,x=Qa(m),w=Ga(m),M=b-d,A=0<=M?1:-1,T=A*M,N=qa<T,S=v*x;if(Ff.add(Xa(S*A*Qa(T),g*w+S*Ga(T))),a+=N?M+A*Ba:M,N^e<=d^e<=b){var E=Nu(Au(h),Au(_));ku(E);var k=Nu(o,E);ku(k);var C=(N^0<=M?-1:1)*eu(k[2]);(C<r||r===C&&(E[0]||E[1]))&&(u+=N^0<=M?1:-1)}}return(a<-Ua||a<Ua&&Ff<-Ua)^1&u}function Hf(g,y,_,b){return function(u){var f,c,s,e=y(u),l=Uf(),h=y(l),d=!1,n={point:r,lineStart:i,lineEnd:o,polygonStart:function(){n.point=p,n.lineStart=a,n.lineEnd=v,c=[],f=[]},polygonEnd:function(){n.point=r,n.lineStart=i,n.lineEnd=o,c=S(c);var t=If(f,b);c.length?(d||(u.polygonStart(),d=!0),Yf(c,Xf,t,_,u)):t&&(d||(u.polygonStart(),d=!0),u.lineStart(),_(null,null,1,u),u.lineEnd()),d&&(u.polygonEnd(),d=!1),c=f=null},sphere:function(){u.polygonStart(),u.lineStart(),_(null,null,1,u),u.lineEnd(),u.polygonEnd()}};function r(t,n){g(t,n)&&u.point(t,n)}function t(t,n){e.point(t,n)}function i(){n.point=t,e.lineStart()}function o(){n.point=r,e.lineEnd()}function p(t,n){s.push([t,n]),h.point(t,n)}function a(){h.lineStart(),s=[]}function v(){p(s[0][0],s[0][1]),h.lineEnd();var t,n,e,r,i=h.clean(),o=l.result(),a=o.length;if(s.pop(),f.push(s),s=null,a)if(1&i){if(0<(n=(e=o[0]).length-1)){for(d||(u.polygonStart(),d=!0),u.lineStart(),t=0;t<n;++t)u.point((r=e[t])[0],r[1]);u.lineEnd()}}else 1<a&&2&i&&o.push(o.pop().concat(o.shift())),c.push(o.filter(jf))}return n}}function jf(t){return 1<t.length}function Xf(t,n){return((t=t.x)[0]<0?t[1]-Oa-Ua:Oa-t[1])-((n=n.x)[0]<0?n[1]-Oa-Ua:Oa-n[1])}var Gf=Hf(function(){return!0},function(l){var h,d=NaN,p=NaN,v=NaN;return{lineStart:function(){l.lineStart(),h=1},point:function(t,n){var e,r,i,o,a,u,f,c=0<t?qa:-qa,s=Ha(t-d);Ha(s-qa)<Ua?(l.point(d,p=0<(p+n)/2?Oa:-Oa),l.point(v,p),l.lineEnd(),l.lineStart(),l.point(c,p),l.point(t,p),h=0):v!==c&&qa<=s&&(Ha(d-v)<Ua&&(d-=v*Ua),Ha(t-c)<Ua&&(t-=c*Ua),r=p,o=n,f=Qa((e=d)-(i=t)),p=Ha(f)>Ua?ja((Qa(r)*(u=Ga(o))*Qa(i)-Qa(o)*(a=Ga(r))*Qa(e))/(a*u*f)):(r+o)/2,l.point(v,p),l.lineEnd(),l.lineStart(),l.point(c,p),h=0),l.point(d=t,p=n),v=c},lineEnd:function(){l.lineEnd(),d=p=NaN},clean:function(){return 2-h}}},function(t,n,e,r){var i;if(null==t)i=e*Oa,r.point(-qa,i),r.point(0,i),r.point(qa,i),r.point(qa,0),r.point(qa,-i),r.point(0,-i),r.point(-qa,-i),r.point(-qa,0),r.point(-qa,i);else if(Ha(t[0]-n[0])>Ua){var o=t[0]<n[0]?qa:-qa;i=e*o/2,r.point(-o,i),r.point(0,i),r.point(o,i)}else r.point(n[0],n[1])},[-qa,-Oa]);function Vf(i){var N=Ga(i),o=6*Ia,d=0<N,p=Ha(N)>Ua;function v(t,n){return Ga(t)*Ga(n)>N}function g(t,n,e){var r=[1,0,0],i=Nu(Au(t),Au(n)),o=Tu(i,i),a=i[0],u=o-a*a;if(!u)return!e&&t;var f=N*o/u,c=-N*a/u,s=Nu(r,i),l=Eu(r,f);Su(l,Eu(i,c));var h=s,d=Tu(l,h),p=Tu(h,h),v=d*d-p*(Tu(l,l)-1);if(!(v<0)){var g=Ka(v),y=Eu(h,(-d-g)/p);if(Su(y,l),y=Mu(y),!e)return y;var _,b=t[0],m=n[0],x=t[1],w=n[1];m<b&&(_=b,b=m,m=_);var M=m-b,A=Ha(M-qa)<Ua;if(!A&&w<x&&(_=x,x=w,w=_),A||M<Ua?A?0<x+w^y[1]<(Ha(y[0]-b)<Ua?x:w):x<=y[1]&&y[1]<=w:qa<M^(b<=y[0]&&y[0]<=m)){var T=Eu(h,(-d+g)/p);return Su(T,l),[y,Mu(T)]}}}function y(t,n){var e=d?i:qa-i,r=0;return t<-e?r|=1:e<t&&(r|=2),n<-e?r|=4:e<n&&(r|=8),r}return Hf(v,function(u){var f,c,s,l,h;return{lineStart:function(){l=s=!1,h=1},point:function(t,n){var e,r=[t,n],i=v(t,n),o=d?i?0:y(t,n):i?y(t+(t<0?qa:-qa),n):0;if(!f&&(l=s=i)&&u.lineStart(),i!==s&&(!(e=g(f,r))||qf(f,e)||qf(r,e))&&(r[0]+=Ua,r[1]+=Ua,i=v(r[0],r[1])),i!==s)h=0,i?(u.lineStart(),e=g(r,f),u.point(e[0],e[1])):(e=g(f,r),u.point(e[0],e[1]),u.lineEnd()),f=e;else if(p&&f&&d^i){var a;o&c||!(a=g(r,f,!0))||(h=0,d?(u.lineStart(),u.point(a[0][0],a[0][1]),u.point(a[1][0],a[1][1]),u.lineEnd()):(u.point(a[1][0],a[1][1]),u.lineEnd(),u.lineStart(),u.point(a[0][0],a[0][1])))}!i||f&&qf(f,r)||u.point(r[0],r[1]),f=r,s=i,c=o},lineEnd:function(){s&&u.lineEnd(),f=null},clean:function(){return h|(l&&s)<<1}}},function(t,n,e,r){Lf(r,i,o,e,t,n)},d?[0,-i]:[-qa,i-qa])}var Wf=1e9,$f=-Wf;function Zf(y,_,b,m){function x(t,n){return y<=t&&t<=b&&_<=n&&n<=m}function w(t,n,e,r){var i=0,o=0;if(null==t||(i=a(t,e))!==(o=a(n,e))||u(t,n)<0^0<e)for(;r.point(0===i||3===i?y:b,1<i?m:_),(i=(i+e+4)%4)!==o;);else r.point(n[0],n[1])}function a(t,n){return Ha(t[0]-y)<Ua?0<n?0:3:Ha(t[0]-b)<Ua?0<n?2:1:Ha(t[1]-_)<Ua?0<n?1:0:0<n?3:2}function M(t,n){return u(t.x,n.x)}function u(t,n){var e=a(t,1),r=a(n,1);return e!==r?e-r:0===e?n[1]-t[1]:1===e?t[0]-n[0]:2===e?t[1]-n[1]:n[0]-t[0]}return function(r){var i,l,o,a,u,f,c,s,h,d,p,v=r,t=Uf(),n={point:e,lineStart:function(){n.point=g,l&&l.push(o=[]);d=!0,h=!1,c=s=NaN},lineEnd:function(){i&&(g(a,u),f&&h&&t.rejoin(),i.push(t.result()));n.point=e,h&&v.lineEnd()},polygonStart:function(){v=t,i=[],l=[],p=!0},polygonEnd:function(){var t=function(){for(var t=0,n=0,e=l.length;n<e;++n)for(var r,i,o=l[n],a=1,u=o.length,f=o[0],c=f[0],s=f[1];a<u;++a)r=c,i=s,f=o[a],c=f[0],s=f[1],i<=m?m<s&&(s-i)*(y-r)<(c-r)*(m-i)&&++t:s<=m&&(c-r)*(m-i)<(s-i)*(y-r)&&--t;return t}(),n=p&&t,e=(i=S(i)).length;(n||e)&&(r.polygonStart(),n&&(r.lineStart(),w(null,null,1,r),r.lineEnd()),e&&Yf(i,M,t,w,r),r.polygonEnd());v=r,i=l=o=null}};function e(t,n){x(t,n)&&v.point(t,n)}function g(t,n){var e=x(t,n);if(l&&o.push([t,n]),d)a=t,u=n,d=!1,(f=e)&&(v.lineStart(),v.point(t,n));else if(e&&h)v.point(t,n);else{var r=[c=Math.max($f,Math.min(Wf,c)),s=Math.max($f,Math.min(Wf,s))],i=[t=Math.max($f,Math.min(Wf,t)),n=Math.max($f,Math.min(Wf,n))];!function(t,n,e,r,i,o){var a,u=t[0],f=t[1],c=0,s=1,l=n[0]-u,h=n[1]-f;if(a=e-u,l||!(0<a)){if(a/=l,l<0){if(a<c)return;a<s&&(s=a)}else if(0<l){if(s<a)return;c<a&&(c=a)}if(a=i-u,l||!(a<0)){if(a/=l,l<0){if(s<a)return;c<a&&(c=a)}else if(0<l){if(a<c)return;a<s&&(s=a)}if(a=r-f,h||!(0<a)){if(a/=h,h<0){if(a<c)return;a<s&&(s=a)}else if(0<h){if(s<a)return;c<a&&(c=a)}if(a=o-f,h||!(a<0)){if(a/=h,h<0){if(s<a)return;c<a&&(c=a)}else if(0<h){if(a<c)return;a<s&&(s=a)}return 0<c&&(t[0]=u+c*l,t[1]=f+c*h),s<1&&(n[0]=u+s*l,n[1]=f+s*h),!0}}}}}(r,i,y,_,b,m)?e&&(v.lineStart(),v.point(t,n),p=!1):(h||(v.lineStart(),v.point(r[0],r[1])),v.point(i[0],i[1]),e||v.lineEnd(),p=!1)}c=t,s=n,h=e}return n}}var Qf,Jf,Kf,tc=za(),nc={sphere:iu,point:iu,lineStart:function(){nc.point=rc,nc.lineEnd=ec},lineEnd:iu,polygonStart:iu,polygonEnd:iu};function ec(){nc.point=nc.lineEnd=iu}function rc(t,n){Qf=t*=Ia,Jf=Qa(n*=Ia),Kf=Ga(n),nc.point=ic}function ic(t,n){t*=Ia;var e=Qa(n*=Ia),r=Ga(n),i=Ha(t-Qf),o=Ga(i),a=r*Qa(i),u=Kf*e-Jf*r*o,f=Jf*e+Kf*r*o;tc.add(Xa(Ka(a*a+u*u),f)),Qf=t,Jf=e,Kf=r}function oc(t){return tc.reset(),su(t,nc),+tc}var ac=[null,null],uc={type:"LineString",coordinates:ac};function fc(t,n){return ac[0]=t,ac[1]=n,oc(uc)}var cc={Feature:function(t,n){return lc(t.geometry,n)},FeatureCollection:function(t,n){for(var e=t.features,r=-1,i=e.length;++r<i;)if(lc(e[r].geometry,n))return!0;return!1}},sc={Sphere:function(){return!0},Point:function(t,n){return hc(t.coordinates,n)},MultiPoint:function(t,n){for(var e=t.coordinates,r=-1,i=e.length;++r<i;)if(hc(e[r],n))return!0;return!1},LineString:function(t,n){return dc(t.coordinates,n)},MultiLineString:function(t,n){for(var e=t.coordinates,r=-1,i=e.length;++r<i;)if(dc(e[r],n))return!0;return!1},Polygon:function(t,n){return pc(t.coordinates,n)},MultiPolygon:function(t,n){for(var e=t.coordinates,r=-1,i=e.length;++r<i;)if(pc(e[r],n))return!0;return!1},GeometryCollection:function(t,n){for(var e=t.geometries,r=-1,i=e.length;++r<i;)if(lc(e[r],n))return!0;return!1}};function lc(t,n){return!(!t||!sc.hasOwnProperty(t.type))&&sc[t.type](t,n)}function hc(t,n){return 0===fc(t,n)}function dc(t,n){var e=fc(t[0],t[1]);return fc(t[0],n)+fc(n,t[1])<=e+Ua}function pc(t,n){return!!If(t.map(vc),gc(n))}function vc(t){return(t=t.map(gc)).pop(),t}function gc(t){return[t[0]*Ia,t[1]*Ia]}function yc(t,n,e){var r=T(t,n-Ua,e).concat(n);return function(n){return r.map(function(t){return[n,t]})}}function _c(t,n,e){var r=T(t,n-Ua,e).concat(n);return function(n){return r.map(function(t){return[t,n]})}}function bc(){var n,e,r,i,o,a,u,f,c,s,l,h,d=10,p=d,v=90,g=360,y=2.5;function _(){return{type:"MultiLineString",coordinates:t()}}function t(){return T(Va(i/v)*v,r,v).map(l).concat(T(Va(f/g)*g,u,g).map(h)).concat(T(Va(e/d)*d,n,d).filter(function(t){return Ha(t%v)>Ua}).map(c)).concat(T(Va(a/p)*p,o,p).filter(function(t){return Ha(t%g)>Ua}).map(s))}return _.lines=function(){return t().map(function(t){return{type:"LineString",coordinates:t}})},_.outline=function(){return{type:"Polygon",coordinates:[l(i).concat(h(u).slice(1),l(r).reverse().slice(1),h(f).reverse().slice(1))]}},_.extent=function(t){return arguments.length?_.extentMajor(t).extentMinor(t):_.extentMinor()},_.extentMajor=function(t){return arguments.length?(i=+t[0][0],r=+t[1][0],f=+t[0][1],u=+t[1][1],r<i&&(t=i,i=r,r=t),u<f&&(t=f,f=u,u=t),_.precision(y)):[[i,f],[r,u]]},_.extentMinor=function(t){return arguments.length?(e=+t[0][0],n=+t[1][0],a=+t[0][1],o=+t[1][1],n<e&&(t=e,e=n,n=t),o<a&&(t=a,a=o,o=t),_.precision(y)):[[e,a],[n,o]]},_.step=function(t){return arguments.length?_.stepMajor(t).stepMinor(t):_.stepMinor()},_.stepMajor=function(t){return arguments.length?(v=+t[0],g=+t[1],_):[v,g]},_.stepMinor=function(t){return arguments.length?(d=+t[0],p=+t[1],_):[d,p]},_.precision=function(t){return arguments.length?(y=+t,c=yc(a,o,90),s=_c(e,n,y),l=yc(f,u,90),h=_c(i,r,y),_):y},_.extentMajor([[-180,-90+Ua],[180,90-Ua]]).extentMinor([[-180,-80-Ua],[180,80+Ua]])}function mc(t){return t}var xc,wc,Mc,Ac,Tc=za(),Nc=za(),Sc={point:iu,lineStart:iu,lineEnd:iu,polygonStart:function(){Sc.lineStart=Ec,Sc.lineEnd=Pc},polygonEnd:function(){Sc.lineStart=Sc.lineEnd=Sc.point=iu,Tc.add(Ha(Nc)),Nc.reset()},result:function(){var t=Tc/2;return Tc.reset(),t}};function Ec(){Sc.point=kc}function kc(t,n){Sc.point=Cc,xc=Mc=t,wc=Ac=n}function Cc(t,n){Nc.add(Ac*t-Mc*n),Mc=t,Ac=n}function Pc(){Cc(xc,wc)}var zc=1/0,Rc=zc,Lc=-zc,Dc=Lc,Uc={point:function(t,n){t<zc&&(zc=t);Lc<t&&(Lc=t);n<Rc&&(Rc=n);Dc<n&&(Dc=n)},lineStart:iu,lineEnd:iu,polygonStart:iu,polygonEnd:iu,result:function(){var t=[[zc,Rc],[Lc,Dc]];return Lc=Dc=-(Rc=zc=1/0),t}};var qc,Oc,Yc,Bc,Fc=0,Ic=0,Hc=0,jc=0,Xc=0,Gc=0,Vc=0,Wc=0,$c=0,Zc={point:Qc,lineStart:Jc,lineEnd:ns,polygonStart:function(){Zc.lineStart=es,Zc.lineEnd=rs},polygonEnd:function(){Zc.point=Qc,Zc.lineStart=Jc,Zc.lineEnd=ns},result:function(){var t=$c?[Vc/$c,Wc/$c]:Gc?[jc/Gc,Xc/Gc]:Hc?[Fc/Hc,Ic/Hc]:[NaN,NaN];return Fc=Ic=Hc=jc=Xc=Gc=Vc=Wc=$c=0,t}};function Qc(t,n){Fc+=t,Ic+=n,++Hc}function Jc(){Zc.point=Kc}function Kc(t,n){Zc.point=ts,Qc(Yc=t,Bc=n)}function ts(t,n){var e=t-Yc,r=n-Bc,i=Ka(e*e+r*r);jc+=i*(Yc+t)/2,Xc+=i*(Bc+n)/2,Gc+=i,Qc(Yc=t,Bc=n)}function ns(){Zc.point=Qc}function es(){Zc.point=is}function rs(){os(qc,Oc)}function is(t,n){Zc.point=os,Qc(qc=Yc=t,Oc=Bc=n)}function os(t,n){var e=t-Yc,r=n-Bc,i=Ka(e*e+r*r);jc+=i*(Yc+t)/2,Xc+=i*(Bc+n)/2,Gc+=i,Vc+=(i=Bc*t-Yc*n)*(Yc+t),Wc+=i*(Bc+n),$c+=3*i,Qc(Yc=t,Bc=n)}function as(t){this._context=t}as.prototype={_radius:4.5,pointRadius:function(t){return this._radius=t,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._context.closePath(),this._point=NaN},point:function(t,n){switch(this._point){case 0:this._context.moveTo(t,n),this._point=1;break;case 1:this._context.lineTo(t,n);break;default:this._context.moveTo(t+this._radius,n),this._context.arc(t,n,this._radius,0,Ba)}},result:iu};var us,fs,cs,ss,ls,hs=za(),ds={point:iu,lineStart:function(){ds.point=ps},lineEnd:function(){us&&vs(fs,cs),ds.point=iu},polygonStart:function(){us=!0},polygonEnd:function(){us=null},result:function(){var t=+hs;return hs.reset(),t}};function ps(t,n){ds.point=vs,fs=ss=t,cs=ls=n}function vs(t,n){ss-=t,ls-=n,hs.add(Ka(ss*ss+ls*ls)),ss=t,ls=n}function gs(){this._string=[]}function ys(t){return"m0,"+t+"a"+t+","+t+" 0 1,1 0,"+-2*t+"a"+t+","+t+" 0 1,1 0,"+2*t+"z"}function _s(r){return function(t){var n=new bs;for(var e in r)n[e]=r[e];return n.stream=t,n}}function bs(){}function ms(t,n,e){var r=t.clipExtent&&t.clipExtent();return t.scale(150).translate([0,0]),null!=r&&t.clipExtent(null),su(e,t.stream(Uc)),n(Uc.result()),null!=r&&t.clipExtent(r),t}function xs(a,u,t){return ms(a,function(t){var n=u[1][0]-u[0][0],e=u[1][1]-u[0][1],r=Math.min(n/(t[1][0]-t[0][0]),e/(t[1][1]-t[0][1])),i=+u[0][0]+(n-r*(t[1][0]+t[0][0]))/2,o=+u[0][1]+(e-r*(t[1][1]+t[0][1]))/2;a.scale(150*r).translate([i,o])},t)}function ws(t,n,e){return xs(t,[[0,0],n],e)}function Ms(o,a,t){return ms(o,function(t){var n=+a,e=n/(t[1][0]-t[0][0]),r=(n-e*(t[1][0]+t[0][0]))/2,i=-e*t[0][1];o.scale(150*e).translate([r,i])},t)}function As(o,a,t){return ms(o,function(t){var n=+a,e=n/(t[1][1]-t[0][1]),r=-e*t[0][0],i=(n-e*(t[1][1]+t[0][1]))/2;o.scale(150*e).translate([r,i])},t)}gs.prototype={_radius:4.5,_circle:ys(4.5),pointRadius:function(t){return(t=+t)!==this._radius&&(this._radius=t,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._string.push("Z"),this._point=NaN},point:function(t,n){switch(this._point){case 0:this._string.push("M",t,",",n),this._point=1;break;case 1:this._string.push("L",t,",",n);break;default:null==this._circle&&(this._circle=ys(this._radius)),this._string.push("M",t,",",n,this._circle)}},result:function(){if(this._string.length){var t=this._string.join("");return this._string=[],t}return null}},bs.prototype={constructor:bs,point:function(t,n){this.stream.point(t,n)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};var Ts=16,Ns=Ga(30*Ia);function Ss(t,n){return+n?function(k,C){function P(t,n,e,r,i,o,a,u,f,c,s,l,h,d){var p=a-t,v=u-n,g=p*p+v*v;if(4*C<g&&h--){var y=r+c,_=i+s,b=o+l,m=Ka(y*y+_*_+b*b),x=eu(b/=m),w=Ha(Ha(b)-1)<Ua||Ha(e-f)<Ua?(e+f)/2:Xa(_,y),M=k(w,x),A=M[0],T=M[1],N=A-t,S=T-n,E=v*N-p*S;(C<E*E/g||.3<Ha((p*N+v*S)/g-.5)||r*c+i*s+o*l<Ns)&&(P(t,n,e,r,i,o,A,T,w,y/=m,_/=m,b,h,d),d.point(A,T),P(A,T,w,y,_,b,a,u,f,c,s,l,h,d))}}return function(i){var e,r,o,a,u,f,c,s,l,h,d,p,v={point:t,lineStart:n,lineEnd:y,polygonStart:function(){i.polygonStart(),v.lineStart=_},polygonEnd:function(){i.polygonEnd(),v.lineStart=n}};function t(t,n){t=k(t,n),i.point(t[0],t[1])}function n(){s=NaN,v.point=g,i.lineStart()}function g(t,n){var e=Au([t,n]),r=k(t,n);P(s,l,c,h,d,p,s=r[0],l=r[1],c=t,h=e[0],d=e[1],p=e[2],Ts,i),i.point(s,l)}function y(){v.point=t,i.lineEnd()}function _(){n(),v.point=b,v.lineEnd=m}function b(t,n){g(e=t,n),r=s,o=l,a=h,u=d,f=p,v.point=g}function m(){P(s,l,c,h,d,p,r,o,e,a,u,f,Ts,i),(v.lineEnd=y)()}return v}}(t,n):(e=t,_s({point:function(t,n){t=e(t,n),this.stream.point(t[0],t[1])}}));var e}var Es=_s({point:function(t,n){this.stream.point(t*Ia,n*Ia)}});function ks(t,e,r,n){var i=Ga(n),o=Qa(n),a=i*t,u=o*t,f=i/t,c=o/t,s=(o*r-i*e)/t,l=(o*e+i*r)/t;function h(t,n){return[a*t-u*n+e,r-u*t-a*n]}return h.invert=function(t,n){return[f*t-c*n+s,l-c*t-f*n]},h}function Cs(t){return Ps(function(){return t})()}function Ps(t){var e,i,n,r,o,a,u,f,c,s,l=150,h=480,d=250,p=0,v=0,g=0,y=0,_=0,b=0,m=null,x=Gf,w=null,M=mc,A=.5;function T(t){return f(t[0]*Ia,t[1]*Ia)}function N(t){return(t=f.invert(t[0],t[1]))&&[t[0]*Fa,t[1]*Fa]}function S(){var t=ks(l,0,0,b).apply(null,e(p,v)),n=(b?ks:function(e,r,i){function t(t,n){return[r+e*t,i-e*n]}return t.invert=function(t,n){return[(t-r)/e,(i-n)/e]},t})(l,h-t[0],d-t[1],b);return i=kf(g,y,_),u=Sf(e,n),f=Sf(i,u),a=Ss(u,A),E()}function E(){return c=s=null,T}return T.stream=function(t){return c&&s===t?c:c=Es((r=i,_s({point:function(t,n){var e=r(t,n);return this.stream.point(e[0],e[1])}})(x(a(M(s=t))))));var r},T.preclip=function(t){return arguments.length?(x=t,m=void 0,E()):x},T.postclip=function(t){return arguments.length?(M=t,w=n=r=o=null,E()):M},T.clipAngle=function(t){return arguments.length?(x=+t?Vf(m=t*Ia):(m=null,Gf),E()):m*Fa},T.clipExtent=function(t){return arguments.length?(M=null==t?(w=n=r=o=null,mc):Zf(w=+t[0][0],n=+t[0][1],r=+t[1][0],o=+t[1][1]),E()):null==w?null:[[w,n],[r,o]]},T.scale=function(t){return arguments.length?(l=+t,S()):l},T.translate=function(t){return arguments.length?(h=+t[0],d=+t[1],S()):[h,d]},T.center=function(t){return arguments.length?(p=t[0]%360*Ia,v=t[1]%360*Ia,S()):[p*Fa,v*Fa]},T.rotate=function(t){return arguments.length?(g=t[0]%360*Ia,y=t[1]%360*Ia,_=2<t.length?t[2]%360*Ia:0,S()):[g*Fa,y*Fa,_*Fa]},T.angle=function(t){return arguments.length?(b=t%360*Ia,S()):b*Fa},T.precision=function(t){return arguments.length?(a=Ss(u,A=t*t),E()):Ka(A)},T.fitExtent=function(t,n){return xs(T,t,n)},T.fitSize=function(t,n){return ws(T,t,n)},T.fitWidth=function(t,n){return Ms(T,t,n)},T.fitHeight=function(t,n){return As(T,t,n)},function(){return e=t.apply(this,arguments),T.invert=e.invert&&N,S()}}function zs(t){var n=0,e=qa/3,r=Ps(t),i=r(n,e);return i.parallels=function(t){return arguments.length?r(n=t[0]*Ia,e=t[1]*Ia):[n*Fa,e*Fa]},i}function Rs(t,n){var e=Qa(t),r=(e+Qa(n))/2;if(Ha(r)<Ua)return function(t){var e=Ga(t);function n(t,n){return[t*e,Qa(n)/e]}return n.invert=function(t,n){return[t/e,eu(n*e)]},n}(t);var i=1+e*(2*r-e),o=Ka(i)/r;function a(t,n){var e=Ka(i-2*r*Qa(n))/r;return[e*Qa(t*=r),o-e*Ga(t)]}return a.invert=function(t,n){var e=o-n;return[Xa(t,Ha(e))/r*Ja(e),eu((i-(t*t+e*e)*r*r)/(2*r))]},a}function Ls(){return zs(Rs).scale(155.424).center([0,33.6442])}function Ds(){return Ls().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])}function Us(o){return function(t,n){var e=Ga(t),r=Ga(n),i=o(e*r);return[i*r*Qa(t),i*Qa(n)]}}function qs(a){return function(t,n){var e=Ka(t*t+n*n),r=a(e),i=Qa(r),o=Ga(r);return[Xa(t*i,e*o),eu(e&&n*i/e)]}}var Os=Us(function(t){return Ka(2/(1+t))});Os.invert=qs(function(t){return 2*eu(t/2)});var Ys=Us(function(t){return(t=nu(t))&&t/Qa(t)});function Bs(t,n){return[t,$a(tu((Oa+n)/2))]}function Fs(e){var r,i,o,a=Cs(e),n=a.center,u=a.scale,f=a.translate,c=a.clipExtent,s=null;function l(){var t=qa*u(),n=a(Rf(a.rotate()).invert([0,0]));return c(null==s?[[n[0]-t,n[1]-t],[n[0]+t,n[1]+t]]:e===Bs?[[Math.max(n[0]-t,s),r],[Math.min(n[0]+t,i),o]]:[[s,Math.max(n[1]-t,r)],[i,Math.min(n[1]+t,o)]])}return a.scale=function(t){return arguments.length?(u(t),l()):u()},a.translate=function(t){return arguments.length?(f(t),l()):f()},a.center=function(t){return arguments.length?(n(t),l()):n()},a.clipExtent=function(t){return arguments.length?(null==t?s=r=i=o=null:(s=+t[0][0],r=+t[0][1],i=+t[1][0],o=+t[1][1]),l()):null==s?null:[[s,r],[i,o]]},l()}function Is(t){return tu((Oa+t)/2)}function Hs(t,n){var e=Ga(t),i=t===n?Qa(t):$a(e/Ga(n))/$a(Is(n)/Is(t)),o=e*Za(Is(t),i)/i;if(!i)return Bs;function r(t,n){0<o?n<-Oa+Ua&&(n=-Oa+Ua):Oa-Ua<n&&(n=Oa-Ua);var e=o/Za(Is(n),i);return[e*Qa(i*t),o-e*Ga(i*t)]}return r.invert=function(t,n){var e=o-n,r=Ja(i)*Ka(t*t+e*e);return[Xa(t,Ha(e))/i*Ja(e),2*ja(Za(o/r,1/i))-Oa]},r}function js(t,n){return[t,n]}function Xs(t,n){var e=Ga(t),i=t===n?Qa(t):(e-Ga(n))/(n-t),o=e/i+t;if(Ha(i)<Ua)return js;function r(t,n){var e=o-n,r=i*t;return[e*Qa(r),o-e*Ga(r)]}return r.invert=function(t,n){var e=o-n;return[Xa(t,Ha(e))/i*Ja(e),o-Ja(i)*Ka(t*t+e*e)]},r}Ys.invert=qs(function(t){return t}),Bs.invert=function(t,n){return[t,2*ja(Wa(n))-Oa]},js.invert=js;var Gs=1.340264,Vs=-.081106,Ws=893e-6,$s=.003796,Zs=Ka(3)/2;function Qs(t,n){var e=eu(Zs*Qa(n)),r=e*e,i=r*r*r;return[t*Ga(e)/(Zs*(Gs+3*Vs*r+i*(7*Ws+9*$s*r))),e*(Gs+Vs*r+i*(Ws+$s*r))]}function Js(t,n){var e=Ga(n),r=Ga(t)*e;return[e*Qa(t)/r,Qa(n)/r]}function Ks(e,r,i,o){return 1===e&&1===r&&0===i&&0===o?mc:_s({point:function(t,n){this.stream.point(t*e+i,n*r+o)}})}function tl(t,n){var e=n*n,r=e*e;return[t*(.8707-.131979*e+r*(r*(.003971*e-.001529*r)-.013791)),n*(1.007226+e*(.015085+r*(.028874*e-.044475-.005916*r)))]}function nl(t,n){return[Ga(n)*Qa(t),Qa(n)]}function el(t,n){var e=Ga(n),r=1+Ga(t)*e;return[e*Qa(t)/r,Qa(n)/r]}function rl(t,n){return[$a(tu((Oa+n)/2)),-t]}function il(t,n){return t.parent===n.parent?1:2}function ol(t,n){return t+n.x}function al(t,n){return Math.max(t,n.y)}function ul(t){var n=0,e=t.children,r=e&&e.length;if(r)for(;0<=--r;)n+=e[r].value;else n=1;t.value=n}function fl(t,n){var e,r,i,o,a,u=new hl(t),f=+t.value&&(u.value=t.value),c=[u];for(null==n&&(n=cl);e=c.pop();)if(f&&(e.value=+e.data.value),(i=n(e.data))&&(a=i.length))for(e.children=new Array(a),o=a-1;0<=o;--o)c.push(r=e.children[o]=new hl(i[o])),r.parent=e,r.depth=e.depth+1;return u.eachBefore(ll)}function cl(t){return t.children}function sl(t){t.data=t.data.data}function ll(t){for(var n=0;t.height=n,(t=t.parent)&&t.height<++n;);}function hl(t){this.data=t,this.depth=this.height=0,this.parent=null}Qs.invert=function(t,n){for(var e,r=n,i=r*r,o=i*i*i,a=0;a<12&&(o=(i=(r-=e=(r*(Gs+Vs*i+o*(Ws+$s*i))-n)/(Gs+3*Vs*i+o*(7*Ws+9*$s*i)))*r)*i*i,!(Ha(e)<1e-12));++a);return[Zs*t*(Gs+3*Vs*i+o*(7*Ws+9*$s*i))/Ga(r),eu(Qa(r)/Zs)]},Js.invert=qs(ja),tl.invert=function(t,n){var e,r=n,i=25;do{var o=r*r,a=o*o;r-=e=(r*(1.007226+o*(.015085+a*(.028874*o-.044475-.005916*a)))-n)/(1.007226+o*(.045255+a*(.259866*o-.311325-.005916*11*a)))}while(Ha(e)>Ua&&0<--i);return[t/(.8707+(o=r*r)*(o*(o*o*o*(.003971-.001529*o)-.013791)-.131979)),r]},nl.invert=qs(eu),el.invert=qs(function(t){return 2*ja(t)}),rl.invert=function(t,n){return[-n,2*ja(Wa(t))-Oa]},hl.prototype=fl.prototype={constructor:hl,count:function(){return this.eachAfter(ul)},each:function(t){var n,e,r,i,o=this,a=[o];do{for(n=a.reverse(),a=[];o=n.pop();)if(t(o),e=o.children)for(r=0,i=e.length;r<i;++r)a.push(e[r])}while(a.length);return this},eachAfter:function(t){for(var n,e,r,i=this,o=[i],a=[];i=o.pop();)if(a.push(i),n=i.children)for(e=0,r=n.length;e<r;++e)o.push(n[e]);for(;i=a.pop();)t(i);return this},eachBefore:function(t){for(var n,e,r=this,i=[r];r=i.pop();)if(t(r),n=r.children)for(e=n.length-1;0<=e;--e)i.push(n[e]);return this},sum:function(i){return this.eachAfter(function(t){for(var n=+i(t.data)||0,e=t.children,r=e&&e.length;0<=--r;)n+=e[r].value;t.value=n})},sort:function(n){return this.eachBefore(function(t){t.children&&t.children.sort(n)})},path:function(t){for(var n=this,e=function(t,n){if(t===n)return t;var e=t.ancestors(),r=n.ancestors(),i=null;for(t=e.pop(),n=r.pop();t===n;)i=t,t=e.pop(),n=r.pop();return i}(n,t),r=[n];n!==e;)n=n.parent,r.push(n);for(var i=r.length;t!==e;)r.splice(i,0,t),t=t.parent;return r},ancestors:function(){for(var t=this,n=[t];t=t.parent;)n.push(t);return n},descendants:function(){var n=[];return this.each(function(t){n.push(t)}),n},leaves:function(){var n=[];return this.eachBefore(function(t){t.children||n.push(t)}),n},links:function(){var n=this,e=[];return n.each(function(t){t!==n&&e.push({source:t.parent,target:t})}),e},copy:function(){return fl(this).eachBefore(sl)}};var dl=Array.prototype.slice;function pl(t){for(var n,e,r=0,i=(t=function(t){for(var n,e,r=t.length;r;)e=Math.random()*r--|0,n=t[r],t[r]=t[e],t[e]=n;return t}(dl.call(t))).length,o=[];r<i;)n=t[r],e&&yl(e,n)?++r:(e=bl(o=vl(o,n)),r=0);return e}function vl(t,n){var e,r;if(_l(n,t))return[n];for(e=0;e<t.length;++e)if(gl(n,t[e])&&_l(ml(t[e],n),t))return[t[e],n];for(e=0;e<t.length-1;++e)for(r=e+1;r<t.length;++r)if(gl(ml(t[e],t[r]),n)&&gl(ml(t[e],n),t[r])&&gl(ml(t[r],n),t[e])&&_l(xl(t[e],t[r],n),t))return[t[e],t[r],n];throw new Error}function gl(t,n){var e=t.r-n.r,r=n.x-t.x,i=n.y-t.y;return e<0||e*e<r*r+i*i}function yl(t,n){var e=t.r-n.r+1e-6,r=n.x-t.x,i=n.y-t.y;return 0<e&&r*r+i*i<e*e}function _l(t,n){for(var e=0;e<n.length;++e)if(!yl(t,n[e]))return!1;return!0}function bl(t){switch(t.length){case 1:return{x:(n=t[0]).x,y:n.y,r:n.r};case 2:return ml(t[0],t[1]);case 3:return xl(t[0],t[1],t[2])}var n}function ml(t,n){var e=t.x,r=t.y,i=t.r,o=n.x,a=n.y,u=n.r,f=o-e,c=a-r,s=u-i,l=Math.sqrt(f*f+c*c);return{x:(e+o+f/l*s)/2,y:(r+a+c/l*s)/2,r:(l+i+u)/2}}function xl(t,n,e){var r=t.x,i=t.y,o=t.r,a=n.x,u=n.y,f=n.r,c=e.x,s=e.y,l=e.r,h=r-a,d=r-c,p=i-u,v=i-s,g=f-o,y=l-o,_=r*r+i*i-o*o,b=_-a*a-u*u+f*f,m=_-c*c-s*s+l*l,x=d*p-h*v,w=(p*m-v*b)/(2*x)-r,M=(v*g-p*y)/x,A=(d*b-h*m)/(2*x)-i,T=(h*y-d*g)/x,N=M*M+T*T-1,S=2*(o+w*M+A*T),E=w*w+A*A-o*o,k=-(N?(S+Math.sqrt(S*S-4*N*E))/(2*N):E/S);return{x:r+w+M*k,y:i+A+T*k,r:k}}function wl(t,n,e){var r,i,o,a,u=t.x-n.x,f=t.y-n.y,c=u*u+f*f;e.y=c?(i=n.r+e.r,i*=i,a=t.r+e.r,(a*=a)<i?(r=(c+a-i)/(2*c),o=Math.sqrt(Math.max(0,a/c-r*r)),e.x=t.x-r*u-o*f,t.y-r*f+o*u):(r=(c+i-a)/(2*c),o=Math.sqrt(Math.max(0,i/c-r*r)),e.x=n.x+r*u-o*f,n.y+r*f+o*u)):(e.x=n.x+e.r,n.y)}function Ml(t,n){var e=t.r+n.r-1e-6,r=n.x-t.x,i=n.y-t.y;return 0<e&&r*r+i*i<e*e}function Al(t){var n=t._,e=t.next._,r=n.r+e.r,i=(n.x*e.r+e.x*n.r)/r,o=(n.y*e.r+e.y*n.r)/r;return i*i+o*o}function Tl(t){this._=t,this.next=null,this.previous=null}function Nl(t){if(!(i=t.length))return 0;var n,e,r,i,o,a,u,f,c,s,l;if((n=t[0]).x=0,n.y=0,!(1<i))return n.r;if(e=t[1],n.x=-e.r,e.x=n.r,e.y=0,!(2<i))return n.r+e.r;wl(e,n,r=t[2]),n=new Tl(n),e=new Tl(e),r=new Tl(r),n.next=r.previous=e,e.next=n.previous=r,r.next=e.previous=n;t:for(u=3;u<i;++u){wl(n._,e._,r=t[u]),r=new Tl(r),f=e.next,c=n.previous,s=e._.r,l=n._.r;do{if(s<=l){if(Ml(f._,r._)){e=f,(n.next=e).previous=n,--u;continue t}s+=f._.r,f=f.next}else{if(Ml(c._,r._)){((n=c).next=e).previous=n,--u;continue t}l+=c._.r,c=c.previous}}while(f!==c.next);for(r.previous=n,r.next=e,n.next=e.previous=e=r,o=Al(n);(r=r.next)!==e;)(a=Al(r))<o&&(n=r,o=a);e=n.next}for(n=[e._],r=e;(r=r.next)!==e;)n.push(r._);for(r=pl(n),u=0;u<i;++u)(n=t[u]).x-=r.x,n.y-=r.y;return r.r}function Sl(t){if("function"!=typeof t)throw new Error;return t}function El(){return 0}function kl(t){return function(){return t}}function Cl(t){return Math.sqrt(t.value)}function Pl(n){return function(t){t.children||(t.r=Math.max(0,+n(t)||0))}}function zl(a,u){return function(t){if(n=t.children){var n,e,r,i=n.length,o=a(t)*u||0;if(o)for(e=0;e<i;++e)n[e].r+=o;if(r=Nl(n),o)for(e=0;e<i;++e)n[e].r-=o;t.r=r+o}}}function Rl(e){return function(t){var n=t.parent;t.r*=e,n&&(t.x=n.x+e*t.x,t.y=n.y+e*t.y)}}function Ll(t){t.x0=Math.round(t.x0),t.y0=Math.round(t.y0),t.x1=Math.round(t.x1),t.y1=Math.round(t.y1)}function Dl(t,n,e,r,i){for(var o,a=t.children,u=-1,f=a.length,c=t.value&&(r-n)/t.value;++u<f;)(o=a[u]).y0=e,o.y1=i,o.x0=n,o.x1=n+=o.value*c}var Ul={depth:-1},ql={};function Ol(t){return t.id}function Yl(t){return t.parentId}function Bl(t,n){return t.parent===n.parent?1:2}function Fl(t){var n=t.children;return n?n[0]:t.t}function Il(t){var n=t.children;return n?n[n.length-1]:t.t}function Hl(t,n){this._=t,this.parent=null,this.children=null,this.A=null,(this.a=this).z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=n}function jl(t,n,e,r,i){for(var o,a=t.children,u=-1,f=a.length,c=t.value&&(i-e)/t.value;++u<f;)(o=a[u]).x0=n,o.x1=r,o.y0=e,o.y1=e+=o.value*c}Hl.prototype=Object.create(hl.prototype);var Xl=(1+Math.sqrt(5))/2;function Gl(t,n,e,r,i,o){for(var a,u,f,c,s,l,h,d,p,v,g,y=[],_=n.children,b=0,m=0,x=_.length,w=n.value;b<x;){for(f=i-e,c=o-r;!(s=_[m++].value)&&m<x;);for(l=h=s,g=s*s*(v=Math.max(c/f,f/c)/(w*t)),p=Math.max(h/g,g/l);m<x;++m){if(s+=u=_[m].value,u<l&&(l=u),h<u&&(h=u),g=s*s*v,p<(d=Math.max(h/g,g/l))){s-=u;break}p=d}y.push(a={value:s,dice:f<c,children:_.slice(b,m)}),a.dice?Dl(a,e,r,i,w?r+=c*s/w:o):jl(a,e,r,w?e+=f*s/w:i,o),w-=s,b=m}return y}var Vl=function n(o){function t(t,n,e,r,i){Gl(o,t,n,e,r,i)}return t.ratio=function(t){return n(1<(t=+t)?t:1)},t}(Xl);var Wl=function n(d){function t(t,n,e,r,i){if((o=t._squarify)&&o.ratio===d)for(var o,a,u,f,c,s=-1,l=o.length,h=t.value;++s<l;){for(u=(a=o[s]).children,f=a.value=0,c=u.length;f<c;++f)a.value+=u[f].value;a.dice?Dl(a,n,e,r,e+=(i-e)*a.value/h):jl(a,n,e,n+=(r-n)*a.value/h,i),h-=a.value}else t._squarify=o=Gl(d,t,n,e,r,i),o.ratio=d}return t.ratio=function(t){return n(1<(t=+t)?t:1)},t}(Xl);function $l(t,n){return t[0]-n[0]||t[1]-n[1]}function Zl(t){for(var n,e,r,i=t.length,o=[0,1],a=2,u=2;u<i;++u){for(;1<a&&(n=t[o[a-2]],e=t[o[a-1]],r=t[u],(e[0]-n[0])*(r[1]-n[1])-(e[1]-n[1])*(r[0]-n[0])<=0);)--a;o[a++]=u}return o.slice(0,a)}function Ql(){return Math.random()}var Jl=function t(e){function n(t,n){return t=null==t?0:+t,n=null==n?1:+n,1===arguments.length?(n=t,t=0):n-=t,function(){return e()*n+t}}return n.source=t,n}(Ql),Kl=function t(o){function n(n,e){var r,i;return n=null==n?0:+n,e=null==e?1:+e,function(){var t;if(null!=r)t=r,r=null;else for(;r=2*o()-1,t=2*o()-1,!(i=r*r+t*t)||1<i;);return n+e*t*Math.sqrt(-2*Math.log(i)/i)}}return n.source=t,n}(Ql),th=function t(n){function e(){var t=Kl.source(n).apply(this,arguments);return function(){return Math.exp(t())}}return e.source=t,e}(Ql),nh=function t(r){function n(e){return function(){for(var t=0,n=0;n<e;++n)t+=r();return t}}return n.source=t,n}(Ql),eh=function t(e){function n(t){var n=nh.source(e)(t);return function(){return n()/t}}return n.source=t,n}(Ql),rh=function t(n){function e(t){return function(){return-Math.log(1-n())/t}}return e.source=t,e}(Ql),ih=Array.prototype,oh=ih.map,ah=ih.slice,uh={name:"implicit"};function fh(r){var o=eo(),a=[],i=uh;function u(t){var n=t+"",e=o.get(n);if(!e){if(i!==uh)return i;o.set(n,e=a.push(t))}return r[(e-1)%r.length]}return r=null==r?[]:ah.call(r),u.domain=function(t){if(!arguments.length)return a.slice();a=[],o=eo();for(var n,e,r=-1,i=t.length;++r<i;)o.has(e=(n=t[r])+"")||o.set(e,a.push(n));return u},u.range=function(t){return arguments.length?(r=ah.call(t),u):r.slice()},u.unknown=function(t){return arguments.length?(i=t,u):i},u.copy=function(){return fh().domain(a).range(r).unknown(i)},u}function ch(){var o,a,t=fh().unknown(void 0),u=t.domain,f=t.range,c=[0,1],s=!1,l=0,h=0,d=.5;function n(){var t=u().length,n=c[1]<c[0],e=c[n-0],r=c[1-n];o=(r-e)/Math.max(1,t-l+2*h),s&&(o=Math.floor(o)),e+=(r-e-o*(t-l))*d,a=o*(1-l),s&&(e=Math.round(e),a=Math.round(a));var i=T(t).map(function(t){return e+o*t});return f(n?i.reverse():i)}return delete t.unknown,t.domain=function(t){return arguments.length?(u(t),n()):u()},t.range=function(t){return arguments.length?(c=[+t[0],+t[1]],n()):c.slice()},t.rangeRound=function(t){return c=[+t[0],+t[1]],s=!0,n()},t.bandwidth=function(){return a},t.step=function(){return o},t.round=function(t){return arguments.length?(s=!!t,n()):s},t.padding=function(t){return arguments.length?(l=h=Math.max(0,Math.min(1,t)),n()):l},t.paddingInner=function(t){return arguments.length?(l=Math.max(0,Math.min(1,t)),n()):l},t.paddingOuter=function(t){return arguments.length?(h=Math.max(0,Math.min(1,t)),n()):h},t.align=function(t){return arguments.length?(d=Math.max(0,Math.min(1,t)),n()):d},t.copy=function(){return ch().domain(u()).range(c).round(s).paddingInner(l).paddingOuter(h).align(d)},n()}function sh(t){return function(){return t}}function lh(t){return+t}var hh=[0,1];function dh(n,e){return(e-=n=+n)?function(t){return(t-n)/e}:sh(e)}function ph(t,n,e,r){var i=t[0],o=t[1],a=n[0],u=n[1];return a=o<i?(i=e(o,i),r(u,a)):(i=e(i,o),r(a,u)),function(t){return a(i(t))}}function vh(e,t,n,r){var i=Math.min(e.length,t.length)-1,o=new Array(i),a=new Array(i),u=-1;for(e[i]<e[0]&&(e=e.slice().reverse(),t=t.slice().reverse());++u<i;)o[u]=n(e[u],e[u+1]),a[u]=r(t[u],t[u+1]);return function(t){var n=v(e,t,1,i)-1;return a[n](o[n](t))}}function gh(t,n){return n.domain(t.domain()).range(t.range()).interpolate(t.interpolate()).clamp(t.clamp())}function yh(n,e){var r,o,a,u=hh,f=hh,c=me,s=!1;function i(){return r=2<Math.min(u.length,f.length)?vh:ph,o=a=null,t}function t(t){return(o||(o=r(u,f,s?(i=n,function(n,e){var r=i(n=+n,e=+e);return function(t){return t<=n?0:e<=t?1:r(t)}}):n,c)))(+t);var i}return t.invert=function(t){return(a||(a=r(f,u,dh,s?(i=e,function(n,e){var r=i(n=+n,e=+e);return function(t){return t<=0?n:1<=t?e:r(t)}}):e)))(+t);var i},t.domain=function(t){return arguments.length?(u=oh.call(t,lh),i()):u.slice()},t.range=function(t){return arguments.length?(f=ah.call(t),i()):f.slice()},t.rangeRound=function(t){return f=ah.call(t),c=xe,i()},t.clamp=function(t){return arguments.length?(s=!!t,i()):s},t.interpolate=function(t){return arguments.length?(c=t,i()):c},i()}function _h(u){var f=u.domain;return u.ticks=function(t){var n=f();return y(n[0],n[n.length-1],null==t?10:t)},u.tickFormat=function(t,n){return function(t,n,e){var r,i=t[0],o=t[t.length-1],a=N(i,o,null==n?10:n);switch((e=ma(null==e?",f":e)).type){case"s":var u=Math.max(Math.abs(i),Math.abs(o));return null!=e.precision||isNaN(r=Ca(a,u))||(e.precision=r),B.formatPrefix(e,u);case"":case"e":case"g":case"p":case"r":null!=e.precision||isNaN(r=Pa(a,Math.max(Math.abs(i),Math.abs(o))))||(e.precision=r-("e"===e.type));break;case"f":case"%":null!=e.precision||isNaN(r=ka(a))||(e.precision=r-2*("%"===e.type))}return B.format(e)}(f(),t,n)},u.nice=function(t){null==t&&(t=10);var n,e=f(),r=0,i=e.length-1,o=e[r],a=e[i];return a<o&&(n=o,o=a,a=n,n=r,r=i,i=n),0<(n=_(o,a,t))?n=_(o=Math.floor(o/n)*n,a=Math.ceil(a/n)*n,t):n<0&&(n=_(o=Math.ceil(o*n)/n,a=Math.floor(a*n)/n,t)),0<n?(e[r]=Math.floor(o/n)*n,e[i]=Math.ceil(a/n)*n,f(e)):n<0&&(e[r]=Math.ceil(o*n)/n,e[i]=Math.floor(a*n)/n,f(e)),u},u}function bh(t,n){var e,r=0,i=(t=t.slice()).length-1,o=t[r],a=t[i];return a<o&&(e=r,r=i,i=e,e=o,o=a,a=e),t[r]=n.floor(o),t[i]=n.ceil(a),t}function mh(n,e){return(e=Math.log(e/n))?function(t){return Math.log(t/n)/e}:sh(e)}function xh(n,e){return n<0?function(t){return-Math.pow(-e,t)*Math.pow(-n,1-t)}:function(t){return Math.pow(e,t)*Math.pow(n,1-t)}}function wh(t){return isFinite(t)?+("1e"+t):t<0?0:t}function Mh(n){return 10===n?wh:n===Math.E?Math.exp:function(t){return Math.pow(n,t)}}function Ah(n){return n===Math.E?Math.log:10===n&&Math.log10||2===n&&Math.log2||(n=Math.log(n),function(t){return Math.log(t)/n})}function Th(n){return function(t){return-n(-t)}}function Nh(t,n){return t<0?-Math.pow(-t,n):Math.pow(t,n)}function Sh(){var r=1,t=yh(function(n,e){return(e=Nh(e,r)-(n=Nh(n,r)))?function(t){return(Nh(t,r)-n)/e}:sh(e)},function(n,e){return e=Nh(e,r)-(n=Nh(n,r)),function(t){return Nh(n+e*t,1/r)}}),n=t.domain;return t.exponent=function(t){return arguments.length?(r=+t,n(n())):r},t.copy=function(){return gh(t,Sh().exponent(r))},_h(t)}var Eh=new Date,kh=new Date;function Ch(o,a,e,r){function u(t){return o(t=new Date(+t)),t}return(u.floor=u).ceil=function(t){return o(t=new Date(t-1)),a(t,1),o(t),t},u.round=function(t){var n=u(t),e=u.ceil(t);return t-n<e-t?n:e},u.offset=function(t,n){return a(t=new Date(+t),null==n?1:Math.floor(n)),t},u.range=function(t,n,e){var r,i=[];if(t=u.ceil(t),e=null==e?1:Math.floor(e),!(t<n&&0<e))return i;for(;i.push(r=new Date(+t)),a(t,e),o(t),r<t&&t<n;);return i},u.filter=function(e){return Ch(function(t){if(t<=t)for(;o(t),!e(t);)t.setTime(t-1)},function(t,n){if(t<=t)if(n<0)for(;++n<=0;)for(;a(t,-1),!e(t););else for(;0<=--n;)for(;a(t,1),!e(t););})},e&&(u.count=function(t,n){return Eh.setTime(+t),kh.setTime(+n),o(Eh),o(kh),Math.floor(e(Eh,kh))},u.every=function(n){return n=Math.floor(n),isFinite(n)&&0<n?1<n?u.filter(r?function(t){return r(t)%n==0}:function(t){return u.count(0,t)%n==0}):u:null}),u}var Ph=Ch(function(){},function(t,n){t.setTime(+t+n)},function(t,n){return n-t});Ph.every=function(e){return e=Math.floor(e),isFinite(e)&&0<e?1<e?Ch(function(t){t.setTime(Math.floor(t/e)*e)},function(t,n){t.setTime(+t+n*e)},function(t,n){return(n-t)/e}):Ph:null};var zh=Ph.range,Rh=6e4,Lh=36e5,Dh=Ch(function(t){t.setTime(1e3*Math.floor(t/1e3))},function(t,n){t.setTime(+t+1e3*n)},function(t,n){return(n-t)/1e3},function(t){return t.getUTCSeconds()}),Uh=Dh.range,qh=Ch(function(t){t.setTime(Math.floor(t/Rh)*Rh)},function(t,n){t.setTime(+t+n*Rh)},function(t,n){return(n-t)/Rh},function(t){return t.getMinutes()}),Oh=qh.range,Yh=Ch(function(t){var n=t.getTimezoneOffset()*Rh%Lh;n<0&&(n+=Lh),t.setTime(Math.floor((+t-n)/Lh)*Lh+n)},function(t,n){t.setTime(+t+n*Lh)},function(t,n){return(n-t)/Lh},function(t){return t.getHours()}),Bh=Yh.range,Fh=Ch(function(t){t.setHours(0,0,0,0)},function(t,n){t.setDate(t.getDate()+n)},function(t,n){return(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*Rh)/864e5},function(t){return t.getDate()-1}),Ih=Fh.range;function Hh(n){return Ch(function(t){t.setDate(t.getDate()-(t.getDay()+7-n)%7),t.setHours(0,0,0,0)},function(t,n){t.setDate(t.getDate()+7*n)},function(t,n){return(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*Rh)/6048e5})}var jh=Hh(0),Xh=Hh(1),Gh=Hh(2),Vh=Hh(3),Wh=Hh(4),$h=Hh(5),Zh=Hh(6),Qh=jh.range,Jh=Xh.range,Kh=Gh.range,td=Vh.range,nd=Wh.range,ed=$h.range,rd=Zh.range,id=Ch(function(t){t.setDate(1),t.setHours(0,0,0,0)},function(t,n){t.setMonth(t.getMonth()+n)},function(t,n){return n.getMonth()-t.getMonth()+12*(n.getFullYear()-t.getFullYear())},function(t){return t.getMonth()}),od=id.range,ad=Ch(function(t){t.setMonth(0,1),t.setHours(0,0,0,0)},function(t,n){t.setFullYear(t.getFullYear()+n)},function(t,n){return n.getFullYear()-t.getFullYear()},function(t){return t.getFullYear()});ad.every=function(e){return isFinite(e=Math.floor(e))&&0<e?Ch(function(t){t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},function(t,n){t.setFullYear(t.getFullYear()+n*e)}):null};var ud=ad.range,fd=Ch(function(t){t.setUTCSeconds(0,0)},function(t,n){t.setTime(+t+n*Rh)},function(t,n){return(n-t)/Rh},function(t){return t.getUTCMinutes()}),cd=fd.range,sd=Ch(function(t){t.setUTCMinutes(0,0,0)},function(t,n){t.setTime(+t+n*Lh)},function(t,n){return(n-t)/Lh},function(t){return t.getUTCHours()}),ld=sd.range,hd=Ch(function(t){t.setUTCHours(0,0,0,0)},function(t,n){t.setUTCDate(t.getUTCDate()+n)},function(t,n){return(n-t)/864e5},function(t){return t.getUTCDate()-1}),dd=hd.range;function pd(n){return Ch(function(t){t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-n)%7),t.setUTCHours(0,0,0,0)},function(t,n){t.setUTCDate(t.getUTCDate()+7*n)},function(t,n){return(n-t)/6048e5})}var vd=pd(0),gd=pd(1),yd=pd(2),_d=pd(3),bd=pd(4),md=pd(5),xd=pd(6),wd=vd.range,Md=gd.range,Ad=yd.range,Td=_d.range,Nd=bd.range,Sd=md.range,Ed=xd.range,kd=Ch(function(t){t.setUTCDate(1),t.setUTCHours(0,0,0,0)},function(t,n){t.setUTCMonth(t.getUTCMonth()+n)},function(t,n){return n.getUTCMonth()-t.getUTCMonth()+12*(n.getUTCFullYear()-t.getUTCFullYear())},function(t){return t.getUTCMonth()}),Cd=kd.range,Pd=Ch(function(t){t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},function(t,n){t.setUTCFullYear(t.getUTCFullYear()+n)},function(t,n){return n.getUTCFullYear()-t.getUTCFullYear()},function(t){return t.getUTCFullYear()});Pd.every=function(e){return isFinite(e=Math.floor(e))&&0<e?Ch(function(t){t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},function(t,n){t.setUTCFullYear(t.getUTCFullYear()+n*e)}):null};var zd=Pd.range;function Rd(t){if(0<=t.y&&t.y<100){var n=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return n.setFullYear(t.y),n}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function Ld(t){if(0<=t.y&&t.y<100){var n=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return n.setUTCFullYear(t.y),n}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function Dd(t){return{y:t,m:0,d:1,H:0,M:0,S:0,L:0}}function Ud(t){var r=t.dateTime,i=t.date,o=t.time,n=t.periods,e=t.days,a=t.shortDays,u=t.months,f=t.shortMonths,c=jd(n),s=Xd(n),l=jd(e),h=Xd(e),d=jd(a),p=Xd(a),v=jd(u),g=Xd(u),y=jd(f),_=Xd(f),b={a:function(t){return a[t.getDay()]},A:function(t){return e[t.getDay()]},b:function(t){return f[t.getMonth()]},B:function(t){return u[t.getMonth()]},c:null,d:lp,e:lp,f:gp,H:hp,I:dp,j:pp,L:vp,m:yp,M:_p,p:function(t){return n[+(12<=t.getHours())]},Q:Gp,s:Vp,S:bp,u:mp,U:xp,V:wp,w:Mp,W:Ap,x:null,X:null,y:Tp,Y:Np,Z:Sp,"%":Xp},m={a:function(t){return a[t.getUTCDay()]},A:function(t){return e[t.getUTCDay()]},b:function(t){return f[t.getUTCMonth()]},B:function(t){return u[t.getUTCMonth()]},c:null,d:Ep,e:Ep,f:Rp,H:kp,I:Cp,j:Pp,L:zp,m:Lp,M:Dp,p:function(t){return n[+(12<=t.getUTCHours())]},Q:Gp,s:Vp,S:Up,u:qp,U:Op,V:Yp,w:Bp,W:Fp,x:null,X:null,y:Ip,Y:Hp,Z:jp,"%":Xp},x={a:function(t,n,e){var r=d.exec(n.slice(e));return r?(t.w=p[r[0].toLowerCase()],e+r[0].length):-1},A:function(t,n,e){var r=l.exec(n.slice(e));return r?(t.w=h[r[0].toLowerCase()],e+r[0].length):-1},b:function(t,n,e){var r=y.exec(n.slice(e));return r?(t.m=_[r[0].toLowerCase()],e+r[0].length):-1},B:function(t,n,e){var r=v.exec(n.slice(e));return r?(t.m=g[r[0].toLowerCase()],e+r[0].length):-1},c:function(t,n,e){return A(t,r,n,e)},d:np,e:np,f:up,H:rp,I:rp,j:ep,L:ap,m:tp,M:ip,p:function(t,n,e){var r=c.exec(n.slice(e));return r?(t.p=s[r[0].toLowerCase()],e+r[0].length):-1},Q:cp,s:sp,S:op,u:Vd,U:Wd,V:$d,w:Gd,W:Zd,x:function(t,n,e){return A(t,i,n,e)},X:function(t,n,e){return A(t,o,n,e)},y:Jd,Y:Qd,Z:Kd,"%":fp};function w(f,c){return function(t){var n,e,r,i=[],o=-1,a=0,u=f.length;for(t instanceof Date||(t=new Date(+t));++o<u;)37===f.charCodeAt(o)&&(i.push(f.slice(a,o)),null!=(e=Od[n=f.charAt(++o)])?n=f.charAt(++o):e="e"===n?" ":"0",(r=c[n])&&(n=r(t,e)),i.push(n),a=o+1);return i.push(f.slice(a,o)),i.join("")}}function M(i,o){return function(t){var n,e,r=Dd(1900);if(A(r,i,t+="",0)!=t.length)return null;if("Q"in r)return new Date(r.Q);if("p"in r&&(r.H=r.H%12+12*r.p),"V"in r){if(r.V<1||53<r.V)return null;"w"in r||(r.w=1),r.d="Z"in r?(n=4<(e=(n=Ld(Dd(r.y))).getUTCDay())||0===e?gd.ceil(n):gd(n),n=hd.offset(n,7*(r.V-1)),r.y=n.getUTCFullYear(),r.m=n.getUTCMonth(),n.getUTCDate()+(r.w+6)%7):(n=4<(e=(n=o(Dd(r.y))).getDay())||0===e?Xh.ceil(n):Xh(n),n=Fh.offset(n,7*(r.V-1)),r.y=n.getFullYear(),r.m=n.getMonth(),n.getDate()+(r.w+6)%7)}else("W"in r||"U"in r)&&("w"in r||(r.w="u"in r?r.u%7:"W"in r?1:0),e="Z"in r?Ld(Dd(r.y)).getUTCDay():o(Dd(r.y)).getDay(),r.m=0,r.d="W"in r?(r.w+6)%7+7*r.W-(e+5)%7:r.w+7*r.U-(e+6)%7);return"Z"in r?(r.H+=r.Z/100|0,r.M+=r.Z%100,Ld(r)):o(r)}}function A(t,n,e,r){for(var i,o,a=0,u=n.length,f=e.length;a<u;){if(f<=r)return-1;if(37===(i=n.charCodeAt(a++))){if(i=n.charAt(a++),!(o=x[i in Od?n.charAt(a++):i])||(r=o(t,e,r))<0)return-1}else if(i!=e.charCodeAt(r++))return-1}return r}return b.x=w(i,b),b.X=w(o,b),b.c=w(r,b),m.x=w(i,m),m.X=w(o,m),m.c=w(r,m),{format:function(t){var n=w(t+="",b);return n.toString=function(){return t},n},parse:function(t){var n=M(t+="",Rd);return n.toString=function(){return t},n},utcFormat:function(t){var n=w(t+="",m);return n.toString=function(){return t},n},utcParse:function(t){var n=M(t,Ld);return n.toString=function(){return t},n}}}var qd,Od={"-":"",_:" ",0:"0"},Yd=/^\s*\d+/,Bd=/^%/,Fd=/[\\^$*+?|[\]().{}]/g;function Id(t,n,e){var r=t<0?"-":"",i=(r?-t:t)+"",o=i.length;return r+(o<e?new Array(e-o+1).join(n)+i:i)}function Hd(t){return t.replace(Fd,"\\$&")}function jd(t){return new RegExp("^(?:"+t.map(Hd).join("|")+")","i")}function Xd(t){for(var n={},e=-1,r=t.length;++e<r;)n[t[e].toLowerCase()]=e;return n}function Gd(t,n,e){var r=Yd.exec(n.slice(e,e+1));return r?(t.w=+r[0],e+r[0].length):-1}function Vd(t,n,e){var r=Yd.exec(n.slice(e,e+1));return r?(t.u=+r[0],e+r[0].length):-1}function Wd(t,n,e){var r=Yd.exec(n.slice(e,e+2));return r?(t.U=+r[0],e+r[0].length):-1}function $d(t,n,e){var r=Yd.exec(n.slice(e,e+2));return r?(t.V=+r[0],e+r[0].length):-1}function Zd(t,n,e){var r=Yd.exec(n.slice(e,e+2));return r?(t.W=+r[0],e+r[0].length):-1}function Qd(t,n,e){var r=Yd.exec(n.slice(e,e+4));return r?(t.y=+r[0],e+r[0].length):-1}function Jd(t,n,e){var r=Yd.exec(n.slice(e,e+2));return r?(t.y=+r[0]+(68<+r[0]?1900:2e3),e+r[0].length):-1}function Kd(t,n,e){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(n.slice(e,e+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),e+r[0].length):-1}function tp(t,n,e){var r=Yd.exec(n.slice(e,e+2));return r?(t.m=r[0]-1,e+r[0].length):-1}function np(t,n,e){var r=Yd.exec(n.slice(e,e+2));return r?(t.d=+r[0],e+r[0].length):-1}function ep(t,n,e){var r=Yd.exec(n.slice(e,e+3));return r?(t.m=0,t.d=+r[0],e+r[0].length):-1}function rp(t,n,e){var r=Yd.exec(n.slice(e,e+2));return r?(t.H=+r[0],e+r[0].length):-1}function ip(t,n,e){var r=Yd.exec(n.slice(e,e+2));return r?(t.M=+r[0],e+r[0].length):-1}function op(t,n,e){var r=Yd.exec(n.slice(e,e+2));return r?(t.S=+r[0],e+r[0].length):-1}function ap(t,n,e){var r=Yd.exec(n.slice(e,e+3));return r?(t.L=+r[0],e+r[0].length):-1}function up(t,n,e){var r=Yd.exec(n.slice(e,e+6));return r?(t.L=Math.floor(r[0]/1e3),e+r[0].length):-1}function fp(t,n,e){var r=Bd.exec(n.slice(e,e+1));return r?e+r[0].length:-1}function cp(t,n,e){var r=Yd.exec(n.slice(e));return r?(t.Q=+r[0],e+r[0].length):-1}function sp(t,n,e){var r=Yd.exec(n.slice(e));return r?(t.Q=1e3*+r[0],e+r[0].length):-1}function lp(t,n){return Id(t.getDate(),n,2)}function hp(t,n){return Id(t.getHours(),n,2)}function dp(t,n){return Id(t.getHours()%12||12,n,2)}function pp(t,n){return Id(1+Fh.count(ad(t),t),n,3)}function vp(t,n){return Id(t.getMilliseconds(),n,3)}function gp(t,n){return vp(t,n)+"000"}function yp(t,n){return Id(t.getMonth()+1,n,2)}function _p(t,n){return Id(t.getMinutes(),n,2)}function bp(t,n){return Id(t.getSeconds(),n,2)}function mp(t){var n=t.getDay();return 0===n?7:n}function xp(t,n){return Id(jh.count(ad(t),t),n,2)}function wp(t,n){var e=t.getDay();return t=4<=e||0===e?Wh(t):Wh.ceil(t),Id(Wh.count(ad(t),t)+(4===ad(t).getDay()),n,2)}function Mp(t){return t.getDay()}function Ap(t,n){return Id(Xh.count(ad(t),t),n,2)}function Tp(t,n){return Id(t.getFullYear()%100,n,2)}function Np(t,n){return Id(t.getFullYear()%1e4,n,4)}function Sp(t){var n=t.getTimezoneOffset();return(0<n?"-":(n*=-1,"+"))+Id(n/60|0,"0",2)+Id(n%60,"0",2)}function Ep(t,n){return Id(t.getUTCDate(),n,2)}function kp(t,n){return Id(t.getUTCHours(),n,2)}function Cp(t,n){return Id(t.getUTCHours()%12||12,n,2)}function Pp(t,n){return Id(1+hd.count(Pd(t),t),n,3)}function zp(t,n){return Id(t.getUTCMilliseconds(),n,3)}function Rp(t,n){return zp(t,n)+"000"}function Lp(t,n){return Id(t.getUTCMonth()+1,n,2)}function Dp(t,n){return Id(t.getUTCMinutes(),n,2)}function Up(t,n){return Id(t.getUTCSeconds(),n,2)}function qp(t){var n=t.getUTCDay();return 0===n?7:n}function Op(t,n){return Id(vd.count(Pd(t),t),n,2)}function Yp(t,n){var e=t.getUTCDay();return t=4<=e||0===e?bd(t):bd.ceil(t),Id(bd.count(Pd(t),t)+(4===Pd(t).getUTCDay()),n,2)}function Bp(t){return t.getUTCDay()}function Fp(t,n){return Id(gd.count(Pd(t),t),n,2)}function Ip(t,n){return Id(t.getUTCFullYear()%100,n,2)}function Hp(t,n){return Id(t.getUTCFullYear()%1e4,n,4)}function jp(){return"+0000"}function Xp(){return"%"}function Gp(t){return+t}function Vp(t){return Math.floor(+t/1e3)}function Wp(t){return qd=Ud(t),B.timeFormat=qd.format,B.timeParse=qd.parse,B.utcFormat=qd.utcFormat,B.utcParse=qd.utcParse,qd}Wp({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});var $p="%Y-%m-%dT%H:%M:%S.%LZ";var Zp=Date.prototype.toISOString?function(t){return t.toISOString()}:B.utcFormat($p);var Qp=+new Date("2000-01-01T00:00:00.000Z")?function(t){var n=new Date(t);return isNaN(n)?null:n}:B.utcParse($p),Jp=1e3,Kp=60*Jp,tv=60*Kp,nv=24*tv,ev=7*nv,rv=30*nv,iv=365*nv;function ov(t){return new Date(t)}function av(t){return t instanceof Date?+t:+new Date(+t)}function uv(a,n,e,r,i,o,u,f,c){var s=yh(dh,ve),l=s.invert,h=s.domain,d=c(".%L"),p=c(":%S"),v=c("%I:%M"),g=c("%I %p"),y=c("%a %d"),_=c("%b %d"),b=c("%B"),m=c("%Y"),x=[[u,1,Jp],[u,5,5*Jp],[u,15,15*Jp],[u,30,30*Jp],[o,1,Kp],[o,5,5*Kp],[o,15,15*Kp],[o,30,30*Kp],[i,1,tv],[i,3,3*tv],[i,6,6*tv],[i,12,12*tv],[r,1,nv],[r,2,2*nv],[e,1,ev],[n,1,rv],[n,3,3*rv],[a,1,iv]];function w(t){return(u(t)<t?d:o(t)<t?p:i(t)<t?v:r(t)<t?g:n(t)<t?e(t)<t?y:_:a(t)<t?b:m)(t)}function M(t,n,e,r){if(null==t&&(t=10),"number"==typeof t){var i=Math.abs(e-n)/t,o=A(function(t){return t[2]}).right(x,i);t=o===x.length?(r=N(n/iv,e/iv,t),a):o?(r=(o=x[i/x[o-1][2]<x[o][2]/i?o-1:o])[1],o[0]):(r=Math.max(N(n,e,t),1),f)}return null==r?t:t.every(r)}return s.invert=function(t){return new Date(l(t))},s.domain=function(t){return arguments.length?h(oh.call(t,av)):h().map(ov)},s.ticks=function(t,n){var e,r=h(),i=r[0],o=r[r.length-1],a=o<i;return a&&(e=i,i=o,o=e),e=(e=M(t,i,o,n))?e.range(i,o+1):[],a?e.reverse():e},s.tickFormat=function(t,n){return null==n?w:c(n)},s.nice=function(t,n){var e=h();return(t=M(t,e[0],e[e.length-1],n))?h(bh(e,t)):s},s.copy=function(){return gh(s,uv(a,n,e,r,i,o,u,f,c))},s}function fv(t){for(var n=t.length/6|0,e=new Array(n),r=0;r<n;)e[r]="#"+t.slice(6*r,6*++r);return e}var cv=fv("1f77b4ff7f0e2ca02cd627289467bd8c564be377c27f7f7fbcbd2217becf"),sv=fv("7fc97fbeaed4fdc086ffff99386cb0f0027fbf5b17666666"),lv=fv("1b9e77d95f027570b3e7298a66a61ee6ab02a6761d666666"),hv=fv("a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00cab2d66a3d9affff99b15928"),dv=fv("fbb4aeb3cde3ccebc5decbe4fed9a6ffffcce5d8bdfddaecf2f2f2"),pv=fv("b3e2cdfdcdaccbd5e8f4cae4e6f5c9fff2aef1e2cccccccc"),vv=fv("e41a1c377eb84daf4a984ea3ff7f00ffff33a65628f781bf999999"),gv=fv("66c2a5fc8d628da0cbe78ac3a6d854ffd92fe5c494b3b3b3"),yv=fv("8dd3c7ffffb3bebadafb807280b1d3fdb462b3de69fccde5d9d9d9bc80bdccebc5ffed6f");function _v(t){return le(t[t.length-1])}var bv=new Array(3).concat("d8b365f5f5f55ab4ac","a6611adfc27d80cdc1018571","a6611adfc27df5f5f580cdc1018571","8c510ad8b365f6e8c3c7eae55ab4ac01665e","8c510ad8b365f6e8c3f5f5f5c7eae55ab4ac01665e","8c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e","8c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e","5430058c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e003c30","5430058c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e003c30").map(fv),mv=_v(bv),xv=new Array(3).concat("af8dc3f7f7f77fbf7b","7b3294c2a5cfa6dba0008837","7b3294c2a5cff7f7f7a6dba0008837","762a83af8dc3e7d4e8d9f0d37fbf7b1b7837","762a83af8dc3e7d4e8f7f7f7d9f0d37fbf7b1b7837","762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b7837","762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b7837","40004b762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b783700441b","40004b762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b783700441b").map(fv),wv=_v(xv),Mv=new Array(3).concat("e9a3c9f7f7f7a1d76a","d01c8bf1b6dab8e1864dac26","d01c8bf1b6daf7f7f7b8e1864dac26","c51b7de9a3c9fde0efe6f5d0a1d76a4d9221","c51b7de9a3c9fde0eff7f7f7e6f5d0a1d76a4d9221","c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221","c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221","8e0152c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221276419","8e0152c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221276419").map(fv),Av=_v(Mv),Tv=new Array(3).concat("998ec3f7f7f7f1a340","5e3c99b2abd2fdb863e66101","5e3c99b2abd2f7f7f7fdb863e66101","542788998ec3d8daebfee0b6f1a340b35806","542788998ec3d8daebf7f7f7fee0b6f1a340b35806","5427888073acb2abd2d8daebfee0b6fdb863e08214b35806","5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b35806","2d004b5427888073acb2abd2d8daebfee0b6fdb863e08214b358067f3b08","2d004b5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b358067f3b08").map(fv),Nv=_v(Tv),Sv=new Array(3).concat("ef8a62f7f7f767a9cf","ca0020f4a58292c5de0571b0","ca0020f4a582f7f7f792c5de0571b0","b2182bef8a62fddbc7d1e5f067a9cf2166ac","b2182bef8a62fddbc7f7f7f7d1e5f067a9cf2166ac","b2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac","b2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac","67001fb2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac053061","67001fb2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac053061").map(fv),Ev=_v(Sv),kv=new Array(3).concat("ef8a62ffffff999999","ca0020f4a582bababa404040","ca0020f4a582ffffffbababa404040","b2182bef8a62fddbc7e0e0e09999994d4d4d","b2182bef8a62fddbc7ffffffe0e0e09999994d4d4d","b2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d","b2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d","67001fb2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d1a1a1a","67001fb2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d1a1a1a").map(fv),Cv=_v(kv),Pv=new Array(3).concat("fc8d59ffffbf91bfdb","d7191cfdae61abd9e92c7bb6","d7191cfdae61ffffbfabd9e92c7bb6","d73027fc8d59fee090e0f3f891bfdb4575b4","d73027fc8d59fee090ffffbfe0f3f891bfdb4575b4","d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4","d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4","a50026d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4313695","a50026d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4313695").map(fv),zv=_v(Pv),Rv=new Array(3).concat("fc8d59ffffbf91cf60","d7191cfdae61a6d96a1a9641","d7191cfdae61ffffbfa6d96a1a9641","d73027fc8d59fee08bd9ef8b91cf601a9850","d73027fc8d59fee08bffffbfd9ef8b91cf601a9850","d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850","d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850","a50026d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850006837","a50026d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850006837").map(fv),Lv=_v(Rv),Dv=new Array(3).concat("fc8d59ffffbf99d594","d7191cfdae61abdda42b83ba","d7191cfdae61ffffbfabdda42b83ba","d53e4ffc8d59fee08be6f59899d5943288bd","d53e4ffc8d59fee08bffffbfe6f59899d5943288bd","d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd","d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd","9e0142d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd5e4fa2","9e0142d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd5e4fa2").map(fv),Uv=_v(Dv),qv=new Array(3).concat("e5f5f999d8c92ca25f","edf8fbb2e2e266c2a4238b45","edf8fbb2e2e266c2a42ca25f006d2c","edf8fbccece699d8c966c2a42ca25f006d2c","edf8fbccece699d8c966c2a441ae76238b45005824","f7fcfde5f5f9ccece699d8c966c2a441ae76238b45005824","f7fcfde5f5f9ccece699d8c966c2a441ae76238b45006d2c00441b").map(fv),Ov=_v(qv),Yv=new Array(3).concat("e0ecf49ebcda8856a7","edf8fbb3cde38c96c688419d","edf8fbb3cde38c96c68856a7810f7c","edf8fbbfd3e69ebcda8c96c68856a7810f7c","edf8fbbfd3e69ebcda8c96c68c6bb188419d6e016b","f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d6e016b","f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d810f7c4d004b").map(fv),Bv=_v(Yv),Fv=new Array(3).concat("e0f3dba8ddb543a2ca","f0f9e8bae4bc7bccc42b8cbe","f0f9e8bae4bc7bccc443a2ca0868ac","f0f9e8ccebc5a8ddb57bccc443a2ca0868ac","f0f9e8ccebc5a8ddb57bccc44eb3d32b8cbe08589e","f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe08589e","f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe0868ac084081").map(fv),Iv=_v(Fv),Hv=new Array(3).concat("fee8c8fdbb84e34a33","fef0d9fdcc8afc8d59d7301f","fef0d9fdcc8afc8d59e34a33b30000","fef0d9fdd49efdbb84fc8d59e34a33b30000","fef0d9fdd49efdbb84fc8d59ef6548d7301f990000","fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301f990000","fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301fb300007f0000").map(fv),jv=_v(Hv),Xv=new Array(3).concat("ece2f0a6bddb1c9099","f6eff7bdc9e167a9cf02818a","f6eff7bdc9e167a9cf1c9099016c59","f6eff7d0d1e6a6bddb67a9cf1c9099016c59","f6eff7d0d1e6a6bddb67a9cf3690c002818a016450","fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016450","fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016c59014636").map(fv),Gv=_v(Xv),Vv=new Array(3).concat("ece7f2a6bddb2b8cbe","f1eef6bdc9e174a9cf0570b0","f1eef6bdc9e174a9cf2b8cbe045a8d","f1eef6d0d1e6a6bddb74a9cf2b8cbe045a8d","f1eef6d0d1e6a6bddb74a9cf3690c00570b0034e7b","fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0034e7b","fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0045a8d023858").map(fv),Wv=_v(Vv),$v=new Array(3).concat("e7e1efc994c7dd1c77","f1eef6d7b5d8df65b0ce1256","f1eef6d7b5d8df65b0dd1c77980043","f1eef6d4b9dac994c7df65b0dd1c77980043","f1eef6d4b9dac994c7df65b0e7298ace125691003f","f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125691003f","f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125698004367001f").map(fv),Zv=_v($v),Qv=new Array(3).concat("fde0ddfa9fb5c51b8a","feebe2fbb4b9f768a1ae017e","feebe2fbb4b9f768a1c51b8a7a0177","feebe2fcc5c0fa9fb5f768a1c51b8a7a0177","feebe2fcc5c0fa9fb5f768a1dd3497ae017e7a0177","fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a0177","fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a017749006a").map(fv),Jv=_v(Qv),Kv=new Array(3).concat("edf8b17fcdbb2c7fb8","ffffcca1dab441b6c4225ea8","ffffcca1dab441b6c42c7fb8253494","ffffccc7e9b47fcdbb41b6c42c7fb8253494","ffffccc7e9b47fcdbb41b6c41d91c0225ea80c2c84","ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea80c2c84","ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea8253494081d58").map(fv),tg=_v(Kv),ng=new Array(3).concat("f7fcb9addd8e31a354","ffffccc2e69978c679238443","ffffccc2e69978c67931a354006837","ffffccd9f0a3addd8e78c67931a354006837","ffffccd9f0a3addd8e78c67941ab5d238443005a32","ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443005a32","ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443006837004529").map(fv),eg=_v(ng),rg=new Array(3).concat("fff7bcfec44fd95f0e","ffffd4fed98efe9929cc4c02","ffffd4fed98efe9929d95f0e993404","ffffd4fee391fec44ffe9929d95f0e993404","ffffd4fee391fec44ffe9929ec7014cc4c028c2d04","ffffe5fff7bcfee391fec44ffe9929ec7014cc4c028c2d04","ffffe5fff7bcfee391fec44ffe9929ec7014cc4c02993404662506").map(fv),ig=_v(rg),og=new Array(3).concat("ffeda0feb24cf03b20","ffffb2fecc5cfd8d3ce31a1c","ffffb2fecc5cfd8d3cf03b20bd0026","ffffb2fed976feb24cfd8d3cf03b20bd0026","ffffb2fed976feb24cfd8d3cfc4e2ae31a1cb10026","ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cb10026","ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cbd0026800026").map(fv),ag=_v(og),ug=new Array(3).concat("deebf79ecae13182bd","eff3ffbdd7e76baed62171b5","eff3ffbdd7e76baed63182bd08519c","eff3ffc6dbef9ecae16baed63182bd08519c","eff3ffc6dbef9ecae16baed64292c62171b5084594","f7fbffdeebf7c6dbef9ecae16baed64292c62171b5084594","f7fbffdeebf7c6dbef9ecae16baed64292c62171b508519c08306b").map(fv),fg=_v(ug),cg=new Array(3).concat("e5f5e0a1d99b31a354","edf8e9bae4b374c476238b45","edf8e9bae4b374c47631a354006d2c","edf8e9c7e9c0a1d99b74c47631a354006d2c","edf8e9c7e9c0a1d99b74c47641ab5d238b45005a32","f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45005a32","f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45006d2c00441b").map(fv),sg=_v(cg),lg=new Array(3).concat("f0f0f0bdbdbd636363","f7f7f7cccccc969696525252","f7f7f7cccccc969696636363252525","f7f7f7d9d9d9bdbdbd969696636363252525","f7f7f7d9d9d9bdbdbd969696737373525252252525","fffffff0f0f0d9d9d9bdbdbd969696737373525252252525","fffffff0f0f0d9d9d9bdbdbd969696737373525252252525000000").map(fv),hg=_v(lg),dg=new Array(3).concat("efedf5bcbddc756bb1","f2f0f7cbc9e29e9ac86a51a3","f2f0f7cbc9e29e9ac8756bb154278f","f2f0f7dadaebbcbddc9e9ac8756bb154278f","f2f0f7dadaebbcbddc9e9ac8807dba6a51a34a1486","fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a34a1486","fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a354278f3f007d").map(fv),pg=_v(dg),vg=new Array(3).concat("fee0d2fc9272de2d26","fee5d9fcae91fb6a4acb181d","fee5d9fcae91fb6a4ade2d26a50f15","fee5d9fcbba1fc9272fb6a4ade2d26a50f15","fee5d9fcbba1fc9272fb6a4aef3b2ccb181d99000d","fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181d99000d","fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181da50f1567000d").map(fv),gg=_v(vg),yg=new Array(3).concat("fee6cefdae6be6550d","feeddefdbe85fd8d3cd94701","feeddefdbe85fd8d3ce6550da63603","feeddefdd0a2fdae6bfd8d3ce6550da63603","feeddefdd0a2fdae6bfd8d3cf16913d948018c2d04","fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d948018c2d04","fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d94801a636037f2704").map(fv),_g=_v(yg),bg=Ge(Kn(300,.5,0),Kn(-240,.5,1)),mg=Ge(Kn(-100,.75,.35),Kn(80,1.5,.8)),xg=Ge(Kn(260,.75,.35),Kn(80,1.5,.8)),wg=Kn();var Mg=mn(),Ag=Math.PI/3,Tg=2*Math.PI/3;function Ng(n){var e=n.length;return function(t){return n[Math.max(0,Math.min(e-1,Math.floor(t*e)))]}}var Sg=Ng(fv("44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725")),Eg=Ng(fv("00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf")),kg=Ng(fv("00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4")),Cg=Ng(fv("0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921"));function Pg(t){return function(){return t}}var zg=Math.abs,Rg=Math.atan2,Lg=Math.cos,Dg=Math.max,Ug=Math.min,qg=Math.sin,Og=Math.sqrt,Yg=1e-12,Bg=Math.PI,Fg=Bg/2,Ig=2*Bg;function Hg(t){return 1<=t?Fg:t<=-1?-Fg:Math.asin(t)}function jg(t){return t.innerRadius}function Xg(t){return t.outerRadius}function Gg(t){return t.startAngle}function Vg(t){return t.endAngle}function Wg(t){return t&&t.padAngle}function $g(t,n,e,r,i,o,a){var u=t-e,f=n-r,c=(a?o:-o)/Og(u*u+f*f),s=c*f,l=-c*u,h=t+s,d=n+l,p=e+s,v=r+l,g=(h+p)/2,y=(d+v)/2,_=p-h,b=v-d,m=_*_+b*b,x=i-o,w=h*v-p*d,M=(b<0?-1:1)*Og(Dg(0,x*x*m-w*w)),A=(w*b-_*M)/m,T=(-w*_-b*M)/m,N=(w*b+_*M)/m,S=(-w*_+b*M)/m,E=A-g,k=T-y,C=N-g,P=S-y;return C*C+P*P<E*E+k*k&&(A=N,T=S),{cx:A,cy:T,x01:-s,y01:-l,x11:A*(i/x-1),y11:T*(i/x-1)}}function Zg(t){this._context=t}function Qg(t){return new Zg(t)}function Jg(t){return t[0]}function Kg(t){return t[1]}function ty(){var a=Jg,u=Kg,f=Pg(!0),c=null,s=Qg,l=null;function n(t){var n,e,r,i=t.length,o=!1;for(null==c&&(l=s(r=Wi())),n=0;n<=i;++n)!(n<i&&f(e=t[n],n,t))===o&&((o=!o)?l.lineStart():l.lineEnd()),o&&l.point(+a(e,n,t),+u(e,n,t));if(r)return l=null,r+""||null}return n.x=function(t){return arguments.length?(a="function"==typeof t?t:Pg(+t),n):a},n.y=function(t){return arguments.length?(u="function"==typeof t?t:Pg(+t),n):u},n.defined=function(t){return arguments.length?(f="function"==typeof t?t:Pg(!!t),n):f},n.curve=function(t){return arguments.length?(s=t,null!=c&&(l=s(c)),n):s},n.context=function(t){return arguments.length?(null==t?c=l=null:l=s(c=t),n):c},n}function ny(){var s=Jg,l=null,h=Pg(0),d=Kg,p=Pg(!0),v=null,g=Qg,y=null;function n(t){var n,e,r,i,o,a=t.length,u=!1,f=new Array(a),c=new Array(a);for(null==v&&(y=g(o=Wi())),n=0;n<=a;++n){if(!(n<a&&p(i=t[n],n,t))===u)if(u=!u)e=n,y.areaStart(),y.lineStart();else{for(y.lineEnd(),y.lineStart(),r=n-1;e<=r;--r)y.point(f[r],c[r]);y.lineEnd(),y.areaEnd()}u&&(f[n]=+s(i,n,t),c[n]=+h(i,n,t),y.point(l?+l(i,n,t):f[n],d?+d(i,n,t):c[n]))}if(o)return y=null,o+""||null}function t(){return ty().defined(p).curve(g).context(v)}return n.x=function(t){return arguments.length?(s="function"==typeof t?t:Pg(+t),l=null,n):s},n.x0=function(t){return arguments.length?(s="function"==typeof t?t:Pg(+t),n):s},n.x1=function(t){return arguments.length?(l=null==t?null:"function"==typeof t?t:Pg(+t),n):l},n.y=function(t){return arguments.length?(h="function"==typeof t?t:Pg(+t),d=null,n):h},n.y0=function(t){return arguments.length?(h="function"==typeof t?t:Pg(+t),n):h},n.y1=function(t){return arguments.length?(d=null==t?null:"function"==typeof t?t:Pg(+t),n):d},n.lineX0=n.lineY0=function(){return t().x(s).y(h)},n.lineY1=function(){return t().x(s).y(d)},n.lineX1=function(){return t().x(l).y(h)},n.defined=function(t){return arguments.length?(p="function"==typeof t?t:Pg(!!t),n):p},n.curve=function(t){return arguments.length?(g=t,null!=v&&(y=g(v)),n):g},n.context=function(t){return arguments.length?(null==t?v=y=null:y=g(v=t),n):v},n}function ey(t,n){return n<t?-1:t<n?1:t<=n?0:NaN}function ry(t){return t}Zg.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 iy=ay(Qg);function oy(t){this._curve=t}function ay(n){function t(t){return new oy(n(t))}return t._curve=n,t}function uy(t){var n=t.curve;return t.angle=t.x,delete t.x,t.radius=t.y,delete t.y,t.curve=function(t){return arguments.length?n(ay(t)):n()._curve},t}function fy(){return uy(ty().curve(iy))}function cy(){var t=ny().curve(iy),n=t.curve,e=t.lineX0,r=t.lineX1,i=t.lineY0,o=t.lineY1;return t.angle=t.x,delete t.x,t.startAngle=t.x0,delete t.x0,t.endAngle=t.x1,delete t.x1,t.radius=t.y,delete t.y,t.innerRadius=t.y0,delete t.y0,t.outerRadius=t.y1,delete t.y1,t.lineStartAngle=function(){return uy(e())},delete t.lineX0,t.lineEndAngle=function(){return uy(r())},delete t.lineX1,t.lineInnerRadius=function(){return uy(i())},delete t.lineY0,t.lineOuterRadius=function(){return uy(o())},delete t.lineY1,t.curve=function(t){return arguments.length?n(ay(t)):n()._curve},t}function sy(t,n){return[(n=+n)*Math.cos(t-=Math.PI/2),n*Math.sin(t)]}oy.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(t,n){this._curve.point(n*Math.sin(t),n*-Math.cos(t))}};var ly=Array.prototype.slice;function hy(t){return t.source}function dy(t){return t.target}function py(i){var o=hy,a=dy,u=Jg,f=Kg,c=null;function n(){var t,n=ly.call(arguments),e=o.apply(this,n),r=a.apply(this,n);if(c||(c=t=Wi()),i(c,+u.apply(this,(n[0]=e,n)),+f.apply(this,n),+u.apply(this,(n[0]=r,n)),+f.apply(this,n)),t)return c=null,t+""||null}return n.source=function(t){return arguments.length?(o=t,n):o},n.target=function(t){return arguments.length?(a=t,n):a},n.x=function(t){return arguments.length?(u="function"==typeof t?t:Pg(+t),n):u},n.y=function(t){return arguments.length?(f="function"==typeof t?t:Pg(+t),n):f},n.context=function(t){return arguments.length?(c=null==t?null:t,n):c},n}function vy(t,n,e,r,i){t.moveTo(n,e),t.bezierCurveTo(n=(n+r)/2,e,n,i,r,i)}function gy(t,n,e,r,i){t.moveTo(n,e),t.bezierCurveTo(n,e=(e+i)/2,r,e,r,i)}function yy(t,n,e,r,i){var o=sy(n,e),a=sy(n,e=(e+i)/2),u=sy(r,e),f=sy(r,i);t.moveTo(o[0],o[1]),t.bezierCurveTo(a[0],a[1],u[0],u[1],f[0],f[1])}var _y={draw:function(t,n){var e=Math.sqrt(n/Bg);t.moveTo(e,0),t.arc(0,0,e,0,Ig)}},by={draw:function(t,n){var e=Math.sqrt(n/5)/2;t.moveTo(-3*e,-e),t.lineTo(-e,-e),t.lineTo(-e,-3*e),t.lineTo(e,-3*e),t.lineTo(e,-e),t.lineTo(3*e,-e),t.lineTo(3*e,e),t.lineTo(e,e),t.lineTo(e,3*e),t.lineTo(-e,3*e),t.lineTo(-e,e),t.lineTo(-3*e,e),t.closePath()}},my=Math.sqrt(1/3),xy=2*my,wy={draw:function(t,n){var e=Math.sqrt(n/xy),r=e*my;t.moveTo(0,-e),t.lineTo(r,0),t.lineTo(0,e),t.lineTo(-r,0),t.closePath()}},My=Math.sin(Bg/10)/Math.sin(7*Bg/10),Ay=Math.sin(Ig/10)*My,Ty=-Math.cos(Ig/10)*My,Ny={draw:function(t,n){var e=Math.sqrt(.8908130915292852*n),r=Ay*e,i=Ty*e;t.moveTo(0,-e),t.lineTo(r,i);for(var o=1;o<5;++o){var a=Ig*o/5,u=Math.cos(a),f=Math.sin(a);t.lineTo(f*e,-u*e),t.lineTo(u*r-f*i,f*r+u*i)}t.closePath()}},Sy={draw:function(t,n){var e=Math.sqrt(n),r=-e/2;t.rect(r,r,e,e)}},Ey=Math.sqrt(3),ky={draw:function(t,n){var e=-Math.sqrt(n/(3*Ey));t.moveTo(0,2*e),t.lineTo(-Ey*e,-e),t.lineTo(Ey*e,-e),t.closePath()}},Cy=-.5,Py=Math.sqrt(3)/2,zy=1/Math.sqrt(12),Ry=3*(zy/2+1),Ly={draw:function(t,n){var e=Math.sqrt(n/Ry),r=e/2,i=e*zy,o=r,a=e*zy+e,u=-o,f=a;t.moveTo(r,i),t.lineTo(o,a),t.lineTo(u,f),t.lineTo(Cy*r-Py*i,Py*r+Cy*i),t.lineTo(Cy*o-Py*a,Py*o+Cy*a),t.lineTo(Cy*u-Py*f,Py*u+Cy*f),t.lineTo(Cy*r+Py*i,Cy*i-Py*r),t.lineTo(Cy*o+Py*a,Cy*a-Py*o),t.lineTo(Cy*u+Py*f,Cy*f-Py*u),t.closePath()}},Dy=[_y,by,wy,Sy,Ny,ky,Ly];function Uy(){}function qy(t,n,e){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+n)/6,(t._y0+4*t._y1+e)/6)}function Oy(t){this._context=t}function Yy(t){this._context=t}function By(t){this._context=t}function Fy(t,n){this._basis=new Oy(t),this._beta=n}Oy.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:qy(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:qy(this,t,n)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=n}},Yy.prototype={areaStart:Uy,areaEnd:Uy,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._x2=t,this._y2=n;break;case 1:this._point=2,this._x3=t,this._y3=n;break;case 2:this._point=3,this._x4=t,this._y4=n,this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+n)/6);break;default:qy(this,t,n)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=n}},By.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var e=(this._x0+4*this._x1+t)/6,r=(this._y0+4*this._y1+n)/6;this._line?this._context.lineTo(e,r):this._context.moveTo(e,r);break;case 3:this._point=4;default:qy(this,t,n)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=n}},Fy.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var t=this._x,n=this._y,e=t.length-1;if(0<e)for(var r,i=t[0],o=n[0],a=t[e]-i,u=n[e]-o,f=-1;++f<=e;)r=f/e,this._basis.point(this._beta*t[f]+(1-this._beta)*(i+r*a),this._beta*n[f]+(1-this._beta)*(o+r*u));this._x=this._y=null,this._basis.lineEnd()},point:function(t,n){this._x.push(+t),this._y.push(+n)}};var Iy=function n(e){function t(t){return 1===e?new Oy(t):new Fy(t,e)}return t.beta=function(t){return n(+t)},t}(.85);function Hy(t,n,e){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-n),t._y2+t._k*(t._y1-e),t._x2,t._y2)}function jy(t,n){this._context=t,this._k=(1-n)/6}jy.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:Hy(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2,this._x1=t,this._y1=n;break;case 2:this._point=3;default:Hy(this,t,n)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var Xy=function n(e){function t(t){return new jy(t,e)}return t.tension=function(t){return n(+t)},t}(0);function Gy(t,n){this._context=t,this._k=(1-n)/6}Gy.prototype={areaStart:Uy,areaEnd:Uy,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._x3=t,this._y3=n;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=n);break;case 2:this._point=3,this._x5=t,this._y5=n;break;default:Hy(this,t,n)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var Vy=function n(e){function t(t){return new Gy(t,e)}return t.tension=function(t){return n(+t)},t}(0);function Wy(t,n){this._context=t,this._k=(1-n)/6}Wy.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Hy(this,t,n)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var $y=function n(e){function t(t){return new Wy(t,e)}return t.tension=function(t){return n(+t)},t}(0);function Zy(t,n,e){var r=t._x1,i=t._y1,o=t._x2,a=t._y2;if(t._l01_a>Yg){var u=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,f=3*t._l01_a*(t._l01_a+t._l12_a);r=(r*u-t._x0*t._l12_2a+t._x2*t._l01_2a)/f,i=(i*u-t._y0*t._l12_2a+t._y2*t._l01_2a)/f}if(t._l23_a>Yg){var c=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,s=3*t._l23_a*(t._l23_a+t._l12_a);o=(o*c+t._x1*t._l23_2a-n*t._l12_2a)/s,a=(a*c+t._y1*t._l23_2a-e*t._l12_2a)/s}t._context.bezierCurveTo(r,i,o,a,t._x2,t._y2)}function Qy(t,n){this._context=t,this._alpha=n}Qy.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){if(t=+t,n=+n,this._point){var e=this._x2-t,r=this._y2-n;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(e*e+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;break;case 2:this._point=3;default:Zy(this,t,n)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var Jy=function n(e){function t(t){return e?new Qy(t,e):new jy(t,0)}return t.alpha=function(t){return n(+t)},t}(.5);function Ky(t,n){this._context=t,this._alpha=n}Ky.prototype={areaStart:Uy,areaEnd:Uy,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,n){if(t=+t,n=+n,this._point){var e=this._x2-t,r=this._y2-n;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(e*e+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=t,this._y3=n;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=n);break;case 2:this._point=3,this._x5=t,this._y5=n;break;default:Zy(this,t,n)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var t_=function n(e){function t(t){return e?new Ky(t,e):new Gy(t,0)}return t.alpha=function(t){return n(+t)},t}(.5);function n_(t,n){this._context=t,this._alpha=n}n_.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){if(t=+t,n=+n,this._point){var e=this._x2-t,r=this._y2-n;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(e*e+r*r,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Zy(this,t,n)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var e_=function n(e){function t(t){return e?new n_(t,e):new Wy(t,0)}return t.alpha=function(t){return n(+t)},t}(.5);function r_(t){this._context=t}function i_(t){return t<0?-1:1}function o_(t,n,e){var r=t._x1-t._x0,i=n-t._x1,o=(t._y1-t._y0)/(r||i<0&&-0),a=(e-t._y1)/(i||r<0&&-0),u=(o*i+a*r)/(r+i);return(i_(o)+i_(a))*Math.min(Math.abs(o),Math.abs(a),.5*Math.abs(u))||0}function a_(t,n){var e=t._x1-t._x0;return e?(3*(t._y1-t._y0)/e-n)/2:n}function u_(t,n,e){var r=t._x0,i=t._y0,o=t._x1,a=t._y1,u=(o-r)/3;t._context.bezierCurveTo(r+u,i+u*n,o-u,a-u*e,o,a)}function f_(t){this._context=t}function c_(t){this._context=new s_(t)}function s_(t){this._context=t}function l_(t){this._context=t}function h_(t){var n,e,r=t.length-1,i=new Array(r),o=new Array(r),a=new Array(r);for(o[i[0]=0]=2,a[0]=t[0]+2*t[1],n=1;n<r-1;++n)i[n]=1,o[n]=4,a[n]=4*t[n]+2*t[n+1];for(i[r-1]=2,o[r-1]=7,a[r-1]=8*t[r-1]+t[r],n=1;n<r;++n)e=i[n]/o[n-1],o[n]-=e,a[n]-=e*a[n-1];for(i[r-1]=a[r-1]/o[r-1],n=r-2;0<=n;--n)i[n]=(a[n]-i[n+1])/o[n];for(o[r-1]=(t[r]+i[r-1])/2,n=0;n<r-1;++n)o[n]=2*t[n+1]-i[n+1];return[i,o]}function d_(t,n){this._context=t,this._t=n}function p_(t,n){if(1<(i=t.length))for(var e,r,i,o=1,a=t[n[0]],u=a.length;o<i;++o)for(r=a,a=t[n[o]],e=0;e<u;++e)a[e][1]+=a[e][0]=isNaN(r[e][1])?r[e][0]:r[e][1]}function v_(t){for(var n=t.length,e=new Array(n);0<=--n;)e[n]=n;return e}function g_(t,n){return t[n]}function y_(t){var e=t.map(__);return v_(t).sort(function(t,n){return e[t]-e[n]})}function __(t){for(var n,e=0,r=-1,i=t.length;++r<i;)(n=+t[r][1])&&(e+=n);return e}function b_(t){return function(){return t}}function m_(t){return t[0]}function x_(t){return t[1]}function w_(){this._=null}function M_(t){t.U=t.C=t.L=t.R=t.P=t.N=null}function A_(t,n){var e=n,r=n.R,i=e.U;i?i.L===e?i.L=r:i.R=r:t._=r,r.U=i,e.U=r,e.R=r.L,e.R&&(e.R.U=e),r.L=e}function T_(t,n){var e=n,r=n.L,i=e.U;i?i.L===e?i.L=r:i.R=r:t._=r,r.U=i,e.U=r,e.L=r.R,e.L&&(e.L.U=e),r.R=e}function N_(t){for(;t.L;)t=t.L;return t}function S_(t,n,e,r){var i=[null,null],o=$_.push(i)-1;return i.left=t,i.right=n,e&&k_(i,t,n,e),r&&k_(i,n,t,r),V_[t.index].halfedges.push(o),V_[n.index].halfedges.push(o),i}function E_(t,n,e){var r=[n,e];return r.left=t,r}function k_(t,n,e,r){t[0]||t[1]?t.left===e?t[1]=r:t[0]=r:(t[0]=r,t.left=n,t.right=e)}function C_(t,n,e,r,i){var o,a=t[0],u=t[1],f=a[0],c=a[1],s=0,l=1,h=u[0]-f,d=u[1]-c;if(o=n-f,h||!(0<o)){if(o/=h,h<0){if(o<s)return;o<l&&(l=o)}else if(0<h){if(l<o)return;s<o&&(s=o)}if(o=r-f,h||!(o<0)){if(o/=h,h<0){if(l<o)return;s<o&&(s=o)}else if(0<h){if(o<s)return;o<l&&(l=o)}if(o=e-c,d||!(0<o)){if(o/=d,d<0){if(o<s)return;o<l&&(l=o)}else if(0<d){if(l<o)return;s<o&&(s=o)}if(o=i-c,d||!(o<0)){if(o/=d,d<0){if(l<o)return;s<o&&(s=o)}else if(0<d){if(o<s)return;o<l&&(l=o)}return(0<s||l<1)&&(0<s&&(t[0]=[f+s*h,c+s*d]),l<1&&(t[1]=[f+l*h,c+l*d])),!0}}}}}function P_(t,n,e,r,i){var o=t[1];if(o)return!0;var a,u,f=t[0],c=t.left,s=t.right,l=c[0],h=c[1],d=s[0],p=s[1],v=(l+d)/2,g=(h+p)/2;if(p===h){if(v<n||r<=v)return;if(d<l){if(f){if(f[1]>=i)return}else f=[v,e];o=[v,i]}else{if(f){if(f[1]<e)return}else f=[v,i];o=[v,e]}}else if(u=g-(a=(l-d)/(p-h))*v,a<-1||1<a)if(d<l){if(f){if(f[1]>=i)return}else f=[(e-u)/a,e];o=[(i-u)/a,i]}else{if(f){if(f[1]<e)return}else f=[(i-u)/a,i];o=[(e-u)/a,e]}else if(h<p){if(f){if(f[0]>=r)return}else f=[n,a*n+u];o=[r,a*r+u]}else{if(f){if(f[0]<n)return}else f=[r,a*r+u];o=[n,a*n+u]}return t[0]=f,t[1]=o,!0}function z_(t,n){return n[+(n.left!==t.site)]}r_.prototype={areaStart:Uy,areaEnd:Uy,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(t,n){t=+t,n=+n,this._point?this._context.lineTo(t,n):(this._point=1,this._context.moveTo(t,n))}},f_.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:u_(this,this._t0,a_(this,this._t0))}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){var e=NaN;if(n=+n,(t=+t)!==this._x1||n!==this._y1){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;break;case 2:this._point=3,u_(this,a_(this,e=o_(this,t,n)),e);break;default:u_(this,this._t0,e=o_(this,t,n))}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=n,this._t0=e}}},(c_.prototype=Object.create(f_.prototype)).point=function(t,n){f_.prototype.point.call(this,n,t)},s_.prototype={moveTo:function(t,n){this._context.moveTo(n,t)},closePath:function(){this._context.closePath()},lineTo:function(t,n){this._context.lineTo(n,t)},bezierCurveTo:function(t,n,e,r,i,o){this._context.bezierCurveTo(n,t,r,e,o,i)}},l_.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var t=this._x,n=this._y,e=t.length;if(e)if(this._line?this._context.lineTo(t[0],n[0]):this._context.moveTo(t[0],n[0]),2===e)this._context.lineTo(t[1],n[1]);else for(var r=h_(t),i=h_(n),o=0,a=1;a<e;++o,++a)this._context.bezierCurveTo(r[0][o],i[0][o],r[1][o],i[1][o],t[a],n[a]);(this._line||0!==this._line&&1===e)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(t,n){this._x.push(+t),this._y.push(+n)}},d_.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&2===this._point&&this._context.lineTo(this._x,this._y),(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),0<=this._line&&(this._t=1-this._t,this._line=1-this._line)},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,n),this._context.lineTo(t,n);else{var e=this._x*(1-this._t)+t*this._t;this._context.lineTo(e,this._y),this._context.lineTo(e,n)}}this._x=t,this._y=n}},w_.prototype={constructor:w_,insert:function(t,n){var e,r,i;if(t){if(n.P=t,n.N=t.N,t.N&&(t.N.P=n),t.N=n,t.R){for(t=t.R;t.L;)t=t.L;t.L=n}else t.R=n;e=t}else e=this._?(t=N_(this._),n.P=null,(n.N=t).P=t.L=n,t):(n.P=n.N=null,this._=n,null);for(n.L=n.R=null,n.U=e,n.C=!0,t=n;e&&e.C;)e===(r=e.U).L?(i=r.R)&&i.C?(e.C=i.C=!1,r.C=!0,t=r):(t===e.R&&(A_(this,e),e=(t=e).U),e.C=!1,r.C=!0,T_(this,r)):(i=r.L)&&i.C?(e.C=i.C=!1,r.C=!0,t=r):(t===e.L&&(T_(this,e),e=(t=e).U),e.C=!1,r.C=!0,A_(this,r)),e=t.U;this._.C=!1},remove:function(t){t.N&&(t.N.P=t.P),t.P&&(t.P.N=t.N),t.N=t.P=null;var n,e,r,i=t.U,o=t.L,a=t.R;if(e=o?a?N_(a):o:a,i?i.L===t?i.L=e:i.R=e:this._=e,o&&a?(r=e.C,e.C=t.C,((e.L=o).U=e)!==a?(i=e.U,e.U=t.U,t=e.R,i.L=t,(e.R=a).U=e):(e.U=i,t=(i=e).R)):(r=t.C,t=e),t&&(t.U=i),!r)if(t&&t.C)t.C=!1;else{do{if(t===this._)break;if(t===i.L){if((n=i.R).C&&(n.C=!1,i.C=!0,A_(this,i),n=i.R),n.L&&n.L.C||n.R&&n.R.C){n.R&&n.R.C||(n.L.C=!1,n.C=!0,T_(this,n),n=i.R),n.C=i.C,i.C=n.R.C=!1,A_(this,i),t=this._;break}}else if((n=i.L).C&&(n.C=!1,i.C=!0,T_(this,i),n=i.L),n.L&&n.L.C||n.R&&n.R.C){n.L&&n.L.C||(n.R.C=!1,n.C=!0,A_(this,n),n=i.L),n.C=i.C,i.C=n.L.C=!1,T_(this,i),t=this._;break}n.C=!0,i=(t=i).U}while(!t.C);t&&(t.C=!1)}}};var R_,L_=[];function D_(){M_(this),this.x=this.y=this.arc=this.site=this.cy=null}function U_(t){var n=t.P,e=t.N;if(n&&e){var r=n.site,i=t.site,o=e.site;if(r!==o){var a=i[0],u=i[1],f=r[0]-a,c=r[1]-u,s=o[0]-a,l=o[1]-u,h=2*(f*l-c*s);if(!(-Q_<=h)){var d=f*f+c*c,p=s*s+l*l,v=(l*d-c*p)/h,g=(f*p-s*d)/h,y=L_.pop()||new D_;y.arc=t,y.site=i,y.x=v+a,y.y=(y.cy=g+u)+Math.sqrt(v*v+g*g),t.circle=y;for(var _=null,b=W_._;b;)if(y.y<b.y||y.y===b.y&&y.x<=b.x){if(!b.L){_=b.P;break}b=b.L}else{if(!b.R){_=b;break}b=b.R}W_.insert(_,y),_||(R_=y)}}}}function q_(t){var n=t.circle;n&&(n.P||(R_=n.N),W_.remove(n),L_.push(n),M_(n),t.circle=null)}var O_=[];function Y_(){M_(this),this.edge=this.site=this.circle=null}function B_(t){var n=O_.pop()||new Y_;return n.site=t,n}function F_(t){q_(t),G_.remove(t),O_.push(t),M_(t)}function I_(t){var n=t.circle,e=n.x,r=n.cy,i=[e,r],o=t.P,a=t.N,u=[t];F_(t);for(var f=o;f.circle&&Math.abs(e-f.circle.x)<Z_&&Math.abs(r-f.circle.cy)<Z_;)o=f.P,u.unshift(f),F_(f),f=o;u.unshift(f),q_(f);for(var c=a;c.circle&&Math.abs(e-c.circle.x)<Z_&&Math.abs(r-c.circle.cy)<Z_;)a=c.N,u.push(c),F_(c),c=a;u.push(c),q_(c);var s,l=u.length;for(s=1;s<l;++s)c=u[s],f=u[s-1],k_(c.edge,f.site,c.site,i);f=u[0],(c=u[l-1]).edge=S_(f.site,c.site,null,i),U_(f),U_(c)}function H_(t){for(var n,e,r,i,o,a=t[0],u=t[1],f=G_._;f;)if(r=j_(f,u)-a,Z_<r)f=f.L;else{if(i=a-X_(f,u),!(Z_<i)){-Z_<r?(n=f.P,e=f):-Z_<i?e=(n=f).N:n=e=f;break}if(!f.R){n=f;break}f=f.R}V_[(o=t).index]={site:o,halfedges:[]};var c=B_(t);if(G_.insert(n,c),n||e){if(n===e)return q_(n),e=B_(n.site),G_.insert(c,e),c.edge=e.edge=S_(n.site,c.site),U_(n),void U_(e);if(e){q_(n),q_(e);var s=n.site,l=s[0],h=s[1],d=t[0]-l,p=t[1]-h,v=e.site,g=v[0]-l,y=v[1]-h,_=2*(d*y-p*g),b=d*d+p*p,m=g*g+y*y,x=[(y*b-p*m)/_+l,(d*m-g*b)/_+h];k_(e.edge,s,v,x),c.edge=S_(s,t,null,x),e.edge=S_(t,v,null,x),U_(n),U_(e)}else c.edge=S_(n.site,c.site)}}function j_(t,n){var e=t.site,r=e[0],i=e[1],o=i-n;if(!o)return r;var a=t.P;if(!a)return-1/0;var u=(e=a.site)[0],f=e[1],c=f-n;if(!c)return u;var s=u-r,l=1/o-1/c,h=s/c;return l?(-h+Math.sqrt(h*h-2*l*(s*s/(-2*c)-f+c/2+i-o/2)))/l+r:(r+u)/2}function X_(t,n){var e=t.N;if(e)return j_(e,n);var r=t.site;return r[1]===n?r[0]:1/0}var G_,V_,W_,$_,Z_=1e-6,Q_=1e-12;function J_(t,n){return n[1]-t[1]||n[0]-t[0]}function K_(t,n){var e,r,i,o=t.sort(J_).pop();for($_=[],V_=new Array(t.length),G_=new w_,W_=new w_;;)if(i=R_,o&&(!i||o[1]<i.y||o[1]===i.y&&o[0]<i.x))o[0]===e&&o[1]===r||(H_(o),e=o[0],r=o[1]),o=t.pop();else{if(!i)break;I_(i.arc)}if(function(){for(var t,n,e,r,i=0,o=V_.length;i<o;++i)if((t=V_[i])&&(r=(n=t.halfedges).length)){var a=new Array(r),u=new Array(r);for(e=0;e<r;++e)a[e]=e,u[e]=(f=t,c=$_[n[e]],h=l=void 0,s=f.site,l=c.left,h=c.right,s===h&&(h=l,l=s),h?Math.atan2(h[1]-l[1],h[0]-l[0]):(h=s===l?(l=c[1],c[0]):(l=c[0],c[1]),Math.atan2(l[0]-h[0],h[1]-l[1])));for(a.sort(function(t,n){return u[n]-u[t]}),e=0;e<r;++e)u[e]=n[a[e]];for(e=0;e<r;++e)n[e]=u[e]}var f,c,s,l,h}(),n){var a=+n[0][0],u=+n[0][1],f=+n[1][0],c=+n[1][1];!function(t,n,e,r){for(var i,o=$_.length;o--;)P_(i=$_[o],t,n,e,r)&&C_(i,t,n,e,r)&&(Math.abs(i[0][0]-i[1][0])>Z_||Math.abs(i[0][1]-i[1][1])>Z_)||delete $_[o]}(a,u,f,c),function(t,n,e,r){var i,o,a,u,f,c,s,l,h,d,p,v,g,y,_=V_.length,b=!0;for(i=0;i<_;++i)if(o=V_[i]){for(a=o.site,u=(f=o.halfedges).length;u--;)$_[f[u]]||f.splice(u,1);for(u=0,c=f.length;u<c;)g=o,p=(d=(y=$_[f[u]])[+(y.left===g.site)])[0],v=d[1],l=(s=z_(o,$_[f[++u%c]]))[0],h=s[1],(Math.abs(p-l)>Z_||Math.abs(v-h)>Z_)&&(f.splice(u,0,$_.push(E_(a,d,Math.abs(p-t)<Z_&&Z_<r-v?[t,Math.abs(l-t)<Z_?h:r]:Math.abs(v-r)<Z_&&Z_<e-p?[Math.abs(h-r)<Z_?l:e,r]:Math.abs(p-e)<Z_&&Z_<v-n?[e,Math.abs(l-e)<Z_?h:n]:Math.abs(v-n)<Z_&&Z_<p-t?[Math.abs(h-n)<Z_?l:t,n]:null))-1),++c);c&&(b=!1)}if(b){var m,x,w,M=1/0;for(i=0,b=null;i<_;++i)(o=V_[i])&&(w=(m=(a=o.site)[0]-t)*m+(x=a[1]-n)*x)<M&&(M=w,b=o);if(b){var A=[t,n],T=[t,r],N=[e,r],S=[e,n];b.halfedges.push($_.push(E_(a=b.site,A,T))-1,$_.push(E_(a,T,N))-1,$_.push(E_(a,N,S))-1,$_.push(E_(a,S,A))-1)}}for(i=0;i<_;++i)(o=V_[i])&&(o.halfedges.length||delete V_[i])}(a,u,f,c)}this.edges=$_,this.cells=V_,G_=W_=$_=V_=null}function tb(t){return function(){return t}}function nb(t,n,e){this.target=t,this.type=n,this.transform=e}function eb(t,n,e){this.k=t,this.x=n,this.y=e}K_.prototype={constructor:K_,polygons:function(){var e=this.edges;return this.cells.map(function(n){var t=n.halfedges.map(function(t){return z_(n,e[t])});return t.data=n.site.data,t})},triangles:function(){var h=[],d=this.edges;return this.cells.forEach(function(t,n){if(r=(e=t.halfedges).length)for(var e,r,i,o,a,u,f=t.site,c=-1,s=d[e[r-1]],l=s.left===f?s.right:s.left;++c<r;)i=l,l=(s=d[e[c]]).left===f?s.right:s.left,i&&l&&n<i.index&&n<l.index&&(a=i,u=l,((o=f)[0]-u[0])*(a[1]-o[1])-(o[0]-a[0])*(u[1]-o[1])<0)&&h.push([f.data,i.data,l.data])}),h},links:function(){return this.edges.filter(function(t){return t.right}).map(function(t){return{source:t.left.data,target:t.right.data}})},find:function(a,u,t){for(var n,f,c=this,s=c._found||0,e=c.cells.length;!(f=c.cells[s]);)if(++s>=e)return null;for(var r=a-f.site[0],i=u-f.site[1],l=r*r+i*i;f=c.cells[n=s],s=null,f.halfedges.forEach(function(t){var n=c.edges[t],e=n.left;if(e!==f.site&&e||(e=n.right)){var r=a-e[0],i=u-e[1],o=r*r+i*i;o<l&&(l=o,s=e.index)}}),null!==s;);return c._found=n,null==t||l<=t*t?f.site:null}},eb.prototype={constructor:eb,scale:function(t){return 1===t?this:new eb(this.k*t,this.x,this.y)},translate:function(t,n){return 0===t&0===n?this:new eb(this.k,this.x+this.k*t,this.y+this.k*n)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var rb=new eb(1,0,0);function ib(t){return t.__zoom||rb}function ob(){B.event.stopImmediatePropagation()}function ab(){B.event.preventDefault(),B.event.stopImmediatePropagation()}function ub(){return!B.event.button}function fb(){var t,n,e=this;return n=e instanceof SVGElement?(t=(e=e.ownerSVGElement||e).width.baseVal.value,e.height.baseVal.value):(t=e.clientWidth,e.clientHeight),[[0,0],[t,n]]}function cb(){return this.__zoom||rb}function sb(){return-B.event.deltaY*(B.event.deltaMode?120:1)/500}function lb(){return"ontouchstart"in this}function hb(t,n,e){var r=t.invertX(n[0][0])-e[0][0],i=t.invertX(n[1][0])-e[1][0],o=t.invertY(n[0][1])-e[0][1],a=t.invertY(n[1][1])-e[1][1];return t.translate(r<i?(r+i)/2:Math.min(0,r)||Math.max(0,i),o<a?(o+a)/2:Math.min(0,o)||Math.max(0,a))}ib.prototype=eb.prototype,B.version="5.7.0",B.bisect=v,B.bisectRight=v,B.bisectLeft=n,B.ascending=u,B.bisector=A,B.cross=function(t,n,e){var r,i,o,a,u=t.length,f=n.length,c=new Array(u*f);for(null==e&&(e=s),r=o=0;r<u;++r)for(a=t[r],i=0;i<f;++i,++o)c[o]=e(a,n[i]);return c},B.descending=function(t,n){return n<t?-1:t<n?1:t<=n?0:NaN},B.deviation=i,B.extent=f,B.histogram=function(){var h=g,d=f,p=b;function n(t){var n,e,r=t.length,i=new Array(r);for(n=0;n<r;++n)i[n]=h(t[n],n,t);var o=d(i),a=o[0],u=o[1],f=p(i,a,u);Array.isArray(f)||(f=N(a,u,f),f=T(Math.ceil(a/f)*f,u,f));for(var c=f.length;f[0]<=a;)f.shift(),--c;for(;f[c-1]>u;)f.pop(),--c;var s,l=new Array(c+1);for(n=0;n<=c;++n)(s=l[n]=[]).x0=0<n?f[n-1]:a,s.x1=n<c?f[n]:u;for(n=0;n<r;++n)a<=(e=i[n])&&e<=u&&l[v(f,e,0,c)].push(t[n]);return l}return n.value=function(t){return arguments.length?(h="function"==typeof t?t:l(t),n):h},n.domain=function(t){return arguments.length?(d="function"==typeof t?t:l([t[0],t[1]]),n):d},n.thresholds=function(t){return arguments.length?(p="function"==typeof t?t:Array.isArray(t)?l(o.call(t)):l(t),n):p},n},B.thresholdFreedmanDiaconis=function(t,n,e){return t=a.call(t,c).sort(u),Math.ceil((e-n)/(2*(m(t,.75)-m(t,.25))*Math.pow(t.length,-1/3)))},B.thresholdScott=function(t,n,e){return Math.ceil((e-n)/(3.5*i(t)*Math.pow(t.length,-1/3)))},B.thresholdSturges=b,B.max=x,B.mean=function(t,n){var e,r=t.length,i=r,o=-1,a=0;if(null==n)for(;++o<r;)isNaN(e=c(t[o]))?--i:a+=e;else for(;++o<r;)isNaN(e=c(n(t[o],o,t)))?--i:a+=e;if(i)return a/i},B.median=function(t,n){var e,r=t.length,i=-1,o=[];if(null==n)for(;++i<r;)isNaN(e=c(t[i]))||o.push(e);else for(;++i<r;)isNaN(e=c(n(t[i],i,t)))||o.push(e);return m(o.sort(u),.5)},B.merge=S,B.min=w,B.pairs=function(t,n){null==n&&(n=s);for(var e=0,r=t.length-1,i=t[0],o=new Array(r<0?0:r);e<r;)o[e]=n(i,i=t[++e]);return o},B.permute=function(t,n){for(var e=n.length,r=new Array(e);e--;)r[e]=t[n[e]];return r},B.quantile=m,B.range=T,B.scan=function(t,n){if(e=t.length){var e,r,i=0,o=0,a=t[o];for(null==n&&(n=u);++i<e;)(n(r=t[i],a)<0||0!==n(a,a))&&(a=r,o=i);return 0===n(a,a)?o:void 0}},B.shuffle=function(t,n,e){for(var r,i,o=(null==e?t.length:e)-(n=null==n?0:+n);o;)i=Math.random()*o--|0,r=t[o+n],t[o+n]=t[i+n],t[i+n]=r;return t},B.sum=function(t,n){var e,r=t.length,i=-1,o=0;if(null==n)for(;++i<r;)(e=+t[i])&&(o+=e);else for(;++i<r;)(e=+n(t[i],i,t))&&(o+=e);return o},B.ticks=y,B.tickIncrement=_,B.tickStep=N,B.transpose=M,B.variance=r,B.zip=function(){return M(arguments)},B.axisTop=function(t){return Y(P,t)},B.axisRight=function(t){return Y(z,t)},B.axisBottom=function(t){return Y(R,t)},B.axisLeft=function(t){return Y(L,t)},B.brush=function(){return Li(Mi)},B.brushX=function(){return Li(xi)},B.brushY=function(){return Li(wi)},B.brushSelection=function(t){var n=t.__brush;return n?n.dim.output(n.selection):null},B.chord=function(){var x=0,w=null,M=null,A=null;function n(r){var t,n,e,i,o,a,u=r.length,f=[],c=T(u),s=[],l=[],h=l.groups=new Array(u),d=new Array(u*u);for(t=0,o=-1;++o<u;){for(n=0,a=-1;++a<u;)n+=r[o][a];f.push(n),s.push(T(u)),t+=n}for(w&&c.sort(function(t,n){return w(f[t],f[n])}),M&&s.forEach(function(t,e){t.sort(function(t,n){return M(r[e][t],r[e][n])})}),i=(t=Bi(0,Yi-x*u)/t)?x:Yi/u,n=0,o=-1;++o<u;){for(e=n,a=-1;++a<u;){var p=c[o],v=s[p][a],g=r[p][v],y=n,_=n+=g*t;d[v*u+p]={index:p,subindex:v,startAngle:y,endAngle:_,value:g}}h[p]={index:p,startAngle:e,endAngle:n,value:f[p]},n+=i}for(o=-1;++o<u;)for(a=o-1;++a<u;){var b=d[a*u+o],m=d[o*u+a];(b.value||m.value)&&l.push(b.value<m.value?{source:m,target:b}:{source:b,target:m})}return A?l.sort(A):l}return n.padAngle=function(t){return arguments.length?(x=Bi(0,t),n):x},n.sortGroups=function(t){return arguments.length?(w=t,n):w},n.sortSubgroups=function(t){return arguments.length?(M=t,n):M},n.sortChords=function(t){return arguments.length?(null==t?A=null:(e=t,A=function(t,n){return e(t.source.value+t.target.value,n.source.value+n.target.value)})._=t,n):A&&A._;var e},n},B.ribbon=function(){var h=$i,d=Zi,p=Qi,v=Ji,g=Ki,y=null;function n(){var t,n=Fi.call(arguments),e=h.apply(this,n),r=d.apply(this,n),i=+p.apply(this,(n[0]=e,n)),o=v.apply(this,n)-Oi,a=g.apply(this,n)-Oi,u=i*Di(o),f=i*Ui(o),c=+p.apply(this,(n[0]=r,n)),s=v.apply(this,n)-Oi,l=g.apply(this,n)-Oi;if(y||(y=t=Wi()),y.moveTo(u,f),y.arc(0,0,i,o,a),o===s&&a===l||(y.quadraticCurveTo(0,0,c*Di(s),c*Ui(s)),y.arc(0,0,c,s,l)),y.quadraticCurveTo(0,0,u,f),y.closePath(),t)return y=null,t+""||null}return n.radius=function(t){return arguments.length?(p="function"==typeof t?t:Ii(+t),n):p},n.startAngle=function(t){return arguments.length?(v="function"==typeof t?t:Ii(+t),n):v},n.endAngle=function(t){return arguments.length?(g="function"==typeof t?t:Ii(+t),n):g},n.source=function(t){return arguments.length?(h=t,n):h},n.target=function(t){return arguments.length?(d=t,n):d},n.context=function(t){return arguments.length?(y=null==t?null:t,n):y},n},B.nest=function(){var h,d,n,p=[],a=[];function v(t,e,r,i){if(e>=p.length)return null!=h&&t.sort(h),null!=d?d(t):t;for(var n,o,a,u=-1,f=t.length,c=p[e++],s=eo(),l=r();++u<f;)(a=s.get(n=c(o=t[u])+""))?a.push(o):s.set(n,[o]);return s.each(function(t,n){i(l,n,v(t,e,r,i))}),l}return n={object:function(t){return v(t,0,ro,io)},map:function(t){return v(t,0,oo,ao)},entries:function(t){return function e(t,r){if(++r>p.length)return t;var i,o=a[r-1];return null!=d&&r>=p.length?i=t.entries():(i=[],t.each(function(t,n){i.push({key:n,values:e(t,r)})})),null!=o?i.sort(function(t,n){return o(t.key,n.key)}):i}(v(t,0,oo,ao),0)},key:function(t){return p.push(t),n},sortKeys:function(t){return a[p.length-1]=t,n},sortValues:function(t){return h=t,n},rollup:function(t){return d=t,n}}},B.set=co,B.map=eo,B.keys=function(t){var n=[];for(var e in t)n.push(e);return n},B.values=function(t){var n=[];for(var e in t)n.push(t[e]);return n},B.entries=function(t){var n=[];for(var e in t)n.push({key:e,value:t[e]});return n},B.color=gn,B.rgb=mn,B.hsl=An,B.lab=qn,B.hcl=jn,B.lch=function(t,n,e,r){return 1===arguments.length?Hn(t):new Xn(e,n,t,null==r?1:r)},B.gray=function(t,n){return new On(t,0,0,null==n?1:n)},B.cubehelix=Kn,B.contours=_o,B.contourDensity=function(){var u=xo,f=wo,c=Mo,r=960,i=500,o=20,s=2,l=3*o,h=r+2*l>>s,d=i+2*l>>s,p=ho(20);function n(t){var a=new Float32Array(h*d),n=new Float32Array(h*d);t.forEach(function(t,n,e){var r=+u(t,n,e)+l>>s,i=+f(t,n,e)+l>>s,o=+c(t,n,e);0<=r&&r<h&&0<=i&&i<d&&(a[r+i*h]+=o)}),bo({width:h,height:d,data:a},{width:h,height:d,data:n},o>>s),mo({width:h,height:d,data:n},{width:h,height:d,data:a},o>>s),bo({width:h,height:d,data:a},{width:h,height:d,data:n},o>>s),mo({width:h,height:d,data:n},{width:h,height:d,data:a},o>>s),bo({width:h,height:d,data:a},{width:h,height:d,data:n},o>>s),mo({width:h,height:d,data:n},{width:h,height:d,data:a},o>>s);var e=p(a);if(!Array.isArray(e)){var r=x(a);e=N(0,r,e),(e=T(0,Math.floor(r/e)*e,e)).shift()}return _o().thresholds(e).size([h,d])(a).map(v)}function v(t){return t.value*=Math.pow(2,-2*s),t.coordinates.forEach(e),t}function e(t){t.forEach(a)}function a(t){t.forEach(g)}function g(t){t[0]=t[0]*Math.pow(2,s)-l,t[1]=t[1]*Math.pow(2,s)-l}function y(){return h=r+2*(l=3*o)>>s,d=i+2*l>>s,n}return n.x=function(t){return arguments.length?(u="function"==typeof t?t:ho(+t),n):u},n.y=function(t){return arguments.length?(f="function"==typeof t?t:ho(+t),n):f},n.weight=function(t){return arguments.length?(c="function"==typeof t?t:ho(+t),n):c},n.size=function(t){if(!arguments.length)return[r,i];var n=Math.ceil(t[0]),e=Math.ceil(t[1]);if(!(0<=n||0<=n))throw new Error("invalid size");return r=n,i=e,y()},n.cellSize=function(t){if(!arguments.length)return 1<<s;if(!(1<=(t=+t)))throw new Error("invalid cell size");return s=Math.floor(Math.log(t)/Math.LN2),y()},n.thresholds=function(t){return arguments.length?(p="function"==typeof t?t:Array.isArray(t)?ho(so.call(t)):ho(t),n):p},n.bandwidth=function(t){if(!arguments.length)return Math.sqrt(o*(o+1));if(!(0<=(t=+t)))throw new Error("invalid bandwidth");return o=Math.round((Math.sqrt(4*t*t+1)-1)/2),y()},n},B.dispatch=I,B.drag=function(){var e,r,i,o,a=$t,u=Zt,n=Qt,f=Jt,p={},v=I("start","drag","end"),g=0,c=0;function y(t){t.on("mousedown.drag",s).filter(f).on("touchstart.drag",d).on("touchmove.drag",_).on("touchend.drag touchcancel.drag",b).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function s(){if(!o&&a.apply(this,arguments)){var t=m("mouse",u.apply(this,arguments),Ft,this,arguments);t&&(Dt(B.event.view).on("mousemove.drag",l,!0).on("mouseup.drag",h,!0),Xt(B.event.view),Ht(),i=!1,e=B.event.clientX,r=B.event.clientY,t("start"))}}function l(){if(jt(),!i){var t=B.event.clientX-e,n=B.event.clientY-r;i=c<t*t+n*n}p.mouse("drag")}function h(){Dt(B.event.view).on("mousemove.drag mouseup.drag",null),Gt(B.event.view,i),jt(),p.mouse("end")}function d(){if(a.apply(this,arguments)){var t,n,e=B.event.changedTouches,r=u.apply(this,arguments),i=e.length;for(t=0;t<i;++t)(n=m(e[t].identifier,r,It,this,arguments))&&(Ht(),n("start"))}}function _(){var t,n,e=B.event.changedTouches,r=e.length;for(t=0;t<r;++t)(n=p[e[t].identifier])&&(jt(),n("drag"))}function b(){var t,n,e=B.event.changedTouches,r=e.length;for(o&&clearTimeout(o),o=setTimeout(function(){o=null},500),t=0;t<r;++t)(n=p[e[t].identifier])&&(Ht(),n("end"))}function m(i,o,a,u,f){var c,s,l,h=a(o,i),d=v.copy();if(Ct(new Wt(y,"beforestart",c,i,g,h[0],h[1],0,0,d),function(){return null!=(B.event.subject=c=n.apply(u,f))&&(s=c.x-h[0]||0,l=c.y-h[1]||0,!0)}))return function t(n){var e,r=h;switch(n){case"start":p[i]=t,e=g++;break;case"end":delete p[i],--g;case"drag":h=a(o,i),e=g}Ct(new Wt(y,n,c,i,e,h[0]+s,h[1]+l,h[0]-r[0],h[1]-r[1],d),d.apply,d,[n,u,f])}}return y.filter=function(t){return arguments.length?(a="function"==typeof t?t:Vt(!!t),y):a},y.container=function(t){return arguments.length?(u="function"==typeof t?t:Vt(t),y):u},y.subject=function(t){return arguments.length?(n="function"==typeof t?t:Vt(t),y):n},y.touchable=function(t){return arguments.length?(f="function"==typeof t?t:Vt(!!t),y):f},y.on=function(){var t=v.on.apply(v,arguments);return t===v?y:t},y.clickDistance=function(t){return arguments.length?(c=(t=+t)*t,y):Math.sqrt(c)},y},B.dragDisable=Xt,B.dragEnable=Gt,B.dsvFormat=Co,B.csvParse=zo,B.csvParseRows=Ro,B.csvFormat=Lo,B.csvFormatRows=Do,B.tsvParse=qo,B.tsvParseRows=Oo,B.tsvFormat=Yo,B.tsvFormatRows=Bo,B.easeLinear=function(t){return+t},B.easeQuad=Dr,B.easeQuadIn=function(t){return t*t},B.easeQuadOut=function(t){return t*(2-t)},B.easeQuadInOut=Dr,B.easeCubic=Ur,B.easeCubicIn=function(t){return t*t*t},B.easeCubicOut=function(t){return--t*t*t+1},B.easeCubicInOut=Ur,B.easePoly=Yr,B.easePolyIn=qr,B.easePolyOut=Or,B.easePolyInOut=Yr,B.easeSin=Ir,B.easeSinIn=function(t){return 1-Math.cos(t*Fr)},B.easeSinOut=function(t){return Math.sin(t*Fr)},B.easeSinInOut=Ir,B.easeExp=Hr,B.easeExpIn=function(t){return Math.pow(2,10*t-10)},B.easeExpOut=function(t){return 1-Math.pow(2,-10*t)},B.easeExpInOut=Hr,B.easeCircle=jr,B.easeCircleIn=function(t){return 1-Math.sqrt(1-t*t)},B.easeCircleOut=function(t){return Math.sqrt(1- --t*t)},B.easeCircleInOut=jr,B.easeBounce=ni,B.easeBounceIn=function(t){return 1-ni(1-t)},B.easeBounceOut=ni,B.easeBounceInOut=function(t){return((t*=2)<=1?1-ni(1-t):ni(t-1)+1)/2},B.easeBack=oi,B.easeBackIn=ri,B.easeBackOut=ii,B.easeBackInOut=oi,B.easeElastic=fi,B.easeElasticIn=ui,B.easeElasticOut=fi,B.easeElasticInOut=ci,B.blob=function(t,n){return fetch(t,n).then(Fo)},B.buffer=function(t,n){return fetch(t,n).then(Io)},B.dsv=function(t,n,e,r){3===arguments.length&&"function"==typeof e&&(r=e,e=void 0);var i=Co(t);return jo(n,e).then(function(t){return i.parse(t,r)})},B.csv=Go,B.tsv=Vo,B.image=function(i,o){return new Promise(function(t,n){var e=new Image;for(var r in o)e[r]=o[r];e.onerror=n,e.onload=function(){t(e)},e.src=i})},B.json=function(t,n){return fetch(t,n).then(Wo)},B.text=jo,B.xml=Zo,B.html=Qo,B.svg=Jo,B.forceCenter=function(o,a){var u;function n(){var t,n,e=u.length,r=0,i=0;for(t=0;t<e;++t)r+=(n=u[t]).x,i+=n.y;for(r=r/e-o,i=i/e-a,t=0;t<e;++t)(n=u[t]).x-=r,n.y-=i}return null==o&&(o=0),null==a&&(a=0),n.initialize=function(t){u=t},n.x=function(t){return arguments.length?(o=+t,n):o},n.y=function(t){return arguments.length?(a=+t,n):a},n},B.forceCollide=function(r){var o,a,g=1,u=1;function n(){for(var t,n,l,h,d,p,v,e=o.length,r=0;r<u;++r)for(n=oa(o,ca,sa).visitAfter(f),t=0;t<e;++t)l=o[t],p=a[l.index],v=p*p,h=l.x+l.vx,d=l.y+l.vy,n.visit(i);function i(t,n,e,r,i){var o=t.data,a=t.r,u=p+a;if(!o)return h+u<n||r<h-u||d+u<e||i<d-u;if(o.index>l.index){var f=h-o.x-o.vx,c=d-o.y-o.vy,s=f*f+c*c;s<u*u&&(0===f&&(s+=(f=ta())*f),0===c&&(s+=(c=ta())*c),s=(u-(s=Math.sqrt(s)))/s*g,l.vx+=(f*=s)*(u=(a*=a)/(v+a)),l.vy+=(c*=s)*u,o.vx-=f*(u=1-u),o.vy-=c*u)}}}function f(t){if(t.data)return t.r=a[t.data.index];for(var n=t.r=0;n<4;++n)t[n]&&t[n].r>t.r&&(t.r=t[n].r)}function e(){if(o){var t,n,e=o.length;for(a=new Array(e),t=0;t<e;++t)n=o[t],a[n.index]=+r(n,t,o)}}return"function"!=typeof r&&(r=Ko(null==r?1:+r)),n.initialize=function(t){o=t,e()},n.iterations=function(t){return arguments.length?(u=+t,n):u},n.strength=function(t){return arguments.length?(g=+t,n):g},n.radius=function(t){return arguments.length?(r="function"==typeof t?t:Ko(+t),e(),n):r},n},B.forceLink=function(l){var h,d,o,a,p,u=la,e=function(t){return 1/Math.min(a[t.source.index],a[t.target.index])},r=Ko(30),v=1;function n(t){for(var n=0,e=l.length;n<v;++n)for(var r,i,o,a,u,f,c,s=0;s<e;++s)i=(r=l[s]).source,a=(o=r.target).x+o.vx-i.x-i.vx||ta(),u=o.y+o.vy-i.y-i.vy||ta(),a*=f=((f=Math.sqrt(a*a+u*u))-d[s])/f*t*h[s],u*=f,o.vx-=a*(c=p[s]),o.vy-=u*c,i.vx+=a*(c=1-c),i.vy+=u*c}function i(){if(o){var t,n,e=o.length,r=l.length,i=eo(o,u);for(t=0,a=new Array(e);t<r;++t)(n=l[t]).index=t,"object"!=typeof n.source&&(n.source=ha(i,n.source)),"object"!=typeof n.target&&(n.target=ha(i,n.target)),a[n.source.index]=(a[n.source.index]||0)+1,a[n.target.index]=(a[n.target.index]||0)+1;for(t=0,p=new Array(r);t<r;++t)n=l[t],p[t]=a[n.source.index]/(a[n.source.index]+a[n.target.index]);h=new Array(r),f(),d=new Array(r),c()}}function f(){if(o)for(var t=0,n=l.length;t<n;++t)h[t]=+e(l[t],t,l)}function c(){if(o)for(var t=0,n=l.length;t<n;++t)d[t]=+r(l[t],t,l)}return null==l&&(l=[]),n.initialize=function(t){o=t,i()},n.links=function(t){return arguments.length?(l=t,i(),n):l},n.id=function(t){return arguments.length?(u=t,n):u},n.iterations=function(t){return arguments.length?(v=+t,n):v},n.strength=function(t){return arguments.length?(e="function"==typeof t?t:Ko(+t),f(),n):e},n.distance=function(t){return arguments.length?(r="function"==typeof t?t:Ko(+t),c(),n):r},n},B.forceManyBody=function(){var i,f,c,s,r=Ko(-30),l=1,h=1/0,d=.81;function n(t){var n,e=i.length,r=oa(i,da,pa).visitAfter(o);for(c=t,n=0;n<e;++n)f=i[n],r.visit(a)}function e(){if(i){var t,n,e=i.length;for(s=new Array(e),t=0;t<e;++t)n=i[t],s[n.index]=+r(n,t,i)}}function o(t){var n,e,r,i,o,a=0,u=0;if(t.length){for(r=i=o=0;o<4;++o)(n=t[o])&&(e=Math.abs(n.value))&&(a+=n.value,u+=e,r+=e*n.x,i+=e*n.y);t.x=r/u,t.y=i/u}else for((n=t).x=n.data.x,n.y=n.data.y;a+=s[n.data.index],n=n.next;);t.value=a}function a(t,n,e,r){if(!t.value)return!0;var i=t.x-f.x,o=t.y-f.y,a=r-n,u=i*i+o*o;if(a*a/d<u)return u<h&&(0===i&&(u+=(i=ta())*i),0===o&&(u+=(o=ta())*o),u<l&&(u=Math.sqrt(l*u)),f.vx+=i*t.value*c/u,f.vy+=o*t.value*c/u),!0;if(!(t.length||h<=u))for((t.data!==f||t.next)&&(0===i&&(u+=(i=ta())*i),0===o&&(u+=(o=ta())*o),u<l&&(u=Math.sqrt(l*u)));t.data!==f&&(a=s[t.data.index]*c/u,f.vx+=i*a,f.vy+=o*a),t=t.next;);}return n.initialize=function(t){i=t,e()},n.strength=function(t){return arguments.length?(r="function"==typeof t?t:Ko(+t),e(),n):r},n.distanceMin=function(t){return arguments.length?(l=t*t,n):Math.sqrt(l)},n.distanceMax=function(t){return arguments.length?(h=t*t,n):Math.sqrt(h)},n.theta=function(t){return arguments.length?(d=t*t,n):Math.sqrt(d)},n},B.forceRadial=function(e,f,c){var s,l,h,r=Ko(.1);function n(t){for(var n=0,e=s.length;n<e;++n){var r=s[n],i=r.x-f||1e-6,o=r.y-c||1e-6,a=Math.sqrt(i*i+o*o),u=(h[n]-a)*l[n]*t/a;r.vx+=i*u,r.vy+=o*u}}function i(){if(s){var t,n=s.length;for(l=new Array(n),h=new Array(n),t=0;t<n;++t)h[t]=+e(s[t],t,s),l[t]=isNaN(h[t])?0:+r(s[t],t,s)}}return"function"!=typeof e&&(e=Ko(+e)),null==f&&(f=0),null==c&&(c=0),n.initialize=function(t){s=t,i()},n.strength=function(t){return arguments.length?(r="function"==typeof t?t:Ko(+t),i(),n):r},n.radius=function(t){return arguments.length?(e="function"==typeof t?t:Ko(+t),i(),n):e},n.x=function(t){return arguments.length?(f=+t,n):f},n.y=function(t){return arguments.length?(c=+t,n):c},n},B.forceSimulation=function(s){var e,r=1,n=.001,i=1-Math.pow(n,1/300),o=0,a=.6,u=eo(),t=ur(c),f=I("tick","end");function c(){l(),f.call("tick",e),r<n&&(t.stop(),f.call("end",e))}function l(){var t,n,e=s.length;for(r+=(o-r)*i,u.each(function(t){t(r)}),t=0;t<e;++t)null==(n=s[t]).fx?n.x+=n.vx*=a:(n.x=n.fx,n.vx=0),null==n.fy?n.y+=n.vy*=a:(n.y=n.fy,n.vy=0)}function h(){for(var t,n=0,e=s.length;n<e;++n){if((t=s[n]).index=n,isNaN(t.x)||isNaN(t.y)){var r=10*Math.sqrt(n),i=n*va;t.x=r*Math.cos(i),t.y=r*Math.sin(i)}(isNaN(t.vx)||isNaN(t.vy))&&(t.vx=t.vy=0)}}function d(t){return t.initialize&&t.initialize(s),t}return null==s&&(s=[]),h(),e={tick:l,restart:function(){return t.restart(c),e},stop:function(){return t.stop(),e},nodes:function(t){return arguments.length?(s=t,h(),u.each(d),e):s},alpha:function(t){return arguments.length?(r=+t,e):r},alphaMin:function(t){return arguments.length?(n=+t,e):n},alphaDecay:function(t){return arguments.length?(i=+t,e):+i},alphaTarget:function(t){return arguments.length?(o=+t,e):o},velocityDecay:function(t){return arguments.length?(a=1-t,e):1-a},force:function(t,n){return 1<arguments.length?(null==n?u.remove(t):u.set(t,d(n)),e):u.get(t)},find:function(t,n,e){var r,i,o,a,u,f=0,c=s.length;for(null==e?e=1/0:e*=e,f=0;f<c;++f)(o=(r=t-(a=s[f]).x)*r+(i=n-a.y)*i)<e&&(u=a,e=o);return u},on:function(t,n){return 1<arguments.length?(f.on(t,n),e):f.on(t)}}},B.forceX=function(e){var i,o,a,r=Ko(.1);function n(t){for(var n,e=0,r=i.length;e<r;++e)(n=i[e]).vx+=(a[e]-n.x)*o[e]*t}function u(){if(i){var t,n=i.length;for(o=new Array(n),a=new Array(n),t=0;t<n;++t)o[t]=isNaN(a[t]=+e(i[t],t,i))?0:+r(i[t],t,i)}}return"function"!=typeof e&&(e=Ko(null==e?0:+e)),n.initialize=function(t){i=t,u()},n.strength=function(t){return arguments.length?(r="function"==typeof t?t:Ko(+t),u(),n):r},n.x=function(t){return arguments.length?(e="function"==typeof t?t:Ko(+t),u(),n):e},n},B.forceY=function(e){var i,o,a,r=Ko(.1);function n(t){for(var n,e=0,r=i.length;e<r;++e)(n=i[e]).vy+=(a[e]-n.y)*o[e]*t}function u(){if(i){var t,n=i.length;for(o=new Array(n),a=new Array(n),t=0;t<n;++t)o[t]=isNaN(a[t]=+e(i[t],t,i))?0:+r(i[t],t,i)}}return"function"!=typeof e&&(e=Ko(null==e?0:+e)),n.initialize=function(t){i=t,u()},n.strength=function(t){return arguments.length?(r="function"==typeof t?t:Ko(+t),u(),n):r},n.y=function(t){return arguments.length?(e="function"==typeof t?t:Ko(+t),u(),n):e},n},B.formatDefaultLocale=Ea,B.formatLocale=Sa,B.formatSpecifier=ma,B.precisionFixed=ka,B.precisionPrefix=Ca,B.precisionRound=Pa,B.geoArea=function(t){return yu.reset(),su(t,_u),2*yu},B.geoBounds=function(t){var n,e,r,i,o,a,u;if(Ru=zu=-(Cu=Pu=1/0),Ou=[],su(t,rf),e=Ou.length){for(Ou.sort(df),n=1,o=[r=Ou[0]];n<e;++n)pf(r,(i=Ou[n])[0])||pf(r,i[1])?(hf(r[0],i[1])>hf(r[0],r[1])&&(r[1]=i[1]),hf(i[0],r[1])>hf(r[0],r[1])&&(r[0]=i[0])):o.push(r=i);for(a=-1/0,n=0,r=o[e=o.length-1];n<=e;r=i,++n)i=o[n],(u=hf(r[1],i[0]))>a&&(a=u,Cu=i[0],zu=r[1])}return Ou=Yu=null,Cu===1/0||Pu===1/0?[[NaN,NaN],[NaN,NaN]]:[[Cu,Pu],[zu,Ru]]},B.geoCentroid=function(t){Bu=Fu=Iu=Hu=ju=Xu=Gu=Vu=Wu=$u=Zu=0,su(t,vf);var n=Wu,e=$u,r=Zu,i=n*n+e*e+r*r;return i<1e-12&&(n=Xu,e=Gu,r=Vu,Fu<Ua&&(n=Iu,e=Hu,r=ju),(i=n*n+e*e+r*r)<1e-12)?[NaN,NaN]:[Xa(e,n)*Fa,eu(r/Ka(i))*Fa]},B.geoCircle=function(){var r,i,o=Nf([0,0]),a=Nf(90),u=Nf(6),f={point:function(t,n){r.push(t=i(t,n)),t[0]*=Fa,t[1]*=Fa}};function n(){var t=o.apply(this,arguments),n=a.apply(this,arguments)*Ia,e=u.apply(this,arguments)*Ia;return r=[],i=kf(-t[0]*Ia,-t[1]*Ia,0).invert,Lf(f,n,e,1),t={type:"Polygon",coordinates:[r]},r=i=null,t}return n.center=function(t){return arguments.length?(o="function"==typeof t?t:Nf([+t[0],+t[1]]),n):o},n.radius=function(t){return arguments.length?(a="function"==typeof t?t:Nf(+t),n):a},n.precision=function(t){return arguments.length?(u="function"==typeof t?t:Nf(+t),n):u},n},B.geoClipAntimeridian=Gf,B.geoClipCircle=Vf,B.geoClipExtent=function(){var n,e,r,i=0,o=0,a=960,u=500;return r={stream:function(t){return n&&e===t?n:n=Zf(i,o,a,u)(e=t)},extent:function(t){return arguments.length?(i=+t[0][0],o=+t[0][1],a=+t[1][0],u=+t[1][1],n=e=null,r):[[i,o],[a,u]]}}},B.geoClipRectangle=Zf,B.geoContains=function(t,n){return(t&&cc.hasOwnProperty(t.type)?cc[t.type]:lc)(t,n)},B.geoDistance=fc,B.geoGraticule=bc,B.geoGraticule10=function(){return bc()()},B.geoInterpolate=function(t,n){var e=t[0]*Ia,r=t[1]*Ia,i=n[0]*Ia,o=n[1]*Ia,a=Ga(r),u=Qa(r),f=Ga(o),c=Qa(o),s=a*Ga(e),l=a*Qa(e),h=f*Ga(i),d=f*Qa(i),p=2*eu(Ka(ru(o-r)+a*f*ru(i-e))),v=Qa(p),g=p?function(t){var n=Qa(t*=p)/v,e=Qa(p-t)/v,r=e*s+n*h,i=e*l+n*d,o=e*u+n*c;return[Xa(i,r)*Fa,Xa(o,Ka(r*r+i*i))*Fa]}:function(){return[e*Fa,r*Fa]};return g.distance=p,g},B.geoLength=oc,B.geoPath=function(n,e){var r,i,o=4.5;function a(t){return t&&("function"==typeof o&&i.pointRadius(+o.apply(this,arguments)),su(t,r(i))),i.result()}return a.area=function(t){return su(t,r(Sc)),Sc.result()},a.measure=function(t){return su(t,r(ds)),ds.result()},a.bounds=function(t){return su(t,r(Uc)),Uc.result()},a.centroid=function(t){return su(t,r(Zc)),Zc.result()},a.projection=function(t){return arguments.length?(r=null==t?(n=null,mc):(n=t).stream,a):n},a.context=function(t){return arguments.length?(i=null==t?(e=null,new gs):new as(e=t),"function"!=typeof o&&i.pointRadius(o),a):e},a.pointRadius=function(t){return arguments.length?(o="function"==typeof t?t:(i.pointRadius(+t),+t),a):o},a.projection(n).context(e)},B.geoAlbers=Ds,B.geoAlbersUsa=function(){var n,e,i,o,a,r,u=Ds(),f=Ls().rotate([154,0]).center([-2,58.5]).parallels([55,65]),c=Ls().rotate([157,0]).center([-3,19.9]).parallels([8,18]),s={point:function(t,n){r=[t,n]}};function l(t){var n=t[0],e=t[1];return r=null,i.point(n,e),r||(o.point(n,e),r)||(a.point(n,e),r)}function h(){return n=e=null,l}return l.invert=function(t){var n=u.scale(),e=u.translate(),r=(t[0]-e[0])/n,i=(t[1]-e[1])/n;return(.12<=i&&i<.234&&-.425<=r&&r<-.214?f:.166<=i&&i<.234&&-.214<=r&&r<-.115?c:u).invert(t)},l.stream=function(t){return n&&e===t?n:(r=[u.stream(e=t),f.stream(t),c.stream(t)],i=r.length,n={point:function(t,n){for(var e=-1;++e<i;)r[e].point(t,n)},sphere:function(){for(var t=-1;++t<i;)r[t].sphere()},lineStart:function(){for(var t=-1;++t<i;)r[t].lineStart()},lineEnd:function(){for(var t=-1;++t<i;)r[t].lineEnd()},polygonStart:function(){for(var t=-1;++t<i;)r[t].polygonStart()},polygonEnd:function(){for(var t=-1;++t<i;)r[t].polygonEnd()}});var r,i},l.precision=function(t){return arguments.length?(u.precision(t),f.precision(t),c.precision(t),h()):u.precision()},l.scale=function(t){return arguments.length?(u.scale(t),f.scale(.35*t),c.scale(t),l.translate(u.translate())):u.scale()},l.translate=function(t){if(!arguments.length)return u.translate();var n=u.scale(),e=+t[0],r=+t[1];return i=u.translate(t).clipExtent([[e-.455*n,r-.238*n],[e+.455*n,r+.238*n]]).stream(s),o=f.translate([e-.307*n,r+.201*n]).clipExtent([[e-.425*n+Ua,r+.12*n+Ua],[e-.214*n-Ua,r+.234*n-Ua]]).stream(s),a=c.translate([e-.205*n,r+.212*n]).clipExtent([[e-.214*n+Ua,r+.166*n+Ua],[e-.115*n-Ua,r+.234*n-Ua]]).stream(s),h()},l.fitExtent=function(t,n){return xs(l,t,n)},l.fitSize=function(t,n){return ws(l,t,n)},l.fitWidth=function(t,n){return Ms(l,t,n)},l.fitHeight=function(t,n){return As(l,t,n)},l.scale(1070)},B.geoAzimuthalEqualArea=function(){return Cs(Os).scale(124.75).clipAngle(179.999)},B.geoAzimuthalEqualAreaRaw=Os,B.geoAzimuthalEquidistant=function(){return Cs(Ys).scale(79.4188).clipAngle(179.999)},B.geoAzimuthalEquidistantRaw=Ys,B.geoConicConformal=function(){return zs(Hs).scale(109.5).parallels([30,30])},B.geoConicConformalRaw=Hs,B.geoConicEqualArea=Ls,B.geoConicEqualAreaRaw=Rs,B.geoConicEquidistant=function(){return zs(Xs).scale(131.154).center([0,13.9389])},B.geoConicEquidistantRaw=Xs,B.geoEqualEarth=function(){return Cs(Qs).scale(177.158)},B.geoEqualEarthRaw=Qs,B.geoEquirectangular=function(){return Cs(js).scale(152.63)},B.geoEquirectangularRaw=js,B.geoGnomonic=function(){return Cs(Js).scale(144.049).clipAngle(60)},B.geoGnomonicRaw=Js,B.geoIdentity=function(){var n,e,r,i,o,a,u=1,f=0,c=0,s=1,l=1,h=mc,d=null,p=mc;function v(){return i=o=null,a}return a={stream:function(t){return i&&o===t?i:i=h(p(o=t))},postclip:function(t){return arguments.length?(p=t,d=n=e=r=null,v()):p},clipExtent:function(t){return arguments.length?(p=null==t?(d=n=e=r=null,mc):Zf(d=+t[0][0],n=+t[0][1],e=+t[1][0],r=+t[1][1]),v()):null==d?null:[[d,n],[e,r]]},scale:function(t){return arguments.length?(h=Ks((u=+t)*s,u*l,f,c),v()):u},translate:function(t){return arguments.length?(h=Ks(u*s,u*l,f=+t[0],c=+t[1]),v()):[f,c]},reflectX:function(t){return arguments.length?(h=Ks(u*(s=t?-1:1),u*l,f,c),v()):s<0},reflectY:function(t){return arguments.length?(h=Ks(u*s,u*(l=t?-1:1),f,c),v()):l<0},fitExtent:function(t,n){return xs(a,t,n)},fitSize:function(t,n){return ws(a,t,n)},fitWidth:function(t,n){return Ms(a,t,n)},fitHeight:function(t,n){return As(a,t,n)}}},B.geoProjection=Cs,B.geoProjectionMutator=Ps,B.geoMercator=function(){return Fs(Bs).scale(961/Ba)},B.geoMercatorRaw=Bs,B.geoNaturalEarth1=function(){return Cs(tl).scale(175.295)},B.geoNaturalEarth1Raw=tl,B.geoOrthographic=function(){return Cs(nl).scale(249.5).clipAngle(90+Ua)},B.geoOrthographicRaw=nl,B.geoStereographic=function(){return Cs(el).scale(250).clipAngle(142)},B.geoStereographicRaw=el,B.geoTransverseMercator=function(){var t=Fs(rl),n=t.center,e=t.rotate;return t.center=function(t){return arguments.length?n([-t[1],t[0]]):[(t=n())[1],-t[0]]},t.rotate=function(t){return arguments.length?e([t[0],t[1],2<t.length?t[2]+90:90]):[(t=e())[0],t[1],t[2]-90]},e([0,0,90]).scale(159.155)},B.geoTransverseMercatorRaw=rl,B.geoRotation=Rf,B.geoStream=su,B.geoTransform=function(t){return{stream:_s(t)}},B.cluster=function(){var u=il,f=1,c=1,s=!1;function n(n){var r,i=0;n.eachAfter(function(t){var n,e=t.children;e?(t.x=(n=e).reduce(ol,0)/n.length,t.y=1+e.reduce(al,0)):(t.x=r?i+=u(t,r):0,t.y=0,r=t)});var t=function(t){for(var n;n=t.children;)t=n[0];return t}(n),e=function(t){for(var n;n=t.children;)t=n[n.length-1];return t}(n),o=t.x-u(t,e)/2,a=e.x+u(e,t)/2;return n.eachAfter(s?function(t){t.x=(t.x-n.x)*f,t.y=(n.y-t.y)*c}:function(t){t.x=(t.x-o)/(a-o)*f,t.y=(1-(n.y?t.y/n.y:1))*c})}return n.separation=function(t){return arguments.length?(u=t,n):u},n.size=function(t){return arguments.length?(s=!1,f=+t[0],c=+t[1],n):s?null:[f,c]},n.nodeSize=function(t){return arguments.length?(s=!0,f=+t[0],c=+t[1],n):s?[f,c]:null},n},B.hierarchy=fl,B.pack=function(){var e=null,n=1,r=1,i=El;function o(t){return t.x=n/2,t.y=r/2,e?t.eachBefore(Pl(e)).eachAfter(zl(i,.5)).eachBefore(Rl(1)):t.eachBefore(Pl(Cl)).eachAfter(zl(El,1)).eachAfter(zl(i,t.r/Math.min(n,r))).eachBefore(Rl(Math.min(n,r)/(2*t.r))),t}return o.radius=function(t){return arguments.length?(e=null==(n=t)?null:Sl(n),o):e;var n},o.size=function(t){return arguments.length?(n=+t[0],r=+t[1],o):[n,r]},o.padding=function(t){return arguments.length?(i="function"==typeof t?t:kl(+t),o):i},o},B.packSiblings=function(t){return Nl(t),t},B.packEnclose=pl,B.partition=function(){var e=1,r=1,u=0,i=!1;function n(t){var o,a,n=t.height+1;return t.x0=t.y0=u,t.x1=e,t.y1=r/n,t.eachBefore((o=r,a=n,function(t){t.children&&Dl(t,t.x0,o*(t.depth+1)/a,t.x1,o*(t.depth+2)/a);var n=t.x0,e=t.y0,r=t.x1-u,i=t.y1-u;r<n&&(n=r=(n+r)/2),i<e&&(e=i=(e+i)/2),t.x0=n,t.y0=e,t.x1=r,t.y1=i})),i&&t.eachBefore(Ll),t}return n.round=function(t){return arguments.length?(i=!!t,n):i},n.size=function(t){return arguments.length?(e=+t[0],r=+t[1],n):[e,r]},n.padding=function(t){return arguments.length?(u=+t,n):u},n},B.stratify=function(){var l=Ol,h=Yl;function n(t){var n,e,r,i,o,a,u,f=t.length,c=new Array(f),s={};for(e=0;e<f;++e)n=t[e],o=c[e]=new hl(n),null!=(a=l(n,e,t))&&(a+="")&&(s[u="$"+(o.id=a)]=u in s?ql:o);for(e=0;e<f;++e)if(o=c[e],null!=(a=h(t[e],e,t))&&(a+="")){if(!(i=s["$"+a]))throw new Error("missing: "+a);if(i===ql)throw new Error("ambiguous: "+a);i.children?i.children.push(o):i.children=[o],o.parent=i}else{if(r)throw new Error("multiple roots");r=o}if(!r)throw new Error("no root");if(r.parent=Ul,r.eachBefore(function(t){t.depth=t.parent.depth+1,--f}).eachBefore(ll),r.parent=null,0<f)throw new Error("cycle");return r}return n.id=function(t){return arguments.length?(l=Sl(t),n):l},n.parentId=function(t){return arguments.length?(h=Sl(t),n):h},n},B.tree=function(){var b=Bl,c=1,s=1,l=null;function n(t){var n=function(t){for(var n,e,r,i,o,a=new Hl(t,0),u=[a];n=u.pop();)if(r=n._.children)for(n.children=new Array(o=r.length),i=o-1;0<=i;--i)u.push(e=n.children[i]=new Hl(r[i],i)),e.parent=n;return(a.parent=new Hl(null,0)).children=[a],a}(t);if(n.eachAfter(h),n.parent.m=-n.z,n.eachBefore(d),l)t.eachBefore(p);else{var e=t,r=t,i=t;t.eachBefore(function(t){t.x<e.x&&(e=t),t.x>r.x&&(r=t),t.depth>i.depth&&(i=t)});var o=e===r?1:b(e,r)/2,a=o-e.x,u=c/(r.x+o+a),f=s/(i.depth||1);t.eachBefore(function(t){t.x=(t.x+a)*u,t.y=t.depth*f})}return t}function h(t){var n=t.children,e=t.parent.children,r=t.i?e[t.i-1]:null;if(n){!function(t){for(var n,e=0,r=0,i=t.children,o=i.length;0<=--o;)(n=i[o]).z+=e,n.m+=e,e+=n.s+(r+=n.c)}(t);var i=(n[0].z+n[n.length-1].z)/2;r?(t.z=r.z+b(t._,r._),t.m=t.z-i):t.z=i}else r&&(t.z=r.z+b(t._,r._));t.parent.A=function(t,n,e){if(n){for(var r,i=t,o=t,a=n,u=i.parent.children[0],f=i.m,c=o.m,s=a.m,l=u.m;a=Il(a),i=Fl(i),a&&i;)u=Fl(u),(o=Il(o)).a=t,0<(r=a.z+s-i.z-f+b(a._,i._))&&(y=t,_=e,h=(g=a).a.parent===y.parent?g.a:_,v=(p=r)/((d=t).i-h.i),d.c-=v,d.s+=p,h.c+=v,d.z+=p,d.m+=p,f+=r,c+=r),s+=a.m,f+=i.m,l+=u.m,c+=o.m;a&&!Il(o)&&(o.t=a,o.m+=s-c),i&&!Fl(u)&&(u.t=i,u.m+=f-l,e=t)}var h,d,p,v,g,y,_;return e}(t,r,t.parent.A||e[0])}function d(t){t._.x=t.z+t.parent.m,t.m+=t.parent.m}function p(t){t.x*=c,t.y=t.depth*s}return n.separation=function(t){return arguments.length?(b=t,n):b},n.size=function(t){return arguments.length?(l=!1,c=+t[0],s=+t[1],n):l?null:[c,s]},n.nodeSize=function(t){return arguments.length?(l=!0,c=+t[0],s=+t[1],n):l?[c,s]:null},n},B.treemap=function(){var a=Vl,n=!1,e=1,r=1,u=[0],f=El,c=El,s=El,l=El,h=El;function i(t){return t.x0=t.y0=0,t.x1=e,t.y1=r,t.eachBefore(o),u=[0],n&&t.eachBefore(Ll),t}function o(t){var n=u[t.depth],e=t.x0+n,r=t.y0+n,i=t.x1-n,o=t.y1-n;i<e&&(e=i=(e+i)/2),o<r&&(r=o=(r+o)/2),t.x0=e,t.y0=r,t.x1=i,t.y1=o,t.children&&(n=u[t.depth+1]=f(t)/2,e+=h(t)-n,r+=c(t)-n,(i-=s(t)-n)<e&&(e=i=(e+i)/2),(o-=l(t)-n)<r&&(r=o=(r+o)/2),a(t,e,r,i,o))}return i.round=function(t){return arguments.length?(n=!!t,i):n},i.size=function(t){return arguments.length?(e=+t[0],r=+t[1],i):[e,r]},i.tile=function(t){return arguments.length?(a=Sl(t),i):a},i.padding=function(t){return arguments.length?i.paddingInner(t).paddingOuter(t):i.paddingInner()},i.paddingInner=function(t){return arguments.length?(f="function"==typeof t?t:kl(+t),i):f},i.paddingOuter=function(t){return arguments.length?i.paddingTop(t).paddingRight(t).paddingBottom(t).paddingLeft(t):i.paddingTop()},i.paddingTop=function(t){return arguments.length?(c="function"==typeof t?t:kl(+t),i):c},i.paddingRight=function(t){return arguments.length?(s="function"==typeof t?t:kl(+t),i):s},i.paddingBottom=function(t){return arguments.length?(l="function"==typeof t?t:kl(+t),i):l},i.paddingLeft=function(t){return arguments.length?(h="function"==typeof t?t:kl(+t),i):h},i},B.treemapBinary=function(t,n,e,r,i){var o,a,_=t.children,u=_.length,b=new Array(u+1);for(b[0]=a=o=0;o<u;++o)b[o+1]=a+=_[o].value;!function t(n,e,r,i,o,a,u){if(e-1<=n){var f=_[n];return f.x0=i,f.y0=o,f.x1=a,void(f.y1=u)}for(var c=b[n],s=r/2+c,l=n+1,h=e-1;l<h;){var d=l+h>>>1;b[d]<s?l=d+1:h=d}s-b[l-1]<b[l]-s&&n+1<l&&--l;var p=b[l]-c,v=r-p;if(u-o<a-i){var g=(i*v+a*p)/r;t(n,l,p,i,o,g,u),t(l,e,v,g,o,a,u)}else{var y=(o*v+u*p)/r;t(n,l,p,i,o,a,y),t(l,e,v,i,y,a,u)}}(0,u,t.value,n,e,r,i)},B.treemapDice=Dl,B.treemapSlice=jl,B.treemapSliceDice=function(t,n,e,r,i){(1&t.depth?jl:Dl)(t,n,e,r,i)},B.treemapSquarify=Vl,B.treemapResquarify=Wl,B.interpolate=me,B.interpolateArray=de,B.interpolateBasis=ee,B.interpolateBasisClosed=re,B.interpolateDate=pe,B.interpolateDiscrete=function(n){var e=n.length;return function(t){return n[Math.max(0,Math.min(e-1,Math.floor(t*e)))]}},B.interpolateHue=function(t,n){var e=ae(+t,+n);return function(t){var n=e(t);return n-360*Math.floor(n/360)}},B.interpolateNumber=ve,B.interpolateObject=ge,B.interpolateRound=xe,B.interpolateString=be,B.interpolateTransformCss=Ce,B.interpolateTransformSvg=Pe,B.interpolateZoom=qe,B.interpolateRgb=ce,B.interpolateRgbBasis=le,B.interpolateRgbBasisClosed=he,B.interpolateHsl=Ye,B.interpolateHslLong=Be,B.interpolateLab=function(n,t){var e=fe((n=qn(n)).l,(t=qn(t)).l),r=fe(n.a,t.a),i=fe(n.b,t.b),o=fe(n.opacity,t.opacity);return function(t){return n.l=e(t),n.a=r(t),n.b=i(t),n.opacity=o(t),n+""}},B.interpolateHcl=Ie,B.interpolateHclLong=He,B.interpolateCubehelix=Xe,B.interpolateCubehelixLong=Ge,B.piecewise=function(t,n){for(var e=0,r=n.length-1,i=n[0],o=new Array(r<0?0:r);e<r;)o[e]=t(i,i=n[++e]);return function(t){var n=Math.max(0,Math.min(r-1,Math.floor(t*=r)));return o[n](t-n)}},B.quantize=function(t,n){for(var e=new Array(n),r=0;r<n;++r)e[r]=t(r/(n-1));return e},B.path=Wi,B.polygonArea=function(t){for(var n,e=-1,r=t.length,i=t[r-1],o=0;++e<r;)n=i,i=t[e],o+=n[1]*i[0]-n[0]*i[1];return o/2},B.polygonCentroid=function(t){for(var n,e,r=-1,i=t.length,o=0,a=0,u=t[i-1],f=0;++r<i;)n=u,u=t[r],f+=e=n[0]*u[1]-u[0]*n[1],o+=(n[0]+u[0])*e,a+=(n[1]+u[1])*e;return[o/(f*=3),a/f]},B.polygonHull=function(t){if((e=t.length)<3)return null;var n,e,r=new Array(e),i=new Array(e);for(n=0;n<e;++n)r[n]=[+t[n][0],+t[n][1],n];for(r.sort($l),n=0;n<e;++n)i[n]=[r[n][0],-r[n][1]];var o=Zl(r),a=Zl(i),u=a[0]===o[0],f=a[a.length-1]===o[o.length-1],c=[];for(n=o.length-1;0<=n;--n)c.push(t[r[o[n]][2]]);for(n=+u;n<a.length-f;++n)c.push(t[r[a[n]][2]]);return c},B.polygonContains=function(t,n){for(var e,r,i=t.length,o=t[i-1],a=n[0],u=n[1],f=o[0],c=o[1],s=!1,l=0;l<i;++l)e=(o=t[l])[0],u<(r=o[1])!=u<c&&a<(f-e)*(u-r)/(c-r)+e&&(s=!s),f=e,c=r;return s},B.polygonLength=function(t){for(var n,e,r=-1,i=t.length,o=t[i-1],a=o[0],u=o[1],f=0;++r<i;)n=a,e=u,n-=a=(o=t[r])[0],e-=u=o[1],f+=Math.sqrt(n*n+e*e);return f},B.quadtree=oa,B.randomUniform=Jl,B.randomNormal=Kl,B.randomLogNormal=th,B.randomBates=eh,B.randomIrwinHall=nh,B.randomExponential=rh,B.scaleBand=ch,B.scalePoint=function(){return function t(n){var e=n.copy;return n.padding=n.paddingOuter,delete n.paddingInner,delete n.paddingOuter,n.copy=function(){return t(e())},n}(ch().paddingInner(1))},B.scaleIdentity=function t(){var n=[0,1];function e(t){return+t}return(e.invert=e).domain=e.range=function(t){return arguments.length?(n=oh.call(t,lh),e):n.slice()},e.copy=function(){return t().domain(n)},_h(e)},B.scaleLinear=function t(){var n=yh(dh,ve);return n.copy=function(){return gh(n,t())},_h(n)},B.scaleLog=function t(){var n=yh(mh,xh).domain([1,10]),h=n.domain,d=10,p=Ah(10),v=Mh(10);function e(){return p=Ah(d),v=Mh(d),h()[0]<0&&(p=Th(p),v=Th(v)),n}return n.base=function(t){return arguments.length?(d=+t,e()):d},n.domain=function(t){return arguments.length?(h(t),e()):h()},n.ticks=function(t){var n,e=h(),r=e[0],i=e[e.length-1];(n=i<r)&&(f=r,r=i,i=f);var o,a,u,f=p(r),c=p(i),s=null==t?10:+t,l=[];if(!(d%1)&&c-f<s){if(f=Math.round(f)-1,c=Math.round(c)+1,0<r){for(;f<c;++f)for(a=1,o=v(f);a<d;++a)if(!((u=o*a)<r)){if(i<u)break;l.push(u)}}else for(;f<c;++f)for(a=d-1,o=v(f);1<=a;--a)if(!((u=o*a)<r)){if(i<u)break;l.push(u)}}else l=y(f,c,Math.min(c-f,s)).map(v);return n?l.reverse():l},n.tickFormat=function(t,e){if(null==e&&(e=10===d?".0e":","),"function"!=typeof e&&(e=B.format(e)),t===1/0)return e;null==t&&(t=10);var r=Math.max(1,d*t/n.ticks().length);return function(t){var n=t/v(Math.round(p(t)));return n*d<d-.5&&(n*=d),n<=r?e(t):""}},n.nice=function(){return h(bh(h(),{floor:function(t){return v(Math.floor(p(t)))},ceil:function(t){return v(Math.ceil(p(t)))}}))},n.copy=function(){return gh(n,t().base(d))},n},B.scaleOrdinal=fh,B.scaleImplicit=uh,B.scalePow=Sh,B.scaleSqrt=function(){return Sh().exponent(.5)},B.scaleQuantile=function t(){var i=[],e=[],r=[];function o(){var t=0,n=Math.max(1,e.length);for(r=new Array(n-1);++t<n;)r[t-1]=m(i,t/n);return a}function a(t){if(!isNaN(t=+t))return e[v(r,t)]}return a.invertExtent=function(t){var n=e.indexOf(t);return n<0?[NaN,NaN]:[0<n?r[n-1]:i[0],n<r.length?r[n]:i[i.length-1]]},a.domain=function(t){if(!arguments.length)return i.slice();i=[];for(var n,e=0,r=t.length;e<r;++e)null==(n=t[e])||isNaN(n=+n)||i.push(n);return i.sort(u),o()},a.range=function(t){return arguments.length?(e=ah.call(t),o()):e.slice()},a.quantiles=function(){return r.slice()},a.copy=function(){return t().domain(i).range(e)},a},B.scaleQuantize=function t(){var e=0,r=1,i=1,o=[.5],a=[0,1];function n(t){if(t<=t)return a[v(o,t,0,i)]}function u(){var t=-1;for(o=new Array(i);++t<i;)o[t]=((t+1)*r-(t-i)*e)/(i+1);return n}return n.domain=function(t){return arguments.length?(e=+t[0],r=+t[1],u()):[e,r]},n.range=function(t){return arguments.length?(i=(a=ah.call(t)).length-1,u()):a.slice()},n.invertExtent=function(t){var n=a.indexOf(t);return n<0?[NaN,NaN]:n<1?[e,o[0]]:i<=n?[o[i-1],r]:[o[n-1],o[n]]},n.copy=function(){return t().domain([e,r]).range(a)},_h(n)},B.scaleThreshold=function t(){var e=[.5],r=[0,1],n=1;function i(t){if(t<=t)return r[v(e,t,0,n)]}return i.domain=function(t){return arguments.length?(e=ah.call(t),n=Math.min(e.length,r.length-1),i):e.slice()},i.range=function(t){return arguments.length?(r=ah.call(t),n=Math.min(e.length,r.length-1),i):r.slice()},i.invertExtent=function(t){var n=r.indexOf(t);return[e[n-1],e[n]]},i.copy=function(){return t().domain(e).range(r)},i},B.scaleTime=function(){return uv(ad,id,jh,Fh,Yh,qh,Dh,Ph,B.timeFormat).domain([new Date(2e3,0,1),new Date(2e3,0,2)])},B.scaleUtc=function(){return uv(Pd,kd,vd,hd,sd,fd,Dh,Ph,B.utcFormat).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)])},B.scaleSequential=function t(e){var r=0,n=1,i=1,o=!1;function a(t){var n=(t-r)*i;return e(o?Math.max(0,Math.min(1,n)):n)}return a.domain=function(t){return arguments.length?(r=+t[0],n=+t[1],i=r===n?0:1/(n-r),a):[r,n]},a.clamp=function(t){return arguments.length?(o=!!t,a):o},a.interpolator=function(t){return arguments.length?(e=t,a):e},a.copy=function(){return t(e).domain([r,n]).clamp(o)},_h(a)},B.scaleDiverging=function t(e){var n=0,r=.5,i=1,o=1,a=1,u=!1;function f(t){var n=.5+((t=+t)-r)*(t<r?o:a);return e(u?Math.max(0,Math.min(1,n)):n)}return f.domain=function(t){return arguments.length?(n=+t[0],r=+t[1],i=+t[2],o=n===r?0:.5/(r-n),a=r===i?0:.5/(i-r),f):[n,r,i]},f.clamp=function(t){return arguments.length?(u=!!t,f):u},f.interpolator=function(t){return arguments.length?(e=t,f):e},f.copy=function(){return t(e).domain([n,r,i]).clamp(u)},_h(f)},B.schemeCategory10=cv,B.schemeAccent=sv,B.schemeDark2=lv,B.schemePaired=hv,B.schemePastel1=dv,B.schemePastel2=pv,B.schemeSet1=vv,B.schemeSet2=gv,B.schemeSet3=yv,B.interpolateBrBG=mv,B.schemeBrBG=bv,B.interpolatePRGn=wv,B.schemePRGn=xv,B.interpolatePiYG=Av,B.schemePiYG=Mv,B.interpolatePuOr=Nv,B.schemePuOr=Tv,B.interpolateRdBu=Ev,B.schemeRdBu=Sv,B.interpolateRdGy=Cv,B.schemeRdGy=kv,B.interpolateRdYlBu=zv,B.schemeRdYlBu=Pv,B.interpolateRdYlGn=Lv,B.schemeRdYlGn=Rv,B.interpolateSpectral=Uv,B.schemeSpectral=Dv,B.interpolateBuGn=Ov,B.schemeBuGn=qv,B.interpolateBuPu=Bv,B.schemeBuPu=Yv,B.interpolateGnBu=Iv,B.schemeGnBu=Fv,B.interpolateOrRd=jv,B.schemeOrRd=Hv,B.interpolatePuBuGn=Gv,B.schemePuBuGn=Xv,B.interpolatePuBu=Wv,B.schemePuBu=Vv,B.interpolatePuRd=Zv,B.schemePuRd=$v,B.interpolateRdPu=Jv,B.schemeRdPu=Qv,B.interpolateYlGnBu=tg,B.schemeYlGnBu=Kv,B.interpolateYlGn=eg,B.schemeYlGn=ng,B.interpolateYlOrBr=ig,B.schemeYlOrBr=rg,B.interpolateYlOrRd=ag,B.schemeYlOrRd=og,B.interpolateBlues=fg,B.schemeBlues=ug,B.interpolateGreens=sg,B.schemeGreens=cg,B.interpolateGreys=hg,B.schemeGreys=lg,B.interpolatePurples=pg,B.schemePurples=dg,B.interpolateReds=gg,B.schemeReds=vg,B.interpolateOranges=_g,B.schemeOranges=yg,B.interpolateCubehelixDefault=bg,B.interpolateRainbow=function(t){(t<0||1<t)&&(t-=Math.floor(t));var n=Math.abs(t-.5);return wg.h=360*t-100,wg.s=1.5-1.5*n,wg.l=.8-.9*n,wg+""},B.interpolateWarm=mg,B.interpolateCool=xg,B.interpolateSinebow=function(t){var n;return t=(.5-t)*Math.PI,Mg.r=255*(n=Math.sin(t))*n,Mg.g=255*(n=Math.sin(t+Ag))*n,Mg.b=255*(n=Math.sin(t+Tg))*n,Mg+""},B.interpolateViridis=Sg,B.interpolateMagma=Eg,B.interpolateInferno=kg,B.interpolatePlasma=Cg,B.create=function(t){return Dt($(t).call(document.documentElement))},B.creator=$,B.local=qt,B.matcher=rt,B.mouse=Ft,B.namespace=W,B.namespaces=V,B.clientPoint=Bt,B.select=Dt,B.selectAll=function(t){return"string"==typeof t?new Rt([document.querySelectorAll(t)],[document.documentElement]):new Rt([null==t?[]:t],zt)},B.selection=Lt,B.selector=Q,B.selectorAll=K,B.style=lt,B.touch=It,B.touches=function(t,n){null==n&&(n=Yt().touches);for(var e=0,r=n?n.length:0,i=new Array(r);e<r;++e)i[e]=Bt(t,n[e]);return i},B.window=st,B.customEvent=Ct,B.arc=function(){var W=jg,$=Xg,Z=Pg(0),Q=null,J=Gg,K=Vg,tt=Wg,nt=null;function n(){var t,n,e,r,i,o,a,u,f,c,s,l,h=+W.apply(this,arguments),d=+$.apply(this,arguments),p=J.apply(this,arguments)-Fg,v=K.apply(this,arguments)-Fg,g=zg(v-p),y=p<v;if(nt||(nt=t=Wi()),d<h&&(n=d,d=h,h=n),Yg<d)if(Ig-Yg<g)nt.moveTo(d*Lg(p),d*qg(p)),nt.arc(0,0,d,p,v,!y),Yg<h&&(nt.moveTo(h*Lg(v),h*qg(v)),nt.arc(0,0,h,v,p,y));else{var _,b,m=p,x=v,w=p,M=v,A=g,T=g,N=tt.apply(this,arguments)/2,S=Yg<N&&(Q?+Q.apply(this,arguments):Og(h*h+d*d)),E=Ug(zg(d-h)/2,+Z.apply(this,arguments)),k=E,C=E;if(Yg<S){var P=Hg(S/h*qg(N)),z=Hg(S/d*qg(N));(A-=2*P)>Yg?(w+=P*=y?1:-1,M-=P):(A=0,w=M=(p+v)/2),(T-=2*z)>Yg?(m+=z*=y?1:-1,x-=z):(T=0,m=x=(p+v)/2)}var R=d*Lg(m),L=d*qg(m),D=h*Lg(M),U=h*qg(M);if(Yg<E){var q=d*Lg(x),O=d*qg(x),Y=h*Lg(w),B=h*qg(w);if(g<Bg){var F=Yg<A?[(r=R)+(l=((c=D-(o=q))*((i=L)-(a=O))-(s=U-a)*(r-o))/(s*(u=Y-r)-c*(f=B-i)))*u,i+l*f]:[D,U],I=R-F[0],H=L-F[1],j=q-F[0],X=O-F[1],G=1/qg((1<(e=(I*j+H*X)/(Og(I*I+H*H)*Og(j*j+X*X)))?0:e<-1?Bg:Math.acos(e))/2),V=Og(F[0]*F[0]+F[1]*F[1]);k=Ug(E,(h-V)/(G-1)),C=Ug(E,(d-V)/(G+1))}}Yg<T?Yg<C?(_=$g(Y,B,R,L,d,C,y),b=$g(q,O,D,U,d,C,y),nt.moveTo(_.cx+_.x01,_.cy+_.y01),C<E?nt.arc(_.cx,_.cy,C,Rg(_.y01,_.x01),Rg(b.y01,b.x01),!y):(nt.arc(_.cx,_.cy,C,Rg(_.y01,_.x01),Rg(_.y11,_.x11),!y),nt.arc(0,0,d,Rg(_.cy+_.y11,_.cx+_.x11),Rg(b.cy+b.y11,b.cx+b.x11),!y),nt.arc(b.cx,b.cy,C,Rg(b.y11,b.x11),Rg(b.y01,b.x01),!y))):(nt.moveTo(R,L),nt.arc(0,0,d,m,x,!y)):nt.moveTo(R,L),Yg<h&&Yg<A?Yg<k?(_=$g(D,U,q,O,h,-k,y),b=$g(R,L,Y,B,h,-k,y),nt.lineTo(_.cx+_.x01,_.cy+_.y01),k<E?nt.arc(_.cx,_.cy,k,Rg(_.y01,_.x01),Rg(b.y01,b.x01),!y):(nt.arc(_.cx,_.cy,k,Rg(_.y01,_.x01),Rg(_.y11,_.x11),!y),nt.arc(0,0,h,Rg(_.cy+_.y11,_.cx+_.x11),Rg(b.cy+b.y11,b.cx+b.x11),y),nt.arc(b.cx,b.cy,k,Rg(b.y11,b.x11),Rg(b.y01,b.x01),!y))):nt.arc(0,0,h,M,w,y):nt.lineTo(D,U)}else nt.moveTo(0,0);if(nt.closePath(),t)return nt=null,t+""||null}return n.centroid=function(){var t=(+W.apply(this,arguments)+ +$.apply(this,arguments))/2,n=(+J.apply(this,arguments)+ +K.apply(this,arguments))/2-Bg/2;return[Lg(n)*t,qg(n)*t]},n.innerRadius=function(t){return arguments.length?(W="function"==typeof t?t:Pg(+t),n):W},n.outerRadius=function(t){return arguments.length?($="function"==typeof t?t:Pg(+t),n):$},n.cornerRadius=function(t){return arguments.length?(Z="function"==typeof t?t:Pg(+t),n):Z},n.padRadius=function(t){return arguments.length?(Q=null==t?null:"function"==typeof t?t:Pg(+t),n):Q},n.startAngle=function(t){return arguments.length?(J="function"==typeof t?t:Pg(+t),n):J},n.endAngle=function(t){return arguments.length?(K="function"==typeof t?t:Pg(+t),n):K},n.padAngle=function(t){return arguments.length?(tt="function"==typeof t?t:Pg(+t),n):tt},n.context=function(t){return arguments.length?(nt=null==t?null:t,n):nt},n},B.area=ny,B.line=ty,B.pie=function(){var p=ry,v=ey,g=null,y=Pg(0),_=Pg(Ig),b=Pg(0);function n(e){var t,n,r,i,o,a=e.length,u=0,f=new Array(a),c=new Array(a),s=+y.apply(this,arguments),l=Math.min(Ig,Math.max(-Ig,_.apply(this,arguments)-s)),h=Math.min(Math.abs(l)/a,b.apply(this,arguments)),d=h*(l<0?-1:1);for(t=0;t<a;++t)0<(o=c[f[t]=t]=+p(e[t],t,e))&&(u+=o);for(null!=v?f.sort(function(t,n){return v(c[t],c[n])}):null!=g&&f.sort(function(t,n){return g(e[t],e[n])}),t=0,r=u?(l-a*d)/u:0;t<a;++t,s=i)n=f[t],i=s+(0<(o=c[n])?o*r:0)+d,c[n]={data:e[n],index:t,value:o,startAngle:s,endAngle:i,padAngle:h};return c}return n.value=function(t){return arguments.length?(p="function"==typeof t?t:Pg(+t),n):p},n.sortValues=function(t){return arguments.length?(v=t,g=null,n):v},n.sort=function(t){return arguments.length?(g=t,v=null,n):g},n.startAngle=function(t){return arguments.length?(y="function"==typeof t?t:Pg(+t),n):y},n.endAngle=function(t){return arguments.length?(_="function"==typeof t?t:Pg(+t),n):_},n.padAngle=function(t){return arguments.length?(b="function"==typeof t?t:Pg(+t),n):b},n},B.areaRadial=cy,B.radialArea=cy,B.lineRadial=fy,B.radialLine=fy,B.pointRadial=sy,B.linkHorizontal=function(){return py(vy)},B.linkVertical=function(){return py(gy)},B.linkRadial=function(){var t=py(yy);return t.angle=t.x,delete t.x,t.radius=t.y,delete t.y,t},B.symbol=function(){var n=Pg(_y),e=Pg(64),r=null;function i(){var t;if(r||(r=t=Wi()),n.apply(this,arguments).draw(r,+e.apply(this,arguments)),t)return r=null,t+""||null}return i.type=function(t){return arguments.length?(n="function"==typeof t?t:Pg(t),i):n},i.size=function(t){return arguments.length?(e="function"==typeof t?t:Pg(+t),i):e},i.context=function(t){return arguments.length?(r=null==t?null:t,i):r},i},B.symbols=Dy,B.symbolCircle=_y,B.symbolCross=by,B.symbolDiamond=wy,B.symbolSquare=Sy,B.symbolStar=Ny,B.symbolTriangle=ky,B.symbolWye=Ly,B.curveBasisClosed=function(t){return new Yy(t)},B.curveBasisOpen=function(t){return new By(t)},B.curveBasis=function(t){return new Oy(t)},B.curveBundle=Iy,B.curveCardinalClosed=Vy,B.curveCardinalOpen=$y,B.curveCardinal=Xy,B.curveCatmullRomClosed=t_,B.curveCatmullRomOpen=e_,B.curveCatmullRom=Jy,B.curveLinearClosed=function(t){return new r_(t)},B.curveLinear=Qg,B.curveMonotoneX=function(t){return new f_(t)},B.curveMonotoneY=function(t){return new c_(t)},B.curveNatural=function(t){return new l_(t)},B.curveStep=function(t){return new d_(t,.5)},B.curveStepAfter=function(t){return new d_(t,1)},B.curveStepBefore=function(t){return new d_(t,0)},B.stack=function(){var l=Pg([]),h=v_,d=p_,p=g_;function n(t){var n,e,r=l.apply(this,arguments),i=t.length,o=r.length,a=new Array(o);for(n=0;n<o;++n){for(var u,f=r[n],c=a[n]=new Array(i),s=0;s<i;++s)c[s]=u=[0,+p(t[s],f,s,t)],u.data=t[s];c.key=f}for(n=0,e=h(a);n<o;++n)a[e[n]].index=n;return d(a,e),a}return n.keys=function(t){return arguments.length?(l="function"==typeof t?t:Pg(ly.call(t)),n):l},n.value=function(t){return arguments.length?(p="function"==typeof t?t:Pg(+t),n):p},n.order=function(t){return arguments.length?(h=null==t?v_:"function"==typeof t?t:Pg(ly.call(t)),n):h},n.offset=function(t){return arguments.length?(d=null==t?p_:t,n):d},n},B.stackOffsetExpand=function(t,n){if(0<(r=t.length)){for(var e,r,i,o=0,a=t[0].length;o<a;++o){for(i=e=0;e<r;++e)i+=t[e][o][1]||0;if(i)for(e=0;e<r;++e)t[e][o][1]/=i}p_(t,n)}},B.stackOffsetDiverging=function(t,n){if(1<(u=t.length))for(var e,r,i,o,a,u,f=0,c=t[n[0]].length;f<c;++f)for(o=a=0,e=0;e<u;++e)0<=(i=(r=t[n[e]][f])[1]-r[0])?(r[0]=o,r[1]=o+=i):r[0]=i<0?(r[1]=a,a+=i):o},B.stackOffsetNone=p_,B.stackOffsetSilhouette=function(t,n){if(0<(e=t.length)){for(var e,r=0,i=t[n[0]],o=i.length;r<o;++r){for(var a=0,u=0;a<e;++a)u+=t[a][r][1]||0;i[r][1]+=i[r][0]=-u/2}p_(t,n)}},B.stackOffsetWiggle=function(t,n){if(0<(i=t.length)&&0<(r=(e=t[n[0]]).length)){for(var e,r,i,o=0,a=1;a<r;++a){for(var u=0,f=0,c=0;u<i;++u){for(var s=t[n[u]],l=s[a][1]||0,h=(l-(s[a-1][1]||0))/2,d=0;d<u;++d){var p=t[n[d]];h+=(p[a][1]||0)-(p[a-1][1]||0)}f+=l,c+=h*l}e[a-1][1]+=e[a-1][0]=o,f&&(o-=c/f)}e[a-1][1]+=e[a-1][0]=o,p_(t,n)}},B.stackOrderAscending=y_,B.stackOrderDescending=function(t){return y_(t).reverse()},B.stackOrderInsideOut=function(t){var n,e,r=t.length,i=t.map(__),o=v_(t).sort(function(t,n){return i[n]-i[t]}),a=0,u=0,f=[],c=[];for(n=0;n<r;++n)e=o[n],a<u?(a+=i[e],f.push(e)):(u+=i[e],c.push(e));return c.reverse().concat(f)},B.stackOrderNone=v_,B.stackOrderReverse=function(t){return v_(t).reverse()},B.timeInterval=Ch,B.timeMillisecond=Ph,B.timeMilliseconds=zh,B.utcMillisecond=Ph,B.utcMilliseconds=zh,B.timeSecond=Dh,B.timeSeconds=Uh,B.utcSecond=Dh,B.utcSeconds=Uh,B.timeMinute=qh,B.timeMinutes=Oh,B.timeHour=Yh,B.timeHours=Bh,B.timeDay=Fh,B.timeDays=Ih,B.timeWeek=jh,B.timeWeeks=Qh,B.timeSunday=jh,B.timeSundays=Qh,B.timeMonday=Xh,B.timeMondays=Jh,B.timeTuesday=Gh,B.timeTuesdays=Kh,B.timeWednesday=Vh,B.timeWednesdays=td,B.timeThursday=Wh,B.timeThursdays=nd,B.timeFriday=$h,B.timeFridays=ed,B.timeSaturday=Zh,B.timeSaturdays=rd,B.timeMonth=id,B.timeMonths=od,B.timeYear=ad,B.timeYears=ud,B.utcMinute=fd,B.utcMinutes=cd,B.utcHour=sd,B.utcHours=ld,B.utcDay=hd,B.utcDays=dd,B.utcWeek=vd,B.utcWeeks=wd,B.utcSunday=vd,B.utcSundays=wd,B.utcMonday=gd,B.utcMondays=Md,B.utcTuesday=yd,B.utcTuesdays=Ad,B.utcWednesday=_d,B.utcWednesdays=Td,B.utcThursday=bd,B.utcThursdays=Nd,B.utcFriday=md,B.utcFridays=Sd,B.utcSaturday=xd,B.utcSaturdays=Ed,B.utcMonth=kd,B.utcMonths=Cd,B.utcYear=Pd,B.utcYears=zd,B.timeFormatDefaultLocale=Wp,B.timeFormatLocale=Ud,B.isoFormat=Zp,B.isoParse=Qp,B.now=ir,B.timer=ur,B.timerFlush=fr,B.timeout=hr,B.interval=function(e,r,i){var o=new ar,a=r;return null==r?o.restart(e,r,i):(r=+r,i=null==i?ir():+i,o.restart(function t(n){n+=a,o.restart(t,a+=r,i),e(n)},r,i)),o},B.transition=zr,B.active=function(t,n){var e,r,i=t.__transition;if(i)for(r in n=null==n?null:n+"",i)if((e=i[r]).state>gr&&e.name===n)return new Pr([[t]],hi,n,+r);return null},B.interrupt=Nr,B.voronoi=function(){var i=m_,o=x_,n=null;function e(r){return new K_(r.map(function(t,n){var e=[Math.round(i(t,n,r)/Z_)*Z_,Math.round(o(t,n,r)/Z_)*Z_];return e.index=n,e.data=t,e}),n)}return e.polygons=function(t){return e(t).polygons()},e.links=function(t){return e(t).links()},e.triangles=function(t){return e(t).triangles()},e.x=function(t){return arguments.length?(i="function"==typeof t?t:b_(+t),e):i},e.y=function(t){return arguments.length?(o="function"==typeof t?t:b_(+t),e):o},e.extent=function(t){return arguments.length?(n=null==t?null:[[+t[0][0],+t[0][1]],[+t[1][0],+t[1][1]]],e):n&&[[n[0][0],n[0][1]],[n[1][0],n[1][1]]]},e.size=function(t){return arguments.length?(n=null==t?null:[[0,0],[+t[0],+t[1]]],e):n&&[n[1][0]-n[0][0],n[1][1]-n[0][1]]},e},B.zoom=function(){var d,o,u=ub,s=fb,p=hb,i=sb,n=lb,a=[0,1/0],v=[[-1/0,-1/0],[1/0,1/0]],f=250,l=qe,c=[],e=I("start","zoom","end"),h=500,g=150,y=0;function _(t){t.property("__zoom",cb).on("wheel.zoom",r).on("mousedown.zoom",T).on("dblclick.zoom",N).filter(n).on("touchstart.zoom",S).on("touchmove.zoom",E).on("touchend.zoom touchcancel.zoom",k).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function b(t,n){return(n=Math.max(a[0],Math.min(a[1],n)))===t.k?t:new eb(n,t.x,t.y)}function m(t,n,e){var r=n[0]-e[0]*t.k,i=n[1]-e[1]*t.k;return r===t.x&&i===t.y?t:new eb(t.k,r,i)}function x(t){return[(+t[0][0]+ +t[1][0])/2,(+t[0][1]+ +t[1][1])/2]}function w(t,f,c){t.on("start.zoom",function(){M(this,arguments).start()}).on("interrupt.zoom end.zoom",function(){M(this,arguments).end()}).tween("zoom",function(){var t=arguments,r=M(this,t),n=s.apply(this,t),i=c||x(n),o=Math.max(n[1][0]-n[0][0],n[1][1]-n[0][1]),e=this.__zoom,a="function"==typeof f?f.apply(this,t):f,u=l(e.invert(i).concat(o/e.k),a.invert(i).concat(o/a.k));return function(t){if(1===t)t=a;else{var n=u(t),e=o/n[2];t=new eb(e,i[0]-n[0]*e,i[1]-n[1]*e)}r.zoom(null,t)}})}function M(t,n){for(var e,r=0,i=c.length;r<i;++r)if((e=c[r]).that===t)return e;return new A(t,n)}function A(t,n){this.that=t,this.args=n,this.index=-1,this.active=0,this.extent=s.apply(t,n)}function r(){if(u.apply(this,arguments)){var t=M(this,arguments),n=this.__zoom,e=Math.max(a[0],Math.min(a[1],n.k*Math.pow(2,i.apply(this,arguments)))),r=Ft(this);if(t.wheel)t.mouse[0][0]===r[0]&&t.mouse[0][1]===r[1]||(t.mouse[1]=n.invert(t.mouse[0]=r)),clearTimeout(t.wheel);else{if(n.k===e)return;t.mouse=[r,n.invert(r)],Nr(this),t.start()}ab(),t.wheel=setTimeout(function(){t.wheel=null,t.end()},g),t.zoom("mouse",p(m(b(n,e),t.mouse[0],t.mouse[1]),t.extent,v))}}function T(){if(!o&&u.apply(this,arguments)){var e=M(this,arguments),t=Dt(B.event.view).on("mousemove.zoom",function(){if(ab(),!e.moved){var t=B.event.clientX-r,n=B.event.clientY-i;e.moved=y<t*t+n*n}e.zoom("mouse",p(m(e.that.__zoom,e.mouse[0]=Ft(e.that),e.mouse[1]),e.extent,v))},!0).on("mouseup.zoom",function(){t.on("mousemove.zoom mouseup.zoom",null),Gt(B.event.view,e.moved),ab(),e.end()},!0),n=Ft(this),r=B.event.clientX,i=B.event.clientY;Xt(B.event.view),ob(),e.mouse=[n,this.__zoom.invert(n)],Nr(this),e.start()}}function N(){if(u.apply(this,arguments)){var t=this.__zoom,n=Ft(this),e=t.invert(n),r=t.k*(B.event.shiftKey?.5:2),i=p(m(b(t,r),n,e),s.apply(this,arguments),v);ab(),0<f?Dt(this).transition().duration(f).call(w,i,n):Dt(this).call(_.transform,i)}}function S(){if(u.apply(this,arguments)){var t,n,e,r,i=M(this,arguments),o=B.event.changedTouches,a=o.length;for(ob(),n=0;n<a;++n)r=[r=It(this,o,(e=o[n]).identifier),this.__zoom.invert(r),e.identifier],i.touch0?i.touch1||(i.touch1=r):(i.touch0=r,t=!0);if(d&&(d=clearTimeout(d),!i.touch1))return i.end(),void((r=Dt(this).on("dblclick.zoom"))&&r.apply(this,arguments));t&&(d=setTimeout(function(){d=null},h),Nr(this),i.start())}}function E(){var t,n,e,r,i=M(this,arguments),o=B.event.changedTouches,a=o.length;for(ab(),d&&(d=clearTimeout(d)),t=0;t<a;++t)e=It(this,o,(n=o[t]).identifier),i.touch0&&i.touch0[2]===n.identifier?i.touch0[0]=e:i.touch1&&i.touch1[2]===n.identifier&&(i.touch1[0]=e);if(n=i.that.__zoom,i.touch1){var u=i.touch0[0],f=i.touch0[1],c=i.touch1[0],s=i.touch1[1],l=(l=c[0]-u[0])*l+(l=c[1]-u[1])*l,h=(h=s[0]-f[0])*h+(h=s[1]-f[1])*h;n=b(n,Math.sqrt(l/h)),e=[(u[0]+c[0])/2,(u[1]+c[1])/2],r=[(f[0]+s[0])/2,(f[1]+s[1])/2]}else{if(!i.touch0)return;e=i.touch0[0],r=i.touch0[1]}i.zoom("touch",p(m(n,e,r),i.extent,v))}function k(){var t,n,e=M(this,arguments),r=B.event.changedTouches,i=r.length;for(ob(),o&&clearTimeout(o),o=setTimeout(function(){o=null},h),t=0;t<i;++t)n=r[t],e.touch0&&e.touch0[2]===n.identifier?delete e.touch0:e.touch1&&e.touch1[2]===n.identifier&&delete e.touch1;e.touch1&&!e.touch0&&(e.touch0=e.touch1,delete e.touch1),e.touch0?e.touch0[1]=this.__zoom.invert(e.touch0[0]):e.end()}return _.transform=function(t,n){var e=t.selection?t.selection():t;e.property("__zoom",cb),t!==e?w(t,n):e.interrupt().each(function(){M(this,arguments).start().zoom(null,"function"==typeof n?n.apply(this,arguments):n).end()})},_.scaleBy=function(t,n){_.scaleTo(t,function(){return this.__zoom.k*("function"==typeof n?n.apply(this,arguments):n)})},_.scaleTo=function(t,o){_.transform(t,function(){var t=s.apply(this,arguments),n=this.__zoom,e=x(t),r=n.invert(e),i="function"==typeof o?o.apply(this,arguments):o;return p(m(b(n,i),e,r),t,v)})},_.translateBy=function(t,n,e){_.transform(t,function(){return p(this.__zoom.translate("function"==typeof n?n.apply(this,arguments):n,"function"==typeof e?e.apply(this,arguments):e),s.apply(this,arguments),v)})},_.translateTo=function(t,r,i){_.transform(t,function(){var t=s.apply(this,arguments),n=this.__zoom,e=x(t);return p(rb.translate(e[0],e[1]).scale(n.k).translate("function"==typeof r?-r.apply(this,arguments):-r,"function"==typeof i?-i.apply(this,arguments):-i),t,v)})},A.prototype={start:function(){return 1==++this.active&&(this.index=c.push(this)-1,this.emit("start")),this},zoom:function(t,n){return this.mouse&&"mouse"!==t&&(this.mouse[1]=n.invert(this.mouse[0])),this.touch0&&"touch"!==t&&(this.touch0[1]=n.invert(this.touch0[0])),this.touch1&&"touch"!==t&&(this.touch1[1]=n.invert(this.touch1[0])),this.that.__zoom=n,this.emit("zoom"),this},end:function(){return 0==--this.active&&(c.splice(this.index,1),this.index=-1,this.emit("end")),this},emit:function(t){Ct(new nb(_,t,this.that.__zoom),e.apply,e,[t,this.that,this.args])}},_.wheelDelta=function(t){return arguments.length?(i="function"==typeof t?t:tb(+t),_):i},_.filter=function(t){return arguments.length?(u="function"==typeof t?t:tb(!!t),_):u},_.touchable=function(t){return arguments.length?(n="function"==typeof t?t:tb(!!t),_):n},_.extent=function(t){return arguments.length?(s="function"==typeof t?t:tb([[+t[0][0],+t[0][1]],[+t[1][0],+t[1][1]]]),_):s},_.scaleExtent=function(t){return arguments.length?(a[0]=+t[0],a[1]=+t[1],_):[a[0],a[1]]},_.translateExtent=function(t){return arguments.length?(v[0][0]=+t[0][0],v[1][0]=+t[1][0],v[0][1]=+t[0][1],v[1][1]=+t[1][1],_):[[v[0][0],v[0][1]],[v[1][0],v[1][1]]]},_.constrain=function(t){return arguments.length?(p=t,_):p},_.duration=function(t){return arguments.length?(f=+t,_):f},_.interpolate=function(t){return arguments.length?(l=t,_):l},_.on=function(){var t=e.on.apply(e,arguments);return t===e?_:t},_.clickDistance=function(t){return arguments.length?(y=(t=+t)*t,_):Math.sqrt(y)},_},B.zoomTransform=ib,B.zoomIdentity=rb,Object.defineProperty(B,"__esModule",{value:!0})});