m&&(m=s.x),s.y>y&&(y=s.y),f.push(s.x),h.push(s.y);else for(g=0;p>g;++g){var b=+M(s=n[g],g),_=+x(s,g);v>b&&(v=b),d>_&&(d=_),b>m&&(m=b),_>y&&(y=_),f.push(b),h.push(_)}var w=m-v,S=y-d;w>S?y=d+w:m=v+S;var k=su();if(k.add=function(n){i(k,n,+M(n,++g),+x(n,g),v,d,m,y)},k.visit=function(n){fu(n,k,v,d,m,y)},k.find=function(n){return hu(k,n[0],n[1],v,d,m,y)},g=-1,null==t){for(;++g=0?n.slice(0,t):n,r=t>=0?n.slice(t+1):\\"in\\";return e=cl.get(e)||al,r=ll.get(r)||y,Mu(r(e.apply(null,ea.call(arguments,1))))},ta.interpolateHcl=Lu,ta.interpolateHsl=Tu,ta.interpolateLab=Ru,ta.interpolateRound=Du,ta.transform=function(n){var t=ua.createElementNS(ta.ns.prefix.svg,\\"g\\");return(ta.transform=function(n){if(null!=n){t.setAttribute(\\"transform\\",n);var e=t.transform.baseVal.consolidate()}return new Pu(e?e.matrix:sl)})(n)},Pu.prototype.toString=function(){return\\"translate(\\"+this.translate+\\")rotate(\\"+this.rotate+\\")skewX(\\"+this.skew+\\")scale(\\"+this.scale+\\")\\"};var sl={a:1,b:0,c:0,d:1,e:0,f:0};ta.interpolateTransform=Hu,ta.layout={},ta.layout.bundle=function(){return function(n){for(var t=[],e=-1,r=n.length;++ea*a/d){if(p>c){var l=t.charge/c;n.px-=i*l,n.py-=o*l}return!0}if(t.point&&c&&p>c){var l=t.pointCharge/c;n.px-=i*l,n.py-=o*l}}return!t.charge}}function t(n){n.px=ta.event.x,n.py=ta.event.y,a.resume()}var e,r,u,i,o,a={},c=ta.dispatch(\\"start\\",\\"tick\\",\\"end\\"),l=[1,1],s=.9,f=fl,h=hl,g=-30,p=gl,v=.1,d=.64,m=[],M=[];return a.tick=function(){if((r*=.99)<.005)return c.end({type:\\"end\\",alpha:r=0}),!0;var t,e,a,f,h,p,d,y,x,b=m.length,_=M.length;for(e=0;_>e;++e)a=M[e],f=a.source,h=a.target,y=h.x-f.x,x=h.y-f.y,(p=y*y+x*x)&&(p=r*i[e]*((p=Math.sqrt(p))-u[e])/p,y*=p,x*=p,h.x-=y*(d=f.weight/(h.weight+f.weight)),h.y-=x*d,f.x+=y*(d=1-d),f.y+=x*d);if((d=r*v)&&(y=l[0]/2,x=l[1]/2,e=-1,d))for(;++e0?n:0:n>0&&(c.start({type:\\"start\\",alpha:r=n}),ta.timer(a.tick)),a):r},a.start=function(){function n(n,r){if(!e){for(e=new Array(c),a=0;c>a;++a)e[a]=[];for(a=0;s>a;++a){var u=M[a];e[u.source.index].push(u.target),e[u.target.index].push(u.source)}}for(var i,o=e[t],a=-1,l=o.length;++at;++t)(r=m[t]).index=t,r.weight=0;for(t=0;s>t;++t)r=M[t],\\"number\\"==typeof r.source&&(r.source=m[r.source]),\\"number\\"==typeof r.target&&(r.target=m[r.target]),++r.source.weight,++r.target.weight;for(t=0;c>t;++t)r=m[t],isNaN(r.x)&&(r.x=n(\\"x\\",p)),isNaN(r.y)&&(r.y=n(\\"y\\",v)),isNaN(r.px)&&(r.px=r.x),isNaN(r.py)&&(r.py=r.y);if(u=[],\\"function\\"==typeof f)for(t=0;s>t;++t)u[t]=+f.call(this,M[t],t);else for(t=0;s>t;++t)u[t]=f;if(i=[],\\"function\\"==typeof h)for(t=0;s>t;++t)i[t]=+h.call(this,M[t],t);else for(t=0;s>t;++t)i[t]=h;if(o=[],\\"function\\"==typeof g)for(t=0;c>t;++t)o[t]=+g.call(this,m[t],t);else for(t=0;c>t;++t)o[t]=g;return a.resume()},a.resume=function(){return a.alpha(.1)},a.stop=function(){return a.alpha(0)},a.drag=function(){return e||(e=ta.behavior.drag().origin(y).on(\\"dragstart.force\\",Xu).on(\\"drag.force\\",t).on(\\"dragend.force\\",$u)),arguments.length?void this.on(\\"mouseover.force\\",Bu).on(\\"mouseout.force\\",Wu).call(e):e},ta.rebind(a,c,\\"on\\")};var fl=20,hl=1,gl=1/0;ta.layout.hierarchy=function(){function n(u){var i,o=[u],a=[];for(u.depth=0;null!=(i=o.pop());)if(a.push(i),(l=e.call(n,i,i.depth))&&(c=l.length)){for(var c,l,s;--c>=0;)o.push(s=l[c]),s.parent=i,s.depth=i.depth+1;r&&(i.value=0),i.children=l}else r&&(i.value=+r.call(n,i,i.depth)||0),delete i.children;return Qu(u,function(n){var e,u;t&&(e=n.children)&&e.sort(t),r&&(u=n.parent)&&(u.value+=n.value)}),a}var t=ei,e=ni,r=ti;return n.sort=function(e){return arguments.length?(t=e,n):t},n.children=function(t){return arguments.length?(e=t,n):e},n.value=function(t){return arguments.length?(r=t,n):r},n.revalue=function(t){return r&&(Ku(t,function(n){n.children&&(n.value=0)}),Qu(t,function(t){var e;t.children||(t.value=+r.call(n,t,t.depth)||0),(e=t.parent)&&(e.value+=t.value)})),t},n},ta.layout.partition=function(){function n(t,e,r,u){var i=t.children;if(t.x=e,t.y=t.depth*u,t.dx=r,t.dy=u,i&&(o=i.length)){var o,a,c,l=-1;for(r=t.value?r/t.value:0;++lf?-1:1),p=(f-c*g)/ta.sum(l),v=ta.range(c),d=[];return null!=e&&v.sort(e===pl?function(n,t){return l[t]-l[n]}:function(n,t){return e(o[n],o[t])}),v.forEach(function(n){d[n]={data:o[n],value:a=l[n],startAngle:s,endAngle:s+=a*p+g,padAngle:h}}),d}var t=Number,e=pl,r=0,u=La,i=0;return n.value=function(e){return arguments.length?(t=e,n):t},n.sort=function(t){return arguments.length?(e=t,n):e},n.startAngle=function(t){return arguments.length?(r=t,n):r},n.endAngle=function(t){return arguments.length?(u=t,n):u},n.padAngle=function(t){return arguments.length?(i=t,n):i},n};var pl={};ta.layout.stack=function(){function n(a,c){if(!(h=a.length))return a;var l=a.map(function(e,r){return t.call(n,e,r)}),s=l.map(function(t){return t.map(function(t,e){return[i.call(n,t,e),o.call(n,t,e)]})}),f=e.call(n,s,c);l=ta.permute(l,f),s=ta.permute(s,f);var h,g,p,v,d=r.call(n,s,c),m=l[0].length;for(p=0;m>p;++p)for(u.call(n,l[0][p],v=d[p],s[0][p][1]),g=1;h>g;++g)u.call(n,l[g][p],v+=s[g-1][p][1],s[g][p][1]);return a}var t=y,e=ai,r=ci,u=oi,i=ui,o=ii;return n.values=function(e){return arguments.length?(t=e,n):t},n.order=function(t){return arguments.length?(e=\\"function\\"==typeof t?t:vl.get(t)||ai,n):e},n.offset=function(t){return arguments.length?(r=\\"function\\"==typeof t?t:dl.get(t)||ci,n):r},n.x=function(t){return arguments.length?(i=t,n):i},n.y=function(t){return arguments.length?(o=t,n):o},n.out=function(t){return arguments.length?(u=t,n):u},n};var vl=ta.map({\\"inside-out\\":function(n){var t,e,r=n.length,u=n.map(li),i=n.map(si),o=ta.range(r).sort(function(n,t){return u[n]-u[t]}),a=0,c=0,l=[],s=[];for(t=0;r>t;++t)e=o[t],c>a?(a+=i[e],l.push(e)):(c+=i[e],s.push(e));return s.reverse().concat(l)},reverse:function(n){return ta.range(n.length).reverse()},\\"default\\":ai}),dl=ta.map({silhouette:function(n){var t,e,r,u=n.length,i=n[0].length,o=[],a=0,c=[];for(e=0;i>e;++e){for(t=0,r=0;u>t;t++)r+=n[t][e][1];r>a&&(a=r),o.push(r)}for(e=0;i>e;++e)c[e]=(a-o[e])/2;return c},wiggle:function(n){var t,e,r,u,i,o,a,c,l,s=n.length,f=n[0],h=f.length,g=[];for(g[0]=c=l=0,e=1;h>e;++e){for(t=0,u=0;s>t;++t)u+=n[t][e][1];for(t=0,i=0,a=f[e][0]-f[e-1][0];s>t;++t){for(r=0,o=(n[t][e][1]-n[t][e-1][1])/(2*a);t>r;++r)o+=(n[r][e][1]-n[r][e-1][1])/a;i+=o*n[t][e][1]}g[e]=c-=u?i/u*a:0,l>c&&(l=c)}for(e=0;h>e;++e)g[e]-=l;return g},expand:function(n){var t,e,r,u=n.length,i=n[0].length,o=1/u,a=[];for(e=0;i>e;++e){for(t=0,r=0;u>t;t++)r+=n[t][e][1];if(r)for(t=0;u>t;t++)n[t][e][1]/=r;else for(t=0;u>t;t++)n[t][e][1]=o}for(e=0;i>e;++e)a[e]=0;return a},zero:ci});ta.layout.histogram=function(){function n(n,i){for(var o,a,c=[],l=n.map(e,this),s=r.call(this,l,i),f=u.call(this,s,l,i),i=-1,h=l.length,g=f.length-1,p=t?1:1/h;++i0)for(i=-1;++i=s[0]&&a<=s[1]&&(o=c[ta.bisect(f,a,1,g)-1],o.y+=p,o.push(n[i]));return c}var t=!0,e=Number,r=pi,u=hi;return n.value=function(t){return arguments.length?(e=t,n):e},n.range=function(t){return arguments.length?(r=Et(t),n):r},n.bins=function(t){return arguments.length?(u=\\"number\\"==typeof t?function(n){return gi(n,t)}:Et(t),n):u},n.frequency=function(e){return arguments.length?(t=!!e,n):t},n},ta.layout.pack=function(){function n(n,i){var o=e.call(this,n,i),a=o[0],c=u[0],l=u[1],s=null==t?Math.sqrt:\\"function\\"==typeof t?t:function(){return t};if(a.x=a.y=0,Qu(a,function(n){n.r=+s(n.value)}),Qu(a,Mi),r){var f=r*(t?1:Math.max(2*a.r/c,2*a.r/l))/2;Qu(a,function(n){n.r+=f}),Qu(a,Mi),Qu(a,function(n){n.r-=f})}return _i(a,c/2,l/2,t?1:1/Math.max(2*a.r/c,2*a.r/l)),o}var t,e=ta.layout.hierarchy().sort(vi),r=0,u=[1,1];return n.size=function(t){return arguments.length?(u=t,n):u},n.radius=function(e){return arguments.length?(t=null==e||\\"function\\"==typeof e?e:+e,n):t},n.padding=function(t){return arguments.length?(r=+t,n):r},Gu(n,e)},ta.layout.tree=function(){function n(n,u){var s=o.call(this,n,u),f=s[0],h=t(f);if(Qu(h,e),h.parent.m=-h.z,Ku(h,r),l)Ku(f,i);else{var g=f,p=f,v=f;Ku(f,function(n){n.xp.x&&(p=n),n.depth>v.depth&&(v=n)});var d=a(g,p)/2-g.x,m=c[0]/(p.x+a(p,g)/2+d),y=c[1]/(v.depth||1);Ku(f,function(n){n.x=(n.x+d)*m,n.y=n.depth*y})}return s}function t(n){for(var t,e={A:null,children:[n]},r=[e];null!=(t=r.pop());)for(var u,i=t.children,o=0,a=i.length;a>o;++o)r.push((i[o]=u={_:i[o],parent:t,children:(u=i[o].children)&&u.slice()||[],A:null,a:null,z:0,m:0,c:0,s:0,t:null,i:o}).a=u);return e.children[0]}function e(n){var t=n.children,e=n.parent.children,r=n.i?e[n.i-1]:null;if(t.length){Ni(n);var i=(t[0].z+t[t.length-1].z)/2;r?(n.z=r.z+a(n._,r._),n.m=n.z-i):n.z=i}else r&&(n.z=r.z+a(n._,r._));n.parent.A=u(n,r,n.parent.A||e[0])}function r(n){n._.x=n.z+n.parent.m,n.m+=n.parent.m}function u(n,t,e){if(t){for(var r,u=n,i=n,o=t,c=u.parent.children[0],l=u.m,s=i.m,f=o.m,h=c.m;o=Ei(o),u=ki(u),o&&u;)c=ki(c),i=Ei(i),i.a=n,r=o.z+f-u.z-l+a(o._,u._),r>0&&(Ai(Ci(o,n,e),n,r),l+=r,s+=r),f+=o.m,l+=u.m,h+=c.m,s+=i.m;o&&!Ei(i)&&(i.t=o,i.m+=f-s),u&&!ki(c)&&(c.t=u,c.m+=l-h,e=n)}return e}function i(n){n.x*=c[0],n.y=n.depth*c[1]}var o=ta.layout.hierarchy().sort(null).value(null),a=Si,c=[1,1],l=null;return n.separation=function(t){return arguments.length?(a=t,n):a},n.size=function(t){return arguments.length?(l=null==(c=t)?i:null,n):l?null:c},n.nodeSize=function(t){return arguments.length?(l=null==(c=t)?null:i,n):l?c:null},Gu(n,o)},ta.layout.cluster=function(){function n(n,i){var o,a=t.call(this,n,i),c=a[0],l=0;Qu(c,function(n){var t=n.children;t&&t.length?(n.x=qi(t),n.y=zi(t)):(n.x=o?l+=e(n,o):0,n.y=0,o=n)});var s=Li(c),f=Ti(c),h=s.x-e(s,f)/2,g=f.x+e(f,s)/2;return Qu(c,u?function(n){n.x=(n.x-c.x)*r[0],n.y=(c.y-n.y)*r[1]}:function(n){n.x=(n.x-h)/(g-h)*r[0],n.y=(1-(c.y?n.y/c.y:1))*r[1]}),a}var t=ta.layout.hierarchy().sort(null).value(null),e=Si,r=[1,1],u=!1;return n.separation=function(t){return arguments.length?(e=t,n):e},n.size=function(t){return arguments.length?(u=null==(r=t),n):u?null:r},n.nodeSize=function(t){return arguments.length?(u=null!=(r=t),n):u?r:null},Gu(n,t)},ta.layout.treemap=function(){function n(n,t){for(var e,r,u=-1,i=n.length;++ut?0:t),e.area=isNaN(r)||0>=r?0:r}function t(e){var i=e.children;if(i&&i.length){var o,a,c,l=f(e),s=[],h=i.slice(),p=1/0,v=\\"slice\\"===g?l.dx:\\"dice\\"===g?l.dy:\\"slice-dice\\"===g?1&e.depth?l.dy:l.dx:Math.min(l.dx,l.dy);for(n(h,l.dx*l.dy/e.value),s.area=0;(c=h.length)>0;)s.push(o=h[c-1]),s.area+=o.area,\\"squarify\\"!==g||(a=r(s,v))<=p?(h.pop(),p=a):(s.area-=s.pop().area,u(s,v,l,!1),v=Math.min(l.dx,l.dy),s.length=s.area=0,p=1/0);s.length&&(u(s,v,l,!0),s.length=s.area=0),i.forEach(t)}}function e(t){var r=t.children;if(r&&r.length){var i,o=f(t),a=r.slice(),c=[];for(n(a,o.dx*o.dy/t.value),c.area=0;i=a.pop();)c.push(i),c.area+=i.area,null!=i.z&&(u(c,i.z?o.dx:o.dy,o,!a.length),c.length=c.area=0);r.forEach(e)}}function r(n,t){for(var e,r=n.area,u=0,i=1/0,o=-1,a=n.length;++oe&&(i=e),e>u&&(u=e));return r*=r,t*=t,r?Math.max(t*u*p/r,r/(t*i*p)):1/0}function u(n,t,e,r){var u,i=-1,o=n.length,a=e.x,l=e.y,s=t?c(n.area/t):0;if(t==e.dx){for((r||s>e.dy)&&(s=e.dy);++ie.dx)&&(s=e.dx);++ie&&(t=1),1>e&&(n=0),function(){var e,r,u;do e=2*Math.random()-1,r=2*Math.random()-1,u=e*e+r*r;while(!u||u>1);return n+t*e*Math.sqrt(-2*Math.log(u)/u)}},logNormal:function(){var n=ta.random.normal.apply(ta,arguments);return function(){return Math.exp(n())}},bates:function(n){var t=ta.random.irwinHall(n);return function(){return t()/n}},irwinHall:function(n){return function(){for(var t=0,e=0;n>e;e++)t+=Math.random();return t}}},ta.scale={};var ml={floor:y,ceil:y};ta.scale.linear=function(){return Ii([0,1],[0,1],mu,!1)};var yl={s:1,g:1,p:1,r:1,e:1};ta.scale.log=function(){return Ji(ta.scale.linear().domain([0,1]),10,!0,[1,10])};var Ml=ta.format(\\".0e\\"),xl={floor:function(n){return-Math.ceil(-n)},ceil:function(n){return-Math.floor(-n)}};ta.scale.pow=function(){return Gi(ta.scale.linear(),1,[0,1])},ta.scale.sqrt=function(){return ta.scale.pow().exponent(.5)},ta.scale.ordinal=function(){return Qi([],{t:\\"range\\",a:[[]]})},ta.scale.category10=function(){return ta.scale.ordinal().range(bl)},ta.scale.category20=function(){return ta.scale.ordinal().range(_l)},ta.scale.category20b=function(){return ta.scale.ordinal().range(wl)},ta.scale.category20c=function(){return ta.scale.ordinal().range(Sl)};var bl=[2062260,16744206,2924588,14034728,9725885,9197131,14907330,8355711,12369186,1556175].map(Mt),_l=[2062260,11454440,16744206,16759672,2924588,10018698,14034728,16750742,9725885,12955861,9197131,12885140,14907330,16234194,8355711,13092807,12369186,14408589,1556175,10410725].map(Mt),wl=[3750777,5395619,7040719,10264286,6519097,9216594,11915115,13556636,9202993,12426809,15186514,15190932,8666169,11356490,14049643,15177372,8077683,10834324,13528509,14589654].map(Mt),Sl=[3244733,7057110,10406625,13032431,15095053,16616764,16625259,16634018,3253076,7652470,10607003,13101504,7695281,10394312,12369372,14342891,6513507,9868950,12434877,14277081].map(Mt);ta.scale.quantile=function(){return no([],[])},ta.scale.quantize=function(){return to(0,1,[0,1])},ta.scale.threshold=function(){return eo([.5],[0,1])},ta.scale.identity=function(){return ro([0,1])},ta.svg={},ta.svg.arc=function(){function n(){var n=Math.max(0,+e.apply(this,arguments)),l=Math.max(0,+r.apply(this,arguments)),s=o.apply(this,arguments)-Ra,f=a.apply(this,arguments)-Ra,h=Math.abs(f-s),g=s>f?0:1;if(n>l&&(p=l,l=n,n=p),h>=Ta)return t(l,g)+(n?t(n,1-g):\\"\\")+\\"Z\\";var p,v,d,m,y,M,x,b,_,w,S,k,E=0,A=0,N=[];if((m=(+c.apply(this,arguments)||0)/2)&&(d=i===kl?Math.sqrt(n*n+l*l):+i.apply(this,arguments),g||(A*=-1),l&&(A=tt(d/l*Math.sin(m))),n&&(E=tt(d/n*Math.sin(m)))),l){y=l*Math.cos(s+A),M=l*Math.sin(s+A),x=l*Math.cos(f-A),b=l*Math.sin(f-A);var C=Math.abs(f-s-2*A)<=qa?0:1;if(A&&so(y,M,x,b)===g^C){var z=(s+f)/2;y=l*Math.cos(z),M=l*Math.sin(z),x=b=null}}else y=M=0;if(n){_=n*Math.cos(f-E),w=n*Math.sin(f-E),S=n*Math.cos(s+E),k=n*Math.sin(s+E);var q=Math.abs(s-f+2*E)<=qa?0:1;if(E&&so(_,w,S,k)===1-g^q){var L=(s+f)/2;_=n*Math.cos(L),w=n*Math.sin(L),S=k=null}}else _=w=0;if((p=Math.min(Math.abs(l-n)/2,+u.apply(this,arguments)))>.001){v=l>n^g?0:1;var T=null==S?[_,w]:null==x?[y,M]:Lr([y,M],[S,k],[x,b],[_,w]),R=y-T[0],D=M-T[1],P=x-T[0],U=b-T[1],j=1/Math.sin(Math.acos((R*P+D*U)/(Math.sqrt(R*R+D*D)*Math.sqrt(P*P+U*U)))/2),F=Math.sqrt(T[0]*T[0]+T[1]*T[1]);if(null!=x){var H=Math.min(p,(l-F)/(j+1)),O=fo(null==S?[_,w]:[S,k],[y,M],l,H,g),I=fo([x,b],[_,w],l,H,g);p===H?N.push(\\"M\\",O[0],\\"A\\",H,\\",\\",H,\\" 0 0,\\",v,\\" \\",O[1],\\"A\\",l,\\",\\",l,\\" 0 \\",1-g^so(O[1][0],O[1][1],I[1][0],I[1][1]),\\",\\",g,\\" \\",I[1],\\"A\\",H,\\",\\",H,\\" 0 0,\\",v,\\" \\",I[0]):N.push(\\"M\\",O[0],\\"A\\",H,\\",\\",H,\\" 0 1,\\",v,\\" \\",I[0])}else N.push(\\"M\\",y,\\",\\",M);if(null!=S){var Y=Math.min(p,(n-F)/(j-1)),Z=fo([y,M],[S,k],n,-Y,g),V=fo([_,w],null==x?[y,M]:[x,b],n,-Y,g);p===Y?N.push(\\"L\\",V[0],\\"A\\",Y,\\",\\",Y,\\" 0 0,\\",v,\\" \\",V[1],\\"A\\",n,\\",\\",n,\\" 0 \\",g^so(V[1][0],V[1][1],Z[1][0],Z[1][1]),\\",\\",1-g,\\" \\",Z[1],\\"A\\",Y,\\",\\",Y,\\" 0 0,\\",v,\\" \\",Z[0]):N.push(\\"L\\",V[0],\\"A\\",Y,\\",\\",Y,\\" 0 0,\\",v,\\" \\",Z[0])}else N.push(\\"L\\",_,\\",\\",w)}else N.push(\\"M\\",y,\\",\\",M),null!=x&&N.push(\\"A\\",l,\\",\\",l,\\" 0 \\",C,\\",\\",g,\\" \\",x,\\",\\",b),N.push(\\"L\\",_,\\",\\",w),null!=S&&N.push(\\"A\\",n,\\",\\",n,\\" 0 \\",q,\\",\\",1-g,\\" \\",S,\\",\\",k);return N.push(\\"Z\\"),N.join(\\"\\")}function t(n,t){return\\"M0,\\"+n+\\"A\\"+n+\\",\\"+n+\\" 0 1,\\"+t+\\" 0,\\"+-n+\\"A\\"+n+\\",\\"+n+\\" 0 1,\\"+t+\\" 0,\\"+n}var e=io,r=oo,u=uo,i=kl,o=ao,a=co,c=lo;return n.innerRadius=function(t){return arguments.length?(e=Et(t),n):e},n.outerRadius=function(t){return arguments.length?(r=Et(t),n):r},n.cornerRadius=function(t){return arguments.length?(u=Et(t),n):u},n.padRadius=function(t){return arguments.length?(i=t==kl?kl:Et(t),n):i},n.startAngle=function(t){return arguments.length?(o=Et(t),n):o},n.endAngle=function(t){return arguments.length?(a=Et(t),n):a},n.padAngle=function(t){return arguments.length?(c=Et(t),n):c},n.centroid=function(){var n=(+e.apply(this,arguments)+ +r.apply(this,arguments))/2,t=(+o.apply(this,arguments)+ +a.apply(this,arguments))/2-Ra;return[Math.cos(t)*n,Math.sin(t)*n]},n};var kl=\\"auto\\";ta.svg.line=function(){return ho(y)};var El=ta.map({linear:go,\\"linear-closed\\":po,step:vo,\\"step-before\\":mo,\\"step-after\\":yo,basis:So,\\"basis-open\\":ko,\\"basis-closed\\":Eo,bundle:Ao,cardinal:bo,\\"cardinal-open\\":Mo,\\"cardinal-closed\\":xo,monotone:To});El.forEach(function(n,t){t.key=n,t.closed=/-closed$/.test(n)});var Al=[0,2/3,1/3,0],Nl=[0,1/3,2/3,0],Cl=[0,1/6,2/3,1/6];ta.svg.line.radial=function(){var n=ho(Ro);return n.radius=n.x,delete n.x,n.angle=n.y,delete n.y,n},mo.reverse=yo,yo.reverse=mo,ta.svg.area=function(){return Do(y)},ta.svg.area.radial=function(){var n=Do(Ro);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},ta.svg.chord=function(){function n(n,a){var c=t(this,i,n,a),l=t(this,o,n,a);return\\"M\\"+c.p0+r(c.r,c.p1,c.a1-c.a0)+(e(c,l)?u(c.r,c.p1,c.r,c.p0):u(c.r,c.p1,l.r,l.p0)+r(l.r,l.p1,l.a1-l.a0)+u(l.r,l.p1,c.r,c.p0))+\\"Z\\"}function t(n,t,e,r){var u=t.call(n,e,r),i=a.call(n,u,r),o=c.call(n,u,r)-Ra,s=l.call(n,u,r)-Ra;return{r:i,a0:o,a1:s,p0:[i*Math.cos(o),i*Math.sin(o)],p1:[i*Math.cos(s),i*Math.sin(s)]}}function e(n,t){return n.a0==t.a0&&n.a1==t.a1}function r(n,t,e){return\\"A\\"+n+\\",\\"+n+\\" 0 \\"+ +(e>qa)+\\",1 \\"+t}function u(n,t,e,r){return\\"Q 0,0 \\"+r}var i=mr,o=yr,a=Po,c=ao,l=co;return n.radius=function(t){return arguments.length?(a=Et(t),n):a},n.source=function(t){return arguments.length?(i=Et(t),n):i},n.target=function(t){return arguments.length?(o=Et(t),n):o},n.startAngle=function(t){return arguments.length?(c=Et(t),n):c},n.endAngle=function(t){return arguments.length?(l=Et(t),n):l},n},ta.svg.diagonal=function(){function n(n,u){var i=t.call(this,n,u),o=e.call(this,n,u),a=(i.y+o.y)/2,c=[i,{x:i.x,y:a},{x:o.x,y:a},o];return c=c.map(r),\\"M\\"+c[0]+\\"C\\"+c[1]+\\" \\"+c[2]+\\" \\"+c[3]}var t=mr,e=yr,r=Uo;return n.source=function(e){return arguments.length?(t=Et(e),n):t},n.target=function(t){return arguments.length?(e=Et(t),n):e},n.projection=function(t){return arguments.length?(r=t,n):r},n},ta.svg.diagonal.radial=function(){var n=ta.svg.diagonal(),t=Uo,e=n.projection;return n.projection=function(n){return arguments.length?e(jo(t=n)):t},n},ta.svg.symbol=function(){function n(n,r){return(zl.get(t.call(this,n,r))||Oo)(e.call(this,n,r))}var t=Ho,e=Fo;return n.type=function(e){return arguments.length?(t=Et(e),n):t},n.size=function(t){return arguments.length?(e=Et(t),n):e},n};var zl=ta.map({circle:Oo,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*Ll)),e=t*Ll;return\\"M0,\\"+-t+\\"L\\"+e+\\",0 0,\\"+t+\\" \\"+-e+\\",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/ql),e=t*ql/2;return\\"M0,\\"+e+\\"L\\"+t+\\",\\"+-e+\\" \\"+-t+\\",\\"+-e+\\"Z\\"},\\"triangle-up\\":function(n){var t=Math.sqrt(n/ql),e=t*ql/2;return\\"M0,\\"+-e+\\"L\\"+t+\\",\\"+e+\\" \\"+-t+\\",\\"+e+\\"Z\\"}});ta.svg.symbolTypes=zl.keys();var ql=Math.sqrt(3),Ll=Math.tan(30*Da);_a.transition=function(n){for(var t,e,r=Tl||++Ul,u=Xo(n),i=[],o=Rl||{time:Date.now(),ease:Su,delay:0,duration:250},a=-1,c=this.length;++ai;i++){u.push(t=[]);for(var e=this[i],a=0,c=e.length;c>a;a++)(r=e[a])&&n.call(r,r.__data__,a,i)&&t.push(r)}return Yo(u,this.namespace,this.id)},Pl.tween=function(n,t){var e=this.id,r=this.namespace;return arguments.length<2?this.node()[r][e].tween.get(n):Y(this,null==t?function(t){t[r][e].tween.remove(n)}:function(u){u[r][e].tween.set(n,t)})},Pl.attr=function(n,t){function e(){this.removeAttribute(a)}function r(){this.removeAttributeNS(a.space,a.local)}function u(n){return null==n?e:(n+=\\"\\",function(){var t,e=this.getAttribute(a);return e!==n&&(t=o(e,n),function(n){this.setAttribute(a,t(n))})})}function i(n){return null==n?r:(n+=\\"\\",function(){var t,e=this.getAttributeNS(a.space,a.local);return e!==n&&(t=o(e,n),function(n){this.setAttributeNS(a.space,a.local,t(n))})})}if(arguments.length<2){for(t in n)this.attr(t,n[t]);return this}var o=\\"transform\\"==n?Hu:mu,a=ta.ns.qualify(n);return Zo(this,\\"attr.\\"+n,t,a.local?i:u)},Pl.attrTween=function(n,t){function e(n,e){var r=t.call(this,n,e,this.getAttribute(u));return r&&function(n){this.setAttribute(u,r(n))}}function r(n,e){var r=t.call(this,n,e,this.getAttributeNS(u.space,u.local));return r&&function(n){this.setAttributeNS(u.space,u.local,r(n))}}var u=ta.ns.qualify(n);return this.tween(\\"attr.\\"+n,u.local?r:e)},Pl.style=function(n,e,r){function u(){this.style.removeProperty(n)}function i(e){return null==e?u:(e+=\\"\\",function(){var u,i=t(this).getComputedStyle(this,null).getPropertyValue(n);return i!==e&&(u=mu(i,e),function(t){this.style.setProperty(n,u(t),r)})})}var o=arguments.length;if(3>o){if(\\"string\\"!=typeof n){2>o&&(e=\\"\\");for(r in n)this.style(r,n[r],e);return this}r=\\"\\"}return Zo(this,\\"style.\\"+n,e,i)},Pl.styleTween=function(n,e,r){function u(u,i){var o=e.call(this,u,i,t(this).getComputedStyle(this,null).getPropertyValue(n));return o&&function(t){this.style.setProperty(n,o(t),r)}}return arguments.length<3&&(r=\\"\\"),this.tween(\\"style.\\"+n,u)},Pl.text=function(n){return Zo(this,\\"text\\",n,Vo)},Pl.remove=function(){var n=this.namespace;return this.each(\\"end.transition\\",function(){var t;this[n].count<2&&(t=this.parentNode)&&t.removeChild(this)})},Pl.ease=function(n){var t=this.id,e=this.namespace;return arguments.length<1?this.node()[e][t].ease:(\\"function\\"!=typeof n&&(n=ta.ease.apply(ta,arguments)),Y(this,function(r){r[e][t].ease=n}))},Pl.delay=function(n){var t=this.id,e=this.namespace;return arguments.length<1?this.node()[e][t].delay:Y(this,\\"function\\"==typeof n?function(r,u,i){r[e][t].delay=+n.call(r,r.__data__,u,i)}:(n=+n,function(r){r[e][t].delay=n}))},Pl.duration=function(n){var t=this.id,e=this.namespace;return arguments.length<1?this.node()[e][t].duration:Y(this,\\"function\\"==typeof n?function(r,u,i){r[e][t].duration=Math.max(1,n.call(r,r.__data__,u,i))}:(n=Math.max(1,n),function(r){r[e][t].duration=n}))},Pl.each=function(n,t){var e=this.id,r=this.namespace;if(arguments.length<2){var u=Rl,i=Tl;try{Tl=e,Y(this,function(t,u,i){Rl=t[r][e],n.call(t,t.__data__,u,i)})}finally{Rl=u,Tl=i}}else Y(this,function(u){var i=u[r][e];(i.event||(i.event=ta.dispatch(\\"start\\",\\"end\\",\\"interrupt\\"))).on(n,t)});return this},Pl.transition=function(){for(var n,t,e,r,u=this.id,i=++Ul,o=this.namespace,a=[],c=0,l=this.length;l>c;c++){a.push(n=[]);for(var t=this[c],s=0,f=t.length;f>s;s++)(e=t[s])&&(r=e[o][u],$o(e,s,o,i,{time:r.time,ease:r.ease,delay:r.delay+r.duration,duration:r.duration})),n.push(e)}return Yo(a,o,i)},ta.svg.axis=function(){function n(n){n.each(function(){var n,l=ta.select(this),s=this.__chart__||e,f=this.__chart__=e.copy(),h=null==c?f.ticks?f.ticks.apply(f,a):f.domain():c,g=null==t?f.tickFormat?f.tickFormat.apply(f,a):y:t,p=l.selectAll(\\".tick\\").data(h,f),v=p.enter().insert(\\"g\\",\\".domain\\").attr(\\"class\\",\\"tick\\").style(\\"opacity\\",Ca),d=ta.transition(p.exit()).style(\\"opacity\\",Ca).remove(),m=ta.transition(p.order()).style(\\"opacity\\",1),M=Math.max(u,0)+o,x=Ui(f),b=l.selectAll(\\".domain\\").data([0]),_=(b.enter().append(\\"path\\").attr(\\"class\\",\\"domain\\"),ta.transition(b));v.append(\\"line\\"),v.append(\\"text\\");var w,S,k,E,A=v.select(\\"line\\"),N=m.select(\\"line\\"),C=p.select(\\"text\\").text(g),z=v.select(\\"text\\"),q=m.select(\\"text\\"),L=\\"top\\"===r||\\"left\\"===r?-1:1;if(\\"bottom\\"===r||\\"top\\"===r?(n=Bo,w=\\"x\\",k=\\"y\\",S=\\"x2\\",E=\\"y2\\",C.attr(\\"dy\\",0>L?\\"0em\\":\\".71em\\").style(\\"text-anchor\\",\\"middle\\"),_.attr(\\"d\\",\\"M\\"+x[0]+\\",\\"+L*i+\\"V0H\\"+x[1]+\\"V\\"+L*i)):(n=Wo,w=\\"y\\",k=\\"x\\",S=\\"y2\\",E=\\"x2\\",C.attr(\\"dy\\",\\".32em\\").style(\\"text-anchor\\",0>L?\\"end\\":\\"start\\"),_.attr(\\"d\\",\\"M\\"+L*i+\\",\\"+x[0]+\\"H0V\\"+x[1]+\\"H\\"+L*i)),A.attr(E,L*u),z.attr(k,L*M),N.attr(S,0).attr(E,L*u),q.attr(w,0).attr(k,L*M),f.rangeBand){var T=f,R=T.rangeBand()/2;s=f=function(n){return T(n)+R}}else s.rangeBand?s=f:d.call(n,f,s);v.call(n,s,f),m.call(n,f,f)})}var t,e=ta.scale.linear(),r=jl,u=6,i=6,o=3,a=[10],c=null;return n.scale=function(t){return arguments.length?(e=t,n):e},n.orient=function(t){return arguments.length?(r=t in Fl?t+\\"\\":jl,n):r},n.ticks=function(){return arguments.length?(a=arguments,n):a},n.tickValues=function(t){return arguments.length?(c=t,n):c},n.tickFormat=function(e){return arguments.length?(t=e,n):t},n.tickSize=function(t){var e=arguments.length;return e?(u=+t,i=+arguments[e-1],n):u},n.innerTickSize=function(t){return arguments.length?(u=+t,n):u},n.outerTickSize=function(t){return arguments.length?(i=+t,n):i},n.tickPadding=function(t){return arguments.length?(o=+t,n):o},n.tickSubdivide=function(){return arguments.length&&n},n};var jl=\\"bottom\\",Fl={top:1,right:1,bottom:1,left:1};ta.svg.brush=function(){function n(t){t.each(function(){var t=ta.select(this).style(\\"pointer-events\\",\\"all\\").style(\\"-webkit-tap-highlight-color\\",\\"rgba(0,0,0,0)\\").on(\\"mousedown.brush\\",i).on(\\"touchstart.brush\\",i),o=t.selectAll(\\".background\\").data([0]);o.enter().append(\\"rect\\").attr(\\"class\\",\\"background\\").style(\\"visibility\\",\\"hidden\\").style(\\"cursor\\",\\"crosshair\\"),t.selectAll(\\".extent\\").data([0]).enter().append(\\"rect\\").attr(\\"class\\",\\"extent\\").style(\\"cursor\\",\\"move\\");var a=t.selectAll(\\".resize\\").data(v,y);a.exit().remove(),a.enter().append(\\"g\\").attr(\\"class\\",function(n){return\\"resize \\"+n}).style(\\"cursor\\",function(n){return Hl[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\\"),a.style(\\"display\\",n.empty()?\\"none\\":null);var c,f=ta.transition(t),h=ta.transition(o);l&&(c=Ui(l),h.attr(\\"x\\",c[0]).attr(\\"width\\",c[1]-c[0]),r(f)),s&&(c=Ui(s),h.attr(\\"y\\",c[0]).attr(\\"height\\",c[1]-c[0]),u(f)),e(f)})}function e(n){n.selectAll(\\".resize\\").attr(\\"transform\\",function(n){return\\"translate(\\"+f[+/e$/.test(n)]+\\",\\"+h[+/^s/.test(n)]+\\")\\"})}function r(n){n.select(\\".extent\\").attr(\\"x\\",f[0]),n.selectAll(\\".extent,.n>rect,.s>rect\\").attr(\\"width\\",f[1]-f[0])}function u(n){n.select(\\".extent\\").attr(\\"y\\",h[0]),n.selectAll(\\".extent,.e>rect,.w>rect\\").attr(\\"height\\",h[1]-h[0])}function i(){function i(){32==ta.event.keyCode&&(C||(M=null,q[0]-=f[1],q[1]-=h[1],C=2),S())}function v(){32==ta.event.keyCode&&2==C&&(q[0]+=f[1],q[1]+=h[1],C=0,S())}function d(){var n=ta.mouse(b),t=!1;x&&(n[0]+=x[0],n[1]+=x[1]),C||(ta.event.altKey?(M||(M=[(f[0]+f[1])/2,(h[0]+h[1])/2]),q[0]=f[+(n[0]s?(u=r,r=s):u=s),v[0]!=r||v[1]!=u?(e?a=null:o=null,v[0]=r,v[1]=u,!0):void 0}function y(){d(),k.style(\\"pointer-events\\",\\"all\\").selectAll(\\".resize\\").style(\\"display\\",n.empty()?\\"none\\":null),ta.select(\\"body\\").style(\\"cursor\\",null),L.on(\\"mousemove.brush\\",null).on(\\"mouseup.brush\\",null).on(\\"touchmove.brush\\",null).on(\\"touchend.brush\\",null).on(\\"keydown.brush\\",null).on(\\"keyup.brush\\",null),z(),w({type:\\"brushend\\"})}var M,x,b=this,_=ta.select(ta.event.target),w=c.of(b,arguments),k=ta.select(b),E=_.datum(),A=!/^(n|s)$/.test(E)&&l,N=!/^(e|w)$/.test(E)&&s,C=_.classed(\\"extent\\"),z=W(b),q=ta.mouse(b),L=ta.select(t(b)).on(\\"keydown.brush\\",i).on(\\"keyup.brush\\",v);if(ta.event.changedTouches?L.on(\\"touchmove.brush\\",d).on(\\"touchend.brush\\",y):L.on(\\"mousemove.brush\\",d).on(\\"mouseup.brush\\",y),k.interrupt().selectAll(\\"*\\").interrupt(),C)q[0]=f[0]-q[0],q[1]=h[0]-q[1];else if(E){var T=+/w$/.test(E),R=+/^n/.test(E);x=[f[1-T]-q[0],h[1-R]-q[1]],q[0]=f[T],q[1]=h[R]}else ta.event.altKey&&(M=q.slice());k.style(\\"pointer-events\\",\\"none\\").selectAll(\\".resize\\").style(\\"display\\",null),ta.select(\\"body\\").style(\\"cursor\\",_.style(\\"cursor\\")),w({type:\\"brushstart\\"}),d()}var o,a,c=E(n,\\"brushstart\\",\\"brush\\",\\"brushend\\"),l=null,s=null,f=[0,0],h=[0,0],g=!0,p=!0,v=Ol[0];return n.event=function(n){n.each(function(){var n=c.of(this,arguments),t={x:f,y:h,i:o,j:a},e=this.__chart__||t;this.__chart__=t,Tl?ta.select(this).transition().each(\\"start.brush\\",function(){o=e.i,a=e.j,f=e.x,h=e.y,n({type:\\"brushstart\\"})}).tween(\\"brush:brush\\",function(){var e=yu(f,t.x),r=yu(h,t.y);return o=a=null,function(u){f=t.x=e(u),h=t.y=r(u),n({type:\\"brush\\",mode:\\"resize\\"})}}).each(\\"end.brush\\",function(){o=t.i,a=t.j,n({type:\\"brush\\",mode:\\"resize\\"}),n({type:\\"brushend\\"})}):(n({type:\\"brushstart\\"}),n({type:\\"brush\\",mode:\\"resize\\"}),n({type:\\"brushend\\"}))})},n.x=function(t){return arguments.length?(l=t,v=Ol[!l<<1|!s],n):l},n.y=function(t){return arguments.length?(s=t,v=Ol[!l<<1|!s],n):s},n.clamp=function(t){return arguments.length?(l&&s?(g=!!t[0],p=!!t[1]):l?g=!!t:s&&(p=!!t),n):l&&s?[g,p]:l?g:s?p:null},n.extent=function(t){var e,r,u,i,c;return arguments.length?(l&&(e=t[0],r=t[1],s&&(e=e[0],r=r[0]),o=[e,r],l.invert&&(e=l(e),r=l(r)),e>r&&(c=e,e=r,r=c),(e!=f[0]||r!=f[1])&&(f=[e,r])),s&&(u=t[0],i=t[1],l&&(u=u[1],i=i[1]),a=[u,i],s.invert&&(u=s(u),i=s(i)),u>i&&(c=u,u=i,i=c),(u!=h[0]||i!=h[1])&&(h=[u,i])),n):(l&&(o?(e=o[0],r=o[1]):(e=f[0],r=f[1],l.invert&&(e=l.invert(e),r=l.invert(r)),e>r&&(c=e,e=r,r=c))),s&&(a?(u=a[0],i=a[1]):(u=h[0],i=h[1],s.invert&&(u=s.invert(u),i=s.invert(i)),u>i&&(c=u,u=i,i=c))),l&&s?[[e,u],[r,i]]:l?[e,r]:s&&[u,i])},n.clear=function(){return n.empty()||(f=[0,0],h=[0,0],o=a=null),n},n.empty=function(){return!!l&&f[0]==f[1]||!!s&&h[0]==h[1]},ta.rebind(n,c,\\"on\\")};var Hl={n:\\"ns-resize\\",e:\\"ew-resize\\",s:\\"ns-resize\\",w:\\"ew-resize\\",nw:\\"nwse-resize\\",ne:\\"nesw-resize\\",se:\\"nwse-resize\\",sw:\\"nesw-resize\\"},Ol=[[\\"n\\",\\"e\\",\\"s\\",\\"w\\",\\"nw\\",\\"ne\\",\\"se\\",\\"sw\\"],[\\"e\\",\\"w\\"],[\\"n\\",\\"s\\"],[]],Il=ac.format=gc.timeFormat,Yl=Il.utc,Zl=Yl(\\"%Y-%m-%dT%H:%M:%S.%LZ\\");Il.iso=Date.prototype.toISOString&&+new Date(\\"2000-01-01T00:00:00.000Z\\")?Jo:Zl,Jo.parse=function(n){var t=new Date(n);return isNaN(t)?null:t},Jo.toString=Zl.toString,ac.second=Ft(function(n){return new cc(1e3*Math.floor(n/1e3))},function(n,t){n.setTime(n.getTime()+1e3*Math.floor(t))},function(n){return n.getSeconds()}),ac.seconds=ac.second.range,ac.seconds.utc=ac.second.utc.range,ac.minute=Ft(function(n){return new cc(6e4*Math.floor(n/6e4))},function(n,t){n.setTime(n.getTime()+6e4*Math.floor(t))},function(n){return n.getMinutes()}),ac.minutes=ac.minute.range,ac.minutes.utc=ac.minute.utc.range,ac.hour=Ft(function(n){var t=n.getTimezoneOffset()/60;return new cc(36e5*(Math.floor(n/36e5-t)+t))},function(n,t){n.setTime(n.getTime()+36e5*Math.floor(t))},function(n){return n.getHours()}),ac.hours=ac.hour.range,ac.hours.utc=ac.hour.utc.range,ac.month=Ft(function(n){return n=ac.day(n),n.setDate(1),n},function(n,t){n.setMonth(n.getMonth()+t)},function(n){return n.getMonth()}),ac.months=ac.month.range,ac.months.utc=ac.month.utc.range;var Vl=[1e3,5e3,15e3,3e4,6e4,3e5,9e5,18e5,36e5,108e5,216e5,432e5,864e5,1728e5,6048e5,2592e6,7776e6,31536e6],Xl=[[ac.second,1],[ac.second,5],[ac.second,15],[ac.second,30],[ac.minute,1],[ac.minute,5],[ac.minute,15],[ac.minute,30],[ac.hour,1],[ac.hour,3],[ac.hour,6],[ac.hour,12],[ac.day,1],[ac.day,2],[ac.week,1],[ac.month,1],[ac.month,3],[ac.year,1]],$l=Il.multi([[\\".%L\\",function(n){return n.getMilliseconds()}],[\\":%S\\",function(n){return n.getSeconds()}],[\\"%I:%M\\",function(n){return n.getMinutes()}],[\\"%I %p\\",function(n){return n.getHours()}],[\\"%a %d\\",function(n){return n.getDay()&&1!=n.getDate()}],[\\"%b %d\\",function(n){return 1!=n.getDate()}],[\\"%B\\",function(n){return n.getMonth()}],[\\"%Y\\",Ne]]),Bl={range:function(n,t,e){return ta.range(Math.ceil(n/e)*e,+t,e).map(Ko)},floor:y,ceil:y};Xl.year=ac.year,ac.scale=function(){return Go(ta.scale.linear(),Xl,$l)};var Wl=Xl.map(function(n){return[n[0].utc,n[1]]}),Jl=Yl.multi([[\\".%L\\",function(n){return n.getUTCMilliseconds()}],[\\":%S\\",function(n){return n.getUTCSeconds()}],[\\"%I:%M\\",function(n){return n.getUTCMinutes()}],[\\"%I %p\\",function(n){return n.getUTCHours()}],[\\"%a %d\\",function(n){return n.getUTCDay()&&1!=n.getUTCDate()}],[\\"%b %d\\",function(n){return 1!=n.getUTCDate()}],[\\"%B\\",function(n){return n.getUTCMonth()}],[\\"%Y\\",Ne]]);Wl.year=ac.year.utc,ac.scale.utc=function(){return Go(ta.scale.linear(),Wl,Jl)},ta.text=At(function(n){return n.responseText}),ta.json=function(n,t){return Nt(n,\\"application/json\\",Qo,t)},ta.html=function(n,t){return Nt(n,\\"text/html\\",na,t)},ta.xml=At(function(n){return n.responseXML}),\\"function\\"==typeof define&&define.amd?define(ta):\\"object\\"==typeof module&&module.exports&&(module.exports=ta),this.d3=ta}();\\n\\n// Topojson 1.6.9\\n!function(){function t(n,t){function r(t){var r,e=n.arcs[0>t?~t:t],o=e[0];return n.transform?(r=[0,0],e.forEach(function(n){r[0]+=n[0],r[1]+=n[1]})):r=e[e.length-1],0>t?[r,o]:[o,r]}function e(n,t){for(var r in n){var e=n[r];delete t[e.start],delete e.start,delete e.end,e.forEach(function(n){o[0>n?~n:n]=1}),f.push(e)}}var o={},i={},u={},f=[],c=-1;return t.forEach(function(r,e){var o,i=n.arcs[0>r?~r:r];i.length<3&&!i[1][0]&&!i[1][1]&&(o=t[++c],t[c]=r,t[e]=o)}),t.forEach(function(n){var t,e,o=r(n),f=o[0],c=o[1];if(t=u[f])if(delete u[t.end],t.push(n),t.end=c,e=i[c]){delete i[e.start];var a=e===t?t:t.concat(e);i[a.start=t.start]=u[a.end=e.end]=a}else i[t.start]=u[t.end]=t;else if(t=i[c])if(delete i[t.start],t.unshift(n),t.start=f,e=u[f]){delete u[e.end];var s=e===t?t:e.concat(t);i[s.start=e.start]=u[s.end=t.end]=s}else i[t.start]=u[t.end]=t;else t=[n],i[t.start=f]=u[t.end=c]=t}),e(u,i),e(i,u),t.forEach(function(n){o[0>n?~n:n]||f.push([n])}),f}function r(n,r,e){function o(n){var t=0>n?~n:n;(s[t]||(s[t]=[])).push({i:n,g:a})}function i(n){n.forEach(o)}function u(n){n.forEach(i)}function f(n){\\"GeometryCollection\\"===n.type?n.geometries.forEach(f):n.type in l&&(a=n,l[n.type](n.arcs))}var c=[];if(arguments.length>1){var a,s=[],l={LineString:i,MultiLineString:u,Polygon:u,MultiPolygon:function(n){n.forEach(u)}};f(r),s.forEach(arguments.length<3?function(n){c.push(n[0].i)}:function(n){e(n[0].g,n[n.length-1].g)&&c.push(n[0].i)})}else for(var h=0,p=n.arcs.length;p>h;++h)c.push(h);return{type:\\"MultiLineString\\",arcs:t(n,c)}}function e(r,e){function o(n){n.forEach(function(t){t.forEach(function(t){(f[t=0>t?~t:t]||(f[t]=[])).push(n)})}),c.push(n)}function i(n){return l(u(r,{type:\\"Polygon\\",arcs:[n]}).coordinates[0])>0}var f={},c=[],a=[];return e.forEach(function(n){\\"Polygon\\"===n.type?o(n.arcs):\\"MultiPolygon\\"===n.type&&n.arcs.forEach(o)}),c.forEach(function(n){if(!n._){var t=[],r=[n];for(n._=1,a.push(t);n=r.pop();)t.push(n),n.forEach(function(n){n.forEach(function(n){f[0>n?~n:n].forEach(function(n){n._||(n._=1,r.push(n))})})})}}),c.forEach(function(n){delete n._}),{type:\\"MultiPolygon\\",arcs:a.map(function(e){var o=[];if(e.forEach(function(n){n.forEach(function(n){n.forEach(function(n){f[0>n?~n:n].length<2&&o.push(n)})})}),o=t(r,o),(n=o.length)>1)for(var u,c=i(e[0][0]),a=0;n>a;++a)if(c===i(o[a])){u=o[0],o[0]=o[a],o[a]=u;break}return o})}}function o(n,t){return\\"GeometryCollection\\"===t.type?{type:\\"FeatureCollection\\",features:t.geometries.map(function(t){return i(n,t)})}:i(n,t)}function i(n,t){var r={type:\\"Feature\\",id:t.id,properties:t.properties||{},geometry:u(n,t)};return null==t.id&&delete r.id,r}function u(n,t){function r(n,t){t.length&&t.pop();for(var r,e=s[0>n?~n:n],o=0,i=e.length;i>o;++o)t.push(r=e[o].slice()),a(r,o);0>n&&f(t,i)}function e(n){return n=n.slice(),a(n,0),n}function o(n){for(var t=[],e=0,o=n.length;o>e;++e)r(n[e],t);return t.length<2&&t.push(t[0].slice()),t}function i(n){for(var t=o(n);t.length<4;)t.push(t[0].slice());return t}function u(n){return n.map(i)}function c(n){var t=n.type;return\\"GeometryCollection\\"===t?{type:t,geometries:n.geometries.map(c)}:t in l?{type:t,coordinates:l[t](n)}:null}var a=g(n.transform),s=n.arcs,l={Point:function(n){return e(n.coordinates)},MultiPoint:function(n){return n.coordinates.map(e)},LineString:function(n){return o(n.arcs)},MultiLineString:function(n){return n.arcs.map(o)},Polygon:function(n){return u(n.arcs)},MultiPolygon:function(n){return n.arcs.map(u)}};return c(t)}function f(n,t){for(var r,e=n.length,o=e-t;o<--e;)r=n[o],n[o++]=n[e],n[e]=r}function c(n,t){for(var r=0,e=n.length;e>r;){var o=r+e>>>1;n[o]n&&(n=~n);var r=o[n];r?r.push(t):o[n]=[t]})}function r(n,r){n.forEach(function(n){t(n,r)})}function e(n,t){\\"GeometryCollection\\"===n.type?n.geometries.forEach(function(n){e(n,t)}):n.type in u&&u[n.type](n.arcs,t)}var o={},i=n.map(function(){return[]}),u={LineString:t,MultiLineString:r,Polygon:r,MultiPolygon:function(n,t){n.forEach(function(n){r(n,t)})}};n.forEach(e);for(var f in o)for(var a=o[f],s=a.length,l=0;s>l;++l)for(var h=l+1;s>h;++h){var p,v=a[l],g=a[h];(p=i[v])[f=c(p,g)]!==g&&p.splice(f,0,g),(p=i[g])[f=c(p,v)]!==v&&p.splice(f,0,v)}return i}function s(n,t){function r(n){u.remove(n),n[1][2]=t(n),u.push(n)}var e,o=g(n.transform),i=m(n.transform),u=v(),f=0;for(t||(t=h),n.arcs.forEach(function(n){var r=[];n.forEach(o);for(var i=1,f=n.length-1;f>i;++i)e=n.slice(i-1,i+2),e[1][2]=t(e),r.push(e),u.push(e);n[0][2]=n[f][2]=1/0;for(var i=0,f=r.length;f>i;++i)e=r[i],e.previous=r[i-1],e.next=r[i+1]});e=u.pop();){var c=e.previous,a=e.next;e[1][2]0;){var r=(t+1>>1)-1,o=e[r];if(p(n,o)>=0)break;e[o._=t]=o,e[n._=t=r]=n}}function t(n,t){for(;;){var r=t+1<<1,i=r-1,u=t,f=e[u];if(o>i&&p(e[i],f)<0&&(f=e[u=i]),o>r&&p(e[r],f)<0&&(f=e[u=r]),u===t)break;e[f._=t]=f,e[n._=t=u]=n}}var r={},e=[],o=0;return r.push=function(t){return n(e[t._=o]=t,o++),o},r.pop=function(){if(!(0>=o)){var n,r=e[0];return--o>0&&(n=e[o],t(e[n._=0]=n,0)),r}},r.remove=function(r){var i,u=r._;if(e[u]===r)return u!==--o&&(i=e[o],(p(i,r)<0?n:t)(e[i._=u]=i,u)),u},r}function g(n){if(!n)return y;var t,r,e=n.scale[0],o=n.scale[1],i=n.translate[0],u=n.translate[1];return function(n,f){f||(t=r=0),n[0]=(t+=n[0])*e+i,n[1]=(r+=n[1])*o+u}}function m(n){if(!n)return y;var t,r,e=n.scale[0],o=n.scale[1],i=n.translate[0],u=n.translate[1];return function(n,f){f||(t=r=0);var c=(n[0]-i)/e|0,a=(n[1]-u)/o|0;n[0]=c-t,n[1]=a-r,t=c,r=a}}function y(){}var d={version:\\"1.6.9\\",mesh:function(n){return u(n,r.apply(this,arguments))},meshArcs:r,merge:function(n){return u(n,e.apply(this,arguments))},mergeArcs:e,feature:o,neighbors:a,presimplify:s};\\"function\\"==typeof define&&define.amd?define(d):\\"object\\"==typeof module&&module.exports?module.exports=d:this.topojson=d}();\\n\\n// datamaps\\n!function(){function a(a,b,c){\\"undefined\\"==typeof c&&(c=b,optionsValues=void 0);var d=\\"undefined\\"!=typeof a?a:b;if(\\"undefined\\"==typeof d)return null;if(\\"function\\"==typeof d){var e=[c];return c.geography&&(e=[c.geography,c.data]),d.apply(null,e)}return d}function b(a,b,c){return this.svg=n.select(a).append(\\"svg\\").attr(\\"width\\",c||a.offsetWidth).attr(\\"data-width\\",c||a.offsetWidth).attr(\\"class\\",\\"datamap\\").attr(\\"height\\",b||a.offsetHeight).style(\\"overflow\\",\\"hidden\\"),this.options.responsive&&(n.select(this.options.element).style({position:\\"relative\\",\\"padding-bottom\\":100*this.options.aspectRatio+\\"%\\"}),n.select(this.options.element).select(\\"svg\\").style({position:\\"absolute\\",width:\\"100%\\",height:\\"100%\\"}),n.select(this.options.element).select(\\"svg\\").select(\\"g\\").selectAll(\\"path\\").style(\\"vector-effect\\",\\"non-scaling-stroke\\")),this.svg}function c(a,b){var c,d,e=b.width||a.offsetWidth,f=b.height||a.offsetHeight,g=this.svg;return b&&\\"undefined\\"==typeof b.scope&&(b.scope=\\"world\\"),\\"usa\\"===b.scope?c=n.geo.albersUsa().scale(e).translate([e/2,f/2]):\\"world\\"===b.scope&&(c=n.geo[b.projection]().scale((e+1)/2/Math.PI).translate([e/2,f/(\\"mercator\\"===b.projection?1.45:1.8)])),\\"orthographic\\"===b.projection&&(g.append(\\"defs\\").append(\\"path\\").datum({type:\\"Sphere\\"}).attr(\\"id\\",\\"sphere\\").attr(\\"d\\",d),g.append(\\"use\\").attr(\\"class\\",\\"stroke\\").attr(\\"xlink:href\\",\\"#sphere\\"),g.append(\\"use\\").attr(\\"class\\",\\"fill\\").attr(\\"xlink:href\\",\\"#sphere\\"),c.scale(250).clipAngle(90).rotate(b.projectionConfig.rotation)),d=n.geo.path().projection(c),{path:d,projection:c}}function d(){n.select(\\".datamaps-style-block\\").empty()&&n.select(\\"head\\").append(\\"style\\").attr(\\"class\\",\\"datamaps-style-block\\").html(\'.datamap path.datamaps-graticule { fill: none; stroke: #777; stroke-width: 0.5px; stroke-opacity: .5; pointer-events: none; } .datamap .labels {pointer-events: none;} .datamap path {stroke: #FFFFFF; stroke-width: 1px;} .datamaps-legend dt, .datamaps-legend dd { float: left; margin: 0 3px 0 0;} .datamaps-legend dd {width: 20px; margin-right: 6px; border-radius: 3px;} .datamaps-legend {padding-bottom: 20px; z-index: 1001; position: absolute; left: 4px; font-size: 12px; font-family: \\"Helvetica Neue\\", Helvetica, Arial, sans-serif;} .datamaps-hoverover {display: none; font-family: \\"Helvetica Neue\\", Helvetica, Arial, sans-serif; } .hoverinfo {padding: 4px; border-radius: 1px; background-color: #FFF; box-shadow: 1px 1px 5px #CCC; font-size: 12px; border: 1px solid #CCC; } .hoverinfo hr {border:1px dotted #CCC; }\')}function e(b){var c=this.options.fills,d=this.options.data||{},e=this.options.geographyConfig,f=this.svg.select(\\"g.datamaps-subunits\\");f.empty()&&(f=this.addLayer(\\"datamaps-subunits\\",null,!0));var g=o.feature(b,b.objects[this.options.scope]).features;e.hideAntarctica&&(g=g.filter(function(a){return\\"ATA\\"!==a.id})),e.hideHawaiiAndAlaska&&(g=g.filter(function(a){return\\"HI\\"!==a.id&&\\"AK\\"!==a.id}));var h=f.selectAll(\\"path.datamaps-subunit\\").data(g);h.enter().append(\\"path\\").attr(\\"d\\",this.path).attr(\\"class\\",function(a){return\\"datamaps-subunit \\"+a.id}).attr(\\"data-info\\",function(a){return JSON.stringify(d[a.id])}).style(\\"fill\\",function(b){var e,f=d[b.id];return f&&f.fillKey&&(e=c[a(f.fillKey,{data:d[b.id],geography:b})]),\\"undefined\\"==typeof e&&(e=a(f&&f.fillColor,c.defaultFill,{data:d[b.id],geography:b})),e}).style(\\"stroke-width\\",e.borderWidth).style(\\"stroke-opacity\\",e.borderOpacity).style(\\"stroke\\",e.borderColor)}function f(){function b(){this.parentNode.appendChild(this)}var c=this.svg,d=this,e=this.options.geographyConfig;(e.highlightOnHover||e.popupOnHover)&&c.selectAll(\\".datamaps-subunit\\").on(\\"mouseover\\",function(f){var g=n.select(this),h=d.options.data[f.id]||{};if(e.highlightOnHover){var i={fill:g.style(\\"fill\\"),stroke:g.style(\\"stroke\\"),\\"stroke-width\\":g.style(\\"stroke-width\\"),\\"fill-opacity\\":g.style(\\"fill-opacity\\")};g.style(\\"fill\\",a(h.highlightFillColor,e.highlightFillColor,h)).style(\\"stroke\\",a(h.highlightBorderColor,e.highlightBorderColor,h)).style(\\"stroke-width\\",a(h.highlightBorderWidth,e.highlightBorderWidth,h)).style(\\"stroke-opacity\\",a(h.highlightBorderOpacity,e.highlightBorderOpacity,h)).style(\\"fill-opacity\\",a(h.highlightFillOpacity,e.highlightFillOpacity,h)).attr(\\"data-previousAttributes\\",JSON.stringify(i)),/((MSIE)|(Trident))/.test(navigator.userAgent)||b.call(this)}e.popupOnHover&&d.updatePopup(g,f,e,c)}).on(\\"mouseout\\",function(){var a=n.select(this);if(e.highlightOnHover){var b=JSON.parse(a.attr(\\"data-previousAttributes\\"));for(var c in b)a.style(c,b[c])}a.on(\\"mousemove\\",null),n.selectAll(\\".datamaps-hoverover\\").style(\\"display\\",\\"none\\")})}function g(a,b,c){if(b=b||{},this.options.fills){var d=\\"\\",e=\\"\\";b.legendTitle&&(d=\\"\\"+b.legendTitle+\\"
\\"+d);for(var f in this.options.fills){if(\\"defaultFill\\"===f){if(!b.defaultFillName)continue;e=b.defaultFillName}else e=b.labels&&b.labels[f]?b.labels[f]:f+\\": \\";d+=\\"- \\"+e+\\"
\\",d+=\'-
\'}d+=\\"
\\";n.select(this.options.element).append(\\"div\\").attr(\\"class\\",\\"datamaps-legend\\").html(d)}}function h(a,b){var c=n.geo.graticule();this.svg.insert(\\"path\\",\\".datamaps-subunits\\").datum(c).attr(\\"class\\",\\"datamaps-graticule\\").attr(\\"d\\",this.path)}function i(b,c,d){var e=this;this.svg;if(!c||c&&!c.slice)throw\\"Datamaps Error - arcs must be an array\\";for(var f=0;f-1&&(g=-2.5),\\"NY\\"===e.id&&(g=-1),\\"MI\\"===e.id&&(h=18),\\"LA\\"===e.id&&(g=13);var i,j;i=f[0]-g,j=f[1]+h;var k=[\\"VT\\",\\"NH\\",\\"MA\\",\\"RI\\",\\"CT\\",\\"NJ\\",\\"DE\\",\\"MD\\",\\"DC\\"].indexOf(e.id);if(k>-1){var l=d[1];i=d[0],j=l+k*(2+(b.fontSize||12)),a.append(\\"line\\").attr(\\"x1\\",i-3).attr(\\"y1\\",j-5).attr(\\"x2\\",f[0]).attr(\\"y2\\",f[1]).style(\\"stroke\\",b.labelColor||\\"#000\\").style(\\"stroke-width\\",b.lineWidth||1)}return a.append(\\"text\\").attr(\\"x\\",i).attr(\\"y\\",j).style(\\"font-size\\",(b.fontSize||10)+\\"px\\").style(\\"font-family\\",b.fontFamily||\\"Verdana\\").style(\\"fill\\",b.labelColor||\\"#000\\").text(function(){return b.customLabelText&&b.customLabelText[e.id]?b.customLabelText[e.id]:e.id}),\\"bar\\"})}function k(b,c,d){function e(a){return\\"undefined\\"!=typeof a&&\\"undefined\\"!=typeof a.latitude&&\\"undefined\\"!=typeof a.longitude}var f=this,g=this.options.fills,h=this.options.filters,i=this.svg;if(!c||c&&!c.slice)throw\\"Datamaps Error - bubbles must be an array\\";var j=b.selectAll(\\"circle.datamaps-bubble\\").data(c,d.key);j.enter().append(\\"svg:circle\\").attr(\\"class\\",\\"datamaps-bubble\\").attr(\\"cx\\",function(a){var b;return e(a)?b=f.latLngToXY(a.latitude,a.longitude):a.centered&&(b=f.path.centroid(i.select(\\"path.\\"+a.centered).data()[0])),b?b[0]:void 0}).attr(\\"cy\\",function(a){var b;return e(a)?b=f.latLngToXY(a.latitude,a.longitude):a.centered&&(b=f.path.centroid(i.select(\\"path.\\"+a.centered).data()[0])),b?b[1]:void 0}).attr(\\"r\\",function(b){return d.animate?0:a(b.radius,d.radius,b)}).attr(\\"data-info\\",function(a){return JSON.stringify(a)}).attr(\\"filter\\",function(b){var c=h[a(b.filterKey,d.filterKey,b)];return c?c:void 0}).style(\\"stroke\\",function(b){return a(b.borderColor,d.borderColor,b)}).style(\\"stroke-width\\",function(b){return a(b.borderWidth,d.borderWidth,b)}).style(\\"stroke-opacity\\",function(b){return a(b.borderOpacity,d.borderOpacity,b)}).style(\\"fill-opacity\\",function(b){return a(b.fillOpacity,d.fillOpacity,b)}).style(\\"fill\\",function(b){var c=g[a(b.fillKey,d.fillKey,b)];return c||g.defaultFill}).on(\\"mouseover\\",function(b){var c=n.select(this);if(d.highlightOnHover){var e={fill:c.style(\\"fill\\"),stroke:c.style(\\"stroke\\"),\\"stroke-width\\":c.style(\\"stroke-width\\"),\\"fill-opacity\\":c.style(\\"fill-opacity\\")};c.style(\\"fill\\",a(b.highlightFillColor,d.highlightFillColor,b)).style(\\"stroke\\",a(b.highlightBorderColor,d.highlightBorderColor,b)).style(\\"stroke-width\\",a(b.highlightBorderWidth,d.highlightBorderWidth,b)).style(\\"stroke-opacity\\",a(b.highlightBorderOpacity,d.highlightBorderOpacity,b)).style(\\"fill-opacity\\",a(b.highlightFillOpacity,d.highlightFillOpacity,b)).attr(\\"data-previousAttributes\\",JSON.stringify(e))}d.popupOnHover&&f.updatePopup(c,b,d,i)}).on(\\"mouseout\\",function(a){var b=n.select(this);if(d.highlightOnHover){var c=JSON.parse(b.attr(\\"data-previousAttributes\\"));for(var e in c)b.style(e,c[e])}n.selectAll(\\".datamaps-hoverover\\").style(\\"display\\",\\"none\\")}),j.transition().duration(400).attr(\\"r\\",function(b){return a(b.radius,d.radius,b)}).transition().duration(0).attr(\\"data-info\\",function(a){return JSON.stringify(a)}),j.exit().transition().delay(d.exitDelay).attr(\\"r\\",0).remove()}function l(a){return Array.prototype.slice.call(arguments,1).forEach(function(b){if(b)for(var c in b)null==a[c]&&(a[c]=b[c])}),a}function m(a){if(\\"undefined\\"==typeof n||\\"undefined\\"==typeof o)throw new Error(\\"Include d3.js (v3.0.3 or greater) and topojson on this page before creating a new map\\");return this.options=l(a,p),this.options.geographyConfig=l(a.geographyConfig,p.geographyConfig),this.options.projectionConfig=l(a.projectionConfig,p.projectionConfig),this.options.bubblesConfig=l(a.bubblesConfig,p.bubblesConfig),this.options.arcConfig=l(a.arcConfig,p.arcConfig),n.select(this.options.element).select(\\"svg\\").length>0&&b.call(this,this.options.element,this.options.height,this.options.width),this.addPlugin(\\"bubbles\\",k),this.addPlugin(\\"legend\\",g),this.addPlugin(\\"arc\\",i),this.addPlugin(\\"labels\\",j),this.addPlugin(\\"graticule\\",h),this.options.disableDefaultStyles||d(),this.draw()}var n=window.d3,o=window.topojson,p={scope:\\"world\\",responsive:!1,aspectRatio:.5625,setProjection:c,projection:\\"equirectangular\\",dataType:\\"json\\",data:{},done:function(){},fills:{defaultFill:\\"#ABDDA4\\"},filters:{},geographyConfig:{dataUrl:null,hideAntarctica:!0,hideHawaiiAndAlaska:!1,borderWidth:1,borderOpacity:1,borderColor:\\"#FDFDFD\\",popupTemplate:function(a,b){return\'\'+a.properties.name+\\"
\\"},popupOnHover:!0,highlightOnHover:!0,highlightFillColor:\\"#FC8D59\\",highlightBorderColor:\\"rgba(250, 15, 160, 0.2)\\",highlightBorderWidth:2,highlightBorderOpacity:1},projectionConfig:{rotation:[97,0]},bubblesConfig:{borderWidth:2,borderOpacity:1,borderColor:\\"#FFFFFF\\",popupOnHover:!0,radius:null,popupTemplate:function(a,b){return\'\'+b.name+\\"
\\"},fillOpacity:.75,animate:!0,highlightOnHover:!0,highlightFillColor:\\"#FC8D59\\",highlightBorderColor:\\"rgba(250, 15, 160, 0.2)\\",highlightBorderWidth:2,highlightBorderOpacity:1,highlightFillOpacity:.85,exitDelay:100,key:JSON.stringify},arcConfig:{strokeColor:\\"#DD1C77\\",strokeWidth:1,arcSharpness:1,animationSpeed:600}};m.prototype.resize=function(){var a=this,b=a.options;if(b.responsive){var c=b.element.clientWidth,d=n.select(b.element).select(\\"svg\\").attr(\\"data-width\\");n.select(b.element).select(\\"svg\\").selectAll(\\"g\\").attr(\\"transform\\",\\"scale(\\"+c/d+\\")\\")}},m.prototype.draw=function(){function a(a){b.options.dataUrl&&n[b.options.dataType](b.options.dataUrl,function(a){if(\\"csv\\"===b.options.dataType&&a&&a.slice){for(var c={},d=0;d1?e-1:0),s=1;s=this.parent.max&&(t=this.parent.max)),this.value=t,this.updatePosition(),this.$element.focus(),this.$element.trigger(this.parent.namespace+\\"::move\\",this))}},{key:\\"updatePosition\\",value:function(){var t={};t[this.parent.direction.position]=this.getPercent()+\\"%\\",this.$element.css(t)}},{key:\\"getPercent\\",value:function(){return(this.value-this.parent.min)/this.parent.interval*100}},{key:\\"get\\",value:function(){return this.value}},{key:\\"matchStep\\",value:function(t){var e=this.parent.step,i=e.toString().split(\\".\\")[1];return t=Math.round(t/e)*e,i&&(t=t.toFixed(i.length)),parseFloat(t)}},{key:\\"matchLimit\\",value:function(t){var e=void 0,i=void 0,s=this.parent.pointer;return e=1===this.uid?this.parent.min:s[this.uid-2].value,i=s[this.uid]&&null!==s[this.uid].value?s[this.uid].value:this.parent.max,t<=e&&(t=e),t>=i&&(t=i),t}},{key:\\"destroy\\",value:function(){this.$element.off(\\".asRange\\"),this.$element.remove()}}]),t}(),l={defaults:{scale:{valuesNumber:3,gap:1,grid:5}},init:function(t){var e=n.default.extend({},this.defaults,t.options.scale).scale;e.values=[],e.values.push(t.min);for(var i=(t.max-t.min)/(e.valuesNumber-1),s=1;s<=e.valuesNumber-2;s++)e.values.push(i*s);e.values.push(t.max);var a={scale:t.namespace+\\"-scale\\",lines:t.namespace+\\"-scale-lines\\",grid:t.namespace+\\"-scale-grid\\",inlineGrid:t.namespace+\\"-scale-inlineGrid\\",values:t.namespace+\\"-scale-values\\"},o=e.values.length,r=((e.grid-1)*(e.gap+1)+e.gap)*(o-1)+o,u=100/(r-1),l=100/(o-1);this.$scale=(0,n.default)(\\"\\").addClass(a.scale),this.$lines=(0,n.default)(\\"\\").addClass(a.lines),this.$values=(0,n.default)(\\"\\").addClass(a.values);for(var h=0;h\'):h%e.grid==0?(0,n.default)(\'\'):(0,n.default)(\\"\\")).css({left:u*h+\\"%\\"}).appendTo(this.$lines)}for(var p=0;p\\"+e.values[p]+\\"\\").css({left:l*p+\\"%\\"}).appendTo(this.$values);this.$lines.add(this.$values).appendTo(this.$scale),this.$scale.appendTo(t.$wrap)},update:function(t){this.$scale.remove(),this.init(t)}},h={defaults:{},init:function(t){var e=this;if(this.$arrow=(0,n.default)(\\"\\").appendTo(t.$wrap),this.$arrow.addClass(t.namespace+\\"-selected\\"),!1===t.options.range&&t.p1.$element.on(t.namespace+\\"::move\\",function(t,i){e.$arrow.css({left:0,width:i.getPercent()+\\"%\\"})}),!0===t.options.range){var i=function(){var i=t.p2.getPercent()-t.p1.getPercent(),s=void 0;i>=0?s=t.p1.getPercent():(i=-i,s=t.p2.getPercent()),e.$arrow.css({left:s+\\"%\\",width:i+\\"%\\"})};t.p1.$element.on(t.namespace+\\"::move\\",i),t.p2.$element.on(t.namespace+\\"::move\\",i)}}},p={defaults:{active:\\"always\\"},init:function(t){var e=this,i=n.default.extend({},this.defaults,t.options.tip);this.opts=i,this.classes={tip:t.namespace+\\"-tip\\",show:t.namespace+\\"-tip-show\\"},n.default.each(t.pointer,function(i,s){var o=(0,n.default)(\\"\\").appendTo(t.pointer[i].$element);o.addClass(e.classes.tip),\\"onMove\\"===e.opts.active&&(o.css({display:\\"none\\"}),s.$element.on(t.namespace+\\"::moveEnd\\",function(){return e.hide(o),!1}).on(t.namespace+\\"::moveStart\\",function(){return e.show(o),!1})),s.$element.on(t.namespace+\\"::move\\",function(){var e=void 0;if(e=t.options.range?t.get()[i]:t.get(),\\"function\\"==typeof t.options.format)if(t.options.replaceFirst&&\\"number\\"!=typeof e){if(\\"string\\"==typeof t.options.replaceFirst&&(e=t.options.replaceFirst),\\"object\\"===a(t.options.replaceFirst))for(var s in t.options.replaceFirst)Object.hasOwnProperty(t.options.replaceFirst,s)&&(e=t.options.replaceFirst[s])}else e=t.options.format(e);return o.text(e),!1})})},show:function(t){t.addClass(this.classes.show),t.css({display:\\"block\\"})},hide:function(t){t.removeClass(this.classes.show),t.css({display:\\"none\\"})}},c={},d=function(){function t(i,s){var a=this;e(this,t);var o={};if(this.element=i,this.$element=(0,n.default)(i),this.$element.is(\\"input\\")){var u=this.$element.val();\\"string\\"==typeof u&&(o.value=u.split(\\",\\")),n.default.each([\\"min\\",\\"max\\",\\"step\\"],function(t,e){var i=parseFloat(a.$element.attr(e));isNaN(i)||(o[e]=i)}),this.$element.css({display:\\"none\\"}),this.$wrap=(0,n.default)(\\"\\"),this.$element.after(this.$wrap)}else this.$wrap=this.$element;if(this.options=n.default.extend({},r,s,this.$element.data(),o),this.namespace=this.options.namespace,this.components=n.default.extend(!0,{},c),this.options.range&&(this.options.replaceFirst=!1),this.value=this.options.value,null===this.value&&(this.value=this.options.min),this.options.range?n.default.isArray(this.value)?1===this.value.length&&(this.value[1]=this.value[0]):this.value=[this.value,this.value]:n.default.isArray(this.value)&&(this.value=this.value[0]),this.min=this.options.min,this.max=this.options.max,this.step=this.options.step,this.interval=this.max-this.min,this.initialized=!1,this.updating=!1,this.disabled=!1,\\"v\\"===this.options.direction?this.direction={axis:\\"pageY\\",position:\\"top\\"}:this.direction={axis:\\"pageX\\",position:\\"left\\"},this.$wrap.addClass(this.namespace),this.options.skin&&this.$wrap.addClass(this.namespace+\\"_\\"+this.options.skin),this.max=this.interval)throw new Error(\\"error options about max min step\\");this.init()}return o(t,[{key:\\"init\\",value:function(){this.$wrap.append(\'\'),this.buildPointers(),this.components.selected.init(this),!1!==this.options.tip&&this.components.tip.init(this),!1!==this.options.scale&&this.components.scale.init(this),this.set(this.value),this.bindEvents(),this._trigger(\\"ready\\"),this.initialized=!0}},{key:\\"_trigger\\",value:function(t){for(var e=arguments.length,i=Array(e>1?e-1:0),s=1;s\').appendTo(this.$wrap),s=new u(i,e,this);this.pointer.push(s)}this.p1=this.pointer[0],this.options.range&&(this.p2=this.pointer[1])}},{key:\\"bindEvents\\",value:function(){var t=this,e=this;this.$wrap.on(\\"touchstart.asRange mousedown.asRange\\",function(t){if(!0!==e.disabled){if((t=i(t)).which?3===t.which:2===t.button)return!1;var s=e.$wrap.offset(),n=t[e.direction.axis]-s[e.direction.position];return e.getAdjacentPointer(n).mousedown(t),!1}}),this.$element.is(\\"input\\")&&this.$element.on(this.namespace+\\"::change\\",function(){var e=t.get();t.$element.val(e)}),n.default.each(this.pointer,function(i,s){s.$element.on(t.namespace+\\"::move\\",function(){return e.value=e.get(),!(!e.initialized||e.updating)&&(e._trigger(\\"change\\",e.value),!1)})})}},{key:\\"getValueFromPosition\\",value:function(t){return t>0?this.min+t/this.getLength()*this.interval:0}},{key:\\"getAdjacentPointer\\",value:function(t){var e=this.getValueFromPosition(t);if(this.options.range){var i=this.p1.value,s=this.p2.value,n=Math.abs(i-s);return i<=s?e>i+n/2?this.p2:this.p1:e>s+n/2?this.p1:this.p2}return this.p1}},{key:\\"getLength\\",value:function(){return\\"v\\"===this.options.direction?this.$wrap.height():this.$wrap.width()}},{key:\\"update\\",value:function(t){var e=this;this.updating=!0,n.default.each([\\"max\\",\\"min\\",\\"step\\",\\"limit\\",\\"value\\"],function(i,s){t[s]&&(e[s]=t[s])}),(t.max||t.min)&&this.setInterval(t.min,t.max),t.value||(this.value=t.min),n.default.each(this.components,function(t,i){\\"function\\"==typeof i.update&&i.update(e)}),this.set(this.value),this._trigger(\\"update\\"),this.updating=!1}},{key:\\"get\\",value:function(){var t=[];if(n.default.each(this.pointer,function(e,i){t[e]=i.get()}),this.options.range)return t;if(t[0]===this.options.min&&(\\"string\\"==typeof this.options.replaceFirst&&(t[0]=this.options.replaceFirst),\\"object\\"===a(this.options.replaceFirst)))for(var e in this.options.replaceFirst)Object.hasOwnProperty(this.options.replaceFirst,e)&&(t[0]=e);return t[0]}},{key:\\"set\\",value:function(t){if(this.options.range){if(\\"number\\"==typeof t&&(t=[t]),!n.default.isArray(t))return;n.default.each(this.pointer,function(e,i){i.set(t[e])})}else this.p1.set(t);this.value=t}},{key:\\"val\\",value:function(t){return t?(this.set(t),this):this.get()}},{key:\\"setInterval\\",value:function(t,e){this.min=t,this.max=e,this.interval=e-t}},{key:\\"enable\\",value:function(){return this.disabled=!1,this.$wrap.removeClass(this.namespace+\\"_disabled\\"),this._trigger(\\"enable\\"),this}},{key:\\"disable\\",value:function(){return this.disabled=!0,this.$wrap.addClass(this.namespace+\\"_disabled\\"),this._trigger(\\"disable\\"),this}},{key:\\"destroy\\",value:function(){n.default.each(this.pointer,function(t,e){e.destroy()}),this.$wrap.destroy(),this._trigger(\\"destroy\\")}}],[{key:\\"registerComponent\\",value:function(t,e){c[t]=e}},{key:\\"setDefaults\\",value:function(t){n.default.extend(r,n.default.isPlainObject(t)&&t)}}]),t}();d.registerComponent(\\"scale\\",l),d.registerComponent(\\"selected\\",h),d.registerComponent(\\"tip\\",p),function(){var t=(0,n.default)(document);t.on(\\"asRange::ready\\",function(e,i){var s=void 0,a={keys:{UP:38,DOWN:40,LEFT:37,RIGHT:39,RETURN:13,ESCAPE:27,BACKSPACE:8,SPACE:32},map:{},bound:!1,press:function(t){var e=t.keyCode||t.which;if(e in a.map&&\\"function\\"==typeof a.map[e])return a.map[e](t),!1},attach:function(e){var i=void 0,s=void 0;for(i in e)e.hasOwnProperty(i)&&((s=i.toUpperCase())in a.keys?a.map[a.keys[s]]=e[i]:a.map[s]=e[i]);a.bound||(a.bound=!0,t.bind(\\"keydown\\",a.press))},detach:function(){a.bound=!1,a.map={},t.unbind(\\"keydown\\",a.press)}};!0===i.options.keyboard&&n.default.each(i.pointer,function(t,e){s=i.options.step?i.options.step:1;var n=function(){var t=e.value;e.set(t-s)},o=function(){var t=e.value;e.set(t+s)};e.$element.attr(\\"tabindex\\",\\"0\\").on(\\"focus\\",function(){return a.attach({left:n,right:o}),!1}).on(\\"blur\\",function(){return a.detach(),!1})})})}();var f={version:\\"0.3.4\\"},v=\\"asRange\\",m=n.default.fn.asRange;n.default.fn.asRange=s,n.default.asRange=n.default.extend({setDefaults:d.setDefaults,noConflict:function(){return n.default.fn.asRange=m,s}},f)});\\n\\n// Reassign define\\ndefine = d;\\n\\n// === Variables and helper functions ===\\nvar columnNames = knimeDataTable.getColumnNames();\\n\\n// The range to display (inclusive)\\nvar fromYear = 1930;\\nvar toYear = 2018;\\n\\n// The stats to show\\nvar stats = \\"goals\\";\\n\\n// Column indices\\nvar teamIdx = findColumnIndex(\\"team\\");\\nvar yearIdx = findColumnIndex(\\"year\\");\\nvar goalsIdx = findColumnIndex(\\"goals\\");\\nvar winIdx = findColumnIndex(\\"win\\");\\nvar pointsIdx = findColumnIndex(\\"points\\");\\n\\n// Currently hovered over country\\nvar cur = null;\\n\\n// For debouncing the slider so that it only fires after 100ms\\nvar debounce = null;\\n\\n// Gets the index of a column in the table\\nfunction findColumnIndex(colName) {\\n for (let i = 0; i < columnNames.length; i++) {\\n if (columnNames[i] === colName) return i;\\n }\\n}\\n\\n// Turns a data row into an object\\nfunction rowToObject(row) {\\n return {\\n team: row.data[teamIdx],\\n year: row.data[yearIdx],\\n goals: row.data[goalsIdx],\\n wins: row.data[winIdx],\\n points: row.data[pointsIdx]\\n };\\n}\\n\\n// Creates a base64 encoded data URI to be used in an image\'s src attribute\\nfunction svgToDataURI(svg) {\\n return \\"data:image/svg+xml;base64,\\" + btoa(svg);\\n}\\n\\n// === Our controls ===\\nlet slider1 = [\'\',\\n \'\'].join(\'\');\\nlet radioButtons = [\'\',\\n \'\'].join(\'\');\\n\\n// Assemble HTML\\nbody.innerHTML = [\'\', slider1, radioButtons, \'
\'].join(\'\');\\n\\n// When the user switches between goals, points and wins\\n$(\\".statistics input[type=radio]\\").on(\'change\', function(e) {\\n let name = $(this).val();\\n stats = name;\\n updateMap();\\n updateBars(cur);\\n});\\n\\n// Initialize range slider\\n$(\\"#year-range\\").asRange({\\n min: fromYear,\\n max: toYear,\\n value: [fromYear, toYear],\\n step: 1,\\n range: true,\\n limit: true\\n});\\n\\n// Initially all years are selected\\n$(\\"#year-range\\").asRange(\\"set\\", [fromYear, toYear]);\\n\\n// When the range is changed\\n$(\\"#year-range\\").on(\'asRange::change\', function(e) {\\n clearTimeout(debounce);\\n debounce = setTimeout(function() {\\n debounce = null;\\n var value = $(\\"#year-range\\").asRange(\'get\');\\n fromYear = Math.min(value[0], value[1]);\\n toYear = Math.max(value[0], value[1]);\\n updateMap();\\n updateBars(cur);\\n }, 100);\\n});\\n\\n// Updates the bar chart\\nfunction updateBars(selectedCountry) {\\n var rows = knimeDataTable.getRows();\\n var barchart = d3.select(\\".barchart\\");\\n\\n // Initially we put zero in all years\\n var agg = Array.apply(null, Array(89)).map(Number.prototype.valueOf, 0);\\n // Size of the barchart SVG element\\n var size = barchart.node().getBoundingClientRect();\\n\\n // If a country is selected, we count the relevant numbers\\n if (selectedCountry) {\\n agg = rows.map(rowToObject)\\n .filter(row => row.team === selectedCountry)\\n .reduce((m, row) => {\\n m[row.year - 1930] += row[stats]\\n return m;\\n }, agg)\\n }\\n // Remember in case we need to redraw on resize\\n cur = selectedCountry;\\n\\n // Scale for the bar chart bars\\n var yscale = d3.scale.linear()\\n .domain(d3.extent(agg))\\n .range([0, 140]);\\n\\n // Scale for the x-Axis (years)\\n var o = d3.scale.ordinal()\\n .domain(agg.map((d, i) => i))\\n .rangeBands([0, size.width]);\\n\\n // The bars of the bottom bar chart\\n let bars = barchart.selectAll(\\"rect\\").data(agg);\\n\\n // Create a rectangle for each bar\\n bars.enter()\\n .append(\\"rect\\")\\n .attr(\\"x\\", (d, i) => o(i))\\n .attr(\\"width\\", o.rangeBand());\\n\\n // Animate changes\\n bars.transition()\\n .attr(\\"y\\", (d) => 160 - yscale(d))\\n .attr(\\"height\\", yscale)\\n .attr(\\"fill\\", (d, i) =>\\n (i >= (fromYear - 1930)\\n && i <= (toYear - 1930)) ? \\"orangered\\" : \\"#90a7cc\\")\\n .attr(\\"stroke\\", (d, i) =>\\n (i >= (fromYear - 1930)\\n && i <= (toYear - 1930)) ? \\"#a33e1a\\" : \\"#69768c\\");\\n\\n // Years at the bottom of the bar chart\\n let xAxisLabels = barchart.selectAll(\\"text.year\\")\\n .data(agg);\\n\\n xAxisLabels.enter()\\n .append(\\"text\\").attr(\\"class\\", \\"year\\")\\n .attr(\\"y\\", 165)\\n .attr(\\"x\\", (d, i) => o(i) + 2)\\n .attr(\\"transform\\", (d, i) => \\"rotate(90,\\" + (o(i) + 2) + \\",165)\\")\\n .text((d, i) => 1930 + i);\\n\\n // Fade between grey and black for years that have or don\'t have any data\\n xAxisLabels.transition()\\n .attr(\\"fill\\", (d, i) => agg[i] > 0 ? \\"#000\\" : \\"#eee\\");\\n\\n // Labels on top of the bars\\n let valueLabels = barchart.selectAll(\\"text.value\\")\\n .data(agg);\\n valueLabels.enter()\\n .append(\\"text\\").attr(\\"class\\", \\"value\\")\\n .attr(\\"text-anchor\\", \\"middle\\")\\n .attr(\\"x\\", (d, i) => o(i) + (o.rangeBand() / 2));\\n\\n valueLabels.text((d) => d > 0 ? d : \\"\\");\\n valueLabels.transition().attr(\\"y\\", (d) => 155 - yscale(d));\\n}\\n\\n// Updates the data on the map\\nfunction updateMap() {\\n var rows = knimeDataTable.getRows();\\n\\n // Bring rows into a format datamaps can deal with and aggregate over years:\\n // Keys: 3-letter ISO country code\\n // Value: Object with a property \\"numberOfThings\\"\\n var mapData = rows.map(rowToObject).reduce((m, row) => {\\n if (row.year >= fromYear && row.year <= toYear) {\\n // If year is in selected range, sum up\\n m[row.team] = (m[row.team] || { numberOfThings: 0 });\\n m[row.team].numberOfThings += row[stats];\\n } else if (!m[row.team]) {\\n // If no value exists yet, add 0\\n m[row.team] = { numberOfThings: 0 };\\n }\\n return m;\\n }, {});\\n\\n // Get all country codes\\n var codes = Object.keys(mapData);\\n var minmax = d3.extent(codes, k => mapData[k].numberOfThings);\\n \\n // We need to colorize every country based on the selected statistic\\n var paletteScale = d3.scale.linear()\\n .domain(minmax)\\n .range([\\"#EFEFFF\\", \\"#02386F\\"]);\\n\\n // Update fill color\\n for (let i = 0; i < codes.length; i++) {\\n let iso = codes[i];\\n mapData[iso].fillColor = paletteScale(mapData[iso].numberOfThings);\\n }\\n\\n map.updateChoropleth(mapData);\\n\\n var step = (minmax[1] - minmax[0]) / 7;\\n var ldata = [];\\n for (var i = 0; i <= 7; i++) {\\n \\t ldata.push(Math.round(minmax[0] + i * step));\\t\\n }\\n\\n var legend = d3.select(\\".legend\\")\\n \\t\\t.selectAll(\\"g\\")\\n \\t\\t.data(ldata);\\n \\n var litem = legend.enter()\\n \\t\\t.append(\\"g\\")\\n \\t\\t.attr(\\"transform\\", (d,i) => \\"translate(\\" + (i * 26) + \\",0)\\");\\n \\n litem.append(\\"rect\\")\\n \\t\\t.attr(\\"width\\", 20)\\n \\t\\t.attr(\\"height\\", 20)\\n \\t\\t.attr(\\"x\\", 3)\\n \\t\\t.attr(\\"fill\\", paletteScale);\\n \\t\\t\\n litem.append(\\"text\\")\\n \\t\\t.attr(\\"text-anchor\\", \\"middle\\")\\n \\t\\t.attr(\\"font-size\\", 10)\\n \\t\\t.attr(\\"x\\", 13)\\n \\t\\t.attr(\\"y\\", 30);\\n\\n legend.each(function(d) {\\n \\t\\td3.select(this).select(\\"text\\").text(a => d);\\n \\t});\\t\\t\\n}\\n\\n// Initialize map\\nvar map = new Datamap({\\n // The element we want to display the map in\\n element: document.getElementById(\'container\'),\\n // React to changes in window size\\n responsive: true,\\n fills: {\\n defaultFill: \'#FFFFFF\'\\n },\\n done: function(datamap) {\\n datamap.svg.selectAll(\'.datamaps-subunit\').on(\'mouseenter\', function(geo) {\\n updateBars(geo.id);\\n });\\n $(\\"#container\\").css(\'padding-bottom\', \'100%\');\\n },\\n geographyConfig: {\\n borderColor: \'#DEDEDE\',\\n highlightBorderWidth: 2,\\n // don\'t change color on mouse hover\\n highlightFillColor: function(geo) {\\n return geo[\'fillColor\'] || \'#F5F5F5\';\\n },\\n // only change border\\n highlightBorderColor: \'#B7B7B7\',\\n // show desired information in tooltip\\n popupTemplate: function(geo, data) {\\n // don\'t show tooltip if country don\'t present in dataset\\n if (!data) {\\n return;\\n }\\n // tooltip content\\n return [\'\',\\n \'
\',\\n\\t\\t\\t\\t\\t\\t\\t\\tgeo.properties.name, \'
\',\\n\\t\\t\\t\\t\\t\\t\\t\\t(stats[0].toUpperCase() + stats.substring(1)),\\n \': \', data.numberOfThings, \'
\',\\n \'
Countries most won against:
\'\\n ].join(\'\');\\n }\\n }\\n});\\n\\n// Trigger initial rendering\\nupdateMap();\\nupdateBars();\\n\\n// Alternatively with d3\\nd3.select(window).on(\'resize\', function() {\\n map.resize();\\n d3.selectAll(\\".barchart *\\").remove();\\n updateBars(cur);\\n});\\n","jsSVGCode":"","cssDependencies":[],"jsDependencies":["js-lib/jQuery/jquery-3.1.1.min.js"]}');var parsedValue = JSON.parse('{"@class":"org.knime.js.base.node.viz.generic3.GenericJSViewValue","settings":null,"flowVariables":{}}');knime_generic_view.init(parsedRepresentation, parsedValue);} catch(err) {if (err.stack) {alert(err.stack);} else {alert (err);}}};