/*! d3-3.0.6.js - Data Driven Documents * Version: 3.0.6 * Homepage: http://mbostock.github.com/d3/ * Copyright: 2012, Michael Bostock * Licence: 3-Clause BSD * * Copyright (c) 2012, Michael Bostock * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * * Redistributions of source code must retain the above copyright notice, this * list of conditions and the following disclaimer. * * * Redistributions in binary form must reproduce the above copyright notice, * this list of conditions and the following disclaimer in the documentation * and/or other materials provided with the distribution. * * * The name Michael Bostock may not be used to endorse or promote products * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * DISCLAIMED. IN NO EVENT SHALL MICHAEL BOSTOCK BE LIABLE FOR ANY DIRECT, * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ d3=function(){function rb(a){return a.target}function sb(a){return a.source}function Ie(a){for(var b=-1,c=a.length,d=[];++barguments.length)return h&&h.on;h&&(h.on=null,c=c.slice(0,k=c.indexOf(h)).concat(c.slice(k+ 1)),d.remove(b));f&&c.push(d.set(b,{on:f}));return a};return b}function vb(a,b){return b-(a?Math.ceil(Math.log(a)/Math.LN10):1)}function Qe(a){return a+""}function Re(a){return function(b){return 0>=b?0:1<=b?1:a(b)}}function zc(a){return function(b){return 1-a(1-b)}}function Ac(a){return function(b){return 0.5*(0.5>b?a(2*b):2-a(2-2*b))}}function Se(a){return a*a}function Te(a){return a*a*a}function Ue(a){return 1-Math.cos(a*u/2)}function Ve(a){return Math.pow(2,10*(a-1))}function We(a){return 1-Math.sqrt(1- a*a)}function Xe(a){return a<1/2.75?7.5625*a*a:a<2/2.75?7.5625*(a-=1.5/2.75)*a+0.75:a<2.5/2.75?7.5625*(a-=2.25/2.75)*a+0.9375:7.5625*(a-=2.625/2.75)*a+0.984375}function X(){g.event.stopPropagation();g.event.preventDefault()}function Bc(){for(var a=g.event,b;b=a.sourceEvent;)a=b;return a}function wb(a){for(var b=new ub,c=0,d=arguments.length;++ca?"0"+Math.max(0,a).toString(16):Math.min(255,a).toString(16)}function zb(a,b,c){var d=0,e=0,f=0,h,k;if(h=/([a-z]+)\((.*)\)/i.exec(a))switch(k=h[2].split(","),h[1]){case "hsl":return c(parseFloat(k[0]),parseFloat(k[1])/100,parseFloat(k[2])/ 100);case "rgb":return b(Ab(k[0]),Ab(k[1]),Ab(k[2]))}if(c=Ka.get(a))return b(c.r,c.g,c.b);null!=a&&"#"===a.charAt(0)&&(4===a.length?(d=a.charAt(1),d+=d,e=a.charAt(2),e+=e,f=a.charAt(3),f+=f):7===a.length&&(d=a.substring(1,3),e=a.substring(3,5),f=a.substring(5,7)),d=parseInt(d,16),e=parseInt(e,16),f=parseInt(f,16));return b(d,e,f)}function Ec(a,b,c){var d=Math.min(a/=255,b/=255,c/=255),e=Math.max(a,b,c),f=e-d,h=(e+d)/2;f?(d=0.5>h?f/(e+d):f/(2-e-d),a=60*(a==e?(b-c)/f+(b=(a/=255)?a/12.92:Math.pow((a+0.055)/1.055,2.4)}function Ab(a){var b=parseFloat(a);return"%"===a.charAt(a.length-1)?Math.round(2.55*b):b}function sa(a,b,c){return new Db(a,b,c)}function Db(a,b,c){this.h=a;this.s=b;this.l= c}function La(a,b,c){function d(a){360a&&(a+=360);return 60>a?e+(f-e)*a/60:180>a?f:240>a?e+(f-e)*(240-a)/60:e}var e,f;a%=360;0>a&&(a+=360);b=0>b?0:1c?0:1=c?c*(1+b):c+b-c*b;e=2*c-f;return ca(Math.round(255*d(a+120)),Math.round(255*d(a)),Math.round(255*d(a-120)))}function Aa(a,b,c){return new Ma(a,b,c)}function Ma(a,b,c){this.h=a;this.c=b;this.l=c}function Eb(a,b,c){return ta(c,Math.cos(a*=w)*b,Math.sin(a)*b)}function ta(a,b,c){return new Na(a,b,c)}function Na(a, b,c){this.l=a;this.a=b;this.b=c}function Jc(a,b,c){a=(a+16)/116;c=a-c/200;b=Fb(a+b/500)*Gc;a=Fb(a)*Hc;c=Fb(c)*Ic;return ca(Gb(3.2404542*b-1.5371385*a-0.4985314*c),Gb(-0.969266*b+1.8760108*a+0.041556*c),Gb(0.0556434*b-0.2040259*a+1.0572252*c))}function Kc(a,b,c){return Aa(180*(Math.atan2(c,b)/u),Math.sqrt(b*b+c*c),a)}function Fb(a){return 0.206893034=a?12.92*a:1.055* Math.pow(a,1/2.4)-0.055))}function da(a){Hb(a,C);return a}function Lc(a){return function(){return Oa(a,this)}}function Mc(a){return function(){return Nc(a,this)}}function Oc(a,b){function c(){this.removeAttribute(a)}function d(){this.removeAttributeNS(a.space,a.local)}function e(){this.setAttribute(a,b)}function f(){this.setAttributeNS(a.space,a.local,b)}function h(){var c=b.apply(this,arguments);null==c?this.removeAttribute(a):this.setAttribute(a,c)}function k(){var c=b.apply(this,arguments);null== c?this.removeAttributeNS(a.space,a.local):this.setAttributeNS(a.space,a.local,c)}a=g.ns.qualify(a);return null==b?a.local?d:c:"function"===typeof b?a.local?k:h:a.local?f:e}function Pc(a){return RegExp("(?:^|\\s+)"+g.requote(a)+"(?:\\s+|$)","g")}function Qc(a,b){function c(){for(var c=-1;++cc)return n();e.active=c;r.start.call(a,p,b);f.tween.forEach(function(c,e){(e=e.call(a,p,b))&&v.push(e)});m(d)||g.timer(m,0,h);return 1}function m(d){if(e.active!==c)return n();d=(d-s)/t;for(var f=q(d),h=v.length;0=c.delay&&(c.flush=c.callback(a)),c=c.next;a=Xc()- b;24Lb&&(P.scrollX||P.scrollY)){var c=g.select(W.body).append("svg").style("position","absolute").style("top",0).style("left",0),e=c[0][0].getScreenCTM();Lb=!(e.f||e.e); c.remove()}Lb?(d.x=b.pageX,d.y=b.pageY):(d.x=b.clientX,d.y=b.clientY);d=d.matrixTransform(a.getScreenCTM().inverse());return[d.x,d.y]}c=a.getBoundingClientRect();return[b.clientX-c.left-a.clientLeft,b.clientY-c.top-a.clientTop]}function T(){}function Ca(a){var b=a[0];a=a[a.length-1];return b=d?e*=10:0.35>=d?e*=5:0.75>=d&&(e*=2);c[0]=Math.ceil(c[0]/e)*e;c[1]=Math.floor(c[1]/e)*e+0.5*e;c[2]=e;return c}function Mb(a,b){return g.range.apply(g,cd(a,b))}function Nb(a,b){return g.format(",."+Math.max(0,-Math.floor(Math.log(cd(a,b)[2])/Math.LN10+0.01))+"f")}function ef(a,b,c,d){var e=c(a[0],a[1]),f=d(b[0],b[1]);return function(a){return f(e(a))}}function df(a,b,c,d){var e=[],f=[],h=0,k=Math.min(a.length, b.length)-1;a[k]e[0]?Ua:Ob;d=b.pow;a.domain(e.map(b));return c};c.nice=function(){a.domain(Ta(a.domain(),cf));return c};c.ticks=function(){var c=Ca(a.domain()), f=[];if(c.every(isFinite)){var h=Math.floor(c[0]),k=Math.ceil(c[1]),l=d(c[0]),c=d(c[1]);if(b===Ua)for(f.push(d(h));h++m;m++)f.push(d(h)*m);f.push(d(h))}for(h=0;f[h]c;k--);f=f.slice(h,k)}return f};c.tickFormat=function(a,f){2>arguments.length&&(f=ff);if(!arguments.length)return f;var h=Math.max(0.1,a/c.ticks().length),k=b===Ua?(l=-1E-12,Math.floor):(l=1E-12,Math.ceil),l;return function(a){return a/d(k(b(a)+ l))<=h?f(a):""}};c.copy=function(){return dd(a.copy(),b)};return bd(c,a)}function Ob(a){return Math.log(0>a?0:a)/Math.LN10}function Ua(a){return-Math.log(0b?-Math.pow(-b,a):Math.pow(b,a)}}function fd(a,b){function c(b){return f[((e.get(b)||e.set(b,a.push(b)))-1)%f.length]}function d(b,c){return g.range(a.length).map(function(a){return b+c*a})}var e,f,h;c.domain=function(d){if(!arguments.length)return a;a=[];e=new ba;for(var f=-1,h=d.length, g;++farguments.length&&(l=0);var m=e[0],g=e[1],p=(g-m)/(Math.max(1,a.length-1)+l);f=d(2>a.length?(m+g)/2:m+p*l/2,p);h=0;b={t:"rangePoints",a:arguments};return c};c.rangeBands=function(e,l,m){2>arguments.length&&(l=0);3>arguments.length&&(m=l);var g=e[1]arguments.length&&(l=0);3>arguments.length&&(m=l);var g=e[1]b.length||a.length!=b.length&&a.length!=b.length+2)return U(a);var c=a.length!=b.length,d="",e=a[0],f=a[1],h=b[0],k=h,l=1;c&&(d+="Q"+(f[0]-2*h[0]/3)+","+ (f[1]-2*h[1]/3)+","+f[0]+","+f[1],e=a[1],l=2);if(1a.length)return U(a); var b=1,c=a.length,d=a[0],e=d[0],f=d[1],h=[e,e,e,(d=a[1])[0]],k=[f,f,f,d[1]],e=[e,",",f];for(Da(e,h,k);++b++b;)h.shift(),h.push(d[0]),k.shift(),k.push(d[1]),Da(e,h,k);return e.join("")}function aa(a,b){return a[0]*b[0]+a[1]*b[1]+a[2]*b[2]+a[3]*b[3]}function Da(a,b,c){a.push("C",aa(pd,b),",",aa(pd,c),",",aa(qd,b),",",aa(qd,c),",",aa(va,b),",",aa(va,c))}function Ub(a,b){return(b[1]-a[1])/(b[0]-a[0])}function rd(a){for(var b, c=-1,d=a.length,e,f;++c=a[0]&&d.push(l);--e;for(k=0;++kd&&(c=b,d=e);return c}function xf(a){return a.reduce(yf,0)}function yf(a,b){return a+b[1]}function zf(a,b){return zd(a,Math.ceil(Math.log(b.length)/Math.LN2+1))}function zd(a,b){for(var c=-1,d=+a[0],e=(a[1]-d)/b,f=[];++c<=b;)f[c]=e*c+d;return f}function Af(a){return[g.min(a),g.max(a)]}function Ea(a,b){g.rebind(a,b,"sort","children","value");a.nodes=a;a.links=Bf;return a}function Cf(a){return a.children}function Df(a){return a.value}function Ef(a,b){return b.value- a.value}function Bf(a){return g.merge(a.map(function(a){return(a.children||[]).map(function(c){return{source:a,target:c}})}))}function Ff(a,b){return a.value-b.value}function Xb(a,b){var c=a._pack_next;a._pack_next=b;b._pack_prev=a;b._pack_next=c;c._pack_prev=b}function Ad(a,b){a._pack_next=b;b._pack_prev=a}function Bd(a,b){var c=b.x-a.x,d=b.y-a.y,e=a.r+b.r;return 0.001e&&(c+=e/2,e=0);0>f&&(d+=f/2,f=0);return{x:c,y:d,dx:e,dy:f}}function Jd(a,b){function c(a,c){return g.xhr(a,b,c).response(d)}function d(a){return c.parse(a.responseText)}function e(b){return b.map(f).join(a)}function f(a){return h.test(a)?'"'+a.replace(/\"/g,'""')+'"':a}var h=RegExp('["'+a+"\n]"),k=a.charCodeAt(0);c.parse=function(a){var b;return c.parseRows(a,function(a){if(b)return b(a);b=new Function("d","return {"+a.map(function(a,b){return JSON.stringify(a)+": d["+b+"]"}).join(",")+"}")})}; c.parseRows=function(a,b){function c(){if(g>=h)return d;if(z)return z=!1,e;var b=g;if(34===a.charCodeAt(b)){for(var f=b;f++4*d&&x--){var D= l+s,B=g+t,E=n+v,wa=Math.sqrt(D*D+B*B+E*E),L=Math.asin(E/=wa),u=Math.abs(Math.abs(E)-1)d||0.3f&&(f=a);bh&&(h=b)}function c(){k.point=k.lineEnd=T}var d,e,f,h,k={point:b,lineStart:T,lineEnd:T,polygonStart:function(){k.lineEnd=c},polygonEnd:function(){k.point=b}};return function(b){h=f=-(d=e=Infinity);g.geo.stream(b,a(k));return[[d,e],[f,h]]}}function Rd(a, b){if(!N){++Y;a*=w;var c=Math.cos(b*=w);J+=(c*Math.cos(a)-J)/Y;K+=(c*Math.sin(a)-K)/Y;I+=(Math.sin(b)-I)/Y}}function Nf(){var a,b;N=1;cc();N=2;var c=Z.point;Z.point=function(d,e){c(a=d,b=e)};Z.lineEnd=function(){Z.point(a,b);dc();Z.lineEnd=dc}}function cc(){function a(a,f){a*=w;var h=Math.cos(f*=w),k=h*Math.cos(a),h=h*Math.sin(a),l=Math.sin(f),g=Math.atan2(Math.sqrt((g=c*l-d*h)*g+(g=d*k-b*l)*g+(g=b*h-c*k)*g),b*k+c*h+d*l);Y+=g;J+=g*(b+(b=k));K+=g*(c+(c=h));I+=g*(d+(d=l))}var b,c,d;1N&&(N=1, Y=J=K=I=0),Z.point=function(e,f){e*=w;var h=Math.cos(f*=w);b=h*Math.cos(e);c=h*Math.sin(e);d=Math.sin(f);Z.point=a})}function dc(){Z.point=Rd}function ec(a,b){var c=Math.cos(a),d=Math.sin(a);return function(e,f,h,k){if(null!=e){if(e=Sd(c,e),f=Sd(c,f),0f)e+=2*h*u}else e=a+2*h*u,f=a;for(var l,g=h*b;0f:e-c[2]?-d:d)+2*Math.PI-A)%(2*Math.PI)}function Td(a,b,c){return function(d){function e(b,c){a(b,c)&&d.point(b,c)}function f(a,b){p.point(a,b)}function h(){q.point=f;p.lineStart()}function k(){q.point=e;p.lineEnd()}function l(a,b){z.point(a,b);y.push([a,b])}function m(){z.lineStart();y=[]}function n(){l(y[0][0],y[0][1]);z.lineEnd();var a=z.clean(),b=x.buffer(),c=b.length;if(c)if(y=null,a&1){a=b[0];s+=Ud(a,1);var c=a.length-1,b=-1,e;for(d.lineStart();++b=b)){var c=a[0],b=a[b-1];a={point:c,points:a,other:null,visited:!1,entry:!0,subject:!0};c={point:c,points:[c],other:a,visited:!1,entry:!1,subject:!1};a.other=c;d.push(a);e.push(c);a={point:b,points:[b],other:null,visited:!1,entry:!1,subject:!0};c={point:b,points:[b],other:a,visited:!1,entry:!0,subject:!1};a.other=c;d.push(a);e.push(c)}});e.sort(Rf);Vd(d);Vd(e); if(d.length){a=d[0];for(var f,h,k;;){for(f=a;f.visited;)if((f=f.next)===a)return;h=f.points;c.lineStart();do{f.visited=f.other.visited=!0;if(f.entry){if(f.subject)for(var l=0;l(a=a.point)[0]?a[1]-u/2-A:u/2-a[1])-(0>(b=b.point)[0]?b[1]-u/2-A:u/2-b[1])}function Of(a){return 1d}function c(a,b){var c=Za(a,0),k=Za(b,0),l=[1,0,0],k=Nd(c,k),g=$a(k,k),c=k[0],n=g-c*c;if(!n)return a;g=d*g/n;n=-d*c/n;c=Nd(l,k);l=[l[0]*g,l[1]*g,l[2]* g];k=[k[0]*n,k[1]*n,k[2]*n];l[0]+=k[0];l[1]+=k[1];l[2]+=k[2];k=$a(l,c);g=$a(c,c);n=Math.sqrt(k*k-g*($a(l,l)-1));c=[c[0]*((-k-n)/g),c[1]*((-k-n)/g),c[2]*((-k-n)/g)];c[0]+=l[0];c[1]+=l[1];c[2]+=l[2];return Md(c)}a*=w;var d=Math.cos(a);a=ec(a,6*w);return Td(b,function(a){var d,h,k,g;return{lineStart:function(){k=h=!1;g=1},point:function(m,n){var p=[m,n],q,r=b(m,n);!d&&(k=h=r)&&a.lineStart();r!==h&&(q=c(d,p),bc(d,q)||bc(p,q))&&(p[0]+=A,p[1]+=A,r=b(p[0],p[1]));r!==h&&(g=0,(h=r)?(a.lineStart(),q=c(p,d), a.point(q[0],q[1])):(q=c(d,p),a.point(q[0],q[1]),a.lineEnd()),d=q);!r||d&&bc(d,p)||a.point(p[0],p[1]);d=p},lineEnd:function(){h&&a.lineEnd();d=null},clean:function(){return g|(k&&h)<<1}}},a)}function Wd(a,b){function c(c,e){return c=a(c,e),b(c[0],c[1])}a.invert&&b.invert&&(c.invert=function(c,e){return c=b.invert(c,e),c&&a.invert(c[0],c[1])});return c}function ab(a,b){return[a,b]}function Tf(a,b,c){var d=g.range(a,b-A,c).concat(b);return function(a){return d.map(function(b){return[a,b]})}}function Uf(a, b,c){var d=g.range(a,b-A,c).concat(b);return function(a){return d.map(function(b){return[b,a]})}}function Vf(a,b,c,d){function e(a){var b=Math.sin(a*=q)*r,c=Math.sin(q-a)*r;a=c*g+b*n;var d=c*m+b*p,b=c*h+b*k;return[Math.atan2(d,a)/w,Math.atan2(b,Math.sqrt(a*a+d*d))/w]}var f=Math.cos(b),h=Math.sin(b);b=Math.cos(d);var k=Math.sin(d),g=f*Math.cos(a),m=f*Math.sin(a),n=b*Math.cos(c),p=b*Math.sin(c),q=Math.acos(Math.max(-1,Math.min(1,h*k+f*b*Math.cos(c-a)))),r=1/Math.sin(q);e.distance=q;return e}function fc(a, b){return[a/(2*u),Math.max(-0.5,Math.min(0.5,Math.log(Math.tan(u/4+b/2))/(2*u)))]}function Xd(a){return"m0,"+a+"a"+a+","+a+" 0 1,1 0,"+-2*a+"a"+a+","+a+" 0 1,1 0,"+2*a+"z"}function Wf(a){var b=Od(function(b,d){return a([b*O,d*O])});return function(a){a=b(a);return{point:function(b,e){a.point(b*w,e*w)},sphere:function(){a.sphere()},lineStart:function(){a.lineStart()},lineEnd:function(){a.lineEnd()},polygonStart:function(){a.polygonStart()},polygonEnd:function(){a.polygonEnd()}}}}function Xf(){function a(a, b){h.push("M",a,",",b,f)}function b(a,b){h.push("M",a,",",b);k.point=c}function c(a,b){h.push("L",a,",",b)}function d(){k.point=a}function e(){h.push("Z")}var f=Xd(4.5),h=[],k={point:a,lineStart:function(){k.point=b},lineEnd:d,polygonStart:function(){k.lineEnd=e},polygonEnd:function(){k.lineEnd=d;k.point=a},pointRadius:function(a){f=Xd(a);return k},result:function(){if(h.length){var a=h.join("");h=[];return a}}};return k}function Yf(a){function b(b,c){a.moveTo(b,c);a.arc(b,c,h,0,2*u)}function c(b, c){a.moveTo(b,c);k.point=d}function d(b,c){a.lineTo(b,c)}function e(){k.point=b}function f(){a.closePath()}var h=4.5,k={point:b,lineStart:function(){k.point=c},lineEnd:e,polygonStart:function(){k.lineEnd=f},polygonEnd:function(){k.lineEnd=e;k.point=b},pointRadius:function(a){h=a;return k},result:T};return k}function Zf(){function a(a,b){bb+=e*a-d*b;d=a;e=b}var b,c,d,e;ja.point=function(f,h){ja.point=a;b=d=f;c=e=h};ja.lineEnd=function(){a(b,c)}}function gc(a,b){N||(J+=a,K+=b,++I)}function Yd(){function a(a, e){var f=a-b,h=e-c,f=Math.sqrt(f*f+h*h);J+=f*(b+a)/2;K+=f*(c+e)/2;I+=f;b=a;c=e}var b,c;if(1!==N)if(1>N)N=1,J=K=I=0;else return;$.point=function(d,e){$.point=a;b=d;c=e}}function Zd(){$.point=gc}function $f(){function a(a,b){var c=e*a-d*b;J+=c*(d+a);K+=c*(e+b);I+=3*c;d=a;e=b}var b,c,d,e;2>N&&(N=2,J=K=I=0);$.point=function(f,h){$.point=a;b=d=f;c=e=h};$.lineEnd=function(){a(b,c)}}function ag(){function a(a,b){a*=w;b=b*w/2+u/4;var c=a-d,g=Math.cos(b),n=Math.sin(b),p=f*n,q=cb,r=db,s=e*g+p*Math.cos(c),c= p*Math.sin(c);cb=q*s-r*c;db=r*s+q*c;d=a;e=g;f=n}var b,c,d,e,f;ka.point=function(h,k){ka.point=a;d=(b=h)*w;e=Math.cos(k=(c=k)*w/2+u/4);f=Math.sin(k)};ka.lineEnd=function(){a(b,c)}}function la(a){return hc(function(){return a})()}function hc(a){function b(a){a=h(a[0]*w,a[1]*w);return[a[0]*l+v,x-a[1]*l]}function c(a){return(a=h.invert((a[0]-v)/l,(x-a[1])/l))&&[a[0]*O,a[1]*O]}function d(){h=Wd(f=$d(r,s,t),e);var a=e(p,q);v=m-a[0]*l;x=n+a[1]*l;return b}var e,f,h,k=Od(function(a,b){a=e(a,b);return[a[0]* l+v,x-a[1]*l]}),l=150,m=480,n=250,p=0,q=0,r=0,s=0,t=0,v,x,z=ae,y=null;b.stream=function(a){return bg(f,z(k(a)))};b.clipAngle=function(a){if(!arguments.length)return y;z=null==a?(y=a,ae):Sf(y=+a);return b};b.scale=function(a){if(!arguments.length)return l;l=+a;return d()};b.translate=function(a){if(!arguments.length)return[m,n];m=+a[0];n=+a[1];return d()};b.center=function(a){if(!arguments.length)return[p*O,q*O];p=a[0]%360*w;q=a[1]%360*w;return d()};b.rotate=function(a){if(!arguments.length)return[r* O,s*O,t*O];r=a[0]%360*w;s=a[1]%360*w;t=2u?c-2*u:c<-u?c+2*u:c,d[1])},sphere:function(){b.sphere()},lineStart:function(){b.lineStart()},lineEnd:function(){b.lineEnd()},polygonStart:function(){b.polygonStart()},polygonEnd:function(){b.polygonEnd()}}}function $d(a,b,c){return a?b||c?Wd(be(a), ce(b,c)):be(a):b||c?ce(b,c):ab}function de(a){return function(b,c){return b+=a,[b>u?b-2*u:b<-u?b+2*u:b,c]}}function be(a){var b=de(a);b.invert=de(-a);return b}function ce(a,b){function c(a,b){var c=Math.cos(b),g=Math.cos(a)*c,c=Math.sin(a)*c,p=Math.sin(b),q=p*d+g*e;return[Math.atan2(c*f-q*h,g*d-p*e),Math.asin(Math.max(-1,Math.min(1,q*f+c*h)))]}var d=Math.cos(a),e=Math.sin(a),f=Math.cos(b),h=Math.sin(b);c.invert=function(a,b){var c=Math.cos(b),g=Math.cos(a)*c,c=Math.sin(a)*c,p=Math.sin(b),q=p*f-c* h;return[Math.atan2(c*f+p*h,g*d+q*e),Math.asin(Math.max(-1,Math.min(1,q*d-g*e)))]};return c}function Fa(a,b){function c(b,c){var f=Math.cos(b),h=Math.cos(c),f=a(f*h);return[f*h*Math.sin(b),f*Math.sin(c)]}c.invert=function(a,c){var f=Math.sqrt(a*a+c*c),h=b(f),k=Math.sin(h),h=Math.cos(h);return[Math.atan2(a*k,f*h),Math.asin(f&&c*k/f)]};return c}function cg(a,b,c,d){var e,f,h;a=d[a];e=a[0];f=a[1];a=d[b];b=a[0];h=a[1];a=d[c];return 0<(a[1]-f)*(b-e)-(h-f)*(a[0]-e)}function ic(a,b,c){return(c[0]-b[0])* (a[1]-b[1])<(c[1]-b[1])*(a[0]-b[0])}function ee(a,b,c,d){var e=a[0],f=c[0],h=b[0]-e,k=d[0]-f;a=a[1];c=c[1];b=b[1]-a;d=d[1]-c;f=(k*(a-c)-d*(e-f))/(d*h-k*b);return[e+f*h,a+f*b]}function fe(a,b){var c=a.map(function(a,b){return{index:b,x:a[0],y:a[1]}}).sort(function(a,b){return a.yb.y?1:a.xb.x?1:0}),d=null,e={list:[],leftEnd:null,rightEnd:null,init:function(){e.leftEnd=e.createHalfEdge(null,"l");e.rightEnd=e.createHalfEdge(null,"l");e.leftEnd.r=e.rightEnd;e.rightEnd.l=e.leftEnd; e.list.unshift(e.leftEnd,e.rightEnd)},createHalfEdge:function(a,b){return{edge:a,side:b,vertex:null,l:null,r:null}},insert:function(a,b){b.l=a;b.r=a.r;a.r.l=b;a.r=b},leftBound:function(a){var b=e.leftEnd;do b=b.r;while(b!=e.rightEnd&&f.rightOf(b,a));return b=b.l},del:function(a){a.l.r=a.r;a.r.l=a.l;a.edge=null},right:function(a){return a.r},left:function(a){return a.l},leftRegion:function(a){return null==a.edge?d:a.edge.region[a.side]},rightRegion:function(a){return null==a.edge?d:a.edge.region[jc[a.side]]}}, f={bisect:function(a,b){var c={region:{l:a,r:b},ep:{l:null,r:null}},d=b.x-a.x,e=b.y-a.y;c.c=a.x*d+a.y*e+0.5*(d*d+e*e);(0(0Math.abs(e))return null;var f=(c.c*d.b-d.c*c.b)/e,e=(d.c*c.a-c.c*d.a)/e,h=c.region.r,k=d.region.r;h.y=c.region.r.x)&&"l"===h.side||!c&& "r"===h.side?null:{x:f,y:e}},rightOf:function(a,b){var c=a.edge,d=c.region.r,e=b.x>d.x;if(e&&"l"===a.side)return 1;if(!e&&"r"===a.side)return 0;if(1===c.a){var f=b.y-d.y,h=b.x-d.x,k=0,g=0;!e&&0>c.b||e&&0<=c.b?g=k=f>=c.b*h:(g=b.x+b.y*c.b>c.c,0>c.b&&(g=!g),g||(k=1));k||(d=d.x-c.region.l.x,g=c.b*(h*h-f*f)c.b&&(g=!g))}else h=c.c-c.a*b.x,c=b.y-h,f=b.x-d.x,d=h-d.y,g=c*c>f*f+d*d;return"l"===a.side?g:!g},endPoint:function(a,c,d){a.ep[c]=d;a.ep[jc[c]]&&b(a)},distance:function(a,b){var c= a.x-b.x,d=a.y-b.y;return Math.sqrt(c*c+d*d)}},h={list:[],insert:function(a,b,c){a.vertex=b;a.ystar=b.y+c;c=0;for(var d=h.list,e=d.length;cf.ystar||a.ystar==f.ystar&&b.x>f.vertex.x))break}d.splice(c,0,a)},del:function(a){for(var b=0,c=h.list,d=c.length;br.y&&(m=s,s=r,r=m,m="r");v=f.bisect(s,r);r=e.createHalfEdge(v,m);e.insert(p,r);f.endPoint(v,jc[m],t);if(t=f.intersect(p,r))h.del(p),h.insert(p,t,f.distance(t,s));(t=f.intersect(r,q))&&h.insert(r,t,f.distance(t,s))}for(m=e.right(e.leftEnd);m!=e.rightEnd;m=e.right(m))b(m.edge)}function Ga(a,b,c,d,e,f){if(!a(b,c,d,e,f)){var h= 0.5*(c+e),k=0.5*(d+f);b=b.nodes;b[0]&&Ga(a,b[0],c,d,h,k);b[1]&&Ga(a,b[1],h,d,e,k);b[2]&&Ga(a,b[2],c,k,h,f);b[3]&&Ga(a,b[3],h,k,e,f)}}function oa(){this._=new Date(1=k)return-1;e=b.charCodeAt(f++);if(37===e){if(e=dg[b.charAt(f++)],!e||0>(d=e(a,c,d)))return-1}else if(e!=c.charCodeAt(d++))return-1}return d}function fb(a){return RegExp("^(?:"+a.map(g.requote).join("|")+")", "i")}function ge(a){for(var b=new ba,c=-1,d=a.length;++cb?1:a>=b?0:NaN};g.descending=function(a,b){return ba?1:b>=a?0:NaN};g.mean=function(a,b){var c=a.length,d,e=0,f=-1,h=0;if(1===arguments.length)for(;++ff&&(e=f)}else{for(;++cf&&(e=f)}return e};g.max=function(a,b){var c=-1,d=a.length,e,f;if(1===arguments.length){for(;++ce&&(e=f)}else{for(;++ce&&(e=f)}return e};g.extent=function(a,b){var c= -1,d=a.length,e,f,h;if(1===arguments.length){for(;++cf&&(e=f),hf&&(e=f),hc&&(b=1);1>c&&(a=0);return function(){var c,e;do c=2*Math.random()-1,e=2*Math.random()-1,e=c*c+e*e;while(!e||1arguments.length&&(d=0);4>arguments.length&&(e=b.length);for(;d>>1;a.call(b,b[f],f)arguments.length&&(d=0);4>arguments.length&& (e=b.length);for(;d>>1;c=d.length)return h?h.call(c,b):f?b.sort(f):b;for(var g=-1,n=b.length,p=d[e++],q,r,s=new ba,t,v={};++g=d.length)return a;var f=[],h=e[c++],g;for(g in a)f.push({key:g,values:b(a[g], c)});h&&f.sort(function(a,b){return h(a.key,b.key)});return f}var c={},d=[],e=[],f,h;c.map=function(b){return a(b,0)};c.entries=function(c){return b(a(c,0),0)};c.key=function(a){d.push(a);return c};c.sortKeys=function(a){e[d.length-1]=a;return c};c.sortValues=function(a){f=a;return c};c.rollup=function(a){h=a;return c};return c};g.keys=function(a){var b=[],c;for(c in a)b.push(c);return b};g.values=function(a){var b=[],c;for(c in a)b.push(a[c]);return b};g.entries=function(a){var b=[],c;for(c in a)b.push({key:c, value:a[c]});return b};g.permute=function(a,b){for(var c=[],d=-1,e=b.length;++darguments.length&&(c=1,2>arguments.length&&(b=a,a=0));if(Infinity===(b-a)/c)throw Error("infinite range");var d=[],e;e=Math.abs(c);for(var f=1;e*f%1;)f*=10;e=f;var f=-1,h;a*=e;b*=e;c*=e;if(0>c)for(;(h=a+c*++f)>b;)d.push(h/e);else for(;(h=a+c*++f)a||304===a?f.load.call(e,k.call(e,l)):f.error.call(e,l)}var e={},f=g.dispatch("progress","load","error"),h={},k=V,l=new (P.XDomainRequest&&/^(http(s)?:)?\/\//.test(a)?XDomainRequest:XMLHttpRequest);"onload"in l?l.onload=l.onerror=d:l.onreadystatechange=function(){3arguments.length)return h[a];null==b?delete h[a]:h[a]=b+"";return e};e.mimeType=function(a){if(!arguments.length)return b;b=null==a?null:a+"";return e};e.response=function(a){k=a;return e};["get","post"].forEach(function(a){e[a]=function(){return e.send.apply(e,[a].concat(ha(arguments)))}});e.send=function(c,d,f){2===arguments.length&&"function"===typeof d&&(f=d,d=null); l.open(c,a,!0);null==b||"accept"in h||(h.accept=b+",*/*");if(l.setRequestHeader)for(var k in h)l.setRequestHeader(k,h[k]);null!=b&&l.overrideMimeType&&l.overrideMimeType(b);if(null!=f)e.on("error",f).on("load",function(a){f(null,a)});l.send(null==d?null:d);return e};e.abort=function(){l.abort();return e};g.rebind(e,f,"on");2===arguments.length&&"function"===typeof b&&(c=b,b=null);return null==c?e:e.get(Le(c))};g.text=function(){return g.xhr.apply(g,arguments).response(Me)};g.json=function(a,b){return g.xhr(a, "application/json",b).response(Ne)};g.html=function(a,b){return g.xhr(a,"text/html",b).response(Oe)};g.xml=function(){return g.xhr.apply(g,arguments).response(Pe)};var pc={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/"};g.ns={prefix:pc,qualify:function(a){var b=a.indexOf(":"),c=a;0<=b&&(c=a.substring(0,b),a=a.substring(b+1));return pc.hasOwnProperty(c)?{space:pc[c], local:a}:a}};g.dispatch=function(){for(var a=new ub,b=-1,c=arguments.length;++barguments.length?this[a].on(d):this[a].on(d,b)};g.format=function(a){a=jg.exec(a);var b=a[1]||" ",c=a[2]||">",d=a[3]||"",e=a[4]||"",f=a[5],h=+a[6],k=a[7],l=a[8],m=a[9],n=1,p="",q=!1;l&&(l=+l.substring(1));if(f||"0"===b&&"="===c)f=b="0",c="=",k&&(h-=Math.floor((h-1)/4));switch(m){case "n":k= !0;m="g";break;case "%":n=100;p="%";m="f";break;case "p":n=100;p="%";m="r";break;case "b":case "o":case "x":case "X":e&&(e="0"+m.toLowerCase());case "c":case "d":q=!0;l=0;break;case "s":n=-1,m="r"}"#"===e&&(e="");"r"!=m||l||(m="g");var m=kg.get(m)||Qe,r=f&&k;return function(a){if(q&&a%1)return"";var t=0>a||0===a&&0>1/a?(a=-a,"-"):d;if(0>n){var v=g.formatPrefix(a,l);a=v.scale(a);p=v.symbol}else a*=n;a=m(a,l);!f&&k&&(a=qc(a));var v=e.length+a.length+(r?0:t.length),x=v"===c?x+t+a:"^"===c?x.substring(0,v>>=1)+t+a+x.substring(v):t+(r?a:x+a))+p}};var jg=/(?:([^{])?([<>=^]))?([+\- ])?(#)?(0)?([0-9]+)?(,)?(\.[0-9]+)?([a-zA-Z%])?/,kg=g.map({b:function(a){return a.toString(2)},c:function(a){return String.fromCharCode(a)},o:function(a){return a.toString(8)},x:function(a){return a.toString(16)},X:function(a){return a.toString(16).toUpperCase()},g:function(a,b){return a.toPrecision(b)},e:function(a,b){return a.toExponential(b)}, f:function(a,b){return a.toFixed(b)},r:function(a,b){return(a=g.round(a,vb(a,b))).toFixed(Math.max(0,Math.min(20,vb(a*(1+1E-15),b))))}}),qc=V;if(ib)var lg=ib.length,qc=function(a){for(var b=a.lastIndexOf("."),c=0<=b?"."+a.substring(b+1):(b=a.length,""),d=[],e=0,f=ib[0];0a&&(a*=-1),b&&(a=g.round(a,vb(a,b))),c=1+Math.floor(1E-12+Math.log(a)/Math.LN10),c=Math.max(-24,Math.min(24,3*Math.floor((0>=c?c+1:c-1)/3))));return mg[8+c/3]};var me=function(){return V},ng=g.map({linear:me,poly:function(a){return function(b){return Math.pow(b,a)}},quad:function(){return Se},cubic:function(){return Te},sin:function(){return Ue},exp:function(){return Ve},circle:function(){return We},elastic:function(a, b){var c;2>arguments.length&&(b=0.45);arguments.length?c=b/(2*u)*Math.asin(1/a):(a=1,c=b/4);return function(d){return 1+a*Math.pow(2,10*-d)*Math.sin(2*(d-c)*u/b)}},back:function(a){a||(a=1.70158);return function(b){return b*b*((a+1)*b-a)}},bounce:function(){return Xe}}),og=g.map({"in":V,out:zc,"in-out":Ac,"out-in":function(a){return Ac(zc(a))}});g.ease=function(a){var b=a.indexOf("-"),c=0<=b?a.substring(0,b):a,b=0<=b?a.substring(b+1):"in",c=ng.get(c)||me,b=og.get(b)||V;return Re(b(c.apply(null,Array.prototype.slice.call(arguments, 1))))};g.event=null;g.transform=function(a){var b=W.createElementNS(g.ns.prefix.svg,"g");return(g.transform=function(a){b.setAttribute("transform",a);a=b.transform.baseVal.consolidate();return new Cc(a?a.matrix:pg)})(a)};Cc.prototype.toString=function(){return"translate("+this.translate+")rotate("+this.rotate+")skewX("+this.skew+")scale("+this.scale+")"};var pg={a:1,b:0,c:0,d:1,e:0,f:0};g.interpolate=function(a,b){for(var c=g.interpolators.length,d;0<=--c&&!(d=g.interpolators[c](a,b)););return d}; g.interpolateNumber=function(a,b){b-=a;return function(c){return a+b*c}};g.interpolateRound=function(a,b){b-=a;return function(c){return Math.round(a+b*c)}};g.interpolateString=function(a,b){var c,d,e=0,f=[],h=[],k,l;for(d=jb.lastIndex=0;c=jb.exec(b);++d)c.index&&f.push(b.substring(e,c.index)),h.push({i:f.length,x:c[0]}),f.push(null),e=jb.lastIndex;ef&&(f+=360);return function(a){return La(c+f*a,d+h*a,e+k*a)+""}};g.interpolateLab=function(a,b){a=g.lab(a);b=g.lab(b);var c=a.l,d=a.a,e=a.b,f=b.l-c,h=b.a-d,k=b.b-e;return function(a){return Jc(c+f*a,d+h*a,e+k*a)+""}};g.interpolateHcl=function(a,b){a=g.hcl(a); b=g.hcl(b);var c=a.h,d=a.c,e=a.l,f=b.h-c,h=b.c-d,k=b.l-e;180f&&(f+=360);return function(a){return Eb(c+f*a,d+h*a,e+k*a)+""}};g.interpolateArray=function(a,b){var c=[],d=[],e=a.length,f=b.length,h=Math.min(a.length,b.length),k;for(k=0;kb&&(b=30);c&&30>c&&(c=30);d&&30>d&&(d=30);return ca(Math.min(255,Math.floor(b/a)),Math.min(255,Math.floor(c/a)),Math.min(255,Math.floor(d/a)))};kb.darker=function(a){a= Math.pow(0.7,arguments.length?a:1);return ca(Math.floor(a*this.r),Math.floor(a*this.g),Math.floor(a*this.b))};kb.hsl=function(){return Ec(this.r,this.g,this.b)};kb.toString=function(){return"#"+ra(this.r)+ra(this.g)+ra(this.b)};var Ka=g.map({aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0", chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1", darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00", lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3", mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9", peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee", wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"});Ka.forEach(function(a,b){Ka.set(a,zb(b,ca,La))});g.hsl=function(a,b,c){return 1===arguments.length?a instanceof Db?sa(a.h,a.s,a.l):zb(""+a,Ec,sa):sa(+a,+b,+c)};var rc=Db.prototype=new qa;rc.brighter=function(a){a=Math.pow(0.7,arguments.length?a:1);return sa(this.h,this.s,this.l/a)};rc.darker=function(a){a=Math.pow(0.7,arguments.length?a:1);return sa(this.h,this.s,a*this.l)};rc.rgb=function(){return La(this.h, this.s,this.l)};g.hcl=function(a,b,c){return 1===arguments.length?a instanceof Ma?Aa(a.h,a.c,a.l):a instanceof Na?Kc(a.l,a.a,a.b):Kc((a=Fc((a=g.rgb(a)).r,a.g,a.b)).l,a.a,a.b):Aa(+a,+b,+c)};var sc=Ma.prototype=new qa;sc.brighter=function(a){return Aa(this.h,this.c,Math.min(100,this.l+lb*(arguments.length?a:1)))};sc.darker=function(a){return Aa(this.h,this.c,Math.max(0,this.l-lb*(arguments.length?a:1)))};sc.rgb=function(){return Eb(this.h,this.c,this.l).rgb()};g.lab=function(a,b,c){return 1===arguments.length? a instanceof Na?ta(a.l,a.a,a.b):a instanceof Ma?Eb(a.l,a.c,a.h):Fc((a=g.rgb(a)).r,a.g,a.b):ta(+a,+b,+c)};var lb=18,Gc=0.95047,Hc=1,Ic=1.08883,tc=Na.prototype=new qa;tc.brighter=function(a){return ta(Math.min(100,this.l+lb*(arguments.length?a:1)),this.a,this.b)};tc.darker=function(a){return ta(Math.max(0,this.l-lb*(arguments.length?a:1)),this.a,this.b)};tc.rgb=function(){return Jc(this.l,this.a,this.b)};var Oa=function(a,b){return b.querySelector(a)},Nc=function(a,b){return b.querySelectorAll(a)}, xa=W.documentElement,qg=xa.matchesSelector||xa.webkitMatchesSelector||xa.mozMatchesSelector||xa.msMatchesSelector||xa.oMatchesSelector,Uc=function(a,b){return qg.call(a,b)};"function"===typeof Sizzle&&(Oa=function(a,b){return Sizzle(a,b)[0]||null},Nc=function(a,b){return Sizzle.uniqueSort(Sizzle(a,b))},Uc=Sizzle.matchesSelector);var C=[];g.selection=function(){return Ia};g.selection.prototype=C;C.select=function(a){var b=[],c,d,e,f;"function"!==typeof a&&(a=Lc(a));for(var h=-1,k=this.length;++harguments.length){if("string"===typeof a){var c=this.node();a=g.ns.qualify(a); return a.local?c.getAttributeNS(a.space,a.local):c.getAttribute(a)}for(b in a)this.each(Oc(b,a[b]));return this}return this.each(Oc(a,b))};C.classed=function(a,b){if(2>arguments.length){if("string"===typeof a){var c=this.node(),d=(a=a.trim().split(/^|\s+/g)).length,e=-1;if(b=c.classList)for(;++ed){if("string"!==typeof a){2>d&&(b="");for(c in a)this.each(Rc(c,a[c],b));return this}if(2>d)return P.getComputedStyle(this.node(),null).getPropertyValue(a);c=""}return this.each(Rc(a,b,c))};C.property=function(a,b){if(2>arguments.length){if("string"===typeof a)return this.node()[a];for(b in a)this.each(Sc(b,a[b]));return this}return this.each(Sc(a,b))};C.text=function(a){return arguments.length?this.each("function"===typeof a?function(){var b=a.apply(this, arguments);this.textContent=null==b?"":b}:null==a?function(){this.textContent=""}:function(){this.textContent=a}):this.node().textContent};C.html=function(a){return arguments.length?this.each("function"===typeof a?function(){var b=a.apply(this,arguments);this.innerHTML=null==b?"":b}:null==a?function(){this.innerHTML=""}:function(){this.innerHTML=a}):this.node().innerHTML};C.append=function(a){function b(){return this.appendChild(W.createElementNS(this.namespaceURI,a))}function c(){return this.appendChild(W.createElementNS(a.space, a.local))}a=g.ns.qualify(a);return this.select(a.local?c:b)};C.insert=function(a,b){function c(){return this.insertBefore(W.createElementNS(this.namespaceURI,a),Oa(b,this))}function d(){return this.insertBefore(W.createElementNS(a.space,a.local),Oa(b,this))}a=g.ns.qualify(a);return this.select(a.local?d:c)};C.remove=function(){return this.each(function(){var a=this.parentNode;a&&a.removeChild(this)})};C.data=function(a,b){function c(a,c){var d,e=a.length,f=c.length,h=Math.min(e,f),v=Array(f),x=Array(f), z=Array(e),y,G;if(b){var h=new ba,H=new ba,D=[],B;for(d=-1;++dd){if("string"!==typeof a){2>d&&(b=!1);for(c in a)this.each(Vc(c,a[c],b));return this}if(2>d)return(d=this.node()["__on"+a])&&d._;c=!1}return this.each(Vc(a,b,c))};C.each=function(a){return ia(this,function(b,c,d){a.call(b,b.__data__,c,d)})};C.call=function(a){var b=ha(arguments);a.apply(b[0]=this,b);return this};C.empty=function(){return!this.node()};C.node=function(){for(var a=0,b=this.length;a=a)return 0;if(1<=a)return 1;var b=a*a,c=b*a;return 4*(0.5>a?c:3*(a-b)+c-0.75)},delay:0,duration:250};M.call=C.call;M.empty=C.empty;M.node=C.node; g.transition=function(a){return arguments.length?Ja?a.transition():a:Ia.transition()};g.transition.prototype=M;M.select=function(a){var b=this.id,c=[],d,e,f;"function"!==typeof a&&(a=Lc(a));for(var h=-1,k=this.length;++harguments.length){for(b in a)this.attr(b,a[b]);return this}var e=xb(a),f=g.ns.qualify(a);return Ib(this,"attr."+a,b,function(a){function b(){var c=this.getAttribute(f),d;return c!==a&&(d=e(c,a),function(a){this.setAttribute(f,d(a))})}function g(){var b=this.getAttributeNS(f.space,f.local),c;return b!==a&&(c=e(b,a),function(a){this.setAttributeNS(f.space,f.local,c(a))})}return null==a?f.local?d:c:(a+="",f.local?g:b)})};M.attrTween=function(a, b){function c(a,c){var d=b.call(this,a,c,this.getAttribute(e));return d&&function(a){this.setAttribute(e,d(a))}}function d(a,c){var d=b.call(this,a,c,this.getAttributeNS(e.space,e.local));return d&&function(a){this.setAttributeNS(e.space,e.local,d(a))}}var e=g.ns.qualify(a);return this.tween("attr."+a,e.local?d:c)};M.style=function(a,b,c){function d(){this.style.removeProperty(a)}var e=arguments.length;if(3>e){if("string"!==typeof a){2>e&&(b="");for(c in a)this.style(c,a[c],b);return this}c=""}var f= xb(a);return Ib(this,"style."+a,b,function(b){function e(){var d=P.getComputedStyle(this,null).getPropertyValue(a),k;return d!==b&&(k=f(d,b),function(b){this.style.setProperty(a,k(b),c)})}return null==b?d:(b+="",e)})};M.styleTween=function(a,b,c){3>arguments.length&&(c="");return this.tween("style."+a,function(d,e){var f=b.call(this,d,e,P.getComputedStyle(this,null).getPropertyValue(a));return f&&function(b){this.style.setProperty(a,f(b),c)}})};M.text=function(a){return Ib(this,"text",a,bf)};M.remove= function(){return this.each("end.transition",function(){var a;!this.__transition__&&(a=this.parentNode)&&a.removeChild(this)})};M.ease=function(a){var b=this.id;if(1>arguments.length)return this.node().__transition__[b].ease;"function"!==typeof a&&(a=g.ease.apply(g,arguments));return ia(this,function(c){c.__transition__[b].ease=a})};M.delay=function(a){var b=this.id;return ia(this,"function"===typeof a?function(c,d,e){c.__transition__[b].delay=a.call(c,c.__data__,d,e)|0}:(a|=0,function(c){c.__transition__[b].delay= a}))};M.duration=function(a){var b=this.id;return ia(this,"function"===typeof a?function(c,d,e){c.__transition__[b].duration=Math.max(1,a.call(c,c.__data__,d,e)|0)}:(a=Math.max(1,a|0),function(c){c.__transition__[b].duration=a}))};M.each=function(a,b){var c=this.id;if(2>arguments.length){var d=mb,e=Ja;Ja=c;ia(this,function(b,d,e){mb=b.__transition__[c];a.call(b,b.__data__,d,e)});mb=d;Ja=e}else ia(this,function(d){d.__transition__[c].event.on(a,b)});return this};M.transition=function(){for(var a=this.id, b=++ne,c=[],d,e,f,h,k=0,g=this.length;karguments.length?this.node().__transition__[c].tween.get(a):ia(this,null==b?function(b){b.__transition__[c].tween.remove(a)}:function(d){d.__transition__[c].tween.set(a,b)})};var rg=0,Kb={},ua=null,Ra,Qa;g.timer=function(a,b,c){if(3>arguments.length){if(2> arguments.length)b=0;else if(!isFinite(b))return;c=Date.now()}var d=Kb[a.id];d&&d.callback===a?(d.then=c,d.delay=b):Kb[a.id=++rg]=ua={callback:a,then:c,delay:b,next:ua};Ra||(Qa=clearTimeout(Qa),Ra=1,Yc(Jb))};g.timer.flush=function(){for(var a,b=Date.now(),c=ua;c;)a=b-c.then,c.delay||(c.flush=c.callback(a)),c=c.next;Xc()};var Yc=P.requestAnimationFrame||P.webkitRequestAnimationFrame||P.mozRequestAnimationFrame||P.oRequestAnimationFrame||P.msRequestAnimationFrame||function(a){setTimeout(a,17)};g.mouse= function(a){return Zc(a,Bc())};var Lb=/WebKit/.test(P.navigator.userAgent)?-1:0;g.touches=function(a,b){2>arguments.length&&(b=Bc().touches);return b?ha(b).map(function(b){var d=Zc(a,b);d.identifier=b.identifier;return d}):[]};g.scale={};g.scale.linear=function(){return $c([0,1],[0,1],g.interpolate,!1)};g.scale.log=function(){return dd(g.scale.linear(),Ob)};var ff=g.format(".0e");Ob.pow=function(a){return Math.pow(10,a)};Ua.pow=function(a){return-Math.pow(10,-a)};g.scale.pow=function(){return ed(g.scale.linear(), 1)};g.scale.sqrt=function(){return g.scale.pow().exponent(0.5)};g.scale.ordinal=function(){return fd([],{t:"range",a:[[]]})};g.scale.category10=function(){return g.scale.ordinal().range(sg)};g.scale.category20=function(){return g.scale.ordinal().range(tg)};g.scale.category20b=function(){return g.scale.ordinal().range(ug)};g.scale.category20c=function(){return g.scale.ordinal().range(vg)};var sg="#1f77b4 #ff7f0e #2ca02c #d62728 #9467bd #8c564b #e377c2 #7f7f7f #bcbd22 #17becf".split(" "),tg="#1f77b4 #aec7e8 #ff7f0e #ffbb78 #2ca02c #98df8a #d62728 #ff9896 #9467bd #c5b0d5 #8c564b #c49c94 #e377c2 #f7b6d2 #7f7f7f #c7c7c7 #bcbd22 #dbdb8d #17becf #9edae5".split(" "), ug="#393b79 #5254a3 #6b6ecf #9c9ede #637939 #8ca252 #b5cf6b #cedb9c #8c6d31 #bd9e39 #e7ba52 #e7cb94 #843c39 #ad494a #d6616b #e7969c #7b4173 #a55194 #ce6dbd #de9ed6".split(" "),vg="#3182bd #6baed6 #9ecae1 #c6dbef #e6550d #fd8d3c #fdae6b #fdd0a2 #31a354 #74c476 #a1d99b #c7e9c0 #756bb1 #9e9ac8 #bcbddc #dadaeb #636363 #969696 #bdbdbd #d9d9d9".split(" ");g.scale.quantile=function(){return gd([],[])};g.scale.quantize=function(){return hd(0,1,[0,1])};g.scale.threshold=function(){return id([0.5],[0,1])}; g.scale.identity=function(){return jd([0,1])};g.svg={};g.svg.arc=function(){function a(){var a=b.apply(this,arguments),h=c.apply(this,arguments),k=d.apply(this,arguments)+na,g=e.apply(this,arguments)+na,m=(g=wg?a?"M0,"+h+"A"+h+","+h+" 0 1,1 0,"+-h+"A"+h+","+h+" 0 1,1 0,"+h+"M0,"+a+"A"+a+","+a+" 0 1,0 0,"+-a+"A"+a+","+a+" 0 1,0 0,"+a+"Z":"M0,"+h+"A"+h+","+h+" 0 1,1 0,"+-h+"A"+h+","+h+" 0 1,1 0,"+h+ "Z":a?"M"+h*p+","+h*k+"A"+h+","+h+" 0 "+n+",1 "+h*q+","+h*g+"L"+a*q+","+a*g+"A"+a+","+a+" 0 "+n+",0 "+a*p+","+a*k+"Z":"M"+h*p+","+h*k+"A"+h+","+h+" 0 "+n+",1 "+h*q+","+h*g+"L0,0Z"}var b=gf,c=hf,d=kd,e=ld;a.innerRadius=function(c){if(!arguments.length)return b;b=F(c);return a};a.outerRadius=function(b){if(!arguments.length)return c;c=F(b);return a};a.startAngle=function(b){if(!arguments.length)return d;d=F(b);return a};a.endAngle=function(b){if(!arguments.length)return e;e=F(b);return a};a.centroid= function(){var a=(b.apply(this,arguments)+c.apply(this,arguments))/2,h=(d.apply(this,arguments)+e.apply(this,arguments))/2+na;return[Math.cos(h)*a,Math.sin(h)*a]};return a};var na=-u/2,wg=2*u-1E-6;g.svg.line=function(){return md(V)};var Qb=g.map({linear:U,"linear-closed":function(a){return U(a)+"Z"},"step-before":Rb,"step-after":Sb,basis:od,"basis-open":function(a){if(4>a.length)return U(a);for(var b=[],c=-1,d=a.length,e,f=[0],h=[0];3>++c;)e=a[c],f.push(e[0]),h.push(e[1]);b.push(aa(va,f)+","+aa(va, h));for(--c;++c++c;)f=a[c%d],h.push(f[0]),k.push(f[1]);b=[aa(va,h),",",aa(va,k)];for(--c;++ca.length?U(a):a[0]+Wa(a,Tb(a,b))},"cardinal-open":function(a,b){return 4>a.length?U(a):a[1]+Wa(a.slice(1,a.length-1),Tb(a,b))},"cardinal-closed":function(a,b){return 3>a.length?U(a):a[0]+Wa((a.push(a[0]),a),Tb([a[a.length-2]].concat(a,[a[1]]),b))},monotone:function(a){if(3>a.length)a=U(a);else{var b=a[0],c=[],d,e,f,h;d=0;e=a.length-1;var k=[];f=a[1];for(h=k[0]=Ub(a[0],f);++dMath.abs(d)?k[g]=k[g+1]=0:(e=k[g]/d,f=k[g+1]/d,h=e*e+f*f,9u)+",1 "+f.p1)+(f.a0==h.a0&&f.a1==h.a1?"Q 0,0 "+f.p0:"Q 0,0 "+h.p0+("A"+h.r+","+h.r+" 0 "+ +(h.a1-h.a0>u)+ ",1 "+h.p1)+("Q 0,0 "+f.p0))+"Z"}function b(a,b,c,d){var g=b.call(a,c,d);b=e.call(a,g,d);c=f.call(a,g,d)+na;a=h.call(a,g,d)+na;return{r:b,a0:c,a1:a,p0:[b*Math.cos(c),b*Math.sin(c)],p1:[b*Math.cos(a),b*Math.sin(a)]}}var c=sb,d=rb,e=jf,f=kd,h=ld;a.radius=function(b){if(!arguments.length)return e;e=F(b);return a};a.source=function(b){if(!arguments.length)return c;c=F(b);return a};a.target=function(b){if(!arguments.length)return d;d=F(b);return a};a.startAngle=function(b){if(!arguments.length)return f; f=F(b);return a};a.endAngle=function(b){if(!arguments.length)return h;h=F(b);return a};return a};g.svg.diagonal=function(){function a(a,f){var h=b.call(this,a,f),g=c.call(this,a,f),l=(h.y+g.y)/2,h=[h,{x:h.x,y:l},{x:g.x,y:l},g],h=h.map(d);return"M"+h[0]+"C"+h[1]+" "+h[2]+" "+h[3]}var b=sb,c=rb,d=td;a.source=function(c){if(!arguments.length)return b;b=F(c);return a};a.target=function(b){if(!arguments.length)return c;c=F(b);return a};a.projection=function(b){if(!arguments.length)return d;d=b;return a}; return a};g.svg.diagonal.radial=function(){var a=g.svg.diagonal(),b=td,c=a.projection;a.projection=function(a){return arguments.length?c(kf(b=a)):b};return a};g.svg.symbol=function(){function a(a,e){return(oe.get(b.call(this,a,e))||ud)(c.call(this,a,e))}var b=mf,c=lf;a.type=function(c){if(!arguments.length)return b;b=F(c);return a};a.size=function(b){if(!arguments.length)return c;c=F(b);return a};return a};var oe=g.map({circle:ud,cross:function(a){a=Math.sqrt(a/5)/2;return"M"+-3*a+","+-a+"H"+-a+"V"+ -3*a+"H"+a+"V"+-a+"H"+3*a+"V"+a+"H"+a+"V"+3*a+"H"+-a+"V"+a+"H"+-3*a+"Z"},diamond:function(a){a=Math.sqrt(a/(2*pe));var b=a*pe;return"M0,"+-a+"L"+b+",0 0,"+a+" "+-b+",0Z"},square:function(a){a=Math.sqrt(a)/2;return"M"+-a+","+-a+"L"+a+","+-a+" "+a+","+a+" "+-a+","+a+"Z"},"triangle-down":function(a){a=Math.sqrt(a/nb);var b=a*nb/2;return"M0,"+b+"L"+a+","+-b+" "+-a+","+-b+"Z"},"triangle-up":function(a){a=Math.sqrt(a/nb);var b=a*nb/2;return"M0,"+-b+"L"+a+","+b+" "+-a+","+b+"Z"}});g.svg.symbolTypes=oe.keys(); var nb=Math.sqrt(3),pe=Math.tan(30*w);g.svg.axis=function(){function a(a){a.each(function(){var a=g.select(this),p=null==l?b.ticks?b.ticks.apply(b,k):b.domain():l,s=null==m?b.tickFormat?b.tickFormat.apply(b,k):String:m,t=nf(b,p,n),v=a.selectAll(".tick.minor").data(t,String),t=v.enter().insert("line",".tick").attr("class","tick minor").style("opacity",1E-6),x=g.transition(v.exit()).style("opacity",1E-6).remove(),v=g.transition(v).style("opacity",1),z=a.selectAll(".tick.major").data(p,String),p=z.enter().insert("g", "path").attr("class","tick major").style("opacity",1E-6),y=g.transition(z.exit()).style("opacity",1E-6).remove(),G=g.transition(z).style("opacity",1),H,D=Sa(b),a=a.selectAll(".domain").data([0]),a=(a.enter().append("path").attr("class","domain"),g.transition(a)),B=b.copy(),E=this.__chart__||B;this.__chart__=B;p.append("line");p.append("text");var u=p.select("line"),L=G.select("line"),s=z.select("text").text(s),z=p.select("text"),w=G.select("text");switch(c){case "bottom":H=vd;t.attr("y2",e);v.attr("x2", 0).attr("y2",e);u.attr("y2",d);z.attr("y",Math.max(d,0)+h);L.attr("x2",0).attr("y2",d);w.attr("x",0).attr("y",Math.max(d,0)+h);s.attr("dy",".71em").style("text-anchor","middle");a.attr("d","M"+D[0]+","+f+"V0H"+D[1]+"V"+f);break;case "top":H=vd;t.attr("y2",-e);v.attr("x2",0).attr("y2",-e);u.attr("y2",-d);z.attr("y",-(Math.max(d,0)+h));L.attr("x2",0).attr("y2",-d);w.attr("x",0).attr("y",-(Math.max(d,0)+h));s.attr("dy","0em").style("text-anchor","middle");a.attr("d","M"+D[0]+","+-f+"V0H"+D[1]+"V"+-f); break;case "left":H=wd;t.attr("x2",-e);v.attr("x2",-e).attr("y2",0);u.attr("x2",-d);z.attr("x",-(Math.max(d,0)+h));L.attr("x2",-d).attr("y2",0);w.attr("x",-(Math.max(d,0)+h)).attr("y",0);s.attr("dy",".32em").style("text-anchor","end");a.attr("d","M"+-f+","+D[0]+"H0V"+D[1]+"H"+-f);break;case "right":H=wd,t.attr("x2",e),v.attr("x2",e).attr("y2",0),u.attr("x2",d),z.attr("x",Math.max(d,0)+h),L.attr("x2",d).attr("y2",0),w.attr("x",Math.max(d,0)+h).attr("y",0),s.attr("dy",".32em").style("text-anchor","start"), a.attr("d","M"+f+","+D[0]+"H0V"+D[1]+"H"+f)}if(b.ticks)p.call(H,E),G.call(H,B),y.call(H,B),t.call(H,E),v.call(H,B),x.call(H,B);else{var fa=B.rangeBand()/2,t=function(a){return B(a)+fa};p.call(H,t);G.call(H,t)}})}var b=g.scale.linear(),c=qe,d=6,e=6,f=6,h=3,k=[10],l=null,m,n=0;a.scale=function(c){if(!arguments.length)return b;b=c;return a};a.orient=function(b){if(!arguments.length)return c;c=b in xg?b+"":qe;return a};a.ticks=function(){if(!arguments.length)return k;k=arguments;return a};a.tickValues= function(b){if(!arguments.length)return l;l=b;return a};a.tickFormat=function(b){if(!arguments.length)return m;m=b;return a};a.tickSize=function(b,c){if(!arguments.length)return d;var h=arguments.length-1;d=+b;e=1rect,.s>rect").attr("width",m[1][0]-m[0][0])}function d(a){a.select(".extent").attr("y",m[0][1]);a.selectAll(".extent,.e>rect,.w>rect").attr("height",m[1][1]-m[0][1])}function e(){function e(){var a=g.event.changedTouches;return a?g.touches(t,a)[0]:g.mouse(t)}function l(){var a=e(),f=!1;u&&(a[0]+=u[0],a[1]+=u[1]);D||(g.event.altKey?(B||(B=[(m[0][0]+m[1][0])/2,(m[0][1]+m[1][1])/2]),E[0]=m[+(a[0]e-D){var h=a[0],a=b(a[0]);c(2*s);d(h,a);f(x.of(this,arguments))}D=e}}function p(){var a=g.touches(this),b=a[0],e=r[b.identifier];if(a=a[1]){var h=r[a.identifier],b=[(b[0]+a[0])/2,(b[1]+a[1])/2],e=[(e[0]+h[0])/2,(e[1]+h[1])/2];c(g.event.scale*t)}d(b,e);D=null;f(x.of(this,arguments))}var q=[0,0],r,s=1,t,v=re,x=wb(a,"zoom"),z,y,G,H,D;a.translate=function(b){if(!arguments.length)return q;q=b.map(Number);e();return a};a.scale=function(b){if(!arguments.length)return s; s=+b;e();return a};a.scaleExtent=function(b){if(!arguments.length)return v;v=null==b?re:b.map(Number);return a};a.x=function(b){if(!arguments.length)return y;y=b;z=b.copy();q=[0,0];s=1;return a};a.y=function(b){if(!arguments.length)return H;H=b;G=b.copy();q=[0,0];s=1;return a};return g.rebind(a,x,"on")};var re=[0,Infinity],ob,zg="onwheel"in document?(ob=function(){return-g.event.deltaY*(g.event.deltaMode?120:1)},"wheel"):"onmousewheel"in document?(ob=function(){return g.event.wheelDelta},"mousewheel"): (ob=function(){return-g.event.detail},"MozMousePixelScroll");g.layout={};g.layout.bundle=function(){return function(a){for(var b=[],c=-1,d=a.length;++c(h*=0.99))return d.end({type:"end",alpha:h=0}),!0;var b=r.length,c=s.length,f,l,m,q,u,w,L;for(f=0;fe&&(e=g);d.push(g)}for(h=0;h=m[0]&&p<=m[1]&&(p=k[g.bisect(n,p,1,r)-1],p.y+=s,p.push(a[h]));return k}var b=!0,c=Number,d=Af,e=zf;a.value=function(b){if(!arguments.length)return c; c=b;return a};a.range=function(b){if(!arguments.length)return d;d=F(b);return a};a.bins=function(b){if(!arguments.length)return e;e="number"===typeof b?function(a){return zd(a,b)}:F(b);return a};a.frequency=function(c){if(!arguments.length)return b;b=!!c;return a};return a};g.layout.hierarchy=function(){function a(b,g,l){var m=e.call(c,b,g);b.depth=g;l.push(b);if(m&&(p=m.length)){var n=-1,p,q=b.children=[],r=0;g+=1;for(var s;++nb?0:b),e.area=isNaN(f)||0>=f?0:f}function b(c){var e=c.children;if(e&&e.length){var f=m(c),h=[],g=e.slice(),k=Infinity,l,p="slice"===q?f.dx:"dice"===q?f.dy:"slice-dice"===q?c.depth&1?f.dy:f.dx:Math.min(f.dx,f.dy);a(g,f.dx*f.dy/c.value);for(h.area=0;0<(c=g.length);){h.push(c=g[c-1]);h.area+=c.area;if(!(c="squarify"!== q)){l=p;c=h.area;for(var n=void 0,u=0,w=Infinity,A=-1,C=h.length;++Au&&(u=n);c*=c;l*=l;c=(l=c?Math.max(l*u*r/c,c/(l*w*r)):Infinity)<=k}c?(g.pop(),k=l):(h.area-=h.pop().area,d(h,p,f,!1),p=Math.min(f.dx,f.dy),h.length=h.area=0,k=Infinity)}h.length&&(d(h,p,f,!0),h.length=h.area=0);e.forEach(b)}}function c(b){var e=b.children;if(e&&e.length){var f=m(b),h=e.slice(),g=[];a(h,f.dx*f.dy/b.value);for(g.area=0;b=h.pop();)g.push(b),g.area+=b.area,null!=b.z&&(d(g,b.z?f.dx:f.dy, f,!h.length),g.length=g.area=0);e.forEach(c)}}function d(a,b,c,d){var e=-1,f=a.length,g=c.x,k=c.y,l=b?h(a.area/b):0,m;if(b==c.dx){if(d||l>c.dy)l=c.dy;for(;++ec.dx)l=c.dx;for(;++eh?d:21>g?e:b)(a)}var b=g.geo.albers(),c=g.geo.albers().rotate([160,0]).center([0,60]).parallels([55,65]),d=g.geo.albers().rotate([160,0]).center([0,20]).parallels([8,18]),e=g.geo.albers().rotate([60,0]).center([0,10]).parallels([8,18]);a.scale=function(f){if(!arguments.length)return b.scale();b.scale(f);c.scale(0.6* f);d.scale(f);e.scale(1.5*f);return a.translate(b.translate())};a.translate=function(f){if(!arguments.length)return b.translate();var h=b.scale(),g=f[0],l=f[1];b.translate(f);c.translate([g-0.4*h,l+0.17*h]);d.translate([g-0.19*h,l+0.2*h]);e.translate([g+0.58*h,l+0.43*h]);return a};return a.scale(b.scale())};(g.geo.albers=function(){var a=29.5*w,b=45.5*w,c=hc(Pd),d=c(a,b);d.parallels=function(d){return arguments.length?c(a=d[0]*w,b=d[1]*w):[a*O,b*O]};return d.rotate([98,0]).center([0,38]).scale(1E3)}).raw= Pd;var ue=Fa(function(a){return Math.sqrt(2/(1+a))},function(a){return 2*Math.asin(a/2)});(g.geo.azimuthalEqualArea=function(){return la(ue)}).raw=ue;var ve=Fa(function(a){return(a=Math.acos(a))&&a/Math.sin(a)},V);(g.geo.azimuthalEquidistant=function(){return la(ve)}).raw=ve;g.geo.bounds=Qd(V);g.geo.centroid=function(a){N=Y=J=K=I=0;g.geo.stream(a,Z);var b;if(Y&&Math.abs(b=Math.sqrt(J*J+K*K+I*I))>A)return[Math.atan2(K,J)*O,Math.asin(Math.max(-1,Math.min(1,I/b)))*O]};var N,Y,J,K,I,Z={sphere:function(){2> N&&(N=2,Y=J=K=I=0)},point:Rd,lineStart:cc,lineEnd:dc,polygonStart:function(){2>N&&(N=2,Y=J=K=I=0);Z.lineStart=Nf},polygonEnd:function(){Z.lineStart=cc}};g.geo.circle=function(){function a(){var a="function"===typeof b?b.apply(this,arguments):b,c=$d(-a[0]*w,-a[1]*w,0).invert,d=[];e(null,null,1,{point:function(a,b){d.push(a=c(a,b));a[0]*=O;a[1]*=O}});return{type:"Polygon",coordinates:[d]}}var b=[0,0],c,d=6,e;a.origin=function(c){if(!arguments.length)return b;b=c;return a};a.angle=function(b){if(!arguments.length)return c; e=ec((c=+b)*w,d*w);return a};a.precision=function(b){if(!arguments.length)return d;e=ec(c*w,(d=+b)*w);return a};return a.angle(90)};var ae=Td(za,function(a){var b=NaN,c=NaN,d=NaN,e;return{lineStart:function(){a.lineStart();e=1},point:function(f,h){var g=0=u){Math.abs(b-d)A?Math.atan((Math.sin(m)*(q=Math.cos(h))*Math.sin(n)-Math.sin(h)*(p=Math.cos(m))*Math.sin(l))/(p*q*r)):(m+h)/2;a.point(d,c);a.lineEnd();a.lineStart();a.point(g,c);e=0}a.point(b=f,c=h);d=g},lineEnd:function(){a.lineEnd();b=c=NaN},clean:function(){return 2-e}}},function(a,b,c,d){null==a?(c=c*u/2,d.point(-u,c),d.point(0,c),d.point(u,c),d.point(u,0),d.point(u,-c),d.point(0,-c),d.point(-u,-c),d.point(-u,0),d.point(-u,c)):Math.abs(a[0]-b[0])>A?(a=(a[0]c&&(b=d,d=c,c=b);f>e&&(b=f,f=e,e=b);return a.precision(n)};a.step=function(b){if(!arguments.length)return[h,k];h=+b[0];k=+b[1];return a};a.precision=function(b){if(!arguments.length)return n;n=+b;l=Tf(f,e,n);m=Uf(d,c,n);return a};return a.extent([[-180+ A,-90+A],[180-A,90-A]])};g.geo.interpolate=function(a,b){return Vf(a[0]*w,a[1]*w,b[0]*w,b[1]*w)};g.geo.greatArc=function(){function a(){for(var a=c||b.apply(this,arguments),l=e||d.apply(this,arguments),m=h||g.geo.interpolate(a,l),n=0,p=f/m.distance,a=[a];1>(n+=p);)a.push(m(n));a.push(l);return{type:"LineString",coordinates:a}}var b=sb,c,d=rb,e,f=6*w,h;a.distance=function(){return(h||g.geo.interpolate(c||b.apply(this,arguments),e||d.apply(this,arguments))).distance};a.source=function(d){if(!arguments.length)return b; b=d;h=(c="function"===typeof d?null:d)&&e?g.geo.interpolate(c,e):null;return a};a.target=function(b){if(!arguments.length)return d;d=b;e="function"===typeof b?null:b;h=c&&e?g.geo.interpolate(c,e):null;return a};a.precision=function(b){if(!arguments.length)return f/w;f=b*w;return a};return a};fc.invert=function(a,b){return[2*u*a,2*Math.atan(Math.exp(2*u*b))-u/2]};(g.geo.mercator=function(){return la(fc).scale(500)}).raw=fc;var xe=Fa(function(){return 1},Math.asin);(g.geo.orthographic=function(){return la(xe)}).raw= xe;g.geo.path=function(){function a(a){a&&g.geo.stream(a,e(f.pointRadius("function"===typeof b?+b.apply(this,arguments):b)));return f.result()}var b=4.5,c,d,e,f;a.area=function(a){pb=0;g.geo.stream(a,e(ja));return pb};a.centroid=function(a){N=J=K=I=0;g.geo.stream(a,e($));return I?[J/I,K/I]:void 0};a.bounds=function(a){return Qd(e)(a)};a.projection=function(b){if(!arguments.length)return c;e=(c=b)?b.stream||Wf(b):V;return a};a.context=function(b){if(!arguments.length)return d;f=null==(d=b)?new Xf: new Yf(b);return a};a.pointRadius=function(c){if(!arguments.length)return b;b="function"===typeof c?c:+c;return a};return a.projection(g.geo.albersUsa()).context(null)};var pb,bb,ja={point:T,lineStart:T,lineEnd:T,polygonStart:function(){bb=0;ja.lineStart=Zf},polygonEnd:function(){ja.lineStart=ja.lineEnd=ja.point=T;pb+=Math.abs(bb/2)}},$={point:gc,lineStart:Yd,lineEnd:Zd,polygonStart:function(){$.lineStart=$f},polygonEnd:function(){$.point=gc;$.lineStart=Yd;$.lineEnd=Zd}};g.geo.area=function(a){ya= 0;g.geo.stream(a,ka);return ya};var ya,cb,db,ka={sphere:function(){ya+=4*u},point:T,lineStart:T,lineEnd:T,polygonStart:function(){cb=1;db=0;ka.lineStart=ag},polygonEnd:function(){var a=2*Math.atan2(db,cb);ya+=0>a?4*u+a:a;ka.lineStart=ka.lineEnd=ka.point=T}};g.geo.projection=la;g.geo.projectionMutator=hc;var ye=Fa(function(a){return 1/(1+a)},function(a){return 2*Math.atan(a)});(g.geo.stereographic=function(){return la(ye)}).raw=ye;g.geom={};g.geom.hull=function(a){if(3>a.length)return[];var b=a.length, c=b-1,d=[],e=[],f,h=0,g,l,m,n,p,q,r;for(f=1;f=m*m+n*n?d[f].index=-1:(d[p].index=-1,r=d[f].angle,p=f,q=b)):(r=d[f].angle,p=f,q=b);e.push(h); for(b=f=0;2>f;++b)-1!==d[b].index&&(e.push(d[b].index),f++);for(h=e.length;bA}).map(function(a){return b[a]})});b.forEach(function(b,d){var e=b.length;if(!e)return b.push([-1E6,-1E6],[-1E6,1E6],[1E6,1E6], [1E6,-1E6]);if(!(2k?e:-e,e]):(0Math.abs(k.x-b.x)+Math.abs(k.y-b.y)||(a.point=null,g(a,k,c,d,e,f)),g(a,b,c,d,e,f)):a.point=b}else g(a,b,c,d,e,f)}function g(a,b,c,d,e,h){var k=0.5*(c+e),l=0.5* (d+h),m=b.x>=k,n=b.y>=l,u=(n<<1)+m;a.leaf=!1;a=a.nodes[u]||(a.nodes[u]={leaf:!0,nodes:[],point:null});m?c=k:e=k;n?d=l:h=l;f(a,b,c,d,e,h)}var k,l=-1,m=a.length;if(5>arguments.length)if(3===arguments.length)e=c,d=b,c=b=0;else for(b=c=Infinity,d=e=-Infinity;++ld&&(d=k.x),k.y>e&&(e=k.y);k=d-b;l=e-c;k>l?e=c+k:d=b+l;var n={leaf:!0,nodes:[],point:null,add:function(a){f(n,a,b,c,d,e)},visit:function(a){Ga(a,n,b,c,d,e)}};a.forEach(n.add);return n};g.time={};var R= Date;oa.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(){ga.setUTCDate.apply(this._,arguments)},setDay:function(){ga.setUTCDay.apply(this._,arguments)},setFullYear:function(){ga.setUTCFullYear.apply(this._,arguments)},setHours:function(){ga.setUTCHours.apply(this._,arguments)},setMilliseconds:function(){ga.setUTCMilliseconds.apply(this._,arguments)},setMinutes:function(){ga.setUTCMinutes.apply(this._,arguments)},setMonth:function(){ga.setUTCMonth.apply(this._,arguments)},setSeconds:function(){ga.setUTCSeconds.apply(this._, arguments)},setTime:function(){ga.setTime.apply(this._,arguments)}};var ga=Date.prototype,ze="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),Ae="Sun Mon Tue Wed Thu Fri Sat".split(" "),vc="January February March April May June July August September October November December".split(" "),wc="Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" ");g.time.format=function(a){function b(b){for(var e=[],f=-1,g=0,k,l;++f