d3=function(){function ie(n){return null!=n&&!isNaN(n)}function aw(n){return n.length}function vw(n){for(var t=1;n*t%1;)t*=10;return t}function fc(n,t){try{for(var i in t)Object.defineProperty(n.prototype,i,{value:t[i],enumerable:!1})}catch(r){n.prototype=t}}function g(){}function re(){}function yw(n,t,i){return function(){var r=i.apply(t,arguments);return r===t?n:r}}function ue(n,t){var i,u,r;if(t in n)return t;for(t=t.charAt(0).toUpperCase()+t.substring(1),i=0,u=ds.length;u>i;++i)if(r=ds[i]+t,r in n)return r}function pw(n){for(var t=n.length,i=new Array(t);t--;)i[t]=n[t];return i}function ww(n){return Array.prototype.slice.call(n)}function s(){}function fe(){}function ec(n){function r(){for(var i,r=t,u=-1,f=r.length;++u<f;)(i=r[u].on)&&i.apply(this,arguments);return n}var t=[],i=new g;return r.on=function(r,u){var e,f=i.get(r);return arguments.length<2?f&&f.on:(f&&(f.on=null,t=t.slice(0,e=t.indexOf(f)).concat(t.slice(e+1)),i.remove(r)),u&&t.push(i.set(r,{on:u})),n)},r}function at(){n.event.preventDefault()}function oc(){for(var i,t=n.event;i=t.sourceEvent;)t=i;return t}function ee(t){for(var i=new fe,r=0,u=arguments.length;++r<u;)i[arguments[r]]=ec(i);return i.of=function(r,u){return function(f){try{var e=f.sourceEvent=n.event;f.target=t;n.event=f;i[f.type].apply(r,u)}finally{n.event=e}}},i}function vt(n){return pu(n,u),n}function oe(n){return"function"==typeof n?n:function(){return gs(n,this)}}function sc(n){return"function"==typeof n?n:function(){return nh(n,this)}}function hc(t,i){function r(){this.removeAttribute(t)}function u(){this.removeAttributeNS(t.space,t.local)}function f(){this.setAttribute(t,i)}function e(){this.setAttributeNS(t.space,t.local,i)}function o(){var n=i.apply(this,arguments);null==n?this.removeAttribute(t):this.setAttribute(t,n)}function s(){var n=i.apply(this,arguments);null==n?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,n)}return t=n.ns.qualify(t),null==i?t.local?u:r:"function"==typeof i?t.local?s:o:t.local?e:f}function cc(n){return n.trim().replace(/\s+/g," ")}function lc(t){return new RegExp("(?:^|\\s+)"+n.requote(t)+"(?:\\s+|$)","g")}function ac(n,t){function r(){for(var r=-1;++r<i;)n[r](this,t)}function u(){for(var r=-1,u=t.apply(this,arguments);++r<i;)n[r](this,u)}n=n.trim().split(/\s+/).map(bw);var i=n.length;return"function"==typeof t?u:r}function bw(n){var t=lc(n);return function(i,r){if(u=i.classList)return r?u.add(n):u.remove(n);var u=i.getAttribute("class")||"";r?(t.lastIndex=0,t.test(u)||i.setAttribute("class",cc(u+" "+n))):i.setAttribute("class",cc(u.replace(t," ")))}}function vc(n,t,i){function r(){this.style.removeProperty(n)}function u(){this.style.setProperty(n,t,i)}function f(){var r=t.apply(this,arguments);null==r?this.style.removeProperty(n):this.style.setProperty(n,r,i)}return null==t?r:"function"==typeof t?f:u}function yc(n,t){function i(){delete this[n]}function r(){this[n]=t}function u(){var i=t.apply(this,arguments);null==i?delete this[n]:this[n]=i}return null==t?i:"function"==typeof t?u:r}function pc(t){return"function"==typeof t?t:(t=n.ns.qualify(t)).local?function(){return b.createElementNS(t.space,t.local)}:function(){return b.createElementNS(this.namespaceURI,t)}}function se(n){return{__data__:n}}function wc(n){return function(){return np(this,n)}}function kw(t){return arguments.length||(t=n.ascending),function(n,i){return n&&i?t(n.__data__,i.__data__):!n-!i}}function yt(n,t){for(var i=0,u=n.length;u>i;i++)for(var f,e=n[i],r=0,o=e.length;o>r;r++)(f=e[r])&&t(f,r,i);return n}function bc(n){return pu(n,tt),n}function dw(n){var t,i;return function(r,u,f){var e,o=n[f].update,s=o.length;for(f!=i&&(i=f,t=0),u>=t&&(t=u+1);!(e=o[t])&&++t<s;);return e}}function kc(t,i,r){function o(){var n=this[u];n&&(this.removeEventListener(t,n,n.$),delete this[u])}function c(){var n=h(i,ht(arguments));o.call(this);this.addEventListener(t,this[u]=n,n.$=r);n._=i}function l(){var u,f=new RegExp("^__on([^.]+)"+n.requote(t)+"$"),i,r;for(i in this)(u=i.match(f))&&(r=this[i],this.removeEventListener(u[1],r,r.$),delete this[i])}var u="__on"+t,f=t.indexOf("."),h=dc,e;return f>0&&(t=t.substring(0,f)),e=bu.get(t),e&&(t=e,h=gw),f?i?c:o:i?s:l}function dc(t,i){return function(r){var u=n.event;n.event=r;i[0]=this.__data__;try{t.apply(this,i)}finally{n.event=u}}}function gw(n,t){var i=dc(n,t);return function(n){var t=this,r=n.relatedTarget;r&&(r===t||8&r.compareDocumentPosition(t))||i.call(t,n)}}function yr(){var t=".dragsuppress-"+ ++tp,f="touchmove"+t,e="selectstart"+t,o="dragstart"+t,u="click"+t,i=n.select(c).on(f,at).on(e,at).on(o,at),r=wt.style,s=r[ku];return r[ku]="none",function(n){function f(){i.on(u,null)}i.on(t,null);r[ku]=s;n&&(i.on(u,function(){at();f()},!0),setTimeout(f,0))}}function gc(t,i){var u=t.ownerSVGElement||t,r,f,e;return u.createSVGPoint?(r=u.createSVGPoint(),0>du&&(c.scrollX||c.scrollY)&&(u=n.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important"),f=u[0][0].getScreenCTM(),du=!(f.f||f.e),u.remove()),du?(r.x=i.pageX,r.y=i.pageY):(r.x=i.clientX,r.y=i.clientY),r=r.matrixTransform(t.getScreenCTM().inverse()),[r.x,r.y]):(e=t.getBoundingClientRect(),[i.clientX-e.left-t.clientLeft,i.clientY-e.top-t.clientTop])}function vi(){}function yi(n,t,i){return new he(n,t,i)}function he(n,t,i){this.h=n;this.s=t;this.l=i}function ce(n,t,i){function e(n){return n>360?n-=360:0>n&&(n+=360),60>n?r+(u-r)*n/60:180>n?u:240>n?r+(u-r)*(240-n)/60:r}function f(n){return Math.round(255*e(n))}var r,u;return n=isNaN(n)?0:(n%=360)<0?n+360:n,t=isNaN(t)?0:0>t?0:t>1?1:t,i=0>i?0:i>1?1:i,u=.5>=i?i*(1+t):i+t-i*t,r=2*i-u,ut(f(n+120),f(n),f(n-120))}function nl(n){return n>0?1:0>n?-1:0}function tl(n){return n>1?0:-1>n?t:Math.acos(n)}function ri(n){return n>1?t/2:-1>n?-t/2:Math.asin(n)}function nb(n){return(Math.exp(n)-Math.exp(-n))/2}function tb(n){return(Math.exp(n)+Math.exp(-n))/2}function il(n){return(n=Math.sin(n/2))*n}function pi(n,t,i){return new pr(n,t,i)}function pr(n,t,i){this.h=n;this.c=t;this.l=i}function le(n,t,i){return isNaN(n)&&(n=0),isNaN(t)&&(t=0),wi(i,Math.cos(n*=r)*t,Math.sin(n)*t)}function wi(n,t,i){return new wr(n,t,i)}function wr(n,t,i){this.l=n;this.a=t;this.b=i}function rl(n,t,i){var r=(n+16)/116,u=r+t/500,f=r-i/200;return u=ae(u)*up,r=ae(r)*fp,f=ae(f)*ep,ut(ye(3.2404542*u-1.5371385*r-.4985314*f),ye(-.969266*u+1.8760108*r+.041556*f),ye(.0556434*u-.2040259*r+1.0572252*f))}function ul(n,t,i){return n>0?pi(Math.atan2(i,t)*e,Math.sqrt(t*t+i*i),n):pi(NaN,NaN,n)}function ae(n){return n>.206893034?n*n*n:(n-4/29)/7.787037}function ve(n){return n>.008856?Math.pow(n,1/3):7.787037*n+4/29}function ye(n){return Math.round(255*(.00304>=n?12.92*n:1.055*Math.pow(n,1/2.4)-.055))}function fl(n){return ut(n>>16,255&n>>8,255&n)}function br(n){return fl(n)+""}function ut(n,t,i){return new pe(n,t,i)}function pe(n,t,i){this.r=n;this.g=t;this.b=i}function bi(n){return 16>n?"0"+Math.max(0,n).toString(16):Math.min(255,n).toString(16)}function el(n,t,i){var s,r,o,u=0,f=0,e=0;if(s=/([a-z]+)\((.*)\)/i.exec(n))switch(r=s[2].split(","),s[1]){case"hsl":return i(parseFloat(r[0]),parseFloat(r[1])/100,parseFloat(r[2])/100);case"rgb":return t(be(r[0]),be(r[1]),be(r[2]))}return(o=sr.get(n))?t(o.r,o.g,o.b):(null!=n&&"#"===n.charAt(0)&&(4===n.length?(u=n.charAt(1),u+=u,f=n.charAt(2),f+=f,e=n.charAt(3),e+=e):7===n.length&&(u=n.substring(1,3),f=n.substring(3,5),e=n.substring(5,7)),u=parseInt(u,16),f=parseInt(f,16),e=parseInt(e,16)),t(u,f,e))}function ol(n,t,i){var f,s,e=Math.min(n/=255,t/=255,i/=255),r=Math.max(n,t,i),u=r-e,o=(r+e)/2;return u?(s=.5>o?u/(r+e):u/(2-r-e),f=n==r?(t-i)/u+(i>t?6:0):t==r?(i-n)/u+2:(n-t)/u+4,f*=60):(f=NaN,s=o>0&&1>o?0:f),yi(f,s,o)}function sl(n,t,i){n=we(n);t=we(t);i=we(i);var u=ve((.4124564*n+.3575761*t+.1804375*i)/up),r=ve((.2126729*n+.7151522*t+.072175*i)/fp),f=ve((.0193339*n+.119192*t+.9503041*i)/ep);return wi(116*r-16,500*(u-r),200*(r-f))}function we(n){return(n/=255)<=.04045?n/12.92:Math.pow((n+.055)/1.055,2.4)}function be(n){var t=parseFloat(n);return"%"===n.charAt(n.length-1)?Math.round(2.55*t):t}function f(n){return"function"==typeof n?n:function(){return n}}function a(n){return n}function ke(n){return function(t,i,r){return 2===arguments.length&&"function"==typeof i&&(r=i,i=null),de(t,i,n,r)}}function de(t,i,r,u){function l(){var t,n=e.status;if(!n&&e.responseText||n>=200&&300>n||304===n){try{t=r.call(f,e)}catch(i){return s.error.call(f,i),void 0}s.load.call(f,t)}else s.error.call(f,e)}var f={},s=n.dispatch("progress","load","error"),o={},e=new XMLHttpRequest,h=null;return!c.XDomainRequest||"withCredentials"in e||!/^(http(s)?:)?\/\//.test(t)||(e=new XDomainRequest),"onload"in e?e.onload=e.onerror=l:e.onreadystatechange=function(){e.readyState>3&&l()},e.onprogress=function(t){var i=n.event;n.event=t;try{s.progress.call(f,e)}finally{n.event=i}},f.header=function(n,t){return n=(n+"").toLowerCase(),arguments.length<2?o[n]:(null==t?delete o[n]:o[n]=t+"",f)},f.mimeType=function(n){return arguments.length?(i=null==n?null:n+"",f):i},f.responseType=function(n){return arguments.length?(h=n,f):h},f.response=function(n){return r=n,f},["get","post"].forEach(function(n){f[n]=function(){return f.send.apply(f,[n].concat(ht(arguments)))}}),f.send=function(n,r,u){if(2===arguments.length&&"function"==typeof r&&(u=r,r=null),e.open(n,t,!0),null==i||"accept"in o||(o.accept=i+",*/*"),e.setRequestHeader)for(var s in o)e.setRequestHeader(s,o[s]);return null!=i&&e.overrideMimeType&&e.overrideMimeType(i),null!=h&&(e.responseType=h),null!=u&&f.on("error",u).on("load",function(n){u(null,n)}),e.send(null==r?null:r),f},f.abort=function(){return e.abort(),f},n.rebind(f,s,"on"),null==u?f:f.get(ib(u))}function ib(n){return 1===n.length?function(t,i){n(null==t?i:null)}:n}function ge(){var t=cl(),n=ll()-t;n>24?(isFinite(n)&&(clearTimeout(of),of=setTimeout(ge,n)),ef=0):(ef=1,uh(ge))}function hl(n,t,i){var r=arguments.length;2>r&&(t=0);3>r&&(i=Date.now());it.callback=n;it.time=i+t}function cl(){var n=Date.now();for(it=uf;it;)n>=it.time&&(it.flush=it.callback(n-it.time)),it=it.next;return n}function ll(){for(var t,n=uf,i=1/0;n;)n.flush?n=t?t.next=n.next:uf=n.next:(n.time<i&&(i=n.time),n=(t=n).next);return ff=t,i}function rb(n,t){var i=Math.pow(10,3*Math.abs(8-t));return{scale:t>8?function(n){return n/i}:function(n){return n*i},symbol:n}}function no(n,t){return t-(n?Math.ceil(Math.log(n)/Math.LN10):1)}function ub(n){return n+""}function to(){}function al(n,t,i){var r=i.s=n+t,u=r-n,f=r-u;i.t=n-f+(t-u)}function kr(n,t){n&&oh.hasOwnProperty(n.type)&&oh[n.type](n,t)}function io(n,t,i){var r,u=-1,f=n.length-i;for(t.lineStart();++u<f;)r=n[u],t.point(r[0],r[1]);t.lineEnd()}function vl(n,t){var i=-1,r=n.length;for(t.polygonStart();++i<r;)io(n[i],t,1);t.polygonEnd()}function fb(){function f(f,e){f*=r;e=e*r/2+t/4;var o=f-n,s=Math.cos(e),h=Math.sin(e),c=u*h,l=i*s+c*Math.cos(o),a=c*Math.sin(o);bt.add(Math.atan2(a,l));n=f;i=s;u=h}var e,o,n,i,u;y.point=function(s,h){y.point=f;n=(e=s)*r;i=Math.cos(h=(o=h)*r/2+t/4);u=Math.sin(h)};y.lineEnd=function(){f(e,o)}}function ui(n){var t=n[0],i=n[1],r=Math.cos(i);return[r*Math.cos(t),r*Math.sin(t),Math.sin(i)]}function dr(n,t){return n[0]*t[0]+n[1]*t[1]+n[2]*t[2]}function ki(n,t){return[n[1]*t[2]-n[2]*t[1],n[2]*t[0]-n[0]*t[2],n[0]*t[1]-n[1]*t[0]]}function ro(n,t){n[0]+=t[0];n[1]+=t[1];n[2]+=t[2]}function gr(n,t){return[n[0]*t,n[1]*t,n[2]*t]}function nu(n){var t=Math.sqrt(n[0]*n[0]+n[1]*n[1]+n[2]*n[2]);n[0]/=t;n[1]/=t;n[2]/=t}function tu(n){return[Math.atan2(n[1],n[0]),ri(n[2])]}function iu(n,t){return Math.abs(n[0]-t[0])<i&&Math.abs(n[1]-t[1])<i}function uo(n,t){n*=r;var i=Math.cos(t*=r);nr(i*Math.cos(n),i*Math.sin(n),Math.sin(t))}function nr(n,t,i){++cr;ci+=(n-ci)/cr;li+=(t-li)/cr;ct+=(i-ct)/cr}function yl(){function u(u,f){u*=r;var c=Math.cos(f*=r),o=c*Math.cos(u),s=c*Math.sin(u),h=Math.sin(f),e=Math.atan2(Math.sqrt((e=t*h-i*s)*e+(e=i*o-n*h)*e+(e=n*s-t*o)*e),n*o+t*s+i*h);cf+=e;kt+=e*(n+(n=o));dt+=e*(t+(t=s));rt+=e*(i+(i=h));nr(n,t,i)}var n,t,i;k.point=function(f,e){f*=r;var o=Math.cos(e*=r);n=o*Math.cos(f);t=o*Math.sin(f);i=Math.sin(e);k.point=u;nr(n,t,i)}}function pl(){k.point=uo}function eb(){function u(u,f){u*=r;var p=Math.cos(f*=r),e=p*Math.cos(u),o=p*Math.sin(u),s=Math.sin(f),c=t*s-i*o,l=i*e-n*s,a=n*o-t*e,v=Math.sqrt(c*c+l*l+a*a),w=n*e+t*o+i*s,y=v&&-tl(w)/v,h=Math.atan2(v,w);di+=y*c;gi+=y*l;gt+=y*a;cf+=h;kt+=h*(n+(n=e));dt+=h*(t+(t=o));rt+=h*(i+(i=s));nr(n,t,i)}var f,e,n,t,i;k.point=function(o,s){f=o;e=s;k.point=u;o*=r;var h=Math.cos(s*=r);n=h*Math.cos(o);t=h*Math.sin(o);i=Math.sin(s);nr(n,t,i)};k.lineEnd=function(){u(f,e);k.lineEnd=pl;k.point=uo}}function tr(){return!0}function wl(n,t,i,r,u){var h=[],o=[],f,s,c,l,e;if(n.forEach(function(n){var s,i,r,e,t,f;if(!((s=n.length-1)<=0)){if(i=n[0],r=n[s],iu(i,r)){for(u.lineStart(),e=0;s>e;++e)u.point((i=n[e])[0],i[1]);return u.lineEnd(),void 0}t={point:i,points:n,other:null,visited:!1,entry:!0,subject:!0};f={point:i,points:[i],other:t,visited:!1,entry:!1,subject:!1};t.other=f;h.push(t);o.push(f);t={point:r,points:[r],other:null,visited:!1,entry:!1,subject:!0};f={point:r,points:[r],other:t,visited:!1,entry:!0,subject:!1};t.other=f;h.push(t);o.push(f)}}),o.sort(t),bl(h),bl(o),h.length){if(i)for(var e=1,a=!i(o[0].point),v=o.length;v>e;++e)o[e].entry=a=!a;for(l=h[0];;){for(f=l;f.visited;)if((f=f.next)===l)return;s=f.points;u.lineStart();do{if(f.visited=f.other.visited=!0,f.entry){if(f.subject)for(e=0;e<s.length;e++)u.point((c=s[e])[0],c[1]);else r(f.point,f.next.point,1,u);f=f.next}else{if(f.subject)for(s=f.prev.points,e=s.length;--e>=0;)u.point((c=s[e])[0],c[1]);else r(f.point,f.prev.point,-1,u);f=f.prev}f=f.other;s=f.points}while(!f.visited);u.lineEnd()}}}function bl(n){if(r=n.length){for(var r,t,u=0,i=n[0];++u<r;)i.next=t=n[u],t.prev=i,i=t;i.next=t=n[0];t.prev=i}}function kl(t,i,r,u){return function(f){function l(n,i){t(n,i)&&f.point(n,i)}function b(n,t){a.point(n,t)}function v(){e.point=b;a.lineStart()}function y(){e.point=l;a.lineEnd()}function p(n,t){c.point(n,t);s.push([n,t])}function k(){c.lineStart();s=[]}function d(){var e,t,r;p(s[0][0],s[0][1]);c.lineEnd();var i,u=c.clean(),n=w.buffer(),t=n.length;if(s.pop(),h.push(s),s=null,t){if(1&u){for(i=n[0],t=i.length-1,r=-1,f.lineStart();++r<t;)f.point((e=i[r])[0],e[1]);return f.lineEnd(),void 0}t>1&&2&u&&n.push(n.pop().concat(n.shift()));o.push(n.filter(ob))}}var o,h,s,a=i(f),e={point:l,lineStart:v,lineEnd:y,polygonStart:function(){e.point=p;e.lineStart=k;e.lineEnd=d;o=[];h=[];f.polygonStart()},polygonEnd:function(){e.point=l;e.lineStart=v;e.lineEnd=y;o=n.merge(o);o.length?wl(o,sb,null,r,f):u(h)&&(f.lineStart(),r(null,null,1,f),f.lineEnd());f.polygonEnd();o=h=null},sphere:function(){f.polygonStart();f.lineStart();r(null,null,1,f);f.lineEnd();f.polygonEnd()}},w=dl(),c=i(w);return e}}function ob(n){return n.length>1}function dl(){var t,n=[];return{lineStart:function(){n.push(t=[])},point:function(n,i){t.push([n,i])},lineEnd:s,buffer:function(){var i=n;return n=[],t=null,i},rejoin:function(){n.length>1&&n.push(n.pop().concat(n.shift()))}}}function sb(n,r){return((n=n.point)[0]<0?n[1]-t/2-i:t/2-n[1])-((r=r.point)[0]<0?r[1]-t/2-i:t/2-r[1])}function gl(n,r){var f=n[0],st=n[1],ht=[Math.sin(f),-Math.cos(f),0],l=0,k=!1,d=!1,g=0,e,nt,o,a,w,b,ot;for(bt.reset(),e=0,nt=r.length;nt>e;++e)if(o=r[e],a=o.length,a){for(var s=o[0],v=s[0],tt=s[1]/2+t/4,it=Math.sin(tt),rt=Math.cos(tt),h=1;;){h===a&&(h=0);n=o[h];var y=n[0],p=n[1]/2+t/4,ut=Math.sin(p),ft=Math.cos(p),u=y-v,c=Math.abs(u)>t,et=it*ut;if((bt.add(Math.atan2(et*Math.sin(u),rt*ft+et*Math.cos(u))),Math.abs(p)<i&&(d=!0),l+=c?u+(u>=0?2:-2)*t:u,c^v>=f^y>=f)&&(w=ki(ui(s),ui(n)),nu(w),b=ki(ht,w),nu(b),ot=(c^u>=0?-1:1)*ri(b[2]),st>ot&&(g+=c^u>=0?1:-1)),!h++)break;v=y;it=ut;rt=ft;s=n}Math.abs(l)>i&&(k=!0)}return(!d&&!k&&0>bt||-i>l)^1&g}function hb(n){var e,u=NaN,r=NaN,f=NaN;return{lineStart:function(){n.lineStart();e=1},point:function(o,s){var h=o>0?t:-t,c=Math.abs(o-u);Math.abs(c-t)<i?(n.point(u,r=(r+s)/2>0?t/2:-t/2),n.point(f,r),n.lineEnd(),n.lineStart(),n.point(h,r),n.point(o,r),e=0):f!==h&&c>=t&&(Math.abs(u-f)<i&&(u-=f*i),Math.abs(o-h)<i&&(o-=h*i),r=cb(u,r,o,s),n.point(f,r),n.lineEnd(),n.lineStart(),n.point(h,r),e=0);n.point(u=o,r=s);f=h},lineEnd:function(){n.lineEnd();u=r=NaN},clean:function(){return 2-e}}}function cb(n,t,r,u){var f,e,o=Math.sin(n-r);return Math.abs(o)>i?Math.atan((Math.sin(t)*(e=Math.cos(u))*Math.sin(r)-Math.sin(u)*(f=Math.cos(t))*Math.sin(n))/(f*e*o)):(t+u)/2}function lb(n,r,u,f){var e,o;null==n?(e=u*t/2,f.point(-t,e),f.point(0,e),f.point(t,e),f.point(t,0),f.point(t,-e),f.point(0,-e),f.point(-t,-e),f.point(-t,0),f.point(-t,e)):Math.abs(n[0]-r[0])>i?(o=(n[0]<r[0]?1:-1)*t,e=u*o/2,f.point(-o,e),f.point(0,e),f.point(o,e)):f.point(r[0],r[1])}function ab(n){return gl(eit,n)}function vb(n){function o(n,t){return Math.cos(n)*Math.cos(t)>u}function h(n){var r,l,u,c,h;return{lineStart:function(){c=u=!1;h=1},point:function(v,y){var w,p=[v,y],b=o(v,y),d=e?b?0:s(v,y):b?s(v+(0>v?t:-t),y):0,k;(!r&&(c=u=b)&&n.lineStart(),b!==u&&(w=f(r,p),(iu(r,w)||iu(p,w))&&(p[0]+=i,p[1]+=i,b=o(p[0],p[1]))),b!==u)?(h=0,b?(n.lineStart(),w=f(p,r),n.point(w[0],w[1])):(w=f(r,p),n.point(w[0],w[1]),n.lineEnd()),r=w):a&&r&&e^b&&(d&l||!(k=f(p,r,!0))||(h=0,e?(n.lineStart(),n.point(k[0][0],k[0][1]),n.point(k[1][0],k[1][1]),n.lineEnd()):(n.point(k[1][0],k[1][1]),n.lineEnd(),n.lineStart(),n.point(k[0][0],k[0][1]))));!b||r&&iu(r,p)||n.point(p[0],p[1]);r=p;u=b;l=d},lineEnd:function(){u&&n.lineEnd();r=null},clean:function(){return h|(c&&u)<<1}}}function f(n,r,f){var ft=ui(n),et=ui(r),it=[1,0,0],l=ki(ft,et),rt=dr(l,l),w=l[0],b=rt-w*w,d,e,tt;if(!b)return!f&&n;var ot=u*rt/b,st=-u*w/b,ht=ki(it,l),o=gr(it,ot),ct=gr(l,st);ro(o,ct);var a=ht,y=dr(o,a),k=dr(a,a),ut=y*y-k*(dr(o,o)-1);if(!(0>ut)){if(d=Math.sqrt(ut),e=gr(a,(-y-d)/k),ro(e,o),e=tu(e),!f)return e;var p,s=n[0],v=r[0],h=n[1],c=r[1];s>v&&(p=s,s=v,v=p);var g=v-s,nt=Math.abs(g-t)<i,lt=nt||i>g;if(!nt&&h>c&&(p=h,h=c,c=p),lt?nt?h+c>0^e[1]<(Math.abs(e[0]-s)<i?h:c):h<=e[1]&&e[1]<=c:g>t^(s<=e[0]&&e[0]<=v))return tt=gr(a,(-y+d)/k),ro(tt,o),[e,tu(tt)]}}function s(i,r){var f=e?n:t-n,u=0;return-f>i?u|=1:i>f&&(u|=2),-f>r?u|=4:r>f&&(u|=8),u}function c(n){return gl(l,n)}var u=Math.cos(n),e=u>0,l=[n,0],a=Math.abs(u)>i,v=so(n,6*r);return kl(o,h,v,c)}function yb(t,r,u,f){function e(n,f){return Math.abs(n[0]-t)<i?f>0?0:3:Math.abs(n[0]-u)<i?f>0?2:1:Math.abs(n[1]-r)<i?f>0?1:0:f>0?3:2}function s(n,t){return o(n.point,t.point)}function o(n,t){var i=e(n,1),r=e(t,1);return i!==r?i-r:0===i?t[1]-n[1]:1===i?n[0]-t[0]:2===i?n[1]-t[1]:t[0]-n[0]}function h(n,e){var s=e[0]-n[0],h=e[1]-n[1],o=[0,1];return Math.abs(s)<i&&Math.abs(h)<i?t<=n[0]&&n[0]<=u&&r<=n[1]&&n[1]<=f:ru(t-n[0],s,o)&&ru(n[0]-u,-s,o)&&ru(r-n[1],h,o)&&ru(n[1]-f,-h,o)?(o[1]<1&&(e[0]=n[0]+o[1]*s,e[1]=n[1]+o[1]*h),o[0]>0&&(n[0]+=o[0]*s,n[1]+=o[0]*h),!0):!1}return function(i){function ot(n){var i=e(n,-1);return d([0===i||3===i?t:u,i>1?f:r])}function d(n){for(var r=0,s=l.length,u=n[1],f=0;s>f;++f)for(var t,e=1,o=l[f],h=o.length,i=o[0];h>e;++e)t=o[e],i[1]<=u?t[1]>u&&g(i,t,n)>0&&++r:t[1]<=u&&g(i,t,n)<0&&--r,i=t;return 0!==r}function g(n,t,i){return(t[0]-n[0])*(i[1]-n[1])-(i[0]-n[0])*(t[1]-n[1])}function nt(n,i,s,h){var c=0,l=0;if(null==n||(c=e(n,s))!==(l=e(i,s))||o(n,i)<0^s>0){do h.point(0===c||3===c?t:u,c>1?f:r);while((c=(c+s+4)%4)!==l)}else h.point(i[0],i[1])}function tt(n,i){return n>=t&&u>=n&&i>=r&&f>=i}function it(n,t){tt(n,t)&&i.point(n,t)}function st(){k.point=rt;l&&l.push(v=[]);w=!0;a=!1;y=p=NaN}function ht(){c&&(rt(ut,ft),et&&a&&b.rejoin(),c.push(b.buffer()));k.point=it;a&&i.lineEnd()}function rt(n,t){var r,u,f;n=Math.max(-lf,Math.min(lf,n));t=Math.max(-lf,Math.min(lf,t));r=tt(n,t);(l&&v.push([n,t]),w)?(ut=n,ft=t,et=r,w=!1,r&&(i.lineStart(),i.point(n,t))):r&&a?i.point(n,t):(u=[y,p],f=[n,t],h(u,f)?(a||(i.lineStart(),i.point(u[0],u[1])),i.point(f[0],f[1]),r||i.lineEnd()):r&&(i.lineStart(),i.point(n,t)));y=n;p=t;a=r}var c,l,v,ut,ft,et,y,p,a,w,ct=i,b=dl(),k={point:it,lineStart:st,lineEnd:ht,polygonStart:function(){i=b;c=[];l=[]},polygonEnd:function(){i=ct;(c=n.merge(c)).length?(i.polygonStart(),wl(c,s,ot,nt,i),i.polygonEnd()):d([t,r])&&(i.polygonStart(),i.lineStart(),nt(null,null,1,i),i.lineEnd(),i.polygonEnd());c=l=v=null}};return k}}function ru(n,t,r){if(Math.abs(t)<i)return 0>=n;var u=n/t;if(t>0){if(u>r[1])return!1;u>r[0]&&(r[0]=u)}else{if(u<r[0])return!1;u<r[1]&&(r[1]=u)}return!0}function na(n,t){function i(i,r){return i=n(i,r),t(i[0],i[1])}return n.invert&&t.invert&&(i.invert=function(i,r){return i=t.invert(i,r),i&&n.invert(i[0],i[1])}),i}function fo(n){var i=0,r=t/3,u=eo(n),f=u(i,r);return f.parallels=function(n){return arguments.length?u(i=n[0]*t/180,r=n[1]*t/180):[180*(i/t),180*(r/t)]},f}function ta(n,t){function f(n,t){var r=Math.sqrt(u-2*i*Math.sin(t))/i;return[r*Math.sin(n*=i),e-r*Math.cos(n)]}var r=Math.sin(n),i=(r+Math.sin(t))/2,u=1+r*(2*i-r),e=Math.sqrt(u)/i;return f.invert=function(n,t){var r=e-t;return[Math.atan2(n,r)/i,ri((u-(n*n+r*r)*i*i)/(2*i))]},f}function pb(){function i(i,r){hh+=t*i-n*r;n=i;t=r}var r,u,n,t;ni.point=function(f,e){ni.point=i;r=n=f;u=t=e};ni.lineEnd=function(){i(r,u)}}function wb(n,t){af>n&&(af=n);n>yf&&(yf=n);vf>t&&(vf=t);t>pf&&(pf=t)}function bb(){function i(n,i){t.push("M",n,",",i,u)}function f(i,r){t.push("M",i,",",r);n.point=e}function e(n,i){t.push("L",n,",",i)}function r(){n.point=i}function o(){t.push("Z")}var u=ia(4.5),t=[],n={point:i,lineStart:function(){n.point=f},lineEnd:r,polygonStart:function(){n.lineEnd=o},polygonEnd:function(){n.lineEnd=r;n.point=i},pointRadius:function(t){return u=ia(t),n},result:function(){if(t.length){var n=t.join("");return t=[],n}}};return n}function ia(n){return"m0,"+n+"a"+n+","+n+" 0 1,1 0,"+-2*n+"a"+n+","+n+" 0 1,1 0,"+2*n+"z"}function fi(n,t){ci+=n;li+=t;++ct}function ra(){function i(i,r){var f=i-n,e=r-t,u=Math.sqrt(f*f+e*e);kt+=u*(n+i)/2;dt+=u*(t+r)/2;rt+=u;fi(n=i,t=r)}var n,t;d.point=function(r,u){d.point=i;fi(n=r,t=u)}}function ua(){d.point=fi}function kb(){function i(i,r){var f=i-n,e=r-t,u=Math.sqrt(f*f+e*e);kt+=u*(n+i)/2;dt+=u*(t+r)/2;rt+=u;u=t*i-n*r;di+=u*(n+i);gi+=u*(t+r);gt+=3*u;fi(n=i,t=r)}var r,u,n,t;d.point=function(f,e){d.point=i;fi(r=n=f,u=t=e)};d.lineEnd=function(){i(r,u)}}function db(n){function r(i,r){n.moveTo(i,r);n.arc(i,r,f,0,2*t)}function e(t,r){n.moveTo(t,r);i.point=o}function o(t,i){n.lineTo(t,i)}function u(){i.point=r}function h(){n.closePath()}var f=4.5,i={point:r,lineStart:function(){i.point=e},lineEnd:u,polygonStart:function(){i.lineEnd=h},polygonEnd:function(){i.lineEnd=u;i.point=r},pointRadius:function(n){return f=n,i},result:s};return i}function fa(n){function f(i){function y(t,r){t=n(t,r);i.point(t[0],t[1])}function c(){u=NaN;r.point=l;i.lineStart()}function l(r,c){var l=ui([r,c]),a=n(r,c);t(u,f,v,o,s,h,u=a[0],f=a[1],v=r,o=l[0],s=l[1],h=l[2],e,i);i.point(u,f)}function a(){r.point=y;i.lineEnd()}function nt(){c();r.point=tt;r.lineEnd=it}function tt(n,t){l(p=n,rt=t);w=u;b=f;k=o;d=s;g=h;r.point=l}function it(){t(u,f,v,o,s,h,w,b,p,k,d,g,e,i);r.lineEnd=a;a()}var p,rt,w,b,k,d,g,v,u,f,o,s,h,r={point:y,lineStart:c,lineEnd:a,polygonStart:function(){i.polygonStart();r.lineStart=nt},polygonEnd:function(){i.polygonEnd();r.lineStart=c}};return r}function t(r,f,e,s,h,c,l,a,v,y,p,w,b,k){var tt=l-r,it=a-f,ft=tt*tt+it*it;if(ft>4*u&&b--){var g=s+y,nt=h+p,d=c+w,et=Math.sqrt(g*g+nt*nt+d*d),at=Math.asin(d/=et),ot=Math.abs(Math.abs(d)-1)<i?(e+v)/2:Math.atan2(nt,g),st=n(ot,at),rt=st[0],ut=st[1],ht=rt-r,ct=ut-f,lt=it*ht-tt*ct;(lt*lt/ft>u||Math.abs((tt*ht+it*ct)/ft-.5)>.3||o>s*y+h*p+c*w)&&(t(r,f,e,s,h,c,rt,ut,ot,g/=et,nt/=et,d,b,k),k.point(rt,ut),t(rt,ut,ot,g,nt,d,l,a,v,y,p,w,b,k))}}var u=.5,o=Math.cos(30*r),e=16;return f.precision=function(n){return arguments.length?(e=(u=n*n)>0&&16,f):Math.sqrt(u)},f}function gb(n){var t=fa(function(t,i){return n([t*e,i*e])});return function(n){return n=t(n),{point:function(t,i){n.point(t*r,i*r)},sphere:function(){n.sphere()},lineStart:function(){n.lineStart()},lineEnd:function(){n.lineEnd()},polygonStart:function(){n.polygonStart()},polygonEnd:function(){n.polygonEnd()}}}}function pt(n){return eo(function(){return n})()}function eo(t){function i(n){return n=v(n[0]*r,n[1]*r),[n[0]*u+h,c-n[1]*u]}function et(n){return n=v.invert((n[0]-h)/u,(c-n[1])/u),n&&[n[0]*e,n[1]*e]}function o(){v=na(tt=oo(k,d,g),s);var n=s(w,b);return h=y-n[0]*u,c=p+n[1]*u,l()}function l(){return f&&(f.valid=!1,f=null),i}var s,tt,v,h,c,f,it=fa(function(n,t){return n=s(n,t),[n[0]*u+h,c-n[1]*u]}),u=150,y=480,p=250,w=0,b=0,k=0,d=0,g=0,rt=hp,ut=a,nt=null,ft=null;return i.stream=function(n){return f&&(f.valid=!1),f=nk(tt,rt(it(ut(n)))),f.valid=!0,f},i.clipAngle=function(n){return arguments.length?(rt=null==n?(nt=n,hp):vb((nt=+n)*r),l()):nt},i.clipExtent=function(n){return arguments.length?(ft=n,ut=null==n?a:yb(n[0][0],n[0][1],n[1][0],n[1][1]),l()):ft},i.scale=function(n){return arguments.length?(u=+n,o()):u},i.translate=function(n){return arguments.length?(y=+n[0],p=+n[1],o()):[y,p]},i.center=function(n){return arguments.length?(w=n[0]%360*r,b=n[1]%360*r,o()):[w*e,b*e]},i.rotate=function(n){return arguments.length?(k=n[0]%360*r,d=n[1]%360*r,g=n.length>2?n[2]%360*r:0,o()):[k*e,d*e,g*e]},n.rebind(i,it,"precision"),function(){return s=t.apply(this,arguments),i.invert=s.invert&&et,o()}}function nk(n,i){return{point:function(u,f){f=n(u*r,f*r);u=f[0];i.point(u>t?u-2*t:-t>u?u+2*t:u,f[1])},sphere:function(){i.sphere()},lineStart:function(){i.lineStart()},lineEnd:function(){i.lineEnd()},polygonStart:function(){i.polygonStart()},polygonEnd:function(){i.polygonEnd()}}}function ir(n,t){return[n,t]}function oo(n,t,i){return n?t||i?na(oa(n),sa(t,i)):oa(n):t||i?sa(t,i):ir}function ea(n){return function(i,r){return i+=n,[i>t?i-2*t:-t>i?i+2*t:i,r]}}function oa(n){var t=ea(n);return t.invert=ea(-n),t}function sa(n,t){function e(n,t){var e=Math.cos(t),o=Math.cos(n)*e,s=Math.sin(n)*e,h=Math.sin(t),c=h*i+o*r;return[Math.atan2(s*u-c*f,o*i-h*r),ri(c*u+s*f)]}var i=Math.cos(n),r=Math.sin(n),u=Math.cos(t),f=Math.sin(t);return e.invert=function(n,t){var e=Math.cos(t),o=Math.cos(n)*e,s=Math.sin(n)*e,h=Math.sin(t),c=h*u-s*f;return[Math.atan2(s*u+h*f,o*i+c*r),ri(c*i-o*r)]},e}function so(n,i){var r=Math.cos(n),u=Math.sin(n);return function(f,e,o,s){null!=f?(f=ha(r,f),e=ha(r,e),(o>0?e>f:f>e)&&(f+=2*o*t)):(f=n+2*o*t,e=n);for(var c,l=o*i,h=f;o>0?h>e:e>h;h-=l)s.point((c=tu([r,-u*Math.cos(h),-u*Math.sin(h)]))[0],c[1])}}function ha(n,t){var r=ui(t),u;return r[0]-=n,nu(r),u=tl(-r[1]),((-r[2]<0?-u:u)+2*Math.PI-i)%(2*Math.PI)}function ca(t,r,u){var f=n.range(t,r-i,u).concat(r);return function(n){return f.map(function(t){return[n,t]})}}function la(t,r,u){var f=n.range(t,r-i,u).concat(r);return function(n){return f.map(function(t){return[t,n]})}}function ho(n){return n.source}function co(n){return n.target}function tk(n,t,i,r){var f=Math.cos(t),c=Math.sin(t),o=Math.cos(r),l=Math.sin(r),a=f*Math.cos(n),v=f*Math.sin(n),y=o*Math.cos(i),p=o*Math.sin(i),u=2*Math.asin(Math.sqrt(il(r-t)+f*o*il(i-n))),s=1/Math.sin(u),h=u?function(n){var t=Math.sin(n*=u)*s,i=Math.sin(u-n)*s,r=i*a+t*y,f=i*v+t*p,o=i*c+t*l;return[Math.atan2(f,r)*e,Math.atan2(o,Math.sqrt(r*r+f*f))*e]}:function(){return[n*e,t*e]};return h.distance=u,h}function ik(){function u(u,f){var s=Math.sin(f*=r),o=Math.cos(f),e=Math.abs((u*=r)-i),h=Math.cos(e);ch+=Math.atan2(Math.sqrt((e=o*Math.sin(e))*e+(e=t*s-n*o*h)*e),n*s+t*o*h);i=u;n=s;t=o}var i,n,t;ai.point=function(f,e){i=f*r;n=Math.sin(e*=r);t=Math.cos(e);ai.point=u};ai.lineEnd=function(){ai.point=ai.lineEnd=s}}function rr(n,t){function i(t,i){var f=Math.cos(t),r=Math.cos(i),u=n(f*r);return[u*r*Math.sin(t),u*Math.sin(i)]}return i.invert=function(n,i){var r=Math.sqrt(n*n+i*i),u=t(r),f=Math.sin(u),e=Math.cos(u);return[Math.atan2(n*f,r*e),Math.asin(r&&i*f/r)]},i}function aa(n,r){function o(n,r){var o=Math.abs(Math.abs(r)-t/2)<i?0:e/Math.pow(f(r),u);return[o*Math.sin(u*n),e-o*Math.cos(u*n)]}var s=Math.cos(n),f=function(n){return Math.tan(t/4+n/2)},u=n===r?Math.sin(n):Math.log(s/Math.cos(r))/Math.log(f(r)/f(n)),e=s*Math.pow(f(n),u)/u;return u?(o.invert=function(n,i){var r=e-i,f=nl(u)*Math.sqrt(n*n+r*r);return[Math.atan2(n,r)/u,2*Math.atan(Math.pow(e/f,1/u))-t/2]},o):uu}function va(n,t){function f(n,t){var i=u-t;return[i*Math.sin(r*n),u-i*Math.cos(r*n)]}var e=Math.cos(n),r=n===t?Math.sin(n):(e-Math.cos(t))/(t-n),u=e/r+n;return Math.abs(r)<i?ir:(f.invert=function(n,t){var i=u-t;return[Math.atan2(n,i)/r,u-nl(r)*Math.sqrt(n*n+i*i)]},f)}function uu(n,i){return[n,Math.log(Math.tan(t/4+i/2))]}function ya(n){var r,i=pt(n),u=i.scale,f=i.translate,e=i.clipExtent;return i.scale=function(){var n=u.apply(i,arguments);return n===i?r?i.clipExtent(null):i:n},i.translate=function(){var n=f.apply(i,arguments);return n===i?r?i.clipExtent(null):i:n},i.clipExtent=function(n){var h=e.apply(i,arguments),o,s;return h===i?(r=null==n)&&(o=t*u(),s=f(),e([[s[0]-o,s[1]-o],[s[0]+o,s[1]+o]])):r&&(h=null),h},i.clipExtent(null)}function lo(n,t){var i=Math.cos(t)*Math.sin(n);return[Math.log((1+i)/(1-i))/2,Math.atan2(Math.tan(t),Math.cos(n))]}function pa(n){function t(t){function a(){l.push("M",i(n(s),o))}for(var c,l=[],s=[],h=-1,v=t.length,y=f(r),p=f(u);++h<v;)e.call(this,c=t[h],h)?s.push([+y.call(this,c,h),+p.call(this,c,h)]):s.length&&(a(),s=[]);return s.length&&a(),l.length?l.join(""):null}var r=nt,u=ft,e=tr,i=p,s=i.key,o=.7;return t.x=function(n){return arguments.length?(r=n,t):r},t.y=function(n){return arguments.length?(u=n,t):u},t.defined=function(n){return arguments.length?(e=n,t):e},t.interpolate=function(n){return arguments.length?(s="function"==typeof n?i=n:(i=wf.get(n)||p).key,t):s},t.tension=function(n){return arguments.length?(o=n,t):o},t}function nt(n){return n[0]}function ft(n){return n[1]}function p(n){return n.join("L")}function rk(n){return p(n)+"Z"}function uk(n){for(var r=0,u=n.length,t=n[0],i=[t[0],",",t[1]];++r<u;)i.push("H",(t[0]+(t=n[r])[0])/2,"V",t[1]);return u>1&&i.push("H",t[0]),i.join("")}function ao(n){for(var i=0,u=n.length,t=n[0],r=[t[0],",",t[1]];++i<u;)r.push("V",(t=n[i])[1],"H",t[0]);return r.join("")}function vo(n){for(var i=0,u=n.length,t=n[0],r=[t[0],",",t[1]];++i<u;)r.push("H",(t=n[i])[0],"V",t[1]);return r.join("")}function fk(n,t){return n.length<4?p(n):n[1]+fu(n.slice(1,n.length-1),yo(n,t))}function ek(n,t){return n.length<3?p(n):n[0]+fu((n.push(n[0]),n),yo([n[n.length-2]].concat(n,[n[1]]),t))}function ok(n,t){return n.length<3?p(n):n[0]+fu(n,yo(n,t))}function fu(n,t){var o,h;if(t.length<1||n.length!=t.length&&n.length!=t.length+2)return p(n);var c=n.length!=t.length,f="",s=n[0],i=n[1],e=t[0],r=e,u=1;if(c&&(f+="Q"+(i[0]-2*e[0]/3)+","+(i[1]-2*e[1]/3)+","+i[0]+","+i[1],s=n[1],u=2),t.length>1)for(r=t[1],i=n[u],u++,f+="C"+(s[0]+e[0])+","+(s[1]+e[1])+","+(i[0]-r[0])+","+(i[1]-r[1])+","+i[0]+","+i[1],o=2;o<t.length;o++,u++)i=n[u],r=t[o],f+="S"+(i[0]-r[0])+","+(i[1]-r[1])+","+i[0]+","+i[1];return c&&(h=n[u],f+="Q"+(i[0]+2*r[0]/3)+","+(i[1]+2*r[1]/3)+","+h[0]+","+h[1]),f}function yo(n,t){for(var r,u=[],f=(1-t)/2,e=n[0],i=n[1],o=1,s=n.length;++o<s;)r=e,e=i,i=n[o],u.push([f*(i[0]-r[0]),f*(i[1]-r[1])]);return u}function wa(n){if(n.length<3)return p(n);var o=1,s=n.length,t=n[0],i=t[0],r=t[1],u=[i,i,i,(t=n[1])[0]],f=[r,r,r,t[1]],e=[i,",",r,"L",w(ti,u),",",w(ti,f)];for(n.push(n[s-1]);++o<=s;)t=n[o],u.shift(),u.push(t[0]),f.shift(),f.push(t[1]),po(e,u,f);return n.pop(),e.push("L",t),e.join("")}function sk(n){if(n.length<4)return p(n);for(var t,f=[],i=-1,e=n.length,r=[0],u=[0];++i<3;)t=n[i],r.push(t[0]),u.push(t[1]);for(f.push(w(ti,r)+","+w(ti,u)),--i;++i<e;)t=n[i],r.shift(),r.push(t[0]),u.shift(),u.push(t[1]),po(f,r,u);return f.join("")}function hk(n){for(var f,t,i=-1,e=n.length,o=e+4,r=[],u=[];++i<4;)t=n[i%e],r.push(t[0]),u.push(t[1]);for(f=[w(ti,r),",",w(ti,u)],--i;++i<o;)t=n[i%e],r.shift(),r.push(t[0]),u.shift(),u.push(t[1]),po(f,r,u);return f.join("")}function ck(n,t){var i=n.length-1;if(i)for(var r,u,e=n[0][0],o=n[0][1],s=n[i][0]-e,h=n[i][1]-o,f=-1;++f<=i;)r=n[f],u=f/i,r[0]=t*r[0]+(1-t)*(e+u*s),r[1]=t*r[1]+(1-t)*(o+u*h);return wa(n)}function w(n,t){return n[0]*t[0]+n[1]*t[1]+n[2]*t[2]+n[3]*t[3]}function po(n,t,i){n.push("C",w(cp,t),",",w(cp,i),",",w(lp,t),",",w(lp,i),",",w(ti,t),",",w(ti,i))}function wo(n,t){return(t[1]-n[1])/(t[0]-n[0])}function lk(n){for(var t=0,e=n.length-1,i=[],f=n[0],r=n[1],u=i[0]=wo(f,r);++t<e;)i[t]=(u+(u=wo(f=r,r=n[t+1])))/2;return i[t]=u,i}function ak(n){for(var u,f,e,i,s=[],r=lk(n),t=-1,o=n.length-1;++t<o;)u=wo(n[t],n[t+1]),Math.abs(u)<1e-6?r[t]=r[t+1]=0:(f=r[t]/u,e=r[t+1]/u,i=f*f+e*e,i>9&&(i=3*u/Math.sqrt(i),r[t]=i*f,r[t+1]=i*e));for(t=-1;++t<=o;)i=(n[Math.min(o,t+1)][0]-n[Math.max(0,t-1)][0])/(6*(1+r[t]*r[t])),s.push([i||0,r[t]*i||0]);return s}function vk(n){return n.length<3?p(n):n[0]+fu(n,ak(n))}function yk(n,t,i,r){var u,f,e,o,s,h,c;return u=r[n],f=u[0],e=u[1],u=r[t],o=u[0],s=u[1],u=r[i],h=u[0],c=u[1],(c-e)*(o-f)-(s-e)*(h-f)>0}function bo(n,t,i){return(i[0]-t[0])*(n[1]-t[1])<(i[1]-t[1])*(n[0]-t[0])}function ba(n,t,i,r){var u=n[0],e=i[0],o=t[0]-u,s=r[0]-e,f=n[1],h=i[1],c=t[1]-f,l=r[1]-h,a=(s*(f-h)-l*(u-e))/(l*o-s*c);return[u+a*o,f+a*c]}function ka(n){var t=n[0],i=n[n.length-1];return!(t[0]-i[0]||t[1]-i[1])}function ko(n,t){var l={list:n.map(function(n,t){return{index:t,x:n[0],y:n[1]}}).sort(function(n,t){return n.y<t.y?-1:n.y>t.y?1:n.x<t.x?-1:n.x>t.x?1:0}),bottomSite:null},i={list:[],leftEnd:null,rightEnd:null,init:function(){i.leftEnd=i.createHalfEdge(null,"l");i.rightEnd=i.createHalfEdge(null,"l");i.leftEnd.r=i.rightEnd;i.rightEnd.l=i.leftEnd;i.list.unshift(i.leftEnd,i.rightEnd)},createHalfEdge:function(n,t){return{edge:n,side:t,vertex:null,l:null,r:null}},insert:function(n,t){t.l=n;t.r=n.r;n.r.l=t;n.r=t},leftBound:function(n){var t=i.leftEnd;do t=t.r;while(t!=i.rightEnd&&e.rightOf(t,n));return t.l},del:function(n){n.l.r=n.r;n.r.l=n.l;n.edge=null},right:function(n){return n.r},left:function(n){return n.l},leftRegion:function(n){return null==n.edge?l.bottomSite:n.edge.region[n.side]},rightRegion:function(n){return null==n.edge?l.bottomSite:n.edge.region[bf[n.side]]}},e={bisect:function(n,t){var u={region:{l:n,r:t},ep:{l:null,r:null}},i=t.x-n.x,r=t.y-n.y,f=i>0?i:-i,e=r>0?r:-r;return u.c=n.x*i+n.y*r+.5*(i*i+r*r),f>e?(u.a=1,u.b=r/i,u.c/=i):(u.b=1,u.a=i/r,u.c/=r),u},intersect:function(n,t){var i=n.edge,r=t.edge,u,h;if(!i||!r||i.region.r==r.region.r||(u=i.a*r.b-i.b*r.a,Math.abs(u)<1e-10))return null;var f,e,c=(i.c*r.b-r.c*i.b)/u,l=(r.c*i.a-i.c*r.a)/u,o=i.region.r,s=r.region.r;return o.y<s.y||o.y==s.y&&o.x<s.x?(f=n,e=i):(f=t,e=r),h=c>=e.region.r.x,h&&"l"===f.side||!h&&"r"===f.side?null:{x:c,y:l}},rightOf:function(n,t){var i=n.edge,u=i.region.r,f=t.x>u.x,h;if(f&&"l"===n.side)return 1;if(!f&&"r"===n.side)return 0;if(1===i.a){var e=t.y-u.y,o=t.x-u.x,s=0,r=0;(!f&&i.b<0||f&&i.b>=0?r=s=e>=i.b*o:(r=t.x+t.y*i.b>i.c,i.b<0&&(r=!r),r||(s=1)),s)||(h=u.x-i.region.l.x,r=i.b*(o*o-e*e)<h*e*(1+2*o/h+i.b*i.b),i.b<0&&(r=!r))}else{var c=i.c-i.a*t.x,l=t.y-c,a=t.x-u.x,v=c-u.y;r=l*l>a*a+v*v}return"l"===n.side?r:!r},endPoint:function(n,i,r){n.ep[i]=r;n.ep[bf[i]]&&t(n)},distance:function(n,t){var i=n.x-t.x,r=n.y-t.y;return Math.sqrt(i*i+r*r)}},u={list:[],insert:function(n,t,i){var f;n.vertex=t;n.ystar=t.y+i;for(var r=0,e=u.list,o=e.length;o>r;r++)if(f=e[r],!(n.ystar>f.ystar||n.ystar==f.ystar&&t.x>f.vertex.x))break;e.splice(r,0,n)},del:function(n){for(var t=0,i=u.list,r=i.length;r>t&&i[t]!=n;++t);i.splice(t,1)},empty:function(){return 0===u.list.length},nextEvent:function(n){for(var t=0,i=u.list,r=i.length;r>t;++t)if(i[t]==n)return i[t+1];return null},min:function(){var n=u.list[0];return{x:n.vertex.x,y:n.ystar}},extractMin:function(){return u.list.shift()}},p,r,h,v,k,o,c,y,d,f,w,a,b,s;for(i.init(),l.bottomSite=l.list.shift(),s=l.list.shift();;)if(u.empty()||(p=u.min()),s&&(u.empty()||s.y<p.y||s.y==p.y&&s.x<p.x))r=i.leftBound(s),h=i.right(r),c=i.rightRegion(r),a=e.bisect(c,s),o=i.createHalfEdge(a,"l"),i.insert(r,o),f=e.intersect(r,o),f&&(u.del(r),u.insert(r,f,e.distance(f,s))),r=o,o=i.createHalfEdge(a,"r"),i.insert(r,o),f=e.intersect(o,h),f&&u.insert(o,f,e.distance(f,s)),s=l.list.shift();else{if(u.empty())break;r=u.extractMin();v=i.left(r);h=i.right(r);k=i.right(h);c=i.leftRegion(r);y=i.rightRegion(h);w=r.vertex;e.endPoint(r.edge,r.side,w);e.endPoint(h.edge,h.side,w);i.del(r);u.del(h);i.del(h);b="l";c.y>y.y&&(d=c,c=y,y=d,b="r");a=e.bisect(c,y);o=i.createHalfEdge(a,b);i.insert(v,o);e.endPoint(a,bf[b],w);f=e.intersect(v,o);f&&(u.del(v),u.insert(v,f,e.distance(f,c)));f=e.intersect(o,k);f&&u.insert(o,f,e.distance(f,c))}for(r=i.right(i.leftEnd);r!=i.rightEnd;r=i.right(r))t(r.edge)}function pk(n){return n.x}function wk(n){return n.y}function da(){return{leaf:!0,nodes:[],point:null,x:null,y:null}}function ur(n,t,i,r,u,f){if(!n(t,i,r,u,f)){var o=.5*(i+u),s=.5*(r+f),e=t.nodes;e[0]&&ur(n,e[0],i,r,o,s);e[1]&&ur(n,e[1],o,r,u,s);e[2]&&ur(n,e[2],i,s,o,f);e[3]&&ur(n,e[3],o,s,u,f)}}function go(t,i){t=n.rgb(t);i=n.rgb(i);var r=t.r,u=t.g,f=t.b,e=i.r-r,o=i.g-u,s=i.b-f;return function(n){return"#"+bi(Math.round(r+e*n))+bi(Math.round(u+o*n))+bi(Math.round(f+s*n))}}function ga(n,t){var i,u={},r={};for(i in n)i in t?u[i]=ei(n[i],t[i]):r[i]=n[i];for(i in t)i in n||(r[i]=t[i]);return function(n){for(i in u)r[i]=u[i](n);return r}}function et(n,t){return t-=n=+n,function(i){return n+t*i}}function nv(n,t){var s,u,f,o,i,h=0,c=0,r=[],e=[];for(n+="",t+="",ar.lastIndex=0,u=0;s=ar.exec(t);++u)s.index&&r.push(t.substring(h,c=s.index)),e.push({i:r.length,x:s[0]}),r.push(null),h=ar.lastIndex;for(h<t.length&&r.push(t.substring(h)),u=0,o=e.length;(s=ar.exec(n))&&o>u;++u)if(i=e[u],i.x==s[0]){if(i.i)if(null==r[i.i+1])for(r[i.i-1]+=i.x,r.splice(i.i,1),f=u+1;o>f;++f)e[f].i--;else for(r[i.i-1]+=i.x+r[i.i+1],r.splice(i.i,2),f=u+1;o>f;++f)e[f].i-=2;else if(null==r[i.i+1])r[i.i]=i.x;else for(r[i.i]=i.x+r[i.i+1],r.splice(i.i+1,1),f=u+1;o>f;++f)e[f].i--;e.splice(u,1);o--;u--}else i.x=et(parseFloat(s[0]),parseFloat(i.x));for(;o>u;)i=e.pop(),null==r[i.i+1]?r[i.i]=i.x:(r[i.i]=i.x+r[i.i+1],r.splice(i.i+1,1)),o--;return 1===r.length?null==r[0]?(i=e[0].x,function(n){return i(n)+""}):function(){return t}:function(n){for(u=0;o>u;++u)r[(i=e[u]).i]=i.x(n);return r.join("")}}function ei(t,i){for(var r,u=n.interpolators.length;--u>=0&&!(r=n.interpolators[u](t,i)););return r}function tv(n,t){for(var u=[],r=[],e=n.length,o=t.length,f=Math.min(n.length,t.length),i=0;f>i;++i)u.push(ei(n[i],t[i]));for(;e>i;++i)r[i]=n[i];for(;o>i;++i)r[i]=t[i];return function(n){for(i=0;f>i;++i)r[i]=u[i](n);return r}}function bk(n){return function(t){return 0>=t?0:t>=1?1:n(t)}}function iv(n){return function(t){return 1-n(1-t)}}function rv(n){return function(t){return.5*(.5>t?n(2*t):2-n(2-2*t))}}function kk(n){return n*n}function dk(n){return n*n*n}function gk(n){if(0>=n)return 0;if(n>=1)return 1;var t=n*n,i=t*n;return 4*(.5>n?i:3*(n-t)+i-.75)}function nd(n){return function(t){return Math.pow(t,n)}}function td(n){return 1-Math.cos(n*t/2)}function id(n){return Math.pow(2,10*(n-1))}function rd(n){return 1-Math.sqrt(1-n*n)}function ud(n,i){var r;return arguments.length<2&&(i=.45),arguments.length?r=i/(2*t)*Math.asin(1/n):(n=1,r=i/4),function(u){return 1+n*Math.pow(2,10*-u)*Math.sin(2*(u-r)*t/i)}}function fd(n){return n||(n=1.70158),function(t){return t*t*((n+1)*t-n)}}function ed(n){return 1/2.75>n?7.5625*n*n:2/2.75>n?7.5625*(n-=1.5/2.75)*n+.75:2.5/2.75>n?7.5625*(n-=2.25/2.75)*n+.9375:7.5625*(n-=2.625/2.75)*n+.984375}function od(t,i){t=n.hcl(t);i=n.hcl(i);var u=t.h,f=t.c,o=t.l,r=i.h-u,e=i.c-f,s=i.l-o;return isNaN(e)&&(e=0,f=isNaN(f)?i.c:f),isNaN(r)?(r=0,u=isNaN(u)?i.h:u):r>180?r-=360:-180>r&&(r+=360),function(n){return le(u+r*n,f+e*n,o+s*n)+""}}function sd(t,i){t=n.hsl(t);i=n.hsl(i);var u=t.h,f=t.s,o=t.l,r=i.h-u,e=i.s-f,s=i.l-o;return isNaN(e)&&(e=0,f=isNaN(f)?i.s:f),isNaN(r)?(r=0,u=isNaN(u)?i.h:u):r>180?r-=360:-180>r&&(r+=360),function(n){return ce(u+r*n,f+e*n,o+s*n)+""}}function hd(t,i){t=n.lab(t);i=n.lab(i);var r=t.l,u=t.a,f=t.b,e=i.l-r,o=i.a-u,s=i.b-f;return function(n){return rl(r+e*n,u+o*n,f+s*n)+""}}function uv(n,t){return t-=n,function(i){return Math.round(n+t*i)}}function fv(n){var t=[n.a,n.b],i=[n.c,n.d],r=ov(t),u=ev(t,i),f=ov(cd(i,t,-u))||0;t[0]*i[1]<i[0]*t[1]&&(t[0]*=-1,t[1]*=-1,r*=-1,u*=-1);this.rotate=(r?Math.atan2(t[1],t[0]):Math.atan2(-i[0],i[1]))*e;this.translate=[n.e,n.f];this.scale=[r,f];this.skew=f?Math.atan2(u,f)*e:0}function ev(n,t){return n[0]*t[0]+n[1]*t[1]}function ov(n){var t=Math.sqrt(ev(n,n));return t&&(n[0]/=t,n[1]/=t),t}function cd(n,t,i){return n[0]+=i*t[0],n[1]+=i*t[1],n}function sv(t,i){var s,r=[],o=[],c=n.transform(t),l=n.transform(i),a=c.translate,u=l.translate,h=c.rotate,f=l.rotate,p=c.skew,v=l.skew,y=c.scale,e=l.scale;return a[0]!=u[0]||a[1]!=u[1]?(r.push("translate(",null,",",null,")"),o.push({i:1,x:et(a[0],u[0])},{i:3,x:et(a[1],u[1])})):u[0]||u[1]?r.push("translate("+u+")"):r.push(""),h!=f?(h-f>180?f+=360:f-h>180&&(h+=360),o.push({i:r.push(r.pop()+"rotate(",null,")")-2,x:et(h,f)})):f&&r.push(r.pop()+"rotate("+f+")"),p!=v?o.push({i:r.push(r.pop()+"skewX(",null,")")-2,x:et(p,v)}):v&&r.push(r.pop()+"skewX("+v+")"),y[0]!=e[0]||y[1]!=e[1]?(s=r.push(r.pop()+"scale(",null,",",null,")"),o.push({i:s-4,x:et(y[0],e[0])},{i:s-2,x:et(y[1],e[1])})):(1!=e[0]||1!=e[1])&&r.push(r.pop()+"scale("+e+")"),s=o.length,function(n){for(var t,i=-1;++i<s;)r[(t=o[i]).i]=t.x(n);return r.join("")}}function ld(n,t){return t=t-(n=+n)?1/(t-n):0,function(i){return(i-n)*t}}function ad(n,t){return t=t-(n=+n)?1/(t-n):0,function(i){return Math.max(0,Math.min(1,(i-n)*t))}}function vd(n){for(var f,t=n.source,i=n.target,u=yd(t,i),r=[t];t!==u;)t=t.parent,r.push(t);for(f=r.length;i!==u;)r.splice(f,0,i),i=i.parent;return r}function hv(n){for(var i=[],t=n.parent;null!=t;)i.push(n),n=t,t=t.parent;return i.push(n),i}function yd(n,t){if(n===t)return n;for(var r=hv(n),u=hv(t),i=r.pop(),f=u.pop(),e=null;i===f;)e=i,i=r.pop(),f=u.pop();return e}function pd(n){n.fixed|=2}function wd(n){n.fixed&=-7}function bd(n){n.fixed|=4;n.px=n.x;n.py=n.y}function kd(n){n.fixed&=-5}function cv(n,t,i){var f=0,e=0,u;if(n.charge=0,!n.leaf)for(var r,o=n.nodes,h=o.length,s=-1;++s<h;)r=o[s],null!=r&&(cv(r,t,i),n.charge+=r.charge,f+=r.charge*r.cx,e+=r.charge*r.cy);n.point&&(n.leaf||(n.point.x+=Math.random()-.5,n.point.y+=Math.random()-.5),u=t*i[n.point.index],n.charge+=n.pointCharge=u,f+=u*n.point.x,e+=u*n.point.y);n.cx=f/n.charge;n.cy=e/n.charge}function fr(t,i){return n.rebind(t,i,"sort","children","value"),t.nodes=t,t.links=tg,t}function dd(n){return n.children}function gd(n){return n.value}function ng(n,t){return t.value-n.value}function tg(t){return n.merge(t.map(function(n){return(n.children||[]).map(function(t){return{source:n,target:t}})}))}function ig(n){return n.x}function rg(n){return n.y}function ug(n,t,i){n.y0=t;n.y=i}function ns(t){return n.range(t.length)}function ts(n){for(var t=-1,r=n[0].length,i=[];++t<r;)i[t]=0;return i}function fg(n){for(var i,t=1,r=0,u=n[0][1],f=n.length;f>t;++t)(i=n[t][1])>u&&(r=t,u=i);return r}function eg(n){return n.reduce(og,0)}function og(n,t){return n+t[1]}function sg(n,t){return lv(n,Math.ceil(Math.log(t.length)/Math.LN2+1))}function lv(n,t){for(var i=-1,r=+n[0],f=(n[1]-r)/t,u=[];++i<=t;)u[i]=f*i+r;return u}function hg(t){return[n.min(t),n.max(t)]}function av(n,t){return n.parent==t.parent?1:2}function is(n){var t=n.children;return t&&t.length?t[0]:n._tree.thread}function rs(n){var i,t=n.children;return t&&(i=t.length)?t[i-1]:n._tree.thread}function eu(n,t){var i=n.children,u,f,r;if(i&&(f=i.length))for(r=-1;++r<f;)t(u=eu(i[r],t),n)>0&&(n=u);return n}function cg(n,t){return n.x-t.x}function lg(n,t){return t.x-n.x}function ag(n,t){return n.depth-t.depth}function ot(n,t){function i(n,r){var u=n.children,f,s,e,o;if(u&&(s=u.length))for(e=null,o=-1;++o<s;)f=u[o],i(f,e),e=f;t(n,r)}i(n,null)}function vg(n){for(var t,i=0,f=0,r=n.children,u=r.length;--u>=0;)t=r[u]._tree,t.prelim+=i,t.mod+=i,i+=t.shift+(f+=t.change)}function yg(n,t,i){n=n._tree;t=t._tree;var r=i/(t.number-n.number);n.change+=r;t.change-=r;t.shift+=i;t.prelim+=i;t.mod+=i}function pg(n,t,i){return n._tree.ancestor.parent==t.parent?n._tree.ancestor:i}function wg(n,t){return n.value-t.value}function us(n,t){var i=n._pack_next;n._pack_next=t;t._pack_prev=n;t._pack_next=i;i._pack_prev=t}function vv(n,t){n._pack_next=t;t._pack_prev=n}function yv(n,t){var i=t.x-n.x,r=t.y-n.y,u=n.r+t.r;return.999*u*u>i*i+r*r}function pv(n){function h(n){c=Math.min(n.x-n.r,c);l=Math.max(n.x+n.r,l);a=Math.min(n.y-n.r,a);v=Math.max(n.y+n.r,v)}if((u=n.children)&&(s=u.length)){var u,i,r,t,f,e,o,s,c=1/0,l=-1/0,a=1/0,v=-1/0;if(u.forEach(bg),i=u[0],i.x=-i.r,i.y=0,h(i),s>1&&(r=u[1],r.x=r.r,r.y=0,h(r),s>2))for(t=u[2],bv(i,r,t),h(t),us(i,t),i._pack_prev=t,us(t,r),r=i._pack_next,f=3;s>f;f++){bv(i,r,t=u[f]);var y=0,p=1,w=1;for(e=r._pack_next;e!==r;e=e._pack_next,p++)if(yv(e,t)){y=1;break}if(1==y)for(o=i._pack_prev;o!==e._pack_prev&&!yv(o,t);o=o._pack_prev,w++);y?(w>p||p==w&&r.r<i.r?vv(i,r=e):vv(i=o,r),f--):(us(i,t),r=t,h(t))}var k=(c+l)/2,d=(a+v)/2,b=0;for(f=0;s>f;f++)t=u[f],t.x-=k,t.y-=d,b=Math.max(b,t.r+Math.sqrt(t.x*t.x+t.y*t.y));n.r=b;u.forEach(kg)}}function bg(n){n._pack_next=n._pack_prev=n}function kg(n){delete n._pack_next;delete n._pack_prev}function wv(n,t,i,r){var u=n.children,f,e;if(n.x=t+=r*n.x,n.y=i+=r*n.y,n.r*=r,u)for(f=-1,e=u.length;++f<e;)wv(u[f],t,i,r)}function bv(n,t,i){var r=n.r+i.r,f=t.x-n.x,e=t.y-n.y,u,o,s,h;r&&(f||e)?(u=t.r+i.r,o=f*f+e*e,u*=u,r*=r,s=.5+(r-u)/(2*o),h=Math.sqrt(Math.max(0,2*u*(r+o)-(r-=o)*r-u*u))/(2*o),i.x=n.x+s*f+h*e,i.y=n.y+s*e-h*f):(i.x=n.x+r,i.y=n.y)}function dg(t){return 1+n.max(t,function(n){return n.y})}function gg(n){return n.reduce(function(n,t){return n+t.x},0)/n.length}function kv(n){var t=n.children;return t&&t.length?kv(t[0]):n}function dv(n){var i,t=n.children;return t&&(i=t.length)?dv(t[i-1]):n}function fs(n){return{x:n.x,y:n.y,dx:n.dx,dy:n.dy}}function gv(n,t){var u=n.x+t[3],f=n.y+t[0],i=n.dx-t[1]-t[3],r=n.dy-t[0]-t[2];return 0>i&&(u+=i/2,i=0),0>r&&(f+=r/2,r=0),{x:u,y:f,dx:i,dy:r}}function oi(n){var t=n[0],i=n[n.length-1];return i>t?[t,i]:[i,t]}function ou(n){return n.rangeExtent?n.rangeExtent():oi(n.range())}function nn(n,t,i,r){var u=i(n[0],n[1]),f=r(t[0],t[1]);return function(n){return f(u(n))}}function es(n,t){var i,r=0,u=n.length-1,f=n[r],e=n[u];return f>e&&(i=r,r=u,u=i,i=f,f=e,e=i),n[r]=t.floor(f),n[u]=t.ceil(e),n}function tn(n){return n?{floor:function(t){return Math.floor(t/n)*n},ceil:function(t){return Math.ceil(t/n)*n}}:kp}function rn(t,i,r,u){var o=[],s=[],f=0,e=Math.min(t.length,i.length)-1;for(t[e]<t[0]&&(t=t.slice().reverse(),i=i.slice().reverse());++f<=e;)o.push(r(t[f-1],t[f])),s.push(u(i[f-1],i[f]));return function(i){var r=n.bisect(t,i,1,e)-1;return s[r](o[r](i))}}function ny(n,t,i,r){function f(){var f=Math.min(n.length,t.length)>2?rn:nn,s=r?ad:ld;return e=f(n,t,s,i),o=f(t,n,s,ei),u}function u(n){return e(n)}var e,o;return u.invert=function(n){return o(n)},u.domain=function(t){return arguments.length?(n=t.map(Number),f()):n},u.range=function(n){return arguments.length?(t=n,f()):t},u.rangeRound=function(n){return u.range(n).interpolate(uv)},u.clamp=function(n){return arguments.length?(r=n,f()):r},u.interpolate=function(n){return arguments.length?(i=n,f()):i},u.ticks=function(t){return hs(n,t)},u.tickFormat=function(t,i){return cs(n,t,i)},u.nice=function(t){return ty(n,t),f()},u.copy=function(){return ny(n,t,i,r)},f()}function os(t,i){return n.rebind(t,i,"range","rangeRound","interpolate","clamp")}function ty(n,t){return es(n,tn(t?ss(n,t)[2]:un(n)))}function un(n){var t=oi(n),i=t[1]-t[0];return Math.pow(10,Math.round(Math.log(i)/Math.LN10)-1)}function ss(n,t){var r=oi(n),f=r[1]-r[0],i=Math.pow(10,Math.floor(Math.log(f/t)/Math.LN10)),u=t/f*i;return.15>=u?i*=10:.35>=u?i*=5:.75>=u&&(i*=2),r[0]=Math.ceil(r[0]/i)*i,r[1]=Math.floor(r[1]/i)*i+.5*i,r[2]=i,r}function hs(t,i){return n.range.apply(n,ss(t,i))}function cs(t,i,r){var u=-Math.floor(Math.log(ss(t,i)[2])/Math.LN10+.01);return n.format(r?r.replace(op,function(n,t,i,r,f,e,o,s,h,c){return[t,i,r,f,e,o,s,h||"."+(u-2*("%"===c)),c].join("")}):",."+u+"f")}function iy(t,i,r,u){function e(n){return(r?Math.log(0>n?0:n):-Math.log(n>0?0:-n))/Math.log(i)}function o(n){return r?Math.pow(i,n):-Math.pow(i,-n)}function f(n){return t(e(n))}return f.invert=function(n){return o(t.invert(n))},f.domain=function(n){return arguments.length?(r=n[0]>=0,t.domain((u=n.map(Number)).map(e)),f):u},f.base=function(n){return arguments.length?(i=+n,t.domain(u.map(e)),f):i},f.nice=function(){var n=es(u.map(e),r?Math:dp);return t.domain(n),u=n.map(o),f},f.ticks=function(){var h=oi(u),t=[],c=h[0],l=h[1],n=Math.floor(e(c)),s=Math.ceil(e(l)),a=i%1?2:i,f;if(isFinite(s-n)){if(r){for(;s>n;n++)for(f=1;a>f;f++)t.push(o(n)*f);t.push(o(n))}else for(t.push(o(n));n++<s;)for(f=a-1;f>0;f--)t.push(o(n)*f);for(n=0;t[n]<c;n++);for(s=t.length;t[s-1]>l;s--);t=t.slice(n,s)}return t},f.tickFormat=function(t,i){if(!arguments.length)return bh;arguments.length<2?i=bh:"function"!=typeof i&&(i=n.format(i));var u,s=Math.max(.1,t/f.ticks().length),h=r?(u=1e-12,Math.ceil):(u=-1e-12,Math.floor);return function(n){return n/o(h(e(n)+u))<=s?i(n):""}},f.copy=function(){return iy(t.copy(),i,r,u)},os(f,t)}function ry(n,t,i){function r(t){return n(u(t))}var u=su(t),f=su(1/t);return r.invert=function(t){return f(n.invert(t))},r.domain=function(t){return arguments.length?(n.domain((i=t.map(Number)).map(u)),r):i},r.ticks=function(n){return hs(i,n)},r.tickFormat=function(n,t){return cs(i,n,t)},r.nice=function(n){return r.domain(ty(i,n))},r.exponent=function(e){return arguments.length?(u=su(t=e),f=su(1/t),n.domain(i.map(u)),r):t},r.copy=function(){return ry(n.copy(),t,i)},os(r,n)}function su(n){return function(t){return 0>t?-Math.pow(-t,n):Math.pow(t,n)}}function uy(t,i){function r(n){return u[((f.get(n)||f.set(n,t.push(n)))-1)%u.length]}function o(i,r){return n.range(t.length).map(function(n){return i+r*n})}var f,u,e;return r.domain=function(n){if(!arguments.length)return t;t=[];f=new g;for(var u,e=-1,o=n.length;++e<o;)f.has(u=n[e])||f.set(u,t.push(u));return r[i.t].apply(r,i.a)},r.range=function(n){return arguments.length?(u=n,e=0,i={t:"range",a:arguments},r):u},r.rangePoints=function(n,f){arguments.length<2&&(f=0);var s=n[0],h=n[1],c=(h-s)/(Math.max(1,t.length-1)+f);return u=o(t.length<2?(s+h)/2:s+c*f/2,c),e=0,i={t:"rangePoints",a:arguments},r},r.rangeBands=function(n,f,s){arguments.length<2&&(f=0);arguments.length<3&&(s=f);var h=n[1]<n[0],l=n[+h],a=n[1-h],c=(a-l)/(t.length-f+2*s);return u=o(l+c*s,c),h&&u.reverse(),e=c*(1-f),i={t:"rangeBands",a:arguments},r},r.rangeRoundBands=function(n,f,s){arguments.length<2&&(f=0);arguments.length<3&&(s=f);var h=n[1]<n[0],c=n[+h],a=n[1-h],l=Math.floor((a-c)/(t.length-f+2*s)),v=a-c-(t.length-f)*l;return u=o(c+Math.round(v/2),l),h&&u.reverse(),e=Math.round(l*(1-f)),i={t:"rangeRoundBands",a:arguments},r},r.rangeBand=function(){return e},r.rangeExtent=function(){return oi(i.a[0])},r.copy=function(){return uy(t,i)},r.domain(t)}function fy(t,i){function f(){var f=0,e=i.length;for(r=[];++f<e;)r[f-1]=n.quantile(t,f/e);return u}function u(t){if(!isNaN(t=+t))return i[n.bisect(r,t)]}var r;return u.domain=function(i){return arguments.length?(t=i.filter(function(n){return!isNaN(n)}).sort(n.ascending),f()):t},u.range=function(n){return arguments.length?(i=n,f()):i},u.quantiles=function(){return r},u.invertExtent=function(n){return n=i.indexOf(n),0>n?[NaN,NaN]:[n>0?r[n-1]:t[0],n<r.length?r[n]:t[t.length-1]]},u.copy=function(){return fy(t,i)},f()}function ey(n,t,i){function r(t){return i[Math.max(0,Math.min(e,Math.floor(u*(t-n))))]}function f(){return u=i.length/(t-n),e=i.length-1,r}var u,e;return r.domain=function(i){return arguments.length?(n=+i[0],t=+i[i.length-1],f()):[n,t]},r.range=function(n){return arguments.length?(i=n,f()):i},r.invertExtent=function(t){return t=i.indexOf(t),t=0>t?NaN:t/u+n,[t,t+1/u]},r.copy=function(){return ey(n,t,i)},f()}function oy(t,i){function r(r){if(r>=r)return i[n.bisect(t,r)]}return r.domain=function(n){return arguments.length?(t=n,r):t},r.range=function(n){return arguments.length?(i=n,r):i},r.invertExtent=function(n){return n=i.indexOf(n),[t[n-1],t[n]]},r.copy=function(){return oy(t,i)},r}function sy(n){function t(n){return+n}return t.invert=t,t.domain=t.range=function(i){return arguments.length?(n=i.map(t),t):n},t.ticks=function(t){return hs(n,t)},t.tickFormat=function(t,i){return cs(n,t,i)},t.copy=function(){return sy(n)},t}function fn(n){return n.innerRadius}function en(n){return n.outerRadius}function hy(n){return n.startAngle}function cy(n){return n.endAngle}function ly(n){for(var t,i,r,u=-1,f=n.length;++u<f;)t=n[u],i=t[0],r=t[1]+ii,t[0]=i*Math.cos(r),t[1]=i*Math.sin(r);return n}function ay(n){function t(t){function b(){p.push("M",i(n(w),s),a,l(n(y.reverse()),s),"Z")}for(var v,k,d,p=[],y=[],w=[],c=-1,g=t.length,nt=f(e),tt=f(o),it=e===r?function(){return k}:f(r),rt=o===u?function(){return d}:f(u);++c<g;)h.call(this,v=t[c],c)?(y.push([k=+nt.call(this,v,c),d=+tt.call(this,v,c)]),w.push([+it.call(this,v,c),+rt.call(this,v,c)])):y.length&&(b(),y=[],w=[]);return y.length&&b(),p.length?p.join(""):null}var e=nt,r=nt,o=0,u=ft,h=tr,i=p,c=i.key,l=i,a="L",s=.7;return t.x=function(n){return arguments.length?(e=r=n,t):r},t.x0=function(n){return arguments.length?(e=n,t):e},t.x1=function(n){return arguments.length?(r=n,t):r},t.y=function(n){return arguments.length?(o=u=n,t):u},t.y0=function(n){return arguments.length?(o=n,t):o},t.y1=function(n){return arguments.length?(u=n,t):u},t.defined=function(n){return arguments.length?(h=n,t):h},t.interpolate=function(n){return arguments.length?(c="function"==typeof n?i=n:(i=wf.get(n)||p).key,l=i.reverse||i,a=i.closed?"M":"L",t):c},t.tension=function(n){return arguments.length?(s=n,t):s},t}function on(n){return n.radius}function vy(n){return[n.x,n.y]}function sn(n){return function(){var t=n.apply(this,arguments),i=t[0],r=t[1]+ii;return[i*Math.cos(r),i*Math.sin(r)]}}function hn(){return 64}function cn(){return"circle"}function yy(n){var i=Math.sqrt(n/t);return"M0,"+i+"A"+i+","+i+" 0 1,1 0,"+-i+"A"+i+","+i+" 0 1,1 0,"+i+"Z"}function er(n,t){return pu(n,h),n.id=t,n}function ls(n,t,i,r){var u=n.id;return yt(n,"function"==typeof i?function(n,f,e){n.__transition__[u].tween.set(t,r(i.call(n,n.__data__,f,e)))}:(i=r(i),function(n){n.__transition__[u].tween.set(t,i)}))}function ln(n){return null==n&&(n=""),function(){this.textContent=n}}function hu(t,i,r,u){var e=t.__transition__||(t.__transition__={active:0,count:0}),f=e[r],o;f||(o=u.time,f=e[r]={tween:new g,time:o,ease:u.ease,delay:u.delay,duration:u.duration},++e.count,n.timer(function(n){function l(n){return e.active>r?u():(e.active=r,f.event&&f.event.start.call(t,s,i),f.tween.forEach(function(n,r){(r=r.call(t,s,i))&&c.push(r)}),a(n)?1:(hl(a,0,o),void 0))}function a(n){if(e.active!==r)return u();for(var o=(n-h)/y,a=v(o),l=c.length;l>0;)c[--l].call(t,a);if(o>=1)return(u(),f.event&&f.event.end.call(t,s,i),1)}function u(){return--e.count?delete e[r]:delete t.__transition__,1}var s=t.__data__,v=f.ease,h=f.delay,y=f.duration,c=[];return n>=h?l(n):(hl(l,h,o),void 0)},0,o))}function py(n,t){n.attr("transform",function(n){return"translate("+t(n)+",0)"})}function wy(n,t){n.attr("transform",function(n){return"translate(0,"+t(n)+")"})}function an(n,t,i){if(u=[],i&&t.length>1){for(var u,r,f,o=oi(n.domain()),e=-1,h=t.length,s=(t[1]-t[0])/++i;++e<h;)for(r=i;--r>0;)(f=+t[e]-r*s)>=o[0]&&u.push(f);for(--e,r=0;++r<i&&(f=+t[e]+r*s)<o[1];)u.push(f)}return u}function si(){this._=new Date(arguments.length>1?Date.UTC.apply(this,arguments):arguments[0])}function hi(n,t,i){function e(t){var i=n(t),r=f(i,1);return r-t>t-i?i:r}function u(i){return t(i=n(new l(i-1)),1),i}function f(n,i){return t(n=new l(+n),i),n}function o(n,r,f){var e=u(n),o=[];if(f>1)for(;r>e;)i(e)%f||o.push(new Date(+e)),t(e,1);else for(;r>e;)o.push(new Date(+e)),t(e,1);return o}function s(n,t,i){try{l=si;var r=new si;return r._=n,o(r,t,i)}finally{l=Date}}n.floor=n;n.round=e;n.ceil=u;n.offset=f;n.range=o;var r=n.utc=cu(n);return r.floor=r,r.round=cu(e),r.ceil=cu(u),r.offset=cu(f),r.range=s,n}function cu(n){return function(t,i){try{l=si;var r=new si;return r._=t,n(r,i)._}finally{l=Date}}}function lu(n,t,i,r){for(var u,f,e=0,o=t.length,s=i.length;o>e;){if(r>=s)return-1;if(u=t.charCodeAt(e++),37===u){if(f=dit[t.charAt(e++)],!f||(r=f(n,i,r))<0)return-1}else if(u!=i.charCodeAt(r++))return-1}return r}function au(t){return new RegExp("^(?:"+t.map(n.requote).join("|")+")","i")}function vu(n){for(var i=new g,t=-1,r=n.length;++t<r;)i.set(n[t].toLowerCase(),t);return i}function v(n,t,i){var u=0>n?"-":"",r=(u?-n:n)+"",f=r.length;return u+(i>f?new Array(i-f+1).join(t)+r:r)}function vn(n,t,i){ew.lastIndex=0;var r=ew.exec(t.substring(i));return r?(n.w=pit.get(r[0].toLowerCase()),i+r[0].length):-1}function yn(n,t,i){fw.lastIndex=0;var r=fw.exec(t.substring(i));return r?(n.w=yit.get(r[0].toLowerCase()),i+r[0].length):-1}function pn(n,t,i){o.lastIndex=0;var r=o.exec(t.substring(i,i+1));return r?(n.w=+r[0],i+r[0].length):-1}function wn(n,t,i){o.lastIndex=0;var r=o.exec(t.substring(i));return r?(n.U=+r[0],i+r[0].length):-1}function bn(n,t,i){o.lastIndex=0;var r=o.exec(t.substring(i));return r?(n.W=+r[0],i+r[0].length):-1}function kn(n,t,i){sw.lastIndex=0;var r=sw.exec(t.substring(i));return r?(n.m=bit.get(r[0].toLowerCase()),i+r[0].length):-1}function dn(n,t,i){ow.lastIndex=0;var r=ow.exec(t.substring(i));return r?(n.m=wit.get(r[0].toLowerCase()),i+r[0].length):-1}function gn(n,t,i){return lu(n,ne.c.toString(),t,i)}function ntt(n,t,i){return lu(n,ne.x.toString(),t,i)}function ttt(n,t,i){return lu(n,ne.X.toString(),t,i)}function itt(n,t,i){o.lastIndex=0;var r=o.exec(t.substring(i,i+4));return r?(n.y=+r[0],i+r[0].length):-1}function rtt(n,t,i){o.lastIndex=0;var r=o.exec(t.substring(i,i+2));return r?(n.y=utt(+r[0]),i+r[0].length):-1}function utt(n){return n+(n>68?1900:2e3)}function ftt(n,t,i){o.lastIndex=0;var r=o.exec(t.substring(i,i+2));return r?(n.m=r[0]-1,i+r[0].length):-1}function by(n,t,i){o.lastIndex=0;var r=o.exec(t.substring(i,i+2));return r?(n.d=+r[0],i+r[0].length):-1}function ett(n,t,i){o.lastIndex=0;var r=o.exec(t.substring(i,i+3));return r?(n.j=+r[0],i+r[0].length):-1}function ky(n,t,i){o.lastIndex=0;var r=o.exec(t.substring(i,i+2));return r?(n.H=+r[0],i+r[0].length):-1}function ott(n,t,i){o.lastIndex=0;var r=o.exec(t.substring(i,i+2));return r?(n.M=+r[0],i+r[0].length):-1}function stt(n,t,i){o.lastIndex=0;var r=o.exec(t.substring(i,i+2));return r?(n.S=+r[0],i+r[0].length):-1}function htt(n,t,i){o.lastIndex=0;var r=o.exec(t.substring(i,i+3));return r?(n.L=+r[0],i+r[0].length):-1}function ctt(n,t,i){var r=git.get(t.substring(i,i+=2).toLowerCase());return null==r?-1:(n.p=r,i)}function ltt(n){var t=n.getTimezoneOffset(),i=t>0?"-":"+",r=~~(Math.abs(t)/60),u=Math.abs(t)%60;return i+v(r,"0",2)+v(u,"0",2)}function att(n,t,i){hw.lastIndex=0;var r=hw.exec(t.substring(i,i+1));return r?i+r[0].length:-1}function as(n){return n.toISOString()}function vs(t,i,r){function u(n){return t(n)}return u.invert=function(n){return ys(t.invert(n))},u.domain=function(n){return arguments.length?(t.domain(n),u):t.domain().map(ys)},u.nice=function(n){return u.domain(es(u.domain(),n))},u.ticks=function(r,f){var o=oi(u.domain());if("function"!=typeof r){var h=o[1]-o[0],s=h/r,e=n.bisect(te,s);if(e==te.length)return i.year(o,r);if(!e)return t.ticks(r).map(ys);s/te[e-1]<te[e]/s&&--e;r=i[e];f=r[1];r=r[0].range}return r(o[0],new Date(+o[1]+1),f)},u.tickFormat=function(){return r},u.copy=function(){return vs(t.copy(),i,r)},os(u,t)}function ys(n){return new Date(n)}function dy(n){return function(t){for(var r=n.length-1,i=n[r];!i[1](t);)i=n[--r];return i[0](t)}}function ps(n){var t=new Date(n,0,1);return t.setFullYear(n),t}function vtt(n){var t=n.getFullYear(),i=ps(t),r=ps(t+1);return t+(n-i)/(r-i)}function ws(n){var t=new Date(Date.UTC(n,0,1));return t.setUTCFullYear(n),t}function ytt(n){var t=n.getUTCFullYear(),i=ws(t),r=ws(t+1);return t+(n-i)/(r-i)}function ptt(n){return JSON.parse(n.responseText)}function wtt(n){var t=b.createRange();return t.selectNode(b.body),t.createContextualFragment(n.responseText)}var n={version:"3.2.8"},bs,st,ks,ds,ht,u,wu,tt,th,bu,ku,tp,du,gu,ih,ip,nf,tf,or,sr,uf,ff,ef,of,it,uh,sp,hr,eh,oh,hf,bt,y,ch,ai,lh,ah,vh,yh,ph,wf,lr,bf,ar,vp,yp,pp,wh,wp,bp,kp,bh,dp,ii,gp,kh,dh,iw,rw,gf,l,uw,rc;Date.now||(Date.now=function(){return+new Date});var b=document,wt=b.documentElement,c=window;try{b.createElement("div").style.setProperty("opacity",0,"")}catch(urt){var yu=c.Element.prototype,btt=yu.setAttribute,ktt=yu.setAttributeNS,gy=c.CSSStyleDeclaration.prototype,dtt=gy.setProperty;yu.setAttribute=function(n,t){btt.call(this,n,t+"")};yu.setAttributeNS=function(n,t,i){ktt.call(this,n,t,i+"")};gy.setProperty=function(n,t,i){dtt.call(this,n,t+"",i)}}n.ascending=function(n,t){return t>n?-1:n>t?1:n>=t?0:NaN};n.descending=function(n,t){return n>t?-1:t>n?1:t>=n?0:NaN};n.min=function(n,t){var i,u,r=-1,f=n.length;if(1===arguments.length){for(;++r<f&&!(null!=(i=n[r])&&i>=i);)i=void 0;for(;++r<f;)null!=(u=n[r])&&i>u&&(i=u)}else{for(;++r<f&&!(null!=(i=t.call(n,n[r],r))&&i>=i);)i=void 0;for(;++r<f;)null!=(u=t.call(n,n[r],r))&&i>u&&(i=u)}return i};n.max=function(n,t){var i,u,r=-1,f=n.length;if(1===arguments.length){for(;++r<f&&!(null!=(i=n[r])&&i>=i);)i=void 0;for(;++r<f;)null!=(u=n[r])&&u>i&&(i=u)}else{for(;++r<f&&!(null!=(i=t.call(n,n[r],r))&&i>=i);)i=void 0;for(;++r<f;)null!=(u=t.call(n,n[r],r))&&u>i&&(i=u)}return i};n.extent=function(n,t){var i,r,f,u=-1,e=n.length;if(1===arguments.length){for(;++u<e&&!(null!=(i=f=n[u])&&i>=i);)i=f=void 0;for(;++u<e;)null!=(r=n[u])&&(i>r&&(i=r),r>f&&(f=r))}else{for(;++u<e&&!(null!=(i=f=t.call(n,n[u],u))&&i>=i);)i=void 0;for(;++u<e;)null!=(r=t.call(n,n[u],u))&&(i>r&&(i=r),r>f&&(f=r))}return[i,f]};n.sum=function(n,t){var r,u=0,f=n.length,i=-1;if(1===arguments.length)for(;++i<f;)isNaN(r=+n[i])||(u+=r);else for(;++i<f;)isNaN(r=+t.call(n,n[i],i))||(u+=r);return u};n.mean=function(n,t){var u,e=n.length,i=0,r=-1,f=0;if(1===arguments.length)for(;++r<e;)ie(u=n[r])&&(i+=(u-i)/++f);else for(;++r<e;)ie(u=t.call(n,n[r],r))&&(i+=(u-i)/++f);if(f)return i};n.quantile=function(n,t){var u=(n.length-1)*t+1,i=Math.floor(u),r=+n[i-1],f=u-i;return f?r+f*(n[i]-r):r};n.median=function(t,i){return arguments.length>1&&(t=t.map(i)),t=t.filter(ie),t.length?n.quantile(t.sort(n.ascending),.5):void 0};n.bisector=function(n){return{left:function(t,i,r,u){for(arguments.length<3&&(r=0),arguments.length<4&&(u=t.length);u>r;){var f=r+u>>>1;n.call(t,t[f],f)<i?r=f+1:u=f}return r},right:function(t,i,r,u){for(arguments.length<3&&(r=0),arguments.length<4&&(u=t.length);u>r;){var f=r+u>>>1;i<n.call(t,t[f],f)?u=f:r=f+1}return r}}};bs=n.bisector(function(n){return n});n.bisectLeft=bs.left;n.bisect=n.bisectRight=bs.right;n.shuffle=function(n){for(var r,i,t=n.length;t;)i=0|Math.random()*t--,r=n[t],n[t]=n[i],n[i]=r;return n};n.permute=function(n,t){for(var i=t.length,r=new Array(i);i--;)r[i]=n[t[i]];return r};n.zip=function(){var r,t,e;if(!(r=arguments.length))return[];for(var i=-1,u=n.min(arguments,aw),f=new Array(u);++i<u;)for(t=-1,e=f[i]=new Array(r);++t<r;)e[t]=arguments[t][i];return f};n.transpose=function(t){return n.zip.apply(n,t)};n.keys=function(n){var t=[],i;for(i in n)t.push(i);return t};n.values=function(n){var t=[],i;for(i in n)t.push(n[i]);return t};n.entries=function(n){var i=[],t;for(t in n)i.push({key:t,value:n[t]});return i};n.merge=function(n){return Array.prototype.concat.apply([],n)};n.range=function(n,t,i){if(arguments.length<3&&(i=1,arguments.length<2&&(t=n,n=0)),1/0==(t-n)/i)throw new Error("infinite range");var u,f=[],r=vw(Math.abs(i)),e=-1;if(n*=r,t*=r,i*=r,0>i)for(;(u=n+i*++e)>t;)f.push(u/r);else for(;(u=n+i*++e)<t;)f.push(u/r);return f};n.map=function(n){var t=new g,i;if(n instanceof g)n.forEach(function(n,i){t.set(n,i)});else for(i in n)t.set(i,n[i]);return t};fc(g,{has:function(n){return st+n in this},get:function(n){return this[st+n]},set:function(n,t){return this[st+n]=t},remove:function(n){return n=st+n,n in this&&delete this[n]},keys:function(){var n=[];return this.forEach(function(t){n.push(t)}),n},values:function(){var n=[];return this.forEach(function(t,i){n.push(i)}),n},entries:function(){var n=[];return this.forEach(function(t,i){n.push({key:t,value:i})}),n},forEach:function(n){for(var t in this)t.charCodeAt(0)===ks&&n.call(this,t.substring(1),this[t])}});st="\0";ks=st.charCodeAt(0);n.nest=function(){function r(n,e,o){if(o>=i.length)return f?f.call(t,e):u?e.sort(u):e;for(var l,s,h,a,v=-1,y=e.length,p=i[o++],c=new g;++v<y;)(a=c.get(l=p(s=e[v])))?a.push(s):c.set(l,[s]);return n?(s=n(),h=function(t,i){s.set(t,r(n,i,o))}):(s={},h=function(t,i){s[t]=r(n,i,o)}),c.forEach(h),s}function e(n,t){if(t>=i.length)return n;var r=[],u=o[t++];return n.forEach(function(n,i){r.push({key:n,values:e(i,t)})}),u?r.sort(function(n,t){return u(n.key,t.key)}):r}var u,f,t={},i=[],o=[];return t.map=function(n,t){return r(t,n,0)},t.entries=function(t){return e(r(n.map,t,0),0)},t.key=function(n){return i.push(n),t},t.sortKeys=function(n){return o[i.length-1]=n,t},t.sortValues=function(n){return u=n,t},t.rollup=function(n){return f=n,t},t};n.set=function(n){var i=new re,t,r;if(n)for(t=0,r=n.length;r>t;++t)i.add(n[t]);return i};fc(re,{has:function(n){return st+n in this},add:function(n){return this[st+n]=!0,n},remove:function(n){return n=st+n,n in this&&delete this[n]},values:function(){var n=[];return this.forEach(function(t){n.push(t)}),n},forEach:function(n){for(var t in this)t.charCodeAt(0)===ks&&n.call(this,t.substring(1))}});n.behavior={};n.rebind=function(n,t){for(var i,r=1,u=arguments.length;++r<u;)n[i=arguments[r]]=yw(n,t,t[i]);return n};ds=["webkit","ms","moz","Moz","o","O"];ht=ww;try{ht(wt.childNodes)[0].nodeType}catch(frt){ht=pw}n.dispatch=function(){for(var n=new fe,t=-1,i=arguments.length;++t<i;)n[arguments[t]]=ec(n);return n};fe.prototype.on=function(n,t){var r=n.indexOf("."),i="";if(r>=0&&(i=n.substring(r+1),n=n.substring(0,r)),n)return arguments.length<2?this[n].on(i):this[n].on(i,t);if(2===arguments.length){if(null==t)for(n in this)this.hasOwnProperty(n)&&this[n].on(i,null);return this}};n.event=null;n.requote=function(n){return n.replace(gtt,"\\$&")};var gtt=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g,pu={}.__proto__?function(n,t){n.__proto__=t}:function(n,t){for(var i in t)n[i]=t[i]},gs=function(n,t){return t.querySelector(n)},nh=function(n,t){return t.querySelectorAll(n)},nit=wt[ue(wt,"matchesSelector")],np=function(n,t){return nit.call(n,t)};"function"==typeof Sizzle&&(gs=function(n,t){return Sizzle(n,t)[0]||null},nh=function(n,t){return Sizzle.uniqueSort(Sizzle(n,t))},np=Sizzle.matchesSelector);n.selection=function(){return th};u=n.selection.prototype=[];u.select=function(n){var i,f,e,t,o=[],r,s,u,h;for(n=oe(n),r=-1,s=this.length;++r<s;)for(o.push(i=[]),i.parentNode=(e=this[r]).parentNode,u=-1,h=e.length;++u<h;)(t=e[u])?(i.push(f=n.call(t,t.__data__,u,r)),f&&"__data__"in t&&(f.__data__=t.__data__)):i.push(null);return vt(o)};u.selectAll=function(n){var u,t,f=[],i,e;for(n=sc(n),i=-1,e=this.length;++i<e;)for(var o=this[i],r=-1,s=o.length;++r<s;)(t=o[r])&&(f.push(u=ht(n.call(t,t.__data__,r,i))),u.parentNode=t);return vt(f)};wu={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};n.ns={prefix:wu,qualify:function(n){var t=n.indexOf(":"),i=n;return t>=0&&(i=n.substring(0,t),n=n.substring(t+1)),wu.hasOwnProperty(i)?{space:wu[i],local:n}:n}};u.attr=function(t,i){if(arguments.length<2){if("string"==typeof t){var r=this.node();return t=n.ns.qualify(t),t.local?r.getAttributeNS(t.space,t.local):r.getAttribute(t)}for(i in t)this.each(hc(i,t[i]));return this}return this.each(hc(t,i))};u.classed=function(n,t){if(arguments.length<2){if("string"==typeof n){var r=this.node(),u=(n=n.trim().split(/^|\s+/g)).length,i=-1;if(t=r.classList){for(;++i<u;)if(!t.contains(n[i]))return!1}else for(t=r.getAttribute("class");++i<u;)if(!lc(n[i]).test(t))return!1;return!0}for(t in n)this.each(ac(t,n[t]));return this}return this.each(ac(n,t))};u.style=function(n,t,i){var r=arguments.length;if(3>r){if("string"!=typeof n){2>r&&(t="");for(i in n)this.each(vc(i,n[i],t));return this}if(2>r)return c.getComputedStyle(this.node(),null).getPropertyValue(n);i=""}return this.each(vc(n,t,i))};u.property=function(n,t){if(arguments.length<2){if("string"==typeof n)return this.node()[n];for(t in n)this.each(yc(t,n[t]));return this}return this.each(yc(n,t))};u.text=function(n){return arguments.length?this.each("function"==typeof n?function(){var t=n.apply(this,arguments);this.textContent=null==t?"":t}:null==n?function(){this.textContent=""}:function(){this.textContent=n}):this.node().textContent};u.html=function(n){return arguments.length?this.each("function"==typeof n?function(){var t=n.apply(this,arguments);this.innerHTML=null==t?"":t}:null==n?function(){this.innerHTML=""}:function(){this.innerHTML=n}):this.node().innerHTML};u.append=function(n){return n=pc(n),this.select(function(){return this.appendChild(n.apply(this,arguments))})};u.insert=function(n,t){return n=pc(n),t=oe(t),this.select(function(){return this.insertBefore(n.apply(this,arguments),t.apply(this,arguments))})};u.remove=function(){return this.each(function(){var n=this.parentNode;n&&n.removeChild(this)})};u.data=function(n,t){function e(n,i){var r,u,o,l=n.length,a=i.length,k=Math.min(l,a),v=new Array(a),c=new Array(a),y=new Array(l);if(t){var e,p=new g,w=new g,b=[];for(r=-1;++r<l;)e=t.call(u=n[r],u.__data__,r),p.has(e)?y[r]=u:p.set(e,u),b.push(e);for(r=-1;++r<a;)e=t.call(i,o=i[r],r),(u=p.get(e))?(v[r]=u,u.__data__=o):w.has(e)||(c[r]=se(o)),w.set(e,o),p.remove(e);for(r=-1;++r<l;)p.has(b[r])&&(y[r]=n[r])}else{for(r=-1;++r<k;)u=n[r],o=i[r],u?(u.__data__=o,v[r]=u):c[r]=se(o);for(;a>r;++r)c[r]=se(i[r]);for(;l>r;++r)y[r]=n[r]}c.update=v;c.parentNode=v.parentNode=y.parentNode=n.parentNode;s.push(c);f.push(v);h.push(y)}var r,o,i=-1,u=this.length;if(!arguments.length){for(n=new Array(u=(r=this[0]).length);++i<u;)(o=r[i])&&(n[i]=o.__data__);return n}var s=bc([]),f=vt([]),h=vt([]);if("function"==typeof n)for(;++i<u;)e(r=this[i],n.call(r,r.parentNode.__data__,i));else for(;++i<u;)e(r=this[i],n);return f.enter=function(){return s},f.exit=function(){return h},f};u.datum=function(n){return arguments.length?this.property("__data__",n):this.property("__data__")};u.filter=function(n){var u,f,i,e=[],r,o,t,s;for("function"!=typeof n&&(n=wc(n)),r=0,o=this.length;o>r;r++)for(e.push(u=[]),u.parentNode=(f=this[r]).parentNode,t=0,s=f.length;s>t;t++)(i=f[t])&&n.call(i,i.__data__,t)&&u.push(i);return vt(e)};u.order=function(){for(var i=-1,f=this.length;++i<f;)for(var t,r=this[i],u=r.length-1,n=r[u];--u>=0;)(t=r[u])&&(n&&n!==t.nextSibling&&n.parentNode.insertBefore(t,n),n=t);return this};u.sort=function(n){n=kw.apply(this,arguments);for(var t=-1,i=this.length;++t<i;)this[t].sort(n);return this.order()};u.each=function(n){return yt(this,function(t,i,r){n.call(t,t.__data__,i,r)})};u.call=function(n){var t=ht(arguments);return n.apply(t[0]=this,t),this};u.empty=function(){return!this.node()};u.node=function(){for(var i,n=0,r=this.length;r>n;n++)for(var u=this[n],t=0,f=u.length;f>t;t++)if(i=u[t],i)return i;return null};u.size=function(){var n=0;return this.each(function(){++n}),n};tt=[];n.selection.enter=bc;n.selection.enter.prototype=tt;tt.append=u.append;tt.empty=u.empty;tt.node=u.node;tt.call=u.call;tt.size=u.size;tt.select=function(n){for(var i,h,r,e,o,t,u,s=[],f=-1,c=this.length;++f<c;)for(o=(t=this[f]).update,s.push(r=[]),r.parentNode=t.parentNode,i=-1,h=t.length;++i<h;)(u=t[i])?(r.push(o[i]=e=n.call(t.parentNode,u.__data__,i,f)),e.__data__=u.__data__):r.push(null);return vt(s)};tt.insert=function(n,t){return arguments.length<2&&(t=dw(this)),u.insert.call(this,n,t)};u.transition=function(){for(var i,n,r=vr||++tw,u=[],o=kf||{time:Date.now(),ease:gk,delay:0,duration:250},f=-1,s=this.length;++f<s;){u.push(i=[]);for(var e=this[f],t=-1,h=e.length;++t<h;)(n=e[t])&&hu(n,t,r,o),i.push(n)}return er(u,r)};n.select=function(n){var t=["string"==typeof n?gs(n,b):n];return t.parentNode=wt,vt([t])};n.selectAll=function(n){var t=ht("string"==typeof n?nh(n,b):n);return t.parentNode=wt,vt([t])};th=n.select(wt);u.on=function(n,t,i){var r=arguments.length;if(3>r){if("string"!=typeof n){2>r&&(t=!1);for(i in n)this.each(kc(i,n[i],t));return this}if(2>r)return(r=this.node()["__on"+n])&&r._;i=!1}return this.each(kc(n,t,i))};bu=n.map({mouseenter:"mouseover",mouseleave:"mouseout"});bu.forEach(function(n){"on"+n in b&&bu.remove(n)});ku=ue(wt.style,"userSelect");tp=0;n.mouse=function(n){return gc(n,oc())};du=/WebKit/.test(c.navigator.userAgent)?-1:0;n.touches=function(n,t){return arguments.length<2&&(t=oc().touches),t?ht(t).map(function(t){var i=gc(n,t);return i.identifier=t.identifier,i}):[]};n.behavior.drag=function(){function t(){this.on("mousedown.drag",o).on("touchstart.drag",h)}function f(){return n.event.changedTouches[0].identifier}function e(t,i){return n.touches(t).filter(function(n){return n.identifier===i})[0]}function r(t,r,f,e){return function(){function b(){if(!v)return p();var n=r(v,h),t=n[0]-s[0],i=n[1]-s[1];w|=t|i;s=n;y({type:"drag",x:n[0]+o[0],y:n[1]+o[1],dx:t,dy:i})}function p(){d.on(f+"."+l,null).on(e+"."+l,null);g(w&&n.event.target===k);y({type:"dragend"})}var o,a=this,v=a.parentNode,y=u.of(a,arguments),k=n.event.target,h=t(),l=null==h?"drag":"drag-"+h,s=r(v,h),w=0,d=n.select(c).on(f+"."+l,b).on(e+"."+l,p),g=yr();i?(o=i.apply(a,arguments),o=[o.x-s[0],o.y-s[1]]):o=[0,0];y({type:"dragstart"})}}var u=ee(t,"drag","dragstart","dragend"),i=null,o=r(s,n.mouse,"mousemove","mouseup"),h=r(f,e,"touchmove","touchend");return t.origin=function(n){return arguments.length?(i=n,t):i},n.rebind(t,u,"on")};n.behavior.zoom=function(){function r(){this.on(k,nt).on(ip+".zoom",ot).on(d,it).on("dblclick.zoom",st).on(g,tt)}function o(n){return[(n[0]-i[0])/t,(n[1]-i[1])/t]}function et(n){return[n[0]*t+i[0],n[1]*t+i[1]]}function s(n){t=Math.max(v[0],Math.min(v[1],n))}function u(n,t){t=et(t);i[0]+=n[0]-t[0];i[1]+=n[1]-t[1]}function y(){l&&l.domain(w.range().map(function(n){return(n-i[0])/t}).map(w.invert));a&&a.domain(b.range().map(function(n){return(n-i[1])/t}).map(b.invert))}function f(n){y();n({type:"zoom",scale:t,translate:i})}function nt(){function r(){i=1;u(n.mouse(t),v);f(h)}function s(){a.on(d,c===t?it:null).on(rt,null);y(i&&n.event.target===l)}var t=this,h=e.of(t,arguments),l=n.event.target,i=0,a=n.select(c).on(d,r).on(rt,s),v=o(n.mouse(t)),y=yr()}function tt(){function l(){var u=n.touches(r);return v=t,i={},u.forEach(function(n){i[n.identifier]=o(n)}),u}function a(){var e=Date.now(),r=l(),n,o;if(1===r.length)500>e-p&&(n=r[0],o=i[n.identifier],s(2*t),u(n,o),at(),f(y)),p=e;else if(r.length>1){var n=r[0],c=r[1],a=n[0]-c[0],v=n[1]-c[1];h=a*a+v*v}}function w(){var w=n.touches(r),t=w[0],c=i[t.identifier],e,a,l,o;(e=w[1])&&(a=i[e.identifier],l=n.event.scale,null==l&&(o=(o=e[0]-t[0])*o+(o=e[1]-t[1])*o,l=h&&Math.sqrt(o/h)),t=[(t[0]+e[0])/2,(t[1]+e[1])/2],c=[(c[0]+a[0])/2,(c[1]+a[1])/2],s(l*v));p=null;u(t,c);f(y)}function b(){n.event.touches.length?l():(d.on(ut,null).on(ft,null),it.on(k,nt).on(g,tt),rt())}var i,v,r=this,y=e.of(r,arguments),h=0,d=n.select(c).on(ut,w).on(ft,b),it=n.select(r).on(k,null).on(g,a),rt=yr();a()}function ot(){at();h||(h=o(n.mouse(this)));s(Math.pow(2,.002*gu())*t);u(n.mouse(this),h);f(e.of(this,arguments))}function it(){h=null}function st(){var i=n.mouse(this),h=o(i),r=Math.log(t)/Math.LN2;s(Math.pow(2,n.event.shiftKey?Math.ceil(r)-1:Math.floor(r)+1));u(i,h);f(e.of(this,arguments))}var h,p,w,l,b,a,i=[0,0],t=1,v=ih,k="mousedown.zoom",d="mousemove.zoom",rt="mouseup.zoom",g="touchstart.zoom",ut="touchmove.zoom",ft="touchend.zoom",e=ee(r,"zoom");return r.translate=function(n){return arguments.length?(i=n.map(Number),y(),r):i},r.scale=function(n){return arguments.length?(t=+n,y(),r):t},r.scaleExtent=function(n){return arguments.length?(v=null==n?ih:n.map(Number),r):v},r.x=function(n){return arguments.length?(l=n,w=n.copy(),i=[0,0],t=1,r):l},r.y=function(n){return arguments.length?(a=n,b=n.copy(),i=[0,0],t=1,r):a},n.rebind(r,e,"on")};ih=[0,1/0];ip="onwheel"in b?(gu=function(){return-n.event.deltaY*(n.event.deltaMode?120:1)},"wheel"):"onmousewheel"in b?(gu=function(){return n.event.wheelDelta},"mousewheel"):(gu=function(){return-n.event.detail},"MozMousePixelScroll");vi.prototype.toString=function(){return this.rgb()+""};n.hsl=function(n,t,i){return 1===arguments.length?n instanceof he?yi(n.h,n.s,n.l):el(""+n,ol,yi):yi(+n,+t,+i)};nf=he.prototype=new vi;nf.brighter=function(n){return n=Math.pow(.7,arguments.length?n:1),yi(this.h,this.s,this.l/n)};nf.darker=function(n){return n=Math.pow(.7,arguments.length?n:1),yi(this.h,this.s,n*this.l)};nf.rgb=function(){return ce(this.h,this.s,this.l)};var t=Math.PI,i=1e-6,rp=i*i,r=t/180,e=180/t;n.hcl=function(t,i,r){return 1===arguments.length?t instanceof pr?pi(t.h,t.c,t.l):t instanceof wr?ul(t.l,t.a,t.b):ul((t=sl((t=n.rgb(t)).r,t.g,t.b)).l,t.a,t.b):pi(+t,+i,+r)};tf=pr.prototype=new vi;tf.brighter=function(n){return pi(this.h,this.c,Math.min(100,this.l+rf*(arguments.length?n:1)))};tf.darker=function(n){return pi(this.h,this.c,Math.max(0,this.l-rf*(arguments.length?n:1)))};tf.rgb=function(){return le(this.h,this.c,this.l).rgb()};n.lab=function(t,i,r){return 1===arguments.length?t instanceof wr?wi(t.l,t.a,t.b):t instanceof pr?le(t.l,t.c,t.h):sl((t=n.rgb(t)).r,t.g,t.b):wi(+t,+i,+r)};var rf=18,up=.95047,fp=1,ep=1.08883,rh=wr.prototype=new vi;rh.brighter=function(n){return wi(Math.min(100,this.l+rf*(arguments.length?n:1)),this.a,this.b)};rh.darker=function(n){return wi(Math.max(0,this.l-rf*(arguments.length?n:1)),this.a,this.b)};rh.rgb=function(){return rl(this.l,this.a,this.b)};n.rgb=function(n,t,i){return 1===arguments.length?n instanceof pe?ut(n.r,n.g,n.b):el(""+n,ut,ce):ut(~~n,~~t,~~i)};or=pe.prototype=new vi;or.brighter=function(n){n=Math.pow(.7,arguments.length?n:1);var i=this.r,r=this.g,u=this.b,t=30;return i||r||u?(i&&t>i&&(i=t),r&&t>r&&(r=t),u&&t>u&&(u=t),ut(Math.min(255,~~(i/n)),Math.min(255,~~(r/n)),Math.min(255,~~(u/n)))):ut(t,t,t)};or.darker=function(n){return n=Math.pow(.7,arguments.length?n:1),ut(~~(n*this.r),~~(n*this.g),~~(n*this.b))};or.hsl=function(){return ol(this.r,this.g,this.b)};or.toString=function(){return"#"+bi(this.r)+bi(this.g)+bi(this.b)};sr=n.map({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,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});sr.forEach(function(n,t){sr.set(n,fl(t))});n.functor=f;n.xhr=ke(a);n.dsv=function(t,i){function r(t,r,u){arguments.length<3&&(u=r,r=null);var o=n.xhr(t,i,u);return o.row=function(n){return arguments.length?o.response(null==(r=n)?f:e(n)):r},o.row(r)}function f(n){return r.parse(n.responseText)}function e(n){return function(t){return r.parse(t.responseText,n)}}function o(n){return n.map(u).join(t)}function u(n){return s.test(n)?'"'+n.replace(/\"/g,'""')+'"':n}var s=new RegExp('["'+t+"\n]"),h=t.charCodeAt(0);return r.parse=function(n,t){var i;return r.parseRows(n,function(n,r){if(i)return i(n,r-1);var u=new Function("d","return {"+n.map(function(n,t){return JSON.stringify(n)+": d["+t+"]"}).join(",")+"}");i=t?function(n,i){return t(u(n),i)}:u})},r.parseRows=function(n,t){function s(){var f,t,u,s;if(i>=o)return e;if(r)return r=!1,c;if(f=i,34===n.charCodeAt(f)){for(t=f;t++<o;)if(34===n.charCodeAt(t)){if(34!==n.charCodeAt(t+1))break;++t}return i=t+2,u=n.charCodeAt(t+1),13===u?(r=!0,10===n.charCodeAt(t+2)&&++i):10===u&&(r=!0),n.substring(f+1,t).replace(/""/g,'"')}for(;o>i;){if(u=n.charCodeAt(i++),s=1,10===u)r=!0;else if(13===u)r=!0,10===n.charCodeAt(i)&&(++i,++s);else if(u!==h)continue;return n.substring(f,i-s)}return n.substring(f)}for(var f,u,r,c={},e={},l=[],o=n.length,i=0,a=0;(u=s())!==e;){for(f=[];u!==c&&u!==e;)f.push(u),u=s();(!t||(f=t(f,a++)))&&l.push(f)}return l},r.format=function(n){if(Array.isArray(n[0]))return r.formatRows(n);var f=new re,i=[];return n.forEach(function(n){for(var t in n)f.has(t)||i.push(f.add(t))}),[i.map(u).join(t)].concat(n.map(function(n){return i.map(function(t){return u(n[t])}).join(t)})).join("\n")},r.formatRows=function(n){return n.map(o).join("\n")},r};n.csv=n.dsv(",","text/csv");n.tsv=n.dsv("\t","text/tab-separated-values");uh=c[ue(c,"requestAnimationFrame")]||function(n){setTimeout(n,17)};n.timer=function(n,t,i){var u=arguments.length,f,r;2>u&&(t=0);3>u&&(i=Date.now());f=i+t;r={callback:n,time:f,next:null};ff?ff.next=r:uf=r;ff=r;ef||(of=clearTimeout(of),ef=1,uh(ge))};n.timer.flush=function(){cl();ll()};var tit=".",iit=",",sf=[3,3],rit="$",uit=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"].map(rb);n.formatPrefix=function(t,i){var r=0;return t&&(0>t&&(t*=-1),i&&(t=n.round(t,no(t,i))),r=1+Math.floor(1e-12+Math.log(t)/Math.LN10),r=Math.max(-24,Math.min(24,3*Math.floor((0>=r?r+1:r-1)/3)))),uit[8+r/3]};n.round=function(n,t){return t?Math.round(n*(t=Math.pow(10,t)))/t:Math.round(n)};n.format=function(t){var u=op.exec(t),v=u[1]||" ",e=u[2]||">",p=u[3]||"",f=u[4]||"",s=u[5],h=+u[6],c=u[7],r=u[8],i=u[9],o=1,l="",y=!1,a;switch(r&&(r=+r.substring(1)),(s||"0"===v&&"="===e)&&(s=v="0",e="=",c&&(h-=Math.floor((h-1)/4))),i){case"n":c=!0;i="g";break;case"%":o=100;l="%";i="f";break;case"p":o=100;l="%";i="r";break;case"b":case"o":case"x":case"X":"#"===f&&(f="0"+i.toLowerCase());case"c":case"d":y=!0;r=0;break;case"s":o=-1;i="r"}return"#"===f?f="":"$"===f&&(f=rit),"r"!=i||r||(i="g"),null!=r&&("g"==i?r=Math.max(1,Math.min(21,r)):("e"==i||"f"==i)&&(r=Math.max(0,Math.min(20,r)))),i=fit.get(i)||ub,a=s&&c,function(t){var u,g,k,w;if(y&&t%1)return"";u=0>t||0===t&&0>1/t?(t=-t,"-"):p;0>o?(g=n.formatPrefix(t,r),t=g.scale(t),l=g.symbol):t*=o;t=i(t,r);var d=t.lastIndexOf("."),b=0>d?t:t.substring(0,d),nt=0>d?"":tit+t.substring(d+1);return!s&&c&&(b=fh(b)),k=f.length+b.length+nt.length+(a?0:u.length),w=h>k?new Array(k=h-k+1).join(v):"",a&&(b=fh(w+b)),u+=f,t=b+nt,("<"===e?u+t+w:">"===e?w+u+t:"^"===e?w.substring(0,k>>=1)+u+t+w.substring(k):u+(a?t:w+t))+l}};var op=/(?:([^{])?([<>=^]))?([+\- ])?([$#])?(0)?(\d+)?(,)?(\.-?\d+)?([a-z%])?/i,fit=n.map({b:function(n){return n.toString(2)},c:function(n){return String.fromCharCode(n)},o:function(n){return n.toString(8)},x:function(n){return n.toString(16)},X:function(n){return n.toString(16).toUpperCase()},g:function(n,t){return n.toPrecision(t)},e:function(n,t){return n.toExponential(t)},f:function(n,t){return n.toFixed(t)},r:function(t,i){return(t=n.round(t,no(t,i))).toFixed(Math.max(0,Math.min(20,no(t*(1+1e-15),i))))}}),fh=a;sf&&(sp=sf.length,fh=function(n){for(var i=n.length,r=[],u=0,t=sf[0];i>0&&t>0;)r.push(n.substring(i-=t,i+t)),t=sf[u=(u+1)%sp];return r.reverse().join(iit)});n.geo={};to.prototype={s:0,t:0,add:function(n){al(n,this.t,hr);al(hr.s,this.s,this);this.s?this.t+=hr.t:this.s=hr.t},reset:function(){this.s=this.t=0},valueOf:function(){return this.s}};hr=new to;n.geo.stream=function(n,t){n&&eh.hasOwnProperty(n.type)?eh[n.type](n,t):kr(n,t)};eh={Feature:function(n,t){kr(n.geometry,t)},FeatureCollection:function(n,t){for(var i=n.features,r=-1,u=i.length;++r<u;)kr(i[r].geometry,t)}};oh={Sphere:function(n,t){t.sphere()},Point:function(n,t){var i=n.coordinates;t.point(i[0],i[1])},MultiPoint:function(n,t){for(var i,r=n.coordinates,u=-1,f=r.length;++u<f;)i=r[u],t.point(i[0],i[1])},LineString:function(n,t){io(n.coordinates,t,0)},MultiLineString:function(n,t){for(var i=n.coordinates,r=-1,u=i.length;++r<u;)io(i[r],t,0)},Polygon:function(n,t){vl(n.coordinates,t)},MultiPolygon:function(n,t){for(var i=n.coordinates,r=-1,u=i.length;++r<u;)vl(i[r],t)},GeometryCollection:function(n,t){for(var i=n.geometries,r=-1,u=i.length;++r<u;)kr(i[r],t)}};n.geo.area=function(t){return hf=0,n.geo.stream(t,y),hf};bt=new to;y={sphere:function(){hf+=4*t},point:s,lineStart:s,lineEnd:s,polygonStart:function(){bt.reset();y.lineStart=fb},polygonEnd:function(){var n=2*bt;hf+=0>n?4*t+n:n;y.lineStart=y.lineEnd=y.point=s}};n.geo.bounds=function(){function w(n,i){a.push(c=[t=n,u=n]);o>i&&(o=i);i>s&&(s=i)}function b(n,i){var k=ui([n*r,i*r]),h;if(v){var p=ki(v,k),g=[p[1],-p[0],0],c=ki(g,p);nu(c);c=tu(c);var d=n-l,y=d>0?1:-1,a=c[0]*e*y,b=Math.abs(d)>180;b^(a>y*l&&y*n>a)?(h=c[1]*e,h>s&&(s=h)):(a=(a+360)%360-180,b^(a>y*l&&y*n>a))?(h=-c[1]*e,o>h&&(o=h)):(o>i&&(o=i),i>s&&(s=i));b?l>n?f(t,n)>f(t,u)&&(u=n):f(n,u)>f(t,u)&&(t=n):u>=t?(t>n&&(t=n),n>u&&(u=n)):n>l?f(t,n)>f(t,u)&&(u=n):f(n,u)>f(t,u)&&(t=n)}else w(n,i);v=k;l=n}function k(){h.point=b}function d(){c[0]=t;c[1]=u;h.point=w;v=null}function g(n,t){if(v){var i=n-l;p+=Math.abs(i)>180?i+(i>0?360:-360):i}else tt=n,it=t;y.point(n,t);b(n,t)}function rt(){y.lineStart()}function ut(){g(tt,it);y.lineEnd();Math.abs(p)>i&&(t=-(u=180));c[0]=t;c[1]=u;v=null}function f(n,t){return(t-=n)<0?t+360:t}function ft(n,t){return n[0]-t[0]}function nt(n,t){return t[0]<=t[1]?t[0]<=n&&n<=t[1]:n<t[0]||t[1]<n}var t,o,u,s,l,tt,it,v,p,a,c,h={point:w,lineStart:k,lineEnd:d,polygonStart:function(){h.point=g;h.lineStart=rt;h.lineEnd=ut;p=0;y.polygonStart()},polygonEnd:function(){y.polygonEnd();h.point=w;h.lineStart=k;h.lineEnd=d;0>bt?(t=-(u=180),o=-(s=90)):p>i?s=90:-i>p&&(o=-90);c[0]=t;c[1]=u}};return function(i){var v;if(s=u=-(t=o=1/0),a=[],n.geo.stream(i,h),v=a.length,v){a.sort(ft);for(var e,l=1,r=a[0],y=[r];v>l;++l)e=a[l],nt(e[0],r)||nt(e[1],r)?(f(r[0],e[1])>f(r[0],r[1])&&(r[1]=e[1]),f(e[0],r[1])>f(r[0],r[1])&&(r[0]=e[0])):y.push(r=e);for(var p,e,w=-1/0,v=y.length-1,l=0,r=y[v];v>=l;r=e,++l)e=y[l],(p=f(r[1],e[0]))>w&&(w=p,t=e[0],u=r[1])}return a=c=null,1/0===t||1/0===o?[[NaN,NaN],[NaN,NaN]]:[[t,o],[u,s]]}}();n.geo.centroid=function(t){cr=cf=ci=li=ct=kt=dt=rt=di=gi=gt=0;n.geo.stream(t,k);var r=di,u=gi,f=gt,o=r*r+u*u+f*f;return rp>o&&(r=kt,u=dt,f=rt,i>cf&&(r=ci,u=li,f=ct),o=r*r+u*u+f*f,rp>o)?[NaN,NaN]:[Math.atan2(u,r)*e,ri(f/Math.sqrt(o))*e]};var cr,cf,ci,li,ct,kt,dt,rt,di,gi,gt,k={sphere:s,point:uo,lineStart:yl,lineEnd:pl,polygonStart:function(){k.lineStart=eb},polygonEnd:function(){k.lineStart=yl}},hp=kl(tr,hb,lb,ab),eit=[-t,0],lf=1e9;(n.geo.conicEqualArea=function(){return fo(ta)}).raw=ta;n.geo.albers=function(){return n.geo.conicEqualArea().rotate([96,0]).center([-.6,38.7]).parallels([29.5,45.5]).scale(1070)};n.geo.albersUsa=function(){function r(n){var t=n[0],i=n[1];return u=null,s(t,i),u||(h(t,i),u)||c(t,i),u}var u,s,h,c,t=n.geo.albers(),f=n.geo.conicEqualArea().rotate([154,0]).center([-2,58.5]).parallels([55,65]),e=n.geo.conicEqualArea().rotate([157,0]).center([-3,19.9]).parallels([8,18]),o={point:function(n,t){u=[n,t]}};return r.invert=function(n){var u=t.scale(),o=t.translate(),i=(n[0]-o[0])/u,r=(n[1]-o[1])/u;return(r>=.12&&.234>r&&i>=-.425&&-.214>i?f:r>=.166&&.234>r&&i>=-.214&&-.115>i?e:t).invert(n)},r.stream=function(n){var i=t.stream(n),r=f.stream(n),u=e.stream(n);return{point:function(n,t){i.point(n,t);r.point(n,t);u.point(n,t)},sphere:function(){i.sphere();r.sphere();u.sphere()},lineStart:function(){i.lineStart();r.lineStart();u.lineStart()},lineEnd:function(){i.lineEnd();r.lineEnd();u.lineEnd()},polygonStart:function(){i.polygonStart();r.polygonStart();u.polygonStart()},polygonEnd:function(){i.polygonEnd();r.polygonEnd();u.polygonEnd()}}},r.precision=function(n){return arguments.length?(t.precision(n),f.precision(n),e.precision(n),r):t.precision()},r.scale=function(n){return arguments.length?(t.scale(n),f.scale(.35*n),e.scale(n),r.translate(t.translate())):t.scale()},r.translate=function(n){if(!arguments.length)return t.translate();var u=t.scale(),l=+n[0],a=+n[1];return s=t.translate(n).clipExtent([[l-.455*u,a-.238*u],[l+.455*u,a+.238*u]]).stream(o).point,h=f.translate([l-.307*u,a+.201*u]).clipExtent([[l-.425*u+i,a+.12*u+i],[l-.214*u-i,a+.234*u-i]]).stream(o).point,c=e.translate([l-.205*u,a+.212*u]).clipExtent([[l-.214*u+i,a+.166*u+i],[l-.115*u-i,a+.234*u-i]]).stream(o).point,r},r.scale(1070)};var sh,hh,af,vf,yf,pf,ni={point:s,lineStart:s,lineEnd:s,polygonStart:function(){hh=0;ni.lineStart=pb},polygonEnd:function(){ni.lineStart=ni.lineEnd=ni.point=s;sh+=Math.abs(hh/2)}},oit={point:wb,lineStart:s,lineEnd:s,polygonStart:s,polygonEnd:s},d={point:fi,lineStart:ra,lineEnd:ua,polygonStart:function(){d.lineStart=kb},polygonEnd:function(){d.point=fi;d.lineStart=ra;d.lineEnd=ua}};n.geo.path=function(){function t(t){return t&&("function"==typeof r&&i.pointRadius(+r.apply(this,arguments)),f&&f.valid||(f=u(i)),n.geo.stream(t,f)),i.result()}function e(){return f=null,t}var o,s,u,i,f,r=4.5;return t.area=function(t){return sh=0,n.geo.stream(t,u(ni)),sh},t.centroid=function(t){return ci=li=ct=kt=dt=rt=di=gi=gt=0,n.geo.stream(t,u(d)),gt?[di/gt,gi/gt]:rt?[kt/rt,dt/rt]:ct?[ci/ct,li/ct]:[NaN,NaN]},t.bounds=function(t){return yf=pf=-(af=vf=1/0),n.geo.stream(t,u(oit)),[[af,vf],[yf,pf]]},t.projection=function(n){return arguments.length?(u=(o=n)?n.stream||gb(n):a,e()):o},t.context=function(n){return arguments.length?(i=null==(s=n)?new bb:new db(n),"function"!=typeof r&&i.pointRadius(r),e()):s},t.pointRadius=function(n){return arguments.length?(r="function"==typeof n?n:(i.pointRadius(+n),+n),t):r},t.projection(n.geo.albersUsa()).context(null)};n.geo.projection=pt;n.geo.projectionMutator=eo;(n.geo.equirectangular=function(){return pt(ir)}).raw=ir.invert=ir;n.geo.rotation=function(n){function t(t){return t=n(t[0]*r,t[1]*r),t[0]*=e,t[1]*=e,t}return n=oo(n[0]%360*r,n[1]*r,n.length>2?n[2]*r:0),t.invert=function(t){return t=n.invert(t[0]*r,t[1]*r),t[0]*=e,t[1]*=e,t},t};n.geo.circle=function(){function n(){var n="function"==typeof t?t.apply(this,arguments):t,f=oo(-n[0]*r,-n[1]*r,0).invert,i=[];return u(null,null,1,{point:function(n,t){i.push(n=f(n,t));n[0]*=e;n[1]*=e}}),{type:"Polygon",coordinates:[i]}}var i,u,t=[0,0],f=6;return n.origin=function(i){return arguments.length?(t=i,n):t},n.angle=function(t){return arguments.length?(u=so((i=+t)*r,f*r),n):i},n.precision=function(t){return arguments.length?(u=so(i*r,(f=+t)*r),n):f},n.angle(90)};n.geo.distance=function(n,t){var i,f=(t[0]-n[0])*r,e=n[1]*r,o=t[1]*r,a=Math.sin(f),s=Math.cos(f),h=Math.sin(e),c=Math.cos(e),l=Math.sin(o),u=Math.cos(o);return Math.atan2(Math.sqrt((i=u*a)*i+(i=c*l-h*u*s)*i),h*l+c*u*s)};n.geo.graticule=function(){function t(){return{type:"MultiLineString",coordinates:k()}}function k(){return n.range(Math.ceil(u/a)*a,r,a).map(w).concat(n.range(Math.ceil(e/v)*v,f,v).map(b)).concat(n.range(Math.ceil(s/l)*l,o,l).filter(function(n){return Math.abs(n%a)>i}).map(d)).concat(n.range(Math.ceil(c/p)*p,h,p).filter(function(n){return Math.abs(n%v)>i}).map(g))}var o,s,r,u,h,c,f,e,d,g,w,b,l=10,p=l,a=90,v=360,y=2.5;return t.lines=function(){return k().map(function(n){return{type:"LineString",coordinates:n}})},t.outline=function(){return{type:"Polygon",coordinates:[w(u).concat(b(f).slice(1),w(r).reverse().slice(1),b(e).reverse().slice(1))]}},t.extent=function(n){return arguments.length?t.majorExtent(n).minorExtent(n):t.minorExtent()},t.majorExtent=function(n){return arguments.length?(u=+n[0][0],r=+n[1][0],e=+n[0][1],f=+n[1][1],u>r&&(n=u,u=r,r=n),e>f&&(n=e,e=f,f=n),t.precision(y)):[[u,e],[r,f]]},t.minorExtent=function(n){return arguments.length?(s=+n[0][0],o=+n[1][0],c=+n[0][1],h=+n[1][1],s>o&&(n=s,s=o,o=n),c>h&&(n=c,c=h,h=n),t.precision(y)):[[s,c],[o,h]]},t.step=function(n){return arguments.length?t.majorStep(n).minorStep(n):t.minorStep()},t.majorStep=function(n){return arguments.length?(a=+n[0],v=+n[1],t):[a,v]},t.minorStep=function(n){return arguments.length?(l=+n[0],p=+n[1],t):[l,p]},t.precision=function(n){return arguments.length?(y=+n,d=ca(c,h,90),g=la(s,o,y),w=ca(e,f,90),b=la(u,r,y),t):y},t.majorExtent([[-180,-90+i],[180,90-i]]).minorExtent([[-180,-80-i],[180,80+i]])};n.geo.greatArc=function(){function t(){return{type:"LineString",coordinates:[u||i.apply(this,arguments),f||r.apply(this,arguments)]}}var u,f,i=ho,r=co;return t.distance=function(){return n.geo.distance(u||i.apply(this,arguments),f||r.apply(this,arguments))},t.source=function(n){return arguments.length?(i=n,u="function"==typeof n?null:n,t):i},t.target=function(n){return arguments.length?(r=n,f="function"==typeof n?null:n,t):r},t.precision=function(){return arguments.length?t:0},t};n.geo.interpolate=function(n,t){return tk(n[0]*r,n[1]*r,t[0]*r,t[1]*r)};n.geo.length=function(t){return ch=0,n.geo.stream(t,ai),ch};ai={sphere:s,point:s,lineStart:ik,lineEnd:s,polygonStart:s,polygonEnd:s};lh=rr(function(n){return Math.sqrt(2/(1+n))},function(n){return 2*Math.asin(n/2)});(n.geo.azimuthalEqualArea=function(){return pt(lh)}).raw=lh;ah=rr(function(n){var t=Math.acos(n);return t&&t/Math.sin(t)},a);(n.geo.azimuthalEquidistant=function(){return pt(ah)}).raw=ah;(n.geo.conicConformal=function(){return fo(aa)}).raw=aa;(n.geo.conicEquidistant=function(){return fo(va)}).raw=va;vh=rr(function(n){return 1/n},Math.atan);(n.geo.gnomonic=function(){return pt(vh)}).raw=vh;uu.invert=function(n,i){return[n,2*Math.atan(Math.exp(i))-t/2]};(n.geo.mercator=function(){return ya(uu)}).raw=uu;yh=rr(function(){return 1},Math.asin);(n.geo.orthographic=function(){return pt(yh)}).raw=yh;ph=rr(function(n){return 1/(1+n)},function(n){return 2*Math.atan(n)});(n.geo.stereographic=function(){return pt(ph)}).raw=ph;lo.invert=function(n,t){return[Math.atan2(nb(n),Math.cos(t)),ri(Math.sin(t)/tb(n))]};(n.geo.transverseMercator=function(){return ya(lo)}).raw=lo;n.geom={};n.svg={};n.svg.line=function(){return pa(a)};wf=n.map({linear:p,"linear-closed":rk,step:uk,"step-before":ao,"step-after":vo,basis:wa,"basis-open":sk,"basis-closed":hk,bundle:ck,cardinal:ok,"cardinal-open":fk,"cardinal-closed":ek,monotone:vk});wf.forEach(function(n,t){t.key=n;t.closed=/-closed$/.test(n)});var cp=[0,2/3,1/3,0],lp=[0,1/3,2/3,0],ti=[0,1/6,2/3,1/6];n.geom.hull=function(n){function t(n){var d;if(n.length<3)return[];var u,g,t,o,l,a,p,w,b,v,k,c,tt=f(r),rt=f(i),y=n.length,it=y-1,e=[],h=[],s=0;if(tt===nt&&i===ft)u=n;else for(t=0,u=[];y>t;++t)u.push([+tt.call(this,g=n[t],t),+rt.call(this,g,t)]);for(t=1;y>t;++t)(u[t][1]<u[s][1]||u[t][1]==u[s][1]&&u[t][0]<u[s][0])&&(s=t);for(t=0;y>t;++t)t!==s&&(a=u[t][1]-u[s][1],l=u[t][0]-u[s][0],e.push({angle:Math.atan2(a,l),index:t}));for(e.sort(function(n,t){return n.angle-t.angle}),k=e[0].angle,v=e[0].index,b=0,t=1;it>t;++t){if(o=e[t].index,k==e[t].angle){if(l=u[v][0]-u[s][0],a=u[v][1]-u[s][1],p=u[o][0]-u[s][0],w=u[o][1]-u[s][1],l*l+a*a>=p*p+w*w){e[t].index=-1;continue}e[b].index=-1}k=e[t].angle;b=t;v=o}for(h.push(s),t=0,o=0;2>t;++o)e[o].index>-1&&(h.push(e[o].index),t++);for(c=h.length;it>o;++o)if(!(e[o].index<0)){for(;!yk(h[c-2],h[c-1],e[o].index,u);)--c;h[c++]=e[o].index}for(d=[],t=c-1;t>=0;--t)d.push(n[h[t]]);return d}var r=nt,i=ft;return arguments.length?t(n):(t.x=function(n){return arguments.length?(r=n,t):r},t.y=function(n){return arguments.length?(i=n,t):i},t)};n.geom.polygon=function(n){return pu(n,lr),n};lr=n.geom.polygon.prototype=[];lr.area=function(){for(var t,i=-1,r=this.length,n=this[r-1],u=0;++i<r;)t=n,n=this[i],u+=t[1]*n[0]-t[0]*n[1];return.5*u};lr.centroid=function(n){var i,r,u=-1,f=this.length,e=0,o=0,t=this[f-1];for(arguments.length||(n=-1/(6*this.area()));++u<f;)i=t,t=this[u],r=i[0]*t[1]-t[0]*i[1],e+=(i[0]+t[0])*r,o+=(i[1]+t[1])*r;return[e*n,o*n]};lr.clip=function(n){for(var f,e,o,t,i,r,s=ka(n),h=-1,c=this.length-ka(this),u=this[c-1];++h<c;){for(f=n.slice(),n.length=0,t=this[h],i=f[(o=f.length-s)-1],e=-1;++e<o;)r=f[e],bo(r,u,t)?(bo(i,u,t)||n.push(ba(i,r,u,t)),n.push(r)):bo(i,u,t)&&n.push(ba(i,r,u,t)),i=r;s&&n.push(n[0]);u=t}return n};n.geom.delaunay=function(n){var t=n.map(function(){return[]}),i=[];return ko(n,function(i){t[i.region.l.index].push(n[i.region.r.index])}),t.forEach(function(t,r){var f=n[r],o=f[0],s=f[1],u,e;for(t.forEach(function(n){n.angle=Math.atan2(n[0]-o,n[1]-s)}),t.sort(function(n,t){return n.angle-t.angle}),u=0,e=t.length-1;e>u;u++)i.push([f,t[u],t[u+1]])}),i};n.geom.voronoi=function(t){function r(t){var c,a,s,h=t.map(function(){return[]}),v=f(e),y=f(o),l=t.length,r=1e6;if(v===nt&&y===ft)c=t;else for(c=new Array(l),s=0;l>s;++s)c[s]=[+v.call(this,a=t[s],s),+y.call(this,a,s)];if(ko(c,function(n){var t,i,u,f,e,o,s,c;1===n.a&&n.b>=0?(t=n.ep.r,i=n.ep.l):(t=n.ep.l,i=n.ep.r);1===n.a?(e=t?t.y:-r,u=n.c-n.b*e,o=i?i.y:r,f=n.c-n.b*o):(u=t?t.x:-r,e=n.c-n.a*u,f=i?i.x:r,o=n.c-n.a*f);s=[u,e];c=[f,o];h[n.region.l.index].push(s,c);h[n.region.r.index].push(s,c)}),h=h.map(function(t,r){var e=c[r][0],o=c[r][1],u=t.map(function(n){return Math.atan2(n[0]-e,n[1]-o)}),f=n.range(t.length).sort(function(n,t){return u[n]-u[t]});return f.filter(function(n,t){return!t||u[n]-u[f[t-1]]>i}).map(function(n){return t[n]})}),h.forEach(function(n,t){var l=n.length,s,u,h;if(!l)return n.push([-r,-r],[-r,r],[r,r],[r,-r]);if(!(l>2)){var a=c[t],v=n[0],y=n[1],p=a[0],w=a[1],f=v[0],e=v[1],b=y[0],k=y[1],d=Math.abs(b-f),o=k-e;Math.abs(o)<i?(u=e>w?-r:r,n.push([-r,u],[r,u])):i>d?(s=f>p?-r:r,n.push([s,-r],[s,r])):(u=(f-p)*(k-e)>(b-f)*(e-w)?r:-r,h=Math.abs(o)-d,Math.abs(h)<i?n.push([0>o?u:-u,u]):(h>0&&(u*=-1),n.push([-r,u],[r,u])))}}),u)for(s=0;l>s;++s)u.clip(h[s]);for(s=0;l>s;++s)h[s].point=t[s];return h}var e=nt,o=ft,u=null;return arguments.length?r(t):(r.x=function(n){return arguments.length?(e=n,r):e},r.y=function(n){return arguments.length?(o=n,r):o},r.clipExtent=function(t){if(!arguments.length)return u&&[u[0],u[2]];if(null==t)u=null;else{var i=+t[0][0],f=+t[0][1],e=+t[1][0],o=+t[1][1];u=n.geom.polygon([[i,f],[i,o],[e,o],[e,f]])}return r},r.size=function(n){return arguments.length?r.clipExtent(n&&[[0,0],n]):u&&u[2]},r.links=function(n){var i,u,t,r=n.map(function(){return[]}),s=[],h=f(e),c=f(o),l=n.length;if(h===nt&&c===ft)i=n;else for(i=new Array(l),t=0;l>t;++t)i[t]=[+h.call(this,u=n[t],t),+c.call(this,u,t)];return ko(i,function(t){var i=t.region.l.index,u=t.region.r.index;r[i][u]||(r[i][u]=r[u][i]=!0,s.push({source:n[i],target:n[u]}))}),s},r.triangles=function(t){if(e===nt&&o===ft)return n.geom.delaunay(t);for(var r,u=new Array(s),h=f(e),c=f(o),i=-1,s=t.length;++i<s;)(u[i]=[+h.call(this,r=t[i],i),+c.call(this,r,i)]).data=r;return n.geom.delaunay(u).map(function(n){return n.map(function(n){return n.data})})},r)};bf={l:"r",r:"l"};n.geom.quadtree=function(n,t,i,r,u){function e(n){function tt(n,t,i,r,u,f,e,o){var s,h,c;isNaN(i)||isNaN(r)||(n.leaf?(s=n.x,h=n.y,null!=s?Math.abs(s-i)+Math.abs(h-r)<.01?g(n,t,i,r,u,f,e,o):(c=n.point,n.x=n.y=n.point=null,g(n,c,s,h,u,f,e,o),g(n,t,i,r,u,f,e,o)):(n.x=i,n.y=r,n.point=t)):g(n,t,i,r,u,f,e,o))}function g(n,t,i,r,u,f,e,o){var s=.5*(u+e),h=.5*(f+o),c=i>=s,l=r>=h,a=(l<<1)+c;n.leaf=!1;n=n.nodes[a]||(n.nodes[a]=da());c?u=s:e=s;l?f=h:o=h;tt(n,t,i,r,u,f,e,o)}var c,k,d,e,nt,l,a,v,y,ut=f(o),ft=f(s),w,b,it,rt,p;if(null!=t)l=t,a=i,v=r,y=u;else if(v=y=-(l=a=1/0),k=[],d=[],nt=n.length,h)for(e=0;nt>e;++e)c=n[e],c.x<l&&(l=c.x),c.y<a&&(a=c.y),c.x>v&&(v=c.x),c.y>y&&(y=c.y),k.push(c.x),d.push(c.y);else for(e=0;nt>e;++e)w=+ut(c=n[e],e),b=+ft(c,e),l>w&&(l=w),a>b&&(a=b),w>v&&(v=w),b>y&&(y=b),k.push(w),d.push(b);if(it=v-l,rt=y-a,it>rt?y=a+it:v=l+rt,p=da(),p.add=function(n){tt(p,n,+ut(n,++e),+ft(n,e),l,a,v,y)},p.visit=function(n){ur(n,p,l,a,v,y)},e=-1,null==t){for(;++e<nt;)tt(p,n[e],k[e],d[e],l,a,v,y);--e}else n.forEach(p.add);return k=d=n=c=null,p}var h,o=nt,s=ft;return(h=arguments.length)?(o=pk,s=wk,3===h&&(u=i,r=t,i=t=0),e(n)):(e.x=function(n){return arguments.length?(o=n,e):o},e.y=function(n){return arguments.length?(s=n,e):s},e.extent=function(n){return arguments.length?(null==n?t=i=r=u=null:(t=+n[0][0],i=+n[0][1],r=+n[1][0],u=+n[1][1]),e):null==t?null:[[t,i],[r,u]]},e.size=function(n){return arguments.length?(null==n?t=i=r=u=null:(t=i=0,r=+n[0],u=+n[1]),e):null==t?null:[r-t,u-i]},e)};n.interpolateRgb=go;n.interpolateObject=ga;n.interpolateNumber=et;n.interpolateString=nv;ar=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g;n.interpolate=ei;n.interpolators=[function(n,t){var i=typeof t;return("string"===i?sr.has(t)||/^(#|rgb\(|hsl\()/.test(t)?go:nv:t instanceof vi?go:"object"===i?Array.isArray(t)?tv:ga:et)(n,t)}];n.interpolateArray=tv;var ap=function(){return a},sit=n.map({linear:ap,poly:nd,quad:function(){return kk},cubic:function(){return dk},sin:function(){return td},exp:function(){return id},circle:function(){return rd},elastic:ud,back:fd,bounce:function(){return ed}}),hit=n.map({"in":a,out:iv,"in-out":rv,"out-in":function(n){return rv(iv(n))}});n.ease=function(n){var t=n.indexOf("-"),i=t>=0?n.substring(0,t):n,r=t>=0?n.substring(t+1):"in";return i=sit.get(i)||ap,r=hit.get(r)||a,bk(r(i.apply(null,Array.prototype.slice.call(arguments,1))))};n.interpolateHcl=od;n.interpolateHsl=sd;n.interpolateLab=hd;n.interpolateRound=uv;n.transform=function(t){var i=b.createElementNS(n.ns.prefix.svg,"g");return(n.transform=function(n){if(null!=n){i.setAttribute("transform",n);var t=i.transform.baseVal.consolidate()}return new fv(t?t.matrix:vp)})(t)};fv.prototype.toString=function(){return"translate("+this.translate+")rotate("+this.rotate+")skewX("+this.skew+")scale("+this.scale+")"};vp={a:1,b:0,c:0,d:1,e:0,f:0};n.interpolateTransform=sv;n.layout={};n.layout.bundle=function(){return function(n){for(var t=[],i=-1,r=n.length;++i<r;)t.push(vd(n[i]));return t}};n.layout.chord=function(){function l(){var y,i,k,l,v,d={},g=[],it=n.range(u),nt=[],w,b;for(r=[],f=[],y=0,l=-1;++l<u;){for(i=0,v=-1;++v<u;)i+=e[l][v];g.push(i);nt.push(n.range(u));y+=i}for(o&&it.sort(function(n,t){return o(g[n],g[t])}),s&&nt.forEach(function(n,t){n.sort(function(n,i){return s(e[t][n],e[t][i])})}),y=(2*t-c*u)/y,i=0,l=-1;++l<u;){for(k=i,v=-1;++v<u;){var p=it[l],tt=nt[p][v],rt=e[p][tt],ut=i,ft=i+=rt*y;d[p+"-"+tt]={index:p,subindex:tt,startAngle:ut,endAngle:ft,value:rt}}f[p]={index:p,startAngle:k,endAngle:i,value:(i-k)/y};i+=c}for(l=-1;++l<u;)for(v=l-1;++v<u;)w=d[l+"-"+v],b=d[v+"-"+l],(w.value||b.value)&&r.push(w.value<b.value?{source:b,target:w}:{source:w,target:b});h&&a()}function a(){r.sort(function(n,t){return h((n.source.value+n.target.value)/2,(t.source.value+t.target.value)/2)})}var r,f,e,u,o,s,h,i={},c=0;return i.matrix=function(n){return arguments.length?(u=(e=n)&&e.length,r=f=null,i):e},i.padding=function(n){return arguments.length?(c=n,r=f=null,i):c},i.sortGroups=function(n){return arguments.length?(o=n,r=f=null,i):o},i.sortSubgroups=function(n){return arguments.length?(s=n,r=null,i):s},i.sortChords=function(n){return arguments.length?(h=n,r&&a(),i):h},i.chords=function(){return r||l(),r},i.groups=function(){return f||l(),f},i};n.layout.force=function(){function k(n){return function(t,i,r,u){var f;if(t.point!==n){var o=t.cx-n.x,s=t.cy-n.y,e=1/Math.sqrt(o*o+s*s);if(b>(u-i)*e)return f=t.charge*e*e,n.px-=o*f,n.py-=s*f,!0;t.point&&isFinite(e)&&(f=t.pointCharge*e*e,n.px-=o*f,n.py-=s*f)}return!t.charge}}function d(i){i.px=n.event.x;i.py=n.event.y;t.resume()}var h,r,c,l,v,t={},y=n.dispatch("start","tick","end"),f=[1,1],p=.9,o=yp,s=pp,e=-30,w=.1,b=.8,i=[],u=[];return t.tick=function(){if((r*=.99)<.005)return y.end({type:"end",alpha:r=0}),!0;for(var tt,t,b,g,d,s,h,a,nt=i.length,it=u.length,o=0;it>o;++o)t=u[o],b=t.source,g=t.target,h=g.x-b.x,a=g.y-b.y,(d=h*h+a*a)&&(d=r*l[o]*((d=Math.sqrt(d))-c[o])/d,h*=d,a*=d,g.x-=h*(s=b.weight/(g.weight+b.weight)),g.y-=a*s,b.x+=h*(s=1-s),b.y+=a*s);if((s=r*w)&&(h=f[0]/2,a=f[1]/2,o=-1,s))for(;++o<nt;)t=i[o],t.x+=(h-t.x)*s,t.y+=(a-t.y)*s;if(e)for(cv(tt=n.geom.quadtree(i),r,v),o=-1;++o<nt;)(t=i[o]).fixed||tt.visit(k(t));for(o=-1;++o<nt;)t=i[o],t.fixed?(t.x=t.px,t.y=t.py):(t.x-=(t.px-(t.px=t.x))*p,t.y-=(t.py-(t.py=t.y))*p);y.tick({type:"tick",alpha:r})},t.nodes=function(n){return arguments.length?(i=n,t):i},t.links=function(n){return arguments.length?(u=n,t):u},t.size=function(n){return arguments.length?(f=n,t):f},t.linkDistance=function(n){return arguments.length?(o="function"==typeof n?n:+n,t):o},t.distance=t.linkDistance,t.linkStrength=function(n){return arguments.length?(s="function"==typeof n?n:+n,t):s},t.friction=function(n){return arguments.length?(p=+n,t):p},t.charge=function(n){return arguments.length?(e="function"==typeof n?n:+n,t):e},t.gravity=function(n){return arguments.length?(w=+n,t):w},t.theta=function(n){return arguments.length?(b=+n,t):b},t.alpha=function(i){return arguments.length?(i=+i,r?r=i>0?i:0:i>0&&(y.start({type:"start",alpha:r=i}),n.timer(t.tick)),t):r},t.start=function(){function w(t,i){for(var r,u=b(n),f=-1,e=u.length;++f<e;)if(!isNaN(r=u[f][t]))return r;return Math.random()*i}function b(){if(!a){for(a=[],h=0;p>h;++h)a[h]=[];for(h=0;y>h;++h){var t=u[h];a[t.source.index].push(t.target);a[t.target.index].push(t.source)}}return a[n]}for(var h,a,r,p=i.length,y=u.length,k=f[0],d=f[1],n=0;p>n;++n)(r=i[n]).index=n,r.weight=0;for(n=0;y>n;++n)r=u[n],"number"==typeof r.source&&(r.source=i[r.source]),"number"==typeof r.target&&(r.target=i[r.target]),++r.source.weight,++r.target.weight;for(n=0;p>n;++n)r=i[n],isNaN(r.x)&&(r.x=w("x",k)),isNaN(r.y)&&(r.y=w("y",d)),isNaN(r.px)&&(r.px=r.x),isNaN(r.py)&&(r.py=r.y);if(c=[],"function"==typeof o)for(n=0;y>n;++n)c[n]=+o.call(this,u[n],n);else for(n=0;y>n;++n)c[n]=o;if(l=[],"function"==typeof s)for(n=0;y>n;++n)l[n]=+s.call(this,u[n],n);else for(n=0;y>n;++n)l[n]=s;if(v=[],"function"==typeof e)for(n=0;p>n;++n)v[n]=+e.call(this,i[n],n);else for(n=0;p>n;++n)v[n]=e;return t.resume()},t.resume=function(){return t.alpha(.1)},t.stop=function(){return t.alpha(0)},t.drag=function(){return h||(h=n.behavior.drag().origin(a).on("dragstart.force",pd).on("drag.force",d).on("dragend.force",wd)),arguments.length?(this.on("mouseover.force",bd).on("mouseout.force",kd).call(h),void 0):h},n.rebind(t,y,"on")};yp=20;pp=1;n.layout.hierarchy=function(){function u(f,e,o){var h=r.call(n,f,e);if(f.depth=e,o.push(f),h&&(c=h.length)){for(var c,s,l=-1,a=f.children=[],v=0,y=e+1;++l<c;)s=u(h[l],y,o),s.parent=f,a.push(s),v+=s.value;i&&a.sort(i);t&&(f.value=v)}else t&&(f.value=+t.call(n,f,e)||0);return f}function f(i,r){var e=i.children,u=0,s,o,h;if(e&&(s=e.length))for(o=-1,h=r+1;++o<s;)u+=f(e[o],h);else t&&(u=+t.call(n,i,r)||0);return t&&(i.value=u),u}function n(n){var t=[];return u(n,0,t),t}var i=ng,r=dd,t=gd;return n.sort=function(t){return arguments.length?(i=t,n):i},n.children=function(t){return arguments.length?(r=t,n):r},n.value=function(i){return arguments.length?(t=i,n):t},n.revalue=function(n){return f(n,0),n},n};n.layout.partition=function(){function r(n,t,i,u){var f=n.children,o,s,h,e;if(n.x=t,n.y=n.depth*u,n.dx=i,n.dy=u,f&&(o=f.length))for(e=-1,i=n.value?i/n.value:0;++e<o;)r(s=f[e],t,h=s.value*i,u),t+=h}function u(n){var t=n.children,i=0,f,r;if(t&&(f=t.length))for(r=-1;++r<f;)i=Math.max(i,u(t[r]));return 1+i}function i(n,i){var e=f.call(this,n,i);return r(e[0],0,t[0],t[1]/u(e[0])),e}var f=n.layout.hierarchy(),t=[1,1];return i.size=function(n){return arguments.length?(t=n,i):t},fr(i,f)};n.layout.pie=function(){function i(t){var o=t.map(function(n,t){return+e.call(i,n,t)}),s=+("function"==typeof u?u.apply(this,arguments):u),l=(("function"==typeof f?f.apply(this,arguments):f)-s)/n.sum(o),c=n.range(t.length),h;return null!=r&&c.sort(r===wh?function(n,t){return o[t]-o[n]}:function(n,i){return r(t[n],t[i])}),h=[],c.forEach(function(n){var i;h[n]={data:t[n],value:i=o[n],startAngle:s,endAngle:s+=i*l}}),h}var e=Number,r=wh,u=0,f=2*t;return i.value=function(n){return arguments.length?(e=n,i):e},i.sort=function(n){return arguments.length?(r=n,i):r},i.startAngle=function(n){return arguments.length?(u=n,i):u},i.endAngle=function(n){return arguments.length?(f=n,i):f},i};wh={};n.layout.stack=function(){function t(s,h){var l=s.map(function(n,i){return r.call(t,n,i)}),a=l.map(function(n){return n.map(function(n,i){return[e.call(t,n,i),o.call(t,n,i)]})}),y=u.call(t,a,h);l=n.permute(l,y);a=n.permute(a,y);for(var v,p,w=f.call(t,a,h),b=l.length,k=l[0].length,c=0;k>c;++c)for(i.call(t,l[0][c],p=w[c],a[0][c][1]),v=1;b>v;++v)i.call(t,l[v][c],p+=a[v-1][c][1],a[v][c][1]);return s}var r=a,u=ns,f=ts,i=ug,e=ig,o=rg;return t.values=function(n){return arguments.length?(r=n,t):r},t.order=function(n){return arguments.length?(u="function"==typeof n?n:wp.get(n)||ns,t):u},t.offset=function(n){return arguments.length?(f="function"==typeof n?n:bp.get(n)||ts,t):f},t.x=function(n){return arguments.length?(e=n,t):e},t.y=function(n){return arguments.length?(o=n,t):o},t.out=function(n){return arguments.length?(i=n,t):i},t};wp=n.map({"inside-out":function(t){for(var i,u=t.length,f=t.map(fg),e=t.map(eg),l=n.range(u).sort(function(n,t){return f[n]-f[t]}),o=0,s=0,h=[],c=[],r=0;u>r;++r)i=l[r],s>o?(o+=e[i],h.push(i)):(s+=e[i],c.push(i));return c.reverse().concat(h)},reverse:function(t){return n.range(t.length).reverse()},"default":ns});bp=n.map({silhouette:function(n){for(var r,i,s=n.length,f=n[0].length,e=[],u=0,o=[],t=0;f>t;++t){for(r=0,i=0;s>r;r++)i+=n[r][t][1];i>u&&(u=i);e.push(i)}for(t=0;f>t;++t)o[t]=(u-e[t])/2;return o},wiggle:function(n){var i,t,r,u,h,c,f,e,o,a=n.length,l=n[0],v=l.length,s=[];for(s[0]=e=o=0,t=1;v>t;++t){for(i=0,u=0;a>i;++i)u+=n[i][t][1];for(i=0,h=0,f=l[t][0]-l[t-1][0];a>i;++i){for(r=0,c=(n[i][t][1]-n[i][t-1][1])/(2*f);i>r;++r)c+=(n[r][t][1]-n[r][t-1][1])/f;h+=c*n[i][t][1]}s[t]=e-=u?h/u*f:0;o>e&&(o=e)}for(t=0;v>t;++t)s[t]-=o;return s},expand:function(n){for(var t,r,u=n.length,f=n[0].length,o=1/u,e=[],i=0;f>i;++i){for(t=0,r=0;u>t;t++)r+=n[t][i][1];if(r)for(t=0;u>t;t++)n[t][i][1]/=r;else for(t=0;u>t;t++)n[t][i][1]=o}for(i=0;f>i;++i)e[i]=0;return e},zero:ts});n.layout.histogram=function(){function t(t,f){for(var o,s,l=[],h=t.map(r,this),a=u.call(this,h,f),c=e.call(this,a,h,f),f=-1,y=h.length,v=c.length-1,p=i?1:1/y;++f<v;)o=l[f]=[],o.dx=c[f+1]-(o.x=c[f]),o.y=0;if(v>0)for(f=-1;++f<y;)s=h[f],s>=a[0]&&s<=a[1]&&(o=l[n.bisect(c,s,1,v)-1],o.y+=p,o.push(t[f]));return l}var i=!0,r=Number,u=hg,e=sg;return t.value=function(n){return arguments.length?(r=n,t):r},t.range=function(n){return arguments.length?(u=f(n),t):u},t.bins=function(n){return arguments.length?(e="number"==typeof n?function(t){return lv(t,n)}:f(n),t):e},t.frequency=function(n){return arguments.length?(i=!!n,t):i},t};n.layout.tree=function(){function i(n,i){function h(n,t){var f=n.children,i=n._tree,o;if(f&&(s=f.length)){for(var s,e,u,c=f[0],l=c,a=-1;++a<s;)u=f[a],h(u,e),l=v(u,e,l),e=u;vg(n);o=.5*(c._tree.prelim+u._tree.prelim);t?(i.prelim=t._tree.prelim+r(n,t),i.mod=i.prelim-o):i.prelim=o}else t&&(i.prelim=t._tree.prelim+r(n,t))}function c(n,t){var i,u,r;if(n.x=n._tree.prelim+t,i=n.children,i&&(u=i.length))for(r=-1,t+=n._tree.mod;++r<u;)c(i[r],t)}function v(n,t,i){if(t){for(var s,f=n,e=n,u=t,o=n.parent.children[0],h=f._tree.mod,c=e._tree.mod,l=u._tree.mod,a=o._tree.mod;u=rs(u),f=is(f),u&&f;)o=is(o),e=rs(e),e._tree.ancestor=n,s=u._tree.prelim+l-f._tree.prelim-h+r(u,f),s>0&&(yg(pg(u,n,i),n,s),h+=s,c+=s),l+=u._tree.mod,h+=f._tree.mod,a+=o._tree.mod,c+=e._tree.mod;u&&!rs(e)&&(e._tree.thread=u,e._tree.mod+=l-c);f&&!is(o)&&(o._tree.thread=f,o._tree.mod+=h-a,i=n)}return i}var l=f.call(this,n,i),e=l[0];ot(e,function(n,t){n._tree={ancestor:n,prelim:0,mod:0,change:0,shift:0,number:t?t._tree.number+1:0}});h(e);c(e,-e._tree.prelim);var o=eu(e,lg),s=eu(e,cg),y=eu(e,ag),a=o.x-r(o,s)/2,p=s.x+r(s,o)/2,w=y.depth||1;return ot(e,u?function(n){n.x*=t[0];n.y=n.depth*t[1];delete n._tree}:function(n){n.x=(n.x-a)/(p-a)*t[0];n.y=n.depth/w*t[1];delete n._tree}),l}var f=n.layout.hierarchy().sort(null).value(null),r=av,t=[1,1],u=!1;return i.separation=function(n){return arguments.length?(r=n,i):r},i.size=function(n){return arguments.length?(u=null==(t=n),i):u?null:t},i.nodeSize=function(n){return arguments.length?(u=null!=(t=n),i):u?t:null},fr(i,f)};n.layout.pack=function(){function i(n,i){var c=f.call(this,n,i),e=c[0],o=u[0],s=u[1],l=null==t?Math.sqrt:"function"==typeof t?t:function(){return t},h;return(e.x=e.y=0,ot(e,function(n){n.r=+l(n.value)}),ot(e,pv),r)&&(h=r*(t?1:Math.max(2*e.r/o,2*e.r/s))/2,ot(e,function(n){n.r+=h}),ot(e,pv),ot(e,function(n){n.r-=h})),wv(e,o/2,s/2,t?1:1/Math.max(2*e.r/o,2*e.r/s)),c}var t,f=n.layout.hierarchy().sort(wg),r=0,u=[1,1];return i.size=function(n){return arguments.length?(u=n,i):u},i.radius=function(n){return arguments.length?(t=null==n||"function"==typeof n?n:+n,i):t},i.padding=function(n){return arguments.length?(r=+n,i):r},fr(i,f)};n.layout.cluster=function(){function i(n,i){var o,c=f.call(this,n,i),e=c[0],a=0;ot(e,function(n){var t=n.children;t&&t.length?(n.x=gg(t),n.y=dg(t)):(n.x=o?a+=r(n,o):0,n.y=0,o=n)});var s=kv(e),h=dv(e),l=s.x-r(s,h)/2,v=h.x+r(h,s)/2;return ot(e,u?function(n){n.x=(n.x-e.x)*t[0];n.y=(e.y-n.y)*t[1]}:function(n){n.x=(n.x-l)/(v-l)*t[0];n.y=(1-(e.y?n.y/e.y:1))*t[1]}),c}var f=n.layout.hierarchy().sort(null).value(null),r=av,t=[1,1],u=!1;return i.separation=function(n){return arguments.length?(r=n,i):r},i.size=function(n){return arguments.length?(u=null==(t=n),i):u?null:t},i.nodeSize=function(n){return arguments.length?(u=null!=(t=n),i):u?t:null},fr(i,f)};n.layout.treemap=function(){function o(n,t){for(var r,i,u=-1,f=n.length;++u<f;)i=(r=n[u]).value*(0>t?0:t),r.area=isNaN(i)||0>=i?0:i}function a(n){var u=n.children;if(u&&u.length){var l,v,y,r=c(n),t=[],f=u.slice(),h=1/0,e="slice"===i?r.dx:"dice"===i?r.dy:"slice-dice"===i?1&n.depth?r.dy:r.dx:Math.min(r.dx,r.dy);for(o(f,r.dx*r.dy/n.value),t.area=0;(y=f.length)>0;)t.push(l=f[y-1]),t.area+=l.area,"squarify"!==i||(v=p(t,e))<=h?(f.pop(),h=v):(t.area-=t.pop().area,s(t,e,r,!1),e=Math.min(r.dx,r.dy),t.length=t.area=0,h=1/0);t.length&&(s(t,e,r,!0),t.length=t.area=0);u.forEach(a)}}function v(n){var u=n.children;if(u&&u.length){var i,r=c(n),f=u.slice(),t=[];for(o(f,r.dx*r.dy/n.value),t.area=0;i=f.pop();)t.push(i),t.area+=i.area,null!=i.z&&(s(t,i.z?r.dx:r.dy,r,!f.length),t.length=t.area=0);u.forEach(v)}}function p(n,t){for(var i,r=n.area,u=0,f=1/0,o=-1,s=n.length;++o<s;)(i=n[o].area)&&(f>i&&(f=i),i>u&&(u=i));return r*=r,t*=t,r?Math.max(t*u*e/r,r/(t*f*e)):1/0}function s(n,t,i,r){var f,h=-1,c=n.length,o=i.x,s=i.y,e=t?u(n.area/t):0;if(t==i.dx){for((r||e>i.dy)&&(e=i.dy);++h<c;)f=n[h],f.x=o,f.y=s,f.dy=e,o+=f.dx=Math.min(i.x+i.dx-o,e?u(f.area/e):0);f.z=!0;f.dx+=i.x+i.dx-o;i.y+=e;i.dy-=e}else{for((r||e>i.dx)&&(e=i.dx);++h<c;)f=n[h],f.x=o,f.y=s,f.dx=e,s+=f.dy=Math.min(i.y+i.dy-s,e?u(f.area/e):0);f.z=!1;f.dy+=i.y+i.dy-s;i.x+=e;i.dx-=e}}function t(n){var i=r||h(n),t=i[0];return t.x=0,t.y=0,t.dx=f[0],t.dy=f[1],r&&h.revalue(t),o([t],t.dx*t.dy/t.value),(r?v:a)(t),l&&(r=i),i}var r,h=n.layout.hierarchy(),u=Math.round,f=[1,1],y=null,c=fs,l=!1,i="squarify",e=.5*(1+Math.sqrt(5));return t.size=function(n){return arguments.length?(f=n,t):f},t.padding=function(n){function u(i){var r=n.call(t,i,i.depth);return null==r?fs(i):gv(i,"number"==typeof r?[r,r,r,r]:r)}function i(t){return gv(t,n)}if(!arguments.length)return y;var r;return c=null==(y=n)?fs:"function"==(r=typeof n)?u:"number"===r?(n=[n,n,n,n],i):i,t},t.round=function(n){return arguments.length?(u=n?Math.round:Number,t):u!=Number},t.sticky=function(n){return arguments.length?(l=n,r=null,t):l},t.ratio=function(n){return arguments.length?(e=n,t):e},t.mode=function(n){return arguments.length?(i=n+"",t):i},fr(t,h)};n.random={normal:function(n,t){var i=arguments.length;return 2>i&&(t=1),1>i&&(n=0),function(){var r,u,i;do r=2*Math.random()-1,u=2*Math.random()-1,i=r*r+u*u;while(!i||i>1);return n+t*r*Math.sqrt(-2*Math.log(i)/i)}},logNormal:function(){var t=n.random.normal.apply(n,arguments);return function(){return Math.exp(t())}},irwinHall:function(n){return function(){for(var t=0,i=0;n>i;i++)t+=Math.random();return t/n}}};n.scale={};kp={floor:a,ceil:a};n.scale.linear=function(){return ny([0,1],[0,1],ei,!1)};n.scale.log=function(){return iy(n.scale.linear().domain([0,1]),10,!0,[1,10])};bh=n.format(".0e");dp={floor:function(n){return-Math.ceil(-n)},ceil:function(n){return-Math.floor(-n)}};n.scale.pow=function(){return ry(n.scale.linear(),1,[0,1])};n.scale.sqrt=function(){return n.scale.pow().exponent(.5)};n.scale.ordinal=function(){return uy([],{t:"range",a:[[]]})};n.scale.category10=function(){return n.scale.ordinal().range(cit)};n.scale.category20=function(){return n.scale.ordinal().range(lit)};n.scale.category20b=function(){return n.scale.ordinal().range(ait)};n.scale.category20c=function(){return n.scale.ordinal().range(vit)};var cit=[2062260,16744206,2924588,14034728,9725885,9197131,14907330,8355711,12369186,1556175].map(br),lit=[2062260,11454440,16744206,16759672,2924588,10018698,14034728,16750742,9725885,12955861,9197131,12885140,14907330,16234194,8355711,13092807,12369186,14408589,1556175,10410725].map(br),ait=[3750777,5395619,7040719,10264286,6519097,9216594,11915115,13556636,9202993,12426809,15186514,15190932,8666169,11356490,14049643,15177372,8077683,10834324,13528509,14589654].map(br),vit=[3244733,7057110,10406625,13032431,15095053,16616764,16625259,16634018,3253076,7652470,10607003,13101504,7695281,10394312,12369372,14342891,6513507,9868950,12434877,14277081].map(br);n.scale.quantile=function(){return fy([],[])};n.scale.quantize=function(){return ey(0,1,[0,1])};n.scale.threshold=function(){return oy([.5],[0,1])};n.scale.identity=function(){return sy([0,1])};n.svg.arc=function(){function n(){var f=i.apply(this,arguments),n=r.apply(this,arguments),o=u.apply(this,arguments)+ii,s=e.apply(this,arguments)+ii,h=(o>s&&(h=o,o=s,s=h),s-o),c=t>h?"0":"1",l=Math.cos(o),a=Math.sin(o),v=Math.cos(s),y=Math.sin(s);return h>=gp?f?"M0,"+n+"A"+n+","+n+" 0 1,1 0,"+-n+"A"+n+","+n+" 0 1,1 0,"+n+"M0,"+f+"A"+f+","+f+" 0 1,0 0,"+-f+"A"+f+","+f+" 0 1,0 0,"+f+"Z":"M0,"+n+"A"+n+","+n+" 0 1,1 0,"+-n+"A"+n+","+n+" 0 1,1 0,"+n+"Z":f?"M"+n*l+","+n*a+"A"+n+","+n+" 0 "+c+",1 "+n*v+","+n*y+"L"+f*v+","+f*y+"A"+f+","+f+" 0 "+c+",0 "+f*l+","+f*a+"Z":"M"+n*l+","+n*a+"A"+n+","+n+" 0 "+c+",1 "+n*v+","+n*y+"L0,0Z"}var i=fn,r=en,u=hy,e=cy;return n.innerRadius=function(t){return arguments.length?(i=f(t),n):i},n.outerRadius=function(t){return arguments.length?(r=f(t),n):r},n.startAngle=function(t){return arguments.length?(u=f(t),n):u},n.endAngle=function(t){return arguments.length?(e=f(t),n):e},n.centroid=function(){var n=(i.apply(this,arguments)+r.apply(this,arguments))/2,t=(u.apply(this,arguments)+e.apply(this,arguments))/2+ii;return[Math.cos(t)*n,Math.sin(t)*n]},n};ii=-t/2;gp=2*t-1e-6;n.svg.line.radial=function(){var n=pa(ly);return n.radius=n.x,delete n.x,n.angle=n.y,delete n.y,n};ao.reverse=vo;vo.reverse=ao;n.svg.area=function(){return ay(a)};n.svg.area.radial=function(){var n=ay(ly);return n.radius=n.x,delete n.x,n.innerRadius=n.x0,delete n.x0,n.outerRadius=n.x1,delete n.x1,n.angle=n.y,delete n.y,n.startAngle=n.y0,delete n.y0,n.endAngle=n.y1,delete n.y1,n};n.svg.chord=function(){function n(n,t){var f=h(this,r,n,t),e=h(this,u,n,t);return"M"+f.p0+c(f.r,f.p1,f.a1-f.a0)+(l(f,e)?i(f.r,f.p1,f.r,f.p0):i(f.r,f.p1,e.r,e.p0)+c(e.r,e.p1,e.a1-e.a0)+i(e.r,e.p1,f.r,f.p0))+"Z"}function h(n,t,i,r){var f=t.call(n,i,r),u=e.call(n,f,r),h=o.call(n,f,r)+ii,c=s.call(n,f,r)+ii;return{r:u,a0:h,a1:c,p0:[u*Math.cos(h),u*Math.sin(h)],p1:[u*Math.cos(c),u*Math.sin(c)]}}function l(n,t){return n.a0==t.a0&&n.a1==t.a1}function c(n,i,r){return"A"+n+","+n+" 0 "+ +(r>t)+",1 "+i}function i(n,t,i,r){return"Q 0,0 "+r}var r=ho,u=co,e=on,o=hy,s=cy;return n.radius=function(t){return arguments.length?(e=f(t),n):e},n.source=function(t){return arguments.length?(r=f(t),n):r},n.target=function(t){return arguments.length?(u=f(t),n):u},n.startAngle=function(t){return arguments.length?(o=f(t),n):o},n.endAngle=function(t){return arguments.length?(s=f(t),n):s},n};n.svg.diagonal=function(){function n(n,u){var e=t.call(this,n,u),o=i.call(this,n,u),s=(e.y+o.y)/2,f=[e,{x:e.x,y:s},{x:o.x,y:s},o];return f=f.map(r),"M"+f[0]+"C"+f[1]+" "+f[2]+" "+f[3]}var t=ho,i=co,r=vy;return n.source=function(i){return arguments.length?(t=f(i),n):t},n.target=function(t){return arguments.length?(i=f(t),n):i},n.projection=function(t){return arguments.length?(r=t,n):r},n};n.svg.diagonal.radial=function(){var t=n.svg.diagonal(),i=vy,r=t.projection;return t.projection=function(n){return arguments.length?r(sn(i=n)):i},t};n.svg.symbol=function(){function n(n,r){return(kh.get(t.call(this,n,r))||yy)(i.call(this,n,r))}var t=cn,i=hn;return n.type=function(i){return arguments.length?(t=f(i),n):t},n.size=function(t){return arguments.length?(i=f(t),n):i},n};kh=n.map({circle:yy,cross:function(n){var t=Math.sqrt(n/5)/2;return"M"+-3*t+","+-t+"H"+-t+"V"+-3*t+"H"+t+"V"+-t+"H"+3*t+"V"+t+"H"+t+"V"+3*t+"H"+-t+"V"+t+"H"+-3*t+"Z"},diamond:function(n){var t=Math.sqrt(n/(2*nw)),i=t*nw;return"M0,"+-t+"L"+i+",0 0,"+t+" "+-i+",0Z"},square:function(n){var t=Math.sqrt(n)/2;return"M"+-t+","+-t+"L"+t+","+-t+" "+t+","+t+" "+-t+","+t+"Z"},"triangle-down":function(n){var t=Math.sqrt(n/df),i=t*df/2;return"M0,"+i+"L"+t+","+-i+" "+-t+","+-i+"Z"},"triangle-up":function(n){var t=Math.sqrt(n/df),i=t*df/2;return"M0,"+-i+"L"+t+","+i+" "+-t+","+i+"Z"}});n.svg.symbolTypes=kh.keys();var vr,kf,df=Math.sqrt(3),nw=Math.tan(30*r),h=[],tw=0;h.call=u.call;h.empty=u.empty;h.node=u.node;h.size=u.size;n.transition=function(n){return arguments.length?vr?n.transition():n:th.transition()};n.transition.prototype=h;h.select=function(n){var f,i,t,e=this.id,o=[],r,s;for(n=oe(n),r=-1,s=this.length;++r<s;){o.push(f=[]);for(var h=this[r],u=-1,c=h.length;++u<c;)(t=h[u])&&(i=n.call(t,t.__data__,u,r))?("__data__"in t&&(i.__data__=t.__data__),hu(i,u,e,t.__transition__[e]),f.push(i)):f.push(null)}return er(o,e)};h.selectAll=function(n){var s,u,t,f,h,e=this.id,c=[],i,l,r,v;for(n=sc(n),i=-1,l=this.length;++i<l;)for(var a=this[i],o=-1,y=a.length;++o<y;)if(t=a[o])for(h=t.__transition__[e],u=n.call(t,t.__data__,o,i),c.push(s=[]),r=-1,v=u.length;++r<v;)(f=u[r])&&hu(f,r,e,h),s.push(f);return er(c,e)};h.filter=function(n){var f,u,t,e=[],i,o;for("function"!=typeof n&&(n=wc(n)),i=0,o=this.length;o>i;i++){e.push(f=[]);for(var u=this[i],r=0,s=u.length;s>r;r++)(t=u[r])&&n.call(t,t.__data__,r)&&f.push(t)}return er(e,this.id)};h.tween=function(n,t){var i=this.id;return arguments.length<2?this.node().__transition__[i].tween.get(n):yt(this,null==t?function(t){t.__transition__[i].tween.remove(n)}:function(r){r.__transition__[i].tween.set(n,t)})};h.attr=function(t,i){function f(){this.removeAttribute(r)}function e(){this.removeAttributeNS(r.space,r.local)}function o(n){return null==n?f:(n+="",function(){var t,i=this.getAttribute(r);return i!==n&&(t=u(i,n),function(n){this.setAttribute(r,t(n))})})}function s(n){return null==n?e:(n+="",function(){var t,i=this.getAttributeNS(r.space,r.local);return i!==n&&(t=u(i,n),function(n){this.setAttributeNS(r.space,r.local,t(n))})})}if(arguments.length<2){for(i in t)this.attr(i,t[i]);return this}var u="transform"==t?sv:ei,r=n.ns.qualify(t);return ls(this,"attr."+t,i,r.local?s:o)};h.attrTween=function(t,i){function u(n,t){var u=i.call(this,n,t,this.getAttribute(r));return u&&function(n){this.setAttribute(r,u(n))}}function f(n,t){var u=i.call(this,n,t,this.getAttributeNS(r.space,r.local));return u&&function(n){this.setAttributeNS(r.space,r.local,u(n))}}var r=n.ns.qualify(t);return this.tween("attr."+t,r.local?f:u)};h.style=function(n,t,i){function u(){this.style.removeProperty(n)}function f(t){return null==t?u:(t+="",function(){var r,u=c.getComputedStyle(this,null).getPropertyValue(n);return u!==t&&(r=ei(u,t),function(t){this.style.setProperty(n,r(t),i)})})}var r=arguments.length;if(3>r){if("string"!=typeof n){2>r&&(t="");for(i in n)this.style(i,n[i],t);return this}i=""}return ls(this,"style."+n,t,f)};h.styleTween=function(n,t,i){function r(r,u){var f=t.call(this,r,u,c.getComputedStyle(this,null).getPropertyValue(n));return f&&function(t){this.style.setProperty(n,f(t),i)}}return arguments.length<3&&(i=""),this.tween("style."+n,r)};h.text=function(n){return ls(this,"text",n,ln)};h.remove=function(){return this.each("end.transition",function(){var n;!this.__transition__&&(n=this.parentNode)&&n.removeChild(this)})};h.ease=function(t){var i=this.id;return arguments.length<1?this.node().__transition__[i].ease:("function"!=typeof t&&(t=n.ease.apply(n,arguments)),yt(this,function(n){n.__transition__[i].ease=t}))};h.delay=function(n){var t=this.id;return yt(this,"function"==typeof n?function(i,r,u){i.__transition__[t].delay=0|n.call(i,i.__data__,r,u)}:(n|=0,function(i){i.__transition__[t].delay=n}))};h.duration=function(n){var t=this.id;return yt(this,"function"==typeof n?function(i,r,u){i.__transition__[t].duration=Math.max(1,0|n.call(i,i.__data__,r,u))}:(n=Math.max(1,0|n),function(i){i.__transition__[t].duration=n}))};h.each=function(t,i){var r=this.id,u,f;return arguments.length<2?(u=kf,f=vr,vr=r,yt(this,function(n,i,u){kf=n.__transition__[r];t.call(n,n.__data__,i,u)}),kf=u,vr=f):yt(this,function(u){var f=u.__transition__[r];(f.event||(f.event=n.dispatch("start","end"))).on(t,i)}),this};h.transition=function(){for(var f,r,n,t,s=this.id,e=++tw,o=[],u=0,h=this.length;h>u;u++){o.push(f=[]);for(var r=this[u],i=0,c=r.length;c>i;i++)(n=r[i])&&(t=Object.create(n.__transition__[s]),t.delay+=t.duration,hu(n,i,e,t)),f.push(n)}return er(o,e)};n.svg.axis=function(){function i(i){i.each(function(){var i,ut=n.select(this),ot=null==h?r.ticks?r.ticks.apply(r,s):r.domain():h,lt=null==o?r.tickFormat?r.tickFormat.apply(r,s):String:o,at=an(r,ot,l),ft=ut.selectAll(".tick.minor").data(at,String),p=ft.enter().insert("line",".tick").attr("class","tick minor").style("opacity",1e-6),vt=n.transition(ft.exit()).style("opacity",1e-6).remove(),w=n.transition(ft).style("opacity",1),b=ut.selectAll(".tick.major").data(ot,String),y=b.enter().insert("g",".domain").attr("class","tick major").style("opacity",1e-6),yt=n.transition(b.exit()).style("opacity",1e-6).remove(),k=n.transition(b).style("opacity",1),a=ou(r),st=ut.selectAll(".domain").data([0]),d=(st.enter().append("path").attr("class","domain"),n.transition(st)),v=r.copy(),ht=this.__chart__||v,ct,et;this.__chart__=v;y.append("line");y.append("text");var g=y.select("line"),nt=k.select("line"),tt=b.select("text").text(lt),it=y.select("text"),rt=k.select("text");switch(c){case"bottom":i=py;p.attr("y2",f);w.attr("x2",0).attr("y2",f);g.attr("y2",t);it.attr("y",Math.max(t,0)+u);nt.attr("x2",0).attr("y2",t);rt.attr("x",0).attr("y",Math.max(t,0)+u);tt.attr("dy",".71em").style("text-anchor","middle");d.attr("d","M"+a[0]+","+e+"V0H"+a[1]+"V"+e);break;case"top":i=py;p.attr("y2",-f);w.attr("x2",0).attr("y2",-f);g.attr("y2",-t);it.attr("y",-(Math.max(t,0)+u));nt.attr("x2",0).attr("y2",-t);rt.attr("x",0).attr("y",-(Math.max(t,0)+u));tt.attr("dy","0em").style("text-anchor","middle");d.attr("d","M"+a[0]+","+-e+"V0H"+a[1]+"V"+-e);break;case"left":i=wy;p.attr("x2",-f);w.attr("x2",-f).attr("y2",0);g.attr("x2",-t);it.attr("x",-(Math.max(t,0)+u));nt.attr("x2",-t).attr("y2",0);rt.attr("x",-(Math.max(t,0)+u)).attr("y",0);tt.attr("dy",".32em").style("text-anchor","end");d.attr("d","M"+-e+","+a[0]+"H0V"+a[1]+"H"+-e);break;case"right":i=wy;p.attr("x2",f);w.attr("x2",f).attr("y2",0);g.attr("x2",t);it.attr("x",Math.max(t,0)+u);nt.attr("x2",t).attr("y2",0);rt.attr("x",Math.max(t,0)+u).attr("y",0);tt.attr("dy",".32em").style("text-anchor","start");d.attr("d","M"+e+","+a[0]+"H0V"+a[1]+"H"+e)}r.rangeBand?(ct=v.rangeBand()/2,et=function(n){return v(n)+ct},y.call(i,et),k.call(i,et)):(y.call(i,ht),k.call(i,v),yt.call(i,v),p.call(i,ht),w.call(i,v),vt.call(i,v))})}var o,r=n.scale.linear(),c=dh,t=6,f=6,e=6,u=3,s=[10],h=null,l=0;return i.scale=function(n){return arguments.length?(r=n,i):r},i.orient=function(n){return arguments.length?(c=n in iw?n+"":dh,i):c},i.ticks=function(){return arguments.length?(s=arguments,i):s},i.tickValues=function(n){return arguments.length?(h=n,i):h},i.tickFormat=function(n){return arguments.length?(o=n,i):o},i.tickSize=function(n,r){if(!arguments.length)return t;var u=arguments.length-1;return t=+n,f=u>1?+r:t,e=u>0?+arguments[u]:t,i},i.tickPadding=function(n){return arguments.length?(u=+n,i):u},i.tickSubdivide=function(n){return arguments.length?(l=+n,i):l},i};dh="bottom";iw={top:1,right:1,bottom:1,left:1};n.svg.brush=function(){function u(t){t.each(function(){var t,f=n.select(this),e=f.selectAll(".background").data([0]),v=f.selectAll(".extent").data([0]),c=f.selectAll(".resize").data(o,String);f.style("pointer-events","all").on("mousedown.brush",a).on("touchstart.brush",a);e.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair");v.enter().append("rect").attr("class","extent").style("cursor","move");c.enter().append("g").attr("class",function(n){return"resize "+n}).style("cursor",function(n){return rw[n]}).append("rect").attr("x",function(n){return/[ew]$/.test(n)?-3:null}).attr("y",function(n){return/^[ns]/.test(n)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden");c.style("display",u.empty()?"none":null);c.exit().remove();i&&(t=ou(i),e.attr("x",t[0]).attr("width",t[1]-t[0]),h(f));r&&(t=ou(r),e.attr("y",t[0]).attr("height",t[1]-t[0]),l(f));s(f)})}function s(n){n.selectAll(".resize").attr("transform",function(n){return"translate("+t[+/e$/.test(n)][0]+","+t[+/^s/.test(n)][1]+")"})}function h(n){n.select(".extent").attr("x",t[0][0]);n.selectAll(".extent,.n>rect,.s>rect").attr("width",t[1][0]-t[0][0])}function l(n){n.select(".extent").attr("y",t[0][1]);n.selectAll(".extent,.e>rect,.w>rect").attr("height",t[1][1]-t[0][1])}function a(){function ut(){var t=n.event.changedTouches;return t?n.touches(d,t)[0]:n.mouse(d)}function ot(){32==n.event.keyCode&&(y||(a=null,o[0]-=t[1][0],o[1]-=t[1][1],y=2),at())}function st(){32==n.event.keyCode&&2==y&&(o[0]+=t[1][0],o[1]+=t[1][1],y=0,at())}function b(){var u=ut(),f=!1;k&&(u[0]+=k[0],u[1]+=k[1]);y||(n.event.altKey?(a||(a=[(t[0][0]+t[1][0])/2,(t[0][1]+t[1][1])/2]),o[0]=t[+(u[0]<a[0])][0],o[1]=t[+(u[1]<a[1])][1]):a=null);ht&&ft(u,i,0)&&(h(p),f=!0);ct&&ft(u,r,1)&&(l(p),f=!0);f&&(s(p),nt({type:"brush",mode:y?"move":"resize"}))}function ft(n,i,r){var u,h,v=ou(i),c=v[0],l=v[1],s=o[r],p=t[1][r]-t[0][r];return y&&(c-=s,l-=p+s),u=e[r]?Math.max(c,Math.min(l,n[r])):n[r],y?h=(u+=s)+p:(a&&(s=Math.max(c,Math.min(l,2*a[r]-u))),u>s?(h=u,u=s):h=s),t[0][r]!==u||t[1][r]!==h?(f=null,t[0][r]=u,t[1][r]=h,!0):void 0}function et(){b();p.style("pointer-events","all").selectAll(".resize").style("display",u.empty()?"none":null);n.select("body").style("cursor",null);tt.on("mousemove.brush",null).on("mouseup.brush",null).on("touchmove.brush",null).on("touchend.brush",null).on("keydown.brush",null).on("keyup.brush",null);lt();nt({type:"brushend"})}var a,k,d=this,g=n.select(n.event.target),nt=v.of(d,arguments),p=n.select(d),w=g.datum(),ht=!/^(n|s)$/.test(w)&&i,ct=!/^(e|w)$/.test(w)&&r,y=g.classed("extent"),lt=yr(),o=ut(),tt=n.select(c).on("keydown.brush",ot).on("keyup.brush",st),it,rt;(n.event.changedTouches?tt.on("touchmove.brush",b).on("touchend.brush",et):tt.on("mousemove.brush",b).on("mouseup.brush",et),y)?(o[0]=t[0][0]-o[0],o[1]=t[0][1]-o[1]):w?(it=+/w$/.test(w),rt=+/^n/.test(w),k=[t[1-it][0]-o[0],t[1-rt][1]-o[1]],o[0]=t[it][0],o[1]=t[rt][1]):n.event.altKey&&(a=o.slice());p.style("pointer-events","none").selectAll(".resize").style("display",null);n.select("body").style("cursor",g.style("cursor"));nt({type:"brushstart"});b()}var f,v=ee(u,"brushstart","brush","brushend"),i=null,r=null,o=gf[0],t=[[0,0],[0,0]],e=[!0,!0];return u.x=function(n){return arguments.length?(i=n,o=gf[!i<<1|!r],u):i},u.y=function(n){return arguments.length?(r=n,o=gf[!i<<1|!r],u):r},u.clamp=function(n){return arguments.length?(i&&r?e=[!!n[0],!!n[1]]:(i||r)&&(e[+!i]=!!n),u):i&&r?e:i||r?e[+!i]:null},u.extent=function(n){var e,o,s,h,c;return arguments.length?(f=[[0,0],[0,0]],i&&(e=n[0],o=n[1],r&&(e=e[0],o=o[0]),f[0][0]=e,f[1][0]=o,i.invert&&(e=i(e),o=i(o)),e>o&&(c=e,e=o,o=c),t[0][0]=0|e,t[1][0]=0|o),r&&(s=n[0],h=n[1],i&&(s=s[1],h=h[1]),f[0][1]=s,f[1][1]=h,r.invert&&(s=r(s),h=r(h)),s>h&&(c=s,s=h,h=c),t[0][1]=0|s,t[1][1]=0|h),u):(n=f||t,i&&(e=n[0][0],o=n[1][0],f||(e=t[0][0],o=t[1][0],i.invert&&(e=i.invert(e),o=i.invert(o)),e>o&&(c=e,e=o,o=c))),r&&(s=n[0][1],h=n[1][1],f||(s=t[0][1],h=t[1][1],r.invert&&(s=r.invert(s),h=r.invert(h)),s>h&&(c=s,s=h,h=c))),i&&r?[[e,s],[o,h]]:i?[e,o]:r&&[s,h])},u.clear=function(){return f=null,t[0][0]=t[0][1]=t[1][0]=t[1][1]=0,u},u.empty=function(){return i&&t[0][0]===t[1][0]||r&&t[0][1]===t[1][1]},n.rebind(u,v,"on")};rw={n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"};gf=[["n","e","s","w","nw","ne","se","sw"],["e","w"],["n","s"],[]];n.time={};l=Date;uw=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];si.prototype={getDate:function(){return this._.getUTCDate()},getDay:function(){return this._.getUTCDay()},getFullYear:function(){return this._.getUTCFullYear()},getHours:function(){return this._.getUTCHours()},getMilliseconds:function(){return this._.getUTCMilliseconds()},getMinutes:function(){return this._.getUTCMinutes()},getMonth:function(){return this._.getUTCMonth()},getSeconds:function(){return this._.getUTCSeconds()},getTime:function(){return this._.getTime()},getTimezoneOffset:function(){return 0},valueOf:function(){return this._.valueOf()},setDate:function(){lt.setUTCDate.apply(this._,arguments)},setDay:function(){lt.setUTCDay.apply(this._,arguments)},setFullYear:function(){lt.setUTCFullYear.apply(this._,arguments)},setHours:function(){lt.setUTCHours.apply(this._,arguments)},setMilliseconds:function(){lt.setUTCMilliseconds.apply(this._,arguments)},setMinutes:function(){lt.setUTCMinutes.apply(this._,arguments)},setMonth:function(){lt.setUTCMonth.apply(this._,arguments)},setSeconds:function(){lt.setUTCSeconds.apply(this._,arguments)},setTime:function(){lt.setTime.apply(this._,arguments)}};var lt=Date.prototype,gh=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],nc=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],tc=["January","February","March","April","May","June","July","August","September","October","November","December"],ic=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];n.time.year=hi(function(t){return t=n.time.day(t),t.setMonth(0,1),t},function(n,t){n.setFullYear(n.getFullYear()+t)},function(n){return n.getFullYear()});n.time.years=n.time.year.range;n.time.years.utc=n.time.year.utc.range;n.time.day=hi(function(n){var t=new l(2e3,0);return t.setFullYear(n.getFullYear(),n.getMonth(),n.getDate()),t},function(n,t){n.setDate(n.getDate()+t)},function(n){return n.getDate()-1});n.time.days=n.time.day.range;n.time.days.utc=n.time.day.utc.range;n.time.dayOfYear=function(t){var i=n.time.year(t);return Math.floor((t-i-6e4*(t.getTimezoneOffset()-i.getTimezoneOffset()))/864e5)};uw.forEach(function(t,i){t=t.toLowerCase();i=7-i;var r=n.time[t]=hi(function(t){return(t=n.time.day(t)).setDate(t.getDate()-(t.getDay()+i)%7),t},function(n,t){n.setDate(n.getDate()+7*Math.floor(t))},function(t){var r=n.time.year(t).getDay();return Math.floor((n.time.dayOfYear(t)+(r+i)%7)/7)-(r!==i)});n.time[t+"s"]=r.range;n.time[t+"s"].utc=r.utc.range;n.time[t+"OfYear"]=function(t){var r=n.time.year(t).getDay();return Math.floor((n.time.dayOfYear(t)+(r+i)%7)/7)}});n.time.week=n.time.sunday;n.time.weeks=n.time.sunday.range;n.time.weeks.utc=n.time.sunday.utc.range;n.time.weekOfYear=n.time.sundayOfYear;n.time.format=function(n){function t(t){for(var u,e,s,f=[],r=-1,o=0;++r<i;)37===n.charCodeAt(r)&&(f.push(n.substring(o,r)),null!=(e=kit[u=n.charAt(++r)])&&(u=n.charAt(++r)),(s=ne[u])&&(u=s(t,null==e?"e"===u?" ":"0":e)),f.push(u),o=r+1);return f.push(n.substring(o,r)),f.join("")}var i=n.length;return t.parse=function(t){var i={y:1900,m:0,d:1,H:0,M:0,S:0,L:0},u=lu(i,n,t,0),r;return u!=t.length?null:("p"in i&&(i.H=i.H%12+12*i.p),r=new l,"j"in i?r.setFullYear(i.y,0,i.j):"w"in i&&("W"in i||"U"in i)?(r.setFullYear(i.y,0,1),r.setFullYear(i.y,0,"W"in i?(i.w+6)%7+7*i.W-(r.getDay()+5)%7:i.w+7*i.U-(r.getDay()+6)%7)):r.setFullYear(i.y,i.m,i.d),r.setHours(i.H,i.M,i.S,i.L),r)},t.toString=function(){return n},t};var fw=au(gh),yit=vu(gh),ew=au(nc),pit=vu(nc),ow=au(tc),wit=vu(tc),sw=au(ic),bit=vu(ic),hw=/^%/,kit={"-":"",_:" ",0:"0"},ne={a:function(n){return nc[n.getDay()]},A:function(n){return gh[n.getDay()]},b:function(n){return ic[n.getMonth()]},B:function(n){return tc[n.getMonth()]},c:n.time.format("%a %b %e %X %Y"),d:function(n,t){return v(n.getDate(),t,2)},e:function(n,t){return v(n.getDate(),t,2)},H:function(n,t){return v(n.getHours(),t,2)},I:function(n,t){return v(n.getHours()%12||12,t,2)},j:function(t,i){return v(1+n.time.dayOfYear(t),i,3)},L:function(n,t){return v(n.getMilliseconds(),t,3)},m:function(n,t){return v(n.getMonth()+1,t,2)},M:function(n,t){return v(n.getMinutes(),t,2)},p:function(n){return n.getHours()>=12?"PM":"AM"},S:function(n,t){return v(n.getSeconds(),t,2)},U:function(t,i){return v(n.time.sundayOfYear(t),i,2)},w:function(n){return n.getDay()},W:function(t,i){return v(n.time.mondayOfYear(t),i,2)},x:n.time.format("%m/%d/%Y"),X:n.time.format("%H:%M:%S"),y:function(n,t){return v(n.getFullYear()%100,t,2)},Y:function(n,t){return v(n.getFullYear()%1e4,t,4)},Z:ltt,"%":function(){return"%"}},dit={a:vn,A:yn,b:kn,B:dn,c:gn,d:by,e:by,H:ky,I:ky,j:ett,L:htt,m:ftt,M:ott,p:ctt,S:stt,U:wn,w:pn,W:bn,x:ntt,X:ttt,y:rtt,Y:itt,"%":att},o=/^\s*\d+/,git=n.map({am:0,pm:1});n.time.format.utc=function(t){function i(n){try{l=si;var t=new l;return t._=n,r(t)}finally{l=Date}}var r=n.time.format(t);return i.parse=function(n){try{l=si;var t=r.parse(n);return t&&t._}finally{l=Date}},i.toString=r.toString,i};rc=n.time.format.utc("%Y-%m-%dT%H:%M:%S.%LZ");n.time.format.iso=Date.prototype.toISOString&&+new Date("2000-01-01T00:00:00.000Z")?as:rc;as.parse=function(n){var t=new Date(n);return isNaN(t)?null:t};as.toString=rc.toString;n.time.second=hi(function(n){return new l(1e3*Math.floor(n/1e3))},function(n,t){n.setTime(n.getTime()+1e3*Math.floor(t))},function(n){return n.getSeconds()});n.time.seconds=n.time.second.range;n.time.seconds.utc=n.time.second.utc.range;n.time.minute=hi(function(n){return new l(6e4*Math.floor(n/6e4))},function(n,t){n.setTime(n.getTime()+6e4*Math.floor(t))},function(n){return n.getMinutes()});n.time.minutes=n.time.minute.range;n.time.minutes.utc=n.time.minute.utc.range;n.time.hour=hi(function(n){var t=n.getTimezoneOffset()/60;return new l(36e5*(Math.floor(n/36e5-t)+t))},function(n,t){n.setTime(n.getTime()+36e5*Math.floor(t))},function(n){return n.getHours()});n.time.hours=n.time.hour.range;n.time.hours.utc=n.time.hour.utc.range;n.time.month=hi(function(t){return t=n.time.day(t),t.setDate(1),t},function(n,t){n.setMonth(n.getMonth()+t)},function(n){return n.getMonth()});n.time.months=n.time.month.range;n.time.months.utc=n.time.month.utc.range;var te=[1e3,5e3,15e3,3e4,6e4,3e5,9e5,18e5,36e5,108e5,216e5,432e5,864e5,1728e5,6048e5,2592e6,7776e6,31536e6],uc=[[n.time.second,1],[n.time.second,5],[n.time.second,15],[n.time.second,30],[n.time.minute,1],[n.time.minute,5],[n.time.minute,15],[n.time.minute,30],[n.time.hour,1],[n.time.hour,3],[n.time.hour,6],[n.time.hour,12],[n.time.day,1],[n.time.day,2],[n.time.week,1],[n.time.month,1],[n.time.month,3],[n.time.year,1]],nrt=[[n.time.format("%Y"),tr],[n.time.format("%B"),function(n){return n.getMonth()}],[n.time.format("%b %d"),function(n){return 1!=n.getDate()}],[n.time.format("%a %d"),function(n){return n.getDay()&&1!=n.getDate()}],[n.time.format("%I %p"),function(n){return n.getHours()}],[n.time.format("%I:%M"),function(n){return n.getMinutes()}],[n.time.format(":%S"),function(n){return n.getSeconds()}],[n.time.format(".%L"),function(n){return n.getMilliseconds()}]],cw=n.scale.linear(),trt=dy(nrt);uc.year=function(n,t){return cw.domain(n.map(vtt)).ticks(t).map(ps)};n.time.scale=function(){return vs(n.scale.linear(),uc,trt)};var lw=uc.map(function(n){return[n[0].utc,n[1]]}),irt=[[n.time.format.utc("%Y"),tr],[n.time.format.utc("%B"),function(n){return n.getUTCMonth()}],[n.time.format.utc("%b %d"),function(n){return 1!=n.getUTCDate()}],[n.time.format.utc("%a %d"),function(n){return n.getUTCDay()&&1!=n.getUTCDate()}],[n.time.format.utc("%I %p"),function(n){return n.getUTCHours()}],[n.time.format.utc("%I:%M"),function(n){return n.getUTCMinutes()}],[n.time.format.utc(":%S"),function(n){return n.getUTCSeconds()}],[n.time.format.utc(".%L"),function(n){return n.getUTCMilliseconds()}]],rrt=dy(irt);return lw.year=function(n,t){return cw.domain(n.map(ytt)).ticks(t).map(ws)},n.time.scale.utc=function(){return vs(n.scale.linear(),lw,rrt)},n.text=ke(function(n){return n.responseText}),n.json=function(n,t){return de(n,"application/json",ptt,t)},n.html=function(n,t){return de(n,"text/html",wtt,t)},n.xml=ke(function(n){return n.responseXML}),n}()