// https://d3js.org/d3-force/ Version 1.0.6. Copyright 2017 Mike Bostock.!function(n,t){"object"==typeofexports&&"undefined"!=typeofmodule?t(exports,require("d3-quadtree"),require("d3-collection"),require("d3-dispatch"),require("d3-timer")):"function"==typeofdefine&&define.amd?define(["exports","d3-quadtree","d3-collection","d3-dispatch","d3-timer"],t):t(n.d3=n.d3||{},n.d3,n.d3,n.d3,n.d3)}(this,function(n,t,e,r,i){"use strict";functionu(n){returnn.x+n.vx}functiono(n){returnn.y+n.vy}functionf(n){returnn.index}functiona(n,t){vare=n.get(t);if(!e)thrownewError("missing: "+t);returne}functionc(n){returnn.x}functionl(n){returnn.y}varh=function(n,t){functione(){vare,i,u=r.length,o=0,f=0;for(e=0;e<u;++e)i=r[e],o+=i.x,f+=i.y;for(o=o/u-n,f=f/u-t,e=0;e<u;++e)i=r[e],i.x-=o,i.y-=f}varr;returnnull==n&&(n=0),null==t&&(t=0),e.initialize=function(n){r=n},e.x=function(t){returnarguments.length?(n=+t,e):n},e.y=function(n){returnarguments.length?(t=+n,e):t},e},v=function(n){returnfunction(){returnn}},d=function(){return1e-6*(Math.random()-.5)},y=function(n){functione(){functionn(n,t,e,r,i){varu=n.data,o=n.r,f=x+o;{if(!u)returnt>v+f||r<v-f||e>y+f||i<y-f;if(u.index>h.index){vara=v-u.x-u.vx,l=y-u.y-u.vy,s=a*a+l*l;s<f*f&&(0===a&&(a=d(),s+=a*a),0===l&&(l=d(),s+=l*l),s=(f-(s=Math.sqrt(s)))/s*c,h.vx+=(a*=s)*(f=(o*=o)/(g+o)),h.vy+=(l*=s)*f,u.vx-=a*(f=1-f),u.vy-=l*f)}}}for(vare,i,h,v,y,x,g,s=f.length,p=0;p<l;++p)for(i=t.quadtree(f,u,o).visitAfter(r),e=0;e<s;++e)h=f[e],x=a[h.index],g=x*x,v=h.x+h.vx,y=h.y+h.vy,i.visit(n)}functionr(n){if(n.data)returnn.r=a[n.data.index];for(vart=n.r=0;t<4;++t)n[t]&&n[t].r>n.r&&(n.r=n[t].r)}functioni(){if(f){vart,e,r=f.length;for(a=newArray(r),t=0;t<r;++t)e=f[t],a[e.index]=+n(e,t,f)}}varf,a,c=1,l=1;return"function"!=typeofn&&(n=v(null==n?1:+n)),e.initialize=function(n){f=n,i()},e.iterations=function(n){returnarguments.length?(l=+n,e):l},e.strength=function(n){returnarguments.length?(c=+n,e):c},e.radius=function(t){returnarguments.length?(n="function"==typeoft?t:v(+t),i(),e):n},e},x=function(n){functiont(n){return1/Math.min(y[n.source.index],y[n.target.index])}functionr(t){for(vare=0,r=n.length;e<M;++e)for(vari,u,o,f,a,h,v,y=0;y<r;++y)i=n[y],u=i.source,o=i.target,f=o.x+o.vx-u.x-u.vx||d(),a=o.y+o.vy-u.y-u.vy||d(),h=Math.sqrt(f*f+a*a),h=(h-l[y])/h*t*c[y],f*=h,a*=h,o.vx-=f*(v=x[y]),o.vy-=a*v,u.vx+=f*(v=1-v),u.vy+=a*v}functioni(){if(h){vart,r,i=h.length,f=n.length,v=e.map(h,g);for(t=0,y=newArray(i);t<f;++t)r=n[t],r.index=t,"object"!=typeofr.source&&(r.source=a(v,r.source)),"object"!=typeofr.target&&(r.target=a(v,r.target)),y[r.source.index]=(y[r.source.index]||0)+1,y[r.target.index]=(y[r.target.index]||0)+1;for(t=0,x=newArray(f);t<f;++t)r=n[t],x[t]=y[r.source.index]/(y[r.source.index]+y[r.target.index]);c=newArray(f),u(),l=newArray(f),o()}}functionu(){if(h)for(vart=0,e=n.length;t<e;++t)c[t]=+s(n[t],t,n)}functiono(){if(h)for(vart=0,e=n.length;t<e;++t)l[t]=+p(n[t],t,n)}varc,l,h,y,x,g=f,s=t,p=v(30),M=1;returnnull==n&&(n=[]),r.initialize=function(n){h=n,i()},r.links=function(t){returnarguments.length?(n=t,i(),r):n},r.id=function(n){returnarguments.length?(g=n,r):g},r.iterations=function(n){returnarguments.length?(M=+n,r):M},r.strength=function(n){returnarguments.length?(s="function"==typeofn?n:v(+n),u(),r):s},r.distance=function(n){returnarguments.length?(p="function"==typeofn?n:v(+n),o(),r):p},r},g=10,s=Math.PI*(3-Math.sqrt(5)),p=function(n){functiont(){u(),p.call("tick",a),c<l&&(x.stop(),p.call("end",a))}functionu(){vart,e,r=n.length;for(c+=(v-c)*h,y.each(function(n){n(c)}),t=0;t<r;++t)e=n[t],null==e.fx?e.x+=e.vx*=d:(e.x=e.fx,e.vx=0),null==e.fy?e.y+=e.vy*=d:(e.y=e.fy,e.vy=0)}functiono(){for(vart,e=0,r=n.length;e<r;++e){if(t=n[e],t.index=e,isNaN(t.x)||isNaN(t.y)){vari=g*Math.sqrt(e),u=e*s;t.x=i*Math.cos(u),t.y=i*Math.sin(u)}(isNaN(t.vx)||isNaN(t.vy))&&(t.vx=t.vy=0)}}functionf(t){returnt.initialize&&t.initialize(n),t}vara,c=1,l=.001,h=1-Math.pow(l,1/300),v=0,d=.6,y=e.map(),x=i.timer(t),p=r.dispatch("tick","end");returnnull==n&&(n=[]),o(),a={tick:u,restart:function(){returnx.restart(t),a},stop:function(){returnx.stop(),a},nodes:function(t){returnarguments.length?(n=t,o(),y.each(f),a):n},alpha:function(n){returnarguments.length?(c=+n,a):c},alphaMin:function(n){returnarguments.length?(l=+n,a):l},alphaDecay:function(n){returnarguments.length?(h=+n,a):+h},alphaTarget:function(n){returnarguments.length?(v=+n,a):v},velocityDecay:function(n){returnarguments.length?(d=1-n,a):1-d},force:function(n,t){returnarguments.length>1?(null==t?y.remove(n):y.set(n,f(t)),a):y.get(n)},find:function(t,e,r){vari,u,o,f,a,c=0,l=n.length;for(null==r?r=1/0:r*=r,c=0;c<l;++c)f=n[c],i=t-f.x,u=e-f.y,(o=i*i+u*u)<r&&(a=f,r=o);returna},on:function(n,t){returnarguments.length>1?(p.on(n,t),a):p.on(n)}}},M=function(){functionn(n){vare,a=u.length,h=t.quadtree(u,c,l).visitAfter(r);for(f=n,e=0;e<a;++e)o=u[e],h.visit(i)}functione(){if(u){varn,t,e=u.length;for(a=newArray(e),n=0;n<e;++n)t=u[n],a[t.index]=+h(t,n,u)}}functionr(n){vart,e,r,i,u,o=0;if(n.length){for(r=i=u=0;u<4;++u)(t=n[u])&&(e=t.value)&&(o+=e,r+=e*t.x,i+=e*t.y);n.x=r/o,n.y=i/o}else{t=n,t.x=t.data.x,t.y=t.data.y;do{o+=a[t.data.index]}while(t=t.next)}n.value=o}functioni(n,t,e,r){if(!n.value)return!0;vari=n.x-o.x,u=n.y-o.y,c=r-t,l=i*i+u*u;if(c*c/g<l)returnl<x&&(0===i&&(i=d(),l+=i*i),0===u&&(u=d(),l+=u*u),l<y&&(l=Math.sqrt(y*l)),o.vx+=i*n.value*f/l,o.vy+=u*n.value*f/l),!0;if(!(n.length||l>=x)){(n.data!==o||n.next)&&(0===i&&(i=d(),l+=i*i),0===u&&(u=d(),l+=u*u),l<y&&(l=Math.sqrt(y*l)));do{n.data!==o&&(c=a[n.data.index]*f/l,o.vx+=i*c,o.vy+=u*c)}while(n=n.next)}}varu,o,f,a,h=v(-30),y=1,x=1/0,g=.81;returnn.initialize=function(n){u=n,e()},n.strength=function(t){returnarguments.length?(h="function"==typeoft?t:v(+t),e(),n):h},n.distanceMin=function(t){returnarguments.length?(y=t*t,n):Math.sqrt(y)},n.distanceMax=function(t){returnarguments.length?(x=t*t,n):Math.sqrt(x)},n.theta=function(t){returnarguments.length?(g=t*t,n):Math.sqrt(g)},n},q=function(n){functiont(n){for(vart,e=0,o=r.length;e<o;++e)t=r[e],t.vx+=(u[e]-t.x)*i[e]*n}functione(){if(r){vart,e=r.length;for(i=newArray(e),u=newArray(e),t=0;t<e;++t)i[t]=isNaN(u[t]=+n(r[t],t,r))?0:+o(r[t],t,r)}}varr,i,u,o=v(.1);return"function"!=typeofn&&(n=v(null==n?0:+n)),t.initialize=function(n){r=n,e()},t.strength=function(n){returnarguments.length?(o="function"==typeofn?n:v(+n),e(),t):o},t.x=function(r){returnarguments.length?(n="function"==typeofr?r:v(+r),e(),t):n},t},w=function(n){functiont(n){for(vart,e=0,o=r.length;e<o;++e)t=r[e],t.vy+=(u[e]-t.y)*i[e]*n}functione(){if(r){vart,e=r.length;for(i=newArray(e),u=newArray(e),t=0;t<e;++t)i[t]=isNaN(u[t]=+n(r[t],t,r))?0:+o(r[t],t,r)}}varr,i,u,o=v(.1);return"function"!=typeofn&&(n=v(null==n?0:+n)),t.initialize=function(n){r=n,e()},t.strength=function(n){returnarguments.length?(o="function"==typeofn?n:v(+n),e(),t):o},t.y=function(r){returnarguments.length?(n="function"==typeofr?r:v(+r),e(),t):n},t};n.forceCenter=h,n.forceCollide=y,n.forceLink=x,n.forceManyBody=M,n.forceSimulation=p,n.forceX=q,n.forceY=w,Object.defineProperty(n,"__esModule",{value:!0})});