// https://d3js.org/d3-force/ Version 1.1.0. Copyright 2017 Mike Bostock. !function(n,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("d3-quadtree"),require("d3-collection"),require("d3-dispatch"),require("d3-timer")):"function"==typeof define&&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";function u(n){return n.x+n.vx}function o(n){return n.y+n.vy}function f(n){return n.index}function a(n,t){var e=n.get(t);if(!e)throw new Error("missing: "+t);return e}function c(n){return n.x}function l(n){return n.y}var h=function(n){return function(){return n}},v=function(){return 1e-6*(Math.random()-.5)},y=10,d=Math.PI*(3-Math.sqrt(5));n.forceCenter=function(n,t){function e(){var e,i,u=r.length,o=0,f=0;for(e=0;eh+a||ry+a||ui.index){var l=h-o.x-o.vx,g=y-o.y-o.vy,s=l*l+g*g;sn.r&&(n.r=n[t].r)}function i(){if(f){var t,e,r=f.length;for(a=new Array(r),t=0;t=x)){(n.data!==o||n.next)&&(0===i&&(i=v(),l+=i*i),0===u&&(u=v(),l+=u*u),l1?(null==t?g.remove(n):g.set(n,f(t)),a):g.get(n)},find:function(t,e,r){var i,u,o,f,a,c=0,l=n.length;for(null==r?r=1/0:r*=r,c=0;c1?(p.on(n,t),a):p.on(n)}}},n.forceX=function(n){function t(n){for(var t,e=0,o=r.length;e