!function(e){var n;"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):("undefined"!=typeof window?n=window:"undefined"!=typeof global?n=global:"undefined"!=typeof self&&(n=self),n.Viva=e())}(function(){return function r(o,i,a){function u(t,e){if(!i[t]){if(!o[t]){var n="function"==typeof require&&require;if(!e&&n)return n(t,!0);if(s)return s(t,!0);n=new Error("Cannot find module '"+t+"'");throw n.code="MODULE_NOT_FOUND",n}n=i[t]={exports:{}};o[t][0].call(n.exports,function(e){var n=o[t][1][e];return u(n||e)},n,n.exports,r,o,i,a)}return i[t].exports}for(var s="function"==typeof require&&require,e=0;e= 0");var n,t=h();for(n=0;n>>19))+(e<<5)&4294967295)^e<<9))+(e<<3)&4294967295)^e>>>16),(268435455&(this.seed=e))/268435456}n.exports=r,n.exports.random=r,n.exports.randomIterator=function(o,e){var i=e||r();if("function"==typeof i.next)return{forEach:function(e){var n,t,r;for(n=o.length-1;0r&&(r=i.pos.x),i.pos.yo&&(o=i.pos.y)}s.x1=n,s.x2=r,s.y1=t,s.y2=o},reset:function(){s.x1=s.y1=0,s.x2=s.y2=0},getBestNewPosition:function(e){var n=s,t=0,r=0;if(e.length){for(var o=0;o>>19))+374761393+(t<<5)&4294967295)+3550635116^t<<9))+4251993797+(t<<3)&4294967295)^t>>>16)))/268435456}var t="number"==typeof e?e:+new Date;return{next:function(e){return Math.floor(n()*e)},nextDouble:n}}n.exports={random:r,randomIterator:function(o,e){var i=e||r();if("function"==typeof i.next)return{forEach:function(e){for(var n,t,r=o.length-1;0e.x2&&(e.x2=n.x),n.ye.y2&&(e.y2=n.y)}function t(){0!==e.getNodesCount()&&(u.x1=Number.MAX_VALUE,u.y1=Number.MAX_VALUE,u.x2=Number.MIN_VALUE,u.y2=Number.MIN_VALUE,e.forEachNode(r))}function o(e){s[e.id]=e}function i(e){for(var n=0;ne.id&&(n=e.id,e=x[t],x[t]=x[n],x[t].id=t,x[n]=e,x[n].id=n)},graphCenterChanged:function(e,n){m[12]=2*e/c-1,m[13]=1-2*n/d,o()},addLink:function(e,n){var t=v++,r=P(e);return r.id=t,r.pos=n,E.createLink(r),x[t]=r,b[e.id]=r},addNode:function(e,n){var t=g++,r=N(e);return r.id=t,r.position=n,r.node=e,L.createNode(r),y[t]=r,w[e.id]=r},translateRel:function(e,n){m[12]+=2*m[0]*e/c/m[0],m[13]-=2*m[5]*n/d/m[5],o()},scale:function(e,n){var t=2*n.x/c-1,n=1-2*n.y/d;return t-=m[12],n-=m[13],m[12]+=t*(1-e),m[13]+=n*(1-e),m[0]*=e,m[5]*=e,o(),this.fire("rescaled"),m[0]},resetScale:function(){return i(),f&&(a(),o()),this},updateSize:a,init:function(e){var n={};if(r.preserveDrawingBuffer&&(n.preserveDrawingBuffer=!0),u=e,a(),i(),u.appendChild(s),!(f=s.getContext("experimental-webgl",n))){var t="Could not initialize WebGL. Seems like the browser doesn't support it.";throw window.alert(t),t}r.enableBlending&&(f.blendFunc(f.SRC_ALPHA,f.ONE_MINUS_SRC_ALPHA),f.enable(f.BLEND)),r.clearColor&&(t=r.clearColorValue,f.clearColor(t.r,t.g,t.b,t.a),this.beginRender=function(){f.clear(f.COLOR_BUFFER_BIT)}),E.load(f),E.updateSize(c/2,d/2),L.load(f),L.updateSize(c/2,d/2),o(),"function"==typeof h&&h(s)},release:function(e){s&&e&&e.removeChild(s)},isSupported:function(){var e=window.document.createElement("canvas");return e&&e.getContext&&e.getContext("experimental-webgl")},releaseLink:function(e){0e.length){t=new Float32Array(e.length*t*2);return t.set(e),t}return e},copyArrayPart:o,swapArrayPart:i,getLocations:function(e,n){for(var t={},r=0;r=f.length&&function(){var e=new p(a*u);f.push(e)}();var i=f[r.textureNumber];i.ctx.drawImage(n,r.col*u,r.row*u,u,u),c[e]=n.src,s[n.src]=o,i.isDirty=!0,t(o)}(r,t,n)},t.src=e)}}};return r;function d(e){var n=e%t;return{textureNumber:e/t<<0,row:n/a<<0,col:n%a}}function i(){r.isDirty=!0,n=0,e=null}function l(){e&&(window.clearTimeout(e),n+=1,e=null),10g.byteLength&&(n=new ArrayBuffer(2*g.byteLength),t=new Float32Array(n),(r=new Uint32Array(n)).set(m),v=t,m=r,g=n),h+=1,a=e.id},removeLink:function(e){0e.id&&o.swapArrayPart(v,6*e.id,6*a,6),0=p.byteLength&&(e=new ArrayBuffer(2*p.byteLength),n=new Float32Array(e),(t=new Uint32Array(e)).set(g),h=n,g=t,p=e)})(),v+=1},replaceProperties:function(){},render:function(){t.useProgram(n),t.bindBuffer(t.ARRAY_BUFFER,r),t.bufferData(t.ARRAY_BUFFER,p,t.DYNAMIC_DRAW),f&&(f=!1,t.uniformMatrix4fv(o.transform,!1,s),t.uniform2f(o.screenSize,a,u));t.vertexAttribPointer(o.vertexPos,3,t.FLOAT,!1,4*Float32Array.BYTES_PER_ELEMENT,0),t.vertexAttribPointer(o.color,4,t.UNSIGNED_BYTE,!0,4*Float32Array.BYTES_PER_ELEMENT,12),t.drawArrays(t.POINTS,0,v)}}}},{"./webgl.js":57}],65:[function(e,n,t){var r=e("./parseColor.js");n.exports=function(e,n){return{size:"number"==typeof e?e:10,color:r(n)}}},{"./parseColor.js":55}],66:[function(e,n,t){n.exports="0.10.1"},{}]},{},[1])(1)});