roam/js/vis-network.min.js
2023-09-05 18:33:07 -04:00

33 lines
686 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/**
* vis-network
* https://visjs.github.io/vis-network/
*
* A dynamic, browser-based visualization library.
*
* @version 0.0.0-no-version
* @date 2023-09-04T19:24:06.421Z
*
* @copyright (c) 2011-2017 Almende B.V, http://almende.com
* @copyright (c) 2017-2019 visjs contributors, https://github.com/visjs
*
* @license
* vis.js is dual licensed under both
*
* 1. The Apache 2.0 License
* http://www.apache.org/licenses/LICENSE-2.0
*
* and
*
* 2. The MIT License
* http://opensource.org/licenses/MIT
*
* vis.js may be distributed under either license.
*/
!function(g,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((g="undefined"!=typeof globalThis?globalThis:g||self).vis=g.vis||{})}(this,(function(g){var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function e(g){return g&&g.__esModule&&Object.prototype.hasOwnProperty.call(g,"default")?g.default:g}var A={},C={get exports(){return A},set exports(g){A=g}},I=function(g){return g&&g.Math==Math&&g},i=I("object"==typeof globalThis&&globalThis)||I("object"==typeof window&&window)||I("object"==typeof self&&self)||I("object"==typeof t&&t)||function(){return this}()||Function("return this")(),o=function(g){try{return!!g()}catch(g){return!0}},n=!o((function(){var g=function(){}.bind();return"function"!=typeof g||g.hasOwnProperty("prototype")})),r=n,s=Function.prototype,a=s.apply,d=s.call,h="object"==typeof Reflect&&Reflect.apply||(r?d.bind(a):function(){return d.apply(a,arguments)}),l=n,c=Function.prototype,u=c.call,p=l&&c.bind.bind(u,u),f=l?p:function(g){return function(){return u.apply(g,arguments)}},v=f,y=v({}.toString),m=v("".slice),b=function(g){return m(y(g),8,-1)},w=b,x=f,k=function(g){if("Function"===w(g))return x(g)},E="object"==typeof document&&document.all,O={all:E,IS_HTMLDDA:void 0===E&&void 0!==E},T=O.all,D=O.IS_HTMLDDA?function(g){return"function"==typeof g||g===T}:function(g){return"function"==typeof g},N={},R=!o((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),P=n,M=Function.prototype.call,B=P?M.bind(M):function(){return M.apply(M,arguments)},z={},S={}.propertyIsEnumerable,Z=Object.getOwnPropertyDescriptor,F=Z&&!S.call({1:2},1);z.f=F?function(g){var t=Z(this,g);return!!t&&t.enumerable}:S;var G,j,L=function(g,t){return{enumerable:!(1&g),configurable:!(2&g),writable:!(4&g),value:t}},V=o,Y=b,W=Object,Q=f("".split),U=V((function(){return!W("z").propertyIsEnumerable(0)}))?function(g){return"String"==Y(g)?Q(g,""):W(g)}:W,_=function(g){return null==g},H=_,K=TypeError,X=function(g){if(H(g))throw K("Can't call method on "+g);return g},J=U,q=X,$=function(g){return J(q(g))},gg=D,tg=O.all,eg=O.IS_HTMLDDA?function(g){return"object"==typeof g?null!==g:gg(g)||g===tg}:function(g){return"object"==typeof g?null!==g:gg(g)},Ag={},Cg=Ag,Ig=i,ig=D,og=function(g){return ig(g)?g:void 0},ng=function(g,t){return arguments.length<2?og(Cg[g])||og(Ig[g]):Cg[g]&&Cg[g][t]||Ig[g]&&Ig[g][t]},rg=f({}.isPrototypeOf),sg="undefined"!=typeof navigator&&String(navigator.userAgent)||"",ag=i,dg=sg,hg=ag.process,lg=ag.Deno,cg=hg&&hg.versions||lg&&lg.version,ug=cg&&cg.v8;ug&&(j=(G=ug.split("."))[0]>0&&G[0]<4?1:+(G[0]+G[1])),!j&&dg&&(!(G=dg.match(/Edge\/(\d+)/))||G[1]>=74)&&(G=dg.match(/Chrome\/(\d+)/))&&(j=+G[1]);var pg=j,fg=pg,vg=o,yg=!!Object.getOwnPropertySymbols&&!vg((function(){var g=Symbol();return!String(g)||!(Object(g)instanceof Symbol)||!Symbol.sham&&fg&&fg<41})),mg=yg&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,bg=ng,wg=D,xg=rg,kg=Object,Eg=mg?function(g){return"symbol"==typeof g}:function(g){var t=bg("Symbol");return wg(t)&&xg(t.prototype,kg(g))},Og=String,Tg=function(g){try{return Og(g)}catch(g){return"Object"}},Dg=D,Ng=Tg,Rg=TypeError,Pg=function(g){if(Dg(g))return g;throw Rg(Ng(g)+" is not a function")},Mg=Pg,Bg=_,zg=function(g,t){var e=g[t];return Bg(e)?void 0:Mg(e)},Sg=B,Zg=D,Fg=eg,Gg=TypeError,jg={},Lg={get exports(){return jg},set exports(g){jg=g}},Vg=i,Yg=Object.defineProperty,Wg=function(g,t){try{Yg(Vg,g,{value:t,configurable:!0,writable:!0})}catch(e){Vg[g]=t}return t},Qg="__core-js_shared__",Ug=i[Qg]||Wg(Qg,{}),_g=Ug;(Lg.exports=function(g,t){return _g[g]||(_g[g]=void 0!==t?t:{})})("versions",[]).push({version:"3.29.0",mode:"pure",copyright:"© 2014-2023 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.29.0/LICENSE",source:"https://github.com/zloirock/core-js"});var Hg=X,Kg=Object,Xg=function(g){return Kg(Hg(g))},Jg=Xg,qg=f({}.hasOwnProperty),$g=Object.hasOwn||function(g,t){return qg(Jg(g),t)},gt=f,tt=0,et=Math.random(),At=gt(1..toString),Ct=function(g){return"Symbol("+(void 0===g?"":g)+")_"+At(++tt+et,36)},It=jg,it=$g,ot=Ct,nt=yg,rt=mg,st=i.Symbol,at=It("wks"),dt=rt?st.for||st:st&&st.withoutSetter||ot,ht=function(g){return it(at,g)||(at[g]=nt&&it(st,g)?st[g]:dt("Symbol."+g)),at[g]},lt=B,ct=eg,ut=Eg,pt=zg,ft=function(g,t){var e,A;if("string"===t&&Zg(e=g.toString)&&!Fg(A=Sg(e,g)))return A;if(Zg(e=g.valueOf)&&!Fg(A=Sg(e,g)))return A;if("string"!==t&&Zg(e=g.toString)&&!Fg(A=Sg(e,g)))return A;throw Gg("Can't convert object to primitive value")},vt=TypeError,yt=ht("toPrimitive"),mt=function(g,t){if(!ct(g)||ut(g))return g;var e,A=pt(g,yt);if(A){if(void 0===t&&(t="default"),e=lt(A,g,t),!ct(e)||ut(e))return e;throw vt("Can't convert object to primitive value")}return void 0===t&&(t="number"),ft(g,t)},bt=Eg,wt=function(g){var t=mt(g,"string");return bt(t)?t:t+""},xt=eg,kt=i.document,Et=xt(kt)&&xt(kt.createElement),Ot=function(g){return Et?kt.createElement(g):{}},Tt=Ot,Dt=!R&&!o((function(){return 7!=Object.defineProperty(Tt("div"),"a",{get:function(){return 7}}).a})),Nt=R,Rt=B,Pt=z,Mt=L,Bt=$,zt=wt,St=$g,Zt=Dt,Ft=Object.getOwnPropertyDescriptor;N.f=Nt?Ft:function(g,t){if(g=Bt(g),t=zt(t),Zt)try{return Ft(g,t)}catch(g){}if(St(g,t))return Mt(!Rt(Pt.f,g,t),g[t])};var Gt=o,jt=D,Lt=/#|\.prototype\./,Vt=function(g,t){var e=Wt[Yt(g)];return e==Ut||e!=Qt&&(jt(t)?Gt(t):!!t)},Yt=Vt.normalize=function(g){return String(g).replace(Lt,".").toLowerCase()},Wt=Vt.data={},Qt=Vt.NATIVE="N",Ut=Vt.POLYFILL="P",_t=Vt,Ht=Pg,Kt=n,Xt=k(k.bind),Jt=function(g,t){return Ht(g),void 0===t?g:Kt?Xt(g,t):function(){return g.apply(t,arguments)}},qt={},$t=R&&o((function(){return 42!=Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype})),ge=eg,te=String,ee=TypeError,Ae=function(g){if(ge(g))return g;throw ee(te(g)+" is not an object")},Ce=R,Ie=Dt,ie=$t,oe=Ae,ne=wt,re=TypeError,se=Object.defineProperty,ae=Object.getOwnPropertyDescriptor,de="enumerable",he="configurable",le="writable";qt.f=Ce?ie?function(g,t,e){if(oe(g),t=ne(t),oe(e),"function"==typeof g&&"prototype"===t&&"value"in e&&le in e&&!e[le]){var A=ae(g,t);A&&A[le]&&(g[t]=e.value,e={configurable:he in e?e[he]:A[he],enumerable:de in e?e[de]:A[de],writable:!1})}return se(g,t,e)}:se:function(g,t,e){if(oe(g),t=ne(t),oe(e),Ie)try{return se(g,t,e)}catch(g){}if("get"in e||"set"in e)throw re("Accessors not supported");return"value"in e&&(g[t]=e.value),g};var ce=qt,ue=L,pe=R?function(g,t,e){return ce.f(g,t,ue(1,e))}:function(g,t,e){return g[t]=e,g},fe=i,ve=h,ye=k,me=D,be=N.f,we=_t,xe=Ag,ke=Jt,Ee=pe,Oe=$g,Te=function(g){var t=function(e,A,C){if(this instanceof t){switch(arguments.length){case 0:return new g;case 1:return new g(e);case 2:return new g(e,A)}return new g(e,A,C)}return ve(g,this,arguments)};return t.prototype=g.prototype,t},De=function(g,t){var e,A,C,I,i,o,n,r,s,a=g.target,d=g.global,h=g.stat,l=g.proto,c=d?fe:h?fe[a]:(fe[a]||{}).prototype,u=d?xe:xe[a]||Ee(xe,a,{})[a],p=u.prototype;for(I in t)A=!(e=we(d?I:a+(h?".":"#")+I,g.forced))&&c&&Oe(c,I),o=u[I],A&&(n=g.dontCallGetSet?(s=be(c,I))&&s.value:c[I]),i=A&&n?n:t[I],A&&typeof o==typeof i||(r=g.bind&&A?ke(i,fe):g.wrap&&A?Te(i):l&&me(i)?ye(i):i,(g.sham||i&&i.sham||o&&o.sham)&&Ee(r,"sham",!0),Ee(u,I,r),l&&(Oe(xe,C=a+"Prototype")||Ee(xe,C,{}),Ee(xe[C],I,i),g.real&&p&&(e||!p[I])&&Ee(p,I,i)))},Ne=Math.ceil,Re=Math.floor,Pe=Math.trunc||function(g){var t=+g;return(t>0?Re:Ne)(t)},Me=function(g){var t=+g;return t!=t||0===t?0:Pe(t)},Be=Me,ze=Math.max,Se=Math.min,Ze=function(g,t){var e=Be(g);return e<0?ze(e+t,0):Se(e,t)},Fe=Me,Ge=Math.min,je=function(g){return g>0?Ge(Fe(g),9007199254740991):0},Le=function(g){return je(g.length)},Ve=$,Ye=Ze,We=Le,Qe=function(g){return function(t,e,A){var C,I=Ve(t),i=We(I),o=Ye(A,i);if(g&&e!=e){for(;i>o;)if((C=I[o++])!=C)return!0}else for(;i>o;o++)if((g||o in I)&&I[o]===e)return g||o||0;return!g&&-1}},Ue={includes:Qe(!0),indexOf:Qe(!1)},_e={},He=$g,Ke=$,Xe=Ue.indexOf,Je=_e,qe=f([].push),$e=function(g,t){var e,A=Ke(g),C=0,I=[];for(e in A)!He(Je,e)&&He(A,e)&&qe(I,e);for(;t.length>C;)He(A,e=t[C++])&&(~Xe(I,e)||qe(I,e));return I},gA=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],tA=$e,eA=gA,AA=Object.keys||function(g){return tA(g,eA)},CA={};CA.f=Object.getOwnPropertySymbols;var IA=R,iA=f,oA=B,nA=o,rA=AA,sA=CA,aA=z,dA=Xg,hA=U,lA=Object.assign,cA=Object.defineProperty,uA=iA([].concat),pA=!lA||nA((function(){if(IA&&1!==lA({b:1},lA(cA({},"a",{enumerable:!0,get:function(){cA(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var g={},t={},e=Symbol(),A="abcdefghijklmnopqrst";return g[e]=7,A.split("").forEach((function(g){t[g]=g})),7!=lA({},g)[e]||rA(lA({},t)).join("")!=A}))?function(g,t){for(var e=dA(g),A=arguments.length,C=1,I=sA.f,i=aA.f;A>C;)for(var o,n=hA(arguments[C++]),r=I?uA(rA(n),I(n)):rA(n),s=r.length,a=0;s>a;)o=r[a++],IA&&!oA(i,n,o)||(e[o]=n[o]);return e}:lA,fA=pA;De({target:"Object",stat:!0,arity:2,forced:Object.assign!==fA},{assign:fA});var vA=Ag.Object.assign;!function(g){g.exports=vA}(C);var yA=e(A),mA={},bA={get exports(){return mA},set exports(g){mA=g}},wA=f([].slice),xA=f,kA=Pg,EA=eg,OA=$g,TA=wA,DA=n,NA=Function,RA=xA([].concat),PA=xA([].join),MA={},BA=function(g,t,e){if(!OA(MA,t)){for(var A=[],C=0;C<t;C++)A[C]="a["+C+"]";MA[t]=NA("C,a","return new C("+PA(A,",")+")")}return MA[t](g,e)},zA=DA?NA.bind:function(g){var t=kA(this),e=t.prototype,A=TA(arguments,1),C=function(){var e=RA(A,TA(arguments));return this instanceof C?BA(t,e.length,e):t.apply(g,e)};return EA(e)&&(C.prototype=e),C},SA=zA;De({target:"Function",proto:!0,forced:Function.bind!==SA},{bind:SA});var ZA=Ag,FA=function(g){return ZA[g+"Prototype"]},GA=FA("Function").bind,jA=rg,LA=GA,VA=Function.prototype,YA=function(g){var t=g.bind;return g===VA||jA(VA,g)&&t===VA.bind?LA:t},WA=YA;!function(g){g.exports=WA}(bA);var QA=e(mA);function UA(g,t,e,A){g.beginPath(),g.arc(t,e,A,0,2*Math.PI,!1),g.closePath()}function _A(g,t,e,A,C,I){var i=Math.PI/180;A-2*I<0&&(I=A/2),C-2*I<0&&(I=C/2),g.beginPath(),g.moveTo(t+I,e),g.lineTo(t+A-I,e),g.arc(t+A-I,e+I,I,270*i,360*i,!1),g.lineTo(t+A,e+C-I),g.arc(t+A-I,e+C-I,I,0,90*i,!1),g.lineTo(t+I,e+C),g.arc(t+I,e+C-I,I,90*i,180*i,!1),g.lineTo(t,e+I),g.arc(t+I,e+I,I,180*i,270*i,!1),g.closePath()}function HA(g,t,e,A,C){var I=.5522848,i=A/2*I,o=C/2*I,n=t+A,r=e+C,s=t+A/2,a=e+C/2;g.beginPath(),g.moveTo(t,a),g.bezierCurveTo(t,a-o,s-i,e,s,e),g.bezierCurveTo(s+i,e,n,a-o,n,a),g.bezierCurveTo(n,a+o,s+i,r,s,r),g.bezierCurveTo(s-i,r,t,a+o,t,a),g.closePath()}function KA(g,t,e,A,C){var I=C*(1/3),i=.5522848,o=A/2*i,n=I/2*i,r=t+A,s=e+I,a=t+A/2,d=e+I/2,h=e+(C-I/2),l=e+C;g.beginPath(),g.moveTo(r,d),g.bezierCurveTo(r,d+n,a+o,s,a,s),g.bezierCurveTo(a-o,s,t,d+n,t,d),g.bezierCurveTo(t,d-n,a-o,e,a,e),g.bezierCurveTo(a+o,e,r,d-n,r,d),g.lineTo(r,h),g.bezierCurveTo(r,h+n,a+o,l,a,l),g.bezierCurveTo(a-o,l,t,h+n,t,h),g.lineTo(t,d)}function XA(g,t,e,A,C,I){g.beginPath(),g.moveTo(t,e);for(var i=I.length,o=A-t,n=C-e,r=n/o,s=Math.sqrt(o*o+n*n),a=0,d=!0,h=0,l=+I[0];s>=.1;)(l=+I[a++%i])>s&&(l=s),h=Math.sqrt(l*l/(1+r*r)),t+=h=o<0?-h:h,e+=r*h,!0===d?g.lineTo(t,e):g.moveTo(t,e),s-=l,d=!d}var JA={circle:UA,dashedLine:XA,database:KA,diamond:function(g,t,e,A){g.beginPath(),g.lineTo(t,e+A),g.lineTo(t+A,e),g.lineTo(t,e-A),g.lineTo(t-A,e),g.closePath()},ellipse:HA,ellipse_vis:HA,hexagon:function(g,t,e,A){g.beginPath();var C=2*Math.PI/6;g.moveTo(t+A,e);for(var I=1;I<6;I++)g.lineTo(t+A*Math.cos(C*I),e+A*Math.sin(C*I));g.closePath()},roundRect:_A,square:function(g,t,e,A){g.beginPath(),g.rect(t-A,e-A,2*A,2*A),g.closePath()},star:function(g,t,e,A){g.beginPath(),e+=.1*(A*=.82);for(var C=0;C<10;C++){var I=C%2==0?1.3*A:.5*A;g.lineTo(t+I*Math.sin(2*C*Math.PI/10),e-I*Math.cos(2*C*Math.PI/10))}g.closePath()},triangle:function(g,t,e,A){g.beginPath(),e+=.275*(A*=1.15);var C=2*A,I=C/2,i=Math.sqrt(3)/6*C,o=Math.sqrt(C*C-I*I);g.moveTo(t,e-(o-i)),g.lineTo(t+I,e+i),g.lineTo(t-I,e+i),g.lineTo(t,e-(o-i)),g.closePath()},triangleDown:function(g,t,e,A){g.beginPath(),e-=.275*(A*=1.15);var C=2*A,I=C/2,i=Math.sqrt(3)/6*C,o=Math.sqrt(C*C-I*I);g.moveTo(t,e+(o-i)),g.lineTo(t+I,e-i),g.lineTo(t-I,e-i),g.lineTo(t,e+(o-i)),g.closePath()}};function qA(g,t){void 0===t&&(t={});var e=t.insertAt;if(g&&"undefined"!=typeof document){var A=document.head||document.getElementsByTagName("head")[0],C=document.createElement("style");C.type="text/css","top"===e&&A.firstChild?A.insertBefore(C,A.firstChild):A.appendChild(C),C.styleSheet?C.styleSheet.cssText=g:C.appendChild(document.createTextNode(g))}}qA(".vis-overlay{bottom:0;left:0;position:absolute;right:0;top:0;z-index:10}.vis-active{box-shadow:0 0 10px #86d5f8}");qA(".vis [class*=span]{min-height:0;width:auto}");qA('div.vis-color-picker{background-color:#fff;border-radius:15px;box-shadow:0 0 10px 0 rgba(0,0,0,.5);display:none;height:444px;left:30px;margin-left:30px;margin-top:-140px;padding:10px;position:absolute;top:0;width:310px;z-index:1}div.vis-color-picker div.vis-arrow{left:5px;position:absolute;top:147px}div.vis-color-picker div.vis-arrow:after,div.vis-color-picker div.vis-arrow:before{border:solid transparent;content:" ";height:0;pointer-events:none;position:absolute;right:100%;top:50%;width:0}div.vis-color-picker div.vis-arrow:after{border-color:hsla(0,0%,100%,0) #fff hsla(0,0%,100%,0) hsla(0,0%,100%,0);border-width:30px;margin-top:-30px}div.vis-color-picker div.vis-color{cursor:pointer;height:289px;position:absolute;width:289px}div.vis-color-picker div.vis-brightness{position:absolute;top:313px}div.vis-color-picker div.vis-opacity{position:absolute;top:350px}div.vis-color-picker div.vis-selector{background:#4c4c4c;background:-moz-linear-gradient(top,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#4c4c4c),color-stop(12%,#595959),color-stop(25%,#666),color-stop(39%,#474747),color-stop(50%,#2c2c2c),color-stop(51%,#000),color-stop(60%,#111),color-stop(76%,#2b2b2b),color-stop(91%,#1c1c1c),color-stop(100%,#131313));background:-webkit-linear-gradient(top,#4c4c4c,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313);background:-o-linear-gradient(top,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);background:-ms-linear-gradient(top,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);background:linear-gradient(180deg,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313);border:1px solid #fff;border-radius:15px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#4c4c4c",endColorstr="#131313",GradientType=0);height:15px;left:137px;position:absolute;top:137px;width:15px}div.vis-color-picker div.vis-new-color{left:159px;padding-right:2px;text-align:right}div.vis-color-picker div.vis-initial-color,div.vis-color-picker div.vis-new-color{border:1px solid rgba(0,0,0,.1);border-radius:5px;color:rgba(0,0,0,.4);font-size:10px;height:20px;line-height:20px;position:absolute;top:380px;vertical-align:middle;width:140px}div.vis-color-picker div.vis-initial-color{left:10px;padding-left:2px;text-align:left}div.vis-color-picker div.vis-label{left:10px;position:absolute;width:300px}div.vis-color-picker div.vis-label.vis-brightness{top:300px}div.vis-color-picker div.vis-label.vis-opacity{top:338px}div.vis-color-picker div.vis-button{background-color:#f7f7f7;border:2px solid #d9d9d9;border-radius:10px;cursor:pointer;height:25px;line-height:25px;position:absolute;text-align:center;top:410px;vertical-align:middle;width:68px}div.vis-color-picker div.vis-button.vis-cancel{left:5px}div.vis-color-picker div.vis-button.vis-load{left:82px}div.vis-color-picker div.vis-button.vis-apply{left:159px}div.vis-color-picker div.vis-button.vis-save{left:236px}div.vis-color-picker input.vis-range{height:20px;width:290px}');qA('div.vis-configuration{display:block;float:left;font-size:12px;position:relative}div.vis-configuration-wrapper{display:block;width:700px}div.vis-configuration-wrapper:after{clear:both;content:"";display:block}div.vis-configuration.vis-config-option-container{background-color:#fff;border:2px solid #f7f8fa;border-radius:4px;display:block;left:10px;margin-top:20px;padding-left:5px;width:495px}div.vis-configuration.vis-config-button{background-color:#f7f8fa;border:2px solid #ceced0;border-radius:4px;cursor:pointer;display:block;height:25px;left:10px;line-height:25px;margin-bottom:30px;margin-top:20px;padding-left:5px;vertical-align:middle;width:495px}div.vis-configuration.vis-config-button.hover{background-color:#4588e6;border:2px solid #214373;color:#fff}div.vis-configuration.vis-config-item{display:block;float:left;height:25px;line-height:25px;vertical-align:middle;width:495px}div.vis-configuration.vis-config-item.vis-config-s2{background-color:#f7f8fa;border-radius:3px;left:10px;padding-left:5px}div.vis-configuration.vis-config-item.vis-config-s3{background-color:#e4e9f0;border-radius:3px;left:20px;padding-left:5px}div.vis-configuration.vis-config-item.vis-config-s4{background-color:#cfd8e6;border-radius:3px;left:30px;padding-left:5px}div.vis-configuration.vis-config-header{font-size:18px;font-weight:700}div.vis-configuration.vis-config-label{height:25px;line-height:25px;width:120px}div.vis-configuration.vis-config-label.vis-config-s3{width:110px}div.vis-configuration.vis-config-label.vis-config-s4{width:100px}div.vis-configuration.vis-config-colorBlock{border:1px solid #444;border-radius:2px;cursor:pointer;height:19px;margin:0;padding:0;top:1px;width:30px}input.vis-configuration.vis-config-checkbox{left:-5px}input.vis-configuration.vis-config-rangeinput{margin:0;padding:1px;pointer-events:none;position:relative;top:-5px;width:60px}input.vis-configuration.vis-config-range{-webkit-appearance:none;background-color:transparent;border:0 solid #fff;height:20px;width:300px}input.vis-configuration.vis-config-range::-webkit-slider-runnable-track{background:#dedede;background:-moz-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#dedede),color-stop(99%,#c8c8c8));background:-webkit-linear-gradient(top,#dedede,#c8c8c8 99%);background:-o-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-ms-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:linear-gradient(180deg,#dedede 0,#c8c8c8 99%);border:1px solid #999;border-radius:3px;box-shadow:0 0 3px 0 #aaa;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#dedede",endColorstr="#c8c8c8",GradientType=0);height:5px;width:300px}input.vis-configuration.vis-config-range::-webkit-slider-thumb{-webkit-appearance:none;background:#3876c2;background:-moz-linear-gradient(top,#3876c2 0,#385380 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#3876c2),color-stop(100%,#385380));background:-webkit-linear-gradient(top,#3876c2,#385380);background:-o-linear-gradient(top,#3876c2 0,#385380 100%);background:-ms-linear-gradient(top,#3876c2 0,#385380 100%);background:linear-gradient(180deg,#3876c2 0,#385380);border:1px solid #14334b;border-radius:50%;box-shadow:0 0 1px 0 #111927;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#3876c2",endColorstr="#385380",GradientType=0);height:17px;margin-top:-7px;width:17px}input.vis-configuration.vis-config-range:focus{outline:none}input.vis-configuration.vis-config-range:focus::-webkit-slider-runnable-track{background:#9d9d9d;background:-moz-linear-gradient(top,#9d9d9d 0,#c8c8c8 99%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#9d9d9d),color-stop(99%,#c8c8c8));background:-webkit-linear-gradient(top,#9d9d9d,#c8c8c8 99%);background:-o-linear-gradient(top,#9d9d9d 0,#c8c8c8 99%);background:-ms-linear-gradient(top,#9d9d9d 0,#c8c8c8 99%);background:linear-gradient(180deg,#9d9d9d 0,#c8c8c8 99%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#9d9d9d",endColorstr="#c8c8c8",GradientType=0)}input.vis-configuration.vis-config-range::-moz-range-track{background:#dedede;background:-moz-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#dedede),color-stop(99%,#c8c8c8));background:-webkit-linear-gradient(top,#dedede,#c8c8c8 99%);background:-o-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-ms-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:linear-gradient(180deg,#dedede 0,#c8c8c8 99%);border:1px solid #999;border-radius:3px;box-shadow:0 0 3px 0 #aaa;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#dedede",endColorstr="#c8c8c8",GradientType=0);height:10px;width:300px}input.vis-configuration.vis-config-range::-moz-range-thumb{background:#385380;border:none;border-radius:50%;height:16px;width:16px}input.vis-configuration.vis-config-range:-moz-focusring{outline:1px solid #fff;outline-offset:-1px}input.vis-configuration.vis-config-range::-ms-track{background:transparent;border-color:transparent;border-width:6px 0;color:transparent;height:5px;width:300px}input.vis-configuration.vis-config-range::-ms-fill-lower{background:#777;border-radius:10px}input.vis-configuration.vis-config-range::-ms-fill-upper{background:#ddd;border-radius:10px}input.vis-configuration.vis-config-range::-ms-thumb{background:#385380;border:none;border-radius:50%;height:16px;width:16px}input.vis-configuration.vis-config-range:focus::-ms-fill-lower{background:#888}input.vis-configuration.vis-config-range:focus::-ms-fill-upper{background:#ccc}.vis-configuration-popup{background:rgba(57,76,89,.85);border:2px solid #f2faff;border-radius:4px;color:#fff;font-size:14px;height:30px;line-height:30px;position:absolute;text-align:center;-webkit-transition:opacity .3s ease-in-out;-moz-transition:opacity .3s ease-in-out;transition:opacity .3s ease-in-out;width:150px}.vis-configuration-popup:after,.vis-configuration-popup:before{border:solid transparent;content:" ";height:0;left:100%;pointer-events:none;position:absolute;top:50%;width:0}.vis-configuration-popup:after{border-color:rgba(136,183,213,0) rgba(136,183,213,0) rgba(136,183,213,0) rgba(57,76,89,.85);border-width:8px;margin-top:-8px}.vis-configuration-popup:before{border-color:rgba(194,225,245,0) rgba(194,225,245,0) rgba(194,225,245,0) #f2faff;border-width:12px;margin-top:-12px}');qA("div.vis-tooltip{background-color:#f5f4ed;border:1px solid #808074;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;box-shadow:3px 3px 10px rgba(0,0,0,.2);color:#000;font-family:verdana;font-size:14px;padding:5px;pointer-events:none;position:absolute;visibility:hidden;white-space:nowrap;z-index:5}");var $A={};!function(g){function t(g){if(g)return function(g){for(var e in t.prototype)g[e]=t.prototype[e];return g}(g)}g.exports=t,t.prototype.on=t.prototype.addEventListener=function(g,t){return this._callbacks=this._callbacks||{},(this._callbacks["$"+g]=this._callbacks["$"+g]||[]).push(t),this},t.prototype.once=function(g,t){function e(){this.off(g,e),t.apply(this,arguments)}return e.fn=t,this.on(g,e),this},t.prototype.off=t.prototype.removeListener=t.prototype.removeAllListeners=t.prototype.removeEventListener=function(g,t){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var e,A=this._callbacks["$"+g];if(!A)return this;if(1==arguments.length)return delete this._callbacks["$"+g],this;for(var C=0;C<A.length;C++)if((e=A[C])===t||e.fn===t){A.splice(C,1);break}return 0===A.length&&delete this._callbacks["$"+g],this},t.prototype.emit=function(g){this._callbacks=this._callbacks||{};for(var t=new Array(arguments.length-1),e=this._callbacks["$"+g],A=1;A<arguments.length;A++)t[A-1]=arguments[A];if(e){A=0;for(var C=(e=e.slice(0)).length;A<C;++A)e[A].apply(this,t)}return this},t.prototype.listeners=function(g){return this._callbacks=this._callbacks||{},this._callbacks["$"+g]||[]},t.prototype.hasListeners=function(g){return!!this.listeners(g).length}}({get exports(){return $A},set exports(g){$A=g}});var gC=$A,tC={},eC={get exports(){return tC},set exports(g){tC=g}},AC={};AC[ht("toStringTag")]="z";var CC,IC,iC,oC="[object z]"===String(AC),nC=oC,rC=D,sC=b,aC=ht("toStringTag"),dC=Object,hC="Arguments"==sC(function(){return arguments}()),lC=nC?sC:function(g){var t,e,A;return void 0===g?"Undefined":null===g?"Null":"string"==typeof(e=function(g,t){try{return g[t]}catch(g){}}(t=dC(g),aC))?e:hC?sC(t):"Object"==(A=sC(t))&&rC(t.callee)?"Arguments":A},cC=lC,uC=String,pC=function(g){if("Symbol"===cC(g))throw TypeError("Cannot convert a Symbol value to a string");return uC(g)},fC=f,vC=Me,yC=pC,mC=X,bC=fC("".charAt),wC=fC("".charCodeAt),xC=fC("".slice),kC=function(g){return function(t,e){var A,C,I=yC(mC(t)),i=vC(e),o=I.length;return i<0||i>=o?g?"":void 0:(A=wC(I,i))<55296||A>56319||i+1===o||(C=wC(I,i+1))<56320||C>57343?g?bC(I,i):A:g?xC(I,i,i+2):C-56320+(A-55296<<10)+65536}},EC={codeAt:kC(!1),charAt:kC(!0)},OC=D,TC=i.WeakMap,DC=OC(TC)&&/native code/.test(String(TC)),NC=Ct,RC=jg("keys"),PC=function(g){return RC[g]||(RC[g]=NC(g))},MC=DC,BC=i,zC=eg,SC=pe,ZC=$g,FC=Ug,GC=PC,jC=_e,LC="Object already initialized",VC=BC.TypeError,YC=BC.WeakMap;if(MC||FC.state){var WC=FC.state||(FC.state=new YC);WC.get=WC.get,WC.has=WC.has,WC.set=WC.set,CC=function(g,t){if(WC.has(g))throw VC(LC);return t.facade=g,WC.set(g,t),t},IC=function(g){return WC.get(g)||{}},iC=function(g){return WC.has(g)}}else{var QC=GC("state");jC[QC]=!0,CC=function(g,t){if(ZC(g,QC))throw VC(LC);return t.facade=g,SC(g,QC,t),t},IC=function(g){return ZC(g,QC)?g[QC]:{}},iC=function(g){return ZC(g,QC)}}var UC={set:CC,get:IC,has:iC,enforce:function(g){return iC(g)?IC(g):CC(g,{})},getterFor:function(g){return function(t){var e;if(!zC(t)||(e=IC(t)).type!==g)throw VC("Incompatible receiver, "+g+" required");return e}}},_C=R,HC=$g,KC=Function.prototype,XC=_C&&Object.getOwnPropertyDescriptor,JC=HC(KC,"name"),qC={EXISTS:JC,PROPER:JC&&"something"===function(){}.name,CONFIGURABLE:JC&&(!_C||_C&&XC(KC,"name").configurable)},$C={},gI=R,tI=$t,eI=qt,AI=Ae,CI=$,II=AA;$C.f=gI&&!tI?Object.defineProperties:function(g,t){AI(g);for(var e,A=CI(t),C=II(t),I=C.length,i=0;I>i;)eI.f(g,e=C[i++],A[e]);return g};var iI,oI=ng("document","documentElement"),nI=Ae,rI=$C,sI=gA,aI=_e,dI=oI,hI=Ot,lI="prototype",cI="script",uI=PC("IE_PROTO"),pI=function(){},fI=function(g){return"<"+cI+">"+g+"</"+cI+">"},vI=function(g){g.write(fI("")),g.close();var t=g.parentWindow.Object;return g=null,t},yI=function(){try{iI=new ActiveXObject("htmlfile")}catch(g){}var g,t,e;yI="undefined"!=typeof document?document.domain&&iI?vI(iI):(t=hI("iframe"),e="java"+cI+":",t.style.display="none",dI.appendChild(t),t.src=String(e),(g=t.contentWindow.document).open(),g.write(fI("document.F=Object")),g.close(),g.F):vI(iI);for(var A=sI.length;A--;)delete yI[lI][sI[A]];return yI()};aI[uI]=!0;var mI,bI,wI,xI=Object.create||function(g,t){var e;return null!==g?(pI[lI]=nI(g),e=new pI,pI[lI]=null,e[uI]=g):e=yI(),void 0===t?e:rI.f(e,t)},kI=!o((function(){function g(){}return g.prototype.constructor=null,Object.getPrototypeOf(new g)!==g.prototype})),EI=$g,OI=D,TI=Xg,DI=kI,NI=PC("IE_PROTO"),RI=Object,PI=RI.prototype,MI=DI?RI.getPrototypeOf:function(g){var t=TI(g);if(EI(t,NI))return t[NI];var e=t.constructor;return OI(e)&&t instanceof e?e.prototype:t instanceof RI?PI:null},BI=pe,zI=function(g,t,e,A){return A&&A.enumerable?g[t]=e:BI(g,t,e),g},SI=o,ZI=D,FI=eg,GI=xI,jI=MI,LI=zI,VI=ht("iterator"),YI=!1;[].keys&&("next"in(wI=[].keys())?(bI=jI(jI(wI)))!==Object.prototype&&(mI=bI):YI=!0);var WI=!FI(mI)||SI((function(){var g={};return mI[VI].call(g)!==g}));ZI((mI=WI?{}:GI(mI))[VI])||LI(mI,VI,(function(){return this}));var QI={IteratorPrototype:mI,BUGGY_SAFARI_ITERATORS:YI},UI=lC,_I=oC?{}.toString:function(){return"[object "+UI(this)+"]"},HI=oC,KI=qt.f,XI=pe,JI=$g,qI=_I,$I=ht("toStringTag"),gi=function(g,t,e,A){if(g){var C=e?g:g.prototype;JI(C,$I)||KI(C,$I,{configurable:!0,value:t}),A&&!HI&&XI(C,"toString",qI)}},ti={},ei=QI.IteratorPrototype,Ai=xI,Ci=L,Ii=gi,ii=ti,oi=function(){return this},ni=f,ri=Pg,si=D,ai=String,di=TypeError,hi=function(g,t,e){try{return ni(ri(Object.getOwnPropertyDescriptor(g,t)[e]))}catch(g){}},li=Ae,ci=function(g){if("object"==typeof g||si(g))return g;throw di("Can't set "+ai(g)+" as a prototype")},ui=Object.setPrototypeOf||("__proto__"in{}?function(){var g,t=!1,e={};try{(g=hi(Object.prototype,"__proto__","set"))(e,[]),t=e instanceof Array}catch(g){}return function(e,A){return li(e),ci(A),t?g(e,A):e.__proto__=A,e}}():void 0),pi=De,fi=B,vi=function(g,t,e,A){var C=t+" Iterator";return g.prototype=Ai(ei,{next:Ci(+!A,e)}),Ii(g,C,!1,!0),ii[C]=oi,g},yi=MI,mi=gi,bi=zI,wi=ti,xi=qC.PROPER,ki=QI.BUGGY_SAFARI_ITERATORS,Ei=ht("iterator"),Oi="keys",Ti="values",Di="entries",Ni=function(){return this},Ri=function(g,t,e,A,C,I,i){vi(e,t,A);var o,n,r,s=function(g){if(g===C&&c)return c;if(!ki&&g in h)return h[g];switch(g){case Oi:case Ti:case Di:return function(){return new e(this,g)}}return function(){return new e(this)}},a=t+" Iterator",d=!1,h=g.prototype,l=h[Ei]||h["@@iterator"]||C&&h[C],c=!ki&&l||s(C),u="Array"==t&&h.entries||l;if(u&&(o=yi(u.call(new g)))!==Object.prototype&&o.next&&(mi(o,a,!0,!0),wi[a]=Ni),xi&&C==Ti&&l&&l.name!==Ti&&(d=!0,c=function(){return fi(l,this)}),C)if(n={values:s(Ti),keys:I?c:s(Oi),entries:s(Di)},i)for(r in n)(ki||d||!(r in h))&&bi(h,r,n[r]);else pi({target:t,proto:!0,forced:ki||d},n);return i&&h[Ei]!==c&&bi(h,Ei,c,{name:C}),wi[t]=c,n},Pi=function(g,t){return{value:g,done:t}},Mi=EC.charAt,Bi=pC,zi=UC,Si=Ri,Zi=Pi,Fi="String Iterator",Gi=zi.set,ji=zi.getterFor(Fi);Si(String,"String",(function(g){Gi(this,{type:Fi,string:Bi(g),index:0})}),(function(){var g,t=ji(this),e=t.string,A=t.index;return A>=e.length?Zi(void 0,!0):(g=Mi(e,A),t.index+=g.length,Zi(g,!1))}));var Li=B,Vi=Ae,Yi=zg,Wi=function(g,t,e){var A,C;Vi(g);try{if(!(A=Yi(g,"return"))){if("throw"===t)throw e;return e}A=Li(A,g)}catch(g){C=!0,A=g}if("throw"===t)throw e;if(C)throw A;return Vi(A),e},Qi=Ae,Ui=Wi,_i=ti,Hi=ht("iterator"),Ki=Array.prototype,Xi=function(g){return void 0!==g&&(_i.Array===g||Ki[Hi]===g)},Ji=D,qi=Ug,$i=f(Function.toString);Ji(qi.inspectSource)||(qi.inspectSource=function(g){return $i(g)});var go=qi.inspectSource,to=f,eo=o,Ao=D,Co=lC,Io=go,io=function(){},oo=[],no=ng("Reflect","construct"),ro=/^\s*(?:class|function)\b/,so=to(ro.exec),ao=!ro.exec(io),ho=function(g){if(!Ao(g))return!1;try{return no(io,oo,g),!0}catch(g){return!1}},lo=function(g){if(!Ao(g))return!1;switch(Co(g)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return ao||!!so(ro,Io(g))}catch(g){return!0}};lo.sham=!0;var co=!no||eo((function(){var g;return ho(ho.call)||!ho(Object)||!ho((function(){g=!0}))||g}))?lo:ho,uo=wt,po=qt,fo=L,vo=function(g,t,e){var A=uo(t);A in g?po.f(g,A,fo(0,e)):g[A]=e},yo=lC,mo=zg,bo=_,wo=ti,xo=ht("iterator"),ko=function(g){if(!bo(g))return mo(g,xo)||mo(g,"@@iterator")||wo[yo(g)]},Eo=B,Oo=Pg,To=Ae,Do=Tg,No=ko,Ro=TypeError,Po=function(g,t){var e=arguments.length<2?No(g):t;if(Oo(e))return To(Eo(e,g));throw Ro(Do(g)+" is not iterable")},Mo=Jt,Bo=B,zo=Xg,So=function(g,t,e,A){try{return A?t(Qi(e)[0],e[1]):t(e)}catch(t){Ui(g,"throw",t)}},Zo=Xi,Fo=co,Go=Le,jo=vo,Lo=Po,Vo=ko,Yo=Array,Wo=ht("iterator"),Qo=!1;try{var Uo=0,_o={next:function(){return{done:!!Uo++}},return:function(){Qo=!0}};_o[Wo]=function(){return this},Array.from(_o,(function(){throw 2}))}catch(g){}var Ho=function(g,t){if(!t&&!Qo)return!1;var e=!1;try{var A={};A[Wo]=function(){return{next:function(){return{done:e=!0}}}},g(A)}catch(g){}return e},Ko=function(g){var t=zo(g),e=Fo(this),A=arguments.length,C=A>1?arguments[1]:void 0,I=void 0!==C;I&&(C=Mo(C,A>2?arguments[2]:void 0));var i,o,n,r,s,a,d=Vo(t),h=0;if(!d||this===Yo&&Zo(d))for(i=Go(t),o=e?new this(i):Yo(i);i>h;h++)a=I?C(t[h],h):t[h],jo(o,h,a);else for(s=(r=Lo(t,d)).next,o=e?new this:[];!(n=Bo(s,r)).done;h++)a=I?So(r,C,[n.value,h],!0):n.value,jo(o,h,a);return o.length=h,o};De({target:"Array",stat:!0,forced:!Ho((function(g){Array.from(g)}))},{from:Ko});var Xo=Ag.Array.from;!function(g){g.exports=Xo}(eC);var Jo=e(tC),qo={},$o={get exports(){return qo},set exports(g){qo=g}},gn={},tn={get exports(){return gn},set exports(g){gn=g}},en=$,An=ti,Cn=UC;qt.f;var In=Ri,on=Pi,nn="Array Iterator",rn=Cn.set,sn=Cn.getterFor(nn);In(Array,"Array",(function(g,t){rn(this,{type:nn,target:en(g),index:0,kind:t})}),(function(){var g=sn(this),t=g.target,e=g.kind,A=g.index++;return!t||A>=t.length?(g.target=void 0,on(void 0,!0)):on("keys"==e?A:"values"==e?t[A]:[A,t[A]],!1)}),"values"),An.Arguments=An.Array;var an=ko,dn={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0},hn=i,ln=lC,cn=pe,un=ti,pn=ht("toStringTag");for(var fn in dn){var vn=hn[fn],yn=vn&&vn.prototype;yn&&ln(yn)!==pn&&cn(yn,pn,fn),un[fn]=un.Array}var mn=an;!function(g){g.exports=mn}(tn),function(g){g.exports=gn}($o);var bn=e(qo),wn={},xn={get exports(){return wn},set exports(g){wn=g}},kn={},En=$e,On=gA.concat("length","prototype");kn.f=Object.getOwnPropertyNames||function(g){return En(g,On)};var Tn={},Dn=Ze,Nn=Le,Rn=vo,Pn=Array,Mn=Math.max,Bn=function(g,t,e){for(var A=Nn(g),C=Dn(t,A),I=Dn(void 0===e?A:e,A),i=Pn(Mn(I-C,0)),o=0;C<I;C++,o++)Rn(i,o,g[C]);return i.length=o,i},zn=b,Sn=$,Zn=kn.f,Fn=Bn,Gn="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];Tn.f=function(g){return Gn&&"Window"==zn(g)?function(g){try{return Zn(g)}catch(g){return Fn(Gn)}}(g):Zn(Sn(g))};var jn=qt,Ln=function(g,t,e){return jn.f(g,t,e)},Vn={},Yn=ht;Vn.f=Yn;var Wn=Ag,Qn=$g,Un=Vn,_n=qt.f,Hn=function(g){var t=Wn.Symbol||(Wn.Symbol={});Qn(t,g)||_n(t,g,{value:Un.f(g)})},Kn=B,Xn=ng,Jn=ht,qn=zI,$n=function(){var g=Xn("Symbol"),t=g&&g.prototype,e=t&&t.valueOf,A=Jn("toPrimitive");t&&!t[A]&&qn(t,A,(function(g){return Kn(e,this)}),{arity:1})},gr=b,tr=Array.isArray||function(g){return"Array"==gr(g)},er=tr,Ar=co,Cr=eg,Ir=ht("species"),ir=Array,or=function(g){var t;return er(g)&&(t=g.constructor,(Ar(t)&&(t===ir||er(t.prototype))||Cr(t)&&null===(t=t[Ir]))&&(t=void 0)),void 0===t?ir:t},nr=function(g,t){return new(or(g))(0===t?0:t)},rr=Jt,sr=U,ar=Xg,dr=Le,hr=nr,lr=f([].push),cr=function(g){var t=1==g,e=2==g,A=3==g,C=4==g,I=6==g,i=7==g,o=5==g||I;return function(n,r,s,a){for(var d,h,l=ar(n),c=sr(l),u=rr(r,s),p=dr(c),f=0,v=a||hr,y=t?v(n,p):e||i?v(n,0):void 0;p>f;f++)if((o||f in c)&&(h=u(d=c[f],f,l),g))if(t)y[f]=h;else if(h)switch(g){case 3:return!0;case 5:return d;case 6:return f;case 2:lr(y,d)}else switch(g){case 4:return!1;case 7:lr(y,d)}return I?-1:A||C?C:y}},ur={forEach:cr(0),map:cr(1),filter:cr(2),some:cr(3),every:cr(4),find:cr(5),findIndex:cr(6),filterReject:cr(7)},pr=De,fr=i,vr=B,yr=f,mr=R,br=yg,wr=o,xr=$g,kr=rg,Er=Ae,Or=$,Tr=wt,Dr=pC,Nr=L,Rr=xI,Pr=AA,Mr=kn,Br=Tn,zr=CA,Sr=N,Zr=qt,Fr=$C,Gr=z,jr=zI,Lr=Ln,Vr=jg,Yr=_e,Wr=Ct,Qr=ht,Ur=Vn,_r=Hn,Hr=$n,Kr=gi,Xr=UC,Jr=ur.forEach,qr=PC("hidden"),$r="Symbol",gs="prototype",ts=Xr.set,es=Xr.getterFor($r),As=Object[gs],Cs=fr.Symbol,Is=Cs&&Cs[gs],is=fr.TypeError,os=fr.QObject,ns=Sr.f,rs=Zr.f,ss=Br.f,as=Gr.f,ds=yr([].push),hs=Vr("symbols"),ls=Vr("op-symbols"),cs=Vr("wks"),us=!os||!os[gs]||!os[gs].findChild,ps=mr&&wr((function(){return 7!=Rr(rs({},"a",{get:function(){return rs(this,"a",{value:7}).a}})).a}))?function(g,t,e){var A=ns(As,t);A&&delete As[t],rs(g,t,e),A&&g!==As&&rs(As,t,A)}:rs,fs=function(g,t){var e=hs[g]=Rr(Is);return ts(e,{type:$r,tag:g,description:t}),mr||(e.description=t),e},vs=function(g,t,e){g===As&&vs(ls,t,e),Er(g);var A=Tr(t);return Er(e),xr(hs,A)?(e.enumerable?(xr(g,qr)&&g[qr][A]&&(g[qr][A]=!1),e=Rr(e,{enumerable:Nr(0,!1)})):(xr(g,qr)||rs(g,qr,Nr(1,{})),g[qr][A]=!0),ps(g,A,e)):rs(g,A,e)},ys=function(g,t){Er(g);var e=Or(t),A=Pr(e).concat(xs(e));return Jr(A,(function(t){mr&&!vr(ms,e,t)||vs(g,t,e[t])})),g},ms=function(g){var t=Tr(g),e=vr(as,this,t);return!(this===As&&xr(hs,t)&&!xr(ls,t))&&(!(e||!xr(this,t)||!xr(hs,t)||xr(this,qr)&&this[qr][t])||e)},bs=function(g,t){var e=Or(g),A=Tr(t);if(e!==As||!xr(hs,A)||xr(ls,A)){var C=ns(e,A);return!C||!xr(hs,A)||xr(e,qr)&&e[qr][A]||(C.enumerable=!0),C}},ws=function(g){var t=ss(Or(g)),e=[];return Jr(t,(function(g){xr(hs,g)||xr(Yr,g)||ds(e,g)})),e},xs=function(g){var t=g===As,e=ss(t?ls:Or(g)),A=[];return Jr(e,(function(g){!xr(hs,g)||t&&!xr(As,g)||ds(A,hs[g])})),A};br||(Cs=function(){if(kr(Is,this))throw is("Symbol is not a constructor");var g=arguments.length&&void 0!==arguments[0]?Dr(arguments[0]):void 0,t=Wr(g),e=function(g){this===As&&vr(e,ls,g),xr(this,qr)&&xr(this[qr],t)&&(this[qr][t]=!1),ps(this,t,Nr(1,g))};return mr&&us&&ps(As,t,{configurable:!0,set:e}),fs(t,g)},jr(Is=Cs[gs],"toString",(function(){return es(this).tag})),jr(Cs,"withoutSetter",(function(g){return fs(Wr(g),g)})),Gr.f=ms,Zr.f=vs,Fr.f=ys,Sr.f=bs,Mr.f=Br.f=ws,zr.f=xs,Ur.f=function(g){return fs(Qr(g),g)},mr&&Lr(Is,"description",{configurable:!0,get:function(){return es(this).description}})),pr({global:!0,constructor:!0,wrap:!0,forced:!br,sham:!br},{Symbol:Cs}),Jr(Pr(cs),(function(g){_r(g)})),pr({target:$r,stat:!0,forced:!br},{useSetter:function(){us=!0},useSimple:function(){us=!1}}),pr({target:"Object",stat:!0,forced:!br,sham:!mr},{create:function(g,t){return void 0===t?Rr(g):ys(Rr(g),t)},defineProperty:vs,defineProperties:ys,getOwnPropertyDescriptor:bs}),pr({target:"Object",stat:!0,forced:!br},{getOwnPropertyNames:ws}),Hr(),Kr(Cs,$r),Yr[qr]=!0;var ks=yg&&!!Symbol.for&&!!Symbol.keyFor,Es=De,Os=ng,Ts=$g,Ds=pC,Ns=jg,Rs=ks,Ps=Ns("string-to-symbol-registry"),Ms=Ns("symbol-to-string-registry");Es({target:"Symbol",stat:!0,forced:!Rs},{for:function(g){var t=Ds(g);if(Ts(Ps,t))return Ps[t];var e=Os("Symbol")(t);return Ps[t]=e,Ms[e]=t,e}});var Bs=De,zs=$g,Ss=Eg,Zs=Tg,Fs=ks,Gs=jg("symbol-to-string-registry");Bs({target:"Symbol",stat:!0,forced:!Fs},{keyFor:function(g){if(!Ss(g))throw TypeError(Zs(g)+" is not a symbol");if(zs(Gs,g))return Gs[g]}});var js=tr,Ls=D,Vs=b,Ys=pC,Ws=f([].push),Qs=De,Us=ng,_s=h,Hs=B,Ks=f,Xs=o,Js=D,qs=Eg,$s=wA,ga=function(g){if(Ls(g))return g;if(js(g)){for(var t=g.length,e=[],A=0;A<t;A++){var C=g[A];"string"==typeof C?Ws(e,C):"number"!=typeof C&&"Number"!=Vs(C)&&"String"!=Vs(C)||Ws(e,Ys(C))}var I=e.length,i=!0;return function(g,t){if(i)return i=!1,t;if(js(this))return t;for(var A=0;A<I;A++)if(e[A]===g)return t}}},ta=yg,ea=String,Aa=Us("JSON","stringify"),Ca=Ks(/./.exec),Ia=Ks("".charAt),ia=Ks("".charCodeAt),oa=Ks("".replace),na=Ks(1..toString),ra=/[\uD800-\uDFFF]/g,sa=/^[\uD800-\uDBFF]$/,aa=/^[\uDC00-\uDFFF]$/,da=!ta||Xs((function(){var g=Us("Symbol")();return"[null]"!=Aa([g])||"{}"!=Aa({a:g})||"{}"!=Aa(Object(g))})),ha=Xs((function(){return'"\\udf06\\ud834"'!==Aa("\udf06\ud834")||'"\\udead"'!==Aa("\udead")})),la=function(g,t){var e=$s(arguments),A=ga(t);if(Js(A)||void 0!==g&&!qs(g))return e[1]=function(g,t){if(Js(A)&&(t=Hs(A,this,ea(g),t)),!qs(t))return t},_s(Aa,null,e)},ca=function(g,t,e){var A=Ia(e,t-1),C=Ia(e,t+1);return Ca(sa,g)&&!Ca(aa,C)||Ca(aa,g)&&!Ca(sa,A)?"\\u"+na(ia(g,0),16):g};Aa&&Qs({target:"JSON",stat:!0,arity:3,forced:da||ha},{stringify:function(g,t,e){var A=$s(arguments),C=_s(da?la:Aa,null,A);return ha&&"string"==typeof C?oa(C,ra,ca):C}});var ua=CA,pa=Xg;De({target:"Object",stat:!0,forced:!yg||o((function(){ua.f(1)}))},{getOwnPropertySymbols:function(g){var t=ua.f;return t?t(pa(g)):[]}});var fa=Ag.Object.getOwnPropertySymbols;!function(g){g.exports=fa}(xn);var va=e(wn),ya={},ma={get exports(){return ya},set exports(g){ya=g}},ba={},wa={get exports(){return ba},set exports(g){ba=g}},xa=De,ka=o,Ea=$,Oa=N.f,Ta=R;xa({target:"Object",stat:!0,forced:!Ta||ka((function(){Oa(1)})),sham:!Ta},{getOwnPropertyDescriptor:function(g,t){return Oa(Ea(g),t)}});var Da=Ag.Object,Na=wa.exports=function(g,t){return Da.getOwnPropertyDescriptor(g,t)};Da.getOwnPropertyDescriptor.sham&&(Na.sham=!0);var Ra=ba;!function(g){g.exports=Ra}(ma);var Pa=e(ya),Ma={},Ba={get exports(){return Ma},set exports(g){Ma=g}},za=ng,Sa=kn,Za=CA,Fa=Ae,Ga=f([].concat),ja=za("Reflect","ownKeys")||function(g){var t=Sa.f(Fa(g)),e=Za.f;return e?Ga(t,e(g)):t},La=ja,Va=$,Ya=N,Wa=vo;De({target:"Object",stat:!0,sham:!R},{getOwnPropertyDescriptors:function(g){for(var t,e,A=Va(g),C=Ya.f,I=La(A),i={},o=0;I.length>o;)void 0!==(e=C(A,t=I[o++]))&&Wa(i,t,e);return i}});var Qa=Ag.Object.getOwnPropertyDescriptors;!function(g){g.exports=Qa}(Ba);var Ua=e(Ma),_a={},Ha={get exports(){return _a},set exports(g){_a=g}},Ka={},Xa={get exports(){return Ka},set exports(g){Ka=g}},Ja=De,qa=R,$a=$C.f;Ja({target:"Object",stat:!0,forced:Object.defineProperties!==$a,sham:!qa},{defineProperties:$a});var gd=Ag.Object,td=Xa.exports=function(g,t){return gd.defineProperties(g,t)};gd.defineProperties.sham&&(td.sham=!0);var ed=Ka;!function(g){g.exports=ed}(Ha);var Ad=e(_a),Cd={},Id={get exports(){return Cd},set exports(g){Cd=g}},id={},od={get exports(){return id},set exports(g){id=g}},nd=De,rd=R,sd=qt.f;nd({target:"Object",stat:!0,forced:Object.defineProperty!==sd,sham:!rd},{defineProperty:sd});var ad=Ag.Object,dd=od.exports=function(g,t,e){return ad.defineProperty(g,t,e)};ad.defineProperty.sham&&(dd.sham=!0);var hd=id;!function(g){g.exports=hd}(Id);var ld=e(Cd);function cd(g,t){if(!(g instanceof t))throw new TypeError("Cannot call a class as a function")}var ud={},pd={get exports(){return ud},set exports(g){ud=g}},fd={},vd=hd;!function(g){g.exports=vd}({get exports(){return fd},set exports(g){fd=g}}),function(g){g.exports=fd}(pd);var yd=e(ud),md={},bd={get exports(){return md},set exports(g){md=g}},wd={},xd={get exports(){return wd},set exports(g){wd=g}},kd=TypeError,Ed=function(g){if(g>9007199254740991)throw kd("Maximum allowed index exceeded");return g},Od=o,Td=pg,Dd=ht("species"),Nd=function(g){return Td>=51||!Od((function(){var t=[];return(t.constructor={})[Dd]=function(){return{foo:1}},1!==t[g](Boolean).foo}))},Rd=De,Pd=o,Md=tr,Bd=eg,zd=Xg,Sd=Le,Zd=Ed,Fd=vo,Gd=nr,jd=Nd,Ld=pg,Vd=ht("isConcatSpreadable"),Yd=Ld>=51||!Pd((function(){var g=[];return g[Vd]=!1,g.concat()[0]!==g})),Wd=function(g){if(!Bd(g))return!1;var t=g[Vd];return void 0!==t?!!t:Md(g)};Rd({target:"Array",proto:!0,arity:1,forced:!Yd||!jd("concat")},{concat:function(g){var t,e,A,C,I,i=zd(this),o=Gd(i,0),n=0;for(t=-1,A=arguments.length;t<A;t++)if(Wd(I=-1===t?i:arguments[t]))for(C=Sd(I),Zd(n+C),e=0;e<C;e++,n++)e in I&&Fd(o,n,I[e]);else Zd(n+1),Fd(o,n++,I);return o.length=n,o}}),Hn("asyncIterator"),Hn("hasInstance"),Hn("isConcatSpreadable"),Hn("iterator"),Hn("match"),Hn("matchAll"),Hn("replace"),Hn("search"),Hn("species"),Hn("split");var Qd=$n;Hn("toPrimitive"),Qd();var Ud=ng,_d=gi;Hn("toStringTag"),_d(Ud("Symbol"),"Symbol"),Hn("unscopables"),gi(i.JSON,"JSON",!0);var Hd=Ag.Symbol;Hn("dispose");var Kd=Hd;Hn("asyncDispose");var Xd=De,Jd=f,qd=ng("Symbol"),$d=qd.keyFor,gh=Jd(qd.prototype.valueOf);Xd({target:"Symbol",stat:!0},{isRegistered:function(g){try{return void 0!==$d(gh(g))}catch(g){return!1}}});for(var th=De,eh=jg,Ah=ng,Ch=f,Ih=Eg,ih=ht,oh=Ah("Symbol"),nh=oh.isWellKnown,rh=Ah("Object","getOwnPropertyNames"),sh=Ch(oh.prototype.valueOf),ah=eh("wks"),dh=0,hh=rh(oh),lh=hh.length;dh<lh;dh++)try{var ch=hh[dh];Ih(oh[ch])&&ih(ch)}catch(g){}th({target:"Symbol",stat:!0,forced:!0},{isWellKnown:function(g){if(nh&&nh(g))return!0;try{for(var t=sh(g),e=0,A=rh(ah),C=A.length;e<C;e++)if(ah[A[e]]==t)return!0}catch(g){}return!1}}),Hn("matcher"),Hn("metadataKey"),Hn("observable"),Hn("metadata"),Hn("patternMatch"),Hn("replaceAll");var uh=Kd;!function(g){g.exports=uh}(xd),function(g){g.exports=wd}(bd);var ph=e(md),fh={},vh={get exports(){return fh},set exports(g){fh=g}},yh={},mh={get exports(){return yh},set exports(g){yh=g}},bh=Vn.f("iterator"),wh=bh;!function(g){g.exports=wh}(mh),function(g){g.exports=yh}(vh);var xh=e(fh);function kh(g){return kh="function"==typeof ph&&"symbol"==typeof xh?function(g){return typeof g}:function(g){return g&&"function"==typeof ph&&g.constructor===ph&&g!==ph.prototype?"symbol":typeof g},kh(g)}var Eh={},Oh={get exports(){return Eh},set exports(g){Eh=g}},Th={},Dh={get exports(){return Th},set exports(g){Th=g}},Nh=Vn.f("toPrimitive");!function(g){g.exports=Nh}(Dh),function(g){g.exports=Th}(Oh);var Rh=e(Eh);function Ph(g){var t=function(g,t){if("object"!==kh(g)||null===g)return g;var e=g[Rh];if(void 0!==e){var A=e.call(g,t||"default");if("object"!==kh(A))return A;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(g)}(g,"string");return"symbol"===kh(t)?t:String(t)}function Mh(g,t){for(var e=0;e<t.length;e++){var A=t[e];A.enumerable=A.enumerable||!1,A.configurable=!0,"value"in A&&(A.writable=!0),yd(g,Ph(A.key),A)}}function Bh(g,t,e){return t&&Mh(g.prototype,t),e&&Mh(g,e),yd(g,"prototype",{writable:!1}),g}function zh(g,t,e){return(t=Ph(t))in g?yd(g,t,{value:e,enumerable:!0,configurable:!0,writable:!0}):g[t]=e,g}var Sh={},Zh={get exports(){return Sh},set exports(g){Sh=g}},Fh={},Gh={get exports(){return Fh},set exports(g){Fh=g}};De({target:"Array",stat:!0},{isArray:tr});var jh=Ag.Array.isArray,Lh=jh;!function(g){g.exports=Lh}(Gh),function(g){g.exports=Fh}(Zh);var Vh=e(Sh);var Yh={},Wh={get exports(){return Yh},set exports(g){Yh=g}},Qh={},Uh={get exports(){return Qh},set exports(g){Qh=g}},_h=De,Hh=tr,Kh=co,Xh=eg,Jh=Ze,qh=Le,$h=$,gl=vo,tl=ht,el=wA,Al=Nd("slice"),Cl=tl("species"),Il=Array,il=Math.max;_h({target:"Array",proto:!0,forced:!Al},{slice:function(g,t){var e,A,C,I=$h(this),i=qh(I),o=Jh(g,i),n=Jh(void 0===t?i:t,i);if(Hh(I)&&(e=I.constructor,(Kh(e)&&(e===Il||Hh(e.prototype))||Xh(e)&&null===(e=e[Cl]))&&(e=void 0),e===Il||void 0===e))return el(I,o,n);for(A=new(void 0===e?Il:e)(il(n-o,0)),C=0;o<n;o++,C++)o in I&&gl(A,C,I[o]);return A.length=C,A}});var ol=FA("Array").slice,nl=rg,rl=ol,sl=Array.prototype,al=function(g){var t=g.slice;return g===sl||nl(sl,g)&&t===sl.slice?rl:t},dl=al,hl=dl;!function(g){g.exports=hl}(Uh),function(g){g.exports=Qh}(Wh);var ll=e(Yh),cl={},ul={get exports(){return cl},set exports(g){cl=g}},pl={},fl=Xo;!function(g){g.exports=fl}({get exports(){return pl},set exports(g){pl=g}}),function(g){g.exports=pl}(ul);var vl=e(cl);function yl(g,t){(null==t||t>g.length)&&(t=g.length);for(var e=0,A=new Array(t);e<t;e++)A[e]=g[e];return A}function ml(g,t){var e;if(g){if("string"==typeof g)return yl(g,t);var A=ll(e=Object.prototype.toString.call(g)).call(e,8,-1);return"Object"===A&&g.constructor&&(A=g.constructor.name),"Map"===A||"Set"===A?vl(g):"Arguments"===A||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(A)?yl(g,t):void 0}}function bl(g,t){return function(g){if(Vh(g))return g}(g)||function(g,t){var e=null==g?null:void 0!==ph&&bn(g)||g["@@iterator"];if(null!=e){var A,C,I,i,o=[],n=!0,r=!1;try{if(I=(e=e.call(g)).next,0===t){if(Object(e)!==e)return;n=!1}else for(;!(n=(A=I.call(e)).done)&&(o.push(A.value),o.length!==t);n=!0);}catch(g){r=!0,C=g}finally{try{if(!n&&null!=e.return&&(i=e.return(),Object(i)!==i))return}finally{if(r)throw C}}return o}}(g,t)||ml(g,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function wl(g){return function(g){if(Vh(g))return yl(g)}(g)||function(g){if(void 0!==ph&&null!=bn(g)||null!=g["@@iterator"])return vl(g)}(g)||ml(g)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}var xl={};!function(g){g.exports=Hd}({get exports(){return xl},set exports(g){xl=g}});var kl=e(xl),El={},Ol={get exports(){return El},set exports(g){El=g}},Tl=FA("Array").concat,Dl=rg,Nl=Tl,Rl=Array.prototype,Pl=function(g){var t=g.concat;return g===Rl||Dl(Rl,g)&&t===Rl.concat?Nl:t},Ml=Pl;!function(g){g.exports=Ml}(Ol);var Bl=e(El),zl={};!function(g){g.exports=dl}({get exports(){return zl},set exports(g){zl=g}});var Sl=e(zl),Zl={},Fl={get exports(){return Zl},set exports(g){Zl=g}};De({target:"Reflect",stat:!0},{ownKeys:ja});var Gl=Ag.Reflect.ownKeys;!function(g){g.exports=Gl}(Fl);var jl=e(Zl),Ll={};!function(g){g.exports=jh}({get exports(){return Ll},set exports(g){Ll=g}});var Vl=e(Ll),Yl={},Wl={get exports(){return Yl},set exports(g){Yl=g}},Ql=ur.map;De({target:"Array",proto:!0,forced:!Nd("map")},{map:function(g){return Ql(this,g,arguments.length>1?arguments[1]:void 0)}});var Ul=FA("Array").map,_l=rg,Hl=Ul,Kl=Array.prototype,Xl=function(g){var t=g.map;return g===Kl||_l(Kl,g)&&t===Kl.map?Hl:t},Jl=Xl;!function(g){g.exports=Jl}(Wl);var ql=e(Yl),$l={},gc={get exports(){return $l},set exports(g){$l=g}},tc=Xg,ec=AA;De({target:"Object",stat:!0,forced:o((function(){ec(1)}))},{keys:function(g){return ec(tc(g))}});var Ac=Ag.Object.keys;!function(g){g.exports=Ac}(gc);var Cc=e($l),Ic={},ic={get exports(){return Ic},set exports(g){Ic=g}},oc=De,nc=Date,rc=f(nc.prototype.getTime);oc({target:"Date",stat:!0},{now:function(){return rc(new nc)}});var sc=Ag.Date.now;!function(g){g.exports=sc}(ic);var ac=e(Ic),dc={},hc={get exports(){return dc},set exports(g){dc=g}},lc=o,cc=function(g,t){var e=[][g];return!!e&&lc((function(){e.call(null,t||function(){return 1},1)}))},uc=ur.forEach,pc=cc("forEach")?[].forEach:function(g){return uc(this,g,arguments.length>1?arguments[1]:void 0)};De({target:"Array",proto:!0,forced:[].forEach!=pc},{forEach:pc});var fc=FA("Array").forEach,vc=lC,yc=$g,mc=rg,bc=fc,wc=Array.prototype,xc={DOMTokenList:!0,NodeList:!0},kc=function(g){var t=g.forEach;return g===wc||mc(wc,g)&&t===wc.forEach||yc(xc,vc(g))?bc:t};!function(g){g.exports=kc}(hc);var Ec=e(dc),Oc={},Tc={get exports(){return Oc},set exports(g){Oc=g}},Dc=De,Nc=tr,Rc=f([].reverse),Pc=[1,2];Dc({target:"Array",proto:!0,forced:String(Pc)===String(Pc.reverse())},{reverse:function(){return Nc(this)&&(this.length=this.length),Rc(this)}});var Mc=FA("Array").reverse,Bc=rg,zc=Mc,Sc=Array.prototype,Zc=function(g){var t=g.reverse;return g===Sc||Bc(Sc,g)&&t===Sc.reverse?zc:t},Fc=Zc;!function(g){g.exports=Fc}(Tc);var Gc=e(Oc),jc={},Lc={get exports(){return jc},set exports(g){jc=g}},Vc=R,Yc=tr,Wc=TypeError,Qc=Object.getOwnPropertyDescriptor,Uc=Vc&&!function(){if(void 0!==this)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(g){return g instanceof TypeError}}(),_c=Tg,Hc=TypeError,Kc=function(g,t){if(!delete g[t])throw Hc("Cannot delete property "+_c(t)+" of "+_c(g))},Xc=De,Jc=Xg,qc=Ze,$c=Me,gu=Le,tu=Uc?function(g,t){if(Yc(g)&&!Qc(g,"length").writable)throw Wc("Cannot set read only .length");return g.length=t}:function(g,t){return g.length=t},eu=Ed,Au=nr,Cu=vo,Iu=Kc,iu=Nd("splice"),ou=Math.max,nu=Math.min;Xc({target:"Array",proto:!0,forced:!iu},{splice:function(g,t){var e,A,C,I,i,o,n=Jc(this),r=gu(n),s=qc(g,r),a=arguments.length;for(0===a?e=A=0:1===a?(e=0,A=r-s):(e=a-2,A=nu(ou($c(t),0),r-s)),eu(r+e-A),C=Au(n,A),I=0;I<A;I++)(i=s+I)in n&&Cu(C,I,n[i]);if(C.length=A,e<A){for(I=s;I<r-A;I++)o=I+e,(i=I+A)in n?n[o]=n[i]:Iu(n,o);for(I=r;I>r-A+e;I--)Iu(n,I-1)}else if(e>A)for(I=r-A;I>s;I--)o=I+e-1,(i=I+A-1)in n?n[o]=n[i]:Iu(n,o);for(I=0;I<e;I++)n[I+s]=arguments[I+2];return tu(n,r-A+e),C}});var ru=FA("Array").splice,su=rg,au=ru,du=Array.prototype,hu=function(g){var t=g.splice;return g===du||su(du,g)&&t===du.splice?au:t},lu=hu;!function(g){g.exports=lu}(Lc);var cu=e(jc),uu={},pu={get exports(){return uu},set exports(g){uu=g}},fu=Ue.includes;De({target:"Array",proto:!0,forced:o((function(){return!Array(1).includes()}))},{includes:function(g){return fu(this,g,arguments.length>1?arguments[1]:void 0)}});var vu=FA("Array").includes,yu=eg,mu=b,bu=ht("match"),wu=function(g){var t;return yu(g)&&(void 0!==(t=g[bu])?!!t:"RegExp"==mu(g))},xu=TypeError,ku=ht("match"),Eu=De,Ou=function(g){if(wu(g))throw xu("The method doesn't accept regular expressions");return g},Tu=X,Du=pC,Nu=function(g){var t=/./;try{"/./"[g](t)}catch(e){try{return t[ku]=!1,"/./"[g](t)}catch(g){}}return!1},Ru=f("".indexOf);Eu({target:"String",proto:!0,forced:!Nu("includes")},{includes:function(g){return!!~Ru(Du(Tu(this)),Du(Ou(g)),arguments.length>1?arguments[1]:void 0)}});var Pu=FA("String").includes,Mu=rg,Bu=vu,zu=Pu,Su=Array.prototype,Zu=String.prototype,Fu=function(g){var t=g.includes;return g===Su||Mu(Su,g)&&t===Su.includes?Bu:"string"==typeof g||g===Zu||Mu(Zu,g)&&t===Zu.includes?zu:t},Gu=Fu;!function(g){g.exports=Gu}(pu);var ju=e(uu),Lu={},Vu={get exports(){return Lu},set exports(g){Lu=g}},Yu=Xg,Wu=MI,Qu=kI;De({target:"Object",stat:!0,forced:o((function(){Wu(1)})),sham:!Qu},{getPrototypeOf:function(g){return Wu(Yu(g))}});var Uu=Ag.Object.getPrototypeOf;!function(g){g.exports=Uu}(Vu);var _u=e(Lu),Hu={},Ku={get exports(){return Hu},set exports(g){Hu=g}},Xu=ur.filter;De({target:"Array",proto:!0,forced:!Nd("filter")},{filter:function(g){return Xu(this,g,arguments.length>1?arguments[1]:void 0)}});var Ju=FA("Array").filter,qu=rg,$u=Ju,gp=Array.prototype,tp=function(g){var t=g.filter;return g===gp||qu(gp,g)&&t===gp.filter?$u:t},ep=tp;!function(g){g.exports=ep}(Ku);var Ap=e(Hu),Cp={},Ip={get exports(){return Cp},set exports(g){Cp=g}},ip=R,op=f,np=AA,rp=$,sp=op(z.f),ap=op([].push),dp=function(g){return function(t){for(var e,A=rp(t),C=np(A),I=C.length,i=0,o=[];I>i;)e=C[i++],ip&&!sp(A,e)||ap(o,g?[e,A[e]]:A[e]);return o}},hp={entries:dp(!0),values:dp(!1)}.values;De({target:"Object",stat:!0},{values:function(g){return hp(g)}});var lp=Ag.Object.values;!function(g){g.exports=lp}(Ip);var cp={},up={get exports(){return cp},set exports(g){cp=g}},pp="\t\n\v\f\r    \u2028\u2029\ufeff",fp=X,vp=pC,yp=pp,mp=f("".replace),bp=RegExp("^["+yp+"]+"),wp=RegExp("(^|[^"+yp+"])["+yp+"]+$"),xp=function(g){return function(t){var e=vp(fp(t));return 1&g&&(e=mp(e,bp,"")),2&g&&(e=mp(e,wp,"$1")),e}},kp={start:xp(1),end:xp(2),trim:xp(3)},Ep=i,Op=o,Tp=f,Dp=pC,Np=kp.trim,Rp=pp,Pp=Ep.parseInt,Mp=Ep.Symbol,Bp=Mp&&Mp.iterator,zp=/^[+-]?0x/i,Sp=Tp(zp.exec),Zp=8!==Pp(Rp+"08")||22!==Pp(Rp+"0x16")||Bp&&!Op((function(){Pp(Object(Bp))}))?function(g,t){var e=Np(Dp(g));return Pp(e,t>>>0||(Sp(zp,e)?16:10))}:Pp;De({global:!0,forced:parseInt!=Zp},{parseInt:Zp});var Fp=Ag.parseInt;!function(g){g.exports=Fp}(up);var Gp=e(cp),jp={},Lp={get exports(){return jp},set exports(g){jp=g}},Vp=De,Yp=Ue.indexOf,Wp=cc,Qp=k([].indexOf),Up=!!Qp&&1/Qp([1],1,-0)<0;Vp({target:"Array",proto:!0,forced:Up||!Wp("indexOf")},{indexOf:function(g){var t=arguments.length>1?arguments[1]:void 0;return Up?Qp(this,g,t)||0:Yp(this,g,t)}});var _p=FA("Array").indexOf,Hp=rg,Kp=_p,Xp=Array.prototype,Jp=function(g){var t=g.indexOf;return g===Xp||Hp(Xp,g)&&t===Xp.indexOf?Kp:t},qp=Jp;!function(g){g.exports=qp}(Lp);var $p=e(jp),gf={},tf={get exports(){return gf},set exports(g){gf=g}},ef=qC.PROPER,Af=o,Cf=pp,If=kp.trim;De({target:"String",proto:!0,forced:function(g){return Af((function(){return!!Cf[g]()||"…"!=="…"[g]()||ef&&Cf[g].name!==g}))}("trim")},{trim:function(){return If(this)}});var of=FA("String").trim,nf=rg,rf=of,sf=String.prototype,af=function(g){var t=g.trim;return"string"==typeof g||g===sf||nf(sf,g)&&t===sf.trim?rf:t},df=af;!function(g){g.exports=df}(tf);var hf={},lf={get exports(){return hf},set exports(g){hf=g}};De({target:"Object",stat:!0,sham:!R},{create:xI});var cf=Ag.Object,uf=function(g,t){return cf.create(g,t)};!function(g){g.exports=uf}(lf);var pf=e(hf),ff={},vf={get exports(){return ff},set exports(g){ff=g}},yf=Ag,mf=h;yf.JSON||(yf.JSON={stringify:JSON.stringify});var bf=function(g,t,e){return mf(yf.JSON.stringify,null,arguments)},wf=bf;!function(g){g.exports=wf}(vf);var xf=e(ff),kf={},Ef={get exports(){return kf},set exports(g){kf=g}},Of="function"==typeof Bun&&Bun&&"string"==typeof Bun.version,Tf=TypeError,Df=function(g,t){if(g<t)throw Tf("Not enough arguments");return g},Nf=i,Rf=h,Pf=D,Mf=Of,Bf=sg,zf=wA,Sf=Df,Zf=Nf.Function,Ff=/MSIE .\./.test(Bf)||Mf&&function(){var g=Nf.Bun.version.split(".");return g.length<3||0==g[0]&&(g[1]<3||3==g[1]&&0==g[2])}(),Gf=function(g,t){var e=t?2:1;return Ff?function(A,C){var I=Sf(arguments.length,1)>e,i=Pf(A)?A:Zf(A),o=I?zf(arguments,e):[],n=I?function(){Rf(i,this,o)}:i;return t?g(n,C):g(n)}:g},jf=De,Lf=i,Vf=Gf(Lf.setInterval,!0);jf({global:!0,bind:!0,forced:Lf.setInterval!==Vf},{setInterval:Vf});var Yf=De,Wf=i,Qf=Gf(Wf.setTimeout,!0);Yf({global:!0,bind:!0,forced:Wf.setTimeout!==Qf},{setTimeout:Qf});var Uf=Ag.setTimeout;!function(g){g.exports=Uf}(Ef);var _f=e(kf),Hf={},Kf={get exports(){return Hf},set exports(g){Hf=g}},Xf=Xg,Jf=Ze,qf=Le,$f=function(g){for(var t=Xf(this),e=qf(t),A=arguments.length,C=Jf(A>1?arguments[1]:void 0,e),I=A>2?arguments[2]:void 0,i=void 0===I?e:Jf(I,e);i>C;)t[C++]=g;return t};De({target:"Array",proto:!0},{fill:$f});var gv=FA("Array").fill,tv=rg,ev=gv,Av=Array.prototype,Cv=function(g){var t=g.fill;return g===Av||tv(Av,g)&&t===Av.fill?ev:t},Iv=Cv;!function(g){g.exports=Iv}(Kf);var iv,ov=e(Hf);
/*! Hammer.JS - v2.0.17-rc - 2019-12-16
* http://naver.github.io/egjs
*
* Forked By Naver egjs
* Copyright (c) hammerjs
* Licensed under the MIT license */function nv(){return nv=Object.assign||function(g){for(var t=1;t<arguments.length;t++){var e=arguments[t];for(var A in e)Object.prototype.hasOwnProperty.call(e,A)&&(g[A]=e[A])}return g},nv.apply(this,arguments)}function rv(g,t){g.prototype=Object.create(t.prototype),g.prototype.constructor=g,g.__proto__=t}function sv(g){if(void 0===g)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return g}iv="function"!=typeof Object.assign?function(g){if(null==g)throw new TypeError("Cannot convert undefined or null to object");for(var t=Object(g),e=1;e<arguments.length;e++){var A=arguments[e];if(null!=A)for(var C in A)A.hasOwnProperty(C)&&(t[C]=A[C])}return t}:Object.assign;var av,dv=iv,hv=["","webkit","Moz","MS","ms","o"],lv="undefined"==typeof document?{style:{}}:document.createElement("div"),cv="function",uv=Math.round,pv=Math.abs,fv=Date.now;function vv(g,t){for(var e,A,C=t[0].toUpperCase()+t.slice(1),I=0;I<hv.length;){if((A=(e=hv[I])?e+C:t)in g)return A;I++}}av="undefined"==typeof window?{}:window;var yv=vv(lv.style,"touchAction"),mv=void 0!==yv;var bv="compute",wv="auto",xv="manipulation",kv="none",Ev="pan-x",Ov="pan-y",Tv=function(){if(!mv)return!1;var g={},t=av.CSS&&av.CSS.supports;return["auto","manipulation","pan-y","pan-x","pan-x pan-y","none"].forEach((function(e){return g[e]=!t||av.CSS.supports("touch-action",e)})),g}(),Dv="ontouchstart"in av,Nv=void 0!==vv(av,"PointerEvent"),Rv=Dv&&/mobile|tablet|ip(ad|hone|od)|android/i.test(navigator.userAgent),Pv="touch",Mv="mouse",Bv=25,zv=1,Sv=2,Zv=4,Fv=8,Gv=1,jv=2,Lv=4,Vv=8,Yv=16,Wv=jv|Lv,Qv=Vv|Yv,Uv=Wv|Qv,_v=["x","y"],Hv=["clientX","clientY"];function Kv(g,t,e){var A;if(g)if(g.forEach)g.forEach(t,e);else if(void 0!==g.length)for(A=0;A<g.length;)t.call(e,g[A],A,g),A++;else for(A in g)g.hasOwnProperty(A)&&t.call(e,g[A],A,g)}function Xv(g,t){return typeof g===cv?g.apply(t&&t[0]||void 0,t):g}function Jv(g,t){return g.indexOf(t)>-1}var qv=function(){function g(g,t){this.manager=g,this.set(t)}var t=g.prototype;return t.set=function(g){g===bv&&(g=this.compute()),mv&&this.manager.element.style&&Tv[g]&&(this.manager.element.style[yv]=g),this.actions=g.toLowerCase().trim()},t.update=function(){this.set(this.manager.options.touchAction)},t.compute=function(){var g=[];return Kv(this.manager.recognizers,(function(t){Xv(t.options.enable,[t])&&(g=g.concat(t.getTouchAction()))})),function(g){if(Jv(g,kv))return kv;var t=Jv(g,Ev),e=Jv(g,Ov);return t&&e?kv:t||e?t?Ev:Ov:Jv(g,xv)?xv:wv}(g.join(" "))},t.preventDefaults=function(g){var t=g.srcEvent,e=g.offsetDirection;if(this.manager.session.prevented)t.preventDefault();else{var A=this.actions,C=Jv(A,kv)&&!Tv[kv],I=Jv(A,Ov)&&!Tv[Ov],i=Jv(A,Ev)&&!Tv[Ev];if(C){var o=1===g.pointers.length,n=g.distance<2,r=g.deltaTime<250;if(o&&n&&r)return}if(!i||!I)return C||I&&e&Wv||i&&e&Qv?this.preventSrc(t):void 0}},t.preventSrc=function(g){this.manager.session.prevented=!0,g.preventDefault()},g}();function $v(g,t){for(;g;){if(g===t)return!0;g=g.parentNode}return!1}function gy(g){var t=g.length;if(1===t)return{x:uv(g[0].clientX),y:uv(g[0].clientY)};for(var e=0,A=0,C=0;C<t;)e+=g[C].clientX,A+=g[C].clientY,C++;return{x:uv(e/t),y:uv(A/t)}}function ty(g){for(var t=[],e=0;e<g.pointers.length;)t[e]={clientX:uv(g.pointers[e].clientX),clientY:uv(g.pointers[e].clientY)},e++;return{timeStamp:fv(),pointers:t,center:gy(t),deltaX:g.deltaX,deltaY:g.deltaY}}function ey(g,t,e){e||(e=_v);var A=t[e[0]]-g[e[0]],C=t[e[1]]-g[e[1]];return Math.sqrt(A*A+C*C)}function Ay(g,t,e){e||(e=_v);var A=t[e[0]]-g[e[0]],C=t[e[1]]-g[e[1]];return 180*Math.atan2(C,A)/Math.PI}function Cy(g,t){return g===t?Gv:pv(g)>=pv(t)?g<0?jv:Lv:t<0?Vv:Yv}function Iy(g,t,e){return{x:t/g||0,y:e/g||0}}function iy(g,t){var e=g.session,A=t.pointers,C=A.length;e.firstInput||(e.firstInput=ty(t)),C>1&&!e.firstMultiple?e.firstMultiple=ty(t):1===C&&(e.firstMultiple=!1);var I=e.firstInput,i=e.firstMultiple,o=i?i.center:I.center,n=t.center=gy(A);t.timeStamp=fv(),t.deltaTime=t.timeStamp-I.timeStamp,t.angle=Ay(o,n),t.distance=ey(o,n),function(g,t){var e=t.center,A=g.offsetDelta||{},C=g.prevDelta||{},I=g.prevInput||{};t.eventType!==zv&&I.eventType!==Zv||(C=g.prevDelta={x:I.deltaX||0,y:I.deltaY||0},A=g.offsetDelta={x:e.x,y:e.y}),t.deltaX=C.x+(e.x-A.x),t.deltaY=C.y+(e.y-A.y)}(e,t),t.offsetDirection=Cy(t.deltaX,t.deltaY);var r,s,a=Iy(t.deltaTime,t.deltaX,t.deltaY);t.overallVelocityX=a.x,t.overallVelocityY=a.y,t.overallVelocity=pv(a.x)>pv(a.y)?a.x:a.y,t.scale=i?(r=i.pointers,ey((s=A)[0],s[1],Hv)/ey(r[0],r[1],Hv)):1,t.rotation=i?function(g,t){return Ay(t[1],t[0],Hv)+Ay(g[1],g[0],Hv)}(i.pointers,A):0,t.maxPointers=e.prevInput?t.pointers.length>e.prevInput.maxPointers?t.pointers.length:e.prevInput.maxPointers:t.pointers.length,function(g,t){var e,A,C,I,i=g.lastInterval||t,o=t.timeStamp-i.timeStamp;if(t.eventType!==Fv&&(o>Bv||void 0===i.velocity)){var n=t.deltaX-i.deltaX,r=t.deltaY-i.deltaY,s=Iy(o,n,r);A=s.x,C=s.y,e=pv(s.x)>pv(s.y)?s.x:s.y,I=Cy(n,r),g.lastInterval=t}else e=i.velocity,A=i.velocityX,C=i.velocityY,I=i.direction;t.velocity=e,t.velocityX=A,t.velocityY=C,t.direction=I}(e,t);var d,h=g.element,l=t.srcEvent;$v(d=l.composedPath?l.composedPath()[0]:l.path?l.path[0]:l.target,h)&&(h=d),t.target=h}function oy(g,t,e){var A=e.pointers.length,C=e.changedPointers.length,I=t&zv&&A-C==0,i=t&(Zv|Fv)&&A-C==0;e.isFirst=!!I,e.isFinal=!!i,I&&(g.session={}),e.eventType=t,iy(g,e),g.emit("hammer.input",e),g.recognize(e),g.session.prevInput=e}function ny(g){return g.trim().split(/\s+/g)}function ry(g,t,e){Kv(ny(t),(function(t){g.addEventListener(t,e,!1)}))}function sy(g,t,e){Kv(ny(t),(function(t){g.removeEventListener(t,e,!1)}))}function ay(g){var t=g.ownerDocument||g;return t.defaultView||t.parentWindow||window}var dy=function(){function g(g,t){var e=this;this.manager=g,this.callback=t,this.element=g.element,this.target=g.options.inputTarget,this.domHandler=function(t){Xv(g.options.enable,[g])&&e.handler(t)},this.init()}var t=g.prototype;return t.handler=function(){},t.init=function(){this.evEl&&ry(this.element,this.evEl,this.domHandler),this.evTarget&&ry(this.target,this.evTarget,this.domHandler),this.evWin&&ry(ay(this.element),this.evWin,this.domHandler)},t.destroy=function(){this.evEl&&sy(this.element,this.evEl,this.domHandler),this.evTarget&&sy(this.target,this.evTarget,this.domHandler),this.evWin&&sy(ay(this.element),this.evWin,this.domHandler)},g}();function hy(g,t,e){if(g.indexOf&&!e)return g.indexOf(t);for(var A=0;A<g.length;){if(e&&g[A][e]==t||!e&&g[A]===t)return A;A++}return-1}var ly={pointerdown:zv,pointermove:Sv,pointerup:Zv,pointercancel:Fv,pointerout:Fv},cy={2:Pv,3:"pen",4:Mv,5:"kinect"},uy="pointerdown",py="pointermove pointerup pointercancel";av.MSPointerEvent&&!av.PointerEvent&&(uy="MSPointerDown",py="MSPointerMove MSPointerUp MSPointerCancel");var fy=function(g){function t(){var e,A=t.prototype;return A.evEl=uy,A.evWin=py,(e=g.apply(this,arguments)||this).store=e.manager.session.pointerEvents=[],e}return rv(t,g),t.prototype.handler=function(g){var t=this.store,e=!1,A=g.type.toLowerCase().replace("ms",""),C=ly[A],I=cy[g.pointerType]||g.pointerType,i=I===Pv,o=hy(t,g.pointerId,"pointerId");C&zv&&(0===g.button||i)?o<0&&(t.push(g),o=t.length-1):C&(Zv|Fv)&&(e=!0),o<0||(t[o]=g,this.callback(this.manager,C,{pointers:t,changedPointers:[g],pointerType:I,srcEvent:g}),e&&t.splice(o,1))},t}(dy);function vy(g){return Array.prototype.slice.call(g,0)}function yy(g,t,e){for(var A=[],C=[],I=0;I<g.length;){var i=t?g[I][t]:g[I];hy(C,i)<0&&A.push(g[I]),C[I]=i,I++}return e&&(A=t?A.sort((function(g,e){return g[t]>e[t]})):A.sort()),A}var my={touchstart:zv,touchmove:Sv,touchend:Zv,touchcancel:Fv},by="touchstart touchmove touchend touchcancel",wy=function(g){function t(){var e;return t.prototype.evTarget=by,(e=g.apply(this,arguments)||this).targetIds={},e}return rv(t,g),t.prototype.handler=function(g){var t=my[g.type],e=xy.call(this,g,t);e&&this.callback(this.manager,t,{pointers:e[0],changedPointers:e[1],pointerType:Pv,srcEvent:g})},t}(dy);function xy(g,t){var e,A,C=vy(g.touches),I=this.targetIds;if(t&(zv|Sv)&&1===C.length)return I[C[0].identifier]=!0,[C,C];var i=vy(g.changedTouches),o=[],n=this.target;if(A=C.filter((function(g){return $v(g.target,n)})),t===zv)for(e=0;e<A.length;)I[A[e].identifier]=!0,e++;for(e=0;e<i.length;)I[i[e].identifier]&&o.push(i[e]),t&(Zv|Fv)&&delete I[i[e].identifier],e++;return o.length?[yy(A.concat(o),"identifier",!0),o]:void 0}var ky={mousedown:zv,mousemove:Sv,mouseup:Zv},Ey="mousedown",Oy="mousemove mouseup",Ty=function(g){function t(){var e,A=t.prototype;return A.evEl=Ey,A.evWin=Oy,(e=g.apply(this,arguments)||this).pressed=!1,e}return rv(t,g),t.prototype.handler=function(g){var t=ky[g.type];t&zv&&0===g.button&&(this.pressed=!0),t&Sv&&1!==g.which&&(t=Zv),this.pressed&&(t&Zv&&(this.pressed=!1),this.callback(this.manager,t,{pointers:[g],changedPointers:[g],pointerType:Mv,srcEvent:g}))},t}(dy),Dy=2500,Ny=25;function Ry(g){var t=g.changedPointers[0];if(t.identifier===this.primaryTouch){var e={x:t.clientX,y:t.clientY},A=this.lastTouches;this.lastTouches.push(e);setTimeout((function(){var g=A.indexOf(e);g>-1&&A.splice(g,1)}),Dy)}}function Py(g,t){g&zv?(this.primaryTouch=t.changedPointers[0].identifier,Ry.call(this,t)):g&(Zv|Fv)&&Ry.call(this,t)}function My(g){for(var t=g.srcEvent.clientX,e=g.srcEvent.clientY,A=0;A<this.lastTouches.length;A++){var C=this.lastTouches[A],I=Math.abs(t-C.x),i=Math.abs(e-C.y);if(I<=Ny&&i<=Ny)return!0}return!1}var By=function(){return function(g){function t(t,e){var A;return(A=g.call(this,t,e)||this).handler=function(g,t,e){var C=e.pointerType===Pv,I=e.pointerType===Mv;if(!(I&&e.sourceCapabilities&&e.sourceCapabilities.firesTouchEvents)){if(C)Py.call(sv(sv(A)),t,e);else if(I&&My.call(sv(sv(A)),e))return;A.callback(g,t,e)}},A.touch=new wy(A.manager,A.handler),A.mouse=new Ty(A.manager,A.handler),A.primaryTouch=null,A.lastTouches=[],A}return rv(t,g),t.prototype.destroy=function(){this.touch.destroy(),this.mouse.destroy()},t}(dy)}();function zy(g,t,e){return!!Array.isArray(g)&&(Kv(g,e[t],e),!0)}var Sy=1,Zy=2,Fy=4,Gy=8,jy=Gy,Ly=16,Vy=32,Yy=1;function Wy(g,t){var e=t.manager;return e?e.get(g):g}function Qy(g){return g&Ly?"cancel":g&Gy?"end":g&Fy?"move":g&Zy?"start":""}var Uy=function(){function g(g){void 0===g&&(g={}),this.options=nv({enable:!0},g),this.id=Yy++,this.manager=null,this.state=Sy,this.simultaneous={},this.requireFail=[]}var t=g.prototype;return t.set=function(g){return dv(this.options,g),this.manager&&this.manager.touchAction.update(),this},t.recognizeWith=function(g){if(zy(g,"recognizeWith",this))return this;var t=this.simultaneous;return t[(g=Wy(g,this)).id]||(t[g.id]=g,g.recognizeWith(this)),this},t.dropRecognizeWith=function(g){return zy(g,"dropRecognizeWith",this)||(g=Wy(g,this),delete this.simultaneous[g.id]),this},t.requireFailure=function(g){if(zy(g,"requireFailure",this))return this;var t=this.requireFail;return-1===hy(t,g=Wy(g,this))&&(t.push(g),g.requireFailure(this)),this},t.dropRequireFailure=function(g){if(zy(g,"dropRequireFailure",this))return this;g=Wy(g,this);var t=hy(this.requireFail,g);return t>-1&&this.requireFail.splice(t,1),this},t.hasRequireFailures=function(){return this.requireFail.length>0},t.canRecognizeWith=function(g){return!!this.simultaneous[g.id]},t.emit=function(g){var t=this,e=this.state;function A(e){t.manager.emit(e,g)}e<Gy&&A(t.options.event+Qy(e)),A(t.options.event),g.additionalEvent&&A(g.additionalEvent),e>=Gy&&A(t.options.event+Qy(e))},t.tryEmit=function(g){if(this.canEmit())return this.emit(g);this.state=Vy},t.canEmit=function(){for(var g=0;g<this.requireFail.length;){if(!(this.requireFail[g].state&(Vy|Sy)))return!1;g++}return!0},t.recognize=function(g){var t=dv({},g);if(!Xv(this.options.enable,[this,t]))return this.reset(),void(this.state=Vy);this.state&(jy|Ly|Vy)&&(this.state=Sy),this.state=this.process(t),this.state&(Zy|Fy|Gy|Ly)&&this.tryEmit(t)},t.process=function(g){},t.getTouchAction=function(){},t.reset=function(){},g}(),_y=function(g){function t(t){var e;return void 0===t&&(t={}),(e=g.call(this,nv({event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},t))||this).pTime=!1,e.pCenter=!1,e._timer=null,e._input=null,e.count=0,e}rv(t,g);var e=t.prototype;return e.getTouchAction=function(){return[xv]},e.process=function(g){var t=this,e=this.options,A=g.pointers.length===e.pointers,C=g.distance<e.threshold,I=g.deltaTime<e.time;if(this.reset(),g.eventType&zv&&0===this.count)return this.failTimeout();if(C&&I&&A){if(g.eventType!==Zv)return this.failTimeout();var i=!this.pTime||g.timeStamp-this.pTime<e.interval,o=!this.pCenter||ey(this.pCenter,g.center)<e.posThreshold;if(this.pTime=g.timeStamp,this.pCenter=g.center,o&&i?this.count+=1:this.count=1,this._input=g,0===this.count%e.taps)return this.hasRequireFailures()?(this._timer=setTimeout((function(){t.state=jy,t.tryEmit()}),e.interval),Zy):jy}return Vy},e.failTimeout=function(){var g=this;return this._timer=setTimeout((function(){g.state=Vy}),this.options.interval),Vy},e.reset=function(){clearTimeout(this._timer)},e.emit=function(){this.state===jy&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))},t}(Uy),Hy=function(g){function t(t){return void 0===t&&(t={}),g.call(this,nv({pointers:1},t))||this}rv(t,g);var e=t.prototype;return e.attrTest=function(g){var t=this.options.pointers;return 0===t||g.pointers.length===t},e.process=function(g){var t=this.state,e=g.eventType,A=t&(Zy|Fy),C=this.attrTest(g);return A&&(e&Fv||!C)?t|Ly:A||C?e&Zv?t|Gy:t&Zy?t|Fy:Zy:Vy},t}(Uy);function Ky(g){return g===Yv?"down":g===Vv?"up":g===jv?"left":g===Lv?"right":""}var Xy=function(g){function t(t){var e;return void 0===t&&(t={}),(e=g.call(this,nv({event:"pan",threshold:10,pointers:1,direction:Uv},t))||this).pX=null,e.pY=null,e}rv(t,g);var e=t.prototype;return e.getTouchAction=function(){var g=this.options.direction,t=[];return g&Wv&&t.push(Ov),g&Qv&&t.push(Ev),t},e.directionTest=function(g){var t=this.options,e=!0,A=g.distance,C=g.direction,I=g.deltaX,i=g.deltaY;return C&t.direction||(t.direction&Wv?(C=0===I?Gv:I<0?jv:Lv,e=I!==this.pX,A=Math.abs(g.deltaX)):(C=0===i?Gv:i<0?Vv:Yv,e=i!==this.pY,A=Math.abs(g.deltaY))),g.direction=C,e&&A>t.threshold&&C&t.direction},e.attrTest=function(g){return Hy.prototype.attrTest.call(this,g)&&(this.state&Zy||!(this.state&Zy)&&this.directionTest(g))},e.emit=function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=Ky(t.direction);e&&(t.additionalEvent=this.options.event+e),g.prototype.emit.call(this,t)},t}(Hy),Jy=function(g){function t(t){return void 0===t&&(t={}),g.call(this,nv({event:"swipe",threshold:10,velocity:.3,direction:Wv|Qv,pointers:1},t))||this}rv(t,g);var e=t.prototype;return e.getTouchAction=function(){return Xy.prototype.getTouchAction.call(this)},e.attrTest=function(t){var e,A=this.options.direction;return A&(Wv|Qv)?e=t.overallVelocity:A&Wv?e=t.overallVelocityX:A&Qv&&(e=t.overallVelocityY),g.prototype.attrTest.call(this,t)&&A&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers===this.options.pointers&&pv(e)>this.options.velocity&&t.eventType&Zv},e.emit=function(g){var t=Ky(g.offsetDirection);t&&this.manager.emit(this.options.event+t,g),this.manager.emit(this.options.event,g)},t}(Hy),qy=function(g){function t(t){return void 0===t&&(t={}),g.call(this,nv({event:"pinch",threshold:0,pointers:2},t))||this}rv(t,g);var e=t.prototype;return e.getTouchAction=function(){return[kv]},e.attrTest=function(t){return g.prototype.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||this.state&Zy)},e.emit=function(t){if(1!==t.scale){var e=t.scale<1?"in":"out";t.additionalEvent=this.options.event+e}g.prototype.emit.call(this,t)},t}(Hy),$y=function(g){function t(t){return void 0===t&&(t={}),g.call(this,nv({event:"rotate",threshold:0,pointers:2},t))||this}rv(t,g);var e=t.prototype;return e.getTouchAction=function(){return[kv]},e.attrTest=function(t){return g.prototype.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||this.state&Zy)},t}(Hy),gm=function(g){function t(t){var e;return void 0===t&&(t={}),(e=g.call(this,nv({event:"press",pointers:1,time:251,threshold:9},t))||this)._timer=null,e._input=null,e}rv(t,g);var e=t.prototype;return e.getTouchAction=function(){return[wv]},e.process=function(g){var t=this,e=this.options,A=g.pointers.length===e.pointers,C=g.distance<e.threshold,I=g.deltaTime>e.time;if(this._input=g,!C||!A||g.eventType&(Zv|Fv)&&!I)this.reset();else if(g.eventType&zv)this.reset(),this._timer=setTimeout((function(){t.state=jy,t.tryEmit()}),e.time);else if(g.eventType&Zv)return jy;return Vy},e.reset=function(){clearTimeout(this._timer)},e.emit=function(g){this.state===jy&&(g&&g.eventType&Zv?this.manager.emit(this.options.event+"up",g):(this._input.timeStamp=fv(),this.manager.emit(this.options.event,this._input)))},t}(Uy),tm={domEvents:!1,touchAction:bv,enable:!0,inputTarget:null,inputClass:null,cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},em=[[$y,{enable:!1}],[qy,{enable:!1},["rotate"]],[Jy,{direction:Wv}],[Xy,{direction:Wv},["swipe"]],[_y],[_y,{event:"doubletap",taps:2},["tap"]],[gm]];function Am(g,t){var e,A=g.element;A.style&&(Kv(g.options.cssProps,(function(C,I){e=vv(A.style,I),t?(g.oldCssProps[e]=A.style[e],A.style[e]=C):A.style[e]=g.oldCssProps[e]||""})),t||(g.oldCssProps={}))}var Cm=function(){function g(g,t){var e,A=this;this.options=dv({},tm,t||{}),this.options.inputTarget=this.options.inputTarget||g,this.handlers={},this.session={},this.recognizers=[],this.oldCssProps={},this.element=g,this.input=new((e=this).options.inputClass||(Nv?fy:Rv?wy:Dv?By:Ty))(e,oy),this.touchAction=new qv(this,this.options.touchAction),Am(this,!0),Kv(this.options.recognizers,(function(g){var t=A.add(new g[0](g[1]));g[2]&&t.recognizeWith(g[2]),g[3]&&t.requireFailure(g[3])}),this)}var t=g.prototype;return t.set=function(g){return dv(this.options,g),g.touchAction&&this.touchAction.update(),g.inputTarget&&(this.input.destroy(),this.input.target=g.inputTarget,this.input.init()),this},t.stop=function(g){this.session.stopped=g?2:1},t.recognize=function(g){var t=this.session;if(!t.stopped){var e;this.touchAction.preventDefaults(g);var A=this.recognizers,C=t.curRecognizer;(!C||C&&C.state&jy)&&(t.curRecognizer=null,C=null);for(var I=0;I<A.length;)e=A[I],2===t.stopped||C&&e!==C&&!e.canRecognizeWith(C)?e.reset():e.recognize(g),!C&&e.state&(Zy|Fy|Gy)&&(t.curRecognizer=e,C=e),I++}},t.get=function(g){if(g instanceof Uy)return g;for(var t=this.recognizers,e=0;e<t.length;e++)if(t[e].options.event===g)return t[e];return null},t.add=function(g){if(zy(g,"add",this))return this;var t=this.get(g.options.event);return t&&this.remove(t),this.recognizers.push(g),g.manager=this,this.touchAction.update(),g},t.remove=function(g){if(zy(g,"remove",this))return this;var t=this.get(g);if(g){var e=this.recognizers,A=hy(e,t);-1!==A&&(e.splice(A,1),this.touchAction.update())}return this},t.on=function(g,t){if(void 0===g||void 0===t)return this;var e=this.handlers;return Kv(ny(g),(function(g){e[g]=e[g]||[],e[g].push(t)})),this},t.off=function(g,t){if(void 0===g)return this;var e=this.handlers;return Kv(ny(g),(function(g){t?e[g]&&e[g].splice(hy(e[g],t),1):delete e[g]})),this},t.emit=function(g,t){this.options.domEvents&&function(g,t){var e=document.createEvent("Event");e.initEvent(g,!0,!0),e.gesture=t,t.target.dispatchEvent(e)}(g,t);var e=this.handlers[g]&&this.handlers[g].slice();if(e&&e.length){t.type=g,t.preventDefault=function(){t.srcEvent.preventDefault()};for(var A=0;A<e.length;)e[A](t),A++}},t.destroy=function(){this.element&&Am(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null},g}(),Im={touchstart:zv,touchmove:Sv,touchend:Zv,touchcancel:Fv},im="touchstart",om="touchstart touchmove touchend touchcancel",nm=function(g){function t(){var e,A=t.prototype;return A.evTarget=im,A.evWin=om,(e=g.apply(this,arguments)||this).started=!1,e}return rv(t,g),t.prototype.handler=function(g){var t=Im[g.type];if(t===zv&&(this.started=!0),this.started){var e=rm.call(this,g,t);t&(Zv|Fv)&&e[0].length-e[1].length==0&&(this.started=!1),this.callback(this.manager,t,{pointers:e[0],changedPointers:e[1],pointerType:Pv,srcEvent:g})}},t}(dy);function rm(g,t){var e=vy(g.touches),A=vy(g.changedTouches);return t&(Zv|Fv)&&(e=yy(e.concat(A),"identifier",!0)),[e,A]}function sm(g,t,e){var A="DEPRECATED METHOD: "+t+"\n"+e+" AT \n";return function(){var t=new Error("get-stack-trace"),e=t&&t.stack?t.stack.replace(/^[^\(]+?[\n$]/gm,"").replace(/^\s+at\s+/gm,"").replace(/^Object.<anonymous>\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",C=window.console&&(window.console.warn||window.console.log);return C&&C.call(window.console,A,e),g.apply(this,arguments)}}var am=sm((function(g,t,e){for(var A=Object.keys(t),C=0;C<A.length;)(!e||e&&void 0===g[A[C]])&&(g[A[C]]=t[A[C]]),C++;return g}),"extend","Use `assign`."),dm=sm((function(g,t){return am(g,t,!0)}),"merge","Use `assign`.");function hm(g,t,e){var A,C=t.prototype;(A=g.prototype=Object.create(C)).constructor=g,A._super=C,e&&dv(A,e)}function lm(g,t){return function(){return g.apply(t,arguments)}}var cm=function(){var g=function(g,t){return void 0===t&&(t={}),new Cm(g,nv({recognizers:em.concat()},t))};return g.VERSION="2.0.17-rc",g.DIRECTION_ALL=Uv,g.DIRECTION_DOWN=Yv,g.DIRECTION_LEFT=jv,g.DIRECTION_RIGHT=Lv,g.DIRECTION_UP=Vv,g.DIRECTION_HORIZONTAL=Wv,g.DIRECTION_VERTICAL=Qv,g.DIRECTION_NONE=Gv,g.DIRECTION_DOWN=Yv,g.INPUT_START=zv,g.INPUT_MOVE=Sv,g.INPUT_END=Zv,g.INPUT_CANCEL=Fv,g.STATE_POSSIBLE=Sy,g.STATE_BEGAN=Zy,g.STATE_CHANGED=Fy,g.STATE_ENDED=Gy,g.STATE_RECOGNIZED=jy,g.STATE_CANCELLED=Ly,g.STATE_FAILED=Vy,g.Manager=Cm,g.Input=dy,g.TouchAction=qv,g.TouchInput=wy,g.MouseInput=Ty,g.PointerEventInput=fy,g.TouchMouseInput=By,g.SingleTouchInput=nm,g.Recognizer=Uy,g.AttrRecognizer=Hy,g.Tap=_y,g.Pan=Xy,g.Swipe=Jy,g.Pinch=qy,g.Rotate=$y,g.Press=gm,g.on=ry,g.off=sy,g.each=Kv,g.merge=dm,g.extend=am,g.bindFn=lm,g.assign=dv,g.inherit=hm,g.bindFn=lm,g.prefixed=vv,g.toArray=vy,g.inArray=hy,g.uniqueArray=yy,g.splitStr=ny,g.boolOrFn=Xv,g.hasParent=$v,g.addEventListeners=ry,g.removeEventListeners=sy,g.defaults=dv({},tm,{preset:em}),g}();cm.defaults;var um=cm;function pm(g,t){var e=void 0!==kl&&bn(g)||g["@@iterator"];if(!e){if(Vl(g)||(e=function(g,t){var e;if(!g)return;if("string"==typeof g)return fm(g,t);var A=Sl(e=Object.prototype.toString.call(g)).call(e,8,-1);"Object"===A&&g.constructor&&(A=g.constructor.name);if("Map"===A||"Set"===A)return Jo(g);if("Arguments"===A||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(A))return fm(g,t)}(g))||t&&g&&"number"==typeof g.length){e&&(g=e);var A=0,C=function(){};return{s:C,n:function(){return A>=g.length?{done:!0}:{done:!1,value:g[A++]}},e:function(g){throw g},f:C}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var I,i=!0,o=!1;return{s:function(){e=e.call(g)},n:function(){var g=e.next();return i=g.done,g},e:function(g){o=!0,I=g},f:function(){try{i||null==e.return||e.return()}finally{if(o)throw I}}}}function fm(g,t){(null==t||t>g.length)&&(t=g.length);for(var e=0,A=new Array(t);e<t;e++)A[e]=g[e];return A}var vm=kl("DELETE");function ym(){var g=mm.apply(void 0,arguments);return wm(g),g}function mm(){for(var g=arguments.length,t=new Array(g),e=0;e<g;e++)t[e]=arguments[e];if(t.length<2)return t[0];var A;if(t.length>2)return mm.apply(void 0,Bl(A=[ym(t[0],t[1])]).call(A,wl(Sl(t).call(t,2))));var C,I=t[0],i=t[1],o=pm(jl(i));try{for(o.s();!(C=o.n()).done;){var n=C.value;Object.prototype.propertyIsEnumerable.call(i,n)&&(i[n]===vm?delete I[n]:null===I[n]||null===i[n]||"object"!==kh(I[n])||"object"!==kh(i[n])||Vl(I[n])||Vl(i[n])?I[n]=bm(i[n]):I[n]=mm(I[n],i[n]))}}catch(g){o.e(g)}finally{o.f()}return I}function bm(g){return Vl(g)?ql(g).call(g,(function(g){return bm(g)})):"object"===kh(g)&&null!==g?mm({},g):g}function wm(g){for(var t=0,e=Cc(g);t<e.length;t++){var A=e[t];g[A]===vm?delete g[A]:"object"===kh(g[A])&&null!==g[A]&&wm(g[A])}}function xm(){for(var g=arguments.length,t=new Array(g),e=0;e<g;e++)t[e]=arguments[e];return function(g){var t=function(){for(var g=function(){var g=4022871197;return function(t){for(var e=t.toString(),A=0;A<e.length;A++){var C=.02519603282416938*(g+=e.charCodeAt(A));C-=g=C>>>0,g=(C*=g)>>>0,g+=4294967296*(C-=g)}return 2.3283064365386963e-10*(g>>>0)}}(),t=g(" "),e=g(" "),A=g(" "),C=0;C<arguments.length;C++)(t-=g(C<0||arguments.length<=C?void 0:arguments[C]))<0&&(t+=1),(e-=g(C<0||arguments.length<=C?void 0:arguments[C]))<0&&(e+=1),(A-=g(C<0||arguments.length<=C?void 0:arguments[C]))<0&&(A+=1);return[t,e,A]}(g),e=bl(t,3),A=e[0],C=e[1],I=e[2],i=1,o=function(){var g=2091639*A+2.3283064365386963e-10*i;return A=C,C=I,I=g-(i=0|g)};return o.uint32=function(){return 4294967296*o()},o.fract53=function(){return o()+11102230246251565e-32*(2097152*o()|0)},o.algorithm="Alea",o.seed=g,o.version="0.9",o}(t.length?t:[ac()])}var km="undefined"!=typeof window?window.Hammer||um:function(){return function(){var g=function(){};return{on:g,off:g,destroy:g,emit:g,get:function(){return{set:g}}}}()};function Em(g){var t,e=this;this._cleanupQueue=[],this.active=!1,this._dom={container:g,overlay:document.createElement("div")},this._dom.overlay.classList.add("vis-overlay"),this._dom.container.appendChild(this._dom.overlay),this._cleanupQueue.push((function(){e._dom.overlay.parentNode.removeChild(e._dom.overlay)}));var A=km(this._dom.overlay);A.on("tap",QA(t=this._onTapOverlay).call(t,this)),this._cleanupQueue.push((function(){A.destroy()}));var C=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];Ec(C).call(C,(function(g){A.on(g,(function(g){g.srcEvent.stopPropagation()}))})),document&&document.body&&(this._onClick=function(t){(function(g,t){for(;g;){if(g===t)return!0;g=g.parentNode}return!1})(t.target,g)||e.deactivate()},document.body.addEventListener("click",this._onClick),this._cleanupQueue.push((function(){document.body.removeEventListener("click",e._onClick)}))),this._escListener=function(g){("key"in g?"Escape"===g.key:27===g.keyCode)&&e.deactivate()}}gC(Em.prototype),Em.current=null,Em.prototype.destroy=function(){var g,t;this.deactivate();var e,A=pm(Gc(g=cu(t=this._cleanupQueue).call(t,0)).call(g));try{for(A.s();!(e=A.n()).done;){(0,e.value)()}}catch(g){A.e(g)}finally{A.f()}},Em.prototype.activate=function(){Em.current&&Em.current.deactivate(),Em.current=this,this.active=!0,this._dom.overlay.style.display="none",this._dom.container.classList.add("vis-active"),this.emit("change"),this.emit("activate"),document.body.addEventListener("keydown",this._escListener)},Em.prototype.deactivate=function(){this.active=!1,this._dom.overlay.style.display="block",this._dom.container.classList.remove("vis-active"),document.body.removeEventListener("keydown",this._escListener),this.emit("change"),this.emit("deactivate")},Em.prototype._onTapOverlay=function(g){this.activate(),g.srcEvent.stopPropagation()};var Om=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i,Tm=/^#?([a-f\d])([a-f\d])([a-f\d])$/i,Dm=/^rgb\( *(1?\d{1,2}|2[0-4]\d|25[0-5]) *, *(1?\d{1,2}|2[0-4]\d|25[0-5]) *, *(1?\d{1,2}|2[0-4]\d|25[0-5]) *\)$/i,Nm=/^rgba\( *(1?\d{1,2}|2[0-4]\d|25[0-5]) *, *(1?\d{1,2}|2[0-4]\d|25[0-5]) *, *(1?\d{1,2}|2[0-4]\d|25[0-5]) *, *([01]|0?\.\d+) *\)$/i;function Rm(g){if(g)for(;!0===g.hasChildNodes();){var t=g.firstChild;t&&(Rm(t),g.removeChild(t))}}function Pm(g){return g instanceof String||"string"==typeof g}function Mm(g){return"object"===kh(g)&&null!==g}function Bm(g,t,e,A){var C=!1;!0===A&&(C=null===t[e]&&void 0!==g[e]),C?delete g[e]:g[e]=t[e]}function zm(g,t){var e=arguments.length>2&&void 0!==arguments[2]&&arguments[2];for(var A in g)if(void 0!==t[A])if(null===t[A]||"object"!==kh(t[A]))Bm(g,t,A,e);else{var C=g[A],I=t[A];Mm(C)&&Mm(I)&&zm(C,I,e)}}function Sm(g,t,e){var A=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(Vl(e))throw new TypeError("Arrays are not supported by deepExtend");for(var C=0;C<g.length;C++){var I=g[C];if(Object.prototype.hasOwnProperty.call(e,I))if(e[I]&&e[I].constructor===Object)void 0===t[I]&&(t[I]={}),t[I].constructor===Object?Fm(t[I],e[I],!1,A):Bm(t,e,I,A);else{if(Vl(e[I]))throw new TypeError("Arrays are not supported by deepExtend");Bm(t,e,I,A)}}return t}function Zm(g,t,e){var A=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(Vl(e))throw new TypeError("Arrays are not supported by deepExtend");for(var C in e)if(Object.prototype.hasOwnProperty.call(e,C)&&!ju(g).call(g,C))if(e[C]&&e[C].constructor===Object)void 0===t[C]&&(t[C]={}),t[C].constructor===Object?Fm(t[C],e[C]):Bm(t,e,C,A);else if(Vl(e[C])){t[C]=[];for(var I=0;I<e[C].length;I++)t[C].push(e[C][I])}else Bm(t,e,C,A);return t}function Fm(g,t){var e=arguments.length>2&&void 0!==arguments[2]&&arguments[2],A=arguments.length>3&&void 0!==arguments[3]&&arguments[3];for(var C in t)if(Object.prototype.hasOwnProperty.call(t,C)||!0===e)if("object"===kh(t[C])&&null!==t[C]&&_u(t[C])===Object.prototype)void 0===g[C]?g[C]=Fm({},t[C],e):"object"===kh(g[C])&&null!==g[C]&&_u(g[C])===Object.prototype?Fm(g[C],t[C],e):Bm(g,t,C,A);else if(Vl(t[C])){var I;g[C]=Sl(I=t[C]).call(I)}else Bm(g,t,C,A);return g}function Gm(g,t){var e;return Bl(e=[]).call(e,wl(g),[t])}function jm(g){return g.getBoundingClientRect().top}function Lm(g,t){if(Vl(g))for(var e=g.length,A=0;A<e;A++)t(g[A],A,g);else for(var C in g)Object.prototype.hasOwnProperty.call(g,C)&&t(g[C],C,g)}function Vm(g){var t;switch(g.length){case 3:case 4:return(t=Tm.exec(g))?{r:Gp(t[1]+t[1],16),g:Gp(t[2]+t[2],16),b:Gp(t[3]+t[3],16)}:null;case 6:case 7:return(t=Om.exec(g))?{r:Gp(t[1],16),g:Gp(t[2],16),b:Gp(t[3],16)}:null;default:return null}}function Ym(g,t){if(ju(g).call(g,"rgba"))return g;if(ju(g).call(g,"rgb")){var e=g.substr($p(g).call(g,"(")+1).replace(")","").split(",");return"rgba("+e[0]+","+e[1]+","+e[2]+","+t+")"}var A=Vm(g);return null==A?g:"rgba("+A.r+","+A.g+","+A.b+","+t+")"}function Wm(g,t,e){var A;return"#"+Sl(A=((1<<24)+(g<<16)+(t<<8)+e).toString(16)).call(A,1)}function Qm(g,t){if(Pm(g)){var e=g;if(Xm(e)){var A,C=ql(A=e.substr(4).substr(0,e.length-5).split(",")).call(A,(function(g){return Gp(g)}));e=Wm(C[0],C[1],C[2])}if(!0===Km(e)){var I=function(g){var t=Vm(g);if(!t)throw new TypeError("'".concat(g,"' is not a valid color."));return Um(t.r,t.g,t.b)}(e),i={h:I.h,s:.8*I.s,v:Math.min(1,1.02*I.v)},o={h:I.h,s:Math.min(1,1.25*I.s),v:.8*I.v},n=Hm(o.h,o.s,o.v),r=Hm(i.h,i.s,i.v);return{background:e,border:n,highlight:{background:r,border:n},hover:{background:r,border:n}}}return{background:e,border:e,highlight:{background:e,border:e},hover:{background:e,border:e}}}return t?{background:g.background||t.background,border:g.border||t.border,highlight:Pm(g.highlight)?{border:g.highlight,background:g.highlight}:{background:g.highlight&&g.highlight.background||t.highlight.background,border:g.highlight&&g.highlight.border||t.highlight.border},hover:Pm(g.hover)?{border:g.hover,background:g.hover}:{border:g.hover&&g.hover.border||t.hover.border,background:g.hover&&g.hover.background||t.hover.background}}:{background:g.background||void 0,border:g.border||void 0,highlight:Pm(g.highlight)?{border:g.highlight,background:g.highlight}:{background:g.highlight&&g.highlight.background||void 0,border:g.highlight&&g.highlight.border||void 0},hover:Pm(g.hover)?{border:g.hover,background:g.hover}:{border:g.hover&&g.hover.border||void 0,background:g.hover&&g.hover.background||void 0}}}function Um(g,t,e){g/=255,t/=255,e/=255;var A=Math.min(g,Math.min(t,e)),C=Math.max(g,Math.max(t,e));return A===C?{h:0,s:0,v:A}:{h:60*((g===A?3:e===A?1:5)-(g===A?t-e:e===A?g-t:e-g)/(C-A))/360,s:(C-A)/C,v:C}}function _m(g,t,e){var A,C,I,i=Math.floor(6*g),o=6*g-i,n=e*(1-t),r=e*(1-o*t),s=e*(1-(1-o)*t);switch(i%6){case 0:A=e,C=s,I=n;break;case 1:A=r,C=e,I=n;break;case 2:A=n,C=e,I=s;break;case 3:A=n,C=r,I=e;break;case 4:A=s,C=n,I=e;break;case 5:A=e,C=n,I=r}return{r:Math.floor(255*A),g:Math.floor(255*C),b:Math.floor(255*I)}}function Hm(g,t,e){var A=_m(g,t,e);return Wm(A.r,A.g,A.b)}function Km(g){return/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(g)}function Xm(g){return Dm.test(g)}function Jm(g){if(null===g||"object"!==kh(g))return null;if(g instanceof Element)return g;var t=pf(g);for(var e in g)Object.prototype.hasOwnProperty.call(g,e)&&"object"==kh(g[e])&&(t[e]=Jm(g[e]));return t}function qm(g,t,e){var A=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},C=function(g){return null!=g},I=function(g){return null!==g&&"object"===kh(g)};if(!I(g))throw new Error("Parameter mergeTarget must be an object");if(!I(t))throw new Error("Parameter options must be an object");if(!C(e))throw new Error("Parameter option must have a value");if(!I(A))throw new Error("Parameter globalOptions must be an object");var i=t[e],o=I(A)&&!function(g){for(var t in g)if(Object.prototype.hasOwnProperty.call(g,t))return!1;return!0}(A)?A[e]:void 0,n=o?o.enabled:void 0;if(void 0!==i){if("boolean"==typeof i)return I(g[e])||(g[e]={}),void(g[e].enabled=i);if(null===i&&!I(g[e])){if(!C(o))return;g[e]=pf(o)}if(I(i)){var r=!0;void 0!==i.enabled?r=i.enabled:void 0!==n&&(r=o.enabled),function(g,t,e){I(g[e])||(g[e]={});var A=t[e],C=g[e];for(var i in A)Object.prototype.hasOwnProperty.call(A,i)&&(C[i]=A[i])}(g,t,e),g[e].enabled=r}}}var $m={linear:function(g){return g},easeInQuad:function(g){return g*g},easeOutQuad:function(g){return g*(2-g)},easeInOutQuad:function(g){return g<.5?2*g*g:(4-2*g)*g-1},easeInCubic:function(g){return g*g*g},easeOutCubic:function(g){return--g*g*g+1},easeInOutCubic:function(g){return g<.5?4*g*g*g:(g-1)*(2*g-2)*(2*g-2)+1},easeInQuart:function(g){return g*g*g*g},easeOutQuart:function(g){return 1- --g*g*g*g},easeInOutQuart:function(g){return g<.5?8*g*g*g*g:1-8*--g*g*g*g},easeInQuint:function(g){return g*g*g*g*g},easeOutQuint:function(g){return 1+--g*g*g*g*g},easeInOutQuint:function(g){return g<.5?16*g*g*g*g*g:1+16*--g*g*g*g*g}};function gb(g,t){var e;Vl(t)||(t=[t]);var A,C=pm(g);try{for(C.s();!(A=C.n()).done;){var I=A.value;if(I){e=I[t[0]];for(var i=1;i<t.length;i++)e&&(e=e[t[i]]);if(void 0!==e)break}}}catch(g){C.e(g)}finally{C.f()}return e}var tb={black:"#000000",navy:"#000080",darkblue:"#00008B",mediumblue:"#0000CD",blue:"#0000FF",darkgreen:"#006400",green:"#008000",teal:"#008080",darkcyan:"#008B8B",deepskyblue:"#00BFFF",darkturquoise:"#00CED1",mediumspringgreen:"#00FA9A",lime:"#00FF00",springgreen:"#00FF7F",aqua:"#00FFFF",cyan:"#00FFFF",midnightblue:"#191970",dodgerblue:"#1E90FF",lightseagreen:"#20B2AA",forestgreen:"#228B22",seagreen:"#2E8B57",darkslategray:"#2F4F4F",limegreen:"#32CD32",mediumseagreen:"#3CB371",turquoise:"#40E0D0",royalblue:"#4169E1",steelblue:"#4682B4",darkslateblue:"#483D8B",mediumturquoise:"#48D1CC",indigo:"#4B0082",darkolivegreen:"#556B2F",cadetblue:"#5F9EA0",cornflowerblue:"#6495ED",mediumaquamarine:"#66CDAA",dimgray:"#696969",slateblue:"#6A5ACD",olivedrab:"#6B8E23",slategray:"#708090",lightslategray:"#778899",mediumslateblue:"#7B68EE",lawngreen:"#7CFC00",chartreuse:"#7FFF00",aquamarine:"#7FFFD4",maroon:"#800000",purple:"#800080",olive:"#808000",gray:"#808080",skyblue:"#87CEEB",lightskyblue:"#87CEFA",blueviolet:"#8A2BE2",darkred:"#8B0000",darkmagenta:"#8B008B",saddlebrown:"#8B4513",darkseagreen:"#8FBC8F",lightgreen:"#90EE90",mediumpurple:"#9370D8",darkviolet:"#9400D3",palegreen:"#98FB98",darkorchid:"#9932CC",yellowgreen:"#9ACD32",sienna:"#A0522D",brown:"#A52A2A",darkgray:"#A9A9A9",lightblue:"#ADD8E6",greenyellow:"#ADFF2F",paleturquoise:"#AFEEEE",lightsteelblue:"#B0C4DE",powderblue:"#B0E0E6",firebrick:"#B22222",darkgoldenrod:"#B8860B",mediumorchid:"#BA55D3",rosybrown:"#BC8F8F",darkkhaki:"#BDB76B",silver:"#C0C0C0",mediumvioletred:"#C71585",indianred:"#CD5C5C",peru:"#CD853F",chocolate:"#D2691E",tan:"#D2B48C",lightgrey:"#D3D3D3",palevioletred:"#D87093",thistle:"#D8BFD8",orchid:"#DA70D6",goldenrod:"#DAA520",crimson:"#DC143C",gainsboro:"#DCDCDC",plum:"#DDA0DD",burlywood:"#DEB887",lightcyan:"#E0FFFF",lavender:"#E6E6FA",darksalmon:"#E9967A",violet:"#EE82EE",palegoldenrod:"#EEE8AA",lightcoral:"#F08080",khaki:"#F0E68C",aliceblue:"#F0F8FF",honeydew:"#F0FFF0",azure:"#F0FFFF",sandybrown:"#F4A460",wheat:"#F5DEB3",beige:"#F5F5DC",whitesmoke:"#F5F5F5",mintcream:"#F5FFFA",ghostwhite:"#F8F8FF",salmon:"#FA8072",antiquewhite:"#FAEBD7",linen:"#FAF0E6",lightgoldenrodyellow:"#FAFAD2",oldlace:"#FDF5E6",red:"#FF0000",fuchsia:"#FF00FF",magenta:"#FF00FF",deeppink:"#FF1493",orangered:"#FF4500",tomato:"#FF6347",hotpink:"#FF69B4",coral:"#FF7F50",darkorange:"#FF8C00",lightsalmon:"#FFA07A",orange:"#FFA500",lightpink:"#FFB6C1",pink:"#FFC0CB",gold:"#FFD700",peachpuff:"#FFDAB9",navajowhite:"#FFDEAD",moccasin:"#FFE4B5",bisque:"#FFE4C4",mistyrose:"#FFE4E1",blanchedalmond:"#FFEBCD",papayawhip:"#FFEFD5",lavenderblush:"#FFF0F5",seashell:"#FFF5EE",cornsilk:"#FFF8DC",lemonchiffon:"#FFFACD",floralwhite:"#FFFAF0",snow:"#FFFAFA",yellow:"#FFFF00",lightyellow:"#FFFFE0",ivory:"#FFFFF0",white:"#FFFFFF"},eb=function(){function g(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;cd(this,g),this.pixelRatio=t,this.generated=!1,this.centerCoordinates={x:144.5,y:144.5},this.r=289*.49,this.color={r:255,g:255,b:255,a:1},this.hueCircle=void 0,this.initialColor={r:255,g:255,b:255,a:1},this.previousColor=void 0,this.applied=!1,this.updateCallback=function(){},this.closeCallback=function(){},this._create()}return Bh(g,[{key:"insertTo",value:function(g){void 0!==this.hammer&&(this.hammer.destroy(),this.hammer=void 0),this.container=g,this.container.appendChild(this.frame),this._bindHammer(),this._setSize()}},{key:"setUpdateCallback",value:function(g){if("function"!=typeof g)throw new Error("Function attempted to set as colorPicker update callback is not a function.");this.updateCallback=g}},{key:"setCloseCallback",value:function(g){if("function"!=typeof g)throw new Error("Function attempted to set as colorPicker closing callback is not a function.");this.closeCallback=g}},{key:"_isColorString",value:function(g){if("string"==typeof g)return tb[g]}},{key:"setColor",value:function(g){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("none"!==g){var e,A=this._isColorString(g);if(void 0!==A&&(g=A),!0===Pm(g)){if(!0===Xm(g)){var C=g.substr(4).substr(0,g.length-5).split(",");e={r:C[0],g:C[1],b:C[2],a:1}}else if(!0===function(g){return Nm.test(g)}(g)){var I=g.substr(5).substr(0,g.length-6).split(",");e={r:I[0],g:I[1],b:I[2],a:I[3]}}else if(!0===Km(g)){var i=Vm(g);e={r:i.r,g:i.g,b:i.b,a:1}}}else if(g instanceof Object&&void 0!==g.r&&void 0!==g.g&&void 0!==g.b){var o=void 0!==g.a?g.a:"1.0";e={r:g.r,g:g.g,b:g.b,a:o}}if(void 0===e)throw new Error("Unknown color passed to the colorPicker. Supported are strings: rgb, hex, rgba. Object: rgb ({r:r,g:g,b:b,[a:a]}). Supplied: "+xf(g));this._setColor(e,t)}}},{key:"show",value:function(){void 0!==this.closeCallback&&(this.closeCallback(),this.closeCallback=void 0),this.applied=!1,this.frame.style.display="block",this._generateHueCircle()}},{key:"_hide",value:function(){var g=this;!0===(!(arguments.length>0&&void 0!==arguments[0])||arguments[0])&&(this.previousColor=yA({},this.color)),!0===this.applied&&this.updateCallback(this.initialColor),this.frame.style.display="none",_f((function(){void 0!==g.closeCallback&&(g.closeCallback(),g.closeCallback=void 0)}),0)}},{key:"_save",value:function(){this.updateCallback(this.color),this.applied=!1,this._hide()}},{key:"_apply",value:function(){this.applied=!0,this.updateCallback(this.color),this._updatePicker(this.color)}},{key:"_loadLast",value:function(){void 0!==this.previousColor?this.setColor(this.previousColor,!1):alert("There is no last color to load...")}},{key:"_setColor",value:function(g){!0===(!(arguments.length>1&&void 0!==arguments[1])||arguments[1])&&(this.initialColor=yA({},g)),this.color=g;var t=Um(g.r,g.g,g.b),e=2*Math.PI,A=this.r*t.s,C=this.centerCoordinates.x+A*Math.sin(e*t.h),I=this.centerCoordinates.y+A*Math.cos(e*t.h);this.colorPickerSelector.style.left=C-.5*this.colorPickerSelector.clientWidth+"px",this.colorPickerSelector.style.top=I-.5*this.colorPickerSelector.clientHeight+"px",this._updatePicker(g)}},{key:"_setOpacity",value:function(g){this.color.a=g/100,this._updatePicker(this.color)}},{key:"_setBrightness",value:function(g){var t=Um(this.color.r,this.color.g,this.color.b);t.v=g/100;var e=_m(t.h,t.s,t.v);e.a=this.color.a,this.color=e,this._updatePicker()}},{key:"_updatePicker",value:function(){var g=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.color,t=Um(g.r,g.g,g.b),e=this.colorPickerCanvas.getContext("2d");void 0===this.pixelRation&&(this.pixelRatio=(window.devicePixelRatio||1)/(e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1)),e.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var A=this.colorPickerCanvas.clientWidth,C=this.colorPickerCanvas.clientHeight;e.clearRect(0,0,A,C),e.putImageData(this.hueCircle,0,0),e.fillStyle="rgba(0,0,0,"+(1-t.v)+")",e.circle(this.centerCoordinates.x,this.centerCoordinates.y,this.r),ov(e).call(e),this.brightnessRange.value=100*t.v,this.opacityRange.value=100*g.a,this.initialColorDiv.style.backgroundColor="rgba("+this.initialColor.r+","+this.initialColor.g+","+this.initialColor.b+","+this.initialColor.a+")",this.newColorDiv.style.backgroundColor="rgba("+this.color.r+","+this.color.g+","+this.color.b+","+this.color.a+")"}},{key:"_setSize",value:function(){this.colorPickerCanvas.style.width="100%",this.colorPickerCanvas.style.height="100%",this.colorPickerCanvas.width=289*this.pixelRatio,this.colorPickerCanvas.height=289*this.pixelRatio}},{key:"_create",value:function(){var g,t,e,A;if(this.frame=document.createElement("div"),this.frame.className="vis-color-picker",this.colorPickerDiv=document.createElement("div"),this.colorPickerSelector=document.createElement("div"),this.colorPickerSelector.className="vis-selector",this.colorPickerDiv.appendChild(this.colorPickerSelector),this.colorPickerCanvas=document.createElement("canvas"),this.colorPickerDiv.appendChild(this.colorPickerCanvas),this.colorPickerCanvas.getContext){var C=this.colorPickerCanvas.getContext("2d");this.pixelRatio=(window.devicePixelRatio||1)/(C.webkitBackingStorePixelRatio||C.mozBackingStorePixelRatio||C.msBackingStorePixelRatio||C.oBackingStorePixelRatio||C.backingStorePixelRatio||1),this.colorPickerCanvas.getContext("2d").setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}else{var I=document.createElement("DIV");I.style.color="red",I.style.fontWeight="bold",I.style.padding="10px",I.innerText="Error: your browser does not support HTML canvas",this.colorPickerCanvas.appendChild(I)}this.colorPickerDiv.className="vis-color",this.opacityDiv=document.createElement("div"),this.opacityDiv.className="vis-opacity",this.brightnessDiv=document.createElement("div"),this.brightnessDiv.className="vis-brightness",this.arrowDiv=document.createElement("div"),this.arrowDiv.className="vis-arrow",this.opacityRange=document.createElement("input");try{this.opacityRange.type="range",this.opacityRange.min="0",this.opacityRange.max="100"}catch(g){}this.opacityRange.value="100",this.opacityRange.className="vis-range",this.brightnessRange=document.createElement("input");try{this.brightnessRange.type="range",this.brightnessRange.min="0",this.brightnessRange.max="100"}catch(g){}this.brightnessRange.value="100",this.brightnessRange.className="vis-range",this.opacityDiv.appendChild(this.opacityRange),this.brightnessDiv.appendChild(this.brightnessRange);var i=this;this.opacityRange.onchange=function(){i._setOpacity(this.value)},this.opacityRange.oninput=function(){i._setOpacity(this.value)},this.brightnessRange.onchange=function(){i._setBrightness(this.value)},this.brightnessRange.oninput=function(){i._setBrightness(this.value)},this.brightnessLabel=document.createElement("div"),this.brightnessLabel.className="vis-label vis-brightness",this.brightnessLabel.innerText="brightness:",this.opacityLabel=document.createElement("div"),this.opacityLabel.className="vis-label vis-opacity",this.opacityLabel.innerText="opacity:",this.newColorDiv=document.createElement("div"),this.newColorDiv.className="vis-new-color",this.newColorDiv.innerText="new",this.initialColorDiv=document.createElement("div"),this.initialColorDiv.className="vis-initial-color",this.initialColorDiv.innerText="initial",this.cancelButton=document.createElement("div"),this.cancelButton.className="vis-button vis-cancel",this.cancelButton.innerText="cancel",this.cancelButton.onclick=QA(g=this._hide).call(g,this,!1),this.applyButton=document.createElement("div"),this.applyButton.className="vis-button vis-apply",this.applyButton.innerText="apply",this.applyButton.onclick=QA(t=this._apply).call(t,this),this.saveButton=document.createElement("div"),this.saveButton.className="vis-button vis-save",this.saveButton.innerText="save",this.saveButton.onclick=QA(e=this._save).call(e,this),this.loadButton=document.createElement("div"),this.loadButton.className="vis-button vis-load",this.loadButton.innerText="load last",this.loadButton.onclick=QA(A=this._loadLast).call(A,this),this.frame.appendChild(this.colorPickerDiv),this.frame.appendChild(this.arrowDiv),this.frame.appendChild(this.brightnessLabel),this.frame.appendChild(this.brightnessDiv),this.frame.appendChild(this.opacityLabel),this.frame.appendChild(this.opacityDiv),this.frame.appendChild(this.newColorDiv),this.frame.appendChild(this.initialColorDiv),this.frame.appendChild(this.cancelButton),this.frame.appendChild(this.applyButton),this.frame.appendChild(this.saveButton),this.frame.appendChild(this.loadButton)}},{key:"_bindHammer",value:function(){var g=this;this.drag={},this.pinch={},this.hammer=new km(this.colorPickerCanvas),this.hammer.get("pinch").set({enable:!0}),this.hammer.on("hammer.input",(function(t){t.isFirst&&g._moveSelector(t)})),this.hammer.on("tap",(function(t){g._moveSelector(t)})),this.hammer.on("panstart",(function(t){g._moveSelector(t)})),this.hammer.on("panmove",(function(t){g._moveSelector(t)})),this.hammer.on("panend",(function(t){g._moveSelector(t)}))}},{key:"_generateHueCircle",value:function(){if(!1===this.generated){var g=this.colorPickerCanvas.getContext("2d");void 0===this.pixelRation&&(this.pixelRatio=(window.devicePixelRatio||1)/(g.webkitBackingStorePixelRatio||g.mozBackingStorePixelRatio||g.msBackingStorePixelRatio||g.oBackingStorePixelRatio||g.backingStorePixelRatio||1)),g.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var t,e,A,C,I=this.colorPickerCanvas.clientWidth,i=this.colorPickerCanvas.clientHeight;g.clearRect(0,0,I,i),this.centerCoordinates={x:.5*I,y:.5*i},this.r=.49*I;var o,n=2*Math.PI/360,r=1/this.r;for(A=0;A<360;A++)for(C=0;C<this.r;C++)t=this.centerCoordinates.x+C*Math.sin(n*A),e=this.centerCoordinates.y+C*Math.cos(n*A),o=_m(.002777777777777778*A,C*r,1),g.fillStyle="rgb("+o.r+","+o.g+","+o.b+")",g.fillRect(t-.5,e-.5,2,2);g.strokeStyle="rgba(0,0,0,1)",g.circle(this.centerCoordinates.x,this.centerCoordinates.y,this.r),g.stroke(),this.hueCircle=g.getImageData(0,0,I,i)}this.generated=!0}},{key:"_moveSelector",value:function(g){var t=this.colorPickerDiv.getBoundingClientRect(),e=g.center.x-t.left,A=g.center.y-t.top,C=.5*this.colorPickerDiv.clientHeight,I=.5*this.colorPickerDiv.clientWidth,i=e-I,o=A-C,n=Math.atan2(i,o),r=.98*Math.min(Math.sqrt(i*i+o*o),I),s=Math.cos(n)*r+C,a=Math.sin(n)*r+I;this.colorPickerSelector.style.top=s-.5*this.colorPickerSelector.clientHeight+"px",this.colorPickerSelector.style.left=a-.5*this.colorPickerSelector.clientWidth+"px";var d=n/(2*Math.PI);d=d<0?d+1:d;var h=r/this.r,l=Um(this.color.r,this.color.g,this.color.b);l.h=d,l.s=h;var c=_m(l.h,l.s,l.v);c.a=this.color.a,this.color=c,this.initialColorDiv.style.backgroundColor="rgba("+this.initialColor.r+","+this.initialColor.g+","+this.initialColor.b+","+this.initialColor.a+")",this.newColorDiv.style.backgroundColor="rgba("+this.color.r+","+this.color.g+","+this.color.b+","+this.color.a+")"}}]),g}();function Ab(){for(var g=arguments.length,t=new Array(g),e=0;e<g;e++)t[e]=arguments[e];if(t.length<1)throw new TypeError("Invalid arguments.");if(1===t.length)return document.createTextNode(t[0]);var A=document.createElement(t[0]);return A.appendChild(Ab.apply(void 0,wl(Sl(t).call(t,1)))),A}var Cb,Ib=function(){function g(t,e,A){var C=arguments.length>3&&void 0!==arguments[3]?arguments[3]:1,I=arguments.length>4&&void 0!==arguments[4]?arguments[4]:function(){return!1};cd(this,g),this.parent=t,this.changedOptions=[],this.container=e,this.allowCreation=!1,this.hideOption=I,this.options={},this.initialized=!1,this.popupCounter=0,this.defaultOptions={enabled:!1,filter:!0,container:void 0,showButton:!0},yA(this.options,this.defaultOptions),this.configureOptions=A,this.moduleOptions={},this.domElements=[],this.popupDiv={},this.popupLimit=5,this.popupHistory={},this.colorPicker=new eb(C),this.wrapper=void 0}return Bh(g,[{key:"setOptions",value:function(g){if(void 0!==g){this.popupHistory={},this._removePopup();var t=!0;if("string"==typeof g)this.options.filter=g;else if(Vl(g))this.options.filter=g.join();else if("object"===kh(g)){if(null==g)throw new TypeError("options cannot be null");void 0!==g.container&&(this.options.container=g.container),void 0!==Ap(g)&&(this.options.filter=Ap(g)),void 0!==g.showButton&&(this.options.showButton=g.showButton),void 0!==g.enabled&&(t=g.enabled)}else"boolean"==typeof g?(this.options.filter=!0,t=g):"function"==typeof g&&(this.options.filter=g,t=!0);!1===Ap(this.options)&&(t=!1),this.options.enabled=t}this._clean()}},{key:"setModuleOptions",value:function(g){this.moduleOptions=g,!0===this.options.enabled&&(this._clean(),void 0!==this.options.container&&(this.container=this.options.container),this._create())}},{key:"_create",value:function(){this._clean(),this.changedOptions=[];var g=Ap(this.options),t=0,e=!1;for(var A in this.configureOptions)Object.prototype.hasOwnProperty.call(this.configureOptions,A)&&(this.allowCreation=!1,e=!1,"function"==typeof g?e=(e=g(A,[]))||this._handleObject(this.configureOptions[A],[A],!0):!0!==g&&-1===$p(g).call(g,A)||(e=!0),!1!==e&&(this.allowCreation=!0,t>0&&this._makeItem([]),this._makeHeader(A),this._handleObject(this.configureOptions[A],[A])),t++);this._makeButton(),this._push()}},{key:"_push",value:function(){this.wrapper=document.createElement("div"),this.wrapper.className="vis-configuration-wrapper",this.container.appendChild(this.wrapper);for(var g=0;g<this.domElements.length;g++)this.wrapper.appendChild(this.domElements[g]);this._showPopupIfNeeded()}},{key:"_clean",value:function(){for(var g=0;g<this.domElements.length;g++)this.wrapper.removeChild(this.domElements[g]);void 0!==this.wrapper&&(this.container.removeChild(this.wrapper),this.wrapper=void 0),this.domElements=[],this._removePopup()}},{key:"_getValue",value:function(g){for(var t=this.moduleOptions,e=0;e<g.length;e++){if(void 0===t[g[e]]){t=void 0;break}t=t[g[e]]}return t}},{key:"_makeItem",value:function(g){if(!0===this.allowCreation){var t=document.createElement("div");t.className="vis-configuration vis-config-item vis-config-s"+g.length;for(var e=arguments.length,A=new Array(e>1?e-1:0),C=1;C<e;C++)A[C-1]=arguments[C];return Ec(A).call(A,(function(g){t.appendChild(g)})),this.domElements.push(t),this.domElements.length}return 0}},{key:"_makeHeader",value:function(g){var t=document.createElement("div");t.className="vis-configuration vis-config-header",t.innerText=g,this._makeItem([],t)}},{key:"_makeLabel",value:function(g,t){var e=arguments.length>2&&void 0!==arguments[2]&&arguments[2],A=document.createElement("div");if(A.className="vis-configuration vis-config-label vis-config-s"+t.length,!0===e){for(;A.firstChild;)A.removeChild(A.firstChild);A.appendChild(Ab("i","b",g))}else A.innerText=g+":";return A}},{key:"_makeDropdown",value:function(g,t,e){var A=document.createElement("select");A.className="vis-configuration vis-config-select";var C=0;void 0!==t&&-1!==$p(g).call(g,t)&&(C=$p(g).call(g,t));for(var I=0;I<g.length;I++){var i=document.createElement("option");i.value=g[I],I===C&&(i.selected="selected"),i.innerText=g[I],A.appendChild(i)}var o=this;A.onchange=function(){o._update(this.value,e)};var n=this._makeLabel(e[e.length-1],e);this._makeItem(e,n,A)}},{key:"_makeRange",value:function(g,t,e){var A=g[0],C=g[1],I=g[2],i=g[3],o=document.createElement("input");o.className="vis-configuration vis-config-range";try{o.type="range",o.min=C,o.max=I}catch(g){}o.step=i;var n="",r=0;if(void 0!==t){var s=1.2;t<0&&t*s<C?(o.min=Math.ceil(t*s),r=o.min,n="range increased"):t/s<C&&(o.min=Math.ceil(t/s),r=o.min,n="range increased"),t*s>I&&1!==I&&(o.max=Math.ceil(t*s),r=o.max,n="range increased"),o.value=t}else o.value=A;var a=document.createElement("input");a.className="vis-configuration vis-config-rangeinput",a.value=o.value;var d=this;o.onchange=function(){a.value=this.value,d._update(Number(this.value),e)},o.oninput=function(){a.value=this.value};var h=this._makeLabel(e[e.length-1],e),l=this._makeItem(e,h,o,a);""!==n&&this.popupHistory[l]!==r&&(this.popupHistory[l]=r,this._setupPopup(n,l))}},{key:"_makeButton",value:function(){var g=this;if(!0===this.options.showButton){var t=document.createElement("div");t.className="vis-configuration vis-config-button",t.innerText="generate options",t.onclick=function(){g._printOptions()},t.onmouseover=function(){t.className="vis-configuration vis-config-button hover"},t.onmouseout=function(){t.className="vis-configuration vis-config-button"},this.optionsContainer=document.createElement("div"),this.optionsContainer.className="vis-configuration vis-config-option-container",this.domElements.push(this.optionsContainer),this.domElements.push(t)}}},{key:"_setupPopup",value:function(g,t){var e=this;if(!0===this.initialized&&!0===this.allowCreation&&this.popupCounter<this.popupLimit){var A=document.createElement("div");A.id="vis-configuration-popup",A.className="vis-configuration-popup",A.innerText=g,A.onclick=function(){e._removePopup()},this.popupCounter+=1,this.popupDiv={html:A,index:t}}}},{key:"_removePopup",value:function(){void 0!==this.popupDiv.html&&(this.popupDiv.html.parentNode.removeChild(this.popupDiv.html),clearTimeout(this.popupDiv.hideTimeout),clearTimeout(this.popupDiv.deleteTimeout),this.popupDiv={})}},{key:"_showPopupIfNeeded",value:function(){var g=this;if(void 0!==this.popupDiv.html){var t=this.domElements[this.popupDiv.index].getBoundingClientRect();this.popupDiv.html.style.left=t.left+"px",this.popupDiv.html.style.top=t.top-30+"px",document.body.appendChild(this.popupDiv.html),this.popupDiv.hideTimeout=_f((function(){g.popupDiv.html.style.opacity=0}),1500),this.popupDiv.deleteTimeout=_f((function(){g._removePopup()}),1800)}}},{key:"_makeCheckbox",value:function(g,t,e){var A=document.createElement("input");A.type="checkbox",A.className="vis-configuration vis-config-checkbox",A.checked=g,void 0!==t&&(A.checked=t,t!==g&&("object"===kh(g)?t!==g.enabled&&this.changedOptions.push({path:e,value:t}):this.changedOptions.push({path:e,value:t})));var C=this;A.onchange=function(){C._update(this.checked,e)};var I=this._makeLabel(e[e.length-1],e);this._makeItem(e,I,A)}},{key:"_makeTextInput",value:function(g,t,e){var A=document.createElement("input");A.type="text",A.className="vis-configuration vis-config-text",A.value=t,t!==g&&this.changedOptions.push({path:e,value:t});var C=this;A.onchange=function(){C._update(this.value,e)};var I=this._makeLabel(e[e.length-1],e);this._makeItem(e,I,A)}},{key:"_makeColorField",value:function(g,t,e){var A=this,C=g[1],I=document.createElement("div");"none"!==(t=void 0===t?C:t)?(I.className="vis-configuration vis-config-colorBlock",I.style.backgroundColor=t):I.className="vis-configuration vis-config-colorBlock none",t=void 0===t?C:t,I.onclick=function(){A._showColorPicker(t,I,e)};var i=this._makeLabel(e[e.length-1],e);this._makeItem(e,i,I)}},{key:"_showColorPicker",value:function(g,t,e){var A=this;t.onclick=function(){},this.colorPicker.insertTo(t),this.colorPicker.show(),this.colorPicker.setColor(g),this.colorPicker.setUpdateCallback((function(g){var C="rgba("+g.r+","+g.g+","+g.b+","+g.a+")";t.style.backgroundColor=C,A._update(C,e)})),this.colorPicker.setCloseCallback((function(){t.onclick=function(){A._showColorPicker(g,t,e)}}))}},{key:"_handleObject",value:function(g){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],e=arguments.length>2&&void 0!==arguments[2]&&arguments[2],A=!1,C=Ap(this.options),I=!1;for(var i in g)if(Object.prototype.hasOwnProperty.call(g,i)){A=!0;var o=g[i],n=Gm(t,i);if("function"==typeof C&&!1===(A=C(i,t))&&!Vl(o)&&"string"!=typeof o&&"boolean"!=typeof o&&o instanceof Object&&(this.allowCreation=!1,A=this._handleObject(o,n,!0),this.allowCreation=!1===e),!1!==A){I=!0;var r=this._getValue(n);if(Vl(o))this._handleArray(o,r,n);else if("string"==typeof o)this._makeTextInput(o,r,n);else if("boolean"==typeof o)this._makeCheckbox(o,r,n);else if(o instanceof Object){if(!this.hideOption(t,i,this.moduleOptions))if(void 0!==o.enabled){var s=Gm(n,"enabled"),a=this._getValue(s);if(!0===a){var d=this._makeLabel(i,n,!0);this._makeItem(n,d),I=this._handleObject(o,n)||I}else this._makeCheckbox(o,a,n)}else{var h=this._makeLabel(i,n,!0);this._makeItem(n,h),I=this._handleObject(o,n)||I}}else console.error("dont know how to handle",o,i,n)}}return I}},{key:"_handleArray",value:function(g,t,e){"string"==typeof g[0]&&"color"===g[0]?(this._makeColorField(g,t,e),g[1]!==t&&this.changedOptions.push({path:e,value:t})):"string"==typeof g[0]?(this._makeDropdown(g,t,e),g[0]!==t&&this.changedOptions.push({path:e,value:t})):"number"==typeof g[0]&&(this._makeRange(g,t,e),g[0]!==t&&this.changedOptions.push({path:e,value:Number(t)}))}},{key:"_update",value:function(g,t){var e=this._constructOptions(g,t);this.parent.body&&this.parent.body.emitter&&this.parent.body.emitter.emit&&this.parent.body.emitter.emit("configChange",e),this.initialized=!0,this.parent.setOptions(e)}},{key:"_constructOptions",value:function(g,t){var e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},A=e;g="false"!==(g="true"===g||g)&&g;for(var C=0;C<t.length;C++)"global"!==t[C]&&(void 0===A[t[C]]&&(A[t[C]]={}),C!==t.length-1?A=A[t[C]]:A[t[C]]=g);return e}},{key:"_printOptions",value:function(){for(var g=this.getOptions();this.optionsContainer.firstChild;)this.optionsContainer.removeChild(this.optionsContainer.firstChild);this.optionsContainer.appendChild(Ab("pre","const options = "+xf(g,null,2)))}},{key:"getOptions",value:function(){for(var g={},t=0;t<this.changedOptions.length;t++)this._constructOptions(this.changedOptions[t].value,this.changedOptions[t].path,g);return g}}]),g}(),ib=function(){function g(t,e){cd(this,g),this.container=t,this.overflowMethod=e||"cap",this.x=0,this.y=0,this.padding=5,this.hidden=!1,this.frame=document.createElement("div"),this.frame.className="vis-tooltip",this.container.appendChild(this.frame)}return Bh(g,[{key:"setPosition",value:function(g,t){this.x=Gp(g),this.y=Gp(t)}},{key:"setText",value:function(g){if(g instanceof Element){for(;this.frame.firstChild;)this.frame.removeChild(this.frame.firstChild);this.frame.appendChild(g)}else this.frame.innerText=g}},{key:"show",value:function(g){if(void 0===g&&(g=!0),!0===g){var t=this.frame.clientHeight,e=this.frame.clientWidth,A=this.frame.parentNode.clientHeight,C=this.frame.parentNode.clientWidth,I=0,i=0;if("flip"==this.overflowMethod){var o=!1,n=!0;this.y-t<this.padding&&(n=!1),this.x+e>C-this.padding&&(o=!0),I=o?this.x-e:this.x,i=n?this.y-t:this.y}else(i=this.y-t)+t+this.padding>A&&(i=A-t-this.padding),i<this.padding&&(i=this.padding),(I=this.x)+e+this.padding>C&&(I=C-e-this.padding),I<this.padding&&(I=this.padding);this.frame.style.left=I+"px",this.frame.style.top=i+"px",this.frame.style.visibility="visible",this.hidden=!1}else this.hide()}},{key:"hide",value:function(){this.hidden=!0,this.frame.style.left="0",this.frame.style.top="0",this.frame.style.visibility="hidden"}},{key:"destroy",value:function(){this.frame.parentNode.removeChild(this.frame)}}]),g}(),ob=!1,nb="background: #FFeeee; color: #dd0000",rb=function(){function g(){cd(this,g)}return Bh(g,null,[{key:"validate",value:function(t,e,A){ob=!1,Cb=e;var C=e;return void 0!==A&&(C=e[A]),g.parse(t,C,[]),ob}},{key:"parse",value:function(t,e,A){for(var C in t)Object.prototype.hasOwnProperty.call(t,C)&&g.check(C,t,e,A)}},{key:"check",value:function(t,e,A,C){if(void 0!==A[t]||void 0!==A.__any__){var I=t,i=!0;void 0===A[t]&&void 0!==A.__any__&&(I="__any__",i="object"===g.getType(e[t]));var o=A[I];i&&void 0!==o.__type__&&(o=o.__type__),g.checkFields(t,e,A,I,o,C)}else g.getSuggestion(t,A,C)}},{key:"checkFields",value:function(t,e,A,C,I,i){var o=function(e){console.error("%c"+e+g.printLocation(i,t),nb)},n=g.getType(e[t]),r=I[n];void 0!==r?"array"===g.getType(r)&&-1===$p(r).call(r,e[t])?(o('Invalid option detected in "'+t+'". Allowed values are:'+g.print(r)+' not "'+e[t]+'". '),ob=!0):"object"===n&&"__any__"!==C&&(i=Gm(i,t),g.parse(e[t],A[C],i)):void 0===I.any&&(o('Invalid type received for "'+t+'". Expected: '+g.print(Cc(I))+". Received ["+n+'] "'+e[t]+'"'),ob=!0)}},{key:"getType",value:function(g){var t=kh(g);return"object"===t?null===g?"null":g instanceof Boolean?"boolean":g instanceof Number?"number":g instanceof String?"string":Vl(g)?"array":g instanceof Date?"date":void 0!==g.nodeType?"dom":!0===g._isAMomentObject?"moment":"object":"number"===t?"number":"boolean"===t?"boolean":"string"===t?"string":void 0===t?"undefined":t}},{key:"getSuggestion",value:function(t,e,A){var C,I=g.findInOptions(t,e,A,!1),i=g.findInOptions(t,Cb,[],!0);C=void 0!==I.indexMatch?" in "+g.printLocation(I.path,t,"")+'Perhaps it was incomplete? Did you mean: "'+I.indexMatch+'"?\n\n':i.distance<=4&&I.distance>i.distance?" in "+g.printLocation(I.path,t,"")+"Perhaps it was misplaced? Matching option found at: "+g.printLocation(i.path,i.closestMatch,""):I.distance<=8?'. Did you mean "'+I.closestMatch+'"?'+g.printLocation(I.path,t):". Did you mean one of these: "+g.print(Cc(e))+g.printLocation(A,t),console.error('%cUnknown option detected: "'+t+'"'+C,nb),ob=!0}},{key:"findInOptions",value:function(t,e,A){var C,I=arguments.length>3&&void 0!==arguments[3]&&arguments[3],i=1e9,o="",n=[],r=t.toLowerCase(),s=void 0;for(var a in e){var d=void 0;if(void 0!==e[a].__type__&&!0===I){var h=g.findInOptions(t,e[a],Gm(A,a));i>h.distance&&(o=h.closestMatch,n=h.path,i=h.distance,s=h.indexMatch)}else{var l;-1!==$p(l=a.toLowerCase()).call(l,r)&&(s=a),i>(d=g.levenshteinDistance(t,a))&&(o=a,n=Sl(C=A).call(C),i=d)}}return{closestMatch:o,path:n,distance:i,indexMatch:s}}},{key:"printLocation",value:function(g,t){for(var e="\n\n"+(arguments.length>2&&void 0!==arguments[2]?arguments[2]:"Problem value found at: \n")+"options = {\n",A=0;A<g.length;A++){for(var C=0;C<A+1;C++)e+=" ";e+=g[A]+": {\n"}for(var I=0;I<g.length+1;I++)e+=" ";e+=t+"\n";for(var i=0;i<g.length+1;i++){for(var o=0;o<g.length-i;o++)e+=" ";e+="}\n"}return e+"\n\n"}},{key:"print",value:function(g){return xf(g).replace(/(")|(\[)|(\])|(,"__type__")/g,"").replace(/(,)/g,", ")}},{key:"levenshteinDistance",value:function(g,t){if(0===g.length)return t.length;if(0===t.length)return g.length;var e,A,C=[];for(e=0;e<=t.length;e++)C[e]=[e];for(A=0;A<=g.length;A++)C[0][A]=A;for(e=1;e<=t.length;e++)for(A=1;A<=g.length;A++)t.charAt(e-1)==g.charAt(A-1)?C[e][A]=C[e-1][A-1]:C[e][A]=Math.min(C[e-1][A-1]+1,Math.min(C[e][A-1]+1,C[e-1][A]+1));return C[t.length][g.length]}}]),g}(),sb=Em,ab=Ib,db=km,hb=ib,lb=nb,cb=rb;function ub(g){return mb=g,function(){var g={};bb=0,void(wb=mb.charAt(0)),Bb(),"strict"===xb&&(g.strict=!0,Bb());"graph"!==xb&&"digraph"!==xb||(g.type=xb,Bb());kb===vb.IDENTIFIER&&(g.id=xb,Bb());if("{"!=xb)throw jb("Angle bracket { expected");if(Bb(),zb(g),"}"!=xb)throw jb("Angle bracket } expected");if(Bb(),""!==xb)throw jb("End of file expected");return Bb(),delete g.node,delete g.edge,delete g.graph,g}()}var pb={fontsize:"font.size",fontcolor:"font.color",labelfontcolor:"font.color",fontname:"font.face",color:["color.border","color.background"],fillcolor:"color.background",tooltip:"title",labeltooltip:"title"},fb=pf(pb);fb.color="color.color",fb.style="dashes";var vb={NULL:0,DELIMITER:1,IDENTIFIER:2,UNKNOWN:3},yb={"{":!0,"}":!0,"[":!0,"]":!0,";":!0,"=":!0,",":!0,"->":!0,"--":!0},mb="",bb=0,wb="",xb="",kb=vb.NULL;function Eb(){bb++,wb=mb.charAt(bb)}function Ob(){return mb.charAt(bb+1)}function Tb(g){var t=g.charCodeAt(0);return t<47?35===t||46===t:t<59?t>47:t<91?t>64:t<96?95===t:t<123&&t>96}function Db(g,t){if(g||(g={}),t)for(var e in t)t.hasOwnProperty(e)&&(g[e]=t[e]);return g}function Nb(g,t,e){for(var A=t.split("."),C=g;A.length;){var I=A.shift();A.length?(C[I]||(C[I]={}),C=C[I]):C[I]=e}}function Rb(g,t){for(var e,A,C=null,I=[g],i=g;i.parent;)I.push(i.parent),i=i.parent;if(i.nodes)for(e=0,A=i.nodes.length;e<A;e++)if(t.id===i.nodes[e].id){C=i.nodes[e];break}for(C||(C={id:t.id},g.node&&(C.attr=Db(C.attr,g.node))),e=I.length-1;e>=0;e--){var o,n=I[e];n.nodes||(n.nodes=[]),-1===$p(o=n.nodes).call(o,C)&&n.nodes.push(C)}t.attr&&(C.attr=Db(C.attr,t.attr))}function Pb(g,t){if(g.edges||(g.edges=[]),g.edges.push(t),g.edge){var e=Db({},g.edge);t.attr=Db(e,t.attr)}}function Mb(g,t,e,A,C){var I={from:t,to:e,type:A};return g.edge&&(I.attr=Db({},g.edge)),I.attr=Db(I.attr||{},C),null!=C&&C.hasOwnProperty("arrows")&&null!=C.arrows&&(I.arrows={to:{enabled:!0,type:C.arrows.type}},C.arrows=null),I}function Bb(){for(kb=vb.NULL,xb="";" "===wb||"\t"===wb||"\n"===wb||"\r"===wb;)Eb();do{var g=!1;if("#"===wb){for(var t=bb-1;" "===mb.charAt(t)||"\t"===mb.charAt(t);)t--;if("\n"===mb.charAt(t)||""===mb.charAt(t)){for(;""!=wb&&"\n"!=wb;)Eb();g=!0}}if("/"===wb&&"/"===Ob()){for(;""!=wb&&"\n"!=wb;)Eb();g=!0}if("/"===wb&&"*"===Ob()){for(;""!=wb;){if("*"===wb&&"/"===Ob()){Eb(),Eb();break}Eb()}g=!0}for(;" "===wb||"\t"===wb||"\n"===wb||"\r"===wb;)Eb()}while(g);if(""!==wb){var e=wb+Ob();if(yb[e])return kb=vb.DELIMITER,xb=e,Eb(),void Eb();if(yb[wb])return kb=vb.DELIMITER,xb=wb,void Eb();if(Tb(wb)||"-"===wb){for(xb+=wb,Eb();Tb(wb);)xb+=wb,Eb();return"false"===xb?xb=!1:"true"===xb?xb=!0:isNaN(Number(xb))||(xb=Number(xb)),void(kb=vb.IDENTIFIER)}if('"'===wb){for(Eb();""!=wb&&('"'!=wb||'"'===wb&&'"'===Ob());)'"'===wb?(xb+=wb,Eb()):"\\"===wb&&"n"===Ob()?(xb+="\n",Eb()):xb+=wb,Eb();if('"'!=wb)throw jb('End of string " expected');return Eb(),void(kb=vb.IDENTIFIER)}for(kb=vb.UNKNOWN;""!=wb;)xb+=wb,Eb();throw new SyntaxError('Syntax error in part "'+Lb(xb,30)+'"')}kb=vb.DELIMITER}function zb(g){for(;""!==xb&&"}"!=xb;)Sb(g),";"===xb&&Bb()}function Sb(g){var t=Zb(g);if(t)Fb(g,t);else{var e=function(g){if("node"===xb)return Bb(),g.node=Gb(),"node";if("edge"===xb)return Bb(),g.edge=Gb(),"edge";if("graph"===xb)return Bb(),g.graph=Gb(),"graph";return null}(g);if(!e){if(kb!=vb.IDENTIFIER)throw jb("Identifier expected");var A=xb;if(Bb(),"="===xb){if(Bb(),kb!=vb.IDENTIFIER)throw jb("Identifier expected");g[A]=xb,Bb()}else!function(g,t){var e={id:t},A=Gb();A&&(e.attr=A);Rb(g,e),Fb(g,t)}(g,A)}}}function Zb(g){var t=null;if("subgraph"===xb&&((t={}).type="subgraph",Bb(),kb===vb.IDENTIFIER&&(t.id=xb,Bb())),"{"===xb){if(Bb(),t||(t={}),t.parent=g,t.node=g.node,t.edge=g.edge,t.graph=g.graph,zb(t),"}"!=xb)throw jb("Angle bracket } expected");Bb(),delete t.node,delete t.edge,delete t.graph,delete t.parent,g.subgraphs||(g.subgraphs=[]),g.subgraphs.push(t)}return t}function Fb(g,t){for(;"->"===xb||"--"===xb;){var e,A=xb;Bb();var C=Zb(g);if(C)e=C;else{if(kb!=vb.IDENTIFIER)throw jb("Identifier or subgraph expected");Rb(g,{id:e=xb}),Bb()}Pb(g,Mb(g,t,e,A,Gb())),t=e}}function Gb(){for(var g,t,e=null,A={dashed:!0,solid:!1,dotted:[1,5]},C={dot:"circle",box:"box",crow:"crow",curve:"curve",icurve:"inv_curve",normal:"triangle",inv:"inv_triangle",diamond:"diamond",tee:"bar",vee:"vee"},I=new Array,i=new Array;"["===xb;){for(Bb(),e={};""!==xb&&"]"!=xb;){if(kb!=vb.IDENTIFIER)throw jb("Attribute name expected");var o=xb;if(Bb(),"="!=xb)throw jb("Equal sign = expected");if(Bb(),kb!=vb.IDENTIFIER)throw jb("Attribute value expected");var n=xb;"style"===o&&(n=A[n]),"arrowhead"===o&&(o="arrows",n={to:{enabled:!0,type:C[n]}}),"arrowtail"===o&&(o="arrows",n={from:{enabled:!0,type:C[n]}}),I.push({attr:e,name:o,value:n}),i.push(o),Bb(),","==xb&&Bb()}if("]"!=xb)throw jb("Bracket ] expected");Bb()}if(ju(i).call(i,"dir")){var r={arrows:{}};for(g=0;g<I.length;g++)if("arrows"===I[g].name)if(null!=I[g].value.to)r.arrows.to=g;else{if(null==I[g].value.from)throw jb("Invalid value of arrows");r.arrows.from=g}else"dir"===I[g].name&&(r.dir=g);var s,a,d=I[r.dir].value;if(!ju(i).call(i,"arrows"))if("both"===d)I.push({attr:I[r.dir].attr,name:"arrows",value:{to:{enabled:!0}}}),r.arrows.to=I.length-1,I.push({attr:I[r.dir].attr,name:"arrows",value:{from:{enabled:!0}}}),r.arrows.from=I.length-1;else if("forward"===d)I.push({attr:I[r.dir].attr,name:"arrows",value:{to:{enabled:!0}}}),r.arrows.to=I.length-1;else if("back"===d)I.push({attr:I[r.dir].attr,name:"arrows",value:{from:{enabled:!0}}}),r.arrows.from=I.length-1;else{if("none"!==d)throw jb('Invalid dir type "'+d+'"');I.push({attr:I[r.dir].attr,name:"arrows",value:""}),r.arrows.to=I.length-1}if("both"===d)r.arrows.to&&r.arrows.from?(a=I[r.arrows.to].value.to.type,s=I[r.arrows.from].value.from.type,I[r.arrows.to]={attr:I[r.arrows.to].attr,name:I[r.arrows.to].name,value:{to:{enabled:!0,type:a},from:{enabled:!0,type:s}}},cu(I).call(I,r.arrows.from,1)):r.arrows.to?(a=I[r.arrows.to].value.to.type,s="arrow",I[r.arrows.to]={attr:I[r.arrows.to].attr,name:I[r.arrows.to].name,value:{to:{enabled:!0,type:a},from:{enabled:!0,type:s}}}):r.arrows.from&&(a="arrow",s=I[r.arrows.from].value.from.type,I[r.arrows.from]={attr:I[r.arrows.from].attr,name:I[r.arrows.from].name,value:{to:{enabled:!0,type:a},from:{enabled:!0,type:s}}});else if("back"===d)r.arrows.to&&r.arrows.from?(a="",s=I[r.arrows.from].value.from.type,I[r.arrows.from]={attr:I[r.arrows.from].attr,name:I[r.arrows.from].name,value:{to:{enabled:!0,type:a},from:{enabled:!0,type:s}}}):r.arrows.to?(a="",s="arrow",r.arrows.from=r.arrows.to,I[r.arrows.from]={attr:I[r.arrows.from].attr,name:I[r.arrows.from].name,value:{to:{enabled:!0,type:a},from:{enabled:!0,type:s}}}):r.arrows.from&&(a="",s=I[r.arrows.from].value.from.type,I[r.arrows.to]={attr:I[r.arrows.from].attr,name:I[r.arrows.from].name,value:{to:{enabled:!0,type:a},from:{enabled:!0,type:s}}}),I[r.arrows.from]={attr:I[r.arrows.from].attr,name:I[r.arrows.from].name,value:{from:{enabled:!0,type:I[r.arrows.from].value.from.type}}};else if("none"===d){var h;I[h=r.arrows.to?r.arrows.to:r.arrows.from]={attr:I[h].attr,name:I[h].name,value:""}}else{if("forward"!==d)throw jb('Invalid dir type "'+d+'"');r.arrows.to&&r.arrows.from||r.arrows.to?(a=I[r.arrows.to].value.to.type,s="",I[r.arrows.to]={attr:I[r.arrows.to].attr,name:I[r.arrows.to].name,value:{to:{enabled:!0,type:a},from:{enabled:!0,type:s}}}):r.arrows.from&&(a="arrow",s="",r.arrows.to=r.arrows.from,I[r.arrows.to]={attr:I[r.arrows.to].attr,name:I[r.arrows.to].name,value:{to:{enabled:!0,type:a},from:{enabled:!0,type:s}}}),I[r.arrows.to]={attr:I[r.arrows.to].attr,name:I[r.arrows.to].name,value:{to:{enabled:!0,type:I[r.arrows.to].value.to.type}}}}cu(I).call(I,r.dir,1)}if(ju(i).call(i,"penwidth")){var l=[];for(t=I.length,g=0;g<t;g++)"width"!==I[g].name&&("penwidth"===I[g].name&&(I[g].name="width"),l.push(I[g]));I=l}for(t=I.length,g=0;g<t;g++)Nb(I[g].attr,I[g].name,I[g].value);return e}function jb(g){return new SyntaxError(g+', got "'+Lb(xb,30)+'" (char '+bb+")")}function Lb(g,t){return g.length<=t?g:g.substr(0,27)+"..."}function Vb(g,t,e){for(var A=t.split("."),C=A.pop(),I=g,i=0;i<A.length;i++){var o=A[i];o in I||(I[o]={}),I=I[o]}return I[C]=e,g}function Yb(g,t){var e={};for(var A in g)if(g.hasOwnProperty(A)){var C=t[A];Vl(C)?Ec(C).call(C,(function(t){Vb(e,t,g[A])})):Vb(e,"string"==typeof C?C:A,g[A])}return e}function Wb(g){var t,e=ub(g),A={nodes:[],edges:[],options:{}};e.nodes&&Ec(t=e.nodes).call(t,(function(g){var t={id:g.id,label:String(g.label||g.id)};Db(t,Yb(g.attr,pb)),t.image&&(t.shape="image"),A.nodes.push(t)}));if(e.edges){var C,I=function(g){var t={from:g.from,to:g.to};return Db(t,Yb(g.attr,fb)),null==t.arrows&&"->"===g.type&&(t.arrows="to"),t};Ec(C=e.edges).call(C,(function(g){var t,e,C,i,o,n,r;(t=g.from instanceof Object?g.from.nodes:{id:g.from},e=g.to instanceof Object?g.to.nodes:{id:g.to},g.from instanceof Object&&g.from.edges)&&Ec(C=g.from.edges).call(C,(function(g){var t=I(g);A.edges.push(t)}));(o=e,n=function(t,e){var C=Mb(A,t.id,e.id,g.type,g.attr),i=I(C);A.edges.push(i)},Vl(i=t)?Ec(i).call(i,(function(g){Vl(o)?Ec(o).call(o,(function(t){n(g,t)})):n(g,o)})):Vl(o)?Ec(o).call(o,(function(g){n(i,g)})):n(i,o),g.to instanceof Object&&g.to.edges)&&Ec(r=g.to.edges).call(r,(function(g){var t=I(g);A.edges.push(t)}))}))}return e.attr&&(A.options=e.attr),A}var Qb=Object.freeze({__proto__:null,DOTToGraph:Wb,parseDOT:ub});function Ub(g,t){var e,A={edges:{inheritColor:!1},nodes:{fixed:!1,parseColor:!1}};null!=t&&(null!=t.fixed&&(A.nodes.fixed=t.fixed),null!=t.parseColor&&(A.nodes.parseColor=t.parseColor),null!=t.inheritColor&&(A.edges.inheritColor=t.inheritColor));var C=g.edges,I=ql(C).call(C,(function(g){var t={from:g.source,id:g.id,to:g.target};return null!=g.attributes&&(t.attributes=g.attributes),null!=g.label&&(t.label=g.label),null!=g.attributes&&null!=g.attributes.title&&(t.title=g.attributes.title),"Directed"===g.type&&(t.arrows="to"),g.color&&!1===A.edges.inheritColor&&(t.color=g.color),t}));return{nodes:ql(e=g.nodes).call(e,(function(g){var t={id:g.id,fixed:A.nodes.fixed&&null!=g.x&&null!=g.y};return null!=g.attributes&&(t.attributes=g.attributes),null!=g.label&&(t.label=g.label),null!=g.size&&(t.size=g.size),null!=g.attributes&&null!=g.attributes.title&&(t.title=g.attributes.title),null!=g.title&&(t.title=g.title),null!=g.x&&(t.x=g.x),null!=g.y&&(t.y=g.y),null!=g.color&&(!0===A.nodes.parseColor?t.color=g.color:t.color={background:g.color,border:g.color,highlight:{background:g.color,border:g.color},hover:{background:g.color,border:g.color}}),t})),edges:I}}var _b=Object.freeze({__proto__:null,parseGephi:Ub}),Hb=Object.freeze({__proto__:null,cn:{addDescription:"单击空白处放置新节点。",addEdge:"添加连接线",addNode:"添加节点",back:"返回",close:"關閉",createEdgeError:"无法将连接线连接到群集。",del:"删除选定",deleteClusterError:"无法删除群集。",edgeDescription:"单击某个节点并将该连接线拖动到另一个节点以连接它们。",edit:"编辑",editClusterError:"无法编辑群集。",editEdge:"编辑连接线",editEdgeDescription:"单击控制节点并将它们拖到节点上连接。",editNode:"编辑节点"},cs:{addDescription:"Kluknutím do prázdného prostoru můžete přidat nový vrchol.",addEdge:"Přidat hranu",addNode:"Přidat vrchol",back:"Zpět",close:"Zavřít",createEdgeError:"Nelze připojit hranu ke shluku.",del:"Smazat výběr",deleteClusterError:"Nelze mazat shluky.",edgeDescription:"Přetažením z jednoho vrcholu do druhého můžete spojit tyto vrcholy novou hranou.",edit:"Upravit",editClusterError:"Nelze upravovat shluky.",editEdge:"Upravit hranu",editEdgeDescription:"Přetažením kontrolního vrcholu hrany ji můžete připojit k jinému vrcholu.",editNode:"Upravit vrchol"},de:{addDescription:"Klicke auf eine freie Stelle, um einen neuen Knoten zu plazieren.",addEdge:"Kante hinzufügen",addNode:"Knoten hinzufügen",back:"Zurück",close:"Schließen",createEdgeError:"Es ist nicht möglich, Kanten mit Clustern zu verbinden.",del:"Lösche Auswahl",deleteClusterError:"Cluster können nicht gelöscht werden.",edgeDescription:"Klicke auf einen Knoten und ziehe die Kante zu einem anderen Knoten, um diese zu verbinden.",edit:"Editieren",editClusterError:"Cluster können nicht editiert werden.",editEdge:"Kante editieren",editEdgeDescription:"Klicke auf die Verbindungspunkte und ziehe diese auf einen Knoten, um sie zu verbinden.",editNode:"Knoten editieren"},en:{addDescription:"Click in an empty space to place a new node.",addEdge:"Add Edge",addNode:"Add Node",back:"Back",close:"Close",createEdgeError:"Cannot link edges to a cluster.",del:"Delete selected",deleteClusterError:"Clusters cannot be deleted.",edgeDescription:"Click on a node and drag the edge to another node to connect them.",edit:"Edit",editClusterError:"Clusters cannot be edited.",editEdge:"Edit Edge",editEdgeDescription:"Click on the control points and drag them to a node to connect to it.",editNode:"Edit Node"},es:{addDescription:"Haga clic en un lugar vacío para colocar un nuevo nodo.",addEdge:"Añadir arista",addNode:"Añadir nodo",back:"Atrás",close:"Cerrar",createEdgeError:"No se puede conectar una arista a un grupo.",del:"Eliminar selección",deleteClusterError:"No es posible eliminar grupos.",edgeDescription:"Haga clic en un nodo y arrastre la arista hacia otro nodo para conectarlos.",edit:"Editar",editClusterError:"No es posible editar grupos.",editEdge:"Editar arista",editEdgeDescription:"Haga clic en un punto de control y arrastrelo a un nodo para conectarlo.",editNode:"Editar nodo"},fr:{addDescription:"Cliquez dans un endroit vide pour placer un nœud.",addEdge:"Ajouter un lien",addNode:"Ajouter un nœud",back:"Retour",close:"Fermer",createEdgeError:"Impossible de créer un lien vers un cluster.",del:"Effacer la sélection",deleteClusterError:"Les clusters ne peuvent pas être effacés.",edgeDescription:"Cliquez sur un nœud et glissez le lien vers un autre nœud pour les connecter.",edit:"Éditer",editClusterError:"Les clusters ne peuvent pas être édités.",editEdge:"Éditer le lien",editEdgeDescription:"Cliquez sur les points de contrôle et glissez-les pour connecter un nœud.",editNode:"Éditer le nœud"},it:{addDescription:"Clicca per aggiungere un nuovo nodo",addEdge:"Aggiungi un vertice",addNode:"Aggiungi un nodo",back:"Indietro",close:"Chiudere",createEdgeError:"Non si possono collegare vertici ad un cluster",del:"Cancella la selezione",deleteClusterError:"I cluster non possono essere cancellati",edgeDescription:"Clicca su un nodo e trascinalo ad un altro nodo per connetterli.",edit:"Modifica",editClusterError:"I clusters non possono essere modificati.",editEdge:"Modifica il vertice",editEdgeDescription:"Clicca sui Punti di controllo e trascinali ad un nodo per connetterli.",editNode:"Modifica il nodo"},nl:{addDescription:"Klik op een leeg gebied om een nieuwe node te maken.",addEdge:"Link toevoegen",addNode:"Node toevoegen",back:"Terug",close:"Sluiten",createEdgeError:"Kan geen link maken naar een cluster.",del:"Selectie verwijderen",deleteClusterError:"Clusters kunnen niet worden verwijderd.",edgeDescription:"Klik op een node en sleep de link naar een andere node om ze te verbinden.",edit:"Wijzigen",editClusterError:"Clusters kunnen niet worden aangepast.",editEdge:"Link wijzigen",editEdgeDescription:"Klik op de verbindingspunten en sleep ze naar een node om daarmee te verbinden.",editNode:"Node wijzigen"},pt:{addDescription:"Clique em um espaço em branco para adicionar um novo nó",addEdge:"Adicionar aresta",addNode:"Adicionar nó",back:"Voltar",close:"Fechar",createEdgeError:"Não foi possível linkar arestas a um cluster.",del:"Remover selecionado",deleteClusterError:"Clusters não puderam ser removidos.",edgeDescription:"Clique em um nó e arraste a aresta até outro nó para conectá-los",edit:"Editar",editClusterError:"Clusters não puderam ser editados.",editEdge:"Editar aresta",editEdgeDescription:"Clique nos pontos de controle e os arraste para um nó para conectá-los",editNode:"Editar nó"},ru:{addDescription:"Кликните в свободное место, чтобы добавить новый узел.",addEdge:"Добавить ребро",addNode:"Добавить узел",back:"Назад",close:"Закрывать",createEdgeError:"Невозможно соединить ребра в кластер.",del:"Удалить выбранное",deleteClusterError:"Кластеры не могут быть удалены",edgeDescription:"Кликните на узел и протяните ребро к другому узлу, чтобы соединить их.",edit:"Редактировать",editClusterError:"Кластеры недоступны для редактирования.",editEdge:"Редактировать ребро",editEdgeDescription:"Кликните на контрольные точки и перетащите их в узел, чтобы подключиться к нему.",editNode:"Редактировать узел"},uk:{addDescription:"Kлікніть на вільне місце, щоб додати новий вузол.",addEdge:"Додати край",addNode:"Додати вузол",back:"Назад",close:"Закрити",createEdgeError:"Не можливо об'єднати краї в групу.",del:"Видалити обране",deleteClusterError:"Групи не можуть бути видалені.",edgeDescription:"Клікніть на вузол і перетягніть край до іншого вузла, щоб їх з'єднати.",edit:"Редагувати",editClusterError:"Групи недоступні для редагування.",editEdge:"Редагувати край",editEdgeDescription:"Клікніть на контрольні точки і перетягніть їх у вузол, щоб підключитися до нього.",editNode:"Редагувати вузол"}});var Kb=function(){function g(){cd(this,g),this.NUM_ITERATIONS=4,this.image=new Image,this.canvas=document.createElement("canvas")}return Bh(g,[{key:"init",value:function(){if(!this.initialized()){this.src=this.image.src;var g=this.image.width,t=this.image.height;this.width=g,this.height=t;var e=Math.floor(t/2),A=Math.floor(t/4),C=Math.floor(t/8),I=Math.floor(t/16),i=Math.floor(g/2),o=Math.floor(g/4),n=Math.floor(g/8),r=Math.floor(g/16);this.canvas.width=3*o,this.canvas.height=e,this.coordinates=[[0,0,i,e],[i,0,o,A],[i,A,n,C],[5*n,A,r,I]],this._fillMipMap()}}},{key:"initialized",value:function(){return void 0!==this.coordinates}},{key:"_fillMipMap",value:function(){var g=this.canvas.getContext("2d"),t=this.coordinates[0];g.drawImage(this.image,t[0],t[1],t[2],t[3]);for(var e=1;e<this.NUM_ITERATIONS;e++){var A=this.coordinates[e-1],C=this.coordinates[e];g.drawImage(this.canvas,A[0],A[1],A[2],A[3],C[0],C[1],C[2],C[3])}}},{key:"drawImageAtPosition",value:function(g,t,e,A,C,I){if(this.initialized())if(t>2){t*=.5;for(var i=0;t>2&&i<this.NUM_ITERATIONS;)t*=.5,i+=1;i>=this.NUM_ITERATIONS&&(i=this.NUM_ITERATIONS-1);var o=this.coordinates[i];g.drawImage(this.canvas,o[0],o[1],o[2],o[3],e,A,C,I)}else g.drawImage(this.image,e,A,C,I)}}]),g}(),Xb=function(){function g(t){cd(this,g),this.images={},this.imageBroken={},this.callback=t}return Bh(g,[{key:"_tryloadBrokenUrl",value:function(g,t,e){void 0!==g&&void 0!==e&&(void 0!==t?(e.image.onerror=function(){console.error("Could not load brokenImage:",t)},e.image.src=t):console.warn("No broken url image defined"))}},{key:"_redrawWithImage",value:function(g){this.callback&&this.callback(g)}},{key:"load",value:function(g,t){var e=this,A=this.images[g];if(A)return A;var C=new Kb;return this.images[g]=C,C.image.onload=function(){e._fixImageCoordinates(C.image),C.init(),e._redrawWithImage(C)},C.image.onerror=function(){console.error("Could not load image:",g),e._tryloadBrokenUrl(g,t,C)},C.image.src=g,C}},{key:"_fixImageCoordinates",value:function(g){0===g.width&&(document.body.appendChild(g),g.width=g.offsetWidth,g.height=g.offsetHeight,document.body.removeChild(g))}}]),g}(),Jb={},qb={get exports(){return Jb},set exports(g){Jb=g}},$b={},gw={get exports(){return $b},set exports(g){$b=g}},tw=o((function(){if("function"==typeof ArrayBuffer){var g=new ArrayBuffer(8);Object.isExtensible(g)&&Object.defineProperty(g,"a",{value:8})}})),ew=o,Aw=eg,Cw=b,Iw=tw,iw=Object.isExtensible,ow=ew((function(){iw(1)}))||Iw?function(g){return!!Aw(g)&&((!Iw||"ArrayBuffer"!=Cw(g))&&(!iw||iw(g)))}:iw,nw=!o((function(){return Object.isExtensible(Object.preventExtensions({}))})),rw=De,sw=f,aw=_e,dw=eg,hw=$g,lw=qt.f,cw=kn,uw=Tn,pw=ow,fw=nw,vw=!1,yw=Ct("meta"),mw=0,bw=function(g){lw(g,yw,{value:{objectID:"O"+mw++,weakData:{}}})},ww=gw.exports={enable:function(){ww.enable=function(){},vw=!0;var g=cw.f,t=sw([].splice),e={};e[yw]=1,g(e).length&&(cw.f=function(e){for(var A=g(e),C=0,I=A.length;C<I;C++)if(A[C]===yw){t(A,C,1);break}return A},rw({target:"Object",stat:!0,forced:!0},{getOwnPropertyNames:uw.f}))},fastKey:function(g,t){if(!dw(g))return"symbol"==typeof g?g:("string"==typeof g?"S":"P")+g;if(!hw(g,yw)){if(!pw(g))return"F";if(!t)return"E";bw(g)}return g[yw].objectID},getWeakData:function(g,t){if(!hw(g,yw)){if(!pw(g))return!0;if(!t)return!1;bw(g)}return g[yw].weakData},onFreeze:function(g){return fw&&vw&&pw(g)&&!hw(g,yw)&&bw(g),g}};aw[yw]=!0;var xw=Jt,kw=B,Ew=Ae,Ow=Tg,Tw=Xi,Dw=Le,Nw=rg,Rw=Po,Pw=ko,Mw=Wi,Bw=TypeError,zw=function(g,t){this.stopped=g,this.result=t},Sw=zw.prototype,Zw=function(g,t,e){var A,C,I,i,o,n,r,s=e&&e.that,a=!(!e||!e.AS_ENTRIES),d=!(!e||!e.IS_RECORD),h=!(!e||!e.IS_ITERATOR),l=!(!e||!e.INTERRUPTED),c=xw(t,s),u=function(g){return A&&Mw(A,"normal",g),new zw(!0,g)},p=function(g){return a?(Ew(g),l?c(g[0],g[1],u):c(g[0],g[1])):l?c(g,u):c(g)};if(d)A=g.iterator;else if(h)A=g;else{if(!(C=Pw(g)))throw Bw(Ow(g)+" is not iterable");if(Tw(C)){for(I=0,i=Dw(g);i>I;I++)if((o=p(g[I]))&&Nw(Sw,o))return o;return new zw(!1)}A=Rw(g,C)}for(n=d?g.next:A.next;!(r=kw(n,A)).done;){try{o=p(r.value)}catch(g){Mw(A,"throw",g)}if("object"==typeof o&&o&&Nw(Sw,o))return o}return new zw(!1)},Fw=rg,Gw=TypeError,jw=function(g,t){if(Fw(t,g))return g;throw Gw("Incorrect invocation")},Lw=De,Vw=i,Yw=$b,Ww=o,Qw=pe,Uw=Zw,_w=jw,Hw=D,Kw=eg,Xw=gi,Jw=qt.f,qw=ur.forEach,$w=R,gx=UC.set,tx=UC.getterFor,ex=function(g,t,e){var A,C=-1!==g.indexOf("Map"),I=-1!==g.indexOf("Weak"),i=C?"set":"add",o=Vw[g],n=o&&o.prototype,r={};if($w&&Hw(o)&&(I||n.forEach&&!Ww((function(){(new o).entries().next()})))){var s=(A=t((function(t,e){gx(_w(t,s),{type:g,collection:new o}),null!=e&&Uw(e,t[i],{that:t,AS_ENTRIES:C})}))).prototype,a=tx(g);qw(["add","clear","delete","forEach","get","has","set","keys","values","entries"],(function(g){var t="add"==g||"set"==g;!(g in n)||I&&"clear"==g||Qw(s,g,(function(e,A){var C=a(this).collection;if(!t&&I&&!Kw(e))return"get"==g&&void 0;var i=C[g](0===e?0:e,A);return t?this:i}))})),I||Jw(s,"size",{configurable:!0,get:function(){return a(this).collection.size}})}else A=e.getConstructor(t,g,C,i),Yw.enable();return Xw(A,g,!1,!0),r[g]=A,Lw({global:!0,forced:!0},r),I||e.setStrong(A,g,C),A},Ax=zI,Cx=function(g,t,e){for(var A in t)e&&e.unsafe&&g[A]?g[A]=t[A]:Ax(g,A,t[A],e);return g},Ix=ng,ix=Ln,ox=R,nx=ht("species"),rx=function(g){var t=Ix(g);ox&&t&&!t[nx]&&ix(t,nx,{configurable:!0,get:function(){return this}})},sx=xI,ax=Ln,dx=Cx,hx=Jt,lx=jw,cx=_,ux=Zw,px=Ri,fx=Pi,vx=rx,yx=R,mx=$b.fastKey,bx=UC.set,wx=UC.getterFor,xx={getConstructor:function(g,t,e,A){var C=g((function(g,C){lx(g,I),bx(g,{type:t,index:sx(null),first:void 0,last:void 0,size:0}),yx||(g.size=0),cx(C)||ux(C,g[A],{that:g,AS_ENTRIES:e})})),I=C.prototype,i=wx(t),o=function(g,t,e){var A,C,I=i(g),o=n(g,t);return o?o.value=e:(I.last=o={index:C=mx(t,!0),key:t,value:e,previous:A=I.last,next:void 0,removed:!1},I.first||(I.first=o),A&&(A.next=o),yx?I.size++:g.size++,"F"!==C&&(I.index[C]=o)),g},n=function(g,t){var e,A=i(g),C=mx(t);if("F"!==C)return A.index[C];for(e=A.first;e;e=e.next)if(e.key==t)return e};return dx(I,{clear:function(){for(var g=i(this),t=g.index,e=g.first;e;)e.removed=!0,e.previous&&(e.previous=e.previous.next=void 0),delete t[e.index],e=e.next;g.first=g.last=void 0,yx?g.size=0:this.size=0},delete:function(g){var t=this,e=i(t),A=n(t,g);if(A){var C=A.next,I=A.previous;delete e.index[A.index],A.removed=!0,I&&(I.next=C),C&&(C.previous=I),e.first==A&&(e.first=C),e.last==A&&(e.last=I),yx?e.size--:t.size--}return!!A},forEach:function(g){for(var t,e=i(this),A=hx(g,arguments.length>1?arguments[1]:void 0);t=t?t.next:e.first;)for(A(t.value,t.key,this);t&&t.removed;)t=t.previous},has:function(g){return!!n(this,g)}}),dx(I,e?{get:function(g){var t=n(this,g);return t&&t.value},set:function(g,t){return o(this,0===g?0:g,t)}}:{add:function(g){return o(this,g=0===g?0:g,g)}}),yx&&ax(I,"size",{configurable:!0,get:function(){return i(this).size}}),C},setStrong:function(g,t,e){var A=t+" Iterator",C=wx(t),I=wx(A);px(g,t,(function(g,t){bx(this,{type:A,target:g,state:C(g),kind:t,last:void 0})}),(function(){for(var g=I(this),t=g.kind,e=g.last;e&&e.removed;)e=e.previous;return g.target&&(g.last=e=e?e.next:g.state.first)?fx("keys"==t?e.key:"values"==t?e.value:[e.key,e.value],!1):(g.target=void 0,fx(void 0,!0))}),e?"entries":"values",!e,!0),vx(t)}};ex("Map",(function(g){return function(){return g(this,arguments.length?arguments[0]:void 0)}}),xx);var kx=Ag.Map;!function(g){g.exports=kx}(qb);var Ex=e(Jb),Ox=function(){function g(){cd(this,g),this.clear(),this._defaultIndex=0,this._groupIndex=0,this._defaultGroups=[{border:"#2B7CE9",background:"#97C2FC",highlight:{border:"#2B7CE9",background:"#D2E5FF"},hover:{border:"#2B7CE9",background:"#D2E5FF"}},{border:"#FFA500",background:"#FFFF00",highlight:{border:"#FFA500",background:"#FFFFA3"},hover:{border:"#FFA500",background:"#FFFFA3"}},{border:"#FA0A10",background:"#FB7E81",highlight:{border:"#FA0A10",background:"#FFAFB1"},hover:{border:"#FA0A10",background:"#FFAFB1"}},{border:"#41A906",background:"#7BE141",highlight:{border:"#41A906",background:"#A1EC76"},hover:{border:"#41A906",background:"#A1EC76"}},{border:"#E129F0",background:"#EB7DF4",highlight:{border:"#E129F0",background:"#F0B3F5"},hover:{border:"#E129F0",background:"#F0B3F5"}},{border:"#7C29F0",background:"#AD85E4",highlight:{border:"#7C29F0",background:"#D3BDF0"},hover:{border:"#7C29F0",background:"#D3BDF0"}},{border:"#C37F00",background:"#FFA807",highlight:{border:"#C37F00",background:"#FFCA66"},hover:{border:"#C37F00",background:"#FFCA66"}},{border:"#4220FB",background:"#6E6EFD",highlight:{border:"#4220FB",background:"#9B9BFD"},hover:{border:"#4220FB",background:"#9B9BFD"}},{border:"#FD5A77",background:"#FFC0CB",highlight:{border:"#FD5A77",background:"#FFD1D9"},hover:{border:"#FD5A77",background:"#FFD1D9"}},{border:"#4AD63A",background:"#C2FABC",highlight:{border:"#4AD63A",background:"#E6FFE3"},hover:{border:"#4AD63A",background:"#E6FFE3"}},{border:"#990000",background:"#EE0000",highlight:{border:"#BB0000",background:"#FF3333"},hover:{border:"#BB0000",background:"#FF3333"}},{border:"#FF6000",background:"#FF6000",highlight:{border:"#FF6000",background:"#FF6000"},hover:{border:"#FF6000",background:"#FF6000"}},{border:"#97C2FC",background:"#2B7CE9",highlight:{border:"#D2E5FF",background:"#2B7CE9"},hover:{border:"#D2E5FF",background:"#2B7CE9"}},{border:"#399605",background:"#255C03",highlight:{border:"#399605",background:"#255C03"},hover:{border:"#399605",background:"#255C03"}},{border:"#B70054",background:"#FF007E",highlight:{border:"#B70054",background:"#FF007E"},hover:{border:"#B70054",background:"#FF007E"}},{border:"#AD85E4",background:"#7C29F0",highlight:{border:"#D3BDF0",background:"#7C29F0"},hover:{border:"#D3BDF0",background:"#7C29F0"}},{border:"#4557FA",background:"#000EA1",highlight:{border:"#6E6EFD",background:"#000EA1"},hover:{border:"#6E6EFD",background:"#000EA1"}},{border:"#FFC0CB",background:"#FD5A77",highlight:{border:"#FFD1D9",background:"#FD5A77"},hover:{border:"#FFD1D9",background:"#FD5A77"}},{border:"#C2FABC",background:"#74D66A",highlight:{border:"#E6FFE3",background:"#74D66A"},hover:{border:"#E6FFE3",background:"#74D66A"}},{border:"#EE0000",background:"#990000",highlight:{border:"#FF3333",background:"#BB0000"},hover:{border:"#FF3333",background:"#BB0000"}}],this.options={},this.defaultOptions={useDefaultGroups:!0},yA(this.options,this.defaultOptions)}return Bh(g,[{key:"setOptions",value:function(g){var t=["useDefaultGroups"];if(void 0!==g)for(var e in g)if(Object.prototype.hasOwnProperty.call(g,e)&&-1===$p(t).call(t,e)){var A=g[e];this.add(e,A)}}},{key:"clear",value:function(){this._groups=new Ex,this._groupNames=[]}},{key:"get",value:function(g){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],e=this._groups.get(g);if(void 0===e&&t)if(!1===this.options.useDefaultGroups&&this._groupNames.length>0){var A=this._groupIndex%this._groupNames.length;++this._groupIndex,(e={}).color=this._groups.get(this._groupNames[A]),this._groups.set(g,e)}else{var C=this._defaultIndex%this._defaultGroups.length;this._defaultIndex++,(e={}).color=this._defaultGroups[C],this._groups.set(g,e)}return e}},{key:"add",value:function(g,t){return this._groups.has(g)||this._groupNames.push(g),this._groups.set(g,t),t}}]),g}(),Tx={},Dx={get exports(){return Tx},set exports(g){Tx=g}};De({target:"Number",stat:!0},{isNaN:function(g){return g!=g}});var Nx=Ag.Number.isNaN;!function(g){g.exports=Nx}(Dx);var Rx=e(Tx),Px={},Mx={get exports(){return Px},set exports(g){Px=g}},Bx=i.isFinite,zx=Number.isFinite||function(g){return"number"==typeof g&&Bx(g)};De({target:"Number",stat:!0},{isFinite:zx});var Sx=Ag.Number.isFinite;!function(g){g.exports=Sx}(Mx);var Zx=e(Px),Fx={},Gx={get exports(){return Fx},set exports(g){Fx=g}},jx=ur.some;De({target:"Array",proto:!0,forced:!cc("some")},{some:function(g){return jx(this,g,arguments.length>1?arguments[1]:void 0)}});var Lx=FA("Array").some,Vx=rg,Yx=Lx,Wx=Array.prototype,Qx=function(g){var t=g.some;return g===Wx||Vx(Wx,g)&&t===Wx.some?Yx:t},Ux=Qx;!function(g){g.exports=Ux}(Gx);var _x=e(Fx);function Hx(g){if(void 0===g)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return g}var Kx={},Xx={get exports(){return Kx},set exports(g){Kx=g}},Jx={},qx=uf;!function(g){g.exports=qx}({get exports(){return Jx},set exports(g){Jx=g}}),function(g){g.exports=Jx}(Xx);var $x=e(Kx),gk={},tk={get exports(){return gk},set exports(g){gk=g}},ek={},Ak={get exports(){return ek},set exports(g){ek=g}};De({target:"Object",stat:!0},{setPrototypeOf:ui});var Ck=Ag.Object.setPrototypeOf;!function(g){g.exports=Ck}(Ak),function(g){g.exports=ek}(tk);var Ik=e(gk),ik={},ok={get exports(){return ik},set exports(g){ik=g}},nk={},rk=WA;!function(g){g.exports=rk}({get exports(){return nk},set exports(g){nk=g}}),function(g){g.exports=nk}(ok);var sk=e(ik);function ak(g,t){var e;return ak=Ik?sk(e=Ik).call(e):function(g,t){return g.__proto__=t,g},ak(g,t)}function dk(g,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");g.prototype=$x(t&&t.prototype,{constructor:{value:g,writable:!0,configurable:!0}}),yd(g,"prototype",{writable:!1}),t&&ak(g,t)}function hk(g,t){if(t&&("object"===kh(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return Hx(g)}var lk={},ck={get exports(){return lk},set exports(g){lk=g}},uk={},pk=Uu;!function(g){g.exports=pk}({get exports(){return uk},set exports(g){uk=g}}),function(g){g.exports=uk}(ck);var fk=e(lk);function vk(g){var t;return vk=Ik?sk(t=fk).call(t):function(g){return g.__proto__||fk(g)},vk(g)}var yk={},mk={get exports(){return yk},set exports(g){yk=g}},bk={};!function(g){var t=md,e=fh;function A(C){return g.exports=A="function"==typeof t&&"symbol"==typeof e?function(g){return typeof g}:function(g){return g&&"function"==typeof t&&g.constructor===t&&g!==t.prototype?"symbol":typeof g},g.exports.__esModule=!0,g.exports.default=g.exports,A(C)}g.exports=A,g.exports.__esModule=!0,g.exports.default=g.exports}({get exports(){return bk},set exports(g){bk=g}});var wk={},xk={get exports(){return wk},set exports(g){wk=g}},kk={},Ek=kc;!function(g){g.exports=Ek}({get exports(){return kk},set exports(g){kk=g}}),function(g){g.exports=kk}(xk);var Ok={},Tk={get exports(){return Ok},set exports(g){Ok=g}},Dk={},Nk={get exports(){return Dk},set exports(g){Dk=g}},Rk=$g,Pk=ja,Mk=N,Bk=qt,zk=eg,Sk=pe,Zk=Error,Fk=f("".replace),Gk=String(Zk("zxcasd").stack),jk=/\n\s*at [^:]*:[^\n]*/,Lk=jk.test(Gk),Vk=L,Yk=!o((function(){var g=Error("a");return!("stack"in g)||(Object.defineProperty(g,"stack",Vk(1,7)),7!==g.stack)})),Wk=pe,Qk=function(g,t){if(Lk&&"string"==typeof g&&!Zk.prepareStackTrace)for(;t--;)g=Fk(g,jk,"");return g},Uk=Yk,_k=Error.captureStackTrace,Hk=pC,Kk=De,Xk=rg,Jk=MI,qk=ui,$k=function(g,t,e){for(var A=Pk(t),C=Bk.f,I=Mk.f,i=0;i<A.length;i++){var o=A[i];Rk(g,o)||e&&Rk(e,o)||C(g,o,I(t,o))}},gE=xI,tE=pe,eE=L,AE=function(g,t){zk(t)&&"cause"in t&&Sk(g,"cause",t.cause)},CE=function(g,t,e,A){Uk&&(_k?_k(g,t):Wk(g,"stack",Qk(e,A)))},IE=Zw,iE=function(g,t){return void 0===g?arguments.length<2?"":t:Hk(g)},oE=ht("toStringTag"),nE=Error,rE=[].push,sE=function(g,t){var e,A=Xk(aE,this);qk?e=qk(nE(),A?Jk(this):aE):(e=A?this:gE(aE),tE(e,oE,"Error")),void 0!==t&&tE(e,"message",iE(t)),CE(e,sE,e.stack,1),arguments.length>2&&AE(e,arguments[2]);var C=[];return IE(g,rE,{that:C}),tE(e,"errors",C),e};qk?qk(sE,nE):$k(sE,nE,{name:!0});var aE=sE.prototype=gE(nE.prototype,{constructor:eE(1,sE),message:eE(1,""),name:eE(1,"AggregateError")});Kk({global:!0,constructor:!0,arity:2},{AggregateError:sE});var dE,hE,lE,cE,uE="undefined"!=typeof process&&"process"==b(process),pE=co,fE=Tg,vE=TypeError,yE=function(g){if(pE(g))return g;throw vE(fE(g)+" is not a constructor")},mE=Ae,bE=yE,wE=_,xE=ht("species"),kE=function(g,t){var e,A=mE(g).constructor;return void 0===A||wE(e=mE(A)[xE])?t:bE(e)},EE=/(?:ipad|iphone|ipod).*applewebkit/i.test(sg),OE=i,TE=h,DE=Jt,NE=D,RE=$g,PE=o,ME=oI,BE=wA,zE=Ot,SE=Df,ZE=EE,FE=uE,GE=OE.setImmediate,jE=OE.clearImmediate,LE=OE.process,VE=OE.Dispatch,YE=OE.Function,WE=OE.MessageChannel,QE=OE.String,UE=0,_E={},HE="onreadystatechange";PE((function(){dE=OE.location}));var KE=function(g){if(RE(_E,g)){var t=_E[g];delete _E[g],t()}},XE=function(g){return function(){KE(g)}},JE=function(g){KE(g.data)},qE=function(g){OE.postMessage(QE(g),dE.protocol+"//"+dE.host)};GE&&jE||(GE=function(g){SE(arguments.length,1);var t=NE(g)?g:YE(g),e=BE(arguments,1);return _E[++UE]=function(){TE(t,void 0,e)},hE(UE),UE},jE=function(g){delete _E[g]},FE?hE=function(g){LE.nextTick(XE(g))}:VE&&VE.now?hE=function(g){VE.now(XE(g))}:WE&&!ZE?(cE=(lE=new WE).port2,lE.port1.onmessage=JE,hE=DE(cE.postMessage,cE)):OE.addEventListener&&NE(OE.postMessage)&&!OE.importScripts&&dE&&"file:"!==dE.protocol&&!PE(qE)?(hE=qE,OE.addEventListener("message",JE,!1)):hE=HE in zE("script")?function(g){ME.appendChild(zE("script"))[HE]=function(){ME.removeChild(this),KE(g)}}:function(g){setTimeout(XE(g),0)});var $E={set:GE,clear:jE},gO=function(){this.head=null,this.tail=null};gO.prototype={add:function(g){var t={item:g,next:null},e=this.tail;e?e.next=t:this.head=t,this.tail=t},get:function(){var g=this.head;if(g)return null===(this.head=g.next)&&(this.tail=null),g.item}};var tO,eO,AO,CO,IO,iO=gO,oO=/ipad|iphone|ipod/i.test(sg)&&"undefined"!=typeof Pebble,nO=/web0s(?!.*chrome)/i.test(sg),rO=i,sO=Jt,aO=N.f,dO=$E.set,hO=iO,lO=EE,cO=oO,uO=nO,pO=uE,fO=rO.MutationObserver||rO.WebKitMutationObserver,vO=rO.document,yO=rO.process,mO=rO.Promise,bO=aO(rO,"queueMicrotask"),wO=bO&&bO.value;if(!wO){var xO=new hO,kO=function(){var g,t;for(pO&&(g=yO.domain)&&g.exit();t=xO.get();)try{t()}catch(g){throw xO.head&&tO(),g}g&&g.enter()};lO||pO||uO||!fO||!vO?!cO&&mO&&mO.resolve?((CO=mO.resolve(void 0)).constructor=mO,IO=sO(CO.then,CO),tO=function(){IO(kO)}):pO?tO=function(){yO.nextTick(kO)}:(dO=sO(dO,rO),tO=function(){dO(kO)}):(eO=!0,AO=vO.createTextNode(""),new fO(kO).observe(AO,{characterData:!0}),tO=function(){AO.data=eO=!eO}),wO=function(g){xO.head||tO(),xO.add(g)}}var EO=wO,OO=function(g){try{return{error:!1,value:g()}}catch(g){return{error:!0,value:g}}},TO=i.Promise,DO="object"==typeof Deno&&Deno&&"object"==typeof Deno.version,NO=!DO&&!uE&&"object"==typeof window&&"object"==typeof document,RO=i,PO=TO,MO=D,BO=_t,zO=go,SO=ht,ZO=NO,FO=DO,GO=pg,jO=PO&&PO.prototype,LO=SO("species"),VO=!1,YO=MO(RO.PromiseRejectionEvent),WO=BO("Promise",(function(){var g=zO(PO),t=g!==String(PO);if(!t&&66===GO)return!0;if(!jO.catch||!jO.finally)return!0;if(!GO||GO<51||!/native code/.test(g)){var e=new PO((function(g){g(1)})),A=function(g){g((function(){}),(function(){}))};if((e.constructor={})[LO]=A,!(VO=e.then((function(){}))instanceof A))return!0}return!t&&(ZO||FO)&&!YO})),QO={CONSTRUCTOR:WO,REJECTION_EVENT:YO,SUBCLASSING:VO},UO={},_O=Pg,HO=TypeError,KO=function(g){var t,e;this.promise=new g((function(g,A){if(void 0!==t||void 0!==e)throw HO("Bad Promise constructor");t=g,e=A})),this.resolve=_O(t),this.reject=_O(e)};UO.f=function(g){return new KO(g)};var XO,JO,qO=De,$O=uE,gT=i,tT=B,eT=zI,AT=gi,CT=rx,IT=Pg,iT=D,oT=eg,nT=jw,rT=kE,sT=$E.set,aT=EO,dT=function(g,t){try{1==arguments.length?console.error(g):console.error(g,t)}catch(g){}},hT=OO,lT=iO,cT=UC,uT=TO,pT=UO,fT="Promise",vT=QO.CONSTRUCTOR,yT=QO.REJECTION_EVENT,mT=cT.getterFor(fT),bT=cT.set,wT=uT&&uT.prototype,xT=uT,kT=wT,ET=gT.TypeError,OT=gT.document,TT=gT.process,DT=pT.f,NT=DT,RT=!!(OT&&OT.createEvent&&gT.dispatchEvent),PT="unhandledrejection",MT=function(g){var t;return!(!oT(g)||!iT(t=g.then))&&t},BT=function(g,t){var e,A,C,I=t.value,i=1==t.state,o=i?g.ok:g.fail,n=g.resolve,r=g.reject,s=g.domain;try{o?(i||(2===t.rejection&&GT(t),t.rejection=1),!0===o?e=I:(s&&s.enter(),e=o(I),s&&(s.exit(),C=!0)),e===g.promise?r(ET("Promise-chain cycle")):(A=MT(e))?tT(A,e,n,r):n(e)):r(I)}catch(g){s&&!C&&s.exit(),r(g)}},zT=function(g,t){g.notified||(g.notified=!0,aT((function(){for(var e,A=g.reactions;e=A.get();)BT(e,g);g.notified=!1,t&&!g.rejection&&ZT(g)})))},ST=function(g,t,e){var A,C;RT?((A=OT.createEvent("Event")).promise=t,A.reason=e,A.initEvent(g,!1,!0),gT.dispatchEvent(A)):A={promise:t,reason:e},!yT&&(C=gT["on"+g])?C(A):g===PT&&dT("Unhandled promise rejection",e)},ZT=function(g){tT(sT,gT,(function(){var t,e=g.facade,A=g.value;if(FT(g)&&(t=hT((function(){$O?TT.emit("unhandledRejection",A,e):ST(PT,e,A)})),g.rejection=$O||FT(g)?2:1,t.error))throw t.value}))},FT=function(g){return 1!==g.rejection&&!g.parent},GT=function(g){tT(sT,gT,(function(){var t=g.facade;$O?TT.emit("rejectionHandled",t):ST("rejectionhandled",t,g.value)}))},jT=function(g,t,e){return function(A){g(t,A,e)}},LT=function(g,t,e){g.done||(g.done=!0,e&&(g=e),g.value=t,g.state=2,zT(g,!0))},VT=function(g,t,e){if(!g.done){g.done=!0,e&&(g=e);try{if(g.facade===t)throw ET("Promise can't be resolved itself");var A=MT(t);A?aT((function(){var e={done:!1};try{tT(A,t,jT(VT,e,g),jT(LT,e,g))}catch(t){LT(e,t,g)}})):(g.value=t,g.state=1,zT(g,!1))}catch(t){LT({done:!1},t,g)}}};vT&&(kT=(xT=function(g){nT(this,kT),IT(g),tT(XO,this);var t=mT(this);try{g(jT(VT,t),jT(LT,t))}catch(g){LT(t,g)}}).prototype,(XO=function(g){bT(this,{type:fT,done:!1,notified:!1,parent:!1,reactions:new lT,rejection:!1,state:0,value:void 0})}).prototype=eT(kT,"then",(function(g,t){var e=mT(this),A=DT(rT(this,xT));return e.parent=!0,A.ok=!iT(g)||g,A.fail=iT(t)&&t,A.domain=$O?TT.domain:void 0,0==e.state?e.reactions.add(A):aT((function(){BT(A,e)})),A.promise})),JO=function(){var g=new XO,t=mT(g);this.promise=g,this.resolve=jT(VT,t),this.reject=jT(LT,t)},pT.f=DT=function(g){return g===xT||undefined===g?new JO(g):NT(g)}),qO({global:!0,constructor:!0,wrap:!0,forced:vT},{Promise:xT}),AT(xT,fT,!1,!0),CT(fT);var YT=TO,WT=QO.CONSTRUCTOR||!Ho((function(g){YT.all(g).then(void 0,(function(){}))})),QT=B,UT=Pg,_T=UO,HT=OO,KT=Zw;De({target:"Promise",stat:!0,forced:WT},{all:function(g){var t=this,e=_T.f(t),A=e.resolve,C=e.reject,I=HT((function(){var e=UT(t.resolve),I=[],i=0,o=1;KT(g,(function(g){var n=i++,r=!1;o++,QT(e,t,g).then((function(g){r||(r=!0,I[n]=g,--o||A(I))}),C)})),--o||A(I)}));return I.error&&C(I.value),e.promise}});var XT=De,JT=QO.CONSTRUCTOR;TO&&TO.prototype,XT({target:"Promise",proto:!0,forced:JT,real:!0},{catch:function(g){return this.then(void 0,g)}});var qT=B,$T=Pg,gD=UO,tD=OO,eD=Zw;De({target:"Promise",stat:!0,forced:WT},{race:function(g){var t=this,e=gD.f(t),A=e.reject,C=tD((function(){var C=$T(t.resolve);eD(g,(function(g){qT(C,t,g).then(e.resolve,A)}))}));return C.error&&A(C.value),e.promise}});var AD=B,CD=UO;De({target:"Promise",stat:!0,forced:QO.CONSTRUCTOR},{reject:function(g){var t=CD.f(this);return AD(t.reject,void 0,g),t.promise}});var ID=Ae,iD=eg,oD=UO,nD=function(g,t){if(ID(g),iD(t)&&t.constructor===g)return t;var e=oD.f(g);return(0,e.resolve)(t),e.promise},rD=De,sD=TO,aD=QO.CONSTRUCTOR,dD=nD,hD=ng("Promise"),lD=!aD;rD({target:"Promise",stat:!0,forced:true},{resolve:function(g){return dD(lD&&this===hD?sD:this,g)}});var cD=B,uD=Pg,pD=UO,fD=OO,vD=Zw;De({target:"Promise",stat:!0,forced:WT},{allSettled:function(g){var t=this,e=pD.f(t),A=e.resolve,C=e.reject,I=fD((function(){var e=uD(t.resolve),C=[],I=0,i=1;vD(g,(function(g){var o=I++,n=!1;i++,cD(e,t,g).then((function(g){n||(n=!0,C[o]={status:"fulfilled",value:g},--i||A(C))}),(function(g){n||(n=!0,C[o]={status:"rejected",reason:g},--i||A(C))}))})),--i||A(C)}));return I.error&&C(I.value),e.promise}});var yD=B,mD=Pg,bD=ng,wD=UO,xD=OO,kD=Zw,ED="No one promise resolved";De({target:"Promise",stat:!0,forced:WT},{any:function(g){var t=this,e=bD("AggregateError"),A=wD.f(t),C=A.resolve,I=A.reject,i=xD((function(){var A=mD(t.resolve),i=[],o=0,n=1,r=!1;kD(g,(function(g){var s=o++,a=!1;n++,yD(A,t,g).then((function(g){a||r||(r=!0,C(g))}),(function(g){a||r||(a=!0,i[s]=g,--n||I(new e(i,ED)))}))})),--n||I(new e(i,ED))}));return i.error&&I(i.value),A.promise}});var OD=De,TD=TO,DD=o,ND=ng,RD=D,PD=kE,MD=nD,BD=TD&&TD.prototype;OD({target:"Promise",proto:!0,real:!0,forced:!!TD&&DD((function(){BD.finally.call({then:function(){}},(function(){}))}))},{finally:function(g){var t=PD(this,ND("Promise")),e=RD(g);return this.then(e?function(e){return MD(t,g()).then((function(){return e}))}:g,e?function(e){return MD(t,g()).then((function(){throw e}))}:g)}});var zD=Ag.Promise,SD=UO,ZD=OO;De({target:"Promise",stat:!0,forced:!0},{try:function(g){var t=SD.f(this),e=ZD(g);return(e.error?t.reject:t.resolve)(e.value),t.promise}});var FD=zD;!function(g){g.exports=FD}(Nk),function(g){g.exports=Dk}(Tk);var GD={},jD={get exports(){return GD},set exports(g){GD=g}},LD={},VD=Fc;!function(g){g.exports=VD}({get exports(){return LD},set exports(g){LD=g}}),function(g){g.exports=LD}(jD),function(g){var t=bk.default,e=ud,A=md,C=Kx,I=lk,i=wk,o=gk,n=Ok,r=GD,s=Yh;function a(){g.exports=a=function(){return d},g.exports.__esModule=!0,g.exports.default=g.exports;var d={},h=Object.prototype,l=h.hasOwnProperty,c=e||function(g,t,e){g[t]=e.value},u="function"==typeof A?A:{},p=u.iterator||"@@iterator",f=u.asyncIterator||"@@asyncIterator",v=u.toStringTag||"@@toStringTag";function y(g,t,A){return e(g,t,{value:A,enumerable:!0,configurable:!0,writable:!0}),g[t]}try{y({},"")}catch(g){y=function(g,t,e){return g[t]=e}}function m(g,t,e,A){var I=t&&t.prototype instanceof x?t:x,i=C(I.prototype),o=new S(A||[]);return c(i,"_invoke",{value:P(g,e,o)}),i}function b(g,t,e){try{return{type:"normal",arg:g.call(t,e)}}catch(g){return{type:"throw",arg:g}}}d.wrap=m;var w={};function x(){}function k(){}function E(){}var O={};y(O,p,(function(){return this}));var T=I&&I(I(Z([])));T&&T!==h&&l.call(T,p)&&(O=T);var D=E.prototype=x.prototype=C(O);function N(g){var t;i(t=["next","throw","return"]).call(t,(function(t){y(g,t,(function(g){return this._invoke(t,g)}))}))}function R(g,e){function A(C,I,i,o){var n=b(g[C],g,I);if("throw"!==n.type){var r=n.arg,s=r.value;return s&&"object"==t(s)&&l.call(s,"__await")?e.resolve(s.__await).then((function(g){A("next",g,i,o)}),(function(g){A("throw",g,i,o)})):e.resolve(s).then((function(g){r.value=g,i(r)}),(function(g){return A("throw",g,i,o)}))}o(n.arg)}var C;c(this,"_invoke",{value:function(g,t){function I(){return new e((function(e,C){A(g,t,e,C)}))}return C=C?C.then(I,I):I()}})}function P(g,t,e){var A="suspendedStart";return function(C,I){if("executing"===A)throw new Error("Generator is already running");if("completed"===A){if("throw"===C)throw I;return F()}for(e.method=C,e.arg=I;;){var i=e.delegate;if(i){var o=M(i,e);if(o){if(o===w)continue;return o}}if("next"===e.method)e.sent=e._sent=e.arg;else if("throw"===e.method){if("suspendedStart"===A)throw A="completed",e.arg;e.dispatchException(e.arg)}else"return"===e.method&&e.abrupt("return",e.arg);A="executing";var n=b(g,t,e);if("normal"===n.type){if(A=e.done?"completed":"suspendedYield",n.arg===w)continue;return{value:n.arg,done:e.done}}"throw"===n.type&&(A="completed",e.method="throw",e.arg=n.arg)}}}function M(g,t){var e=t.method,A=g.iterator[e];if(void 0===A)return t.delegate=null,"throw"===e&&g.iterator.return&&(t.method="return",t.arg=void 0,M(g,t),"throw"===t.method)||"return"!==e&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+e+"' method")),w;var C=b(A,g.iterator,t.arg);if("throw"===C.type)return t.method="throw",t.arg=C.arg,t.delegate=null,w;var I=C.arg;return I?I.done?(t[g.resultName]=I.value,t.next=g.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,w):I:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,w)}function B(g){var t={tryLoc:g[0]};1 in g&&(t.catchLoc=g[1]),2 in g&&(t.finallyLoc=g[2],t.afterLoc=g[3]),this.tryEntries.push(t)}function z(g){var t=g.completion||{};t.type="normal",delete t.arg,g.completion=t}function S(g){this.tryEntries=[{tryLoc:"root"}],i(g).call(g,B,this),this.reset(!0)}function Z(g){if(g){var t=g[p];if(t)return t.call(g);if("function"==typeof g.next)return g;if(!isNaN(g.length)){var e=-1,A=function t(){for(;++e<g.length;)if(l.call(g,e))return t.value=g[e],t.done=!1,t;return t.value=void 0,t.done=!0,t};return A.next=A}}return{next:F}}function F(){return{value:void 0,done:!0}}return k.prototype=E,c(D,"constructor",{value:E,configurable:!0}),c(E,"constructor",{value:k,configurable:!0}),k.displayName=y(E,v,"GeneratorFunction"),d.isGeneratorFunction=function(g){var t="function"==typeof g&&g.constructor;return!!t&&(t===k||"GeneratorFunction"===(t.displayName||t.name))},d.mark=function(g){return o?o(g,E):(g.__proto__=E,y(g,v,"GeneratorFunction")),g.prototype=C(D),g},d.awrap=function(g){return{__await:g}},N(R.prototype),y(R.prototype,f,(function(){return this})),d.AsyncIterator=R,d.async=function(g,t,e,A,C){void 0===C&&(C=n);var I=new R(m(g,t,e,A),C);return d.isGeneratorFunction(t)?I:I.next().then((function(g){return g.done?g.value:I.next()}))},N(D),y(D,v,"Generator"),y(D,p,(function(){return this})),y(D,"toString",(function(){return"[object Generator]"})),d.keys=function(g){var t=Object(g),e=[];for(var A in t)e.push(A);return r(e).call(e),function g(){for(;e.length;){var A=e.pop();if(A in t)return g.value=A,g.done=!1,g}return g.done=!0,g}},d.values=Z,S.prototype={constructor:S,reset:function(g){var t;if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,i(t=this.tryEntries).call(t,z),!g)for(var e in this)"t"===e.charAt(0)&&l.call(this,e)&&!isNaN(+s(e).call(e,1))&&(this[e]=void 0)},stop:function(){this.done=!0;var g=this.tryEntries[0].completion;if("throw"===g.type)throw g.arg;return this.rval},dispatchException:function(g){if(this.done)throw g;var t=this;function e(e,A){return I.type="throw",I.arg=g,t.next=e,A&&(t.method="next",t.arg=void 0),!!A}for(var A=this.tryEntries.length-1;A>=0;--A){var C=this.tryEntries[A],I=C.completion;if("root"===C.tryLoc)return e("end");if(C.tryLoc<=this.prev){var i=l.call(C,"catchLoc"),o=l.call(C,"finallyLoc");if(i&&o){if(this.prev<C.catchLoc)return e(C.catchLoc,!0);if(this.prev<C.finallyLoc)return e(C.finallyLoc)}else if(i){if(this.prev<C.catchLoc)return e(C.catchLoc,!0)}else{if(!o)throw new Error("try statement without catch or finally");if(this.prev<C.finallyLoc)return e(C.finallyLoc)}}}},abrupt:function(g,t){for(var e=this.tryEntries.length-1;e>=0;--e){var A=this.tryEntries[e];if(A.tryLoc<=this.prev&&l.call(A,"finallyLoc")&&this.prev<A.finallyLoc){var C=A;break}}C&&("break"===g||"continue"===g)&&C.tryLoc<=t&&t<=C.finallyLoc&&(C=null);var I=C?C.completion:{};return I.type=g,I.arg=t,C?(this.method="next",this.next=C.finallyLoc,w):this.complete(I)},complete:function(g,t){if("throw"===g.type)throw g.arg;return"break"===g.type||"continue"===g.type?this.next=g.arg:"return"===g.type?(this.rval=this.arg=g.arg,this.method="return",this.next="end"):"normal"===g.type&&t&&(this.next=t),w},finish:function(g){for(var t=this.tryEntries.length-1;t>=0;--t){var e=this.tryEntries[t];if(e.finallyLoc===g)return this.complete(e.completion,e.afterLoc),z(e),w}},catch:function(g){for(var t=this.tryEntries.length-1;t>=0;--t){var e=this.tryEntries[t];if(e.tryLoc===g){var A=e.completion;if("throw"===A.type){var C=A.arg;z(e)}return C}}throw new Error("illegal catch attempt")},delegateYield:function(g,t,e){return this.delegate={iterator:Z(g),resultName:t,nextLoc:e},"next"===this.method&&(this.arg=void 0),w}},d}g.exports=a,g.exports.__esModule=!0,g.exports.default=g.exports}(mk);var YD=yk(),WD=YD;try{regeneratorRuntime=YD}catch(g){"object"==typeof globalThis?globalThis.regeneratorRuntime=YD:Function("r","regeneratorRuntime = r")(YD)}var QD={},UD={get exports(){return QD},set exports(g){QD=g}},_D=Pg,HD=Xg,KD=U,XD=Le,JD=TypeError,qD=function(g){return function(t,e,A,C){_D(e);var I=HD(t),i=KD(I),o=XD(I),n=g?o-1:0,r=g?-1:1;if(A<2)for(;;){if(n in i){C=i[n],n+=r;break}if(n+=r,g?n<0:o<=n)throw JD("Reduce of empty array with no initial value")}for(;g?n>=0:o>n;n+=r)n in i&&(C=e(C,i[n],n,I));return C}},$D={left:qD(!1),right:qD(!0)}.left;De({target:"Array",proto:!0,forced:!uE&&pg>79&&pg<83||!cc("reduce")},{reduce:function(g){var t=arguments.length;return $D(this,g,t,t>1?arguments[1]:void 0)}});var gN=FA("Array").reduce,tN=rg,eN=gN,AN=Array.prototype,CN=function(g){var t=g.reduce;return g===AN||tN(AN,g)&&t===AN.reduce?eN:t},IN=CN;!function(g){g.exports=IN}(UD);var iN=e(QD),oN={},nN={get exports(){return oN},set exports(g){oN=g}},rN=tr,sN=Le,aN=Ed,dN=Jt,hN=function(g,t,e,A,C,I,i,o){for(var n,r,s=C,a=0,d=!!i&&dN(i,o);a<A;)a in e&&(n=d?d(e[a],a,t):e[a],I>0&&rN(n)?(r=sN(n),s=hN(g,t,n,r,s,I-1)-1):(aN(s+1),g[s]=n),s++),a++;return s},lN=hN,cN=Pg,uN=Xg,pN=Le,fN=nr;De({target:"Array",proto:!0},{flatMap:function(g){var t,e=uN(this),A=pN(e);return cN(g),(t=fN(e,0)).length=lN(t,e,e,A,0,1,g,arguments.length>1?arguments[1]:void 0),t}});var vN=FA("Array").flatMap,yN=rg,mN=vN,bN=Array.prototype,wN=function(g){var t=g.flatMap;return g===bN||yN(bN,g)&&t===bN.flatMap?mN:t},xN=wN;!function(g){g.exports=xN}(nN);var kN=e(oN),EN={},ON={get exports(){return EN},set exports(g){EN=g}};ex("Set",(function(g){return function(){return g(this,arguments.length?arguments[0]:void 0)}}),xx);var TN=Ag.Set;!function(g){g.exports=TN}(ON);var DN=e(EN),NN={};!function(g){g.exports=bh}({get exports(){return NN},set exports(g){NN=g}});var RN=e(NN),PN={},MN={get exports(){return PN},set exports(g){PN=g}},BN={},zN=Po;!function(g){g.exports=zN}({get exports(){return BN},set exports(g){BN=g}}),function(g){g.exports=BN}(MN);var SN=e(PN),ZN={},FN={get exports(){return ZN},set exports(g){ZN=g}},GN=Bn,jN=Math.floor,LN=function(g,t){var e=g.length,A=jN(e/2);return e<8?VN(g,t):YN(g,LN(GN(g,0,A),t),LN(GN(g,A),t),t)},VN=function(g,t){for(var e,A,C=g.length,I=1;I<C;){for(A=I,e=g[I];A&&t(g[A-1],e)>0;)g[A]=g[--A];A!==I++&&(g[A]=e)}return g},YN=function(g,t,e,A){for(var C=t.length,I=e.length,i=0,o=0;i<C||o<I;)g[i+o]=i<C&&o<I?A(t[i],e[o])<=0?t[i++]:e[o++]:i<C?t[i++]:e[o++];return g},WN=LN,QN=sg.match(/firefox\/(\d+)/i),UN=!!QN&&+QN[1],_N=/MSIE|Trident/.test(sg),HN=sg.match(/AppleWebKit\/(\d+)\./),KN=!!HN&&+HN[1],XN=De,JN=f,qN=Pg,$N=Xg,gR=Le,tR=Kc,eR=pC,AR=o,CR=WN,IR=cc,iR=UN,oR=_N,nR=pg,rR=KN,sR=[],aR=JN(sR.sort),dR=JN(sR.push),hR=AR((function(){sR.sort(void 0)})),lR=AR((function(){sR.sort(null)})),cR=IR("sort"),uR=!AR((function(){if(nR)return nR<70;if(!(iR&&iR>3)){if(oR)return!0;if(rR)return rR<603;var g,t,e,A,C="";for(g=65;g<76;g++){switch(t=String.fromCharCode(g),g){case 66:case 69:case 70:case 72:e=3;break;case 68:case 71:e=4;break;default:e=2}for(A=0;A<47;A++)sR.push({k:t+A,v:e})}for(sR.sort((function(g,t){return t.v-g.v})),A=0;A<sR.length;A++)t=sR[A].k.charAt(0),C.charAt(C.length-1)!==t&&(C+=t);return"DGBEFHACIJK"!==C}}));XN({target:"Array",proto:!0,forced:hR||!lR||!cR||!uR},{sort:function(g){void 0!==g&&qN(g);var t=$N(this);if(uR)return void 0===g?aR(t):aR(t,g);var e,A,C=[],I=gR(t);for(A=0;A<I;A++)A in t&&dR(C,t[A]);for(CR(C,function(g){return function(t,e){return void 0===e?-1:void 0===t?1:void 0!==g?+g(t,e)||0:eR(t)>eR(e)?1:-1}}(g)),e=gR(C),A=0;A<e;)t[A]=C[A++];for(;A<I;)tR(t,A++);return t}});var pR=FA("Array").sort,fR=rg,vR=pR,yR=Array.prototype,mR=function(g){var t=g.sort;return g===yR||fR(yR,g)&&t===yR.sort?vR:t},bR=mR;!function(g){g.exports=bR}(FN);var wR=e(ZN),xR={},kR={get exports(){return xR},set exports(g){xR=g}},ER=FA("Array").keys,OR=lC,TR=$g,DR=rg,NR=ER,RR=Array.prototype,PR={DOMTokenList:!0,NodeList:!0},MR=function(g){var t=g.keys;return g===RR||DR(RR,g)&&t===RR.keys||TR(PR,OR(g))?NR:t};!function(g){g.exports=MR}(kR);var BR=e(xR),zR={},SR={get exports(){return zR},set exports(g){zR=g}},ZR=FA("Array").values,FR=lC,GR=$g,jR=rg,LR=ZR,VR=Array.prototype,YR={DOMTokenList:!0,NodeList:!0},WR=function(g){var t=g.values;return g===VR||jR(VR,g)&&t===VR.values||GR(YR,FR(g))?LR:t};!function(g){g.exports=WR}(SR);var QR=e(zR),UR={},_R={get exports(){return UR},set exports(g){UR=g}},HR=FA("Array").entries,KR=lC,XR=$g,JR=rg,qR=HR,$R=Array.prototype,gP={DOMTokenList:!0,NodeList:!0},tP=function(g){var t=g.entries;return g===$R||JR($R,g)&&t===$R.entries||XR(gP,KR(g))?qR:t};!function(g){g.exports=tP}(_R);var eP=e(UR),AP={},CP={get exports(){return AP},set exports(g){AP=g}},IP=De,iP=h,oP=zA,nP=yE,rP=Ae,sP=eg,aP=xI,dP=o,hP=ng("Reflect","construct"),lP=Object.prototype,cP=[].push,uP=dP((function(){function g(){}return!(hP((function(){}),[],g)instanceof g)})),pP=!dP((function(){hP((function(){}))})),fP=uP||pP;IP({target:"Reflect",stat:!0,forced:fP,sham:fP},{construct:function(g,t){nP(g),rP(t);var e=arguments.length<3?g:nP(arguments[2]);if(pP&&!uP)return hP(g,t,e);if(g==e){switch(t.length){case 0:return new g;case 1:return new g(t[0]);case 2:return new g(t[0],t[1]);case 3:return new g(t[0],t[1],t[2]);case 4:return new g(t[0],t[1],t[2],t[3])}var A=[null];return iP(cP,A,t),new(iP(oP,g,A))}var C=e.prototype,I=aP(sP(C)?C:lP),i=iP(g,I,t);return sP(i)?i:I}});var vP=Ag.Reflect.construct;!function(g){g.exports=vP}(CP);var yP=e(AP);let mP;const bP=new Uint8Array(16);function wP(){if(!mP&&(mP="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!mP))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return mP(bP)}const xP=[];for(let g=0;g<256;++g)xP.push((g+256).toString(16).slice(1));var kP,EP={randomUUID:"undefined"!=typeof crypto&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};function OP(g,t,e){if(EP.randomUUID&&!t&&!g)return EP.randomUUID();const A=(g=g||{}).random||(g.rng||wP)();if(A[6]=15&A[6]|64,A[8]=63&A[8]|128,t){e=e||0;for(let g=0;g<16;++g)t[e+g]=A[g];return t}return function(g,t=0){return(xP[g[t+0]]+xP[g[t+1]]+xP[g[t+2]]+xP[g[t+3]]+"-"+xP[g[t+4]]+xP[g[t+5]]+"-"+xP[g[t+6]]+xP[g[t+7]]+"-"+xP[g[t+8]]+xP[g[t+9]]+"-"+xP[g[t+10]]+xP[g[t+11]]+xP[g[t+12]]+xP[g[t+13]]+xP[g[t+14]]+xP[g[t+15]]).toLowerCase()}(A)}function TP(g,t){var e=Cc(g);if(va){var A=va(g);t&&(A=Ap(A).call(A,(function(t){return Pa(g,t).enumerable}))),e.push.apply(e,A)}return e}function DP(g){for(var t=1;t<arguments.length;t++){var e,A,C=null!=arguments[t]?arguments[t]:{};t%2?Ec(e=TP(Object(C),!0)).call(e,(function(t){zh(g,t,C[t])})):Ua?Ad(g,Ua(C)):Ec(A=TP(Object(C))).call(A,(function(t){ld(g,t,Pa(C,t))}))}return g}function NP(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}function RP(g,t){var e=void 0!==kl&&bn(g)||g["@@iterator"];if(!e){if(Vl(g)||(e=function(g,t){var e;if(!g)return;if("string"==typeof g)return PP(g,t);var A=Sl(e=Object.prototype.toString.call(g)).call(e,8,-1);"Object"===A&&g.constructor&&(A=g.constructor.name);if("Map"===A||"Set"===A)return Jo(g);if("Arguments"===A||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(A))return PP(g,t)}(g))||t&&g&&"number"==typeof g.length){e&&(g=e);var A=0,C=function(){};return{s:C,n:function(){return A>=g.length?{done:!0}:{done:!1,value:g[A++]}},e:function(g){throw g},f:C}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var I,i=!0,o=!1;return{s:function(){e=e.call(g)},n:function(){var g=e.next();return i=g.done,g},e:function(g){o=!0,I=g},f:function(){try{i||null==e.return||e.return()}finally{if(o)throw I}}}}function PP(g,t){(null==t||t>g.length)&&(t=g.length);for(var e=0,A=new Array(t);e<t;e++)A[e]=g[e];return A}var MP=function(){function g(t,e,A){var C,I,i;cd(this,g),zh(this,"_source",void 0),zh(this,"_transformers",void 0),zh(this,"_target",void 0),zh(this,"_listeners",{add:QA(C=this._add).call(C,this),remove:QA(I=this._remove).call(I,this),update:QA(i=this._update).call(i,this)}),this._source=t,this._transformers=e,this._target=A}return Bh(g,[{key:"all",value:function(){return this._target.update(this._transformItems(this._source.get())),this}},{key:"start",value:function(){return this._source.on("add",this._listeners.add),this._source.on("remove",this._listeners.remove),this._source.on("update",this._listeners.update),this}},{key:"stop",value:function(){return this._source.off("add",this._listeners.add),this._source.off("remove",this._listeners.remove),this._source.off("update",this._listeners.update),this}},{key:"_transformItems",value:function(g){var t;return iN(t=this._transformers).call(t,(function(g,t){return t(g)}),g)}},{key:"_add",value:function(g,t){null!=t&&this._target.add(this._transformItems(this._source.get(t.items)))}},{key:"_update",value:function(g,t){null!=t&&this._target.update(this._transformItems(this._source.get(t.items)))}},{key:"_remove",value:function(g,t){null!=t&&this._target.remove(this._transformItems(t.oldData))}}]),g}(),BP=function(){function g(t){cd(this,g),zh(this,"_source",void 0),zh(this,"_transformers",[]),this._source=t}return Bh(g,[{key:"filter",value:function(g){return this._transformers.push((function(t){return Ap(t).call(t,g)})),this}},{key:"map",value:function(g){return this._transformers.push((function(t){return ql(t).call(t,g)})),this}},{key:"flatMap",value:function(g){return this._transformers.push((function(t){return kN(t).call(t,g)})),this}},{key:"to",value:function(g){return new MP(this._source,this._transformers,g)}}]),g}();function zP(g){return"string"==typeof g||"number"==typeof g}var SP=function(){function g(t){cd(this,g),zh(this,"delay",void 0),zh(this,"max",void 0),zh(this,"_queue",[]),zh(this,"_timeout",null),zh(this,"_extended",null),this.delay=null,this.max=1/0,this.setOptions(t)}return Bh(g,[{key:"setOptions",value:function(g){g&&void 0!==g.delay&&(this.delay=g.delay),g&&void 0!==g.max&&(this.max=g.max),this._flushIfNeeded()}},{key:"destroy",value:function(){if(this.flush(),this._extended){for(var g=this._extended.object,t=this._extended.methods,e=0;e<t.length;e++){var A=t[e];A.original?g[A.name]=A.original:delete g[A.name]}this._extended=null}}},{key:"replace",value:function(g,t){var e=this,A=g[t];if(!A)throw new Error("Method "+t+" undefined");g[t]=function(){for(var g=arguments.length,t=new Array(g),C=0;C<g;C++)t[C]=arguments[C];e.queue({args:t,fn:A,context:this})}}},{key:"queue",value:function(g){"function"==typeof g?this._queue.push({fn:g}):this._queue.push(g),this._flushIfNeeded()}},{key:"_flushIfNeeded",value:function(){var g=this;this._queue.length>this.max&&this.flush(),null!=this._timeout&&(clearTimeout(this._timeout),this._timeout=null),this.queue.length>0&&"number"==typeof this.delay&&(this._timeout=_f((function(){g.flush()}),this.delay))}},{key:"flush",value:function(){var g,t;Ec(g=cu(t=this._queue).call(t,0)).call(g,(function(g){g.fn.apply(g.context||g.fn,g.args||[])}))}}],[{key:"extend",value:function(t,e){var A=new g(e);if(void 0!==t.flush)throw new Error("Target object already has a property flush");t.flush=function(){A.flush()};var C=[{name:"flush",original:void 0}];if(e&&e.replace)for(var I=0;I<e.replace.length;I++){var i=e.replace[I];C.push({name:i,original:t[i]}),A.replace(t,i)}return A._extended={object:t,methods:C},A}}]),g}(),ZP=function(){function g(){cd(this,g),zh(this,"_subscribers",{"*":[],add:[],remove:[],update:[]}),zh(this,"subscribe",g.prototype.on),zh(this,"unsubscribe",g.prototype.off)}return Bh(g,[{key:"_trigger",value:function(g,t,e){var A,C;if("*"===g)throw new Error("Cannot trigger event *");Ec(A=Bl(C=[]).call(C,wl(this._subscribers[g]),wl(this._subscribers["*"]))).call(A,(function(A){A(g,t,null!=e?e:null)}))}},{key:"on",value:function(g,t){"function"==typeof t&&this._subscribers[g].push(t)}},{key:"off",value:function(g,t){var e;this._subscribers[g]=Ap(e=this._subscribers[g]).call(e,(function(g){return g!==t}))}}]),g}();kP=RN;var FP=function(){function g(t){cd(this,g),zh(this,"_pairs",void 0),this._pairs=t}return Bh(g,[{key:kP,value:WD.mark((function g(){var t,e,A,C,I;return WD.wrap((function(g){for(;;)switch(g.prev=g.next){case 0:t=RP(this._pairs),g.prev=1,t.s();case 3:if((e=t.n()).done){g.next=9;break}return A=bl(e.value,2),C=A[0],I=A[1],g.next=7,[C,I];case 7:g.next=3;break;case 9:g.next=14;break;case 11:g.prev=11,g.t0=g.catch(1),t.e(g.t0);case 14:return g.prev=14,t.f(),g.finish(14);case 17:case"end":return g.stop()}}),g,this,[[1,11,14,17]])}))},{key:"entries",value:WD.mark((function g(){var t,e,A,C,I;return WD.wrap((function(g){for(;;)switch(g.prev=g.next){case 0:t=RP(this._pairs),g.prev=1,t.s();case 3:if((e=t.n()).done){g.next=9;break}return A=bl(e.value,2),C=A[0],I=A[1],g.next=7,[C,I];case 7:g.next=3;break;case 9:g.next=14;break;case 11:g.prev=11,g.t0=g.catch(1),t.e(g.t0);case 14:return g.prev=14,t.f(),g.finish(14);case 17:case"end":return g.stop()}}),g,this,[[1,11,14,17]])}))},{key:"keys",value:WD.mark((function g(){var t,e,A,C;return WD.wrap((function(g){for(;;)switch(g.prev=g.next){case 0:t=RP(this._pairs),g.prev=1,t.s();case 3:if((e=t.n()).done){g.next=9;break}return A=bl(e.value,1),C=A[0],g.next=7,C;case 7:g.next=3;break;case 9:g.next=14;break;case 11:g.prev=11,g.t0=g.catch(1),t.e(g.t0);case 14:return g.prev=14,t.f(),g.finish(14);case 17:case"end":return g.stop()}}),g,this,[[1,11,14,17]])}))},{key:"values",value:WD.mark((function g(){var t,e,A,C;return WD.wrap((function(g){for(;;)switch(g.prev=g.next){case 0:t=RP(this._pairs),g.prev=1,t.s();case 3:if((e=t.n()).done){g.next=9;break}return A=bl(e.value,2),C=A[1],g.next=7,C;case 7:g.next=3;break;case 9:g.next=14;break;case 11:g.prev=11,g.t0=g.catch(1),t.e(g.t0);case 14:return g.prev=14,t.f(),g.finish(14);case 17:case"end":return g.stop()}}),g,this,[[1,11,14,17]])}))},{key:"toIdArray",value:function(){var g;return ql(g=wl(this._pairs)).call(g,(function(g){return g[0]}))}},{key:"toItemArray",value:function(){var g;return ql(g=wl(this._pairs)).call(g,(function(g){return g[1]}))}},{key:"toEntryArray",value:function(){return wl(this._pairs)}},{key:"toObjectMap",value:function(){var g,t=pf(null),e=RP(this._pairs);try{for(e.s();!(g=e.n()).done;){var A=bl(g.value,2),C=A[0],I=A[1];t[C]=I}}catch(g){e.e(g)}finally{e.f()}return t}},{key:"toMap",value:function(){return new Ex(this._pairs)}},{key:"toIdSet",value:function(){return new DN(this.toIdArray())}},{key:"toItemSet",value:function(){return new DN(this.toItemArray())}},{key:"cache",value:function(){return new g(wl(this._pairs))}},{key:"distinct",value:function(g){var t,e=new DN,A=RP(this._pairs);try{for(A.s();!(t=A.n()).done;){var C=bl(t.value,2),I=C[0],i=C[1];e.add(g(i,I))}}catch(g){A.e(g)}finally{A.f()}return e}},{key:"filter",value:function(t){var e=this._pairs;return new g(zh({},RN,WD.mark((function g(){var A,C,I,i,o;return WD.wrap((function(g){for(;;)switch(g.prev=g.next){case 0:A=RP(e),g.prev=1,A.s();case 3:if((C=A.n()).done){g.next=10;break}if(I=bl(C.value,2),i=I[0],o=I[1],!t(o,i)){g.next=8;break}return g.next=8,[i,o];case 8:g.next=3;break;case 10:g.next=15;break;case 12:g.prev=12,g.t0=g.catch(1),A.e(g.t0);case 15:return g.prev=15,A.f(),g.finish(15);case 18:case"end":return g.stop()}}),g,null,[[1,12,15,18]])}))))}},{key:"forEach",value:function(g){var t,e=RP(this._pairs);try{for(e.s();!(t=e.n()).done;){var A=bl(t.value,2),C=A[0];g(A[1],C)}}catch(g){e.e(g)}finally{e.f()}}},{key:"map",value:function(t){var e=this._pairs;return new g(zh({},RN,WD.mark((function g(){var A,C,I,i,o;return WD.wrap((function(g){for(;;)switch(g.prev=g.next){case 0:A=RP(e),g.prev=1,A.s();case 3:if((C=A.n()).done){g.next=9;break}return I=bl(C.value,2),i=I[0],o=I[1],g.next=7,[i,t(o,i)];case 7:g.next=3;break;case 9:g.next=14;break;case 11:g.prev=11,g.t0=g.catch(1),A.e(g.t0);case 14:return g.prev=14,A.f(),g.finish(14);case 17:case"end":return g.stop()}}),g,null,[[1,11,14,17]])}))))}},{key:"max",value:function(g){var t=SN(this._pairs),e=t.next();if(e.done)return null;for(var A=e.value[1],C=g(e.value[1],e.value[0]);!(e=t.next()).done;){var I=bl(e.value,2),i=I[0],o=I[1],n=g(o,i);n>C&&(C=n,A=o)}return A}},{key:"min",value:function(g){var t=SN(this._pairs),e=t.next();if(e.done)return null;for(var A=e.value[1],C=g(e.value[1],e.value[0]);!(e=t.next()).done;){var I=bl(e.value,2),i=I[0],o=I[1],n=g(o,i);n<C&&(C=n,A=o)}return A}},{key:"reduce",value:function(g,t){var e,A=RP(this._pairs);try{for(A.s();!(e=A.n()).done;){var C=bl(e.value,2),I=C[0];t=g(t,C[1],I)}}catch(g){A.e(g)}finally{A.f()}return t}},{key:"sort",value:function(t){var e=this;return new g(zh({},RN,(function(){var g;return SN(wR(g=wl(e._pairs)).call(g,(function(g,e){var A=bl(g,2),C=A[0],I=A[1],i=bl(e,2),o=i[0],n=i[1];return t(I,n,C,o)})))})))}}]),g}();var GP=function(g){dk(e,g);var t=NP(e);function e(g,A){var C;return cd(this,e),zh(Hx(C=t.call(this)),"flush",void 0),zh(Hx(C),"length",void 0),zh(Hx(C),"_options",void 0),zh(Hx(C),"_data",void 0),zh(Hx(C),"_idProp",void 0),zh(Hx(C),"_queue",null),g&&!Vl(g)&&(A=g,g=[]),C._options=A||{},C._data=new Ex,C.length=0,C._idProp=C._options.fieldId||"id",g&&g.length&&C.add(g),C.setOptions(A),C}return Bh(e,[{key:"idProp",get:function(){return this._idProp}},{key:"setOptions",value:function(g){g&&void 0!==g.queue&&(!1===g.queue?this._queue&&(this._queue.destroy(),this._queue=null):(this._queue||(this._queue=SP.extend(this,{replace:["add","update","remove"]})),g.queue&&"object"===kh(g.queue)&&this._queue.setOptions(g.queue)))}},{key:"add",value:function(g,t){var e,A=this,C=[];if(Vl(g)){var I=ql(g).call(g,(function(g){return g[A._idProp]}));if(_x(I).call(I,(function(g){return A._data.has(g)})))throw new Error("A duplicate id was found in the parameter array.");for(var i=0,o=g.length;i<o;i++)e=this._addItem(g[i]),C.push(e)}else{if(!g||"object"!==kh(g))throw new Error("Unknown dataType");e=this._addItem(g),C.push(e)}return C.length&&this._trigger("add",{items:C},t),C}},{key:"update",value:function(g,t){var e=this,A=[],C=[],I=[],i=[],o=this._idProp,n=function(g){var t=g[o];if(null!=t&&e._data.has(t)){var n=g,r=yA({},e._data.get(t)),s=e._updateItem(n);C.push(s),i.push(n),I.push(r)}else{var a=e._addItem(g);A.push(a)}};if(Vl(g))for(var r=0,s=g.length;r<s;r++)g[r]&&"object"===kh(g[r])?n(g[r]):console.warn("Ignoring input item, which is not an object at index "+r);else{if(!g||"object"!==kh(g))throw new Error("Unknown dataType");n(g)}if(A.length&&this._trigger("add",{items:A},t),C.length){var a={items:C,oldData:I,data:i};this._trigger("update",a,t)}return Bl(A).call(A,C)}},{key:"updateOnly",value:function(g,t){var e,A=this;Vl(g)||(g=[g]);var C=ql(e=ql(g).call(g,(function(g){var t=A._data.get(g[A._idProp]);if(null==t)throw new Error("Updating non-existent items is not allowed.");return{oldData:t,update:g}}))).call(e,(function(g){var t=g.oldData,e=g.update,C=t[A._idProp],I=function(g){for(var t,e=arguments.length,A=new Array(e>1?e-1:0),C=1;C<e;C++)A[C-1]=arguments[C];return ym.apply(void 0,Bl(t=[{},g]).call(t,A))}(t,e);return A._data.set(C,I),{id:C,oldData:t,updatedData:I}}));if(C.length){var I={items:ql(C).call(C,(function(g){return g.id})),oldData:ql(C).call(C,(function(g){return g.oldData})),data:ql(C).call(C,(function(g){return g.updatedData}))};return this._trigger("update",I,t),I.items}return[]}},{key:"get",value:function(g,t){var e=void 0,A=void 0,C=void 0;zP(g)?(e=g,C=t):Vl(g)?(A=g,C=t):C=g;var I,i=C&&"Object"===C.returnType?"Object":"Array",o=C&&Ap(C),n=[],r=void 0,s=void 0,a=void 0;if(null!=e)(r=this._data.get(e))&&o&&!o(r)&&(r=void 0);else if(null!=A)for(var d=0,h=A.length;d<h;d++)null==(r=this._data.get(A[d]))||o&&!o(r)||n.push(r);else for(var l,c=0,u=(s=wl(BR(l=this._data).call(l))).length;c<u;c++)a=s[c],null==(r=this._data.get(a))||o&&!o(r)||n.push(r);if(C&&C.order&&null==e&&this._sort(n,C.order),C&&C.fields){var p=C.fields;if(null!=e&&null!=r)r=this._filterFields(r,p);else for(var f=0,v=n.length;f<v;f++)n[f]=this._filterFields(n[f],p)}if("Object"==i){for(var y={},m=0,b=n.length;m<b;m++){var w=n[m];y[w[this._idProp]]=w}return y}return null!=e?null!==(I=r)&&void 0!==I?I:null:n}},{key:"getIds",value:function(g){var t=this._data,e=g&&Ap(g),A=g&&g.order,C=wl(BR(t).call(t)),I=[];if(e)if(A){for(var i=[],o=0,n=C.length;o<n;o++){var r=C[o],s=this._data.get(r);null!=s&&e(s)&&i.push(s)}this._sort(i,A);for(var a=0,d=i.length;a<d;a++)I.push(i[a][this._idProp])}else for(var h=0,l=C.length;h<l;h++){var c=C[h],u=this._data.get(c);null!=u&&e(u)&&I.push(u[this._idProp])}else if(A){for(var p=[],f=0,v=C.length;f<v;f++){var y=C[f];p.push(t.get(y))}this._sort(p,A);for(var m=0,b=p.length;m<b;m++)I.push(p[m][this._idProp])}else for(var w=0,x=C.length;w<x;w++){var k=C[w],E=t.get(k);null!=E&&I.push(E[this._idProp])}return I}},{key:"getDataSet",value:function(){return this}},{key:"forEach",value:function(g,t){var e=t&&Ap(t),A=this._data,C=wl(BR(A).call(A));if(t&&t.order)for(var I=this.get(t),i=0,o=I.length;i<o;i++){var n=I[i];g(n,n[this._idProp])}else for(var r=0,s=C.length;r<s;r++){var a=C[r],d=this._data.get(a);null==d||e&&!e(d)||g(d,a)}}},{key:"map",value:function(g,t){for(var e=t&&Ap(t),A=[],C=this._data,I=wl(BR(C).call(C)),i=0,o=I.length;i<o;i++){var n=I[i],r=this._data.get(n);null==r||e&&!e(r)||A.push(g(r,n))}return t&&t.order&&this._sort(A,t.order),A}},{key:"_filterFields",value:function(g,t){var e;return g?iN(e=Vl(t)?t:Cc(t)).call(e,(function(t,e){return t[e]=g[e],t}),{}):g}},{key:"_sort",value:function(g,t){if("string"==typeof t){var e=t;wR(g).call(g,(function(g,t){var A=g[e],C=t[e];return A>C?1:A<C?-1:0}))}else{if("function"!=typeof t)throw new TypeError("Order must be a function or a string");wR(g).call(g,t)}}},{key:"remove",value:function(g,t){for(var e=[],A=[],C=Vl(g)?g:[g],I=0,i=C.length;I<i;I++){var o=this._remove(C[I]);if(o){var n=o[this._idProp];null!=n&&(e.push(n),A.push(o))}}return e.length&&this._trigger("remove",{items:e,oldData:A},t),e}},{key:"_remove",value:function(g){var t;if(zP(g)?t=g:g&&"object"===kh(g)&&(t=g[this._idProp]),null!=t&&this._data.has(t)){var e=this._data.get(t)||null;return this._data.delete(t),--this.length,e}return null}},{key:"clear",value:function(g){for(var t,e=wl(BR(t=this._data).call(t)),A=[],C=0,I=e.length;C<I;C++)A.push(this._data.get(e[C]));return this._data.clear(),this.length=0,this._trigger("remove",{items:e,oldData:A},g),e}},{key:"max",value:function(g){var t,e,A=null,C=null,I=RP(QR(t=this._data).call(t));try{for(I.s();!(e=I.n()).done;){var i=e.value,o=i[g];"number"==typeof o&&(null==C||o>C)&&(A=i,C=o)}}catch(g){I.e(g)}finally{I.f()}return A||null}},{key:"min",value:function(g){var t,e,A=null,C=null,I=RP(QR(t=this._data).call(t));try{for(I.s();!(e=I.n()).done;){var i=e.value,o=i[g];"number"==typeof o&&(null==C||o<C)&&(A=i,C=o)}}catch(g){I.e(g)}finally{I.f()}return A||null}},{key:"distinct",value:function(g){for(var t=this._data,e=wl(BR(t).call(t)),A=[],C=0,I=0,i=e.length;I<i;I++){for(var o=e[I],n=t.get(o)[g],r=!1,s=0;s<C;s++)if(A[s]==n){r=!0;break}r||void 0===n||(A[C]=n,C++)}return A}},{key:"_addItem",value:function(g){var t=function(g,t){return null==g[t]&&(g[t]=OP()),g}(g,this._idProp),e=t[this._idProp];if(this._data.has(e))throw new Error("Cannot add item: item with id "+e+" already exists");return this._data.set(e,t),++this.length,e}},{key:"_updateItem",value:function(g){var t=g[this._idProp];if(null==t)throw new Error("Cannot update item: item has no id (item: "+xf(g)+")");var e=this._data.get(t);if(!e)throw new Error("Cannot update item: no item with id "+t+" found");return this._data.set(t,DP(DP({},e),g)),t}},{key:"stream",value:function(g){if(g){var t=this._data;return new FP(zh({},RN,WD.mark((function e(){var A,C,I,i;return WD.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:A=RP(g),e.prev=1,A.s();case 3:if((C=A.n()).done){e.next=11;break}if(I=C.value,null==(i=t.get(I))){e.next=9;break}return e.next=9,[I,i];case 9:e.next=3;break;case 11:e.next=16;break;case 13:e.prev=13,e.t0=e.catch(1),A.e(e.t0);case 16:return e.prev=16,A.f(),e.finish(16);case 19:case"end":return e.stop()}}),e,null,[[1,13,16,19]])}))))}var e;return new FP(zh({},RN,QA(e=eP(this._data)).call(e,this._data)))}}]),e}(ZP),jP=function(g){dk(e,g);var t=NP(e);function e(g,A){var C,I;return cd(this,e),zh(Hx(I=t.call(this)),"length",0),zh(Hx(I),"_listener",void 0),zh(Hx(I),"_data",void 0),zh(Hx(I),"_ids",new DN),zh(Hx(I),"_options",void 0),I._options=A||{},I._listener=QA(C=I._onEvent).call(C,Hx(I)),I.setData(g),I}return Bh(e,[{key:"idProp",get:function(){return this.getDataSet().idProp}},{key:"setData",value:function(g){if(this._data){this._data.off&&this._data.off("*",this._listener);var t=this._data.getIds({filter:Ap(this._options)}),e=this._data.get(t);this._ids.clear(),this.length=0,this._trigger("remove",{items:t,oldData:e})}if(null!=g){this._data=g;for(var A=this._data.getIds({filter:Ap(this._options)}),C=0,I=A.length;C<I;C++){var i=A[C];this._ids.add(i)}this.length=A.length,this._trigger("add",{items:A})}else this._data=new GP;this._data.on&&this._data.on("*",this._listener)}},{key:"refresh",value:function(){for(var g=this._data.getIds({filter:Ap(this._options)}),t=wl(this._ids),e={},A=[],C=[],I=[],i=0,o=g.length;i<o;i++){var n=g[i];e[n]=!0,this._ids.has(n)||(A.push(n),this._ids.add(n))}for(var r=0,s=t.length;r<s;r++){var a=t[r],d=this._data.get(a);null==d?console.error("If you see this, report it please."):e[a]||(C.push(a),I.push(d),this._ids.delete(a))}this.length+=A.length-C.length,A.length&&this._trigger("add",{items:A}),C.length&&this._trigger("remove",{items:C,oldData:I})}},{key:"get",value:function(g,t){if(null==this._data)return null;var e,A=null;zP(g)||Vl(g)?(A=g,e=t):e=g;var C=yA({},this._options,e),I=Ap(this._options),i=e&&Ap(e);return I&&i&&(C.filter=function(g){return I(g)&&i(g)}),null==A?this._data.get(C):this._data.get(A,C)}},{key:"getIds",value:function(g){if(this._data.length){var t,e=Ap(this._options),A=null!=g?Ap(g):null;return t=A?e?function(g){return e(g)&&A(g)}:A:e,this._data.getIds({filter:t,order:g&&g.order})}return[]}},{key:"forEach",value:function(g,t){if(this._data){var e,A,C=Ap(this._options),I=t&&Ap(t);A=I?C?function(g){return C(g)&&I(g)}:I:C,Ec(e=this._data).call(e,g,{filter:A,order:t&&t.order})}}},{key:"map",value:function(g,t){if(this._data){var e,A,C=Ap(this._options),I=t&&Ap(t);return A=I?C?function(g){return C(g)&&I(g)}:I:C,ql(e=this._data).call(e,g,{filter:A,order:t&&t.order})}return[]}},{key:"getDataSet",value:function(){return this._data.getDataSet()}},{key:"stream",value:function(g){var t;return this._data.stream(g||zh({},RN,QA(t=BR(this._ids)).call(t,this._ids)))}},{key:"dispose",value:function(){var g;null!==(g=this._data)&&void 0!==g&&g.off&&this._data.off("*",this._listener);var t,A="This data view has already been disposed of.",C={get:function(){throw new Error(A)},set:function(){throw new Error(A)},configurable:!1},I=RP(jl(e.prototype));try{for(I.s();!(t=I.n()).done;){var i=t.value;ld(this,i,C)}}catch(g){I.e(g)}finally{I.f()}}},{key:"_onEvent",value:function(g,t,e){if(t&&t.items&&this._data){var A=t.items,C=[],I=[],i=[],o=[],n=[],r=[];switch(g){case"add":for(var s=0,a=A.length;s<a;s++){var d=A[s];this.get(d)&&(this._ids.add(d),C.push(d))}break;case"update":for(var h=0,l=A.length;h<l;h++){var c=A[h];this.get(c)?this._ids.has(c)?(I.push(c),n.push(t.data[h]),o.push(t.oldData[h])):(this._ids.add(c),C.push(c)):this._ids.has(c)&&(this._ids.delete(c),i.push(c),r.push(t.oldData[h]))}break;case"remove":for(var u=0,p=A.length;u<p;u++){var f=A[u];this._ids.has(f)&&(this._ids.delete(f),i.push(f),r.push(t.oldData[u]))}}this.length+=C.length-i.length,C.length&&this._trigger("add",{items:C},e),I.length&&this._trigger("update",{items:I,oldData:o,data:n},e),i.length&&this._trigger("remove",{items:i,oldData:r},e)}}}]),e}(ZP);function LP(g,t){return"object"===kh(t)&&null!==t&&g===t.idProp&&"function"==typeof t.add&&"function"==typeof t.clear&&"function"==typeof t.distinct&&"function"==typeof Ec(t)&&"function"==typeof t.get&&"function"==typeof t.getDataSet&&"function"==typeof t.getIds&&"number"==typeof t.length&&"function"==typeof ql(t)&&"function"==typeof t.max&&"function"==typeof t.min&&"function"==typeof t.off&&"function"==typeof t.on&&"function"==typeof t.remove&&"function"==typeof t.setOptions&&"function"==typeof t.stream&&"function"==typeof t.update&&"function"==typeof t.updateOnly}function VP(g,t){return"object"===kh(t)&&null!==t&&g===t.idProp&&"function"==typeof Ec(t)&&"function"==typeof t.get&&"function"==typeof t.getDataSet&&"function"==typeof t.getIds&&"number"==typeof t.length&&"function"==typeof ql(t)&&"function"==typeof t.off&&"function"==typeof t.on&&"function"==typeof t.stream&&LP(g,t.getDataSet())}var YP=Object.freeze({__proto__:null,DELETE:vm,DataSet:GP,DataStream:FP,DataView:jP,Queue:SP,createNewDataPipeFrom:function(g){return new BP(g)},isDataSetLike:LP,isDataViewLike:VP}),WP={},QP={get exports(){return WP},set exports(g){WP=g}},UP=i,_P=o,HP=pC,KP=kp.trim,XP=pp,JP=f("".charAt),qP=UP.parseFloat,$P=UP.Symbol,gM=$P&&$P.iterator,tM=1/qP(XP+"-0")!=-1/0||gM&&!_P((function(){qP(Object(gM))}))?function(g){var t=KP(HP(g)),e=qP(t);return 0===e&&"-"==JP(t,0)?-0:e}:qP;De({global:!0,forced:parseFloat!=tM},{parseFloat:tM});var eM=Ag.parseFloat;!function(g){g.exports=eM}(QP);var AM=e(WP),CM={},IM={get exports(){return CM},set exports(g){CM=g}},iM=De,oM=o,nM=Tn.f;iM({target:"Object",stat:!0,forced:oM((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:nM});var rM=Ag.Object,sM=function(g){return rM.getOwnPropertyNames(g)},aM=sM;!function(g){g.exports=aM}(IM);var dM=e(CM);function hM(g,t){var e=["node","edge","label"],A=!0,C=gb(t,"chosen");if("boolean"==typeof C)A=C;else if("object"===kh(C)){if(-1===$p(e).call(e,g))throw new Error("choosify: subOption '"+g+"' should be one of '"+e.join("', '")+"'");var I=gb(t,["chosen",g]);"boolean"!=typeof I&&"function"!=typeof I||(A=I)}return A}function lM(g,t,e){if(g.width<=0||g.height<=0)return!1;if(void 0!==e){var A={x:t.x-e.x,y:t.y-e.y};if(0!==e.angle){var C=-e.angle;t={x:Math.cos(C)*A.x-Math.sin(C)*A.y,y:Math.sin(C)*A.x+Math.cos(C)*A.y}}else t=A}var I=g.x+g.width,i=g.y+g.width;return g.left<t.x&&I>t.x&&g.top<t.y&&i>t.y}function cM(g){return"string"==typeof g&&""!==g}function uM(g,t,e,A){var C=A.x,I=A.y;if("function"==typeof A.distanceToBorder){var i=A.distanceToBorder(g,t),o=Math.sin(t)*i,n=Math.cos(t)*i;n===i?(C+=i,I=A.y):o===i?(C=A.x,I-=i):(C+=n,I-=o)}else A.shape.width>A.shape.height?(C=A.x+.5*A.shape.width,I=A.y-e):(C=A.x+e,I=A.y-.5*A.shape.height);return{x:C,y:I}}var pM=function(){function g(t){cd(this,g),this.measureText=t,this.current=0,this.width=0,this.height=0,this.lines=[]}return Bh(g,[{key:"_add",value:function(g,t){var e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"normal";void 0===this.lines[g]&&(this.lines[g]={width:0,height:0,blocks:[]});var A=t;void 0!==t&&""!==t||(A=" ");var C=this.measureText(A,e),I=yA({},QR(C));I.text=t,I.width=C.width,I.mod=e,void 0!==t&&""!==t||(I.width=0),this.lines[g].blocks.push(I),this.lines[g].width+=I.width}},{key:"curWidth",value:function(){var g=this.lines[this.current];return void 0===g?0:g.width}},{key:"append",value:function(g){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"normal";this._add(this.current,g,t)}},{key:"newLine",value:function(g){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"normal";this._add(this.current,g,t),this.current++}},{key:"determineLineHeights",value:function(){for(var g=0;g<this.lines.length;g++){var t=this.lines[g],e=0;if(void 0!==t.blocks)for(var A=0;A<t.blocks.length;A++){var C=t.blocks[A];e<C.height&&(e=C.height)}t.height=e}}},{key:"determineLabelSize",value:function(){for(var g=0,t=0,e=0;e<this.lines.length;e++){var A=this.lines[e];A.width>g&&(g=A.width),t+=A.height}this.width=g,this.height=t}},{key:"removeEmptyBlocks",value:function(){for(var g=[],t=0;t<this.lines.length;t++){var e=this.lines[t];if(0!==e.blocks.length&&(t!==this.lines.length-1||0!==e.width)){var A={};yA(A,e),A.blocks=[];for(var C=void 0,I=[],i=0;i<e.blocks.length;i++){var o=e.blocks[i];0!==o.width?I.push(o):void 0===C&&(C=o)}0===I.length&&void 0!==C&&I.push(C),A.blocks=I,g.push(A)}}return g}},{key:"finalize",value:function(){this.determineLineHeights(),this.determineLabelSize();var g=this.removeEmptyBlocks();return{width:this.width,height:this.height,lines:g}}}]),g}(),fM={"<b>":/<b>/,"<i>":/<i>/,"<code>":/<code>/,"</b>":/<\/b>/,"</i>":/<\/i>/,"</code>":/<\/code>/,"*":/\*/,_:/_/,"`":/`/,afterBold:/[^*]/,afterItal:/[^_]/,afterMono:/[^`]/},vM=function(){function g(t){cd(this,g),this.text=t,this.bold=!1,this.ital=!1,this.mono=!1,this.spacing=!1,this.position=0,this.buffer="",this.modStack=[],this.blocks=[]}return Bh(g,[{key:"mod",value:function(){return 0===this.modStack.length?"normal":this.modStack[0]}},{key:"modName",value:function(){return 0===this.modStack.length?"normal":"mono"===this.modStack[0]?"mono":this.bold&&this.ital?"boldital":this.bold?"bold":this.ital?"ital":void 0}},{key:"emitBlock",value:function(){this.spacing&&(this.add(" "),this.spacing=!1),this.buffer.length>0&&(this.blocks.push({text:this.buffer,mod:this.modName()}),this.buffer="")}},{key:"add",value:function(g){" "===g&&(this.spacing=!0),this.spacing&&(this.buffer+=" ",this.spacing=!1)," "!=g&&(this.buffer+=g)}},{key:"parseWS",value:function(g){return!!/[ \t]/.test(g)&&(this.mono?this.add(g):this.spacing=!0,!0)}},{key:"setTag",value:function(g){this.emitBlock(),this[g]=!0,this.modStack.unshift(g)}},{key:"unsetTag",value:function(g){this.emitBlock(),this[g]=!1,this.modStack.shift()}},{key:"parseStartTag",value:function(g,t){return!(this.mono||this[g]||!this.match(t))&&(this.setTag(g),!0)}},{key:"match",value:function(g){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],e=bl(this.prepareRegExp(g),2),A=e[0],C=e[1],I=A.test(this.text.substr(this.position,C));return I&&t&&(this.position+=C-1),I}},{key:"parseEndTag",value:function(g,t,e){var A=this.mod()===g;return!(!(A="mono"===g?A&&this.mono:A&&!this.mono)||!this.match(t))&&(void 0!==e?(this.position===this.text.length-1||this.match(e,!1))&&this.unsetTag(g):this.unsetTag(g),!0)}},{key:"replace",value:function(g,t){return!!this.match(g)&&(this.add(t),this.position+=length-1,!0)}},{key:"prepareRegExp",value:function(g){var t,e;if(g instanceof RegExp)e=g,t=1;else{var A=fM[g];e=void 0!==A?A:new RegExp(g),t=g.length}return[e,t]}}]),g}(),yM=function(){function g(t,e,A,C){var I=this;cd(this,g),this.ctx=t,this.parent=e,this.selected=A,this.hover=C;this.lines=new pM((function(g,e){if(void 0===g)return 0;var i=I.parent.getFormattingValues(t,A,C,e),o=0;""!==g&&(o=I.ctx.measureText(g).width);return{width:o,values:i}}))}return Bh(g,[{key:"process",value:function(g){if(!cM(g))return this.lines.finalize();var t=this.parent.fontOptions;g=(g=g.replace(/\r\n/g,"\n")).replace(/\r/g,"\n");var e=String(g).split("\n"),A=e.length;if(t.multi)for(var C=0;C<A;C++){var I=this.splitBlocks(e[C],t.multi);if(void 0!==I)if(0!==I.length){if(t.maxWdt>0)for(var i=0;i<I.length;i++){var o=I[i].mod,n=I[i].text;this.splitStringIntoLines(n,o,!0)}else for(var r=0;r<I.length;r++){var s=I[r].mod,a=I[r].text;this.lines.append(a,s)}this.lines.newLine()}else this.lines.newLine("")}else if(t.maxWdt>0)for(var d=0;d<A;d++)this.splitStringIntoLines(e[d]);else for(var h=0;h<A;h++)this.lines.newLine(e[h]);return this.lines.finalize()}},{key:"decodeMarkupSystem",value:function(g){var t="none";return"markdown"===g||"md"===g?t="markdown":!0!==g&&"html"!==g||(t="html"),t}},{key:"splitHtmlBlocks",value:function(g){for(var t=new vM(g),e=function(g){return!!/&/.test(g)&&(t.replace(t.text,"&lt;","<")||t.replace(t.text,"&amp;","&")||t.add("&"),!0)};t.position<t.text.length;){var A=t.text.charAt(t.position);t.parseWS(A)||/</.test(A)&&(t.parseStartTag("bold","<b>")||t.parseStartTag("ital","<i>")||t.parseStartTag("mono","<code>")||t.parseEndTag("bold","</b>")||t.parseEndTag("ital","</i>")||t.parseEndTag("mono","</code>"))||e(A)||t.add(A),t.position++}return t.emitBlock(),t.blocks}},{key:"splitMarkdownBlocks",value:function(g){for(var t=this,e=new vM(g),A=!0,C=function(g){return!!/\\/.test(g)&&(e.position<t.text.length+1&&(e.position++,g=t.text.charAt(e.position),/ \t/.test(g)?e.spacing=!0:(e.add(g),A=!1)),!0)};e.position<e.text.length;){var I=e.text.charAt(e.position);e.parseWS(I)||C(I)||(A||e.spacing)&&(e.parseStartTag("bold","*")||e.parseStartTag("ital","_")||e.parseStartTag("mono","`"))||e.parseEndTag("bold","*","afterBold")||e.parseEndTag("ital","_","afterItal")||e.parseEndTag("mono","`","afterMono")||(e.add(I),A=!1),e.position++}return e.emitBlock(),e.blocks}},{key:"splitBlocks",value:function(g,t){var e=this.decodeMarkupSystem(t);return"none"===e?[{text:g,mod:"normal"}]:"markdown"===e?this.splitMarkdownBlocks(g):"html"===e?this.splitHtmlBlocks(g):void 0}},{key:"overMaxWidth",value:function(g){var t=this.ctx.measureText(g).width;return this.lines.curWidth()+t>this.parent.fontOptions.maxWdt}},{key:"getLongestFit",value:function(g){for(var t="",e=0;e<g.length;){var A=t+(""===t?"":" ")+g[e];if(this.overMaxWidth(A))break;t=A,e++}return e}},{key:"getLongestFitWord",value:function(g){for(var t=0;t<g.length&&!this.overMaxWidth(Sl(g).call(g,0,t));)t++;return t}},{key:"splitStringIntoLines",value:function(g){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"normal",e=arguments.length>2&&void 0!==arguments[2]&&arguments[2];this.parent.getFormattingValues(this.ctx,this.selected,this.hover,t);for(var A=(g=(g=g.replace(/^( +)/g,"$1\r")).replace(/([^\r][^ ]*)( +)/g,"$1\r$2\r")).split("\r");A.length>0;){var C=this.getLongestFit(A);if(0===C){var I=A[0],i=this.getLongestFitWord(I);this.lines.newLine(Sl(I).call(I,0,i),t),A[0]=Sl(I).call(I,i)}else{var o=C;" "===A[C-1]?C--:" "===A[o]&&o++;var n=Sl(A).call(A,0,C).join("");C==A.length&&e?this.lines.append(n,t):this.lines.newLine(n,t),A=Sl(A).call(A,o)}}}}]),g}(),mM=["bold","ital","boldital","mono"],bM=function(){function g(t,e){var A=arguments.length>2&&void 0!==arguments[2]&&arguments[2];cd(this,g),this.body=t,this.pointToSelf=!1,this.baseSize=void 0,this.fontOptions={},this.setOptions(e),this.size={top:0,left:0,width:0,height:0,yLine:0},this.isEdgeLabel=A}return Bh(g,[{key:"setOptions",value:function(g){if(this.elementOptions=g,this.initFontOptions(g.font),cM(g.label)?this.labelDirty=!0:g.label=void 0,void 0!==g.font&&null!==g.font)if("string"==typeof g.font)this.baseSize=this.fontOptions.size;else if("object"===kh(g.font)){var t=g.font.size;void 0!==t&&(this.baseSize=t)}}},{key:"initFontOptions",value:function(t){var e=this;Lm(mM,(function(g){e.fontOptions[g]={}})),g.parseFontString(this.fontOptions,t)?this.fontOptions.vadjust=0:Lm(t,(function(g,t){null!=g&&"object"!==kh(g)&&(e.fontOptions[t]=g)}))}},{key:"constrain",value:function(g){var t={constrainWidth:!1,maxWdt:-1,minWdt:-1,constrainHeight:!1,minHgt:-1,valign:"middle"},e=gb(g,"widthConstraint");if("number"==typeof e)t.maxWdt=Number(e),t.minWdt=Number(e);else if("object"===kh(e)){var A=gb(g,["widthConstraint","maximum"]);"number"==typeof A&&(t.maxWdt=Number(A));var C=gb(g,["widthConstraint","minimum"]);"number"==typeof C&&(t.minWdt=Number(C))}var I=gb(g,"heightConstraint");if("number"==typeof I)t.minHgt=Number(I);else if("object"===kh(I)){var i=gb(g,["heightConstraint","minimum"]);"number"==typeof i&&(t.minHgt=Number(i));var o=gb(g,["heightConstraint","valign"]);"string"==typeof o&&("top"!==o&&"bottom"!==o||(t.valign=o))}return t}},{key:"update",value:function(g,t){this.setOptions(g,!0),this.propagateFonts(t),Fm(this.fontOptions,this.constrain(t)),this.fontOptions.chooser=hM("label",t)}},{key:"adjustSizes",value:function(g){var t=g?g.right+g.left:0;this.fontOptions.constrainWidth&&(this.fontOptions.maxWdt-=t,this.fontOptions.minWdt-=t);var e=g?g.top+g.bottom:0;this.fontOptions.constrainHeight&&(this.fontOptions.minHgt-=e)}},{key:"addFontOptionsToPile",value:function(g,t){for(var e=0;e<t.length;++e)this.addFontToPile(g,t[e])}},{key:"addFontToPile",value:function(g,t){if(void 0!==t&&void 0!==t.font&&null!==t.font){var e=t.font;g.push(e)}}},{key:"getBasicOptions",value:function(t){for(var e={},A=0;A<t.length;++A){var C=t[A],I={};g.parseFontString(I,C)&&(C=I),Lm(C,(function(g,t){void 0!==g&&(Object.prototype.hasOwnProperty.call(e,t)||(-1!==$p(mM).call(mM,t)?e[t]={}:e[t]=g))}))}return e}},{key:"getFontOption",value:function(t,e,A){for(var C,I=0;I<t.length;++I){var i=t[I];if(Object.prototype.hasOwnProperty.call(i,e)){if(null==(C=i[e]))continue;var o={};if(g.parseFontString(o,C)&&(C=o),Object.prototype.hasOwnProperty.call(C,A))return C[A]}}if(Object.prototype.hasOwnProperty.call(this.fontOptions,A))return this.fontOptions[A];throw new Error("Did not find value for multi-font for property: '"+A+"'")}},{key:"getFontOptions",value:function(g,t){for(var e={},A=["color","size","face","mod","vadjust"],C=0;C<A.length;++C){var I=A[C];e[I]=this.getFontOption(g,t,I)}return e}},{key:"propagateFonts",value:function(g){var t=this,e=[];this.addFontOptionsToPile(e,g),this.fontOptions=this.getBasicOptions(e);for(var A=function(){var g=mM[C],A=t.fontOptions[g];Lm(t.getFontOptions(e,g),(function(g,t){A[t]=g})),A.size=Number(A.size),A.vadjust=Number(A.vadjust)},C=0;C<mM.length;++C)A()}},{key:"draw",value:function(g,t,e,A,C){var I=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"middle";if(void 0!==this.elementOptions.label){var i=this.fontOptions.size*this.body.view.scale;this.elementOptions.label&&i<this.elementOptions.scaling.label.drawThreshold-1||(i>=this.elementOptions.scaling.label.maxVisible&&(i=Number(this.elementOptions.scaling.label.maxVisible)/this.body.view.scale),this.calculateLabelSize(g,A,C,t,e,I),this._drawBackground(g),this._drawText(g,t,this.size.yLine,I,i))}}},{key:"_drawBackground",value:function(g){if(void 0!==this.fontOptions.background&&"none"!==this.fontOptions.background){g.fillStyle=this.fontOptions.background;var t=this.getSize();g.fillRect(t.left,t.top,t.width,t.height)}}},{key:"_drawText",value:function(g,t,e){var A=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"middle",C=arguments.length>4?arguments[4]:void 0,I=bl(this._setAlignment(g,t,e,A),2);t=I[0],e=I[1],g.textAlign="left",t-=this.size.width/2,this.fontOptions.valign&&this.size.height>this.size.labelHeight&&("top"===this.fontOptions.valign&&(e-=(this.size.height-this.size.labelHeight)/2),"bottom"===this.fontOptions.valign&&(e+=(this.size.height-this.size.labelHeight)/2));for(var i=0;i<this.lineCount;i++){var o=this.lines[i];if(o&&o.blocks){var n=0;this.isEdgeLabel||"center"===this.fontOptions.align?n+=(this.size.width-o.width)/2:"right"===this.fontOptions.align&&(n+=this.size.width-o.width);for(var r=0;r<o.blocks.length;r++){var s=o.blocks[r];g.font=s.font;var a=bl(this._getColor(s.color,C,s.strokeColor),2),d=a[0],h=a[1];s.strokeWidth>0&&(g.lineWidth=s.strokeWidth,g.strokeStyle=h,g.lineJoin="round"),g.fillStyle=d,s.strokeWidth>0&&g.strokeText(s.text,t+n,e+s.vadjust),g.fillText(s.text,t+n,e+s.vadjust),n+=s.width}e+=o.height}}}},{key:"_setAlignment",value:function(g,t,e,A){if(this.isEdgeLabel&&"horizontal"!==this.fontOptions.align&&!1===this.pointToSelf){t=0,e=0;"top"===this.fontOptions.align?(g.textBaseline="alphabetic",e-=4):"bottom"===this.fontOptions.align?(g.textBaseline="hanging",e+=4):g.textBaseline="middle"}else g.textBaseline=A;return[t,e]}},{key:"_getColor",value:function(g,t,e){var A=g||"#000000",C=e||"#ffffff";if(t<=this.elementOptions.scaling.label.drawThreshold){var I=Math.max(0,Math.min(1,1-(this.elementOptions.scaling.label.drawThreshold-t)));A=Ym(A,I),C=Ym(C,I)}return[A,C]}},{key:"getTextSize",value:function(g){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],e=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return this._processLabel(g,t,e),{width:this.size.width,height:this.size.height,lineCount:this.lineCount}}},{key:"getSize",value:function(){var g=this.size.left,t=this.size.top-1;if(this.isEdgeLabel){var e=.5*-this.size.width;switch(this.fontOptions.align){case"middle":g=e,t=.5*-this.size.height;break;case"top":g=e,t=-(this.size.height+2);break;case"bottom":g=e,t=2}}return{left:g,top:t,width:this.size.width,height:this.size.height}}},{key:"calculateLabelSize",value:function(g,t,e){var A=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,C=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,I=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"middle";this._processLabel(g,t,e),this.size.left=A-.5*this.size.width,this.size.top=C-.5*this.size.height,this.size.yLine=C+.5*(1-this.lineCount)*this.fontOptions.size,"hanging"===I&&(this.size.top+=.5*this.fontOptions.size,this.size.top+=4,this.size.yLine+=4)}},{key:"getFormattingValues",value:function(g,t,e,A){var C=function(g,t,e){return"normal"===t?"mod"===e?"":g[e]:void 0!==g[t][e]?g[t][e]:g[e]},I={color:C(this.fontOptions,A,"color"),size:C(this.fontOptions,A,"size"),face:C(this.fontOptions,A,"face"),mod:C(this.fontOptions,A,"mod"),vadjust:C(this.fontOptions,A,"vadjust"),strokeWidth:this.fontOptions.strokeWidth,strokeColor:this.fontOptions.strokeColor};(t||e)&&("normal"===A&&!0===this.fontOptions.chooser&&this.elementOptions.labelHighlightBold?I.mod="bold":"function"==typeof this.fontOptions.chooser&&this.fontOptions.chooser(I,this.elementOptions.id,t,e));var i="";return void 0!==I.mod&&""!==I.mod&&(i+=I.mod+" "),i+=I.size+"px "+I.face,g.font=i.replace(/"/g,""),I.font=g.font,I.height=I.size,I}},{key:"differentState",value:function(g,t){return g!==this.selectedState||t!==this.hoverState}},{key:"_processLabelText",value:function(g,t,e,A){return new yM(g,this,t,e).process(A)}},{key:"_processLabel",value:function(g,t,e){if(!1!==this.labelDirty||this.differentState(t,e)){var A=this._processLabelText(g,t,e,this.elementOptions.label);this.fontOptions.minWdt>0&&A.width<this.fontOptions.minWdt&&(A.width=this.fontOptions.minWdt),this.size.labelHeight=A.height,this.fontOptions.minHgt>0&&A.height<this.fontOptions.minHgt&&(A.height=this.fontOptions.minHgt),this.lines=A.lines,this.lineCount=A.lines.length,this.size.width=A.width,this.size.height=A.height,this.selectedState=t,this.hoverState=e,this.labelDirty=!1}}},{key:"visible",value:function(){return 0!==this.size.width&&0!==this.size.height&&void 0!==this.elementOptions.label&&!(this.fontOptions.size*this.body.view.scale<this.elementOptions.scaling.label.drawThreshold-1)}}],[{key:"parseFontString",value:function(g,t){if(!t||"string"!=typeof t)return!1;var e=t.split(" ");return g.size=+e[0].replace("px",""),g.face=e[1],g.color=e[2],!0}}]),g}(),wM=function(){function g(t,e,A){cd(this,g),this.body=e,this.labelModule=A,this.setOptions(t),this.top=void 0,this.left=void 0,this.height=void 0,this.width=void 0,this.radius=void 0,this.margin=void 0,this.refreshNeeded=!0,this.boundingBox={top:0,left:0,right:0,bottom:0}}return Bh(g,[{key:"setOptions",value:function(g){this.options=g}},{key:"_setMargins",value:function(g){this.margin={},this.options.margin&&("object"==kh(this.options.margin)?(this.margin.top=this.options.margin.top,this.margin.right=this.options.margin.right,this.margin.bottom=this.options.margin.bottom,this.margin.left=this.options.margin.left):(this.margin.top=this.options.margin,this.margin.right=this.options.margin,this.margin.bottom=this.options.margin,this.margin.left=this.options.margin)),g.adjustSizes(this.margin)}},{key:"_distanceToBorder",value:function(g,t){var e=this.options.borderWidth;return g&&this.resize(g),Math.min(Math.abs(this.width/2/Math.cos(t)),Math.abs(this.height/2/Math.sin(t)))+e}},{key:"enableShadow",value:function(g,t){t.shadow&&(g.shadowColor=t.shadowColor,g.shadowBlur=t.shadowSize,g.shadowOffsetX=t.shadowX,g.shadowOffsetY=t.shadowY)}},{key:"disableShadow",value:function(g,t){t.shadow&&(g.shadowColor="rgba(0,0,0,0)",g.shadowBlur=0,g.shadowOffsetX=0,g.shadowOffsetY=0)}},{key:"enableBorderDashes",value:function(g,t){if(!1!==t.borderDashes)if(void 0!==g.setLineDash){var e=t.borderDashes;!0===e&&(e=[5,15]),g.setLineDash(e)}else console.warn("setLineDash is not supported in this browser. The dashed borders cannot be used."),this.options.shapeProperties.borderDashes=!1,t.borderDashes=!1}},{key:"disableBorderDashes",value:function(g,t){!1!==t.borderDashes&&(void 0!==g.setLineDash?g.setLineDash([0]):(console.warn("setLineDash is not supported in this browser. The dashed borders cannot be used."),this.options.shapeProperties.borderDashes=!1,t.borderDashes=!1))}},{key:"needsRefresh",value:function(g,t){return!0===this.refreshNeeded?(this.refreshNeeded=!1,!0):void 0===this.width||this.labelModule.differentState(g,t)}},{key:"initContextForDraw",value:function(g,t){var e=t.borderWidth/this.body.view.scale;g.lineWidth=Math.min(this.width,e),g.strokeStyle=t.borderColor,g.fillStyle=t.color}},{key:"performStroke",value:function(g,t){var e=t.borderWidth/this.body.view.scale;g.save(),e>0&&(this.enableBorderDashes(g,t),g.stroke(),this.disableBorderDashes(g,t)),g.restore()}},{key:"performFill",value:function(g,t){g.save(),g.fillStyle=t.color,this.enableShadow(g,t),ov(g).call(g),this.disableShadow(g,t),g.restore(),this.performStroke(g,t)}},{key:"_addBoundingBoxMargin",value:function(g){this.boundingBox.left-=g,this.boundingBox.top-=g,this.boundingBox.bottom+=g,this.boundingBox.right+=g}},{key:"_updateBoundingBox",value:function(g,t,e,A,C){void 0!==e&&this.resize(e,A,C),this.left=g-this.width/2,this.top=t-this.height/2,this.boundingBox.left=this.left,this.boundingBox.top=this.top,this.boundingBox.bottom=this.top+this.height,this.boundingBox.right=this.left+this.width}},{key:"updateBoundingBox",value:function(g,t,e,A,C){this._updateBoundingBox(g,t,e,A,C)}},{key:"getDimensionsFromLabel",value:function(g,t,e){this.textSize=this.labelModule.getTextSize(g,t,e);var A=this.textSize.width,C=this.textSize.height;return 0===A&&(A=14,C=14),{width:A,height:C}}}]),g}();function xM(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var kM=function(g){dk(e,g);var t=xM(e);function e(g,A,C){var I;return cd(this,e),(I=t.call(this,g,A,C))._setMargins(C),I}return Bh(e,[{key:"resize",value:function(g){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.selected,e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.hover;if(this.needsRefresh(t,e)){var A=this.getDimensionsFromLabel(g,t,e);this.width=A.width+this.margin.right+this.margin.left,this.height=A.height+this.margin.top+this.margin.bottom,this.radius=this.width/2}}},{key:"draw",value:function(g,t,e,A,C,I){this.resize(g,A,C),this.left=t-this.width/2,this.top=e-this.height/2,this.initContextForDraw(g,I),_A(g,this.left,this.top,this.width,this.height,I.borderRadius),this.performFill(g,I),this.updateBoundingBox(t,e,g,A,C),this.labelModule.draw(g,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,A,C)}},{key:"updateBoundingBox",value:function(g,t,e,A,C){this._updateBoundingBox(g,t,e,A,C);var I=this.options.shapeProperties.borderRadius;this._addBoundingBoxMargin(I)}},{key:"distanceToBorder",value:function(g,t){g&&this.resize(g);var e=this.options.borderWidth;return Math.min(Math.abs(this.width/2/Math.cos(t)),Math.abs(this.height/2/Math.sin(t)))+e}}]),e}(wM);function EM(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var OM=function(g){dk(e,g);var t=EM(e);function e(g,A,C){var I;return cd(this,e),(I=t.call(this,g,A,C)).labelOffset=0,I.selected=!1,I}return Bh(e,[{key:"setOptions",value:function(g,t,e){this.options=g,void 0===t&&void 0===e||this.setImages(t,e)}},{key:"setImages",value:function(g,t){t&&this.selected?(this.imageObj=t,this.imageObjAlt=g):(this.imageObj=g,this.imageObjAlt=t)}},{key:"switchImages",value:function(g){var t=g&&!this.selected||!g&&this.selected;if(this.selected=g,void 0!==this.imageObjAlt&&t){var e=this.imageObj;this.imageObj=this.imageObjAlt,this.imageObjAlt=e}}},{key:"_getImagePadding",value:function(){var g={top:0,right:0,bottom:0,left:0};if(this.options.imagePadding){var t=this.options.imagePadding;"object"==kh(t)?(g.top=t.top,g.right=t.right,g.bottom=t.bottom,g.left=t.left):(g.top=t,g.right=t,g.bottom=t,g.left=t)}return g}},{key:"_resizeImage",value:function(){var g,t;if(!1===this.options.shapeProperties.useImageSize){var e=1,A=1;this.imageObj.width&&this.imageObj.height&&(this.imageObj.width>this.imageObj.height?e=this.imageObj.width/this.imageObj.height:A=this.imageObj.height/this.imageObj.width),g=2*this.options.size*e,t=2*this.options.size*A}else{var C=this._getImagePadding();g=this.imageObj.width+C.left+C.right,t=this.imageObj.height+C.top+C.bottom}this.width=g,this.height=t,this.radius=.5*this.width}},{key:"_drawRawCircle",value:function(g,t,e,A){this.initContextForDraw(g,A),UA(g,t,e,A.size),this.performFill(g,A)}},{key:"_drawImageAtPosition",value:function(g,t){if(0!=this.imageObj.width){g.globalAlpha=void 0!==t.opacity?t.opacity:1,this.enableShadow(g,t);var e=1;!0===this.options.shapeProperties.interpolation&&(e=this.imageObj.width/this.width/this.body.view.scale);var A=this._getImagePadding(),C=this.left+A.left,I=this.top+A.top,i=this.width-A.left-A.right,o=this.height-A.top-A.bottom;this.imageObj.drawImageAtPosition(g,e,C,I,i,o),this.disableShadow(g,t)}}},{key:"_drawImageLabel",value:function(g,t,e,A,C){var I=0;if(void 0!==this.height){I=.5*this.height;var i=this.labelModule.getTextSize(g,A,C);i.lineCount>=1&&(I+=i.height/2)}var o=e+I;this.options.label&&(this.labelOffset=I),this.labelModule.draw(g,t,o,A,C,"hanging")}}]),e}(wM);function TM(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var DM=function(g){dk(e,g);var t=TM(e);function e(g,A,C){var I;return cd(this,e),(I=t.call(this,g,A,C))._setMargins(C),I}return Bh(e,[{key:"resize",value:function(g){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.selected,e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.hover;if(this.needsRefresh(t,e)){var A=this.getDimensionsFromLabel(g,t,e),C=Math.max(A.width+this.margin.right+this.margin.left,A.height+this.margin.top+this.margin.bottom);this.options.size=C/2,this.width=C,this.height=C,this.radius=this.width/2}}},{key:"draw",value:function(g,t,e,A,C,I){this.resize(g,A,C),this.left=t-this.width/2,this.top=e-this.height/2,this._drawRawCircle(g,t,e,I),this.updateBoundingBox(t,e),this.labelModule.draw(g,this.left+this.textSize.width/2+this.margin.left,e,A,C)}},{key:"updateBoundingBox",value:function(g,t){this.boundingBox.top=t-this.options.size,this.boundingBox.left=g-this.options.size,this.boundingBox.right=g+this.options.size,this.boundingBox.bottom=t+this.options.size}},{key:"distanceToBorder",value:function(g){return g&&this.resize(g),.5*this.width}}]),e}(OM);function NM(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var RM=function(g){dk(e,g);var t=NM(e);function e(g,A,C,I,i){var o;return cd(this,e),(o=t.call(this,g,A,C)).setImages(I,i),o}return Bh(e,[{key:"resize",value:function(g){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.selected,e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.hover;if(void 0===this.imageObj.src||void 0===this.imageObj.width||void 0===this.imageObj.height){var A=2*this.options.size;return this.width=A,this.height=A,void(this.radius=.5*this.width)}this.needsRefresh(t,e)&&this._resizeImage()}},{key:"draw",value:function(g,t,e,A,C,I){this.switchImages(A),this.resize();var i=t,o=e;"top-left"===this.options.shapeProperties.coordinateOrigin?(this.left=t,this.top=e,i+=this.width/2,o+=this.height/2):(this.left=t-this.width/2,this.top=e-this.height/2),this._drawRawCircle(g,i,o,I),g.save(),g.clip(),this._drawImageAtPosition(g,I),g.restore(),this._drawImageLabel(g,i,o,A,C),this.updateBoundingBox(t,e)}},{key:"updateBoundingBox",value:function(g,t){"top-left"===this.options.shapeProperties.coordinateOrigin?(this.boundingBox.top=t,this.boundingBox.left=g,this.boundingBox.right=g+2*this.options.size,this.boundingBox.bottom=t+2*this.options.size):(this.boundingBox.top=t-this.options.size,this.boundingBox.left=g-this.options.size,this.boundingBox.right=g+this.options.size,this.boundingBox.bottom=t+this.options.size),this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset)}},{key:"distanceToBorder",value:function(g){return g&&this.resize(g),.5*this.width}}]),e}(OM);function PM(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var MM=function(g){dk(e,g);var t=PM(e);function e(g,A,C){return cd(this,e),t.call(this,g,A,C)}return Bh(e,[{key:"resize",value:function(g){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.selected,e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.hover,A=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{size:this.options.size};if(this.needsRefresh(t,e)){var C,I;this.labelModule.getTextSize(g,t,e);var i=2*A.size;this.width=null!==(C=this.customSizeWidth)&&void 0!==C?C:i,this.height=null!==(I=this.customSizeHeight)&&void 0!==I?I:i,this.radius=.5*this.width}}},{key:"_drawShape",value:function(g,t,e,A,C,I,i,o){var n,r=this;return this.resize(g,I,i,o),this.left=A-this.width/2,this.top=C-this.height/2,this.initContextForDraw(g,o),(n=t,Object.prototype.hasOwnProperty.call(JA,n)?JA[n]:function(g){for(var t=arguments.length,e=new Array(t>1?t-1:0),A=1;A<t;A++)e[A-1]=arguments[A];CanvasRenderingContext2D.prototype[n].call(g,e)})(g,A,C,o.size),this.performFill(g,o),void 0!==this.options.icon&&void 0!==this.options.icon.code&&(g.font=(I?"bold ":"")+this.height/2+"px "+(this.options.icon.face||"FontAwesome"),g.fillStyle=this.options.icon.color||"black",g.textAlign="center",g.textBaseline="middle",g.fillText(this.options.icon.code,A,C)),{drawExternalLabel:function(){if(void 0!==r.options.label){r.labelModule.calculateLabelSize(g,I,i,A,C,"hanging");var t=C+.5*r.height+.5*r.labelModule.size.height;r.labelModule.draw(g,A,t,I,i,"hanging")}r.updateBoundingBox(A,C)}}}},{key:"updateBoundingBox",value:function(g,t){this.boundingBox.top=t-this.options.size,this.boundingBox.left=g-this.options.size,this.boundingBox.right=g+this.options.size,this.boundingBox.bottom=t+this.options.size,void 0!==this.options.label&&this.labelModule.size.width>0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height))}}]),e}(wM);function BM(g,t){var e=Cc(g);if(va){var A=va(g);t&&(A=Ap(A).call(A,(function(t){return Pa(g,t).enumerable}))),e.push.apply(e,A)}return e}function zM(g){for(var t=1;t<arguments.length;t++){var e,A,C=null!=arguments[t]?arguments[t]:{};t%2?Ec(e=BM(Object(C),!0)).call(e,(function(t){zh(g,t,C[t])})):Ua?Ad(g,Ua(C)):Ec(A=BM(Object(C))).call(A,(function(t){ld(g,t,Pa(C,t))}))}return g}function SM(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var ZM=function(g){dk(e,g);var t=SM(e);function e(g,A,C,I){var i;return cd(this,e),(i=t.call(this,g,A,C,I)).ctxRenderer=I,i}return Bh(e,[{key:"draw",value:function(g,t,e,A,C,I){this.resize(g,A,C,I),this.left=t-this.width/2,this.top=e-this.height/2,g.save();var i=this.ctxRenderer({ctx:g,id:this.options.id,x:t,y:e,state:{selected:A,hover:C},style:zM({},I),label:this.options.label});if(null!=i.drawNode&&i.drawNode(),g.restore(),i.drawExternalLabel){var o=i.drawExternalLabel;i.drawExternalLabel=function(){g.save(),o(),g.restore()}}return i.nodeDimensions&&(this.customSizeWidth=i.nodeDimensions.width,this.customSizeHeight=i.nodeDimensions.height),i}},{key:"distanceToBorder",value:function(g,t){return this._distanceToBorder(g,t)}}]),e}(MM);function FM(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var GM=function(g){dk(e,g);var t=FM(e);function e(g,A,C){var I;return cd(this,e),(I=t.call(this,g,A,C))._setMargins(C),I}return Bh(e,[{key:"resize",value:function(g,t,e){if(this.needsRefresh(t,e)){var A=this.getDimensionsFromLabel(g,t,e).width+this.margin.right+this.margin.left;this.width=A,this.height=A,this.radius=this.width/2}}},{key:"draw",value:function(g,t,e,A,C,I){this.resize(g,A,C),this.left=t-this.width/2,this.top=e-this.height/2,this.initContextForDraw(g,I),KA(g,t-this.width/2,e-this.height/2,this.width,this.height),this.performFill(g,I),this.updateBoundingBox(t,e,g,A,C),this.labelModule.draw(g,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,A,C)}},{key:"distanceToBorder",value:function(g,t){return this._distanceToBorder(g,t)}}]),e}(wM);function jM(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var LM=function(g){dk(e,g);var t=jM(e);function e(g,A,C){return cd(this,e),t.call(this,g,A,C)}return Bh(e,[{key:"draw",value:function(g,t,e,A,C,I){return this._drawShape(g,"diamond",4,t,e,A,C,I)}},{key:"distanceToBorder",value:function(g,t){return this._distanceToBorder(g,t)}}]),e}(MM);function VM(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var YM=function(g){dk(e,g);var t=VM(e);function e(g,A,C){return cd(this,e),t.call(this,g,A,C)}return Bh(e,[{key:"draw",value:function(g,t,e,A,C,I){return this._drawShape(g,"circle",2,t,e,A,C,I)}},{key:"distanceToBorder",value:function(g){return g&&this.resize(g),this.options.size}}]),e}(MM);function WM(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var QM=function(g){dk(e,g);var t=WM(e);function e(g,A,C){return cd(this,e),t.call(this,g,A,C)}return Bh(e,[{key:"resize",value:function(g){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.selected,e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.hover;if(this.needsRefresh(t,e)){var A=this.getDimensionsFromLabel(g,t,e);this.height=2*A.height,this.width=A.width+A.height,this.radius=.5*this.width}}},{key:"draw",value:function(g,t,e,A,C,I){this.resize(g,A,C),this.left=t-.5*this.width,this.top=e-.5*this.height,this.initContextForDraw(g,I),HA(g,this.left,this.top,this.width,this.height),this.performFill(g,I),this.updateBoundingBox(t,e,g,A,C),this.labelModule.draw(g,t,e,A,C)}},{key:"distanceToBorder",value:function(g,t){g&&this.resize(g);var e=.5*this.width,A=.5*this.height,C=Math.sin(t)*e,I=Math.cos(t)*A;return e*A/Math.sqrt(C*C+I*I)}}]),e}(wM);function UM(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var _M=function(g){dk(e,g);var t=UM(e);function e(g,A,C){var I;return cd(this,e),(I=t.call(this,g,A,C))._setMargins(C),I}return Bh(e,[{key:"resize",value:function(g,t,e){this.needsRefresh(t,e)&&(this.iconSize={width:Number(this.options.icon.size),height:Number(this.options.icon.size)},this.width=this.iconSize.width+this.margin.right+this.margin.left,this.height=this.iconSize.height+this.margin.top+this.margin.bottom,this.radius=.5*this.width)}},{key:"draw",value:function(g,t,e,A,C,I){var i=this;return this.resize(g,A,C),this.options.icon.size=this.options.icon.size||50,this.left=t-this.width/2,this.top=e-this.height/2,this._icon(g,t,e,A,C,I),{drawExternalLabel:function(){if(void 0!==i.options.label){i.labelModule.draw(g,i.left+i.iconSize.width/2+i.margin.left,e+i.height/2+5,A)}i.updateBoundingBox(t,e)}}}},{key:"updateBoundingBox",value:function(g,t){if(this.boundingBox.top=t-.5*this.options.icon.size,this.boundingBox.left=g-.5*this.options.icon.size,this.boundingBox.right=g+.5*this.options.icon.size,this.boundingBox.bottom=t+.5*this.options.icon.size,void 0!==this.options.label&&this.labelModule.size.width>0){this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+5)}}},{key:"_icon",value:function(g,t,e,A,C,I){var i=Number(this.options.icon.size);void 0!==this.options.icon.code?(g.font=[null!=this.options.icon.weight?this.options.icon.weight:A?"bold":"",(null!=this.options.icon.weight&&A?5:0)+i+"px",this.options.icon.face].join(" "),g.fillStyle=this.options.icon.color||"black",g.textAlign="center",g.textBaseline="middle",this.enableShadow(g,I),g.fillText(this.options.icon.code,t,e),this.disableShadow(g,I)):console.error("When using the icon shape, you need to define the code in the icon options object. This can be done per node or globally.")}},{key:"distanceToBorder",value:function(g,t){return this._distanceToBorder(g,t)}}]),e}(wM);function HM(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var KM=function(g){dk(e,g);var t=HM(e);function e(g,A,C,I,i){var o;return cd(this,e),(o=t.call(this,g,A,C)).setImages(I,i),o}return Bh(e,[{key:"resize",value:function(g){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.selected,e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.hover;if(void 0===this.imageObj.src||void 0===this.imageObj.width||void 0===this.imageObj.height){var A=2*this.options.size;return this.width=A,void(this.height=A)}this.needsRefresh(t,e)&&this._resizeImage()}},{key:"draw",value:function(g,t,e,A,C,I){g.save(),this.switchImages(A),this.resize();var i=t,o=e;if("top-left"===this.options.shapeProperties.coordinateOrigin?(this.left=t,this.top=e,i+=this.width/2,o+=this.height/2):(this.left=t-this.width/2,this.top=e-this.height/2),!0===this.options.shapeProperties.useBorderWithImage){var n=this.options.borderWidth,r=this.options.borderWidthSelected||2*this.options.borderWidth,s=(A?r:n)/this.body.view.scale;g.lineWidth=Math.min(this.width,s),g.beginPath();var a=A?this.options.color.highlight.border:C?this.options.color.hover.border:this.options.color.border,d=A?this.options.color.highlight.background:C?this.options.color.hover.background:this.options.color.background;void 0!==I.opacity&&(a=Ym(a,I.opacity),d=Ym(d,I.opacity)),g.strokeStyle=a,g.fillStyle=d,g.rect(this.left-.5*g.lineWidth,this.top-.5*g.lineWidth,this.width+g.lineWidth,this.height+g.lineWidth),ov(g).call(g),this.performStroke(g,I),g.closePath()}this._drawImageAtPosition(g,I),this._drawImageLabel(g,i,o,A,C),this.updateBoundingBox(t,e),g.restore()}},{key:"updateBoundingBox",value:function(g,t){this.resize(),"top-left"===this.options.shapeProperties.coordinateOrigin?(this.left=g,this.top=t):(this.left=g-this.width/2,this.top=t-this.height/2),this.boundingBox.left=this.left,this.boundingBox.top=this.top,this.boundingBox.bottom=this.top+this.height,this.boundingBox.right=this.left+this.width,void 0!==this.options.label&&this.labelModule.size.width>0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset))}},{key:"distanceToBorder",value:function(g,t){return this._distanceToBorder(g,t)}}]),e}(OM);function XM(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var JM=function(g){dk(e,g);var t=XM(e);function e(g,A,C){return cd(this,e),t.call(this,g,A,C)}return Bh(e,[{key:"draw",value:function(g,t,e,A,C,I){return this._drawShape(g,"square",2,t,e,A,C,I)}},{key:"distanceToBorder",value:function(g,t){return this._distanceToBorder(g,t)}}]),e}(MM);function qM(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var $M=function(g){dk(e,g);var t=qM(e);function e(g,A,C){return cd(this,e),t.call(this,g,A,C)}return Bh(e,[{key:"draw",value:function(g,t,e,A,C,I){return this._drawShape(g,"hexagon",4,t,e,A,C,I)}},{key:"distanceToBorder",value:function(g,t){return this._distanceToBorder(g,t)}}]),e}(MM);function gB(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var tB=function(g){dk(e,g);var t=gB(e);function e(g,A,C){return cd(this,e),t.call(this,g,A,C)}return Bh(e,[{key:"draw",value:function(g,t,e,A,C,I){return this._drawShape(g,"star",4,t,e,A,C,I)}},{key:"distanceToBorder",value:function(g,t){return this._distanceToBorder(g,t)}}]),e}(MM);function eB(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var AB=function(g){dk(e,g);var t=eB(e);function e(g,A,C){var I;return cd(this,e),(I=t.call(this,g,A,C))._setMargins(C),I}return Bh(e,[{key:"resize",value:function(g,t,e){this.needsRefresh(t,e)&&(this.textSize=this.labelModule.getTextSize(g,t,e),this.width=this.textSize.width+this.margin.right+this.margin.left,this.height=this.textSize.height+this.margin.top+this.margin.bottom,this.radius=.5*this.width)}},{key:"draw",value:function(g,t,e,A,C,I){this.resize(g,A,C),this.left=t-this.width/2,this.top=e-this.height/2,this.enableShadow(g,I),this.labelModule.draw(g,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,A,C),this.disableShadow(g,I),this.updateBoundingBox(t,e,g,A,C)}},{key:"distanceToBorder",value:function(g,t){return this._distanceToBorder(g,t)}}]),e}(wM);function CB(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var IB=function(g){dk(e,g);var t=CB(e);function e(g,A,C){return cd(this,e),t.call(this,g,A,C)}return Bh(e,[{key:"draw",value:function(g,t,e,A,C,I){return this._drawShape(g,"triangle",3,t,e,A,C,I)}},{key:"distanceToBorder",value:function(g,t){return this._distanceToBorder(g,t)}}]),e}(MM);function iB(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var oB=function(g){dk(e,g);var t=iB(e);function e(g,A,C){return cd(this,e),t.call(this,g,A,C)}return Bh(e,[{key:"draw",value:function(g,t,e,A,C,I){return this._drawShape(g,"triangleDown",3,t,e,A,C,I)}},{key:"distanceToBorder",value:function(g,t){return this._distanceToBorder(g,t)}}]),e}(MM);function nB(g,t){var e=Cc(g);if(va){var A=va(g);t&&(A=Ap(A).call(A,(function(t){return Pa(g,t).enumerable}))),e.push.apply(e,A)}return e}function rB(g){for(var t=1;t<arguments.length;t++){var e,A,C=null!=arguments[t]?arguments[t]:{};t%2?Ec(e=nB(Object(C),!0)).call(e,(function(t){zh(g,t,C[t])})):Ua?Ad(g,Ua(C)):Ec(A=nB(Object(C))).call(A,(function(t){ld(g,t,Pa(C,t))}))}return g}var sB=function(){function g(t,e,A,C,I,i){cd(this,g),this.options=Jm(I),this.globalOptions=I,this.defaultOptions=i,this.body=e,this.edges=[],this.id=void 0,this.imagelist=A,this.grouplist=C,this.x=void 0,this.y=void 0,this.baseSize=this.options.size,this.baseFontSize=this.options.font.size,this.predefinedPosition=!1,this.selected=!1,this.hover=!1,this.labelModule=new bM(this.body,this.options,!1),this.setOptions(t)}return Bh(g,[{key:"attachEdge",value:function(g){var t;-1===$p(t=this.edges).call(t,g)&&this.edges.push(g)}},{key:"detachEdge",value:function(g){var t,e,A=$p(t=this.edges).call(t,g);-1!=A&&cu(e=this.edges).call(e,A,1)}},{key:"setOptions",value:function(t){var e=this.options.shape;if(t){if(void 0!==t.color&&(this._localColor=t.color),void 0!==t.id&&(this.id=t.id),void 0===this.id)throw new Error("Node must have an id");g.checkMass(t,this.id),void 0!==t.x&&(null===t.x?(this.x=void 0,this.predefinedPosition=!1):(this.x=Gp(t.x),this.predefinedPosition=!0)),void 0!==t.y&&(null===t.y?(this.y=void 0,this.predefinedPosition=!1):(this.y=Gp(t.y),this.predefinedPosition=!0)),void 0!==t.size&&(this.baseSize=t.size),void 0!==t.value&&(t.value=AM(t.value)),g.parseOptions(this.options,t,!0,this.globalOptions,this.grouplist);var A=[t,this.options,this.defaultOptions];return this.chooser=hM("node",A),this._load_images(),this.updateLabelModule(t),void 0!==t.opacity&&g.checkOpacity(t.opacity)&&(this.options.opacity=t.opacity),this.updateShape(e),void 0!==t.hidden||void 0!==t.physics}}},{key:"_load_images",value:function(){if(("circularImage"===this.options.shape||"image"===this.options.shape)&&void 0===this.options.image)throw new Error("Option image must be defined for node type '"+this.options.shape+"'");if(void 0!==this.options.image){if(void 0===this.imagelist)throw new Error("Internal Error: No images provided");if("string"==typeof this.options.image)this.imageObj=this.imagelist.load(this.options.image,this.options.brokenImage,this.id);else{if(void 0===this.options.image.unselected)throw new Error("No unselected image provided");this.imageObj=this.imagelist.load(this.options.image.unselected,this.options.brokenImage,this.id),void 0!==this.options.image.selected?this.imageObjAlt=this.imagelist.load(this.options.image.selected,this.options.brokenImage,this.id):this.imageObjAlt=void 0}}}},{key:"getFormattingValues",value:function(){var g={color:this.options.color.background,opacity:this.options.opacity,borderWidth:this.options.borderWidth,borderColor:this.options.color.border,size:this.options.size,borderDashes:this.options.shapeProperties.borderDashes,borderRadius:this.options.shapeProperties.borderRadius,shadow:this.options.shadow.enabled,shadowColor:this.options.shadow.color,shadowSize:this.options.shadow.size,shadowX:this.options.shadow.x,shadowY:this.options.shadow.y};if(this.selected||this.hover?!0===this.chooser?this.selected?(null!=this.options.borderWidthSelected?g.borderWidth=this.options.borderWidthSelected:g.borderWidth*=2,g.color=this.options.color.highlight.background,g.borderColor=this.options.color.highlight.border,g.shadow=this.options.shadow.enabled):this.hover&&(g.color=this.options.color.hover.background,g.borderColor=this.options.color.hover.border,g.shadow=this.options.shadow.enabled):"function"==typeof this.chooser&&(this.chooser(g,this.options.id,this.selected,this.hover),!1===g.shadow&&(g.shadowColor===this.options.shadow.color&&g.shadowSize===this.options.shadow.size&&g.shadowX===this.options.shadow.x&&g.shadowY===this.options.shadow.y||(g.shadow=!0))):g.shadow=this.options.shadow.enabled,void 0!==this.options.opacity){var t=this.options.opacity;g.borderColor=Ym(g.borderColor,t),g.color=Ym(g.color,t),g.shadowColor=Ym(g.shadowColor,t)}return g}},{key:"updateLabelModule",value:function(t){void 0!==this.options.label&&null!==this.options.label||(this.options.label=""),g.updateGroupOptions(this.options,rB(rB({},t),{},{color:t&&t.color||this._localColor||void 0}),this.grouplist);var e=this.grouplist.get(this.options.group,!1),A=[t,this.options,e,this.globalOptions,this.defaultOptions];this.labelModule.update(this.options,A),void 0!==this.labelModule.baseSize&&(this.baseFontSize=this.labelModule.baseSize)}},{key:"updateShape",value:function(g){if(g===this.options.shape&&this.shape)this.shape.setOptions(this.options,this.imageObj,this.imageObjAlt);else switch(this.options.shape){case"box":this.shape=new kM(this.options,this.body,this.labelModule);break;case"circle":this.shape=new DM(this.options,this.body,this.labelModule);break;case"circularImage":this.shape=new RM(this.options,this.body,this.labelModule,this.imageObj,this.imageObjAlt);break;case"custom":this.shape=new ZM(this.options,this.body,this.labelModule,this.options.ctxRenderer);break;case"database":this.shape=new GM(this.options,this.body,this.labelModule);break;case"diamond":this.shape=new LM(this.options,this.body,this.labelModule);break;case"dot":this.shape=new YM(this.options,this.body,this.labelModule);break;case"ellipse":default:this.shape=new QM(this.options,this.body,this.labelModule);break;case"icon":this.shape=new _M(this.options,this.body,this.labelModule);break;case"image":this.shape=new KM(this.options,this.body,this.labelModule,this.imageObj,this.imageObjAlt);break;case"square":this.shape=new JM(this.options,this.body,this.labelModule);break;case"hexagon":this.shape=new $M(this.options,this.body,this.labelModule);break;case"star":this.shape=new tB(this.options,this.body,this.labelModule);break;case"text":this.shape=new AB(this.options,this.body,this.labelModule);break;case"triangle":this.shape=new IB(this.options,this.body,this.labelModule);break;case"triangleDown":this.shape=new oB(this.options,this.body,this.labelModule)}this.needsRefresh()}},{key:"select",value:function(){this.selected=!0,this.needsRefresh()}},{key:"unselect",value:function(){this.selected=!1,this.needsRefresh()}},{key:"needsRefresh",value:function(){this.shape.refreshNeeded=!0}},{key:"getTitle",value:function(){return this.options.title}},{key:"distanceToBorder",value:function(g,t){return this.shape.distanceToBorder(g,t)}},{key:"isFixed",value:function(){return this.options.fixed.x&&this.options.fixed.y}},{key:"isSelected",value:function(){return this.selected}},{key:"getValue",value:function(){return this.options.value}},{key:"getLabelSize",value:function(){return this.labelModule.size()}},{key:"setValueRange",value:function(g,t,e){if(void 0!==this.options.value){var A=this.options.scaling.customScalingFunction(g,t,e,this.options.value),C=this.options.scaling.max-this.options.scaling.min;if(!0===this.options.scaling.label.enabled){var I=this.options.scaling.label.max-this.options.scaling.label.min;this.options.font.size=this.options.scaling.label.min+A*I}this.options.size=this.options.scaling.min+A*C}else this.options.size=this.baseSize,this.options.font.size=this.baseFontSize;this.updateLabelModule()}},{key:"draw",value:function(g){var t=this.getFormattingValues();return this.shape.draw(g,this.x,this.y,this.selected,this.hover,t)||{}}},{key:"updateBoundingBox",value:function(g){this.shape.updateBoundingBox(this.x,this.y,g)}},{key:"resize",value:function(g){var t=this.getFormattingValues();this.shape.resize(g,this.selected,this.hover,t)}},{key:"getItemsOnPoint",value:function(g){var t=[];return this.labelModule.visible()&&lM(this.labelModule.getSize(),g)&&t.push({nodeId:this.id,labelId:0}),lM(this.shape.boundingBox,g)&&t.push({nodeId:this.id}),t}},{key:"isOverlappingWith",value:function(g){return this.shape.left<g.right&&this.shape.left+this.shape.width>g.left&&this.shape.top<g.bottom&&this.shape.top+this.shape.height>g.top}},{key:"isBoundingBoxOverlappingWith",value:function(g){return this.shape.boundingBox.left<g.right&&this.shape.boundingBox.right>g.left&&this.shape.boundingBox.top<g.bottom&&this.shape.boundingBox.bottom>g.top}}],[{key:"checkOpacity",value:function(g){return 0<=g&&g<=1}},{key:"checkCoordinateOrigin",value:function(g){return void 0===g||"center"===g||"top-left"===g}},{key:"updateGroupOptions",value:function(t,e,A){var C;if(void 0!==A){var I=t.group;if(void 0!==e&&void 0!==e.group&&I!==e.group)throw new Error("updateGroupOptions: group values in options don't match.");if("number"==typeof I||"string"==typeof I&&""!=I){var i=A.get(I);void 0!==i.opacity&&void 0===e.opacity&&(g.checkOpacity(i.opacity)||(console.error("Invalid option for node opacity. Value must be between 0 and 1, found: "+i.opacity),i.opacity=void 0));var o=Ap(C=dM(e)).call(C,(function(g){return null!=e[g]}));o.push("font"),Zm(o,t,i),t.color=Qm(t.color)}}}},{key:"parseOptions",value:function(t,e){var A=arguments.length>2&&void 0!==arguments[2]&&arguments[2],C=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},I=arguments.length>4?arguments[4]:void 0;if(Zm(["color","fixed","shadow"],t,e,A),g.checkMass(e),void 0!==t.opacity&&(g.checkOpacity(t.opacity)||(console.error("Invalid option for node opacity. Value must be between 0 and 1, found: "+t.opacity),t.opacity=void 0)),void 0!==e.opacity&&(g.checkOpacity(e.opacity)||(console.error("Invalid option for node opacity. Value must be between 0 and 1, found: "+e.opacity),e.opacity=void 0)),e.shapeProperties&&!g.checkCoordinateOrigin(e.shapeProperties.coordinateOrigin)&&console.error("Invalid option for node coordinateOrigin, found: "+e.shapeProperties.coordinateOrigin),qm(t,e,"shadow",C),void 0!==e.color&&null!==e.color){var i=Qm(e.color);zm(t.color,i)}else!0===A&&null===e.color&&(t.color=Jm(C.color));void 0!==e.fixed&&null!==e.fixed&&("boolean"==typeof e.fixed?(t.fixed.x=e.fixed,t.fixed.y=e.fixed):(void 0!==e.fixed.x&&"boolean"==typeof e.fixed.x&&(t.fixed.x=e.fixed.x),void 0!==e.fixed.y&&"boolean"==typeof e.fixed.y&&(t.fixed.y=e.fixed.y))),!0===A&&null===e.font&&(t.font=Jm(C.font)),g.updateGroupOptions(t,e,I),void 0!==e.scaling&&qm(t.scaling,e.scaling,"label",C.scaling)}},{key:"checkMass",value:function(g,t){if(void 0!==g.mass&&g.mass<=0){var e="";void 0!==t&&(e=" in node id: "+t),console.error("%cNegative or zero mass disallowed"+e+", setting mass to 1.",lb),g.mass=1}}}]),g}();function aB(g,t){var e=void 0!==kl&&bn(g)||g["@@iterator"];if(!e){if(Vl(g)||(e=function(g,t){var e;if(!g)return;if("string"==typeof g)return dB(g,t);var A=Sl(e=Object.prototype.toString.call(g)).call(e,8,-1);"Object"===A&&g.constructor&&(A=g.constructor.name);if("Map"===A||"Set"===A)return Jo(g);if("Arguments"===A||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(A))return dB(g,t)}(g))||t&&g&&"number"==typeof g.length){e&&(g=e);var A=0,C=function(){};return{s:C,n:function(){return A>=g.length?{done:!0}:{done:!1,value:g[A++]}},e:function(g){throw g},f:C}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var I,i=!0,o=!1;return{s:function(){e=e.call(g)},n:function(){var g=e.next();return i=g.done,g},e:function(g){o=!0,I=g},f:function(){try{i||null==e.return||e.return()}finally{if(o)throw I}}}}function dB(g,t){(null==t||t>g.length)&&(t=g.length);for(var e=0,A=new Array(t);e<t;e++)A[e]=g[e];return A}var hB=function(){function g(t,e,A,C){var I,i=this;if(cd(this,g),this.body=t,this.images=e,this.groups=A,this.layoutEngine=C,this.body.functions.createNode=QA(I=this.create).call(I,this),this.nodesListeners={add:function(g,t){i.add(t.items)},update:function(g,t){i.update(t.items,t.data,t.oldData)},remove:function(g,t){i.remove(t.items)}},this.defaultOptions={borderWidth:1,borderWidthSelected:void 0,brokenImage:void 0,color:{border:"#2B7CE9",background:"#97C2FC",highlight:{border:"#2B7CE9",background:"#D2E5FF"},hover:{border:"#2B7CE9",background:"#D2E5FF"}},opacity:void 0,fixed:{x:!1,y:!1},font:{color:"#343434",size:14,face:"arial",background:"none",strokeWidth:0,strokeColor:"#ffffff",align:"center",vadjust:0,multi:!1,bold:{mod:"bold"},boldital:{mod:"bold italic"},ital:{mod:"italic"},mono:{mod:"",size:15,face:"monospace",vadjust:2}},group:void 0,hidden:!1,icon:{face:"FontAwesome",code:void 0,size:50,color:"#2B7CE9"},image:void 0,imagePadding:{top:0,right:0,bottom:0,left:0},label:void 0,labelHighlightBold:!0,level:void 0,margin:{top:5,right:5,bottom:5,left:5},mass:1,physics:!0,scaling:{min:10,max:30,label:{enabled:!1,min:14,max:30,maxVisible:30,drawThreshold:5},customScalingFunction:function(g,t,e,A){if(t===g)return.5;var C=1/(t-g);return Math.max(0,(A-g)*C)}},shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:10,x:5,y:5},shape:"ellipse",shapeProperties:{borderDashes:!1,borderRadius:6,interpolation:!0,useImageSize:!1,useBorderWithImage:!1,coordinateOrigin:"center"},size:25,title:void 0,value:void 0,x:void 0,y:void 0},this.defaultOptions.mass<=0)throw"Internal error: mass in defaultOptions of NodesHandler may not be zero or negative";this.options=Jm(this.defaultOptions),this.bindEventListeners()}return Bh(g,[{key:"bindEventListeners",value:function(){var g,t,e=this;this.body.emitter.on("refreshNodes",QA(g=this.refresh).call(g,this)),this.body.emitter.on("refresh",QA(t=this.refresh).call(t,this)),this.body.emitter.on("destroy",(function(){Lm(e.nodesListeners,(function(g,t){e.body.data.nodes&&e.body.data.nodes.off(t,g)})),delete e.body.functions.createNode,delete e.nodesListeners.add,delete e.nodesListeners.update,delete e.nodesListeners.remove,delete e.nodesListeners}))}},{key:"setOptions",value:function(g){if(void 0!==g){if(sB.parseOptions(this.options,g),void 0!==g.opacity&&(Rx(g.opacity)||!Zx(g.opacity)||g.opacity<0||g.opacity>1?console.error("Invalid option for node opacity. Value must be between 0 and 1, found: "+g.opacity):this.options.opacity=g.opacity),void 0!==g.shape)for(var t in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,t)&&this.body.nodes[t].updateShape();if(void 0!==g.font||void 0!==g.widthConstraint||void 0!==g.heightConstraint)for(var e=0,A=Cc(this.body.nodes);e<A.length;e++){var C=A[e];this.body.nodes[C].updateLabelModule(),this.body.nodes[C].needsRefresh()}if(void 0!==g.size)for(var I in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,I)&&this.body.nodes[I].needsRefresh();void 0===g.hidden&&void 0===g.physics||this.body.emitter.emit("_dataChanged")}}},{key:"setData",value:function(g){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],e=this.body.data.nodes;if(VP("id",g))this.body.data.nodes=g;else if(Vl(g))this.body.data.nodes=new GP,this.body.data.nodes.add(g);else{if(g)throw new TypeError("Array or DataSet expected");this.body.data.nodes=new GP}if(e&&Lm(this.nodesListeners,(function(g,t){e.off(t,g)})),this.body.nodes={},this.body.data.nodes){var A=this;Lm(this.nodesListeners,(function(g,t){A.body.data.nodes.on(t,g)}));var C=this.body.data.nodes.getIds();this.add(C,!0)}!1===t&&this.body.emitter.emit("_dataChanged")}},{key:"add",value:function(g){for(var t,e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],A=[],C=0;C<g.length;C++){t=g[C];var I=this.body.data.nodes.get(t),i=this.create(I);A.push(i),this.body.nodes[t]=i}this.layoutEngine.positionInitially(A),!1===e&&this.body.emitter.emit("_dataChanged")}},{key:"update",value:function(g,t,e){for(var A=this.body.nodes,C=!1,I=0;I<g.length;I++){var i=g[I],o=A[i],n=t[I];void 0!==o?o.setOptions(n)&&(C=!0):(C=!0,o=this.create(n),A[i]=o)}C||void 0===e||(C=_x(t).call(t,(function(g,t){var A=e[t];return A&&A.level!==g.level}))),!0===C?this.body.emitter.emit("_dataChanged"):this.body.emitter.emit("_dataUpdated")}},{key:"remove",value:function(g){for(var t=this.body.nodes,e=0;e<g.length;e++){delete t[g[e]]}this.body.emitter.emit("_dataChanged")}},{key:"create",value:function(g){return new(arguments.length>1&&void 0!==arguments[1]?arguments[1]:sB)(g,this.body,this.images,this.groups,this.options,this.defaultOptions)}},{key:"refresh",value:function(){var g=this,t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];Lm(this.body.nodes,(function(e,A){var C=g.body.data.nodes.get(A);void 0!==C&&(!0===t&&e.setOptions({x:null,y:null}),e.setOptions({fixed:!1}),e.setOptions(C))}))}},{key:"getPositions",value:function(g){var t={};if(void 0!==g){if(!0===Vl(g)){for(var e=0;e<g.length;e++)if(void 0!==this.body.nodes[g[e]]){var A=this.body.nodes[g[e]];t[g[e]]={x:Math.round(A.x),y:Math.round(A.y)}}}else if(void 0!==this.body.nodes[g]){var C=this.body.nodes[g];t[g]={x:Math.round(C.x),y:Math.round(C.y)}}}else for(var I=0;I<this.body.nodeIndices.length;I++){var i=this.body.nodes[this.body.nodeIndices[I]];t[this.body.nodeIndices[I]]={x:Math.round(i.x),y:Math.round(i.y)}}return t}},{key:"getPosition",value:function(g){if(null==g)throw new TypeError("No id was specified for getPosition method.");if(null==this.body.nodes[g])throw new ReferenceError("NodeId provided for getPosition does not exist. Provided: ".concat(g));return{x:Math.round(this.body.nodes[g].x),y:Math.round(this.body.nodes[g].y)}}},{key:"storePositions",value:function(){var g,t=[],e=this.body.data.nodes.getDataSet(),A=aB(e.get());try{for(A.s();!(g=A.n()).done;){var C=g.value,I=C.id,i=this.body.nodes[I],o=Math.round(i.x),n=Math.round(i.y);C.x===o&&C.y===n||t.push({id:I,x:o,y:n})}}catch(g){A.e(g)}finally{A.f()}e.update(t)}},{key:"getBoundingBox",value:function(g){if(void 0!==this.body.nodes[g])return this.body.nodes[g].shape.boundingBox}},{key:"getConnectedNodes",value:function(g,t){var e=[];if(void 0!==this.body.nodes[g])for(var A=this.body.nodes[g],C={},I=0;I<A.edges.length;I++){var i=A.edges[I];"to"!==t&&i.toId==A.id?void 0===C[i.fromId]&&(e.push(i.fromId),C[i.fromId]=!0):"from"!==t&&i.fromId==A.id&&void 0===C[i.toId]&&(e.push(i.toId),C[i.toId]=!0)}return e}},{key:"getConnectedEdges",value:function(g){var t=[];if(void 0!==this.body.nodes[g])for(var e=this.body.nodes[g],A=0;A<e.edges.length;A++)t.push(e.edges[A].id);else console.error("NodeId provided for getConnectedEdges does not exist. Provided: ",g);return t}},{key:"moveNode",value:function(g,t,e){var A=this;void 0!==this.body.nodes[g]?(this.body.nodes[g].x=Number(t),this.body.nodes[g].y=Number(e),_f((function(){A.body.emitter.emit("startSimulation")}),0)):console.error("Node id supplied to moveNode does not exist. Provided: ",g)}}]),g}(),lB={},cB={get exports(){return lB},set exports(g){lB=g}},uB={},pB={get exports(){return uB},set exports(g){uB=g}},fB=$g,vB=B,yB=eg,mB=Ae,bB=function(g){return void 0!==g&&(fB(g,"value")||fB(g,"writable"))},wB=N,xB=MI;De({target:"Reflect",stat:!0},{get:function g(t,e){var A,C,I=arguments.length<3?t:arguments[2];return mB(t)===I?t[e]:(A=wB.f(t,e))?bB(A)?A.value:void 0===A.get?void 0:vB(A.get,I):yB(C=xB(t))?g(C,e,I):void 0}});var kB=Ag.Reflect.get;!function(g){g.exports=kB}(pB),function(g){g.exports=uB}(cB);var EB=e(lB),OB={},TB={get exports(){return OB},set exports(g){OB=g}},DB={},NB=Ra;!function(g){g.exports=NB}({get exports(){return DB},set exports(g){DB=g}}),function(g){g.exports=DB}(TB);var RB=e(OB);function PB(){var g;"undefined"!=typeof Reflect&&EB?PB=sk(g=EB).call(g):PB=function(g,t,e){var A=function(g,t){for(;!Object.prototype.hasOwnProperty.call(g,t)&&null!==(g=vk(g)););return g}(g,t);if(A){var C=RB(A,t);return C.get?C.get.call(arguments.length<3?g:e):C.value}};return PB.apply(this,arguments)}var MB={},BB={get exports(){return MB},set exports(g){MB=g}},zB=De,SB=Math.hypot,ZB=Math.abs,FB=Math.sqrt;zB({target:"Math",stat:!0,arity:2,forced:!!SB&&SB(1/0,NaN)!==1/0},{hypot:function(g,t){for(var e,A,C=0,I=0,i=arguments.length,o=0;I<i;)o<(e=ZB(arguments[I++]))?(C=C*(A=o/e)*A+1,o=e):C+=e>0?(A=e/o)*A:e;return o===1/0?1/0:o*FB(C)}});var GB=Ag.Math.hypot;!function(g){g.exports=GB}(BB);var jB=e(MB);function LB(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var VB=function(){function g(){cd(this,g)}return Bh(g,null,[{key:"transform",value:function(g,t){Vl(g)||(g=[g]);for(var e=t.point.x,A=t.point.y,C=t.angle,I=t.length,i=0;i<g.length;++i){var o=g[i],n=o.x*Math.cos(C)-o.y*Math.sin(C),r=o.x*Math.sin(C)+o.y*Math.cos(C);o.x=e+I*n,o.y=A+I*r}}},{key:"drawPath",value:function(g,t){g.beginPath(),g.moveTo(t[0].x,t[0].y);for(var e=1;e<t.length;++e)g.lineTo(t[e].x,t[e].y);g.closePath()}}]),g}(),YB=function(g){dk(e,g);var t=LB(e);function e(){return cd(this,e),t.apply(this,arguments)}return Bh(e,null,[{key:"draw",value:function(g,t){if(t.image){g.save(),g.translate(t.point.x,t.point.y),g.rotate(Math.PI/2+t.angle);var e=null!=t.imageWidth?t.imageWidth:t.image.width,A=null!=t.imageHeight?t.imageHeight:t.image.height;t.image.drawImageAtPosition(g,1,-e/2,0,e,A),g.restore()}return!1}}]),e}(VB),WB=function(g){dk(e,g);var t=LB(e);function e(){return cd(this,e),t.apply(this,arguments)}return Bh(e,null,[{key:"draw",value:function(g,t){var e=[{x:0,y:0},{x:-1,y:.3},{x:-.9,y:0},{x:-1,y:-.3}];return VB.transform(e,t),VB.drawPath(g,e),!0}}]),e}(VB),QB=function(){function g(){cd(this,g)}return Bh(g,null,[{key:"draw",value:function(g,t){var e=[{x:-1,y:0},{x:0,y:.3},{x:-.4,y:0},{x:0,y:-.3}];return VB.transform(e,t),VB.drawPath(g,e),!0}}]),g}(),UB=function(){function g(){cd(this,g)}return Bh(g,null,[{key:"draw",value:function(g,t){var e={x:-.4,y:0};VB.transform(e,t),g.strokeStyle=g.fillStyle,g.fillStyle="rgba(0, 0, 0, 0)";var A=Math.PI,C=t.angle-A/2,I=t.angle+A/2;return g.beginPath(),g.arc(e.x,e.y,.4*t.length,C,I,!1),g.stroke(),!0}}]),g}(),_B=function(){function g(){cd(this,g)}return Bh(g,null,[{key:"draw",value:function(g,t){var e={x:-.3,y:0};VB.transform(e,t),g.strokeStyle=g.fillStyle,g.fillStyle="rgba(0, 0, 0, 0)";var A=Math.PI,C=t.angle+A/2,I=t.angle+3*A/2;return g.beginPath(),g.arc(e.x,e.y,.4*t.length,C,I,!1),g.stroke(),!0}}]),g}(),HB=function(){function g(){cd(this,g)}return Bh(g,null,[{key:"draw",value:function(g,t){var e=[{x:.02,y:0},{x:-1,y:.3},{x:-1,y:-.3}];return VB.transform(e,t),VB.drawPath(g,e),!0}}]),g}(),KB=function(){function g(){cd(this,g)}return Bh(g,null,[{key:"draw",value:function(g,t){var e=[{x:0,y:.3},{x:0,y:-.3},{x:-1,y:0}];return VB.transform(e,t),VB.drawPath(g,e),!0}}]),g}(),XB=function(){function g(){cd(this,g)}return Bh(g,null,[{key:"draw",value:function(g,t){var e={x:-.4,y:0};return VB.transform(e,t),UA(g,e.x,e.y,.4*t.length),!0}}]),g}(),JB=function(){function g(){cd(this,g)}return Bh(g,null,[{key:"draw",value:function(g,t){var e=[{x:0,y:.5},{x:0,y:-.5},{x:-.15,y:-.5},{x:-.15,y:.5}];return VB.transform(e,t),VB.drawPath(g,e),!0}}]),g}(),qB=function(){function g(){cd(this,g)}return Bh(g,null,[{key:"draw",value:function(g,t){var e=[{x:0,y:.3},{x:0,y:-.3},{x:-.6,y:-.3},{x:-.6,y:.3}];return VB.transform(e,t),VB.drawPath(g,e),!0}}]),g}(),$B=function(){function g(){cd(this,g)}return Bh(g,null,[{key:"draw",value:function(g,t){var e=[{x:0,y:0},{x:-.5,y:-.3},{x:-1,y:0},{x:-.5,y:.3}];return VB.transform(e,t),VB.drawPath(g,e),!0}}]),g}(),gz=function(){function g(){cd(this,g)}return Bh(g,null,[{key:"draw",value:function(g,t){var e=[{x:-1,y:.3},{x:-.5,y:0},{x:-1,y:-.3},{x:0,y:0}];return VB.transform(e,t),VB.drawPath(g,e),!0}}]),g}(),tz=function(){function g(){cd(this,g)}return Bh(g,null,[{key:"draw",value:function(g,t){var e;switch(t.type&&(e=t.type.toLowerCase()),e){case"image":return YB.draw(g,t);case"circle":return XB.draw(g,t);case"box":return qB.draw(g,t);case"crow":return QB.draw(g,t);case"curve":return UB.draw(g,t);case"diamond":return $B.draw(g,t);case"inv_curve":return _B.draw(g,t);case"triangle":return HB.draw(g,t);case"inv_triangle":return KB.draw(g,t);case"bar":return JB.draw(g,t);case"vee":return gz.draw(g,t);default:return WB.draw(g,t)}}}]),g}();function ez(g,t){var e=Cc(g);if(va){var A=va(g);t&&(A=Ap(A).call(A,(function(t){return Pa(g,t).enumerable}))),e.push.apply(e,A)}return e}function Az(g){for(var t=1;t<arguments.length;t++){var e,A,C=null!=arguments[t]?arguments[t]:{};t%2?Ec(e=ez(Object(C),!0)).call(e,(function(t){zh(g,t,C[t])})):Ua?Ad(g,Ua(C)):Ec(A=ez(Object(C))).call(A,(function(t){ld(g,t,Pa(C,t))}))}return g}var Cz=function(){function g(t,e,A){cd(this,g),this._body=e,this._labelModule=A,this.color={},this.colorDirty=!0,this.hoverWidth=1.5,this.selectionWidth=2,this.setOptions(t),this.fromPoint=this.from,this.toPoint=this.to}return Bh(g,[{key:"connect",value:function(){this.from=this._body.nodes[this.options.from],this.to=this._body.nodes[this.options.to]}},{key:"cleanup",value:function(){return!1}},{key:"setOptions",value:function(g){this.options=g,this.from=this._body.nodes[this.options.from],this.to=this._body.nodes[this.options.to],this.id=this.options.id}},{key:"drawLine",value:function(g,t,e,A){var C=arguments.length>4&&void 0!==arguments[4]?arguments[4]:this.getViaNode();g.strokeStyle=this.getColor(g,t),g.lineWidth=t.width,!1!==t.dashes?this._drawDashedLine(g,t,C):this._drawLine(g,t,C)}},{key:"_drawLine",value:function(g,t,e,A,C){if(this.from!=this.to)this._line(g,t,e,A,C);else{var I=bl(this._getCircleData(g),3),i=I[0],o=I[1],n=I[2];this._circle(g,t,i,o,n)}}},{key:"_drawDashedLine",value:function(g,t,e,A,C){g.lineCap="round";var I=Vl(t.dashes)?t.dashes:[5,5];if(void 0!==g.setLineDash){if(g.save(),g.setLineDash(I),g.lineDashOffset=0,this.from!=this.to)this._line(g,t,e);else{var i=bl(this._getCircleData(g),3),o=i[0],n=i[1],r=i[2];this._circle(g,t,o,n,r)}g.setLineDash([0]),g.lineDashOffset=0,g.restore()}else{if(this.from!=this.to)XA(g,this.from.x,this.from.y,this.to.x,this.to.y,I);else{var s=bl(this._getCircleData(g),3),a=s[0],d=s[1],h=s[2];this._circle(g,t,a,d,h)}this.enableShadow(g,t),g.stroke(),this.disableShadow(g,t)}}},{key:"findBorderPosition",value:function(g,t,e){return this.from!=this.to?this._findBorderPosition(g,t,e):this._findBorderPositionCircle(g,t,e)}},{key:"findBorderPositions",value:function(g){if(this.from!=this.to)return{from:this._findBorderPosition(this.from,g),to:this._findBorderPosition(this.to,g)};var t,e=bl(Sl(t=this._getCircleData(g)).call(t,0,2),2),A=e[0],C=e[1];return{from:this._findBorderPositionCircle(this.from,g,{x:A,y:C,low:.25,high:.6,direction:-1}),to:this._findBorderPositionCircle(this.from,g,{x:A,y:C,low:.6,high:.8,direction:1})}}},{key:"_getCircleData",value:function(g){var t=this.options.selfReference.size;void 0!==g&&void 0===this.from.shape.width&&this.from.shape.resize(g);var e=uM(g,this.options.selfReference.angle,t,this.from);return[e.x,e.y,t]}},{key:"_pointOnCircle",value:function(g,t,e,A){var C=2*A*Math.PI;return{x:g+e*Math.cos(C),y:t-e*Math.sin(C)}}},{key:"_findBorderPositionCircle",value:function(g,t,e){var A,C=e.x,I=e.y,i=e.low,o=e.high,n=e.direction,r=this.options.selfReference.size,s=.5*(i+o),a=0;!0===this.options.arrowStrikethrough&&(-1===n?a=this.options.endPointOffset.from:1===n&&(a=this.options.endPointOffset.to));var d=0;do{s=.5*(i+o),A=this._pointOnCircle(C,I,r,s);var h=Math.atan2(g.y-A.y,g.x-A.x),l=g.distanceToBorder(t,h)+a-Math.sqrt(Math.pow(A.x-g.x,2)+Math.pow(A.y-g.y,2));if(Math.abs(l)<.05)break;l>0?n>0?i=s:o=s:n>0?o=s:i=s,++d}while(i<=o&&d<10);return Az(Az({},A),{},{t:s})}},{key:"getLineWidth",value:function(g,t){return!0===g?Math.max(this.selectionWidth,.3/this._body.view.scale):!0===t?Math.max(this.hoverWidth,.3/this._body.view.scale):Math.max(this.options.width,.3/this._body.view.scale)}},{key:"getColor",value:function(g,t){if(!1!==t.inheritsColor){if("both"===t.inheritsColor&&this.from.id!==this.to.id){var e=g.createLinearGradient(this.from.x,this.from.y,this.to.x,this.to.y),A=this.from.options.color.highlight.border,C=this.to.options.color.highlight.border;return!1===this.from.selected&&!1===this.to.selected?(A=Ym(this.from.options.color.border,t.opacity),C=Ym(this.to.options.color.border,t.opacity)):!0===this.from.selected&&!1===this.to.selected?C=this.to.options.color.border:!1===this.from.selected&&!0===this.to.selected&&(A=this.from.options.color.border),e.addColorStop(0,A),e.addColorStop(1,C),e}return"to"===t.inheritsColor?Ym(this.to.options.color.border,t.opacity):Ym(this.from.options.color.border,t.opacity)}return Ym(t.color,t.opacity)}},{key:"_circle",value:function(g,t,e,A,C){this.enableShadow(g,t);var I=0,i=2*Math.PI;if(!this.options.selfReference.renderBehindTheNode){var o=this.options.selfReference.angle,n=this.options.selfReference.angle+Math.PI,r=this._findBorderPositionCircle(this.from,g,{x:e,y:A,low:o,high:n,direction:-1}),s=this._findBorderPositionCircle(this.from,g,{x:e,y:A,low:o,high:n,direction:1});I=Math.atan2(r.y-A,r.x-e),i=Math.atan2(s.y-A,s.x-e)}g.beginPath(),g.arc(e,A,C,I,i,!1),g.stroke(),this.disableShadow(g,t)}},{key:"getDistanceToEdge",value:function(g,t,e,A,C,I){if(this.from!=this.to)return this._getDistanceToEdge(g,t,e,A,C,I);var i=bl(this._getCircleData(void 0),3),o=i[0],n=i[1],r=i[2],s=o-C,a=n-I;return Math.abs(Math.sqrt(s*s+a*a)-r)}},{key:"_getDistanceToLine",value:function(g,t,e,A,C,I){var i=e-g,o=A-t,n=((C-g)*i+(I-t)*o)/(i*i+o*o);n>1?n=1:n<0&&(n=0);var r=g+n*i-C,s=t+n*o-I;return Math.sqrt(r*r+s*s)}},{key:"getArrowData",value:function(g,t,e,A,C,I){var i,o,n,r,s,a,d,h=I.width;"from"===t?(n=this.from,r=this.to,s=I.fromArrowScale<0,a=Math.abs(I.fromArrowScale),d=I.fromArrowType):"to"===t?(n=this.to,r=this.from,s=I.toArrowScale<0,a=Math.abs(I.toArrowScale),d=I.toArrowType):(n=this.to,r=this.from,s=I.middleArrowScale<0,a=Math.abs(I.middleArrowScale),d=I.middleArrowType);var l=15*a+3*h;if(n!=r){var c=l/jB(n.x-r.x,n.y-r.y);if("middle"!==t)if(!0===this.options.smooth.enabled){var u=this._findBorderPosition(n,g,{via:e}),p=this.getPoint(u.t+c*("from"===t?1:-1),e);i=Math.atan2(u.y-p.y,u.x-p.x),o=u}else i=Math.atan2(n.y-r.y,n.x-r.x),o=this._findBorderPosition(n,g);else{var f=(s?-c:c)/2,v=this.getPoint(.5+f,e),y=this.getPoint(.5-f,e);i=Math.atan2(v.y-y.y,v.x-y.x),o=this.getPoint(.5,e)}}else{var m=bl(this._getCircleData(g),3),b=m[0],w=m[1],x=m[2];if("from"===t){var k=this.options.selfReference.angle,E=this.options.selfReference.angle+Math.PI,O=this._findBorderPositionCircle(this.from,g,{x:b,y:w,low:k,high:E,direction:-1});i=-2*O.t*Math.PI+1.5*Math.PI+.1*Math.PI,o=O}else if("to"===t){var T=this.options.selfReference.angle,D=this.options.selfReference.angle+Math.PI,N=this._findBorderPositionCircle(this.from,g,{x:b,y:w,low:T,high:D,direction:1});i=-2*N.t*Math.PI+1.5*Math.PI-1.1*Math.PI,o=N}else{var R=this.options.selfReference.angle/(2*Math.PI);o=this._pointOnCircle(b,w,x,R),i=-2*R*Math.PI+1.5*Math.PI+.1*Math.PI}}return{point:o,core:{x:o.x-.9*l*Math.cos(i),y:o.y-.9*l*Math.sin(i)},angle:i,length:l,type:d}}},{key:"drawArrowHead",value:function(g,t,e,A,C){g.strokeStyle=this.getColor(g,t),g.fillStyle=g.strokeStyle,g.lineWidth=t.width,tz.draw(g,C)&&(this.enableShadow(g,t),ov(g).call(g),this.disableShadow(g,t))}},{key:"enableShadow",value:function(g,t){!0===t.shadow&&(g.shadowColor=t.shadowColor,g.shadowBlur=t.shadowSize,g.shadowOffsetX=t.shadowX,g.shadowOffsetY=t.shadowY)}},{key:"disableShadow",value:function(g,t){!0===t.shadow&&(g.shadowColor="rgba(0,0,0,0)",g.shadowBlur=0,g.shadowOffsetX=0,g.shadowOffsetY=0)}},{key:"drawBackground",value:function(g,t){if(!1!==t.background){var e={strokeStyle:g.strokeStyle,lineWidth:g.lineWidth,dashes:g.dashes};g.strokeStyle=t.backgroundColor,g.lineWidth=t.backgroundSize,this.setStrokeDashed(g,t.backgroundDashes),g.stroke(),g.strokeStyle=e.strokeStyle,g.lineWidth=e.lineWidth,g.dashes=e.dashes,this.setStrokeDashed(g,t.dashes)}}},{key:"setStrokeDashed",value:function(g,t){if(!1!==t)if(void 0!==g.setLineDash){var e=Vl(t)?t:[5,5];g.setLineDash(e)}else console.warn("setLineDash is not supported in this browser. The dashed stroke cannot be used.");else void 0!==g.setLineDash?g.setLineDash([]):console.warn("setLineDash is not supported in this browser. The dashed stroke cannot be used.")}}]),g}();function Iz(g,t){var e=Cc(g);if(va){var A=va(g);t&&(A=Ap(A).call(A,(function(t){return Pa(g,t).enumerable}))),e.push.apply(e,A)}return e}function iz(g){for(var t=1;t<arguments.length;t++){var e,A,C=null!=arguments[t]?arguments[t]:{};t%2?Ec(e=Iz(Object(C),!0)).call(e,(function(t){zh(g,t,C[t])})):Ua?Ad(g,Ua(C)):Ec(A=Iz(Object(C))).call(A,(function(t){ld(g,t,Pa(C,t))}))}return g}function oz(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var nz=function(g){dk(e,g);var t=oz(e);function e(g,A,C){return cd(this,e),t.call(this,g,A,C)}return Bh(e,[{key:"_findBorderPositionBezier",value:function(g,t){var e,A,C=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this._getViaCoordinates(),I=!1,i=1,o=0,n=this.to,r=this.options.endPointOffset?this.options.endPointOffset.to:0;g.id===this.from.id&&(n=this.from,I=!0,r=this.options.endPointOffset?this.options.endPointOffset.from:0),!1===this.options.arrowStrikethrough&&(r=0);var s=0;do{A=.5*(o+i),e=this.getPoint(A,C);var a=Math.atan2(n.y-e.y,n.x-e.x),d=n.distanceToBorder(t,a)+r-Math.sqrt(Math.pow(e.x-n.x,2)+Math.pow(e.y-n.y,2));if(Math.abs(d)<.2)break;d<0?!1===I?o=A:i=A:!1===I?i=A:o=A,++s}while(o<=i&&s<10);return iz(iz({},e),{},{t:A})}},{key:"_getDistanceToBezierEdge",value:function(g,t,e,A,C,I,i){var o,n,r,s,a,d=1e9,h=g,l=t;for(n=1;n<10;n++)r=.1*n,s=Math.pow(1-r,2)*g+2*r*(1-r)*i.x+Math.pow(r,2)*e,a=Math.pow(1-r,2)*t+2*r*(1-r)*i.y+Math.pow(r,2)*A,n>0&&(d=(o=this._getDistanceToLine(h,l,s,a,C,I))<d?o:d),h=s,l=a;return d}},{key:"_bezierCurve",value:function(g,t,e,A){g.beginPath(),g.moveTo(this.fromPoint.x,this.fromPoint.y),null!=e&&null!=e.x?null!=A&&null!=A.x?g.bezierCurveTo(e.x,e.y,A.x,A.y,this.toPoint.x,this.toPoint.y):g.quadraticCurveTo(e.x,e.y,this.toPoint.x,this.toPoint.y):g.lineTo(this.toPoint.x,this.toPoint.y),this.drawBackground(g,t),this.enableShadow(g,t),g.stroke(),this.disableShadow(g,t)}},{key:"getViaNode",value:function(){return this._getViaCoordinates()}}]),e}(Cz);function rz(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var sz=function(g){dk(e,g);var t=rz(e);function e(g,A,C){var I;return cd(this,e),(I=t.call(this,g,A,C)).via=I.via,I._boundFunction=function(){I.positionBezierNode()},I._body.emitter.on("_repositionBezierNodes",I._boundFunction),I}return Bh(e,[{key:"setOptions",value:function(g){PB(vk(e.prototype),"setOptions",this).call(this,g);var t=!1;this.options.physics!==g.physics&&(t=!0),this.options=g,this.id=this.options.id,this.from=this._body.nodes[this.options.from],this.to=this._body.nodes[this.options.to],this.setupSupportNode(),this.connect(),!0===t&&(this.via.setOptions({physics:this.options.physics}),this.positionBezierNode())}},{key:"connect",value:function(){this.from=this._body.nodes[this.options.from],this.to=this._body.nodes[this.options.to],void 0===this.from||void 0===this.to||!1===this.options.physics||this.from.id===this.to.id?this.via.setOptions({physics:!1}):this.via.setOptions({physics:!0})}},{key:"cleanup",value:function(){return this._body.emitter.off("_repositionBezierNodes",this._boundFunction),void 0!==this.via&&(delete this._body.nodes[this.via.id],this.via=void 0,!0)}},{key:"setupSupportNode",value:function(){if(void 0===this.via){var g="edgeId:"+this.id,t=this._body.functions.createNode({id:g,shape:"circle",physics:!0,hidden:!0});this._body.nodes[g]=t,this.via=t,this.via.parentEdgeId=this.id,this.positionBezierNode()}}},{key:"positionBezierNode",value:function(){void 0!==this.via&&void 0!==this.from&&void 0!==this.to?(this.via.x=.5*(this.from.x+this.to.x),this.via.y=.5*(this.from.y+this.to.y)):void 0!==this.via&&(this.via.x=0,this.via.y=0)}},{key:"_line",value:function(g,t,e){this._bezierCurve(g,t,e)}},{key:"_getViaCoordinates",value:function(){return this.via}},{key:"getViaNode",value:function(){return this.via}},{key:"getPoint",value:function(g){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.via;if(this.from===this.to){var e=bl(this._getCircleData(),3),A=e[0],C=e[1],I=e[2],i=2*Math.PI*(1-g);return{x:A+I*Math.sin(i),y:C+I-I*(1-Math.cos(i))}}return{x:Math.pow(1-g,2)*this.fromPoint.x+2*g*(1-g)*t.x+Math.pow(g,2)*this.toPoint.x,y:Math.pow(1-g,2)*this.fromPoint.y+2*g*(1-g)*t.y+Math.pow(g,2)*this.toPoint.y}}},{key:"_findBorderPosition",value:function(g,t){return this._findBorderPositionBezier(g,t,this.via)}},{key:"_getDistanceToEdge",value:function(g,t,e,A,C,I){return this._getDistanceToBezierEdge(g,t,e,A,C,I,this.via)}}]),e}(nz);function az(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var dz=function(g){dk(e,g);var t=az(e);function e(g,A,C){return cd(this,e),t.call(this,g,A,C)}return Bh(e,[{key:"_line",value:function(g,t,e){this._bezierCurve(g,t,e)}},{key:"getViaNode",value:function(){return this._getViaCoordinates()}},{key:"_getViaCoordinates",value:function(){var g,t,e=this.options.smooth.roundness,A=this.options.smooth.type,C=Math.abs(this.from.x-this.to.x),I=Math.abs(this.from.y-this.to.y);if("discrete"===A||"diagonalCross"===A){var i,o;i=o=C<=I?e*I:e*C,this.from.x>this.to.x&&(i=-i),this.from.y>=this.to.y&&(o=-o);var n=this.from.x+i,r=this.from.y+o;return"discrete"===A&&(C<=I?n=C<e*I?this.from.x:n:r=I<e*C?this.from.y:r),{x:n,y:r}}if("straightCross"===A){var s=(1-e)*C,a=(1-e)*I;return C<=I?(s=0,this.from.y<this.to.y&&(a=-a)):(this.from.x<this.to.x&&(s=-s),a=0),{x:this.to.x+s,y:this.to.y+a}}if("horizontal"===A){var d=(1-e)*C;return this.from.x<this.to.x&&(d=-d),{x:this.to.x+d,y:this.from.y}}if("vertical"===A){var h=(1-e)*I;return this.from.y<this.to.y&&(h=-h),{x:this.from.x,y:this.to.y+h}}if("curvedCW"===A){C=this.to.x-this.from.x,I=this.from.y-this.to.y;var l=Math.sqrt(C*C+I*I),c=Math.PI,u=(Math.atan2(I,C)+(.5*e+.5)*c)%(2*c);return{x:this.from.x+(.5*e+.5)*l*Math.sin(u),y:this.from.y+(.5*e+.5)*l*Math.cos(u)}}if("curvedCCW"===A){C=this.to.x-this.from.x,I=this.from.y-this.to.y;var p=Math.sqrt(C*C+I*I),f=Math.PI,v=(Math.atan2(I,C)+(.5*-e+.5)*f)%(2*f);return{x:this.from.x+(.5*e+.5)*p*Math.sin(v),y:this.from.y+(.5*e+.5)*p*Math.cos(v)}}g=t=C<=I?e*I:e*C,this.from.x>this.to.x&&(g=-g),this.from.y>=this.to.y&&(t=-t);var y=this.from.x+g,m=this.from.y+t;return C<=I?y=this.from.x<=this.to.x?this.to.x<y?this.to.x:y:this.to.x>y?this.to.x:y:m=this.from.y>=this.to.y?this.to.y>m?this.to.y:m:this.to.y<m?this.to.y:m,{x:y,y:m}}},{key:"_findBorderPosition",value:function(g,t){var e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this._findBorderPositionBezier(g,t,e.via)}},{key:"_getDistanceToEdge",value:function(g,t,e,A,C,I){var i=arguments.length>6&&void 0!==arguments[6]?arguments[6]:this._getViaCoordinates();return this._getDistanceToBezierEdge(g,t,e,A,C,I,i)}},{key:"getPoint",value:function(g){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this._getViaCoordinates(),e=g;return{x:Math.pow(1-e,2)*this.fromPoint.x+2*e*(1-e)*t.x+Math.pow(e,2)*this.toPoint.x,y:Math.pow(1-e,2)*this.fromPoint.y+2*e*(1-e)*t.y+Math.pow(e,2)*this.toPoint.y}}}]),e}(nz);function hz(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var lz=function(g){dk(e,g);var t=hz(e);function e(g,A,C){return cd(this,e),t.call(this,g,A,C)}return Bh(e,[{key:"_getDistanceToBezierEdge2",value:function(g,t,e,A,C,I,i,o){for(var n=1e9,r=g,s=t,a=[0,0,0,0],d=1;d<10;d++){var h=.1*d;a[0]=Math.pow(1-h,3),a[1]=3*h*Math.pow(1-h,2),a[2]=3*Math.pow(h,2)*(1-h),a[3]=Math.pow(h,3);var l=a[0]*g+a[1]*i.x+a[2]*o.x+a[3]*e,c=a[0]*t+a[1]*i.y+a[2]*o.y+a[3]*A;if(d>0){var u=this._getDistanceToLine(r,s,l,c,C,I);n=u<n?u:n}r=l,s=c}return n}}]),e}(nz);function cz(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var uz=function(g){dk(e,g);var t=cz(e);function e(g,A,C){return cd(this,e),t.call(this,g,A,C)}return Bh(e,[{key:"_line",value:function(g,t,e){var A=e[0],C=e[1];this._bezierCurve(g,t,A,C)}},{key:"_getViaCoordinates",value:function(){var g,t,e,A,C=this.from.x-this.to.x,I=this.from.y-this.to.y,i=this.options.smooth.roundness;return(Math.abs(C)>Math.abs(I)||!0===this.options.smooth.forceDirection||"horizontal"===this.options.smooth.forceDirection)&&"vertical"!==this.options.smooth.forceDirection?(t=this.from.y,A=this.to.y,g=this.from.x-i*C,e=this.to.x+i*C):(t=this.from.y-i*I,A=this.to.y+i*I,g=this.from.x,e=this.to.x),[{x:g,y:t},{x:e,y:A}]}},{key:"getViaNode",value:function(){return this._getViaCoordinates()}},{key:"_findBorderPosition",value:function(g,t){return this._findBorderPositionBezier(g,t)}},{key:"_getDistanceToEdge",value:function(g,t,e,A,C,I){var i=bl(arguments.length>6&&void 0!==arguments[6]?arguments[6]:this._getViaCoordinates(),2),o=i[0],n=i[1];return this._getDistanceToBezierEdge2(g,t,e,A,C,I,o,n)}},{key:"getPoint",value:function(g){var t=bl(arguments.length>1&&void 0!==arguments[1]?arguments[1]:this._getViaCoordinates(),2),e=t[0],A=t[1],C=g,I=[Math.pow(1-C,3),3*C*Math.pow(1-C,2),3*Math.pow(C,2)*(1-C),Math.pow(C,3)];return{x:I[0]*this.fromPoint.x+I[1]*e.x+I[2]*A.x+I[3]*this.toPoint.x,y:I[0]*this.fromPoint.y+I[1]*e.y+I[2]*A.y+I[3]*this.toPoint.y}}}]),e}(lz);function pz(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var fz=function(g){dk(e,g);var t=pz(e);function e(g,A,C){return cd(this,e),t.call(this,g,A,C)}return Bh(e,[{key:"_line",value:function(g,t){g.beginPath(),g.moveTo(this.fromPoint.x,this.fromPoint.y),g.lineTo(this.toPoint.x,this.toPoint.y),this.enableShadow(g,t),g.stroke(),this.disableShadow(g,t)}},{key:"getViaNode",value:function(){}},{key:"getPoint",value:function(g){return{x:(1-g)*this.fromPoint.x+g*this.toPoint.x,y:(1-g)*this.fromPoint.y+g*this.toPoint.y}}},{key:"_findBorderPosition",value:function(g,t){var e=this.to,A=this.from;g.id===this.from.id&&(e=this.from,A=this.to);var C=Math.atan2(e.y-A.y,e.x-A.x),I=e.x-A.x,i=e.y-A.y,o=Math.sqrt(I*I+i*i),n=(o-g.distanceToBorder(t,C))/o;return{x:(1-n)*A.x+n*e.x,y:(1-n)*A.y+n*e.y,t:0}}},{key:"_getDistanceToEdge",value:function(g,t,e,A,C,I){return this._getDistanceToLine(g,t,e,A,C,I)}}]),e}(Cz),vz=function(){function g(t,e,A,C,I){if(cd(this,g),void 0===e)throw new Error("No body provided");this.options=Jm(C),this.globalOptions=C,this.defaultOptions=I,this.body=e,this.imagelist=A,this.id=void 0,this.fromId=void 0,this.toId=void 0,this.selected=!1,this.hover=!1,this.labelDirty=!0,this.baseWidth=this.options.width,this.baseFontSize=this.options.font.size,this.from=void 0,this.to=void 0,this.edgeType=void 0,this.connected=!1,this.labelModule=new bM(this.body,this.options,!0),this.setOptions(t)}return Bh(g,[{key:"setOptions",value:function(t){if(t){var e=void 0!==t.physics&&this.options.physics!==t.physics||void 0!==t.hidden&&(this.options.hidden||!1)!==(t.hidden||!1)||void 0!==t.from&&this.options.from!==t.from||void 0!==t.to&&this.options.to!==t.to;g.parseOptions(this.options,t,!0,this.globalOptions),void 0!==t.id&&(this.id=t.id),void 0!==t.from&&(this.fromId=t.from),void 0!==t.to&&(this.toId=t.to),void 0!==t.title&&(this.title=t.title),void 0!==t.value&&(t.value=AM(t.value));var A=[t,this.options,this.defaultOptions];return this.chooser=hM("edge",A),this.updateLabelModule(t),e=this.updateEdgeType()||e,this._setInteractionWidths(),this.connect(),e}}},{key:"getFormattingValues",value:function(){var g=!0===this.options.arrows.to||!0===this.options.arrows.to.enabled,t=!0===this.options.arrows.from||!0===this.options.arrows.from.enabled,e=!0===this.options.arrows.middle||!0===this.options.arrows.middle.enabled,A=this.options.color.inherit,C={toArrow:g,toArrowScale:this.options.arrows.to.scaleFactor,toArrowType:this.options.arrows.to.type,toArrowSrc:this.options.arrows.to.src,toArrowImageWidth:this.options.arrows.to.imageWidth,toArrowImageHeight:this.options.arrows.to.imageHeight,middleArrow:e,middleArrowScale:this.options.arrows.middle.scaleFactor,middleArrowType:this.options.arrows.middle.type,middleArrowSrc:this.options.arrows.middle.src,middleArrowImageWidth:this.options.arrows.middle.imageWidth,middleArrowImageHeight:this.options.arrows.middle.imageHeight,fromArrow:t,fromArrowScale:this.options.arrows.from.scaleFactor,fromArrowType:this.options.arrows.from.type,fromArrowSrc:this.options.arrows.from.src,fromArrowImageWidth:this.options.arrows.from.imageWidth,fromArrowImageHeight:this.options.arrows.from.imageHeight,arrowStrikethrough:this.options.arrowStrikethrough,color:A?void 0:this.options.color.color,inheritsColor:A,opacity:this.options.color.opacity,hidden:this.options.hidden,length:this.options.length,shadow:this.options.shadow.enabled,shadowColor:this.options.shadow.color,shadowSize:this.options.shadow.size,shadowX:this.options.shadow.x,shadowY:this.options.shadow.y,dashes:this.options.dashes,width:this.options.width,background:this.options.background.enabled,backgroundColor:this.options.background.color,backgroundSize:this.options.background.size,backgroundDashes:this.options.background.dashes};if(this.selected||this.hover)if(!0===this.chooser){if(this.selected){var I=this.options.selectionWidth;"function"==typeof I?C.width=I(C.width):"number"==typeof I&&(C.width+=I),C.width=Math.max(C.width,.3/this.body.view.scale),C.color=this.options.color.highlight,C.shadow=this.options.shadow.enabled}else if(this.hover){var i=this.options.hoverWidth;"function"==typeof i?C.width=i(C.width):"number"==typeof i&&(C.width+=i),C.width=Math.max(C.width,.3/this.body.view.scale),C.color=this.options.color.hover,C.shadow=this.options.shadow.enabled}}else"function"==typeof this.chooser&&(this.chooser(C,this.options.id,this.selected,this.hover),void 0!==C.color&&(C.inheritsColor=!1),!1===C.shadow&&(C.shadowColor===this.options.shadow.color&&C.shadowSize===this.options.shadow.size&&C.shadowX===this.options.shadow.x&&C.shadowY===this.options.shadow.y||(C.shadow=!0)));else C.shadow=this.options.shadow.enabled,C.width=Math.max(C.width,.3/this.body.view.scale);return C}},{key:"updateLabelModule",value:function(g){var t=[g,this.options,this.globalOptions,this.defaultOptions];this.labelModule.update(this.options,t),void 0!==this.labelModule.baseSize&&(this.baseFontSize=this.labelModule.baseSize)}},{key:"updateEdgeType",value:function(){var g=this.options.smooth,t=!1,e=!0;return void 0!==this.edgeType&&((this.edgeType instanceof sz&&!0===g.enabled&&"dynamic"===g.type||this.edgeType instanceof uz&&!0===g.enabled&&"cubicBezier"===g.type||this.edgeType instanceof dz&&!0===g.enabled&&"dynamic"!==g.type&&"cubicBezier"!==g.type||this.edgeType instanceof fz&&!1===g.type.enabled)&&(e=!1),!0===e&&(t=this.cleanup())),!0===e?!0===g.enabled?"dynamic"===g.type?(t=!0,this.edgeType=new sz(this.options,this.body,this.labelModule)):"cubicBezier"===g.type?this.edgeType=new uz(this.options,this.body,this.labelModule):this.edgeType=new dz(this.options,this.body,this.labelModule):this.edgeType=new fz(this.options,this.body,this.labelModule):this.edgeType.setOptions(this.options),t}},{key:"connect",value:function(){this.disconnect(),this.from=this.body.nodes[this.fromId]||void 0,this.to=this.body.nodes[this.toId]||void 0,this.connected=void 0!==this.from&&void 0!==this.to,!0===this.connected?(this.from.attachEdge(this),this.to.attachEdge(this)):(this.from&&this.from.detachEdge(this),this.to&&this.to.detachEdge(this)),this.edgeType.connect()}},{key:"disconnect",value:function(){this.from&&(this.from.detachEdge(this),this.from=void 0),this.to&&(this.to.detachEdge(this),this.to=void 0),this.connected=!1}},{key:"getTitle",value:function(){return this.title}},{key:"isSelected",value:function(){return this.selected}},{key:"getValue",value:function(){return this.options.value}},{key:"setValueRange",value:function(g,t,e){if(void 0!==this.options.value){var A=this.options.scaling.customScalingFunction(g,t,e,this.options.value),C=this.options.scaling.max-this.options.scaling.min;if(!0===this.options.scaling.label.enabled){var I=this.options.scaling.label.max-this.options.scaling.label.min;this.options.font.size=this.options.scaling.label.min+A*I}this.options.width=this.options.scaling.min+A*C}else this.options.width=this.baseWidth,this.options.font.size=this.baseFontSize;this._setInteractionWidths(),this.updateLabelModule()}},{key:"_setInteractionWidths",value:function(){"function"==typeof this.options.hoverWidth?this.edgeType.hoverWidth=this.options.hoverWidth(this.options.width):this.edgeType.hoverWidth=this.options.hoverWidth+this.options.width,"function"==typeof this.options.selectionWidth?this.edgeType.selectionWidth=this.options.selectionWidth(this.options.width):this.edgeType.selectionWidth=this.options.selectionWidth+this.options.width}},{key:"draw",value:function(g){var t=this.getFormattingValues();if(!t.hidden){var e=this.edgeType.getViaNode();this.edgeType.drawLine(g,t,this.selected,this.hover,e),this.drawLabel(g,e)}}},{key:"drawArrows",value:function(g){var t=this.getFormattingValues();if(!t.hidden){var e=this.edgeType.getViaNode(),A={};this.edgeType.fromPoint=this.edgeType.from,this.edgeType.toPoint=this.edgeType.to,t.fromArrow&&(A.from=this.edgeType.getArrowData(g,"from",e,this.selected,this.hover,t),!1===t.arrowStrikethrough&&(this.edgeType.fromPoint=A.from.core),t.fromArrowSrc&&(A.from.image=this.imagelist.load(t.fromArrowSrc)),t.fromArrowImageWidth&&(A.from.imageWidth=t.fromArrowImageWidth),t.fromArrowImageHeight&&(A.from.imageHeight=t.fromArrowImageHeight)),t.toArrow&&(A.to=this.edgeType.getArrowData(g,"to",e,this.selected,this.hover,t),!1===t.arrowStrikethrough&&(this.edgeType.toPoint=A.to.core),t.toArrowSrc&&(A.to.image=this.imagelist.load(t.toArrowSrc)),t.toArrowImageWidth&&(A.to.imageWidth=t.toArrowImageWidth),t.toArrowImageHeight&&(A.to.imageHeight=t.toArrowImageHeight)),t.middleArrow&&(A.middle=this.edgeType.getArrowData(g,"middle",e,this.selected,this.hover,t),t.middleArrowSrc&&(A.middle.image=this.imagelist.load(t.middleArrowSrc)),t.middleArrowImageWidth&&(A.middle.imageWidth=t.middleArrowImageWidth),t.middleArrowImageHeight&&(A.middle.imageHeight=t.middleArrowImageHeight)),t.fromArrow&&this.edgeType.drawArrowHead(g,t,this.selected,this.hover,A.from),t.middleArrow&&this.edgeType.drawArrowHead(g,t,this.selected,this.hover,A.middle),t.toArrow&&this.edgeType.drawArrowHead(g,t,this.selected,this.hover,A.to)}}},{key:"drawLabel",value:function(g,t){if(void 0!==this.options.label){var e,A=this.from,C=this.to;if(this.labelModule.differentState(this.selected,this.hover)&&this.labelModule.getTextSize(g,this.selected,this.hover),A.id!=C.id){this.labelModule.pointToSelf=!1,e=this.edgeType.getPoint(.5,t),g.save();var I=this._getRotation(g);0!=I.angle&&(g.translate(I.x,I.y),g.rotate(I.angle)),this.labelModule.draw(g,e.x,e.y,this.selected,this.hover),g.restore()}else{this.labelModule.pointToSelf=!0;var i=uM(g,this.options.selfReference.angle,this.options.selfReference.size,A);e=this._pointOnCircle(i.x,i.y,this.options.selfReference.size,this.options.selfReference.angle),this.labelModule.draw(g,e.x,e.y,this.selected,this.hover)}}}},{key:"getItemsOnPoint",value:function(g){var t=[];if(this.labelModule.visible()){var e=this._getRotation();lM(this.labelModule.getSize(),g,e)&&t.push({edgeId:this.id,labelId:0})}var A={left:g.x,top:g.y};return this.isOverlappingWith(A)&&t.push({edgeId:this.id}),t}},{key:"isOverlappingWith",value:function(g){if(this.connected){var t=this.from.x,e=this.from.y,A=this.to.x,C=this.to.y,I=g.left,i=g.top;return this.edgeType.getDistanceToEdge(t,e,A,C,I,i)<10}return!1}},{key:"_getRotation",value:function(g){var t=this.edgeType.getViaNode(),e=this.edgeType.getPoint(.5,t);void 0!==g&&this.labelModule.calculateLabelSize(g,this.selected,this.hover,e.x,e.y);var A={x:e.x,y:this.labelModule.size.yLine,angle:0};if(!this.labelModule.visible())return A;if("horizontal"===this.options.font.align)return A;var C=this.from.y-this.to.y,I=this.from.x-this.to.x,i=Math.atan2(C,I);return(i<-1&&I<0||i>0&&I<0)&&(i+=Math.PI),A.angle=i,A}},{key:"_pointOnCircle",value:function(g,t,e,A){return{x:g+e*Math.cos(A),y:t-e*Math.sin(A)}}},{key:"select",value:function(){this.selected=!0}},{key:"unselect",value:function(){this.selected=!1}},{key:"cleanup",value:function(){return this.edgeType.cleanup()}},{key:"remove",value:function(){this.cleanup(),this.disconnect(),delete this.body.edges[this.id]}},{key:"endPointsValid",value:function(){return void 0!==this.body.nodes[this.fromId]&&void 0!==this.body.nodes[this.toId]}}],[{key:"parseOptions",value:function(g,t){var e=arguments.length>2&&void 0!==arguments[2]&&arguments[2],A=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},C=arguments.length>4&&void 0!==arguments[4]&&arguments[4];if(Sm(["endPointOffset","arrowStrikethrough","id","from","hidden","hoverWidth","labelHighlightBold","length","line","opacity","physics","scaling","selectionWidth","selfReferenceSize","selfReference","to","title","value","width","font","chosen","widthConstraint"],g,t,e),void 0!==t.endPointOffset&&void 0!==t.endPointOffset.from&&(Zx(t.endPointOffset.from)?g.endPointOffset.from=t.endPointOffset.from:(g.endPointOffset.from=void 0!==A.endPointOffset.from?A.endPointOffset.from:0,console.error("endPointOffset.from is not a valid number"))),void 0!==t.endPointOffset&&void 0!==t.endPointOffset.to&&(Zx(t.endPointOffset.to)?g.endPointOffset.to=t.endPointOffset.to:(g.endPointOffset.to=void 0!==A.endPointOffset.to?A.endPointOffset.to:0,console.error("endPointOffset.to is not a valid number"))),cM(t.label)?g.label=t.label:cM(g.label)||(g.label=void 0),qm(g,t,"smooth",A),qm(g,t,"shadow",A),qm(g,t,"background",A),void 0!==t.dashes&&null!==t.dashes?g.dashes=t.dashes:!0===e&&null===t.dashes&&(g.dashes=pf(A.dashes)),void 0!==t.scaling&&null!==t.scaling?(void 0!==t.scaling.min&&(g.scaling.min=t.scaling.min),void 0!==t.scaling.max&&(g.scaling.max=t.scaling.max),qm(g.scaling,t.scaling,"label",A.scaling)):!0===e&&null===t.scaling&&(g.scaling=pf(A.scaling)),void 0!==t.arrows&&null!==t.arrows)if("string"==typeof t.arrows){var I=t.arrows.toLowerCase();g.arrows.to.enabled=-1!=$p(I).call(I,"to"),g.arrows.middle.enabled=-1!=$p(I).call(I,"middle"),g.arrows.from.enabled=-1!=$p(I).call(I,"from")}else{if("object"!==kh(t.arrows))throw new Error("The arrow newOptions can only be an object or a string. Refer to the documentation. You used:"+xf(t.arrows));qm(g.arrows,t.arrows,"to",A.arrows),qm(g.arrows,t.arrows,"middle",A.arrows),qm(g.arrows,t.arrows,"from",A.arrows)}else!0===e&&null===t.arrows&&(g.arrows=pf(A.arrows));if(void 0!==t.color&&null!==t.color){var i=Pm(t.color)?{color:t.color,highlight:t.color,hover:t.color,inherit:!1,opacity:1}:t.color,o=g.color;if(C)Fm(o,A.color,!1,e);else for(var n in o)Object.prototype.hasOwnProperty.call(o,n)&&delete o[n];if(Pm(o))o.color=o,o.highlight=o,o.hover=o,o.inherit=!1,void 0===i.opacity&&(o.opacity=1);else{var r=!1;void 0!==i.color&&(o.color=i.color,r=!0),void 0!==i.highlight&&(o.highlight=i.highlight,r=!0),void 0!==i.hover&&(o.hover=i.hover,r=!0),void 0!==i.inherit&&(o.inherit=i.inherit),void 0!==i.opacity&&(o.opacity=Math.min(1,Math.max(0,i.opacity))),!0===r?o.inherit=!1:void 0===o.inherit&&(o.inherit="from")}}else!0===e&&null===t.color&&(g.color=Jm(A.color));!0===e&&null===t.font&&(g.font=Jm(A.font)),Object.prototype.hasOwnProperty.call(t,"selfReferenceSize")&&(console.warn("The selfReferenceSize property has been deprecated. Please use selfReference property instead. The selfReference can be set like thise selfReference:{size:30, angle:Math.PI / 4}"),g.selfReference.size=t.selfReferenceSize)}}]),g}(),yz=function(){function g(t,e,A){var C,I=this;cd(this,g),this.body=t,this.images=e,this.groups=A,this.body.functions.createEdge=QA(C=this.create).call(C,this),this.edgesListeners={add:function(g,t){I.add(t.items)},update:function(g,t){I.update(t.items)},remove:function(g,t){I.remove(t.items)}},this.options={},this.defaultOptions={arrows:{to:{enabled:!1,scaleFactor:1,type:"arrow"},middle:{enabled:!1,scaleFactor:1,type:"arrow"},from:{enabled:!1,scaleFactor:1,type:"arrow"}},endPointOffset:{from:0,to:0},arrowStrikethrough:!0,color:{color:"#848484",highlight:"#848484",hover:"#848484",inherit:"from",opacity:1},dashes:!1,font:{color:"#343434",size:14,face:"arial",background:"none",strokeWidth:2,strokeColor:"#ffffff",align:"horizontal",multi:!1,vadjust:0,bold:{mod:"bold"},boldital:{mod:"bold italic"},ital:{mod:"italic"},mono:{mod:"",size:15,face:"courier new",vadjust:2}},hidden:!1,hoverWidth:1.5,label:void 0,labelHighlightBold:!0,length:void 0,physics:!0,scaling:{min:1,max:15,label:{enabled:!0,min:14,max:30,maxVisible:30,drawThreshold:5},customScalingFunction:function(g,t,e,A){if(t===g)return.5;var C=1/(t-g);return Math.max(0,(A-g)*C)}},selectionWidth:1.5,selfReference:{size:20,angle:Math.PI/4,renderBehindTheNode:!0},shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:10,x:5,y:5},background:{enabled:!1,color:"rgba(111,111,111,1)",size:10,dashes:!1},smooth:{enabled:!0,type:"dynamic",forceDirection:"none",roundness:.5},title:void 0,width:1,value:void 0},Fm(this.options,this.defaultOptions),this.bindEventListeners()}return Bh(g,[{key:"bindEventListeners",value:function(){var g,t,e=this;this.body.emitter.on("_forceDisableDynamicCurves",(function(g){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];"dynamic"===g&&(g="continuous");var A=!1;for(var C in e.body.edges)if(Object.prototype.hasOwnProperty.call(e.body.edges,C)){var I=e.body.edges[C],i=e.body.data.edges.get(C);if(null!=i){var o=i.smooth;void 0!==o&&!0===o.enabled&&"dynamic"===o.type&&(void 0===g?I.setOptions({smooth:!1}):I.setOptions({smooth:{type:g}}),A=!0)}}!0===t&&!0===A&&e.body.emitter.emit("_dataChanged")})),this.body.emitter.on("_dataUpdated",(function(){e.reconnectEdges()})),this.body.emitter.on("refreshEdges",QA(g=this.refresh).call(g,this)),this.body.emitter.on("refresh",QA(t=this.refresh).call(t,this)),this.body.emitter.on("destroy",(function(){Lm(e.edgesListeners,(function(g,t){e.body.data.edges&&e.body.data.edges.off(t,g)})),delete e.body.functions.createEdge,delete e.edgesListeners.add,delete e.edgesListeners.update,delete e.edgesListeners.remove,delete e.edgesListeners}))}},{key:"setOptions",value:function(g){if(void 0!==g){vz.parseOptions(this.options,g,!0,this.defaultOptions,!0);var t=!1;if(void 0!==g.smooth)for(var e in this.body.edges)Object.prototype.hasOwnProperty.call(this.body.edges,e)&&(t=this.body.edges[e].updateEdgeType()||t);if(void 0!==g.font)for(var A in this.body.edges)Object.prototype.hasOwnProperty.call(this.body.edges,A)&&this.body.edges[A].updateLabelModule();void 0===g.hidden&&void 0===g.physics&&!0!==t||this.body.emitter.emit("_dataChanged")}}},{key:"setData",value:function(g){var t=this,e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],A=this.body.data.edges;if(VP("id",g))this.body.data.edges=g;else if(Vl(g))this.body.data.edges=new GP,this.body.data.edges.add(g);else{if(g)throw new TypeError("Array or DataSet expected");this.body.data.edges=new GP}if(A&&Lm(this.edgesListeners,(function(g,t){A.off(t,g)})),this.body.edges={},this.body.data.edges){Lm(this.edgesListeners,(function(g,e){t.body.data.edges.on(e,g)}));var C=this.body.data.edges.getIds();this.add(C,!0)}this.body.emitter.emit("_adjustEdgesForHierarchicalLayout"),!1===e&&this.body.emitter.emit("_dataChanged")}},{key:"add",value:function(g){for(var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],e=this.body.edges,A=this.body.data.edges,C=0;C<g.length;C++){var I=g[C],i=e[I];i&&i.disconnect();var o=A.get(I,{showInternalIds:!0});e[I]=this.create(o)}this.body.emitter.emit("_adjustEdgesForHierarchicalLayout"),!1===t&&this.body.emitter.emit("_dataChanged")}},{key:"update",value:function(g){for(var t=this.body.edges,e=this.body.data.edges,A=!1,C=0;C<g.length;C++){var I=g[C],i=e.get(I),o=t[I];void 0!==o?(o.disconnect(),A=o.setOptions(i)||A,o.connect()):(this.body.edges[I]=this.create(i),A=!0)}!0===A?(this.body.emitter.emit("_adjustEdgesForHierarchicalLayout"),this.body.emitter.emit("_dataChanged")):this.body.emitter.emit("_dataUpdated")}},{key:"remove",value:function(g){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(0!==g.length){var e=this.body.edges;Lm(g,(function(g){var t=e[g];void 0!==t&&t.remove()})),t&&this.body.emitter.emit("_dataChanged")}}},{key:"refresh",value:function(){var g=this;Lm(this.body.edges,(function(t,e){var A=g.body.data.edges.get(e);void 0!==A&&t.setOptions(A)}))}},{key:"create",value:function(g){return new vz(g,this.body,this.images,this.options,this.defaultOptions)}},{key:"reconnectEdges",value:function(){var g,t=this.body.nodes,e=this.body.edges;for(g in t)Object.prototype.hasOwnProperty.call(t,g)&&(t[g].edges=[]);for(g in e)if(Object.prototype.hasOwnProperty.call(e,g)){var A=e[g];A.from=null,A.to=null,A.connect()}}},{key:"getConnectedNodes",value:function(g){var t=[];if(void 0!==this.body.edges[g]){var e=this.body.edges[g];void 0!==e.fromId&&t.push(e.fromId),void 0!==e.toId&&t.push(e.toId)}return t}},{key:"_updateState",value:function(){this._addMissingEdges(),this._removeInvalidEdges()}},{key:"_removeInvalidEdges",value:function(){var g=this,t=[];Lm(this.body.edges,(function(e,A){var C=g.body.nodes[e.toId],I=g.body.nodes[e.fromId];void 0!==C&&!0===C.isCluster||void 0!==I&&!0===I.isCluster||void 0!==C&&void 0!==I||t.push(A)})),this.remove(t,!1)}},{key:"_addMissingEdges",value:function(){var g=this.body.data.edges;if(null!=g){var t=this.body.edges,e=[];Ec(g).call(g,(function(g,A){void 0===t[A]&&e.push(A)})),this.add(e,!0)}}}]),g}(),mz=function(){function g(t,e,A){cd(this,g),this.body=t,this.physicsBody=e,this.barnesHutTree,this.setOptions(A),this._rng=xm("BARNES HUT SOLVER")}return Bh(g,[{key:"setOptions",value:function(g){this.options=g,this.thetaInversed=1/this.options.theta,this.overlapAvoidanceFactor=1-Math.max(0,Math.min(1,this.options.avoidOverlap))}},{key:"solve",value:function(){if(0!==this.options.gravitationalConstant&&this.physicsBody.physicsNodeIndices.length>0){var g,t=this.body.nodes,e=this.physicsBody.physicsNodeIndices,A=e.length,C=this._formBarnesHutTree(t,e);this.barnesHutTree=C;for(var I=0;I<A;I++)(g=t[e[I]]).options.mass>0&&this._getForceContributions(C.root,g)}}},{key:"_getForceContributions",value:function(g,t){this._getForceContribution(g.children.NW,t),this._getForceContribution(g.children.NE,t),this._getForceContribution(g.children.SW,t),this._getForceContribution(g.children.SE,t)}},{key:"_getForceContribution",value:function(g,t){if(g.childrenCount>0){var e=g.centerOfMass.x-t.x,A=g.centerOfMass.y-t.y,C=Math.sqrt(e*e+A*A);C*g.calcSize>this.thetaInversed?this._calculateForces(C,e,A,t,g):4===g.childrenCount?this._getForceContributions(g,t):g.children.data.id!=t.id&&this._calculateForces(C,e,A,t,g)}}},{key:"_calculateForces",value:function(g,t,e,A,C){0===g&&(t=g=.1),this.overlapAvoidanceFactor<1&&A.shape.radius&&(g=Math.max(.1+this.overlapAvoidanceFactor*A.shape.radius,g-A.shape.radius));var I=this.options.gravitationalConstant*C.mass*A.options.mass/Math.pow(g,3),i=t*I,o=e*I;this.physicsBody.forces[A.id].x+=i,this.physicsBody.forces[A.id].y+=o}},{key:"_formBarnesHutTree",value:function(g,t){for(var e,A=t.length,C=g[t[0]].x,I=g[t[0]].y,i=g[t[0]].x,o=g[t[0]].y,n=1;n<A;n++){var r=g[t[n]],s=r.x,a=r.y;r.options.mass>0&&(s<C&&(C=s),s>i&&(i=s),a<I&&(I=a),a>o&&(o=a))}var d=Math.abs(i-C)-Math.abs(o-I);d>0?(I-=.5*d,o+=.5*d):(C+=.5*d,i-=.5*d);var h=Math.max(1e-5,Math.abs(i-C)),l=.5*h,c=.5*(C+i),u=.5*(I+o),p={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:c-l,maxX:c+l,minY:u-l,maxY:u+l},size:h,calcSize:1/h,children:{data:null},maxWidth:0,level:0,childrenCount:4}};this._splitBranch(p.root);for(var f=0;f<A;f++)(e=g[t[f]]).options.mass>0&&this._placeInTree(p.root,e);return p}},{key:"_updateBranchMass",value:function(g,t){var e=g.centerOfMass,A=g.mass+t.options.mass,C=1/A;e.x=e.x*g.mass+t.x*t.options.mass,e.x*=C,e.y=e.y*g.mass+t.y*t.options.mass,e.y*=C,g.mass=A;var I=Math.max(Math.max(t.height,t.radius),t.width);g.maxWidth=g.maxWidth<I?I:g.maxWidth}},{key:"_placeInTree",value:function(g,t,e){1==e&&void 0!==e||this._updateBranchMass(g,t);var A,C=g.children.NW.range;A=C.maxX>t.x?C.maxY>t.y?"NW":"SW":C.maxY>t.y?"NE":"SE",this._placeInRegion(g,t,A)}},{key:"_placeInRegion",value:function(g,t,e){var A=g.children[e];switch(A.childrenCount){case 0:A.children.data=t,A.childrenCount=1,this._updateBranchMass(A,t);break;case 1:A.children.data.x===t.x&&A.children.data.y===t.y?(t.x+=this._rng(),t.y+=this._rng()):(this._splitBranch(A),this._placeInTree(A,t));break;case 4:this._placeInTree(A,t)}}},{key:"_splitBranch",value:function(g){var t=null;1===g.childrenCount&&(t=g.children.data,g.mass=0,g.centerOfMass.x=0,g.centerOfMass.y=0),g.childrenCount=4,g.children.data=null,this._insertRegion(g,"NW"),this._insertRegion(g,"NE"),this._insertRegion(g,"SW"),this._insertRegion(g,"SE"),null!=t&&this._placeInTree(g,t)}},{key:"_insertRegion",value:function(g,t){var e,A,C,I,i=.5*g.size;switch(t){case"NW":e=g.range.minX,A=g.range.minX+i,C=g.range.minY,I=g.range.minY+i;break;case"NE":e=g.range.minX+i,A=g.range.maxX,C=g.range.minY,I=g.range.minY+i;break;case"SW":e=g.range.minX,A=g.range.minX+i,C=g.range.minY+i,I=g.range.maxY;break;case"SE":e=g.range.minX+i,A=g.range.maxX,C=g.range.minY+i,I=g.range.maxY}g.children[t]={centerOfMass:{x:0,y:0},mass:0,range:{minX:e,maxX:A,minY:C,maxY:I},size:.5*g.size,calcSize:2*g.calcSize,children:{data:null},maxWidth:0,level:g.level+1,childrenCount:0}}},{key:"_debug",value:function(g,t){void 0!==this.barnesHutTree&&(g.lineWidth=1,this._drawBranch(this.barnesHutTree.root,g,t))}},{key:"_drawBranch",value:function(g,t,e){void 0===e&&(e="#FF0000"),4===g.childrenCount&&(this._drawBranch(g.children.NW,t),this._drawBranch(g.children.NE,t),this._drawBranch(g.children.SE,t),this._drawBranch(g.children.SW,t)),t.strokeStyle=e,t.beginPath(),t.moveTo(g.range.minX,g.range.minY),t.lineTo(g.range.maxX,g.range.minY),t.stroke(),t.beginPath(),t.moveTo(g.range.maxX,g.range.minY),t.lineTo(g.range.maxX,g.range.maxY),t.stroke(),t.beginPath(),t.moveTo(g.range.maxX,g.range.maxY),t.lineTo(g.range.minX,g.range.maxY),t.stroke(),t.beginPath(),t.moveTo(g.range.minX,g.range.maxY),t.lineTo(g.range.minX,g.range.minY),t.stroke()}}]),g}(),bz=function(){function g(t,e,A){cd(this,g),this._rng=xm("REPULSION SOLVER"),this.body=t,this.physicsBody=e,this.setOptions(A)}return Bh(g,[{key:"setOptions",value:function(g){this.options=g}},{key:"solve",value:function(){for(var g,t,e,A,C,I,i,o,n=this.body.nodes,r=this.physicsBody.physicsNodeIndices,s=this.physicsBody.forces,a=this.options.nodeDistance,d=-2/3/a,h=0;h<r.length-1;h++){i=n[r[h]];for(var l=h+1;l<r.length;l++)g=(o=n[r[l]]).x-i.x,t=o.y-i.y,0===(e=Math.sqrt(g*g+t*t))&&(g=e=.1*this._rng()),e<2*a&&(I=e<.5*a?1:d*e+1.3333333333333333,A=g*(I/=e),C=t*I,s[i.id].x-=A,s[i.id].y-=C,s[o.id].x+=A,s[o.id].y+=C)}}}]),g}(),wz=function(){function g(t,e,A){cd(this,g),this.body=t,this.physicsBody=e,this.setOptions(A)}return Bh(g,[{key:"setOptions",value:function(g){this.options=g,this.overlapAvoidanceFactor=Math.max(0,Math.min(1,this.options.avoidOverlap||0))}},{key:"solve",value:function(){for(var g=this.body.nodes,t=this.physicsBody.physicsNodeIndices,e=this.physicsBody.forces,A=this.options.nodeDistance,C=0;C<t.length-1;C++)for(var I=g[t[C]],i=C+1;i<t.length;i++){var o=g[t[i]];if(I.level===o.level){var n=A+this.overlapAvoidanceFactor*((I.shape.radius||0)/2+(o.shape.radius||0)/2),r=o.x-I.x,s=o.y-I.y,a=Math.sqrt(r*r+s*s),d=void 0;d=a<n?-Math.pow(.05*a,2)+Math.pow(.05*n,2):0,0!==a&&(d/=a);var h=r*d,l=s*d;e[I.id].x-=h,e[I.id].y-=l,e[o.id].x+=h,e[o.id].y+=l}}}}]),g}(),xz=function(){function g(t,e,A){cd(this,g),this.body=t,this.physicsBody=e,this.setOptions(A)}return Bh(g,[{key:"setOptions",value:function(g){this.options=g}},{key:"solve",value:function(){for(var g,t,e,A,C,I=this.physicsBody.physicsEdgeIndices,i=this.body.edges,o=0;o<I.length;o++)!0===(t=i[I[o]]).connected&&t.toId!==t.fromId&&void 0!==this.body.nodes[t.toId]&&void 0!==this.body.nodes[t.fromId]&&(void 0!==t.edgeType.via?(g=void 0===t.options.length?this.options.springLength:t.options.length,e=t.to,A=t.edgeType.via,C=t.from,this._calculateSpringForce(e,A,.5*g),this._calculateSpringForce(A,C,.5*g)):(g=void 0===t.options.length?1.5*this.options.springLength:t.options.length,this._calculateSpringForce(t.from,t.to,g)))}},{key:"_calculateSpringForce",value:function(g,t,e){var A=g.x-t.x,C=g.y-t.y,I=Math.max(Math.sqrt(A*A+C*C),.01),i=this.options.springConstant*(e-I)/I,o=A*i,n=C*i;void 0!==this.physicsBody.forces[g.id]&&(this.physicsBody.forces[g.id].x+=o,this.physicsBody.forces[g.id].y+=n),void 0!==this.physicsBody.forces[t.id]&&(this.physicsBody.forces[t.id].x-=o,this.physicsBody.forces[t.id].y-=n)}}]),g}(),kz=function(){function g(t,e,A){cd(this,g),this.body=t,this.physicsBody=e,this.setOptions(A)}return Bh(g,[{key:"setOptions",value:function(g){this.options=g}},{key:"solve",value:function(){for(var g,t,e,A,C,I,i,o,n,r,s=this.body.edges,a=.5,d=this.physicsBody.physicsEdgeIndices,h=this.physicsBody.physicsNodeIndices,l=this.physicsBody.forces,c=0;c<h.length;c++){var u=h[c];l[u].springFx=0,l[u].springFy=0}for(var p=0;p<d.length;p++)!0===(t=s[d[p]]).connected&&(g=void 0===t.options.length?this.options.springLength:t.options.length,e=t.from.x-t.to.x,A=t.from.y-t.to.y,o=0===(o=Math.sqrt(e*e+A*A))?.01:o,C=e*(i=this.options.springConstant*(g-o)/o),I=A*i,t.to.level!=t.from.level?(void 0!==l[t.toId]&&(l[t.toId].springFx-=C,l[t.toId].springFy-=I),void 0!==l[t.fromId]&&(l[t.fromId].springFx+=C,l[t.fromId].springFy+=I)):(void 0!==l[t.toId]&&(l[t.toId].x-=a*C,l[t.toId].y-=a*I),void 0!==l[t.fromId]&&(l[t.fromId].x+=a*C,l[t.fromId].y+=a*I)));i=1;for(var f=0;f<h.length;f++){var v=h[f];n=Math.min(i,Math.max(-i,l[v].springFx)),r=Math.min(i,Math.max(-i,l[v].springFy)),l[v].x+=n,l[v].y+=r}for(var y=0,m=0,b=0;b<h.length;b++){var w=h[b];y+=l[w].x,m+=l[w].y}for(var x=y/h.length,k=m/h.length,E=0;E<h.length;E++){var O=h[E];l[O].x-=x,l[O].y-=k}}}]),g}(),Ez=function(){function g(t,e,A){cd(this,g),this.body=t,this.physicsBody=e,this.setOptions(A)}return Bh(g,[{key:"setOptions",value:function(g){this.options=g}},{key:"solve",value:function(){for(var g,t,e,A,C=this.body.nodes,I=this.physicsBody.physicsNodeIndices,i=this.physicsBody.forces,o=0;o<I.length;o++){g=-(A=C[I[o]]).x,t=-A.y,e=Math.sqrt(g*g+t*t),this._calculateForces(e,g,t,i,A)}}},{key:"_calculateForces",value:function(g,t,e,A,C){var I=0===g?0:this.options.centralGravity/g;A[C.id].x=t*I,A[C.id].y=e*I}}]),g}();function Oz(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var Tz=function(g){dk(e,g);var t=Oz(e);function e(g,A,C){var I;return cd(this,e),(I=t.call(this,g,A,C))._rng=xm("FORCE ATLAS 2 BASED REPULSION SOLVER"),I}return Bh(e,[{key:"_calculateForces",value:function(g,t,e,A,C){0===g&&(t=g=.1*this._rng()),this.overlapAvoidanceFactor<1&&A.shape.radius&&(g=Math.max(.1+this.overlapAvoidanceFactor*A.shape.radius,g-A.shape.radius));var I=A.edges.length+1,i=this.options.gravitationalConstant*C.mass*A.options.mass*I/Math.pow(g,2),o=t*i,n=e*i;this.physicsBody.forces[A.id].x+=o,this.physicsBody.forces[A.id].y+=n}}]),e}(mz);function Dz(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var Nz=function(g){dk(e,g);var t=Dz(e);function e(g,A,C){return cd(this,e),t.call(this,g,A,C)}return Bh(e,[{key:"_calculateForces",value:function(g,t,e,A,C){if(g>0){var I=C.edges.length+1,i=this.options.centralGravity*I*C.options.mass;A[C.id].x=t*i,A[C.id].y=e*i}}}]),e}(Ez),Rz=function(){function g(t){cd(this,g),this.body=t,this.physicsBody={physicsNodeIndices:[],physicsEdgeIndices:[],forces:{},velocities:{}},this.physicsEnabled=!0,this.simulationInterval=1e3/60,this.requiresTimeout=!0,this.previousStates={},this.referenceState={},this.freezeCache={},this.renderTimer=void 0,this.adaptiveTimestep=!1,this.adaptiveTimestepEnabled=!1,this.adaptiveCounter=0,this.adaptiveInterval=3,this.stabilized=!1,this.startedStabilization=!1,this.stabilizationIterations=0,this.ready=!1,this.options={},this.defaultOptions={enabled:!0,barnesHut:{theta:.5,gravitationalConstant:-2e3,centralGravity:.3,springLength:95,springConstant:.04,damping:.09,avoidOverlap:0},forceAtlas2Based:{theta:.5,gravitationalConstant:-50,centralGravity:.01,springConstant:.08,springLength:100,damping:.4,avoidOverlap:0},repulsion:{centralGravity:.2,springLength:200,springConstant:.05,nodeDistance:100,damping:.09,avoidOverlap:0},hierarchicalRepulsion:{centralGravity:0,springLength:100,springConstant:.01,nodeDistance:120,damping:.09},maxVelocity:50,minVelocity:.75,solver:"barnesHut",stabilization:{enabled:!0,iterations:1e3,updateInterval:50,onlyDynamicEdges:!1,fit:!0},timestep:.5,adaptiveTimestep:!0,wind:{x:0,y:0}},yA(this.options,this.defaultOptions),this.timestep=.5,this.layoutFailed=!1,this.bindEventListeners()}return Bh(g,[{key:"bindEventListeners",value:function(){var g=this;this.body.emitter.on("initPhysics",(function(){g.initPhysics()})),this.body.emitter.on("_layoutFailed",(function(){g.layoutFailed=!0})),this.body.emitter.on("resetPhysics",(function(){g.stopSimulation(),g.ready=!1})),this.body.emitter.on("disablePhysics",(function(){g.physicsEnabled=!1,g.stopSimulation()})),this.body.emitter.on("restorePhysics",(function(){g.setOptions(g.options),!0===g.ready&&g.startSimulation()})),this.body.emitter.on("startSimulation",(function(){!0===g.ready&&g.startSimulation()})),this.body.emitter.on("stopSimulation",(function(){g.stopSimulation()})),this.body.emitter.on("destroy",(function(){g.stopSimulation(!1),g.body.emitter.off()})),this.body.emitter.on("_dataChanged",(function(){g.updatePhysicsData()}))}},{key:"setOptions",value:function(g){if(void 0!==g)if(!1===g)this.options.enabled=!1,this.physicsEnabled=!1,this.stopSimulation();else if(!0===g)this.options.enabled=!0,this.physicsEnabled=!0,this.startSimulation();else{this.physicsEnabled=!0,Zm(["stabilization"],this.options,g),qm(this.options,g,"stabilization"),void 0===g.enabled&&(this.options.enabled=!0),!1===this.options.enabled&&(this.physicsEnabled=!1,this.stopSimulation());var t=this.options.wind;t&&(("number"!=typeof t.x||Rx(t.x))&&(t.x=0),("number"!=typeof t.y||Rx(t.y))&&(t.y=0)),this.timestep=this.options.timestep}this.init()}},{key:"init",value:function(){var g;"forceAtlas2Based"===this.options.solver?(g=this.options.forceAtlas2Based,this.nodesSolver=new Tz(this.body,this.physicsBody,g),this.edgesSolver=new xz(this.body,this.physicsBody,g),this.gravitySolver=new Nz(this.body,this.physicsBody,g)):"repulsion"===this.options.solver?(g=this.options.repulsion,this.nodesSolver=new bz(this.body,this.physicsBody,g),this.edgesSolver=new xz(this.body,this.physicsBody,g),this.gravitySolver=new Ez(this.body,this.physicsBody,g)):"hierarchicalRepulsion"===this.options.solver?(g=this.options.hierarchicalRepulsion,this.nodesSolver=new wz(this.body,this.physicsBody,g),this.edgesSolver=new kz(this.body,this.physicsBody,g),this.gravitySolver=new Ez(this.body,this.physicsBody,g)):(g=this.options.barnesHut,this.nodesSolver=new mz(this.body,this.physicsBody,g),this.edgesSolver=new xz(this.body,this.physicsBody,g),this.gravitySolver=new Ez(this.body,this.physicsBody,g)),this.modelOptions=g}},{key:"initPhysics",value:function(){!0===this.physicsEnabled&&!0===this.options.enabled?!0===this.options.stabilization.enabled?this.stabilize():(this.stabilized=!1,this.ready=!0,this.body.emitter.emit("fit",{},this.layoutFailed),this.startSimulation()):(this.ready=!0,this.body.emitter.emit("fit"))}},{key:"startSimulation",value:function(){var g;!0===this.physicsEnabled&&!0===this.options.enabled?(this.stabilized=!1,this.adaptiveTimestep=!1,this.body.emitter.emit("_resizeNodes"),void 0===this.viewFunction&&(this.viewFunction=QA(g=this.simulationStep).call(g,this),this.body.emitter.on("initRedraw",this.viewFunction),this.body.emitter.emit("_startRendering"))):this.body.emitter.emit("_redraw")}},{key:"stopSimulation",value:function(){var g=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.stabilized=!0,!0===g&&this._emitStabilized(),void 0!==this.viewFunction&&(this.body.emitter.off("initRedraw",this.viewFunction),this.viewFunction=void 0,!0===g&&this.body.emitter.emit("_stopRendering"))}},{key:"simulationStep",value:function(){var g=ac();this.physicsTick(),(ac()-g<.4*this.simulationInterval||!0===this.runDoubleSpeed)&&!1===this.stabilized&&(this.physicsTick(),this.runDoubleSpeed=!0),!0===this.stabilized&&this.stopSimulation()}},{key:"_emitStabilized",value:function(){var g=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.stabilizationIterations;(this.stabilizationIterations>1||!0===this.startedStabilization)&&_f((function(){g.body.emitter.emit("stabilized",{iterations:t}),g.startedStabilization=!1,g.stabilizationIterations=0}),0)}},{key:"physicsStep",value:function(){this.gravitySolver.solve(),this.nodesSolver.solve(),this.edgesSolver.solve(),this.moveNodes()}},{key:"adjustTimeStep",value:function(){!0===this._evaluateStepQuality()?this.timestep=1.2*this.timestep:this.timestep/1.2<this.options.timestep?this.timestep=this.options.timestep:(this.adaptiveCounter=-1,this.timestep=Math.max(this.options.timestep,this.timestep/1.2))}},{key:"physicsTick",value:function(){if(this._startStabilizing(),!0!==this.stabilized){if(!0===this.adaptiveTimestep&&!0===this.adaptiveTimestepEnabled)this.adaptiveCounter%this.adaptiveInterval==0?(this.timestep=2*this.timestep,this.physicsStep(),this.revert(),this.timestep=.5*this.timestep,this.physicsStep(),this.physicsStep(),this.adjustTimeStep()):this.physicsStep(),this.adaptiveCounter+=1;else this.timestep=this.options.timestep,this.physicsStep();!0===this.stabilized&&this.revert(),this.stabilizationIterations++}}},{key:"updatePhysicsData",value:function(){this.physicsBody.forces={},this.physicsBody.physicsNodeIndices=[],this.physicsBody.physicsEdgeIndices=[];var g=this.body.nodes,t=this.body.edges;for(var e in g)Object.prototype.hasOwnProperty.call(g,e)&&!0===g[e].options.physics&&this.physicsBody.physicsNodeIndices.push(g[e].id);for(var A in t)Object.prototype.hasOwnProperty.call(t,A)&&!0===t[A].options.physics&&this.physicsBody.physicsEdgeIndices.push(t[A].id);for(var C=0;C<this.physicsBody.physicsNodeIndices.length;C++){var I=this.physicsBody.physicsNodeIndices[C];this.physicsBody.forces[I]={x:0,y:0},void 0===this.physicsBody.velocities[I]&&(this.physicsBody.velocities[I]={x:0,y:0})}for(var i in this.physicsBody.velocities)void 0===g[i]&&delete this.physicsBody.velocities[i]}},{key:"revert",value:function(){var g=Cc(this.previousStates),t=this.body.nodes,e=this.physicsBody.velocities;this.referenceState={};for(var A=0;A<g.length;A++){var C=g[A];void 0!==t[C]?!0===t[C].options.physics&&(this.referenceState[C]={positions:{x:t[C].x,y:t[C].y}},e[C].x=this.previousStates[C].vx,e[C].y=this.previousStates[C].vy,t[C].x=this.previousStates[C].x,t[C].y=this.previousStates[C].y):delete this.previousStates[C]}}},{key:"_evaluateStepQuality",value:function(){var g,t,e=this.body.nodes,A=this.referenceState;for(var C in this.referenceState)if(Object.prototype.hasOwnProperty.call(this.referenceState,C)&&void 0!==e[C]&&(g=e[C].x-A[C].positions.x,t=e[C].y-A[C].positions.y,Math.sqrt(Math.pow(g,2)+Math.pow(t,2))>.3))return!1;return!0}},{key:"moveNodes",value:function(){for(var g=this.physicsBody.physicsNodeIndices,t=0,e=0,A=0;A<g.length;A++){var C=g[A],I=this._performStep(C);t=Math.max(t,I),e+=I}this.adaptiveTimestepEnabled=e/g.length<5,this.stabilized=t<this.options.minVelocity}},{key:"calculateComponentVelocity",value:function(g,t,e){g+=(t-this.modelOptions.damping*g)/e*this.timestep;var A=this.options.maxVelocity||1e9;return Math.abs(g)>A&&(g=g>0?A:-A),g}},{key:"_performStep",value:function(g){var t=this.body.nodes[g],e=this.physicsBody.forces[g];this.options.wind&&(e.x+=this.options.wind.x,e.y+=this.options.wind.y);var A=this.physicsBody.velocities[g];return this.previousStates[g]={x:t.x,y:t.y,vx:A.x,vy:A.y},!1===t.options.fixed.x?(A.x=this.calculateComponentVelocity(A.x,e.x,t.options.mass),t.x+=A.x*this.timestep):(e.x=0,A.x=0),!1===t.options.fixed.y?(A.y=this.calculateComponentVelocity(A.y,e.y,t.options.mass),t.y+=A.y*this.timestep):(e.y=0,A.y=0),Math.sqrt(Math.pow(A.x,2)+Math.pow(A.y,2))}},{key:"_freezeNodes",value:function(){var g=this.body.nodes;for(var t in g)if(Object.prototype.hasOwnProperty.call(g,t)&&g[t].x&&g[t].y){var e=g[t].options.fixed;this.freezeCache[t]={x:e.x,y:e.y},e.x=!0,e.y=!0}}},{key:"_restoreFrozenNodes",value:function(){var g=this.body.nodes;for(var t in g)Object.prototype.hasOwnProperty.call(g,t)&&void 0!==this.freezeCache[t]&&(g[t].options.fixed.x=this.freezeCache[t].x,g[t].options.fixed.y=this.freezeCache[t].y);this.freezeCache={}}},{key:"stabilize",value:function(){var g=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.options.stabilization.iterations;"number"!=typeof t&&(t=this.options.stabilization.iterations,console.error("The stabilize method needs a numeric amount of iterations. Switching to default: ",t)),0!==this.physicsBody.physicsNodeIndices.length?(this.adaptiveTimestep=this.options.adaptiveTimestep,this.body.emitter.emit("_resizeNodes"),this.stopSimulation(),this.stabilized=!1,this.body.emitter.emit("_blockRedraw"),this.targetIterations=t,!0===this.options.stabilization.onlyDynamicEdges&&this._freezeNodes(),this.stabilizationIterations=0,_f((function(){return g._stabilizationBatch()}),0)):this.ready=!0}},{key:"_startStabilizing",value:function(){return!0!==this.startedStabilization&&(this.body.emitter.emit("startStabilizing"),this.startedStabilization=!0,!0)}},{key:"_stabilizationBatch",value:function(){var g=this,t=function(){return!1===g.stabilized&&g.stabilizationIterations<g.targetIterations},e=function(){g.body.emitter.emit("stabilizationProgress",{iterations:g.stabilizationIterations,total:g.targetIterations})};this._startStabilizing()&&e();for(var A,C=0;t()&&C<this.options.stabilization.updateInterval;)this.physicsTick(),C++;(e(),t())?_f(QA(A=this._stabilizationBatch).call(A,this),0):this._finalizeStabilization()}},{key:"_finalizeStabilization",value:function(){this.body.emitter.emit("_allowRedraw"),!0===this.options.stabilization.fit&&this.body.emitter.emit("fit"),!0===this.options.stabilization.onlyDynamicEdges&&this._restoreFrozenNodes(),this.body.emitter.emit("stabilizationIterationsDone"),this.body.emitter.emit("_requestRedraw"),!0===this.stabilized?this._emitStabilized():this.startSimulation(),this.ready=!0}},{key:"_drawForces",value:function(g){for(var t=0;t<this.physicsBody.physicsNodeIndices.length;t++){var e=this.physicsBody.physicsNodeIndices[t],A=this.body.nodes[e],C=this.physicsBody.forces[e],I=Math.sqrt(Math.pow(C.x,2)+Math.pow(C.x,2)),i=Math.min(Math.max(5,I),15),o=3*i,n=Hm((180-180*Math.min(1,Math.max(0,.03*I)))/360,1,1),r={x:A.x+20*C.x,y:A.y+20*C.y};g.lineWidth=i,g.strokeStyle=n,g.beginPath(),g.moveTo(A.x,A.y),g.lineTo(r.x,r.y),g.stroke();var s=Math.atan2(C.y,C.x);g.fillStyle=n,tz.draw(g,{type:"arrow",point:r,angle:s,length:o}),ov(g).call(g)}}}]),g}(),Pz=function(){function g(){cd(this,g)}return Bh(g,null,[{key:"getRange",value:function(g){var t,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],A=1e9,C=-1e9,I=1e9,i=-1e9;if(e.length>0)for(var o=0;o<e.length;o++)I>(t=g[e[o]]).shape.boundingBox.left&&(I=t.shape.boundingBox.left),i<t.shape.boundingBox.right&&(i=t.shape.boundingBox.right),A>t.shape.boundingBox.top&&(A=t.shape.boundingBox.top),C<t.shape.boundingBox.bottom&&(C=t.shape.boundingBox.bottom);return 1e9===I&&-1e9===i&&1e9===A&&-1e9===C&&(A=0,C=0,I=0,i=0),{minX:I,maxX:i,minY:A,maxY:C}}},{key:"getRangeCore",value:function(g){var t,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],A=1e9,C=-1e9,I=1e9,i=-1e9;if(e.length>0)for(var o=0;o<e.length;o++)I>(t=g[e[o]]).x&&(I=t.x),i<t.x&&(i=t.x),A>t.y&&(A=t.y),C<t.y&&(C=t.y);return 1e9===I&&-1e9===i&&1e9===A&&-1e9===C&&(A=0,C=0,I=0,i=0),{minX:I,maxX:i,minY:A,maxY:C}}},{key:"findCenter",value:function(g){return{x:.5*(g.maxX+g.minX),y:.5*(g.maxY+g.minY)}}},{key:"cloneOptions",value:function(g,t){var e={};return void 0===t||"node"===t?(Fm(e,g.options,!0),e.x=g.x,e.y=g.y,e.amountOfConnections=g.edges.length):Fm(e,g.options,!0),e}}]),g}();function Mz(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var Bz=function(g){dk(e,g);var t=Mz(e);function e(g,A,C,I,i,o){var n;return cd(this,e),(n=t.call(this,g,A,C,I,i,o)).isCluster=!0,n.containedNodes={},n.containedEdges={},n}return Bh(e,[{key:"_openChildCluster",value:function(g){var t=this,e=this.body.nodes[g];if(void 0===this.containedNodes[g])throw new Error("node with id: "+g+" not in current cluster");if(!e.isCluster)throw new Error("node with id: "+g+" is not a cluster");delete this.containedNodes[g],Lm(e.edges,(function(g){delete t.containedEdges[g.id]})),Lm(e.containedNodes,(function(g,e){t.containedNodes[e]=g})),e.containedNodes={},Lm(e.containedEdges,(function(g,e){t.containedEdges[e]=g})),e.containedEdges={},Lm(e.edges,(function(g){Lm(t.edges,(function(e){var A,C,I=$p(A=e.clusteringEdgeReplacingIds).call(A,g.id);-1!==I&&(Lm(g.clusteringEdgeReplacingIds,(function(g){e.clusteringEdgeReplacingIds.push(g),t.body.edges[g].edgeReplacedById=e.id})),cu(C=e.clusteringEdgeReplacingIds).call(C,I,1))}))})),e.edges=[]}}]),e}(sB),zz=function(){function g(t){var e=this;cd(this,g),this.body=t,this.clusteredNodes={},this.clusteredEdges={},this.options={},this.defaultOptions={},yA(this.options,this.defaultOptions),this.body.emitter.on("_resetData",(function(){e.clusteredNodes={},e.clusteredEdges={}}))}return Bh(g,[{key:"clusterByHubsize",value:function(g,t){void 0===g?g=this._getHubSize():"object"===kh(g)&&(t=this._checkOptions(g),g=this._getHubSize());for(var e=[],A=0;A<this.body.nodeIndices.length;A++){var C=this.body.nodes[this.body.nodeIndices[A]];C.edges.length>=g&&e.push(C.id)}for(var I=0;I<e.length;I++)this.clusterByConnection(e[I],t,!0);this.body.emitter.emit("_dataChanged")}},{key:"cluster",value:function(){var g=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(void 0===t.joinCondition)throw new Error("Cannot call clusterByNodeData without a joinCondition function in the options.");t=this._checkOptions(t);var A={},C={};Lm(this.body.nodes,(function(e,I){e.options&&!0===t.joinCondition(e.options)&&(A[I]=e,Lm(e.edges,(function(t){void 0===g.clusteredEdges[t.id]&&(C[t.id]=t)})))})),this._cluster(A,C,t,e)}},{key:"clusterByEdgeCount",value:function(g,t){var e=this,A=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];t=this._checkOptions(t);for(var C,I,i,o=[],n={},r=function(){var A={},r={},a=e.body.nodeIndices[s],d=e.body.nodes[a];if(void 0===n[a]){i=0,I=[];for(var h=0;h<d.edges.length;h++)C=d.edges[h],void 0===e.clusteredEdges[C.id]&&(C.toId!==C.fromId&&i++,I.push(C));if(i===g){for(var l=function(g){if(void 0===t.joinCondition||null===t.joinCondition)return!0;var e=Pz.cloneOptions(g);return t.joinCondition(e)},c=!0,u=0;u<I.length;u++){C=I[u];var p=e._getConnectedId(C,a);if(!l(d)){c=!1;break}r[C.id]=C,A[a]=d,A[p]=e.body.nodes[p],n[a]=!0}if(Cc(A).length>0&&Cc(r).length>0&&!0===c){var f=function(){for(var g=0;g<o.length;++g)for(var t in A)if(void 0!==o[g].nodes[t])return o[g]}();if(void 0!==f){for(var v in A)void 0===f.nodes[v]&&(f.nodes[v]=A[v]);for(var y in r)void 0===f.edges[y]&&(f.edges[y]=r[y])}else o.push({nodes:A,edges:r})}}}},s=0;s<this.body.nodeIndices.length;s++)r();for(var a=0;a<o.length;a++)this._cluster(o[a].nodes,o[a].edges,t,!1);!0===A&&this.body.emitter.emit("_dataChanged")}},{key:"clusterOutliers",value:function(g){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];this.clusterByEdgeCount(1,g,t)}},{key:"clusterBridges",value:function(g){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];this.clusterByEdgeCount(2,g,t)}},{key:"clusterByConnection",value:function(g,t){var e,A=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(void 0===g)throw new Error("No nodeId supplied to clusterByConnection!");if(void 0===this.body.nodes[g])throw new Error("The nodeId given to clusterByConnection does not exist!");var C=this.body.nodes[g];void 0===(t=this._checkOptions(t,C)).clusterNodeProperties.x&&(t.clusterNodeProperties.x=C.x),void 0===t.clusterNodeProperties.y&&(t.clusterNodeProperties.y=C.y),void 0===t.clusterNodeProperties.fixed&&(t.clusterNodeProperties.fixed={},t.clusterNodeProperties.fixed.x=C.options.fixed.x,t.clusterNodeProperties.fixed.y=C.options.fixed.y);var I={},i={},o=C.id,n=Pz.cloneOptions(C);I[o]=C;for(var r=0;r<C.edges.length;r++){var s=C.edges[r];if(void 0===this.clusteredEdges[s.id]){var a=this._getConnectedId(s,o);if(void 0===this.clusteredNodes[a])if(a!==o)if(void 0===t.joinCondition)i[s.id]=s,I[a]=this.body.nodes[a];else{var d=Pz.cloneOptions(this.body.nodes[a]);!0===t.joinCondition(n,d)&&(i[s.id]=s,I[a]=this.body.nodes[a])}else i[s.id]=s}}var h=ql(e=Cc(I)).call(e,(function(g){return I[g].id}));for(var l in I)if(Object.prototype.hasOwnProperty.call(I,l))for(var c=I[l],u=0;u<c.edges.length;u++){var p=c.edges[u];$p(h).call(h,this._getConnectedId(p,c.id))>-1&&(i[p.id]=p)}this._cluster(I,i,t,A)}},{key:"_createClusterEdges",value:function(g,t,e,A){for(var C,I,i,o,n,r,s=Cc(g),a=[],d=0;d<s.length;d++){i=g[I=s[d]];for(var h=0;h<i.edges.length;h++)C=i.edges[h],void 0===this.clusteredEdges[C.id]&&(C.toId==C.fromId?t[C.id]=C:C.toId==I?(o=e.id,r=n=C.fromId):(o=C.toId,n=e.id,r=o),void 0===g[r]&&a.push({edge:C,fromId:n,toId:o}))}for(var l=[],c=function(g){for(var t=0;t<l.length;t++){var e=l[t],A=g.fromId===e.fromId&&g.toId===e.toId,C=g.fromId===e.toId&&g.toId===e.fromId;if(A||C)return e}return null},u=0;u<a.length;u++){var p=a[u],f=p.edge,v=c(p);null===v?(v=this._createClusteredEdge(p.fromId,p.toId,f,A),l.push(v)):v.clusteringEdgeReplacingIds.push(f.id),this.body.edges[f.id].edgeReplacedById=v.id,this._backupEdgeOptions(f),f.setOptions({physics:!1})}}},{key:"_checkOptions",value:function(){var g=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return void 0===g.clusterEdgeProperties&&(g.clusterEdgeProperties={}),void 0===g.clusterNodeProperties&&(g.clusterNodeProperties={}),g}},{key:"_cluster",value:function(g,t,e){var A=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],C=[];for(var I in g)Object.prototype.hasOwnProperty.call(g,I)&&void 0!==this.clusteredNodes[I]&&C.push(I);for(var i=0;i<C.length;++i)delete g[C[i]];if(0!=Cc(g).length&&(1!=Cc(g).length||1==e.clusterNodeProperties.allowSingleNodeCluster)){var o=Fm({},e.clusterNodeProperties);if(void 0!==e.processProperties){var n=[];for(var r in g)if(Object.prototype.hasOwnProperty.call(g,r)){var s=Pz.cloneOptions(g[r]);n.push(s)}var a=[];for(var d in t)if(Object.prototype.hasOwnProperty.call(t,d)&&"clusterEdge:"!==d.substr(0,12)){var h=Pz.cloneOptions(t[d],"edge");a.push(h)}if(!(o=e.processProperties(o,n,a)))throw new Error("The processProperties function does not return properties!")}void 0===o.id&&(o.id="cluster:"+OP());var l=o.id;void 0===o.label&&(o.label="cluster");var c=void 0;void 0===o.x&&(c=this._getClusterPosition(g),o.x=c.x),void 0===o.y&&(void 0===c&&(c=this._getClusterPosition(g)),o.y=c.y),o.id=l;var u=this.body.functions.createNode(o,Bz);u.containedNodes=g,u.containedEdges=t,u.clusterEdgeProperties=e.clusterEdgeProperties,this.body.nodes[o.id]=u,this._clusterEdges(g,t,o,e.clusterEdgeProperties),o.id=void 0,!0===A&&this.body.emitter.emit("_dataChanged")}}},{key:"_backupEdgeOptions",value:function(g){void 0===this.clusteredEdges[g.id]&&(this.clusteredEdges[g.id]={physics:g.options.physics})}},{key:"_restoreEdge",value:function(g){var t=this.clusteredEdges[g.id];void 0!==t&&(g.setOptions({physics:t.physics}),delete this.clusteredEdges[g.id])}},{key:"isCluster",value:function(g){return void 0!==this.body.nodes[g]?!0===this.body.nodes[g].isCluster:(console.error("Node does not exist."),!1)}},{key:"_getClusterPosition",value:function(g){for(var t,e=Cc(g),A=g[e[0]].x,C=g[e[0]].x,I=g[e[0]].y,i=g[e[0]].y,o=1;o<e.length;o++)A=(t=g[e[o]]).x<A?t.x:A,C=t.x>C?t.x:C,I=t.y<I?t.y:I,i=t.y>i?t.y:i;return{x:.5*(A+C),y:.5*(I+i)}}},{key:"openCluster",value:function(g,t){var e=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(void 0===g)throw new Error("No clusterNodeId supplied to openCluster.");var A=this.body.nodes[g];if(void 0===A)throw new Error("The clusterNodeId supplied to openCluster does not exist.");if(!0!==A.isCluster||void 0===A.containedNodes||void 0===A.containedEdges)throw new Error("The node:"+g+" is not a valid cluster.");var C=this.findNode(g),I=$p(C).call(C,g)-1;if(I>=0){var i=C[I];return this.body.nodes[i]._openChildCluster(g),delete this.body.nodes[g],void(!0===e&&this.body.emitter.emit("_dataChanged"))}var o=A.containedNodes,n=A.containedEdges;if(void 0!==t&&void 0!==t.releaseFunction&&"function"==typeof t.releaseFunction){var r={},s={x:A.x,y:A.y};for(var a in o)if(Object.prototype.hasOwnProperty.call(o,a)){var d=this.body.nodes[a];r[a]={x:d.x,y:d.y}}var h=t.releaseFunction(s,r);for(var l in o)if(Object.prototype.hasOwnProperty.call(o,l)){var c=this.body.nodes[l];void 0!==h[l]&&(c.x=void 0===h[l].x?A.x:h[l].x,c.y=void 0===h[l].y?A.y:h[l].y)}}else Lm(o,(function(g){!1===g.options.fixed.x&&(g.x=A.x),!1===g.options.fixed.y&&(g.y=A.y)}));for(var u in o)if(Object.prototype.hasOwnProperty.call(o,u)){var p=this.body.nodes[u];p.vx=A.vx,p.vy=A.vy,p.setOptions({physics:!0}),delete this.clusteredNodes[u]}for(var f=[],v=0;v<A.edges.length;v++)f.push(A.edges[v]);for(var y=0;y<f.length;y++){for(var m=f[y],b=this._getConnectedId(m,g),w=this.clusteredNodes[b],x=0;x<m.clusteringEdgeReplacingIds.length;x++){var k=m.clusteringEdgeReplacingIds[x],E=this.body.edges[k];if(void 0!==E)if(void 0!==w){var O=this.body.nodes[w.clusterId];O.containedEdges[E.id]=E,delete n[E.id];var T=E.fromId,D=E.toId;E.toId==b?D=w.clusterId:T=w.clusterId,this._createClusteredEdge(T,D,E,O.clusterEdgeProperties,{hidden:!1,physics:!0})}else this._restoreEdge(E)}m.remove()}for(var N in n)Object.prototype.hasOwnProperty.call(n,N)&&this._restoreEdge(n[N]);delete this.body.nodes[g],!0===e&&this.body.emitter.emit("_dataChanged")}},{key:"getNodesInCluster",value:function(g){var t=[];if(!0===this.isCluster(g)){var e=this.body.nodes[g].containedNodes;for(var A in e)Object.prototype.hasOwnProperty.call(e,A)&&t.push(this.body.nodes[A].id)}return t}},{key:"findNode",value:function(g){for(var t,e=[],A=0;void 0!==this.clusteredNodes[g]&&A<100;){if(void 0===(t=this.body.nodes[g]))return[];e.push(t.id),g=this.clusteredNodes[g].clusterId,A++}return void 0===(t=this.body.nodes[g])?[]:(e.push(t.id),Gc(e).call(e),e)}},{key:"updateClusteredNode",value:function(g,t){if(void 0===g)throw new Error("No clusteredNodeId supplied to updateClusteredNode.");if(void 0===t)throw new Error("No newOptions supplied to updateClusteredNode.");if(void 0===this.body.nodes[g])throw new Error("The clusteredNodeId supplied to updateClusteredNode does not exist.");this.body.nodes[g].setOptions(t),this.body.emitter.emit("_dataChanged")}},{key:"updateEdge",value:function(g,t){if(void 0===g)throw new Error("No startEdgeId supplied to updateEdge.");if(void 0===t)throw new Error("No newOptions supplied to updateEdge.");if(void 0===this.body.edges[g])throw new Error("The startEdgeId supplied to updateEdge does not exist.");for(var e=this.getClusteredEdges(g),A=0;A<e.length;A++){this.body.edges[e[A]].setOptions(t)}this.body.emitter.emit("_dataChanged")}},{key:"getClusteredEdges",value:function(g){for(var t=[],e=0;void 0!==g&&void 0!==this.body.edges[g]&&e<100;)t.push(this.body.edges[g].id),g=this.body.edges[g].edgeReplacedById,e++;return Gc(t).call(t),t}},{key:"getBaseEdge",value:function(g){return this.getBaseEdges(g)[0]}},{key:"getBaseEdges",value:function(g){for(var t=[g],e=[],A=[],C=0;t.length>0&&C<100;){var I=t.pop();if(void 0!==I){var i=this.body.edges[I];if(void 0!==i){C++;var o=i.clusteringEdgeReplacingIds;if(void 0===o)A.push(I);else for(var n=0;n<o.length;++n){var r=o[n];-1===$p(t).call(t,o)&&-1===$p(e).call(e,o)&&t.push(r)}e.push(I)}}}return A}},{key:"_getConnectedId",value:function(g,t){return g.toId!=t?g.toId:(g.fromId,g.fromId)}},{key:"_getHubSize",value:function(){for(var g=0,t=0,e=0,A=0,C=0;C<this.body.nodeIndices.length;C++){var I=this.body.nodes[this.body.nodeIndices[C]];I.edges.length>A&&(A=I.edges.length),g+=I.edges.length,t+=Math.pow(I.edges.length,2),e+=1}g/=e;var i=(t/=e)-Math.pow(g,2),o=Math.sqrt(i),n=Math.floor(g+2*o);return n>A&&(n=A),n}},{key:"_createClusteredEdge",value:function(g,t,e,A,C){var I=Pz.cloneOptions(e,"edge");Fm(I,A),I.from=g,I.to=t,I.id="clusterEdge:"+OP(),void 0!==C&&Fm(I,C);var i=this.body.functions.createEdge(I);return i.clusteringEdgeReplacingIds=[e.id],i.connect(),this.body.edges[i.id]=i,i}},{key:"_clusterEdges",value:function(g,t,e,A){if(t instanceof vz){var C=t,I={};I[C.id]=C,t=I}if(g instanceof sB){var i=g,o={};o[i.id]=i,g=o}if(null==e)throw new Error("_clusterEdges: parameter clusterNode required");for(var n in void 0===A&&(A=e.clusterEdgeProperties),this._createClusterEdges(g,t,e,A),t)if(Object.prototype.hasOwnProperty.call(t,n)&&void 0!==this.body.edges[n]){var r=this.body.edges[n];this._backupEdgeOptions(r),r.setOptions({physics:!1})}for(var s in g)Object.prototype.hasOwnProperty.call(g,s)&&(this.clusteredNodes[s]={clusterId:e.id,node:this.body.nodes[s]},this.body.nodes[s].setOptions({physics:!1}))}},{key:"_getClusterNodeForNode",value:function(g){if(void 0!==g){var t=this.clusteredNodes[g];if(void 0!==t){var e=t.clusterId;if(void 0!==e)return this.body.nodes[e]}}}},{key:"_filter",value:function(g,t){var e=[];return Lm(g,(function(g){t(g)&&e.push(g)})),e}},{key:"_updateState",value:function(){var g,t=this,e=[],A={},C=function(g){Lm(t.body.nodes,(function(t){!0===t.isCluster&&g(t)}))};for(g in this.clusteredNodes){if(Object.prototype.hasOwnProperty.call(this.clusteredNodes,g))void 0===this.body.nodes[g]&&e.push(g)}C((function(g){for(var t=0;t<e.length;t++)delete g.containedNodes[e[t]]}));for(var I=0;I<e.length;I++)delete this.clusteredNodes[e[I]];Lm(this.clusteredEdges,(function(g){var e=t.body.edges[g];void 0!==e&&e.endPointsValid()||(A[g]=g)})),C((function(g){Lm(g.containedEdges,(function(g,t){g.endPointsValid()||A[t]||(A[t]=t)}))})),Lm(this.body.edges,(function(g,e){var C=!0,I=g.clusteringEdgeReplacingIds;if(void 0!==I){var i=0;Lm(I,(function(g){var e=t.body.edges[g];void 0!==e&&e.endPointsValid()&&(i+=1)})),C=i>0}g.endPointsValid()&&C||(A[e]=e)})),C((function(g){Lm(A,(function(e){delete g.containedEdges[e],Lm(g.edges,(function(C,I){C.id!==e?C.clusteringEdgeReplacingIds=t._filter(C.clusteringEdgeReplacingIds,(function(g){return!A[g]})):g.edges[I]=null})),g.edges=t._filter(g.edges,(function(g){return null!==g}))}))})),Lm(A,(function(g){delete t.clusteredEdges[g]})),Lm(A,(function(g){delete t.body.edges[g]})),Lm(Cc(this.body.edges),(function(g){var e=t.body.edges[g],A=t._isClusteredNode(e.fromId)||t._isClusteredNode(e.toId);if(A!==t._isClusteredEdge(e.id))if(A){var C=t._getClusterNodeForNode(e.fromId);void 0!==C&&t._clusterEdges(t.body.nodes[e.fromId],e,C);var I=t._getClusterNodeForNode(e.toId);void 0!==I&&t._clusterEdges(t.body.nodes[e.toId],e,I)}else delete t._clusterEdges[g],t._restoreEdge(e)}));for(var i=!1,o=!0,n=function(){var g=[];C((function(t){var e=Cc(t.containedNodes).length,A=!0===t.options.allowSingleNodeCluster;(A&&e<1||!A&&e<2)&&g.push(t.id)}));for(var e=0;e<g.length;++e)t.openCluster(g[e],{},!1);o=g.length>0,i=i||o};o;)n();i&&this._updateState()}},{key:"_isClusteredNode",value:function(g){return void 0!==this.clusteredNodes[g]}},{key:"_isClusteredEdge",value:function(g){return void 0!==this.clusteredEdges[g]}}]),g}();var Sz=function(){function g(t,e){var A;cd(this,g),void 0!==window&&(A=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame),window.requestAnimationFrame=void 0===A?function(g){g()}:A,this.body=t,this.canvas=e,this.redrawRequested=!1,this.renderTimer=void 0,this.requiresTimeout=!0,this.renderingActive=!1,this.renderRequests=0,this.allowRedraw=!0,this.dragging=!1,this.zooming=!1,this.options={},this.defaultOptions={hideEdgesOnDrag:!1,hideEdgesOnZoom:!1,hideNodesOnDrag:!1},yA(this.options,this.defaultOptions),this._determineBrowserMethod(),this.bindEventListeners()}return Bh(g,[{key:"bindEventListeners",value:function(){var g,t=this;this.body.emitter.on("dragStart",(function(){t.dragging=!0})),this.body.emitter.on("dragEnd",(function(){t.dragging=!1})),this.body.emitter.on("zoom",(function(){t.zooming=!0,window.clearTimeout(t.zoomTimeoutId),t.zoomTimeoutId=_f((function(){var g;t.zooming=!1,QA(g=t._requestRedraw).call(g,t)()}),250)})),this.body.emitter.on("_resizeNodes",(function(){t._resizeNodes()})),this.body.emitter.on("_redraw",(function(){!1===t.renderingActive&&t._redraw()})),this.body.emitter.on("_blockRedraw",(function(){t.allowRedraw=!1})),this.body.emitter.on("_allowRedraw",(function(){t.allowRedraw=!0,t.redrawRequested=!1})),this.body.emitter.on("_requestRedraw",QA(g=this._requestRedraw).call(g,this)),this.body.emitter.on("_startRendering",(function(){t.renderRequests+=1,t.renderingActive=!0,t._startRendering()})),this.body.emitter.on("_stopRendering",(function(){t.renderRequests-=1,t.renderingActive=t.renderRequests>0,t.renderTimer=void 0})),this.body.emitter.on("destroy",(function(){t.renderRequests=0,t.allowRedraw=!1,t.renderingActive=!1,!0===t.requiresTimeout?clearTimeout(t.renderTimer):window.cancelAnimationFrame(t.renderTimer),t.body.emitter.off()}))}},{key:"setOptions",value:function(g){if(void 0!==g){Sm(["hideEdgesOnDrag","hideEdgesOnZoom","hideNodesOnDrag"],this.options,g)}}},{key:"_requestNextFrame",value:function(g,t){if("undefined"!=typeof window){var e,A=window;return!0===this.requiresTimeout?e=_f(g,t):A.requestAnimationFrame&&(e=A.requestAnimationFrame(g)),e}}},{key:"_startRendering",value:function(){var g;!0===this.renderingActive&&(void 0===this.renderTimer&&(this.renderTimer=this._requestNextFrame(QA(g=this._renderStep).call(g,this),this.simulationInterval)))}},{key:"_renderStep",value:function(){!0===this.renderingActive&&(this.renderTimer=void 0,!0===this.requiresTimeout&&this._startRendering(),this._redraw(),!1===this.requiresTimeout&&this._startRendering())}},{key:"redraw",value:function(){this.body.emitter.emit("setSize"),this._redraw()}},{key:"_requestRedraw",value:function(){var g=this;!0!==this.redrawRequested&&!1===this.renderingActive&&!0===this.allowRedraw&&(this.redrawRequested=!0,this._requestNextFrame((function(){g._redraw(!1)}),0))}},{key:"_redraw",value:function(){var g=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!0===this.allowRedraw){this.body.emitter.emit("initRedraw"),this.redrawRequested=!1;var t={drawExternalLabels:null};0!==this.canvas.frame.canvas.width&&0!==this.canvas.frame.canvas.height||this.canvas.setSize(),this.canvas.setTransform();var e=this.canvas.getContext(),A=this.canvas.frame.canvas.clientWidth,C=this.canvas.frame.canvas.clientHeight;if(e.clearRect(0,0,A,C),0===this.canvas.frame.clientWidth)return;if(e.save(),e.translate(this.body.view.translation.x,this.body.view.translation.y),e.scale(this.body.view.scale,this.body.view.scale),e.beginPath(),this.body.emitter.emit("beforeDrawing",e),e.closePath(),!1===g&&(!1===this.dragging||!0===this.dragging&&!1===this.options.hideEdgesOnDrag)&&(!1===this.zooming||!0===this.zooming&&!1===this.options.hideEdgesOnZoom)&&this._drawEdges(e),!1===this.dragging||!0===this.dragging&&!1===this.options.hideNodesOnDrag){var I=this._drawNodes(e,g).drawExternalLabels;t.drawExternalLabels=I}!1===g&&(!1===this.dragging||!0===this.dragging&&!1===this.options.hideEdgesOnDrag)&&(!1===this.zooming||!0===this.zooming&&!1===this.options.hideEdgesOnZoom)&&this._drawArrows(e),null!=t.drawExternalLabels&&t.drawExternalLabels(),!1===g&&this._drawSelectionBox(e),e.beginPath(),this.body.emitter.emit("afterDrawing",e),e.closePath(),e.restore(),!0===g&&e.clearRect(0,0,A,C)}}},{key:"_resizeNodes",value:function(){this.canvas.setTransform();var g=this.canvas.getContext();g.save(),g.translate(this.body.view.translation.x,this.body.view.translation.y),g.scale(this.body.view.scale,this.body.view.scale);var t,e=this.body.nodes;for(var A in e)Object.prototype.hasOwnProperty.call(e,A)&&((t=e[A]).resize(g),t.updateBoundingBox(g,t.selected));g.restore()}},{key:"_drawNodes",value:function(g){for(var t,e,A=arguments.length>1&&void 0!==arguments[1]&&arguments[1],C=this.body.nodes,I=this.body.nodeIndices,i=[],o=[],n=this.canvas.DOMtoCanvas({x:-20,y:-20}),r=this.canvas.DOMtoCanvas({x:this.canvas.frame.canvas.clientWidth+20,y:this.canvas.frame.canvas.clientHeight+20}),s={top:n.y,left:n.x,bottom:r.y,right:r.x},a=[],d=0;d<I.length;d++)if((t=C[I[d]]).hover)o.push(I[d]);else if(t.isSelected())i.push(I[d]);else if(!0===A){var h=t.draw(g);null!=h.drawExternalLabel&&a.push(h.drawExternalLabel)}else if(!0===t.isBoundingBoxOverlappingWith(s)){var l=t.draw(g);null!=l.drawExternalLabel&&a.push(l.drawExternalLabel)}else t.updateBoundingBox(g,t.selected);var c=i.length,u=o.length;for(e=0;e<c;e++){var p=(t=C[i[e]]).draw(g);null!=p.drawExternalLabel&&a.push(p.drawExternalLabel)}for(e=0;e<u;e++){var f=(t=C[o[e]]).draw(g);null!=f.drawExternalLabel&&a.push(f.drawExternalLabel)}return{drawExternalLabels:function(){for(var g=0,t=a;g<t.length;g++){(0,t[g])()}}}}},{key:"_drawEdges",value:function(g){for(var t=this.body.edges,e=this.body.edgeIndices,A=0;A<e.length;A++){var C=t[e[A]];!0===C.connected&&C.draw(g)}}},{key:"_drawArrows",value:function(g){for(var t=this.body.edges,e=this.body.edgeIndices,A=0;A<e.length;A++){var C=t[e[A]];!0===C.connected&&C.drawArrows(g)}}},{key:"_determineBrowserMethod",value:function(){if("undefined"!=typeof window){var g=navigator.userAgent.toLowerCase();this.requiresTimeout=!1,(-1!=$p(g).call(g,"msie 9.0")||-1!=$p(g).call(g,"safari")&&$p(g).call(g,"chrome")<=-1)&&(this.requiresTimeout=!0)}else this.requiresTimeout=!0}},{key:"_drawSelectionBox",value:function(g){if(this.body.selectionBox.show){g.beginPath();var t=this.body.selectionBox.position.end.x-this.body.selectionBox.position.start.x,e=this.body.selectionBox.position.end.y-this.body.selectionBox.position.start.y;g.rect(this.body.selectionBox.position.start.x,this.body.selectionBox.position.start.y,t,e),g.fillStyle="rgba(151, 194, 252, 0.2)",g.fillRect(this.body.selectionBox.position.start.x,this.body.selectionBox.position.start.y,t,e),g.strokeStyle="rgba(151, 194, 252, 1)",g.stroke()}else g.closePath()}}]),g}(),Zz={},Fz=Ag.setInterval;!function(g){g.exports=Fz}({get exports(){return Zz},set exports(g){Zz=g}});var Gz=e(Zz);function jz(g,t){t.inputHandler=function(g){g.isFirst&&t(g)},g.on("hammer.input",t.inputHandler)}function Lz(g,t){return t.inputHandler=function(g){g.isFinal&&t(g)},g.on("hammer.input",t.inputHandler)}var Vz=function(){function g(t){cd(this,g),this.body=t,this.pixelRatio=1,this.cameraState={},this.initialized=!1,this.canvasViewCenter={},this._cleanupCallbacks=[],this.options={},this.defaultOptions={autoResize:!0,height:"100%",width:"100%"},yA(this.options,this.defaultOptions),this.bindEventListeners()}return Bh(g,[{key:"bindEventListeners",value:function(){var g,t=this;this.body.emitter.once("resize",(function(g){0!==g.width&&(t.body.view.translation.x=.5*g.width),0!==g.height&&(t.body.view.translation.y=.5*g.height)})),this.body.emitter.on("setSize",QA(g=this.setSize).call(g,this)),this.body.emitter.on("destroy",(function(){t.hammerFrame.destroy(),t.hammer.destroy(),t._cleanUp()}))}},{key:"setOptions",value:function(g){var t,e,A,C,I,i=this;if(void 0!==g){Sm(["width","height","autoResize"],this.options,g)}if(this._cleanUp(),!0===this.options.autoResize){var o;if(window.ResizeObserver){var n=new ResizeObserver((function(){!0===i.setSize()&&i.body.emitter.emit("_requestRedraw")})),r=this.frame;n.observe(r),this._cleanupCallbacks.push((function(){n.unobserve(r)}))}else{var s=Gz((function(){!0===i.setSize()&&i.body.emitter.emit("_requestRedraw")}),1e3);this._cleanupCallbacks.push((function(){clearInterval(s)}))}var a=QA(o=this._onResize).call(o,this);t=window,e="resize",A=a,t.addEventListener?(void 0===C&&(C=!1),"mousewheel"===e&&ju(I=navigator.userAgent).call(I,"Firefox")&&(e="DOMMouseScroll"),t.addEventListener(e,A,C)):t.attachEvent("on"+e,A),this._cleanupCallbacks.push((function(){!function(g,t,e,A){var C;g.removeEventListener?(void 0===A&&(A=!1),"mousewheel"===t&&ju(C=navigator.userAgent).call(C,"Firefox")&&(t="DOMMouseScroll"),g.removeEventListener(t,e,A)):g.detachEvent("on"+t,e)}(window,"resize",a)}))}}},{key:"_cleanUp",value:function(){var g,t,e;Ec(g=Gc(t=cu(e=this._cleanupCallbacks).call(e,0)).call(t)).call(g,(function(g){try{g()}catch(g){console.error(g)}}))}},{key:"_onResize",value:function(){this.setSize(),this.body.emitter.emit("_redraw")}},{key:"_getCameraState",value:function(){var g=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.pixelRatio;!0===this.initialized&&(this.cameraState.previousWidth=this.frame.canvas.width/g,this.cameraState.previousHeight=this.frame.canvas.height/g,this.cameraState.scale=this.body.view.scale,this.cameraState.position=this.DOMtoCanvas({x:.5*this.frame.canvas.width/g,y:.5*this.frame.canvas.height/g}))}},{key:"_setCameraState",value:function(){if(void 0!==this.cameraState.scale&&0!==this.frame.canvas.clientWidth&&0!==this.frame.canvas.clientHeight&&0!==this.pixelRatio&&this.cameraState.previousWidth>0&&this.cameraState.previousHeight>0){var g=this.frame.canvas.width/this.pixelRatio/this.cameraState.previousWidth,t=this.frame.canvas.height/this.pixelRatio/this.cameraState.previousHeight,e=this.cameraState.scale;1!=g&&1!=t?e=.5*this.cameraState.scale*(g+t):1!=g?e=this.cameraState.scale*g:1!=t&&(e=this.cameraState.scale*t),this.body.view.scale=e;var A=this.DOMtoCanvas({x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight}),C={x:A.x-this.cameraState.position.x,y:A.y-this.cameraState.position.y};this.body.view.translation.x+=C.x*this.body.view.scale,this.body.view.translation.y+=C.y*this.body.view.scale}}},{key:"_prepareValue",value:function(g){if("number"==typeof g)return g+"px";if("string"==typeof g){if(-1!==$p(g).call(g,"%")||-1!==$p(g).call(g,"px"))return g;if(-1===$p(g).call(g,"%"))return g+"px"}throw new Error("Could not use the value supplied for width or height:"+g)}},{key:"_create",value:function(){for(;this.body.container.hasChildNodes();)this.body.container.removeChild(this.body.container.firstChild);if(this.frame=document.createElement("div"),this.frame.className="vis-network",this.frame.style.position="relative",this.frame.style.overflow="hidden",this.frame.tabIndex=0,this.frame.canvas=document.createElement("canvas"),this.frame.canvas.style.position="relative",this.frame.appendChild(this.frame.canvas),this.frame.canvas.getContext)this._setPixelRatio(),this.setTransform();else{var g=document.createElement("DIV");g.style.color="red",g.style.fontWeight="bold",g.style.padding="10px",g.innerText="Error: your browser does not support HTML canvas",this.frame.canvas.appendChild(g)}this.body.container.appendChild(this.frame),this.body.view.scale=1,this.body.view.translation={x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight},this._bindHammer()}},{key:"_bindHammer",value:function(){var g=this;void 0!==this.hammer&&this.hammer.destroy(),this.drag={},this.pinch={},this.hammer=new db(this.frame.canvas),this.hammer.get("pinch").set({enable:!0}),this.hammer.get("pan").set({threshold:5,direction:db.DIRECTION_ALL}),jz(this.hammer,(function(t){g.body.eventListeners.onTouch(t)})),this.hammer.on("tap",(function(t){g.body.eventListeners.onTap(t)})),this.hammer.on("doubletap",(function(t){g.body.eventListeners.onDoubleTap(t)})),this.hammer.on("press",(function(t){g.body.eventListeners.onHold(t)})),this.hammer.on("panstart",(function(t){g.body.eventListeners.onDragStart(t)})),this.hammer.on("panmove",(function(t){g.body.eventListeners.onDrag(t)})),this.hammer.on("panend",(function(t){g.body.eventListeners.onDragEnd(t)})),this.hammer.on("pinch",(function(t){g.body.eventListeners.onPinch(t)})),this.frame.canvas.addEventListener("wheel",(function(t){g.body.eventListeners.onMouseWheel(t)})),this.frame.canvas.addEventListener("mousemove",(function(t){g.body.eventListeners.onMouseMove(t)})),this.frame.canvas.addEventListener("contextmenu",(function(t){g.body.eventListeners.onContext(t)})),this.hammerFrame=new db(this.frame),Lz(this.hammerFrame,(function(t){g.body.eventListeners.onRelease(t)}))}},{key:"setSize",value:function(){var g=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.options.width,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.options.height;g=this._prepareValue(g),t=this._prepareValue(t);var e=!1,A=this.frame.canvas.width,C=this.frame.canvas.height,I=this.pixelRatio;if(this._setPixelRatio(),g!=this.options.width||t!=this.options.height||this.frame.style.width!=g||this.frame.style.height!=t)this._getCameraState(I),this.frame.style.width=g,this.frame.style.height=t,this.frame.canvas.style.width="100%",this.frame.canvas.style.height="100%",this.frame.canvas.width=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),this.frame.canvas.height=Math.round(this.frame.canvas.clientHeight*this.pixelRatio),this.options.width=g,this.options.height=t,this.canvasViewCenter={x:.5*this.frame.clientWidth,y:.5*this.frame.clientHeight},e=!0;else{var i=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),o=Math.round(this.frame.canvas.clientHeight*this.pixelRatio);this.frame.canvas.width===i&&this.frame.canvas.height===o||this._getCameraState(I),this.frame.canvas.width!==i&&(this.frame.canvas.width=i,e=!0),this.frame.canvas.height!==o&&(this.frame.canvas.height=o,e=!0)}return!0===e&&(this.body.emitter.emit("resize",{width:Math.round(this.frame.canvas.width/this.pixelRatio),height:Math.round(this.frame.canvas.height/this.pixelRatio),oldWidth:Math.round(A/this.pixelRatio),oldHeight:Math.round(C/this.pixelRatio)}),this._setCameraState()),this.initialized=!0,e}},{key:"getContext",value:function(){return this.frame.canvas.getContext("2d")}},{key:"_determinePixelRatio",value:function(){var g=this.getContext();if(void 0===g)throw new Error("Could not get canvax context");var t=1;return"undefined"!=typeof window&&(t=window.devicePixelRatio||1),t/(g.webkitBackingStorePixelRatio||g.mozBackingStorePixelRatio||g.msBackingStorePixelRatio||g.oBackingStorePixelRatio||g.backingStorePixelRatio||1)}},{key:"_setPixelRatio",value:function(){this.pixelRatio=this._determinePixelRatio()}},{key:"setTransform",value:function(){var g=this.getContext();if(void 0===g)throw new Error("Could not get canvax context");g.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}},{key:"_XconvertDOMtoCanvas",value:function(g){return(g-this.body.view.translation.x)/this.body.view.scale}},{key:"_XconvertCanvasToDOM",value:function(g){return g*this.body.view.scale+this.body.view.translation.x}},{key:"_YconvertDOMtoCanvas",value:function(g){return(g-this.body.view.translation.y)/this.body.view.scale}},{key:"_YconvertCanvasToDOM",value:function(g){return g*this.body.view.scale+this.body.view.translation.y}},{key:"canvasToDOM",value:function(g){return{x:this._XconvertCanvasToDOM(g.x),y:this._YconvertCanvasToDOM(g.y)}}},{key:"DOMtoCanvas",value:function(g){return{x:this._XconvertDOMtoCanvas(g.x),y:this._YconvertDOMtoCanvas(g.y)}}}]),g}();var Yz=function(){function g(t,e){var A,C,I=this;cd(this,g),this.body=t,this.canvas=e,this.animationSpeed=1/this.renderRefreshRate,this.animationEasingFunction="easeInOutQuint",this.easingTime=0,this.sourceScale=0,this.targetScale=0,this.sourceTranslation=0,this.targetTranslation=0,this.lockedOnNodeId=void 0,this.lockedOnNodeOffset=void 0,this.touchTime=0,this.viewFunction=void 0,this.body.emitter.on("fit",QA(A=this.fit).call(A,this)),this.body.emitter.on("animationFinished",(function(){I.body.emitter.emit("_stopRendering")})),this.body.emitter.on("unlockNode",QA(C=this.releaseNode).call(C,this))}return Bh(g,[{key:"setOptions",value:function(){var g=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.options=g}},{key:"fit",value:function(g){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];g=function(g,t){var e=yA({nodes:t,minZoomLevel:Number.MIN_VALUE,maxZoomLevel:1},null!=g?g:{});if(!Vl(e.nodes))throw new TypeError("Nodes has to be an array of ids.");if(0===e.nodes.length&&(e.nodes=t),!("number"==typeof e.minZoomLevel&&e.minZoomLevel>0))throw new TypeError("Min zoom level has to be a number higher than zero.");if(!("number"==typeof e.maxZoomLevel&&e.minZoomLevel<=e.maxZoomLevel))throw new TypeError("Max zoom level has to be a number higher than min zoom level.");return e}(g,this.body.nodeIndices);var e,A,C=this.canvas.frame.canvas.clientWidth,I=this.canvas.frame.canvas.clientHeight;if(0===C||0===I)A=1,e=Pz.getRange(this.body.nodes,g.nodes);else if(!0===t){var i=0;for(var o in this.body.nodes){if(Object.prototype.hasOwnProperty.call(this.body.nodes,o))!0===this.body.nodes[o].predefinedPosition&&(i+=1)}if(i>.5*this.body.nodeIndices.length)return void this.fit(g,!1);e=Pz.getRange(this.body.nodes,g.nodes),A=12.662/(this.body.nodeIndices.length+7.4147)+.0964822,A*=Math.min(C/600,I/600)}else{this.body.emitter.emit("_resizeNodes"),e=Pz.getRange(this.body.nodes,g.nodes);var n=C/(1.1*Math.abs(e.maxX-e.minX)),r=I/(1.1*Math.abs(e.maxY-e.minY));A=n<=r?n:r}A>g.maxZoomLevel?A=g.maxZoomLevel:A<g.minZoomLevel&&(A=g.minZoomLevel);var s={position:Pz.findCenter(e),scale:A,animation:g.animation};this.moveTo(s)}},{key:"focus",value:function(g){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(void 0!==this.body.nodes[g]){var e={x:this.body.nodes[g].x,y:this.body.nodes[g].y};t.position=e,t.lockedOnNode=g,this.moveTo(t)}else console.error("Node: "+g+" cannot be found.")}},{key:"moveTo",value:function(g){if(void 0!==g){if(null!=g.offset){if(null!=g.offset.x){if(g.offset.x=+g.offset.x,!Zx(g.offset.x))throw new TypeError('The option "offset.x" has to be a finite number.')}else g.offset.x=0;if(null!=g.offset.y){if(g.offset.y=+g.offset.y,!Zx(g.offset.y))throw new TypeError('The option "offset.y" has to be a finite number.')}else g.offset.x=0}else g.offset={x:0,y:0};if(null!=g.position){if(null!=g.position.x){if(g.position.x=+g.position.x,!Zx(g.position.x))throw new TypeError('The option "position.x" has to be a finite number.')}else g.position.x=0;if(null!=g.position.y){if(g.position.y=+g.position.y,!Zx(g.position.y))throw new TypeError('The option "position.y" has to be a finite number.')}else g.position.x=0}else g.position=this.getViewPosition();if(null!=g.scale){if(g.scale=+g.scale,!(g.scale>0))throw new TypeError('The option "scale" has to be a number greater than zero.')}else g.scale=this.body.view.scale;void 0===g.animation&&(g.animation={duration:0}),!1===g.animation&&(g.animation={duration:0}),!0===g.animation&&(g.animation={}),void 0===g.animation.duration&&(g.animation.duration=1e3),void 0===g.animation.easingFunction&&(g.animation.easingFunction="easeInOutQuad"),this.animateView(g)}else g={}}},{key:"animateView",value:function(g){if(void 0!==g){this.animationEasingFunction=g.animation.easingFunction,this.releaseNode(),!0===g.locked&&(this.lockedOnNodeId=g.lockedOnNode,this.lockedOnNodeOffset=g.offset),0!=this.easingTime&&this._transitionRedraw(!0),this.sourceScale=this.body.view.scale,this.sourceTranslation=this.body.view.translation,this.targetScale=g.scale,this.body.view.scale=this.targetScale;var t,e,A=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),C=A.x-g.position.x,I=A.y-g.position.y;if(this.targetTranslation={x:this.sourceTranslation.x+C*this.targetScale+g.offset.x,y:this.sourceTranslation.y+I*this.targetScale+g.offset.y},0===g.animation.duration)if(null!=this.lockedOnNodeId)this.viewFunction=QA(t=this._lockedRedraw).call(t,this),this.body.emitter.on("initRedraw",this.viewFunction);else this.body.view.scale=this.targetScale,this.body.view.translation=this.targetTranslation,this.body.emitter.emit("_requestRedraw");else this.animationSpeed=1/(60*g.animation.duration*.001)||1/60,this.animationEasingFunction=g.animation.easingFunction,this.viewFunction=QA(e=this._transitionRedraw).call(e,this),this.body.emitter.on("initRedraw",this.viewFunction),this.body.emitter.emit("_startRendering")}}},{key:"_lockedRedraw",value:function(){var g=this.body.nodes[this.lockedOnNodeId].x,t=this.body.nodes[this.lockedOnNodeId].y,e=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),A=e.x-g,C=e.y-t,I=this.body.view.translation,i={x:I.x+A*this.body.view.scale+this.lockedOnNodeOffset.x,y:I.y+C*this.body.view.scale+this.lockedOnNodeOffset.y};this.body.view.translation=i}},{key:"releaseNode",value:function(){void 0!==this.lockedOnNodeId&&void 0!==this.viewFunction&&(this.body.emitter.off("initRedraw",this.viewFunction),this.lockedOnNodeId=void 0,this.lockedOnNodeOffset=void 0)}},{key:"_transitionRedraw",value:function(){var g=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.easingTime+=this.animationSpeed,this.easingTime=!0===g?1:this.easingTime;var t=$m[this.animationEasingFunction](this.easingTime);if(this.body.view.scale=this.sourceScale+(this.targetScale-this.sourceScale)*t,this.body.view.translation={x:this.sourceTranslation.x+(this.targetTranslation.x-this.sourceTranslation.x)*t,y:this.sourceTranslation.y+(this.targetTranslation.y-this.sourceTranslation.y)*t},this.easingTime>=1){var e;if(this.body.emitter.off("initRedraw",this.viewFunction),this.easingTime=0,null!=this.lockedOnNodeId)this.viewFunction=QA(e=this._lockedRedraw).call(e,this),this.body.emitter.on("initRedraw",this.viewFunction);this.body.emitter.emit("animationFinished")}}},{key:"getScale",value:function(){return this.body.view.scale}},{key:"getViewPosition",value:function(){return this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight})}}]),g}();function Wz(g){var t,e=g&&g.preventDefault||!1,A=g&&g.container||window,C={},I={keydown:{},keyup:{}},i={};for(t=97;t<=122;t++)i[String.fromCharCode(t)]={code:t-97+65,shift:!1};for(t=65;t<=90;t++)i[String.fromCharCode(t)]={code:t,shift:!0};for(t=0;t<=9;t++)i[""+t]={code:48+t,shift:!1};for(t=1;t<=12;t++)i["F"+t]={code:111+t,shift:!1};for(t=0;t<=9;t++)i["num"+t]={code:96+t,shift:!1};i["num*"]={code:106,shift:!1},i["num+"]={code:107,shift:!1},i["num-"]={code:109,shift:!1},i["num/"]={code:111,shift:!1},i["num."]={code:110,shift:!1},i.left={code:37,shift:!1},i.up={code:38,shift:!1},i.right={code:39,shift:!1},i.down={code:40,shift:!1},i.space={code:32,shift:!1},i.enter={code:13,shift:!1},i.shift={code:16,shift:void 0},i.esc={code:27,shift:!1},i.backspace={code:8,shift:!1},i.tab={code:9,shift:!1},i.ctrl={code:17,shift:!1},i.alt={code:18,shift:!1},i.delete={code:46,shift:!1},i.pageup={code:33,shift:!1},i.pagedown={code:34,shift:!1},i["="]={code:187,shift:!1},i["-"]={code:189,shift:!1},i["]"]={code:221,shift:!1},i["["]={code:219,shift:!1};var o=function(g){r(g,"keydown")},n=function(g){r(g,"keyup")},r=function(g,t){if(void 0!==I[t][g.keyCode]){for(var A=I[t][g.keyCode],C=0;C<A.length;C++)(void 0===A[C].shift||1==A[C].shift&&1==g.shiftKey||0==A[C].shift&&0==g.shiftKey)&&A[C].fn(g);1==e&&g.preventDefault()}};return C.bind=function(g,t,e){if(void 0===e&&(e="keydown"),void 0===i[g])throw new Error("unsupported key: "+g);void 0===I[e][i[g].code]&&(I[e][i[g].code]=[]),I[e][i[g].code].push({fn:t,shift:i[g].shift})},C.bindAll=function(g,t){for(var e in void 0===t&&(t="keydown"),i)i.hasOwnProperty(e)&&C.bind(e,g,t)},C.getKey=function(g){for(var t in i)if(i.hasOwnProperty(t)){if(1==g.shiftKey&&1==i[t].shift&&g.keyCode==i[t].code)return t;if(0==g.shiftKey&&0==i[t].shift&&g.keyCode==i[t].code)return t;if(g.keyCode==i[t].code&&"shift"==t)return t}return"unknown key, currently not supported"},C.unbind=function(g,t,e){if(void 0===e&&(e="keydown"),void 0===i[g])throw new Error("unsupported key: "+g);if(void 0!==t){var A=[],C=I[e][i[g].code];if(void 0!==C)for(var o=0;o<C.length;o++)C[o].fn==t&&C[o].shift==i[g].shift||A.push(I[e][i[g].code][o]);I[e][i[g].code]=A}else I[e][i[g].code]=[]},C.reset=function(){I={keydown:{},keyup:{}}},C.destroy=function(){I={keydown:{},keyup:{}},A.removeEventListener("keydown",o,!0),A.removeEventListener("keyup",n,!0)},A.addEventListener("keydown",o,!0),A.addEventListener("keyup",n,!0),C}qA('div.vis-network div.vis-navigation div.vis-button{-webkit-touch-callout:none;background-position:2px 2px;background-repeat:no-repeat;-moz-border-radius:17px;border-radius:17px;cursor:pointer;display:inline-block;height:34px;position:absolute;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:34px}div.vis-network div.vis-navigation div.vis-button:hover{box-shadow:0 0 3px 3px rgba(56,207,21,.3)}div.vis-network div.vis-navigation div.vis-button:active{box-shadow:0 0 1px 3px rgba(56,207,21,.95)}div.vis-network div.vis-navigation div.vis-button.vis-up{background-image:url("data:image/png;base64,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");bottom:50px;left:55px}div.vis-network div.vis-navigation div.vis-button.vis-down{background-image:url("data:image/png;base64,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");bottom:10px;left:55px}div.vis-network div.vis-navigation div.vis-button.vis-left{background-image:url("data:image/png;base64,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");bottom:10px;left:15px}div.vis-network div.vis-navigation div.vis-button.vis-right{background-image:url("data:image/png;base64,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");bottom:10px;left:95px}div.vis-network div.vis-navigation div.vis-button.vis-zoomIn{background-image:url("data:image/png;base64,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");bottom:10px;right:15px}div.vis-network div.vis-navigation div.vis-button.vis-zoomOut{background-image:url("data:image/png;base64,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");bottom:10px;right:55px}div.vis-network div.vis-navigation div.vis-button.vis-zoomExtends{background-image:url("data:image/png;base64,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");bottom:50px;right:15px}');var Qz=function(){function g(t,e){var A=this;cd(this,g),this.body=t,this.canvas=e,this.iconsCreated=!1,this.navigationHammers=[],this.boundFunctions={},this.touchTime=0,this.activated=!1,this.body.emitter.on("activate",(function(){A.activated=!0,A.configureKeyboardBindings()})),this.body.emitter.on("deactivate",(function(){A.activated=!1,A.configureKeyboardBindings()})),this.body.emitter.on("destroy",(function(){void 0!==A.keycharm&&A.keycharm.destroy()})),this.options={}}return Bh(g,[{key:"setOptions",value:function(g){void 0!==g&&(this.options=g,this.create())}},{key:"create",value:function(){!0===this.options.navigationButtons?!1===this.iconsCreated&&this.loadNavigationElements():!0===this.iconsCreated&&this.cleanNavigation(),this.configureKeyboardBindings()}},{key:"cleanNavigation",value:function(){if(0!=this.navigationHammers.length){for(var g=0;g<this.navigationHammers.length;g++)this.navigationHammers[g].destroy();this.navigationHammers=[]}this.navigationDOM&&this.navigationDOM.wrapper&&this.navigationDOM.wrapper.parentNode&&this.navigationDOM.wrapper.parentNode.removeChild(this.navigationDOM.wrapper),this.iconsCreated=!1}},{key:"loadNavigationElements",value:function(){var g=this;this.cleanNavigation(),this.navigationDOM={};var t=["up","down","left","right","zoomIn","zoomOut","zoomExtends"],e=["_moveUp","_moveDown","_moveLeft","_moveRight","_zoomIn","_zoomOut","_fit"];this.navigationDOM.wrapper=document.createElement("div"),this.navigationDOM.wrapper.className="vis-navigation",this.canvas.frame.appendChild(this.navigationDOM.wrapper);for(var A=0;A<t.length;A++){this.navigationDOM[t[A]]=document.createElement("div"),this.navigationDOM[t[A]].className="vis-button vis-"+t[A],this.navigationDOM.wrapper.appendChild(this.navigationDOM[t[A]]);var C,I,i=new db(this.navigationDOM[t[A]]);if("_fit"===e[A])jz(i,QA(C=this._fit).call(C,this));else jz(i,QA(I=this.bindToRedraw).call(I,this,e[A]));this.navigationHammers.push(i)}var o=new db(this.canvas.frame);Lz(o,(function(){g._stopMovement()})),this.navigationHammers.push(o),this.iconsCreated=!0}},{key:"bindToRedraw",value:function(g){var t;void 0===this.boundFunctions[g]&&(this.boundFunctions[g]=QA(t=this[g]).call(t,this),this.body.emitter.on("initRedraw",this.boundFunctions[g]),this.body.emitter.emit("_startRendering"))}},{key:"unbindFromRedraw",value:function(g){void 0!==this.boundFunctions[g]&&(this.body.emitter.off("initRedraw",this.boundFunctions[g]),this.body.emitter.emit("_stopRendering"),delete this.boundFunctions[g])}},{key:"_fit",value:function(){(new Date).valueOf()-this.touchTime>700&&(this.body.emitter.emit("fit",{duration:700}),this.touchTime=(new Date).valueOf())}},{key:"_stopMovement",value:function(){for(var g in this.boundFunctions)Object.prototype.hasOwnProperty.call(this.boundFunctions,g)&&(this.body.emitter.off("initRedraw",this.boundFunctions[g]),this.body.emitter.emit("_stopRendering"));this.boundFunctions={}}},{key:"_moveUp",value:function(){this.body.view.translation.y+=this.options.keyboard.speed.y}},{key:"_moveDown",value:function(){this.body.view.translation.y-=this.options.keyboard.speed.y}},{key:"_moveLeft",value:function(){this.body.view.translation.x+=this.options.keyboard.speed.x}},{key:"_moveRight",value:function(){this.body.view.translation.x-=this.options.keyboard.speed.x}},{key:"_zoomIn",value:function(){var g=this.body.view.scale,t=this.body.view.scale*(1+this.options.keyboard.speed.zoom),e=this.body.view.translation,A=t/g,C=(1-A)*this.canvas.canvasViewCenter.x+e.x*A,I=(1-A)*this.canvas.canvasViewCenter.y+e.y*A;this.body.view.scale=t,this.body.view.translation={x:C,y:I},this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale,pointer:null})}},{key:"_zoomOut",value:function(){var g=this.body.view.scale,t=this.body.view.scale/(1+this.options.keyboard.speed.zoom),e=this.body.view.translation,A=t/g,C=(1-A)*this.canvas.canvasViewCenter.x+e.x*A,I=(1-A)*this.canvas.canvasViewCenter.y+e.y*A;this.body.view.scale=t,this.body.view.translation={x:C,y:I},this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale,pointer:null})}},{key:"configureKeyboardBindings",value:function(){var g,t,e,A,C,I,i,o,n,r,s,a,d,h,l,c,u,p,f,v,y,m,b,w,x=this;(void 0!==this.keycharm&&this.keycharm.destroy(),!0===this.options.keyboard.enabled)&&(!0===this.options.keyboard.bindToWindow?this.keycharm=Wz({container:window,preventDefault:!0}):this.keycharm=Wz({container:this.canvas.frame,preventDefault:!0}),this.keycharm.reset(),!0===this.activated&&(QA(g=this.keycharm).call(g,"up",(function(){x.bindToRedraw("_moveUp")}),"keydown"),QA(t=this.keycharm).call(t,"down",(function(){x.bindToRedraw("_moveDown")}),"keydown"),QA(e=this.keycharm).call(e,"left",(function(){x.bindToRedraw("_moveLeft")}),"keydown"),QA(A=this.keycharm).call(A,"right",(function(){x.bindToRedraw("_moveRight")}),"keydown"),QA(C=this.keycharm).call(C,"=",(function(){x.bindToRedraw("_zoomIn")}),"keydown"),QA(I=this.keycharm).call(I,"num+",(function(){x.bindToRedraw("_zoomIn")}),"keydown"),QA(i=this.keycharm).call(i,"num-",(function(){x.bindToRedraw("_zoomOut")}),"keydown"),QA(o=this.keycharm).call(o,"-",(function(){x.bindToRedraw("_zoomOut")}),"keydown"),QA(n=this.keycharm).call(n,"[",(function(){x.bindToRedraw("_zoomOut")}),"keydown"),QA(r=this.keycharm).call(r,"]",(function(){x.bindToRedraw("_zoomIn")}),"keydown"),QA(s=this.keycharm).call(s,"pageup",(function(){x.bindToRedraw("_zoomIn")}),"keydown"),QA(a=this.keycharm).call(a,"pagedown",(function(){x.bindToRedraw("_zoomOut")}),"keydown"),QA(d=this.keycharm).call(d,"up",(function(){x.unbindFromRedraw("_moveUp")}),"keyup"),QA(h=this.keycharm).call(h,"down",(function(){x.unbindFromRedraw("_moveDown")}),"keyup"),QA(l=this.keycharm).call(l,"left",(function(){x.unbindFromRedraw("_moveLeft")}),"keyup"),QA(c=this.keycharm).call(c,"right",(function(){x.unbindFromRedraw("_moveRight")}),"keyup"),QA(u=this.keycharm).call(u,"=",(function(){x.unbindFromRedraw("_zoomIn")}),"keyup"),QA(p=this.keycharm).call(p,"num+",(function(){x.unbindFromRedraw("_zoomIn")}),"keyup"),QA(f=this.keycharm).call(f,"num-",(function(){x.unbindFromRedraw("_zoomOut")}),"keyup"),QA(v=this.keycharm).call(v,"-",(function(){x.unbindFromRedraw("_zoomOut")}),"keyup"),QA(y=this.keycharm).call(y,"[",(function(){x.unbindFromRedraw("_zoomOut")}),"keyup"),QA(m=this.keycharm).call(m,"]",(function(){x.unbindFromRedraw("_zoomIn")}),"keyup"),QA(b=this.keycharm).call(b,"pageup",(function(){x.unbindFromRedraw("_zoomIn")}),"keyup"),QA(w=this.keycharm).call(w,"pagedown",(function(){x.unbindFromRedraw("_zoomOut")}),"keyup")))}}]),g}();function Uz(g,t){var e=void 0!==kl&&bn(g)||g["@@iterator"];if(!e){if(Vl(g)||(e=function(g,t){var e;if(!g)return;if("string"==typeof g)return _z(g,t);var A=Sl(e=Object.prototype.toString.call(g)).call(e,8,-1);"Object"===A&&g.constructor&&(A=g.constructor.name);if("Map"===A||"Set"===A)return Jo(g);if("Arguments"===A||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(A))return _z(g,t)}(g))||t&&g&&"number"==typeof g.length){e&&(g=e);var A=0,C=function(){};return{s:C,n:function(){return A>=g.length?{done:!0}:{done:!1,value:g[A++]}},e:function(g){throw g},f:C}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var I,i=!0,o=!1;return{s:function(){e=e.call(g)},n:function(){var g=e.next();return i=g.done,g},e:function(g){o=!0,I=g},f:function(){try{i||null==e.return||e.return()}finally{if(o)throw I}}}}function _z(g,t){(null==t||t>g.length)&&(t=g.length);for(var e=0,A=new Array(t);e<t;e++)A[e]=g[e];return A}var Hz=function(){function g(t,e,A){var C,I,i,o,n,r,s,a,d,h,l,c,u;cd(this,g),this.body=t,this.canvas=e,this.selectionHandler=A,this.navigationHandler=new Qz(t,e),this.body.eventListeners.onTap=QA(C=this.onTap).call(C,this),this.body.eventListeners.onTouch=QA(I=this.onTouch).call(I,this),this.body.eventListeners.onDoubleTap=QA(i=this.onDoubleTap).call(i,this),this.body.eventListeners.onHold=QA(o=this.onHold).call(o,this),this.body.eventListeners.onDragStart=QA(n=this.onDragStart).call(n,this),this.body.eventListeners.onDrag=QA(r=this.onDrag).call(r,this),this.body.eventListeners.onDragEnd=QA(s=this.onDragEnd).call(s,this),this.body.eventListeners.onMouseWheel=QA(a=this.onMouseWheel).call(a,this),this.body.eventListeners.onPinch=QA(d=this.onPinch).call(d,this),this.body.eventListeners.onMouseMove=QA(h=this.onMouseMove).call(h,this),this.body.eventListeners.onRelease=QA(l=this.onRelease).call(l,this),this.body.eventListeners.onContext=QA(c=this.onContext).call(c,this),this.touchTime=0,this.drag={},this.pinch={},this.popup=void 0,this.popupObj=void 0,this.popupTimer=void 0,this.body.functions.getPointer=QA(u=this.getPointer).call(u,this),this.options={},this.defaultOptions={dragNodes:!0,dragView:!0,hover:!1,keyboard:{enabled:!1,speed:{x:10,y:10,zoom:.02},bindToWindow:!0,autoFocus:!0},navigationButtons:!1,tooltipDelay:300,zoomView:!0,zoomSpeed:1},yA(this.options,this.defaultOptions),this.bindEventListeners()}return Bh(g,[{key:"bindEventListeners",value:function(){var g=this;this.body.emitter.on("destroy",(function(){clearTimeout(g.popupTimer),delete g.body.functions.getPointer}))}},{key:"setOptions",value:function(g){if(void 0!==g){Zm(["hideEdgesOnDrag","hideEdgesOnZoom","hideNodesOnDrag","keyboard","multiselect","selectable","selectConnectedEdges"],this.options,g),qm(this.options,g,"keyboard"),g.tooltip&&(yA(this.options.tooltip,g.tooltip),g.tooltip.color&&(this.options.tooltip.color=Qm(g.tooltip.color)))}this.navigationHandler.setOptions(this.options)}},{key:"getPointer",value:function(g){return{x:g.x-(t=this.canvas.frame.canvas,t.getBoundingClientRect().left),y:g.y-jm(this.canvas.frame.canvas)};var t}},{key:"onTouch",value:function(g){(new Date).valueOf()-this.touchTime>50&&(this.drag.pointer=this.getPointer(g.center),this.drag.pinched=!1,this.pinch.scale=this.body.view.scale,this.touchTime=(new Date).valueOf())}},{key:"onTap",value:function(g){var t=this.getPointer(g.center),e=this.selectionHandler.options.multiselect&&(g.changedPointers[0].ctrlKey||g.changedPointers[0].metaKey);this.checkSelectionChanges(t,e),this.selectionHandler.commitAndEmit(t,g),this.selectionHandler.generateClickEvent("click",g,t)}},{key:"onDoubleTap",value:function(g){var t=this.getPointer(g.center);this.selectionHandler.generateClickEvent("doubleClick",g,t)}},{key:"onHold",value:function(g){var t=this.getPointer(g.center),e=this.selectionHandler.options.multiselect;this.checkSelectionChanges(t,e),this.selectionHandler.commitAndEmit(t,g),this.selectionHandler.generateClickEvent("click",g,t),this.selectionHandler.generateClickEvent("hold",g,t)}},{key:"onRelease",value:function(g){if((new Date).valueOf()-this.touchTime>10){var t=this.getPointer(g.center);this.selectionHandler.generateClickEvent("release",g,t),this.touchTime=(new Date).valueOf()}}},{key:"onContext",value:function(g){var t=this.getPointer({x:g.clientX,y:g.clientY});this.selectionHandler.generateClickEvent("oncontext",g,t)}},{key:"checkSelectionChanges",value:function(g){!0===(arguments.length>1&&void 0!==arguments[1]&&arguments[1])?this.selectionHandler.selectAdditionalOnPoint(g):this.selectionHandler.selectOnPoint(g)}},{key:"_determineDifference",value:function(g,t){var e=function(g,t){for(var e=[],A=0;A<g.length;A++){var C=g[A];-1===$p(t).call(t,C)&&e.push(C)}return e};return{nodes:e(g.nodes,t.nodes),edges:e(g.edges,t.edges)}}},{key:"onDragStart",value:function(g){if(!this.drag.dragging){void 0===this.drag.pointer&&this.onTouch(g);var t=this.selectionHandler.getNodeAt(this.drag.pointer);if(this.drag.dragging=!0,this.drag.selection=[],this.drag.translation=yA({},this.body.view.translation),this.drag.nodeId=void 0,g.srcEvent.shiftKey){this.body.selectionBox.show=!0;var e=this.getPointer(g.center);this.body.selectionBox.position.start={x:this.canvas._XconvertDOMtoCanvas(e.x),y:this.canvas._YconvertDOMtoCanvas(e.y)},this.body.selectionBox.position.end={x:this.canvas._XconvertDOMtoCanvas(e.x),y:this.canvas._YconvertDOMtoCanvas(e.y)}}else if(void 0!==t&&!0===this.options.dragNodes){this.drag.nodeId=t.id,!1===t.isSelected()&&this.selectionHandler.setSelection({nodes:[t.id]}),this.selectionHandler.generateClickEvent("dragStart",g,this.drag.pointer);var A,C=Uz(this.selectionHandler.getSelectedNodes());try{for(C.s();!(A=C.n()).done;){var I=A.value,i={id:I.id,node:I,x:I.x,y:I.y,xFixed:I.options.fixed.x,yFixed:I.options.fixed.y};I.options.fixed.x=!0,I.options.fixed.y=!0,this.drag.selection.push(i)}}catch(g){C.e(g)}finally{C.f()}}else this.selectionHandler.generateClickEvent("dragStart",g,this.drag.pointer,void 0,!0)}}},{key:"onDrag",value:function(g){var t=this;if(!0!==this.drag.pinched){this.body.emitter.emit("unlockNode");var e=this.getPointer(g.center),A=this.drag.selection;if(A&&A.length&&!0===this.options.dragNodes){this.selectionHandler.generateClickEvent("dragging",g,e);var C=e.x-this.drag.pointer.x,I=e.y-this.drag.pointer.y;Ec(A).call(A,(function(g){var e=g.node;!1===g.xFixed&&(e.x=t.canvas._XconvertDOMtoCanvas(t.canvas._XconvertCanvasToDOM(g.x)+C)),!1===g.yFixed&&(e.y=t.canvas._YconvertDOMtoCanvas(t.canvas._YconvertCanvasToDOM(g.y)+I))})),this.body.emitter.emit("startSimulation")}else{if(g.srcEvent.shiftKey){if(this.selectionHandler.generateClickEvent("dragging",g,e,void 0,!0),void 0===this.drag.pointer)return void this.onDragStart(g);this.body.selectionBox.position.end={x:this.canvas._XconvertDOMtoCanvas(e.x),y:this.canvas._YconvertDOMtoCanvas(e.y)},this.body.emitter.emit("_requestRedraw")}if(!0===this.options.dragView&&!g.srcEvent.shiftKey){if(this.selectionHandler.generateClickEvent("dragging",g,e,void 0,!0),void 0===this.drag.pointer)return void this.onDragStart(g);var i=e.x-this.drag.pointer.x,o=e.y-this.drag.pointer.y;this.body.view.translation={x:this.drag.translation.x+i,y:this.drag.translation.y+o},this.body.emitter.emit("_requestRedraw")}}}}},{key:"onDragEnd",value:function(g){var t=this;if(this.drag.dragging=!1,this.body.selectionBox.show){var e;this.body.selectionBox.show=!1;var A=this.body.selectionBox.position,C={minX:Math.min(A.start.x,A.end.x),minY:Math.min(A.start.y,A.end.y),maxX:Math.max(A.start.x,A.end.x),maxY:Math.max(A.start.y,A.end.y)},I=Ap(e=this.body.nodeIndices).call(e,(function(g){var e=t.body.nodes[g];return e.x>=C.minX&&e.x<=C.maxX&&e.y>=C.minY&&e.y<=C.maxY}));Ec(I).call(I,(function(g){return t.selectionHandler.selectObject(t.body.nodes[g])}));var i=this.getPointer(g.center);this.selectionHandler.commitAndEmit(i,g),this.selectionHandler.generateClickEvent("dragEnd",g,this.getPointer(g.center),void 0,!0),this.body.emitter.emit("_requestRedraw")}else{var o=this.drag.selection;o&&o.length?(Ec(o).call(o,(function(g){g.node.options.fixed.x=g.xFixed,g.node.options.fixed.y=g.yFixed})),this.selectionHandler.generateClickEvent("dragEnd",g,this.getPointer(g.center)),this.body.emitter.emit("startSimulation")):(this.selectionHandler.generateClickEvent("dragEnd",g,this.getPointer(g.center),void 0,!0),this.body.emitter.emit("_requestRedraw"))}}},{key:"onPinch",value:function(g){var t=this.getPointer(g.center);this.drag.pinched=!0,void 0===this.pinch.scale&&(this.pinch.scale=1);var e=this.pinch.scale*g.scale;this.zoom(e,t)}},{key:"zoom",value:function(g,t){if(!0===this.options.zoomView){var e=this.body.view.scale;g<1e-5&&(g=1e-5),g>10&&(g=10);var A=void 0;void 0!==this.drag&&!0===this.drag.dragging&&(A=this.canvas.DOMtoCanvas(this.drag.pointer));var C=this.body.view.translation,I=g/e,i=(1-I)*t.x+C.x*I,o=(1-I)*t.y+C.y*I;if(this.body.view.scale=g,this.body.view.translation={x:i,y:o},null!=A){var n=this.canvas.canvasToDOM(A);this.drag.pointer.x=n.x,this.drag.pointer.y=n.y}this.body.emitter.emit("_requestRedraw"),e<g?this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale,pointer:t}):this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale,pointer:t})}}},{key:"onMouseWheel",value:function(g){if(!0===this.options.zoomView){if(0!==g.deltaY){var t=this.body.view.scale;t*=1+(g.deltaY<0?1:-1)*(.1*this.options.zoomSpeed);var e=this.getPointer({x:g.clientX,y:g.clientY});this.zoom(t,e)}g.preventDefault()}}},{key:"onMouseMove",value:function(g){var t=this,e=this.getPointer({x:g.clientX,y:g.clientY}),A=!1;void 0!==this.popup&&(!1===this.popup.hidden&&this._checkHidePopup(e),!1===this.popup.hidden&&(A=!0,this.popup.setPosition(e.x+3,e.y-5),this.popup.show())),this.options.keyboard.autoFocus&&!1===this.options.keyboard.bindToWindow&&!0===this.options.keyboard.enabled&&this.canvas.frame.focus(),!1===A&&(void 0!==this.popupTimer&&(clearInterval(this.popupTimer),this.popupTimer=void 0),this.drag.dragging||(this.popupTimer=_f((function(){return t._checkShowPopup(e)}),this.options.tooltipDelay))),!0===this.options.hover&&this.selectionHandler.hoverObject(g,e)}},{key:"_checkShowPopup",value:function(g){var t=this.canvas._XconvertDOMtoCanvas(g.x),e=this.canvas._YconvertDOMtoCanvas(g.y),A={left:t,top:e,right:t,bottom:e},C=void 0===this.popupObj?void 0:this.popupObj.id,I=!1,i="node";if(void 0===this.popupObj){for(var o,n=this.body.nodeIndices,r=this.body.nodes,s=[],a=0;a<n.length;a++)!0===(o=r[n[a]]).isOverlappingWith(A)&&(I=!0,void 0!==o.getTitle()&&s.push(n[a]));s.length>0&&(this.popupObj=r[s[s.length-1]],I=!0)}if(void 0===this.popupObj&&!1===I){for(var d,h=this.body.edgeIndices,l=this.body.edges,c=[],u=0;u<h.length;u++)!0===(d=l[h[u]]).isOverlappingWith(A)&&!0===d.connected&&void 0!==d.getTitle()&&c.push(h[u]);c.length>0&&(this.popupObj=l[c[c.length-1]],i="edge")}void 0!==this.popupObj?this.popupObj.id!==C&&(void 0===this.popup&&(this.popup=new hb(this.canvas.frame)),this.popup.popupTargetType=i,this.popup.popupTargetId=this.popupObj.id,this.popup.setPosition(g.x+3,g.y-5),this.popup.setText(this.popupObj.getTitle()),this.popup.show(),this.body.emitter.emit("showPopup",this.popupObj.id)):void 0!==this.popup&&(this.popup.hide(),this.body.emitter.emit("hidePopup"))}},{key:"_checkHidePopup",value:function(g){var t=this.selectionHandler._pointerToPositionObject(g),e=!1;if("node"===this.popup.popupTargetType){if(void 0!==this.body.nodes[this.popup.popupTargetId]&&!0===(e=this.body.nodes[this.popup.popupTargetId].isOverlappingWith(t))){var A=this.selectionHandler.getNodeAt(g);e=void 0!==A&&A.id===this.popup.popupTargetId}}else void 0===this.selectionHandler.getNodeAt(g)&&void 0!==this.body.edges[this.popup.popupTargetId]&&(e=this.body.edges[this.popup.popupTargetId].isOverlappingWith(t));!1===e&&(this.popupObj=void 0,this.popup.hide(),this.body.emitter.emit("hidePopup"))}}]),g}(),Kz={},Xz={get exports(){return Kz},set exports(g){Kz=g}},Jz=f,qz=Cx,$z=$b.getWeakData,gS=jw,tS=Ae,eS=_,AS=eg,CS=Zw,IS=$g,iS=UC.set,oS=UC.getterFor,nS=ur.find,rS=ur.findIndex,sS=Jz([].splice),aS=0,dS=function(g){return g.frozen||(g.frozen=new hS)},hS=function(){this.entries=[]},lS=function(g,t){return nS(g.entries,(function(g){return g[0]===t}))};hS.prototype={get:function(g){var t=lS(this,g);if(t)return t[1]},has:function(g){return!!lS(this,g)},set:function(g,t){var e=lS(this,g);e?e[1]=t:this.entries.push([g,t])},delete:function(g){var t=rS(this.entries,(function(t){return t[0]===g}));return~t&&sS(this.entries,t,1),!!~t}};var cS,uS={getConstructor:function(g,t,e,A){var C=g((function(g,C){gS(g,I),iS(g,{type:t,id:aS++,frozen:void 0}),eS(C)||CS(C,g[A],{that:g,AS_ENTRIES:e})})),I=C.prototype,i=oS(t),o=function(g,t,e){var A=i(g),C=$z(tS(t),!0);return!0===C?dS(A).set(t,e):C[A.id]=e,g};return qz(I,{delete:function(g){var t=i(this);if(!AS(g))return!1;var e=$z(g);return!0===e?dS(t).delete(g):e&&IS(e,t.id)&&delete e[t.id]},has:function(g){var t=i(this);if(!AS(g))return!1;var e=$z(g);return!0===e?dS(t).has(g):e&&IS(e,t.id)}}),qz(I,e?{get:function(g){var t=i(this);if(AS(g)){var e=$z(g);return!0===e?dS(t).get(g):e?e[t.id]:void 0}},set:function(g,t){return o(this,g,t)}}:{add:function(g){return o(this,g,!0)}}),C}},pS=nw,fS=i,vS=f,yS=Cx,mS=$b,bS=ex,wS=uS,xS=eg,kS=UC.enforce,ES=o,OS=DC,TS=Object,DS=Array.isArray,NS=TS.isExtensible,RS=TS.isFrozen,PS=TS.isSealed,MS=TS.freeze,BS=TS.seal,zS={},SS={},ZS=!fS.ActiveXObject&&"ActiveXObject"in fS,FS=function(g){return function(){return g(this,arguments.length?arguments[0]:void 0)}},GS=bS("WeakMap",FS,wS),jS=GS.prototype,LS=vS(jS.set);if(OS)if(ZS){cS=wS.getConstructor(FS,"WeakMap",!0),mS.enable();var VS=vS(jS.delete),YS=vS(jS.has),WS=vS(jS.get);yS(jS,{delete:function(g){if(xS(g)&&!NS(g)){var t=kS(this);return t.frozen||(t.frozen=new cS),VS(this,g)||t.frozen.delete(g)}return VS(this,g)},has:function(g){if(xS(g)&&!NS(g)){var t=kS(this);return t.frozen||(t.frozen=new cS),YS(this,g)||t.frozen.has(g)}return YS(this,g)},get:function(g){if(xS(g)&&!NS(g)){var t=kS(this);return t.frozen||(t.frozen=new cS),YS(this,g)?WS(this,g):t.frozen.get(g)}return WS(this,g)},set:function(g,t){if(xS(g)&&!NS(g)){var e=kS(this);e.frozen||(e.frozen=new cS),YS(this,g)?LS(this,g,t):e.frozen.set(g,t)}else LS(this,g,t);return this}})}else pS&&ES((function(){var g=MS([]);return LS(new GS,g,1),!RS(g)}))&&yS(jS,{set:function(g,t){var e;return DS(g)&&(RS(g)?e=zS:PS(g)&&(e=SS)),LS(this,g,t),e==zS&&MS(g),e==SS&&BS(g),this}});var QS=Ag.WeakMap;!function(g){g.exports=QS}(Xz);var US,_S,HS,KS,XS,JS=e(Kz);function qS(g,t,e,A){if("a"===e&&!A)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?g!==t||!A:!t.has(g))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===e?A:"a"===e?A.call(g):A?A.value:t.get(g)}function $S(g,t,e,A,C){if("m"===A)throw new TypeError("Private method is not writable");if("a"===A&&!C)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?g!==t||!C:!t.has(g))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===A?C.call(g,e):C?C.value=e:t.set(g,e),e}function gZ(g,t){var e=void 0!==kl&&bn(g)||g["@@iterator"];if(!e){if(Vl(g)||(e=function(g,t){var e;if(!g)return;if("string"==typeof g)return tZ(g,t);var A=Sl(e=Object.prototype.toString.call(g)).call(e,8,-1);"Object"===A&&g.constructor&&(A=g.constructor.name);if("Map"===A||"Set"===A)return Jo(g);if("Arguments"===A||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(A))return tZ(g,t)}(g))||t&&g&&"number"==typeof g.length){e&&(g=e);var A=0,C=function(){};return{s:C,n:function(){return A>=g.length?{done:!0}:{done:!1,value:g[A++]}},e:function(g){throw g},f:C}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var I,i=!0,o=!1;return{s:function(){e=e.call(g)},n:function(){var g=e.next();return i=g.done,g},e:function(g){o=!0,I=g},f:function(){try{i||null==e.return||e.return()}finally{if(o)throw I}}}}function tZ(g,t){(null==t||t>g.length)&&(t=g.length);for(var e=0,A=new Array(t);e<t;e++)A[e]=g[e];return A}function eZ(g,t){var e,A=new DN,C=gZ(t);try{for(C.s();!(e=C.n()).done;){var I=e.value;g.has(I)||A.add(I)}}catch(g){C.e(g)}finally{C.f()}return A}var AZ=function(){function g(){cd(this,g),US.set(this,new DN),_S.set(this,new DN)}return Bh(g,[{key:"size",get:function(){return qS(this,_S,"f").size}},{key:"add",value:function(){for(var g=arguments.length,t=new Array(g),e=0;e<g;e++)t[e]=arguments[e];for(var A=0,C=t;A<C.length;A++){var I=C[A];qS(this,_S,"f").add(I)}}},{key:"delete",value:function(){for(var g=arguments.length,t=new Array(g),e=0;e<g;e++)t[e]=arguments[e];for(var A=0,C=t;A<C.length;A++){var I=C[A];qS(this,_S,"f").delete(I)}}},{key:"clear",value:function(){qS(this,_S,"f").clear()}},{key:"getSelection",value:function(){return wl(qS(this,_S,"f"))}},{key:"getChanges",value:function(){return{added:wl(eZ(qS(this,US,"f"),qS(this,_S,"f"))),deleted:wl(eZ(qS(this,_S,"f"),qS(this,US,"f"))),previous:wl(new DN(qS(this,US,"f"))),current:wl(new DN(qS(this,_S,"f")))}}},{key:"commit",value:function(){var g=this.getChanges();$S(this,US,qS(this,_S,"f"),"f"),$S(this,_S,new DN(qS(this,US,"f")),"f");var t,e=gZ(g.added);try{for(e.s();!(t=e.n()).done;){t.value.select()}}catch(g){e.e(g)}finally{e.f()}var A,C=gZ(g.deleted);try{for(C.s();!(A=C.n()).done;){A.value.unselect()}}catch(g){C.e(g)}finally{C.f()}return g}}]),g}();US=new JS,_S=new JS;var CZ=function(){function g(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:function(){};cd(this,g),HS.set(this,new AZ),KS.set(this,new AZ),XS.set(this,void 0),$S(this,XS,t,"f")}return Bh(g,[{key:"sizeNodes",get:function(){return qS(this,HS,"f").size}},{key:"sizeEdges",get:function(){return qS(this,KS,"f").size}},{key:"getNodes",value:function(){return qS(this,HS,"f").getSelection()}},{key:"getEdges",value:function(){return qS(this,KS,"f").getSelection()}},{key:"addNodes",value:function(){var g;(g=qS(this,HS,"f")).add.apply(g,arguments)}},{key:"addEdges",value:function(){var g;(g=qS(this,KS,"f")).add.apply(g,arguments)}},{key:"deleteNodes",value:function(g){qS(this,HS,"f").delete(g)}},{key:"deleteEdges",value:function(g){qS(this,KS,"f").delete(g)}},{key:"clear",value:function(){qS(this,HS,"f").clear(),qS(this,KS,"f").clear()}},{key:"commit",value:function(){for(var g,t,e={nodes:qS(this,HS,"f").commit(),edges:qS(this,KS,"f").commit()},A=arguments.length,C=new Array(A),I=0;I<A;I++)C[I]=arguments[I];return(g=qS(this,XS,"f")).call.apply(g,Bl(t=[this,e]).call(t,C)),e}}]),g}();function IZ(g,t){var e=void 0!==kl&&bn(g)||g["@@iterator"];if(!e){if(Vl(g)||(e=function(g,t){var e;if(!g)return;if("string"==typeof g)return iZ(g,t);var A=Sl(e=Object.prototype.toString.call(g)).call(e,8,-1);"Object"===A&&g.constructor&&(A=g.constructor.name);if("Map"===A||"Set"===A)return Jo(g);if("Arguments"===A||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(A))return iZ(g,t)}(g))||t&&g&&"number"==typeof g.length){e&&(g=e);var A=0,C=function(){};return{s:C,n:function(){return A>=g.length?{done:!0}:{done:!1,value:g[A++]}},e:function(g){throw g},f:C}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var I,i=!0,o=!1;return{s:function(){e=e.call(g)},n:function(){var g=e.next();return i=g.done,g},e:function(g){o=!0,I=g},f:function(){try{i||null==e.return||e.return()}finally{if(o)throw I}}}}function iZ(g,t){(null==t||t>g.length)&&(t=g.length);for(var e=0,A=new Array(t);e<t;e++)A[e]=g[e];return A}HS=new JS,KS=new JS,XS=new JS;var oZ=function(){function g(t,e){var A=this;cd(this,g),this.body=t,this.canvas=e,this._selectionAccumulator=new CZ,this.hoverObj={nodes:{},edges:{}},this.options={},this.defaultOptions={multiselect:!1,selectable:!0,selectConnectedEdges:!0,hoverConnectedEdges:!0},yA(this.options,this.defaultOptions),this.body.emitter.on("_dataChanged",(function(){A.updateSelection()}))}return Bh(g,[{key:"setOptions",value:function(g){if(void 0!==g){Sm(["multiselect","hoverConnectedEdges","selectable","selectConnectedEdges"],this.options,g)}}},{key:"selectOnPoint",value:function(g){var t=!1;if(!0===this.options.selectable){var e=this.getNodeAt(g)||this.getEdgeAt(g);this.unselectAll(),void 0!==e&&(t=this.selectObject(e)),this.body.emitter.emit("_requestRedraw")}return t}},{key:"selectAdditionalOnPoint",value:function(g){var t=!1;if(!0===this.options.selectable){var e=this.getNodeAt(g)||this.getEdgeAt(g);void 0!==e&&(t=!0,!0===e.isSelected()?this.deselectObject(e):this.selectObject(e),this.body.emitter.emit("_requestRedraw"))}return t}},{key:"_initBaseEvent",value:function(g,t){var e={};return e.pointer={DOM:{x:t.x,y:t.y},canvas:this.canvas.DOMtoCanvas(t)},e.event=g,e}},{key:"generateClickEvent",value:function(g,t,e,A){var C=arguments.length>4&&void 0!==arguments[4]&&arguments[4],I=this._initBaseEvent(t,e);if(!0===C)I.nodes=[],I.edges=[];else{var i=this.getSelection();I.nodes=i.nodes,I.edges=i.edges}void 0!==A&&(I.previousSelection=A),"click"==g&&(I.items=this.getClickedItems(e)),void 0!==t.controlEdge&&(I.controlEdge=t.controlEdge),this.body.emitter.emit(g,I)}},{key:"selectObject",value:function(g){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.options.selectConnectedEdges;if(void 0!==g){if(g instanceof sB){var e;if(!0===t)(e=this._selectionAccumulator).addEdges.apply(e,wl(g.edges));this._selectionAccumulator.addNodes(g)}else this._selectionAccumulator.addEdges(g);return!0}return!1}},{key:"deselectObject",value:function(g){!0===g.isSelected()&&(g.selected=!1,this._removeFromSelection(g))}},{key:"_getAllNodesOverlappingWith",value:function(g){for(var t=[],e=this.body.nodes,A=0;A<this.body.nodeIndices.length;A++){var C=this.body.nodeIndices[A];e[C].isOverlappingWith(g)&&t.push(C)}return t}},{key:"_pointerToPositionObject",value:function(g){var t=this.canvas.DOMtoCanvas(g);return{left:t.x-1,top:t.y+1,right:t.x+1,bottom:t.y-1}}},{key:"getNodeAt",value:function(g){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],e=this._pointerToPositionObject(g),A=this._getAllNodesOverlappingWith(e);return A.length>0?!0===t?this.body.nodes[A[A.length-1]]:A[A.length-1]:void 0}},{key:"_getEdgesOverlappingWith",value:function(g,t){for(var e=this.body.edges,A=0;A<this.body.edgeIndices.length;A++){var C=this.body.edgeIndices[A];e[C].isOverlappingWith(g)&&t.push(C)}}},{key:"_getAllEdgesOverlappingWith",value:function(g){var t=[];return this._getEdgesOverlappingWith(g,t),t}},{key:"getEdgeAt",value:function(g){for(var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],e=this.canvas.DOMtoCanvas(g),A=10,C=null,I=this.body.edges,i=0;i<this.body.edgeIndices.length;i++){var o=this.body.edgeIndices[i],n=I[o];if(n.connected){var r=n.from.x,s=n.from.y,a=n.to.x,d=n.to.y,h=n.edgeType.getDistanceToEdge(r,s,a,d,e.x,e.y);h<A&&(C=o,A=h)}}return null!==C?!0===t?this.body.edges[C]:C:void 0}},{key:"_addToHover",value:function(g){g instanceof sB?this.hoverObj.nodes[g.id]=g:this.hoverObj.edges[g.id]=g}},{key:"_removeFromSelection",value:function(g){var t;g instanceof sB?(this._selectionAccumulator.deleteNodes(g),(t=this._selectionAccumulator).deleteEdges.apply(t,wl(g.edges))):this._selectionAccumulator.deleteEdges(g)}},{key:"unselectAll",value:function(){this._selectionAccumulator.clear()}},{key:"getSelectedNodeCount",value:function(){return this._selectionAccumulator.sizeNodes}},{key:"getSelectedEdgeCount",value:function(){return this._selectionAccumulator.sizeEdges}},{key:"_hoverConnectedEdges",value:function(g){for(var t=0;t<g.edges.length;t++){var e=g.edges[t];e.hover=!0,this._addToHover(e)}}},{key:"emitBlurEvent",value:function(g,t,e){var A=this._initBaseEvent(g,t);!0===e.hover&&(e.hover=!1,e instanceof sB?(A.node=e.id,this.body.emitter.emit("blurNode",A)):(A.edge=e.id,this.body.emitter.emit("blurEdge",A)))}},{key:"emitHoverEvent",value:function(g,t,e){var A=this._initBaseEvent(g,t),C=!1;return!1===e.hover&&(e.hover=!0,this._addToHover(e),C=!0,e instanceof sB?(A.node=e.id,this.body.emitter.emit("hoverNode",A)):(A.edge=e.id,this.body.emitter.emit("hoverEdge",A))),C}},{key:"hoverObject",value:function(g,t){var e=this.getNodeAt(t);void 0===e&&(e=this.getEdgeAt(t));var A=!1;for(var C in this.hoverObj.nodes)Object.prototype.hasOwnProperty.call(this.hoverObj.nodes,C)&&(void 0===e||e instanceof sB&&e.id!=C||e instanceof vz)&&(this.emitBlurEvent(g,t,this.hoverObj.nodes[C]),delete this.hoverObj.nodes[C],A=!0);for(var I in this.hoverObj.edges)Object.prototype.hasOwnProperty.call(this.hoverObj.edges,I)&&(!0===A?(this.hoverObj.edges[I].hover=!1,delete this.hoverObj.edges[I]):(void 0===e||e instanceof vz&&e.id!=I||e instanceof sB&&!e.hover)&&(this.emitBlurEvent(g,t,this.hoverObj.edges[I]),delete this.hoverObj.edges[I],A=!0));if(void 0!==e){var i=Cc(this.hoverObj.edges).length,o=Cc(this.hoverObj.nodes).length;(A||e instanceof vz&&0===i&&0===o||e instanceof sB&&0===i&&0===o)&&(A=this.emitHoverEvent(g,t,e)),e instanceof sB&&!0===this.options.hoverConnectedEdges&&this._hoverConnectedEdges(e)}!0===A&&this.body.emitter.emit("_requestRedraw")}},{key:"commitWithoutEmitting",value:function(){this._selectionAccumulator.commit()}},{key:"commitAndEmit",value:function(g,t){var e=!1,A=this._selectionAccumulator.commit(),C={nodes:A.nodes.previous,edges:A.edges.previous};A.edges.deleted.length>0&&(this.generateClickEvent("deselectEdge",t,g,C),e=!0),A.nodes.deleted.length>0&&(this.generateClickEvent("deselectNode",t,g,C),e=!0),A.nodes.added.length>0&&(this.generateClickEvent("selectNode",t,g),e=!0),A.edges.added.length>0&&(this.generateClickEvent("selectEdge",t,g),e=!0),!0===e&&this.generateClickEvent("select",t,g)}},{key:"getSelection",value:function(){return{nodes:this.getSelectedNodeIds(),edges:this.getSelectedEdgeIds()}}},{key:"getSelectedNodes",value:function(){return this._selectionAccumulator.getNodes()}},{key:"getSelectedEdges",value:function(){return this._selectionAccumulator.getEdges()}},{key:"getSelectedNodeIds",value:function(){var g;return ql(g=this._selectionAccumulator.getNodes()).call(g,(function(g){return g.id}))}},{key:"getSelectedEdgeIds",value:function(){var g;return ql(g=this._selectionAccumulator.getEdges()).call(g,(function(g){return g.id}))}},{key:"setSelection",value:function(g){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!g||!g.nodes&&!g.edges)throw new TypeError("Selection must be an object with nodes and/or edges properties");if((t.unselectAll||void 0===t.unselectAll)&&this.unselectAll(),g.nodes){var e,A=IZ(g.nodes);try{for(A.s();!(e=A.n()).done;){var C=e.value,I=this.body.nodes[C];if(!I)throw new RangeError('Node with id "'+C+'" not found');this.selectObject(I,t.highlightEdges)}}catch(g){A.e(g)}finally{A.f()}}if(g.edges){var i,o=IZ(g.edges);try{for(o.s();!(i=o.n()).done;){var n=i.value,r=this.body.edges[n];if(!r)throw new RangeError('Edge with id "'+n+'" not found');this.selectObject(r)}}catch(g){o.e(g)}finally{o.f()}}this.body.emitter.emit("_requestRedraw"),this._selectionAccumulator.commit()}},{key:"selectNodes",value:function(g){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(!g||void 0===g.length)throw"Selection must be an array with ids";this.setSelection({nodes:g},{highlightEdges:t})}},{key:"selectEdges",value:function(g){if(!g||void 0===g.length)throw"Selection must be an array with ids";this.setSelection({edges:g})}},{key:"updateSelection",value:function(){for(var g in this._selectionAccumulator.getNodes())Object.prototype.hasOwnProperty.call(this.body.nodes,g.id)||this._selectionAccumulator.deleteNodes(g);for(var t in this._selectionAccumulator.getEdges())Object.prototype.hasOwnProperty.call(this.body.edges,t.id)||this._selectionAccumulator.deleteEdges(t)}},{key:"getClickedItems",value:function(g){for(var t=this.canvas.DOMtoCanvas(g),e=[],A=this.body.nodeIndices,C=this.body.nodes,I=A.length-1;I>=0;I--){var i=C[A[I]].getItemsOnPoint(t);e.push.apply(e,i)}for(var o=this.body.edgeIndices,n=this.body.edges,r=o.length-1;r>=0;r--){var s=n[o[r]].getItemsOnPoint(t);e.push.apply(e,s)}return e}}]),g}(),nZ={},rZ={get exports(){return nZ},set exports(g){nZ=g}},sZ={};!function(g){!function(g){function t(g,t){if(!(g instanceof t))throw new TypeError("Cannot call a class as a function")}g.__esModule=!0,g.sort=c;var e=32,A=7,C=256,I=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9];function i(g){return g<1e5?g<100?g<10?0:1:g<1e4?g<1e3?2:3:4:g<1e7?g<1e6?5:6:g<1e9?g<1e8?7:8:9}function o(g,t){if(g===t)return 0;if(~~g===g&&~~t===t){if(0===g||0===t)return g<t?-1:1;if(g<0||t<0){if(t>=0)return-1;if(g>=0)return 1;g=-g,t=-t}var e=i(g),A=i(t),C=0;return e<A?(g*=I[A-e-1],t/=10,C=-1):e>A&&(t*=I[e-A-1],g/=10,C=1),g===t?C:g<t?-1:1}var o=String(g),n=String(t);return o===n?0:o<n?-1:1}function n(g){for(var t=0;g>=e;)t|=1&g,g>>=1;return g+t}function r(g,t,e,A){var C=t+1;if(C===e)return 1;if(A(g[C++],g[t])<0){for(;C<e&&A(g[C],g[C-1])<0;)C++;s(g,t,C)}else for(;C<e&&A(g[C],g[C-1])>=0;)C++;return C-t}function s(g,t,e){for(e--;t<e;){var A=g[t];g[t++]=g[e],g[e--]=A}}function a(g,t,e,A,C){for(A===t&&A++;A<e;A++){for(var I=g[A],i=t,o=A;i<o;){var n=i+o>>>1;C(I,g[n])<0?o=n:i=n+1}var r=A-i;switch(r){case 3:g[i+3]=g[i+2];case 2:g[i+2]=g[i+1];case 1:g[i+1]=g[i];break;default:for(;r>0;)g[i+r]=g[i+r-1],r--}g[i]=I}}function d(g,t,e,A,C,I){var i=0,o=0,n=1;if(I(g,t[e+C])>0){for(o=A-C;n<o&&I(g,t[e+C+n])>0;)i=n,(n=1+(n<<1))<=0&&(n=o);n>o&&(n=o),i+=C,n+=C}else{for(o=C+1;n<o&&I(g,t[e+C-n])<=0;)i=n,(n=1+(n<<1))<=0&&(n=o);n>o&&(n=o);var r=i;i=C-n,n=C-r}for(i++;i<n;){var s=i+(n-i>>>1);I(g,t[e+s])>0?i=s+1:n=s}return n}function h(g,t,e,A,C,I){var i=0,o=0,n=1;if(I(g,t[e+C])<0){for(o=C+1;n<o&&I(g,t[e+C-n])<0;)i=n,(n=1+(n<<1))<=0&&(n=o);n>o&&(n=o);var r=i;i=C-n,n=C-r}else{for(o=A-C;n<o&&I(g,t[e+C+n])>=0;)i=n,(n=1+(n<<1))<=0&&(n=o);n>o&&(n=o),i+=C,n+=C}for(i++;i<n;){var s=i+(n-i>>>1);I(g,t[e+s])<0?n=s:i=s+1}return n}var l=function(){function g(e,I){t(this,g),this.array=null,this.compare=null,this.minGallop=A,this.length=0,this.tmpStorageLength=C,this.stackLength=0,this.runStart=null,this.runLength=null,this.stackSize=0,this.array=e,this.compare=I,this.length=e.length,this.length<2*C&&(this.tmpStorageLength=this.length>>>1),this.tmp=new Array(this.tmpStorageLength),this.stackLength=this.length<120?5:this.length<1542?10:this.length<119151?19:40,this.runStart=new Array(this.stackLength),this.runLength=new Array(this.stackLength)}return g.prototype.pushRun=function(g,t){this.runStart[this.stackSize]=g,this.runLength[this.stackSize]=t,this.stackSize+=1},g.prototype.mergeRuns=function(){for(;this.stackSize>1;){var g=this.stackSize-2;if(g>=1&&this.runLength[g-1]<=this.runLength[g]+this.runLength[g+1]||g>=2&&this.runLength[g-2]<=this.runLength[g]+this.runLength[g-1])this.runLength[g-1]<this.runLength[g+1]&&g--;else if(this.runLength[g]>this.runLength[g+1])break;this.mergeAt(g)}},g.prototype.forceMergeRuns=function(){for(;this.stackSize>1;){var g=this.stackSize-2;g>0&&this.runLength[g-1]<this.runLength[g+1]&&g--,this.mergeAt(g)}},g.prototype.mergeAt=function(g){var t=this.compare,e=this.array,A=this.runStart[g],C=this.runLength[g],I=this.runStart[g+1],i=this.runLength[g+1];this.runLength[g]=C+i,g===this.stackSize-3&&(this.runStart[g+1]=this.runStart[g+2],this.runLength[g+1]=this.runLength[g+2]),this.stackSize--;var o=h(e[I],e,A,C,0,t);A+=o,0!=(C-=o)&&0!==(i=d(e[A+C-1],e,I,i,i-1,t))&&(C<=i?this.mergeLow(A,C,I,i):this.mergeHigh(A,C,I,i))},g.prototype.mergeLow=function(g,t,e,C){var I=this.compare,i=this.array,o=this.tmp,n=0;for(n=0;n<t;n++)o[n]=i[g+n];var r=0,s=e,a=g;if(i[a++]=i[s++],0!=--C)if(1!==t){for(var l=this.minGallop;;){var c=0,u=0,p=!1;do{if(I(i[s],o[r])<0){if(i[a++]=i[s++],u++,c=0,0==--C){p=!0;break}}else if(i[a++]=o[r++],c++,u=0,1==--t){p=!0;break}}while((c|u)<l);if(p)break;do{if(0!==(c=h(i[s],o,r,t,0,I))){for(n=0;n<c;n++)i[a+n]=o[r+n];if(a+=c,r+=c,(t-=c)<=1){p=!0;break}}if(i[a++]=i[s++],0==--C){p=!0;break}if(0!==(u=d(o[r],i,s,C,0,I))){for(n=0;n<u;n++)i[a+n]=i[s+n];if(a+=u,s+=u,0==(C-=u)){p=!0;break}}if(i[a++]=o[r++],1==--t){p=!0;break}l--}while(c>=A||u>=A);if(p)break;l<0&&(l=0),l+=2}if(this.minGallop=l,l<1&&(this.minGallop=1),1===t){for(n=0;n<C;n++)i[a+n]=i[s+n];i[a+C]=o[r]}else{if(0===t)throw new Error("mergeLow preconditions were not respected");for(n=0;n<t;n++)i[a+n]=o[r+n]}}else{for(n=0;n<C;n++)i[a+n]=i[s+n];i[a+C]=o[r]}else for(n=0;n<t;n++)i[a+n]=o[r+n]},g.prototype.mergeHigh=function(g,t,e,C){var I=this.compare,i=this.array,o=this.tmp,n=0;for(n=0;n<C;n++)o[n]=i[e+n];var r=g+t-1,s=C-1,a=e+C-1,l=0,c=0;if(i[a--]=i[r--],0!=--t)if(1!==C){for(var u=this.minGallop;;){var p=0,f=0,v=!1;do{if(I(o[s],i[r])<0){if(i[a--]=i[r--],p++,f=0,0==--t){v=!0;break}}else if(i[a--]=o[s--],f++,p=0,1==--C){v=!0;break}}while((p|f)<u);if(v)break;do{if(0!=(p=t-h(o[s],i,g,t,t-1,I))){for(t-=p,c=1+(a-=p),l=1+(r-=p),n=p-1;n>=0;n--)i[c+n]=i[l+n];if(0===t){v=!0;break}}if(i[a--]=o[s--],1==--C){v=!0;break}if(0!=(f=C-d(i[r],o,0,C,C-1,I))){for(C-=f,c=1+(a-=f),l=1+(s-=f),n=0;n<f;n++)i[c+n]=o[l+n];if(C<=1){v=!0;break}}if(i[a--]=i[r--],0==--t){v=!0;break}u--}while(p>=A||f>=A);if(v)break;u<0&&(u=0),u+=2}if(this.minGallop=u,u<1&&(this.minGallop=1),1===C){for(c=1+(a-=t),l=1+(r-=t),n=t-1;n>=0;n--)i[c+n]=i[l+n];i[a]=o[s]}else{if(0===C)throw new Error("mergeHigh preconditions were not respected");for(l=a-(C-1),n=0;n<C;n++)i[l+n]=o[n]}}else{for(c=1+(a-=t),l=1+(r-=t),n=t-1;n>=0;n--)i[c+n]=i[l+n];i[a]=o[s]}else for(l=a-(C-1),n=0;n<C;n++)i[l+n]=o[n]},g}();function c(g,t,A,C){if(!Array.isArray(g))throw new TypeError("Can only sort arrays");t?"function"!=typeof t&&(C=A,A=t,t=o):t=o,A||(A=0),C||(C=g.length);var I=C-A;if(!(I<2)){var i=0;if(I<e)a(g,A,C,A+(i=r(g,A,C,t)),t);else{var s=new l(g,t),d=n(I);do{if((i=r(g,A,C,t))<d){var h=I;h>d&&(h=d),a(g,A,A+h,A+i,t),i=h}s.pushRun(A,i),s.mergeRuns(),I-=i,A+=i}while(0!==I);s.forceMergeRuns()}}}}(g)}(sZ),function(g){g.exports=sZ}(rZ);var aZ=e(nZ);function dZ(g){var t=function(){if("undefined"==typeof Reflect||!yP)return!1;if(yP.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(yP(Boolean,[],(function(){}))),!0}catch(g){return!1}}();return function(){var e,A=vk(g);if(t){var C=vk(this).constructor;e=yP(A,arguments,C)}else e=A.apply(this,arguments);return hk(this,e)}}var hZ=function(){function g(){cd(this,g)}return Bh(g,[{key:"abstract",value:function(){throw new Error("Can't instantiate abstract class!")}},{key:"fake_use",value:function(){}},{key:"curveType",value:function(){return this.abstract()}},{key:"getPosition",value:function(g){return this.fake_use(g),this.abstract()}},{key:"setPosition",value:function(g,t){var e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;this.fake_use(g,t,e),this.abstract()}},{key:"getTreeSize",value:function(g){return this.fake_use(g),this.abstract()}},{key:"sort",value:function(g){this.fake_use(g),this.abstract()}},{key:"fix",value:function(g,t){this.fake_use(g,t),this.abstract()}},{key:"shift",value:function(g,t){this.fake_use(g,t),this.abstract()}}]),g}(),lZ=function(g){dk(e,g);var t=dZ(e);function e(g){var A;return cd(this,e),(A=t.call(this)).layout=g,A}return Bh(e,[{key:"curveType",value:function(){return"horizontal"}},{key:"getPosition",value:function(g){return g.x}},{key:"setPosition",value:function(g,t){var e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;void 0!==e&&this.layout.hierarchical.addToOrdering(g,e),g.x=t}},{key:"getTreeSize",value:function(g){var t=this.layout.hierarchical.getTreeSize(this.layout.body.nodes,g);return{min:t.min_x,max:t.max_x}}},{key:"sort",value:function(g){nZ.sort(g,(function(g,t){return g.x-t.x}))}},{key:"fix",value:function(g,t){g.y=this.layout.options.hierarchical.levelSeparation*t,g.options.fixed.y=!0}},{key:"shift",value:function(g,t){this.layout.body.nodes[g].x+=t}}]),e}(hZ),cZ=function(g){dk(e,g);var t=dZ(e);function e(g){var A;return cd(this,e),(A=t.call(this)).layout=g,A}return Bh(e,[{key:"curveType",value:function(){return"vertical"}},{key:"getPosition",value:function(g){return g.y}},{key:"setPosition",value:function(g,t){var e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;void 0!==e&&this.layout.hierarchical.addToOrdering(g,e),g.y=t}},{key:"getTreeSize",value:function(g){var t=this.layout.hierarchical.getTreeSize(this.layout.body.nodes,g);return{min:t.min_y,max:t.max_y}}},{key:"sort",value:function(g){nZ.sort(g,(function(g,t){return g.y-t.y}))}},{key:"fix",value:function(g,t){g.x=this.layout.options.hierarchical.levelSeparation*t,g.options.fixed.x=!0}},{key:"shift",value:function(g,t){this.layout.body.nodes[g].y+=t}}]),e}(hZ),uZ={},pZ={get exports(){return uZ},set exports(g){uZ=g}},fZ=ur.every;De({target:"Array",proto:!0,forced:!cc("every")},{every:function(g){return fZ(this,g,arguments.length>1?arguments[1]:void 0)}});var vZ=FA("Array").every,yZ=rg,mZ=vZ,bZ=Array.prototype,wZ=function(g){var t=g.every;return g===bZ||yZ(bZ,g)&&t===bZ.every?mZ:t},xZ=wZ;!function(g){g.exports=xZ}(pZ);var kZ=e(uZ);function EZ(g,t){var e=void 0!==kl&&bn(g)||g["@@iterator"];if(!e){if(Vl(g)||(e=function(g,t){var e;if(!g)return;if("string"==typeof g)return OZ(g,t);var A=Sl(e=Object.prototype.toString.call(g)).call(e,8,-1);"Object"===A&&g.constructor&&(A=g.constructor.name);if("Map"===A||"Set"===A)return Jo(g);if("Arguments"===A||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(A))return OZ(g,t)}(g))||t&&g&&"number"==typeof g.length){e&&(g=e);var A=0,C=function(){};return{s:C,n:function(){return A>=g.length?{done:!0}:{done:!1,value:g[A++]}},e:function(g){throw g},f:C}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var I,i=!0,o=!1;return{s:function(){e=e.call(g)},n:function(){var g=e.next();return i=g.done,g},e:function(g){o=!0,I=g},f:function(){try{i||null==e.return||e.return()}finally{if(o)throw I}}}}function OZ(g,t){(null==t||t>g.length)&&(t=g.length);for(var e=0,A=new Array(t);e<t;e++)A[e]=g[e];return A}function TZ(g,t){var e=new DN;return Ec(g).call(g,(function(g){var t;Ec(t=g.edges).call(t,(function(g){g.connected&&e.add(g)}))})),Ec(e).call(e,(function(g){var e=g.from.id,A=g.to.id;null==t[e]&&(t[e]=0),(null==t[A]||t[e]>=t[A])&&(t[A]=t[e]+1)})),t}function DZ(g,t,e,A){var C,I,i=pf(null),o=iN(C=wl(QR(A).call(A))).call(C,(function(g,t){return g+1+t.edges.length}),0),n=e+"Id",r="to"===e?1:-1,s=EZ(A);try{var a=function(){var C=bl(I.value,2),s=C[0],a=C[1];if(!A.has(s)||!g(a))return"continue";i[s]=0;for(var d,h=[a],l=0,c=function(){var g,C;if(!A.has(s))return"continue";var I=i[d.id]+r;if(Ec(g=Ap(C=d.edges).call(C,(function(g){return g.connected&&g.to!==g.from&&g[e]!==d&&A.has(g.toId)&&A.has(g.fromId)}))).call(g,(function(g){var A=g[n],C=i[A];(null==C||t(I,C))&&(i[A]=I,h.push(g[e]))})),l>o)return{v:{v:TZ(A,i)}};++l};d=h.pop();){var u=c();if("continue"!==u&&"object"===kh(u))return u.v}};for(s.s();!(I=s.n()).done;){var d=a();if("continue"!==d&&"object"===kh(d))return d.v}}catch(g){s.e(g)}finally{s.f()}return i}var NZ=function(){function g(){cd(this,g),this.childrenReference={},this.parentReference={},this.trees={},this.distributionOrdering={},this.levels={},this.distributionIndex={},this.isTree=!1,this.treeIndex=-1}return Bh(g,[{key:"addRelation",value:function(g,t){void 0===this.childrenReference[g]&&(this.childrenReference[g]=[]),this.childrenReference[g].push(t),void 0===this.parentReference[t]&&(this.parentReference[t]=[]),this.parentReference[t].push(g)}},{key:"checkIfTree",value:function(){for(var g in this.parentReference)if(this.parentReference[g].length>1)return void(this.isTree=!1);this.isTree=!0}},{key:"numTrees",value:function(){return this.treeIndex+1}},{key:"setTreeIndex",value:function(g,t){void 0!==t&&void 0===this.trees[g.id]&&(this.trees[g.id]=t,this.treeIndex=Math.max(t,this.treeIndex))}},{key:"ensureLevel",value:function(g){void 0===this.levels[g]&&(this.levels[g]=0)}},{key:"getMaxLevel",value:function(g){var t=this,e={};return function g(A){if(void 0!==e[A])return e[A];var C=t.levels[A];if(t.childrenReference[A]){var I=t.childrenReference[A];if(I.length>0)for(var i=0;i<I.length;i++)C=Math.max(C,g(I[i]))}return e[A]=C,C}(g)}},{key:"levelDownstream",value:function(g,t){void 0===this.levels[t.id]&&(void 0===this.levels[g.id]&&(this.levels[g.id]=0),this.levels[t.id]=this.levels[g.id]+1)}},{key:"setMinLevelToZero",value:function(g){var t=1e9;for(var e in g)Object.prototype.hasOwnProperty.call(g,e)&&void 0!==this.levels[e]&&(t=Math.min(this.levels[e],t));for(var A in g)Object.prototype.hasOwnProperty.call(g,A)&&void 0!==this.levels[A]&&(this.levels[A]-=t)}},{key:"getTreeSize",value:function(g,t){var e=1e9,A=-1e9,C=1e9,I=-1e9;for(var i in this.trees)if(Object.prototype.hasOwnProperty.call(this.trees,i)&&this.trees[i]===t){var o=g[i];e=Math.min(o.x,e),A=Math.max(o.x,A),C=Math.min(o.y,C),I=Math.max(o.y,I)}return{min_x:e,max_x:A,min_y:C,max_y:I}}},{key:"hasSameParent",value:function(g,t){var e=this.parentReference[g.id],A=this.parentReference[t.id];if(void 0===e||void 0===A)return!1;for(var C=0;C<e.length;C++)for(var I=0;I<A.length;I++)if(e[C]==A[I])return!0;return!1}},{key:"inSameSubNetwork",value:function(g,t){return this.trees[g.id]===this.trees[t.id]}},{key:"getLevels",value:function(){return Cc(this.distributionOrdering)}},{key:"addToOrdering",value:function(g,t){void 0===this.distributionOrdering[t]&&(this.distributionOrdering[t]=[]);var e=!1,A=this.distributionOrdering[t];for(var C in A)if(A[C]===g){e=!0;break}e||(this.distributionOrdering[t].push(g),this.distributionIndex[g.id]=this.distributionOrdering[t].length-1)}}]),g}(),RZ=function(){function g(t){cd(this,g),this.body=t,this._resetRNG(Math.random()+":"+ac()),this.setPhysics=!1,this.options={},this.optionsBackup={physics:{}},this.defaultOptions={randomSeed:void 0,improvedLayout:!0,clusterThreshold:150,hierarchical:{enabled:!1,levelSeparation:150,nodeSpacing:100,treeSpacing:200,blockShifting:!0,edgeMinimization:!0,parentCentralization:!0,direction:"UD",sortMethod:"hubsize"}},yA(this.options,this.defaultOptions),this.bindEventListeners()}return Bh(g,[{key:"bindEventListeners",value:function(){var g=this;this.body.emitter.on("_dataChanged",(function(){g.setupHierarchicalLayout()})),this.body.emitter.on("_dataLoaded",(function(){g.layoutNetwork()})),this.body.emitter.on("_resetHierarchicalLayout",(function(){g.setupHierarchicalLayout()})),this.body.emitter.on("_adjustEdgesForHierarchicalLayout",(function(){if(!0===g.options.hierarchical.enabled){var t=g.direction.curveType();g.body.emitter.emit("_forceDisableDynamicCurves",t,!1)}}))}},{key:"setOptions",value:function(g,t){if(void 0!==g){var e=this.options.hierarchical,A=e.enabled;if(Sm(["randomSeed","improvedLayout","clusterThreshold"],this.options,g),qm(this.options,g,"hierarchical"),void 0!==g.randomSeed&&this._resetRNG(g.randomSeed),!0===e.enabled)return!0===A&&this.body.emitter.emit("refresh",!0),"RL"===e.direction||"DU"===e.direction?e.levelSeparation>0&&(e.levelSeparation*=-1):e.levelSeparation<0&&(e.levelSeparation*=-1),this.setDirectionStrategy(),this.body.emitter.emit("_resetHierarchicalLayout"),this.adaptAllOptionsForHierarchicalLayout(t);if(!0===A)return this.body.emitter.emit("refresh"),Fm(t,this.optionsBackup)}return t}},{key:"_resetRNG",value:function(g){this.initialRandomSeed=g,this._rng=xm(this.initialRandomSeed)}},{key:"adaptAllOptionsForHierarchicalLayout",value:function(g){if(!0===this.options.hierarchical.enabled){var t=this.optionsBackup.physics;void 0===g.physics||!0===g.physics?(g.physics={enabled:void 0===t.enabled||t.enabled,solver:"hierarchicalRepulsion"},t.enabled=void 0===t.enabled||t.enabled,t.solver=t.solver||"barnesHut"):"object"===kh(g.physics)?(t.enabled=void 0===g.physics.enabled||g.physics.enabled,t.solver=g.physics.solver||"barnesHut",g.physics.solver="hierarchicalRepulsion"):!1!==g.physics&&(t.solver="barnesHut",g.physics={solver:"hierarchicalRepulsion"});var e=this.direction.curveType();if(void 0===g.edges)this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},g.edges={smooth:!1};else if(void 0===g.edges.smooth)this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},g.edges.smooth=!1;else if("boolean"==typeof g.edges.smooth)this.optionsBackup.edges={smooth:g.edges.smooth},g.edges.smooth={enabled:g.edges.smooth,type:e};else{var A=g.edges.smooth;void 0!==A.type&&"dynamic"!==A.type&&(e=A.type),this.optionsBackup.edges={smooth:{enabled:void 0===A.enabled||A.enabled,type:void 0===A.type?"dynamic":A.type,roundness:void 0===A.roundness?.5:A.roundness,forceDirection:void 0!==A.forceDirection&&A.forceDirection}},g.edges.smooth={enabled:void 0===A.enabled||A.enabled,type:e,roundness:void 0===A.roundness?.5:A.roundness,forceDirection:void 0!==A.forceDirection&&A.forceDirection}}this.body.emitter.emit("_forceDisableDynamicCurves",e)}return g}},{key:"positionInitially",value:function(g){if(!0!==this.options.hierarchical.enabled){this._resetRNG(this.initialRandomSeed);for(var t=g.length+50,e=0;e<g.length;e++){var A=g[e],C=2*Math.PI*this._rng();void 0===A.x&&(A.x=t*Math.cos(C)),void 0===A.y&&(A.y=t*Math.sin(C))}}}},{key:"layoutNetwork",value:function(){if(!0!==this.options.hierarchical.enabled&&!0===this.options.improvedLayout){for(var g=this.body.nodeIndices,t=0,e=0;e<g.length;e++){!0===this.body.nodes[g[e]].predefinedPosition&&(t+=1)}if(t<.5*g.length){var A=0,C=this.options.clusterThreshold,I={clusterNodeProperties:{shape:"ellipse",label:"",group:"",font:{multi:!1}},clusterEdgeProperties:{label:"",font:{multi:!1},smooth:{enabled:!1}}};if(g.length>C){for(var i=g.length;g.length>C&&A<=10;){A+=1;var o=g.length;if(A%3==0?this.body.modules.clustering.clusterBridges(I):this.body.modules.clustering.clusterOutliers(I),o==g.length&&A%3!=0)return this._declusterAll(),this.body.emitter.emit("_layoutFailed"),void console.info("This network could not be positioned by this version of the improved layout algorithm. Please disable improvedLayout for better performance.")}this.body.modules.kamadaKawai.setOptions({springLength:Math.max(150,2*i)})}A>10&&console.info("The clustering didn't succeed within the amount of interations allowed, progressing with partial result."),this.body.modules.kamadaKawai.solve(g,this.body.edgeIndices,!0),this._shiftToCenter();for(var n=0;n<g.length;n++){var r=this.body.nodes[g[n]];!1===r.predefinedPosition&&(r.x+=70*(.5-this._rng()),r.y+=70*(.5-this._rng()))}this._declusterAll(),this.body.emitter.emit("_repositionBezierNodes")}}}},{key:"_shiftToCenter",value:function(){for(var g=Pz.getRangeCore(this.body.nodes,this.body.nodeIndices),t=Pz.findCenter(g),e=0;e<this.body.nodeIndices.length;e++){var A=this.body.nodes[this.body.nodeIndices[e]];A.x-=t.x,A.y-=t.y}}},{key:"_declusterAll",value:function(){for(var g=!0;!0===g;){g=!1;for(var t=0;t<this.body.nodeIndices.length;t++)!0===this.body.nodes[this.body.nodeIndices[t]].isCluster&&(g=!0,this.body.modules.clustering.openCluster(this.body.nodeIndices[t],{},!1));!0===g&&this.body.emitter.emit("_dataChanged")}}},{key:"getSeed",value:function(){return this.initialRandomSeed}},{key:"setupHierarchicalLayout",value:function(){if(!0===this.options.hierarchical.enabled&&this.body.nodeIndices.length>0){var g,t,e=!1,A=!1;for(t in this.lastNodeOnLevel={},this.hierarchical=new NZ,this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,t)&&(void 0!==(g=this.body.nodes[t]).options.level?(e=!0,this.hierarchical.levels[t]=g.options.level):A=!0);if(!0===A&&!0===e)throw new Error("To use the hierarchical layout, nodes require either no predefined levels or levels have to be defined for all nodes.");if(!0===A){var C=this.options.hierarchical.sortMethod;"hubsize"===C?this._determineLevelsByHubsize():"directed"===C?this._determineLevelsDirected():"custom"===C&&this._determineLevelsCustomCallback()}for(var I in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,I)&&this.hierarchical.ensureLevel(I);var i=this._getDistribution();this._generateMap(),this._placeNodesByHierarchy(i),this._condenseHierarchy(),this._shiftToCenter()}}},{key:"_condenseHierarchy",value:function(){var g=this,t=!1,e={},A=function(t,e){var A=g.hierarchical.trees;for(var C in A)Object.prototype.hasOwnProperty.call(A,C)&&A[C]===t&&g.direction.shift(C,e)},C=function(){for(var t=[],e=0;e<g.hierarchical.numTrees();e++)t.push(g.direction.getTreeSize(e));return t},I=function t(e,A){if(!A[e.id]&&(A[e.id]=!0,g.hierarchical.childrenReference[e.id])){var C=g.hierarchical.childrenReference[e.id];if(C.length>0)for(var I=0;I<C.length;I++)t(g.body.nodes[C[I]],A)}},i=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e9,A=1e9,C=1e9,I=1e9,i=-1e9;for(var o in t)if(Object.prototype.hasOwnProperty.call(t,o)){var n=g.body.nodes[o],r=g.hierarchical.levels[n.id],s=g.direction.getPosition(n),a=bl(g._getSpaceAroundNode(n,t),2),d=a[0],h=a[1];A=Math.min(d,A),C=Math.min(h,C),r<=e&&(I=Math.min(s,I),i=Math.max(s,i))}return[I,i,A,C]},o=function(t,e){var A=g.hierarchical.getMaxLevel(t.id),C=g.hierarchical.getMaxLevel(e.id);return Math.min(A,C)},n=function(t,e,A){for(var C=g.hierarchical,I=0;I<e.length;I++){var i=e[I],o=C.distributionOrdering[i];if(o.length>1)for(var n=0;n<o.length-1;n++){var r=o[n],s=o[n+1];C.hasSameParent(r,s)&&C.inSameSubNetwork(r,s)&&t(r,s,A)}}},r=function(e,A){var C=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=g.direction.getPosition(e),r=g.direction.getPosition(A),s=Math.abs(r-n),a=g.options.hierarchical.nodeSpacing;if(s>a){var d={},h={};I(e,d),I(A,h);var l=o(e,A),c=i(d,l),u=i(h,l),p=c[1],f=u[0],v=u[2];if(Math.abs(p-f)>a){var y=p-f+a;y<-v+a&&(y=-v+a),y<0&&(g._shiftBlock(A.id,y),t=!0,!0===C&&g._centerParent(A))}}},s=function(A,C){for(var o=C.id,n=C.edges,r=g.hierarchical.levels[C.id],s=g.options.hierarchical.levelSeparation*g.options.hierarchical.levelSeparation,a={},d=[],h=0;h<n.length;h++){var l=n[h];if(l.toId!=l.fromId){var c=l.toId==o?l.from:l.to;a[n[h].id]=c,g.hierarchical.levels[c.id]<r&&d.push(l)}}var u=function(t,e){for(var A=0,C=0;C<e.length;C++)if(void 0!==a[e[C].id]){var I=g.direction.getPosition(a[e[C].id])-t;A+=I/Math.sqrt(I*I+s)}return A},p=function(t,e){for(var A=0,C=0;C<e.length;C++)if(void 0!==a[e[C].id]){var I=g.direction.getPosition(a[e[C].id])-t;A-=s*Math.pow(I*I+s,-1.5)}return A},f=function(t,e){for(var A=g.direction.getPosition(C),I={},i=0;i<t;i++){var o=u(A,e),n=p(A,e);if(void 0!==I[A-=Math.max(-40,Math.min(40,Math.round(o/n)))])break;I[A]=i}return A},v=f(A,d);!function(A){var o=g.direction.getPosition(C);if(void 0===e[C.id]){var n={};I(C,n),e[C.id]=n}var r=i(e[C.id]),s=r[2],a=r[3],d=A-o,h=0;d>0?h=Math.min(d,a-g.options.hierarchical.nodeSpacing):d<0&&(h=-Math.min(-d,s-g.options.hierarchical.nodeSpacing)),0!=h&&(g._shiftBlock(C.id,h),t=!0)}(v),function(e){var A=g.direction.getPosition(C),I=bl(g._getSpaceAroundNode(C),2),i=I[0],o=I[1],n=e-A,r=A;n>0?r=Math.min(A+(o-g.options.hierarchical.nodeSpacing),e):n<0&&(r=Math.max(A-(i-g.options.hierarchical.nodeSpacing),e)),r!==A&&(g.direction.setPosition(C,r),t=!0)}(v=f(A,n))};!0===this.options.hierarchical.blockShifting&&(function(e){var A=g.hierarchical.getLevels();A=Gc(A).call(A);for(var C=0;C<e&&(t=!1,n(r,A,!0),!0===t);C++);}(5),function(){for(var t in g.body.nodes)Object.prototype.hasOwnProperty.call(g.body.nodes,t)&&g._centerParent(g.body.nodes[t])}()),!0===this.options.hierarchical.edgeMinimization&&function(e){var A=g.hierarchical.getLevels();A=Gc(A).call(A);for(var C=0;C<e;C++){t=!1;for(var I=0;I<A.length;I++)for(var i=A[I],o=g.hierarchical.distributionOrdering[i],n=0;n<o.length;n++)s(1e3,o[n]);if(!0!==t)break}}(20),!0===this.options.hierarchical.parentCentralization&&function(){var t=g.hierarchical.getLevels();t=Gc(t).call(t);for(var e=0;e<t.length;e++)for(var A=t[e],C=g.hierarchical.distributionOrdering[A],I=0;I<C.length;I++)g._centerParent(C[I])}(),function(){for(var t=C(),e=0,I=0;I<t.length-1;I++){e+=t[I].max-t[I+1].min+g.options.hierarchical.treeSpacing,A(I+1,e)}}()}},{key:"_getSpaceAroundNode",value:function(g,t){var e=!0;void 0===t&&(e=!1);var A=this.hierarchical.levels[g.id];if(void 0!==A){var C=this.hierarchical.distributionIndex[g.id],I=this.direction.getPosition(g),i=this.hierarchical.distributionOrdering[A],o=1e9,n=1e9;if(0!==C){var r=i[C-1];if(!0===e&&void 0===t[r.id]||!1===e)o=I-this.direction.getPosition(r)}if(C!=i.length-1){var s=i[C+1];if(!0===e&&void 0===t[s.id]||!1===e){var a=this.direction.getPosition(s);n=Math.min(n,a-I)}}return[o,n]}return[0,0]}},{key:"_centerParent",value:function(g){if(this.hierarchical.parentReference[g.id])for(var t=this.hierarchical.parentReference[g.id],e=0;e<t.length;e++){var A=t[e],C=this.body.nodes[A],I=this.hierarchical.childrenReference[A];if(void 0!==I){var i=this._getCenterPosition(I),o=this.direction.getPosition(C),n=bl(this._getSpaceAroundNode(C),2),r=n[0],s=n[1],a=o-i;(a<0&&Math.abs(a)<s-this.options.hierarchical.nodeSpacing||a>0&&Math.abs(a)<r-this.options.hierarchical.nodeSpacing)&&this.direction.setPosition(C,i)}}}},{key:"_placeNodesByHierarchy",value:function(g){for(var t in this.positionedNodes={},g)if(Object.prototype.hasOwnProperty.call(g,t)){var e,A=Cc(g[t]);A=this._indexArrayToNodes(A),wR(e=this.direction).call(e,A);for(var C=0,I=0;I<A.length;I++){var i=A[I];if(void 0===this.positionedNodes[i.id]){var o=this.options.hierarchical.nodeSpacing,n=o*C;C>0&&(n=this.direction.getPosition(A[I-1])+o),this.direction.setPosition(i,n,t),this._validatePositionAndContinue(i,t,n),C++}}}}},{key:"_placeBranchNodes",value:function(g,t){var e,A=this.hierarchical.childrenReference[g];if(void 0!==A){for(var C=[],I=0;I<A.length;I++)C.push(this.body.nodes[A[I]]);wR(e=this.direction).call(e,C);for(var i=0;i<C.length;i++){var o=C[i],n=this.hierarchical.levels[o.id];if(!(n>t&&void 0===this.positionedNodes[o.id]))return;var r=this.options.hierarchical.nodeSpacing,s=void 0;s=0===i?this.direction.getPosition(this.body.nodes[g]):this.direction.getPosition(C[i-1])+r,this.direction.setPosition(o,s,n),this._validatePositionAndContinue(o,n,s)}var a=this._getCenterPosition(C);this.direction.setPosition(this.body.nodes[g],a,t)}}},{key:"_validatePositionAndContinue",value:function(g,t,e){if(this.hierarchical.isTree){if(void 0!==this.lastNodeOnLevel[t]){var A=this.direction.getPosition(this.body.nodes[this.lastNodeOnLevel[t]]);if(e-A<this.options.hierarchical.nodeSpacing){var C=A+this.options.hierarchical.nodeSpacing-e,I=this._findCommonParent(this.lastNodeOnLevel[t],g.id);this._shiftBlock(I.withChild,C)}}this.lastNodeOnLevel[t]=g.id,this.positionedNodes[g.id]=!0,this._placeBranchNodes(g.id,t)}}},{key:"_indexArrayToNodes",value:function(g){for(var t=[],e=0;e<g.length;e++)t.push(this.body.nodes[g[e]]);return t}},{key:"_getDistribution",value:function(){var g,t,e={};for(g in this.body.nodes)if(Object.prototype.hasOwnProperty.call(this.body.nodes,g)){t=this.body.nodes[g];var A=void 0===this.hierarchical.levels[g]?0:this.hierarchical.levels[g];this.direction.fix(t,A),void 0===e[A]&&(e[A]={}),e[A][g]=t}return e}},{key:"_getActiveEdges",value:function(g){var t=this,e=[];return Lm(g.edges,(function(g){var A;-1!==$p(A=t.body.edgeIndices).call(A,g.id)&&e.push(g)})),e}},{key:"_getHubSizes",value:function(){var g=this,t={};Lm(this.body.nodeIndices,(function(e){var A=g.body.nodes[e],C=g._getActiveEdges(A).length;t[C]=!0}));var e=[];return Lm(t,(function(g){e.push(Number(g))})),wR(aZ).call(aZ,e,(function(g,t){return t-g})),e}},{key:"_determineLevelsByHubsize",value:function(){for(var g=this,t=function(t,e){g.hierarchical.levelDownstream(t,e)},e=this._getHubSizes(),A=function(){var A=e[C];if(0===A)return"break";Lm(g.body.nodeIndices,(function(e){var C=g.body.nodes[e];A===g._getActiveEdges(C).length&&g._crawlNetwork(t,e)}))},C=0;C<e.length;++C){if("break"===A())break}}},{key:"_determineLevelsCustomCallback",value:function(){var g=this;this._crawlNetwork((function(t,e,A){var C=g.hierarchical.levels[t.id];void 0===C&&(C=g.hierarchical.levels[t.id]=1e5);var I=(Pz.cloneOptions(t,"node"),Pz.cloneOptions(e,"node"),void Pz.cloneOptions(A,"edge"));g.hierarchical.levels[e.id]=C+I})),this.hierarchical.setMinLevelToZero(this.body.nodes)}},{key:"_determineLevelsDirected",value:function(){var g,t=this,e=iN(g=this.body.nodeIndices).call(g,(function(g,e){return g.set(e,t.body.nodes[e]),g}),new Ex);"roots"===this.options.hierarchical.shakeTowards?this.hierarchical.levels=function(g){return DZ((function(t){var e,A;return kZ(e=Ap(A=t.edges).call(A,(function(t){return g.has(t.toId)}))).call(e,(function(g){return g.from===t}))}),(function(g,t){return t<g}),"to",g)}(e):this.hierarchical.levels=function(g){return DZ((function(t){var e,A;return kZ(e=Ap(A=t.edges).call(A,(function(t){return g.has(t.toId)}))).call(e,(function(g){return g.to===t}))}),(function(g,t){return t>g}),"from",g)}(e),this.hierarchical.setMinLevelToZero(this.body.nodes)}},{key:"_generateMap",value:function(){var g=this;this._crawlNetwork((function(t,e){g.hierarchical.levels[e.id]>g.hierarchical.levels[t.id]&&g.hierarchical.addRelation(t.id,e.id)})),this.hierarchical.checkIfTree()}},{key:"_crawlNetwork",value:function(){var g=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:function(){},e=arguments.length>1?arguments[1]:void 0,A={},C=function e(C,I){if(void 0===A[C.id]){var i;g.hierarchical.setTreeIndex(C,I),A[C.id]=!0;for(var o=g._getActiveEdges(C),n=0;n<o.length;n++){var r=o[n];!0===r.connected&&(i=r.toId==C.id?r.from:r.to,C.id!=i.id&&(t(C,i,r),e(i,I)))}}};if(void 0===e)for(var I=0,i=0;i<this.body.nodeIndices.length;i++){var o=this.body.nodeIndices[i];if(void 0===A[o])C(this.body.nodes[o],I),I+=1}else{var n=this.body.nodes[e];if(void 0===n)return void console.error("Node not found:",e);C(n)}}},{key:"_shiftBlock",value:function(g,t){var e=this,A={};!function g(C){if(!A[C]){A[C]=!0,e.direction.shift(C,t);var I=e.hierarchical.childrenReference[C];if(void 0!==I)for(var i=0;i<I.length;i++)g(I[i])}}(g)}},{key:"_findCommonParent",value:function(g,t){var e=this,A={};return function g(t,A){var C=e.hierarchical.parentReference[A];if(void 0!==C)for(var I=0;I<C.length;I++){var i=C[I];t[i]=!0,g(t,i)}}(A,g),function g(t,A){var C=e.hierarchical.parentReference[A];if(void 0!==C)for(var I=0;I<C.length;I++){var i=C[I];if(void 0!==t[i])return{foundParent:i,withChild:A};var o=g(t,i);if(null!==o.foundParent)return o}return{foundParent:null,withChild:A}}(A,t)}},{key:"setDirectionStrategy",value:function(){var g="UD"===this.options.hierarchical.direction||"DU"===this.options.hierarchical.direction;this.direction=g?new lZ(this):new cZ(this)}},{key:"_getCenterPosition",value:function(g){for(var t=1e9,e=-1e9,A=0;A<g.length;A++){var C=void 0;if(void 0!==g[A].id)C=g[A];else{var I=g[A];C=this.body.nodes[I]}var i=this.direction.getPosition(C);t=Math.min(t,i),e=Math.max(e,i)}return.5*(t+e)}}]),g}();function PZ(g,t){var e=void 0!==kl&&bn(g)||g["@@iterator"];if(!e){if(Vl(g)||(e=function(g,t){var e;if(!g)return;if("string"==typeof g)return MZ(g,t);var A=Sl(e=Object.prototype.toString.call(g)).call(e,8,-1);"Object"===A&&g.constructor&&(A=g.constructor.name);if("Map"===A||"Set"===A)return Jo(g);if("Arguments"===A||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(A))return MZ(g,t)}(g))||t&&g&&"number"==typeof g.length){e&&(g=e);var A=0,C=function(){};return{s:C,n:function(){return A>=g.length?{done:!0}:{done:!1,value:g[A++]}},e:function(g){throw g},f:C}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var I,i=!0,o=!1;return{s:function(){e=e.call(g)},n:function(){var g=e.next();return i=g.done,g},e:function(g){o=!0,I=g},f:function(){try{i||null==e.return||e.return()}finally{if(o)throw I}}}}function MZ(g,t){(null==t||t>g.length)&&(t=g.length);for(var e=0,A=new Array(t);e<t;e++)A[e]=g[e];return A}qA('div.vis-network div.vis-manipulation{background:#fff;background:-moz-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fff),color-stop(48%,#fcfcfc),color-stop(50%,#fafafa),color-stop(100%,#fcfcfc));background:-webkit-linear-gradient(top,#fff,#fcfcfc 48%,#fafafa 50%,#fcfcfc);background:-o-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:-ms-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:linear-gradient(180deg,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc);border:0 solid #d6d9d8;border-bottom:1px;box-sizing:content-box;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#fcfcfc",GradientType=0);height:28px;left:0;padding-top:4px;position:absolute;top:0;width:100%}div.vis-network button.vis-edit-mode,div.vis-network div.vis-edit-mode{height:30px;left:0;position:absolute;top:5px}div.vis-network button.vis-close{-webkit-touch-callout:none;background-color:transparent;background-image:url("data:image/png;base64,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/GMzLdsAADvGaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iCiAgICAgICAgICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iPgogICAgICAgICA8eG1wOkNyZWF0b3JUb29sPkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3htcDpDcmVhdG9yVG9vbD4KICAgICAgICAgPHhtcDpDcmVhdGVEYXRlPjIwMTQtMDItMTRUMTE6NTU6MzUrMDE6MDA8L3htcDpDcmVhdGVEYXRlPgogICAgICAgICA8eG1wOk1ldGFkYXRhRGF0ZT4yMDE0LTAyLTE0VDEyOjA1OjE3KzAxOjAwPC94bXA6TWV0YWRhdGFEYXRlPgogICAgICAgICA8eG1wOk1vZGlmeURhdGU+MjAxNC0wMi0xNFQxMjowNToxNyswMTowMDwveG1wOk1vZGlmeURhdGU+CiAgICAgICAgIDx4bXBNTTpJbnN0YW5jZUlEPnhtcC5paWQ6NjU0YmM5YmQtMWI2Yi1jYjRhLTllOWQtNWY2MzgxNDVjZjk0PC94bXBNTTpJbnN0YW5jZUlEPgogICAgICAgICA8eG1wTU06RG9jdW1lbnRJRD54bXAuZGlkOjk4MmM2MGIwLWUzZjMtMDk0MC04MjU0LTFiZTliNWE0ZTE4MzwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjk4MmM2MGIwLWUzZjMtMDk0MC04MjU0LTFiZTliNWE0ZTE4MzwveG1wTU06T3JpZ2luYWxEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06SGlzdG9yeT4KICAgICAgICAgICAgPHJkZjpTZXE+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmNyZWF0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo5ODJjNjBiMC1lM2YzLTA5NDAtODI1NC0xYmU5YjVhNGUxODM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMTRUMTE6NTU6MzUrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjIxODYxNmM2LTM1MWMtNDI0OS04YWFkLWJkZDQ2ZTczNWE0NDwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0xNFQxMTo1NTozNSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6NjU0YmM5YmQtMWI2Yi1jYjRhLTllOWQtNWY2MzgxNDVjZjk0PC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAyLTE0VDEyOjA1OjE3KzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgPC9yZGY6U2VxPgogICAgICAgICA8L3htcE1NOkhpc3Rvcnk+CiAgICAgICAgIDxkYzpmb3JtYXQ+aW1hZ2UvcG5nPC9kYzpmb3JtYXQ+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDAwMC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjc8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+NzwvZXhpZjpQaXhlbFlEaW1lbnNpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIAo8P3hwYWNrZXQgZW5kPSJ3Ij8+cZUZMwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAA2ElEQVR42gDLADT/AS0tLUQFBQUVFxcXtPHx8fPl5eUNCAgITCkpKesEHx8fGgYGBjH+/v4a+Pj4qgQEBFU6OjodMTExzwQUFBSvEBAQEfX19SD19fVqNDQ0CElJSd/9/f2vAwEBAfrn5+fkBwcHLRYWFgsXFxfz29vbo9LS0uwDDQ0NDfPz81orKysXIyMj+ODg4Avh4eEa/f391gMkJCRYPz8/KUhISOMCAgKh8fHxHRsbGx4UFBQQBDk5OeY7Ozv7CAgItPb29vMEBASaJSUlTQ0NDesDAEwpT0Ko8Ri2AAAAAElFTkSuQmCC");background-position:20px 3px;background-repeat:no-repeat;border:none;cursor:pointer;height:30px;position:absolute;right:0;top:0;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:30px}div.vis-network button.vis-close:hover{opacity:.6}div.vis-network div.vis-edit-mode button.vis-button,div.vis-network div.vis-manipulation button.vis-button{-webkit-touch-callout:none;background-color:transparent;background-position:0 0;background-repeat:no-repeat;border:none;-moz-border-radius:15px;border-radius:15px;box-sizing:content-box;cursor:pointer;float:left;font-family:verdana;font-size:12px;height:24px;margin-left:10px;padding:0 8px;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}div.vis-network div.vis-manipulation button.vis-button:hover{box-shadow:1px 1px 8px rgba(0,0,0,.2)}div.vis-network div.vis-manipulation button.vis-button:active{box-shadow:1px 1px 8px rgba(0,0,0,.5)}div.vis-network div.vis-manipulation button.vis-button.vis-back{background-image:url("data:image/png;base64,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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNTowMTowOSswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTU6MDE6MDkrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOmI2YjQwMjVkLTAxNjQtMzU0OC1hOTdlLTQ4ZmYxMWM3NTYzMzwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDpmOWQ3OGY4ZC1lNzY0LTc1NDgtODZiNy1iNmQ1OGMzZDg2OTc8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTU6MDE6MDkrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOmI2YjQwMjVkLTAxNjQtMzU0OC1hOTdlLTQ4ZmYxMWM3NTYzMzwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNTowMTowOSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOmY5ZDc4ZjhkLWU3NjQtNzU0OC04NmI3LWI2ZDU4YzNkODY5Nzwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4jq1U/AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAVTSURBVHjanFVfTFNnFP+d77ve8qeVFbBrpcVgRrCRFikFByLxwSAaE32oRCHD6JMxxhhn8G2RxxH3MsOTbyYsmCAxPMmMMYtkIUYmK60OO0qAK23BFlNob0uh3x7WS5jLZPpLbm6+k/P9zrm5v9855PF4UFhYCABgjIExBgAgIqRSqRIi6gDQRkQ1RGTB3wgR0e8AHgH4Sa/XR/EBiAiJRAJ04cIF5Ofng4g2n0gkUkxENwF0c843LzHGQEQQQkCLExEA9ALotVgsUQAQQmgNQhJCbF5kjCEUCl0moj4t5na7fTU1NUpVVVXUYrEkASAcDhe8efOmxOfzWScmJqoBdBNR99LS0hWz2dynNSSEAF28eBGFhYVgjCEcDn9HRD1EhIMHD3o9Hs9kWVlZAh9BKBQqGB4edr58+dKZ+6JbJpOpBwBWV1fB6+rqIMsyIpHIFcZYL2MMra2tY5cuXRrfuXNnBtvAYDBk3G63oqpqZm5uzgrgSDKZjBoMhueZTAbc5XIhFouVEtFTxhiOHTs2dv78eS8+Efv374+oqpqZnZ21cs5PJJPJPlmWkyynnBuMMTQ0NHi7uro+mVyDx+Pxulwu71ZOlkqlSonoJhGhvb39s8k1nDx50ss5hyRJN9PpdKlERB2aWjSVaEilUvzBgwcORVEs5eXloXPnzk1sV8BkMiUdDofP7/dXZ7PZDilnIhw4cGBeS1pbW2P37t1zBwKBikQiUUREWFhYsHHO0d7evm0Ru90+/+rVq2rO+XGJiJxEhMrKyhgAjI6OWoeHh5tWVla+4JzDZrO9bW5unhwcHGzz+/32np4e+xaDbfoHAMxmc6ijo2O0oqIiJkkSNjY2HBIRmRljMJvNyWfPnln7+/tPMMZQXl6+0NbW9qK2tjYcj8floaEhqKpq+HCkbD3PzMwYBgYG0NXV9UuusFna2kEgELAQEQ4dOvSis7PzN41Ar9dnrl27NqCNkv/C3bt3zy4tLVmICJxzEBFJRBQmorLFxcWCqqqq0Pj4eO3Y2JhbUZTdra2tL2pra8OJRGLHnTt3zkqS9K+huHU4EhHMZnMoGo0W5OIh7nK5jjLGKq1W69vDhw8rRqMxMjc3t2t5eXnX5ORklc/nM+fl5SWnpqa+0uv1K/n5+Ws6nW5NluXNd15e3ppOp1uz2WyzZ86cGQ0Gg6ZAIFCZzWZ/lYjokRDiuN/vt7W0tMw3NTUpbrd78P79++5gMFgRiUTKHj58WMYYQ3V19etTp05tq6Lp6Wkb5xxCiEfc7XZPM8a6FxcXTfX19a/1en2Gcy5qamreNjY2/qGq6joRZe12+9Tp06e3JY/FYgWPHz8+mhvr3/CWlpbk+vp6PmOseWVlBS6XS9GSJUkSdrs93NDQ8Oe+ffvC/8fJIyMjddFo9Esi6pVleVjT2m0A8Hq9zqGhIefnjoknT544A4GAM/eDbxMReFNTE0pKSpKqqsaI6Pj8/LxVVdWM3W6PfCr5xMTE1zllXS0uLn6aSqXAGxsbodPpoNfrn6uqCs75EUVRrJFIZMfevXsXdTrdxseIE4mEPDIyUu/3++tynd8yGo29RIR0Og26fv06ioqKwBgD5xzv3r27zBjrIyJIkgSHwzFZWVmp7NmzJ1ZaWpoAgGg0WqgoSvHMzIw1GAw6tvjhitFo7NPW5fv370Hd3d0oKCgA53zTQMvLy+VCiKuSJH0rSdLmztZytIWv5RPRD0T0Y3Fx8dzWfby6ugopHo//w4mcc8iyPMc5v5FOp7/PZrOdQohWInIC2C2EgBBigYi8Qoifs9lsv06nWyIiaFxagXg8jr8GAGxuIe7LBeWhAAAAAElFTkSuQmCC")}div.vis-network div.vis-manipulation div.vis-none:hover{box-shadow:1px 1px 8px transparent;cursor:default}div.vis-network div.vis-manipulation div.vis-none:active{box-shadow:1px 1px 8px transparent}div.vis-network div.vis-manipulation div.vis-none{line-height:23px;padding:0}div.vis-network div.vis-manipulation div.notification{font-weight:700;margin:2px}div.vis-network div.vis-manipulation button.vis-button.vis-add{background-image:url("data:image/png;base64,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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNDo0MDoyOSswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTQ6NDA6MjkrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjVkNWIwNmQwLTVmMjAtOGE0NC1hMzIwLWZmMTEzMzQwNDc0YjwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo2OWVmYWE1NS01ZTI5LTIzNGUtYTUzMy0xNDkxYjM1NDNmYmE8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTQ6NDA6MjkrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjVkNWIwNmQwLTVmMjAtOGE0NC1hMzIwLWZmMTEzMzQwNDc0Yjwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNDo0MDoyOSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjY5ZWZhYTU1LTVlMjktMjM0ZS1hNTMzLTE0OTFiMzU0M2ZiYTwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz5WKqp9AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAYXSURBVHjafFZtUFTXGX7e9z27sveuMCwYV8ElrA7YSFYHtJUPkaaI0aRqG8wP00zUzljDINNSA/2ROtpO24SxnahlxjYd7SSjmUkymcxYlDhQPzHGisEVp8HwYWCVVVgEsrsuLnL74+5uqTF9Z+7cO/d8PO95zvO851BlZSV0XQcAMDOYGQBARDhX3JRmMDYZwLPMWAzGHACYIgwS46oBNBNwtOL8CwE8EkSEUCgE2rJlC2w2G4go8Zwo/bMDgnoG6gxLfAAAYvPDMCCszKTAMIAGAhrWnf15AAAMwwARIRKJgDZv3gy73Q4iAjPjxIr9VVOMRhbAYKB8zvrO0llrfEsdKwLZek6YAPSFvtSu3GtLawu0ZJ6625SHGBQB1T88t6MxvopgMAjaunUrdF0HM+P4yv27DMYeJmB1RqW3Jnf3tQX2p0L4P9EXuqEd7PmDp+XuMU9sRbvXnnt1TxxACgoKYLVacbzsQDUJGkSATe6qi28uPtzusM6Kxie6NHLGUX3lxVUNX9StPHnn4wy3njuUYcu6n2pNi66avcEXnByP/nv8aiaIyrqz2gO5A9+9FI1GIfn5+WhZdTAdjFMkwMvZOy7uWnTAOz3L4Yk71m3t69fdfTDoUGTBeHTUfiHQ6lo7Z2OXJvpDAChKe+aOCdKRKWxZ2+1qb3yyd3GYmRkQ7GQBVs99wfv6on3eR2k4PdTkDEbH7IuS8/svld/561PJS/pDk1/bzwx94pze7xc5v/H+YPY6r5BAkdrJzODTK46lE6PeYEJt7u+8j+OZwCBiEAgAoNgKJoEQf6PvNvdrXgtZoNhSf7q0KZ3B2AQmVMze0Jmt54S/DcDCVig2NcvEUGxJAE4Pl+YOr0iv6BRSIPAmBeBZAmHlE2sH4p1uhrq1s0MnnEQMBsf8wRASAICQQCCITN1X7/sOuc0kgOVp3/fPs2WHv+coG7gQOJUnLGsUCTxEjPzUohEA+NfIWUdtx0+efzA1kSSkIGyBAQNCKgHAEBAJ3u79U7kiAcWoem/gb5Fd33nrH3kp+SMWtuAB+GllMJxMjCx9QRgA3uiqL5kwHiTlpxb3smlfMDGYGPP1hcMAkJvs8ScpfdJspdj+MK6Pf+5+u29vyb4lR4+BGEziVESAkEpw6Av1OhUpHCz4qOXbzFWz4Ncdj/v/o08Lt92ODDgZDCEFJYoUGH4mzugP92puPTf0pD3H7wvfdFZdqSxnMtWjoGAAmG9fOLxjwesdjT2/XzIQ7ks3sycYMSEwGHNtWf5bkX5NkYCJBxUBXiGV0XHvosOt54Zey33j/K+8P33++vjnbiGJbbLE+J9SANAb6nJ2B79wcUwETAwQQ7fMjPzMvfP8ja87HUIKMOiaAqMZhrGmLdAy78eZrwwsTS0eObTs+IdtgVanxBUExqGbb5VzrIISGIoUXsmqbgEhJldCQWqRf27SvPAn/o8XmgLhZsUkR4ll37mhk3n94Z4OlzY/7NLcYZfm7o1z2zT4vsvUNSXqprBCkmiTFbPX90/fh8GIT2sf+zTPdDMf4dVnNg4z+E0ixsGeBs9jd5ViSgLHjCb/peaR+MD3d4/ZJg2llyuG2Vwy7QWAs8PNnn1f7vkGSGxAzE6mk+kxkx/p/4unffSCR0hAoL1EBCYiPNdWNcwkNQTCR7feWX6g+7f/A7I8rcw/U6UEe0Ndrhc/W7mtL9ztmqlSgstSS/zTJ28dalpOpkRryrwbhwBACgsLMWPGDOT4ll3qyeqAkJTdCF7P/CrUY/GkLL1rE+2hTbSH8+0Lb/WEuhzhyaA905blf9Vd/895WnZwLHrPevir/cvOB1oLYpTtLrm6oYGIMDExAaqtrUVKSgqYGSKCk0WHq5ikkWEWtNL0imv5qUW+RclLRjJsrhBAuH1/QL8R7HR4xy5nescuP23E6hOA6mLv+sb4uTw6Ogqqq6uDpmkQkcStorX4XRcM1FjZ+kvFFjCJKU1WpkNJJUqIMtX1RyLeX3JtQ0JRhmGYZ/L27duRnJycuFGISOJ9pqh5lrB6iYgqGOxRrOaa54DcZmKvkJxk8JHC9rKh+KVhOsD4+Dj+MwADIf8n5m4xGwAAAABJRU5ErkJggg==")}div.vis-network div.vis-edit-mode button.vis-button.vis-edit,div.vis-network div.vis-manipulation button.vis-button.vis-edit{background-image:url("data:image/png;base64,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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNVQxNDoxMjoyNSswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDVUMTQ6MTI6MjUrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjY5OTM3ZGZjLTJjNzQtYTU0YS05OTIzLTQyMmZhNDNkMjljNDwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDozOWNhNzE5ZC03YzNlLTUyNGEtYmY1NS03NGVmMmM1MzE0YTc8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDVUMTQ6MTI6MjUrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjY5OTM3ZGZjLTJjNzQtYTU0YS05OTIzLTQyMmZhNDNkMjljNDwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNVQxNDoxMjoyNSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjM5Y2E3MTlkLTdjM2UtNTI0YS1iZjU1LTc0ZWYyYzUzMTRhNzwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4ykninAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAYpSURBVHjafFZtTFvnFX7Oea+NudiY2Hwam4CBlgQwXdKREDKUoYg0jbRJ29RJ2VZ1mjRFUxSpA3VTfkzJfkQbS7spU6rtx5Z2UtppScjaHxvLuiatWi2jLEoMIUDCh23g2gbj7+tPuPvhOurawPl1dc99n+c55z33fV46ceIEZFkGADAziAgAQERoe/9ZK4GPM/AcgbsIXAcABCgMvkfAqAa89eDoJyF8LogIqqqChoaGYDAYHr8kItS8uc8iIH6iAa9IkAo5EAQX8pqmgUVBCBggYFgDhv0/GAsBgKZpICJkMhnQ4OAgZFkGEYGZUXmp+0cS+CKBwWA0DVRPOg5Zl2q6zaHyJlnVAMQXVTkwHrUqH0Xsvn+tdQAAMQDgpPLS2MViFY8rkGUZzIzaS/t/xqCzGggtz9e697zsnKhoLUtim4jOq/LE6x7X0nsh16dEZ5a/O3a2SCAOHjwInU6Hujd6ThJ4mCDQ+b2G232v7v6vwarPbQn8MGlMr+X0kpE3Wr5Zt5hL5HPhqYSdQIfKJ+yhxDPKWC6Xg+jt7UXD5b5KBt1kCHS85Ljd8/On3NupfnhFaZj4rWff1B98B1R/hnUmKd36bdtCNl4g0en4edNE/cXwLq8qMTMIPAQwmo/WuHvObA8+9c58k/dKtD0TyZWXN5YGA7ej7epKxspM//7SoNOdWc/Jyq2wiwhDzPxT8cP0jys3VMM7OmL0/77zn4Ydui3b8uiK0jD7RrA77c9Wd57cefPpF+2T6bWsFPWkaiPTCWvTsZpHFU+XrS+8G3AR08F6X+1FJvBxQQzHQOWk2SmrW4FPX/U2LVwPuDZj+fJKl2khPpeyAqA9rzR/YqwuiWXX8taN/CabGkrVuq9YJlkQQDjOAJ5jAhz9Vt9W4N5/rNp8I+vtMV/aZm4zLnUNNt0urdYnF68HWoJj4Wo1mLGUNRr8LEgDgNqeCh8xQIKOsgC7iAjVe83rT9zQa8uNM28u70kspessu8q8zq/V3NcZpVzb9+0zmVhOvvvrhaMVzrJg0zeq7xMVCCwdpnWSGBqjUyJwLTFgbvxie3w31uoWR1Y74r60rdxZqrR8q85t2W2MGCp12bm/KC3hyaSTiMhxuGrKcahqpbjOaDOoEhOEoFqJQCCJvqA85I6bfTdDjQlf2lbxVNlS6wt19yy7jRHZZlDnrinNj/6sHMhnNw2Ogco7O79e5fm/xQywRBBCEAuwn4gQ96bkYj4Vyuq9N1Z3Bj4Od5bs0MXt/dZZ21ctiqFan174q985P+Lfp+U1g7XDON/1ctP458WlVjLyJhOISZE0wM0S1QfuRC3lTjkJAKKEtNC9eIOhSh9xHLZOJRZTFuXDsEoStLkR/768ummsaJG9Pb9oe+9J+xaeSVokiQDSJphAo5uaBuWjiKP4QTqS1cUWU7ayesN66wu22frD1vmVW6GW6T8u9eVjGyZzs+w78Nqu0a2mbvVu1KEJQAgeZRL0liQYyx+GOmKeQpu0rMYsAJPNEFGD2dLodLIy6c9Ys7G8yeSUl3tf2/X3rcBVJSOv34l3sCBogi7z1LH/rBHjl4IJ93/ncQFAnjeImJD0Z8zuCwu9q3djDXqTlAKID5xv+9t2R8n8VcUFBljQ8Gyfe40BYBM4DwDLt8Kue79ZcFkbzfEdbUbv+oN4c9KTtsfm1MbYQqqh+2zrVZYKs/7Ef+byimt1POYiJhDhPBFBIiIEXhxfs7/dfYoIF+auBfYTE/pebx/V8hqBP2ODvD34yvuh/WCAmU75Bx6sIgaI/v5+6PV6JLqUsYr7dpDAoehs0h73pHTWrvKgThYbRSt9UmSjef3MpaUvBz4O72UmADgTOPJguGiZor+/HyUlJWBmJFz+D8xTtlUiOpbwpmrmrweeSXrT+g11k4SBN3RGKUcAVCVdFhyP1nreDbY//NPyEXUlU/Pp4XYycGT6V0Ux2WwWdO7cOZSWlkII8diX7SPPNgDaKdbxoNAxwATBAEkEEgSWCEQAqPAMwqvMdCEwMO0tVqZpWsGTT58+DaPR+PhGIYQAAAgh0P7B3ioW/B0iGiCGiwXbCuOHFSJys6AbYFye2T+xWhT3WYJEIoH/DQBMw3kes8OJPgAAAABJRU5ErkJggg==")}div.vis-network div.vis-edit-mode button.vis-button.vis-edit.vis-edit-mode{background-color:#fcfcfc;border:1px solid #ccc}div.vis-network div.vis-manipulation button.vis-button.vis-connect{background-image:url("data:image/png;base64,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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNDozODo1NyswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTQ6Mzg6NTcrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjlmYjUwMDU0LWE3ODEtMWQ0OC05ZTllLTU2ZWQ5YzhlYjdjNjwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo3ZWRhMjI0MC0yYTQxLTNlNDQtYWM2My1iNzNiYTE5OWI3Y2E8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTQ6Mzg6NTcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjlmYjUwMDU0LWE3ODEtMWQ0OC05ZTllLTU2ZWQ5YzhlYjdjNjwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNDozODo1NyswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjdlZGEyMjQwLTJhNDEtM2U0NC1hYzYzLWI3M2JhMTk5YjdjYTwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4ubxs+AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAUtSURBVHjajJZ/bNT1Gcdfz/P53PV6B4W7VltLqdAaplIOiMOoyxxJCSs/Gv/yB4gzJroAosmmDklwkYWR0bQsdmkykoojTpcsWYLxD/lRZdMQkTHRtkLZRqG0tIVe7662vTu43n32x/VKZ/jh89cn38/zvN7P5/l88zwf2blzJz6fDwARQUSm1n8s31CM0/VAnbNmsUPuAsDpgEO+Bg4C7//iyv5hvmMiQiqVQpqamvB6vVNwEeG1JZtCBrYi/MrkAwDNgjhwAlbzICBLA0rDb0+/839C6XQaaWxspLCw8Dp86cbNmqVFJQddE6KzdjZ9D89g+B6fSyCOcyn1nxil+O9xKg5HqWFSHGXLjrP7W/ICqVQK2bNnDz6fDxFh65KNvxbHDhF4rJj2bXPo+IGfcW5h5xL4f99P+FCEMIAob75x9t0dAMlkElNXV4e1lteXbNqiQoMaeOFOjrdU868SD2luYyEP6dUh+sYmSHeOU6GO5Z8VLx5+NNZxIpPJ5AS2L3upROCoCvz8Lo7vnkf77cAHhpiz/zIL9vWz8L8p/NvupmM0Q7pjnAoLqz8tDrc8MnQqYVUVhVdF4LEg7b+rvDn8wDDlH0WoPpukLJImSBaMwjcJqmwWts2jPZLG/8kwYVFeVdXXZcFf4yVDc2cNKfBFmD9X+0ncCP58F48eG+Feo2CAUkvs4dl0V/uJvdXLiiV+ut++n7YLSfxPfMMG54ChzB3WIesVWB2i82bw1AR6fJR7C4VsfYiv6u/k3A9nEgP4zXke8DiYHyAOMK+QxPIgnZ9GqSHr1itQJ8DK2fTerDQ+S/bHRXQJaHSCwNIZ2Xh+7+S3VAmwNMBA/tuPZtErgKquUmdMWIFlRURvdamRNEXGwIWrlP47pTMzLiunxghGMwTLvcTWlHAp77s4QNSrYMQtss6ZMgWqCm5cHoDHO1nbk6K8zEN8+3zatv2Hn1b59EqJZdxmYUERg9P9KwpIiAOTdWUWBXuLzB/vZG3P1Un4PNp2d1MbmyD45TWCxuCsQm0x56bHGHFYEZwxok7toAA9Sfw3hCcoL/NOwi9QO5wmWO1j4JEgZxTkodmcWRGkf3pcX0r8xoAaBixKu4U5/xwndM+0tpAvS6mP+PZK2nb1UBvPEKwKMLDvPj4ESGc55lGy303sdJKQdZB2rkMdctAB/4gzN+/Q2ENNd4LyUi/xN+bTtquX2thk5nk4wI3gAF+OMNcA1nFQDfK+BY5GqbkwWabTY5QZhXWlnNx1ntrY1Rz87fuvw29m/Sn8J+PUGAFj5T19baA1IspuBZp7cx1x4SwG1cEf+lgRSROs8jGwb+Ht4QB/GSSsAhYano39LWIBxNEIbP14hPDuiyS2VtJuHXQlKKvxM/jiXDq/D/xPlwifGMkJZB2NIoKpr69nxeiZxLHicFSFVWfGqBidIP3LSjrWltD94CyufF/4kQgPuVz2Lz93+dDRa9eu5QQ8Hg8/iXee+Dy4CKMs7xqn4nwKz9IirhQqmVuB42m8ey+x7LMoD6iAON782eChhqmRuXfvXgKBAKqKqtI0/8nNKrQI4BVYXkzHgzPpC88gWuHL/caXrhLoGiN0apSKr0ZZRBZM7q2w5ZnLR1oAnHOMjY0hra2tFBQUYIyZmstvVT1Z6eDlAuEVq7merxmwueNPDXy9PvybjKP5mctHLk4/XTKZRJqbm/H7/VNw1VyEMYbW4FN3WNWnnchKoy5sHeVGBRX6VWi3ymFx7r11Ix8MTX/y5C2RSPC/AQB61erowbpqSwAAAABJRU5ErkJggg==")}div.vis-network div.vis-manipulation button.vis-button.vis-delete{background-image:url("data:image/png;base64,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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNDo0MTowNCswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTQ6NDE6MDQrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjc3NDkzYmUxLTEyZGItOTg0NC1iNDYyLTg2NGVmNGIzMzM3MTwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDowNmE3NWYwMy04MDdhLWUzNGYtYjk1Zi1jZGU2MjM0Mzg4OGY8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTQ6NDE6MDQrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjc3NDkzYmUxLTEyZGItOTg0NC1iNDYyLTg2NGVmNGIzMzM3MTwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNDo0MTowNCswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjA2YTc1ZjAzLTgwN2EtZTM0Zi1iOTVmLWNkZTYyMzQzODg4Zjwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4aYJzYAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAYGSURBVHjalJZ7UJTnFcZ/73m/72PdJY1RbhoQp6lkXRAvmIYxdCUadLVOozPNtGObap1JsKipjiShbdoRbeKEiQHpQK3xj0xa03aamTbaTGyAYV1QGeqFi+JyiZFLAlmESBkWRmS3fyzslGkmnZ5/v/M873Oe75zzvqqoqAibzQaAiKCUAkApRdHIK/NFsx2NR91nOSILADDoJyzNaM4xxbtvPHh0iC+JiYkJ1OHDh4mJiUEpFSXPv/ziPC28TIiXDCOSrAClQDSEpsCwJPIhrEBRQpiSytXlQwDhcBilFPfu3UMVFxdjt9ujFTzfcLBADCoEEAFr1ZbrrNjch2vtEImPBgHob7fTcWE+bVXJNJ/NiFQlEGLvieXHKmYqGB8fRx05cgSbzYaIsPvywV8pKFaA7fGtLTzz61YWpo/xVTHQbufsq5lcez9zWuWhk5mvFwMEg0H0+vXrMU2Tn1wp3CtCiQ5DjGd3A/m/v8IDCZP8r4iNmyRrWx/j/5qktykZpXKzAjVDVxPzGqemptDr1q1jX3NRnIJarcDKK2hgR2ULXRfncv7UYv7xpovhnhiW5Mz+kefeSKO6LJ1A1xzEuk/Ojm4mRibpuZaMZW3OCtRUND60NmiICCIUShisx7a2sLMiQn4s77uEQgIabnqdfHIlgT1/qQeg8vs5dHhdCNB1wYn3RIiC995j26stjAbsNH+YiZJCESnS1Y/XxIXu8r4YIPv/VkVs3CTnTy2ms34xro1+sp9po6sxlTu34ultmsPVvy6is86FCHgO+DDs49zpjufBpCG+seYOC9OHaTidieicb9ouVAhKtouAseI710ma7pLuqwmgYfHqAFt+6WdLoQ/LBl11Lm7VudAa8vb72PCin9TlAWIsGGhLACD+kSAZnusYBii1XQAPYWDllt6ov2lrBkDBR2+6Ofuak2//3M+G/T4wAAPW7fPhKfRTVeqk9qQbFKRmDUTxS3N7QYGYmwzCkqklBGlPDEcTNv+sg9tNCbTXuvBWujE0bHrZj9JE1B/wU1Pm5PwJN6YBS9a2kVvQEcWnrh5GTFD3lxkYkqRMgYQlwVldUvDnen73LHTUuqitdKM0eAr9AFQfd1J/yo2aJn+2sn4Wdn5qEFODJskgBIjx5T0uCrQA08pnIjS9PERDjPnfOKXAMEBECUoGEIHBj+2zkt76UQ6dXheGAev3+cg74Kf6uJPqcicbfuond7cPy4SOiy7+tD9nFvZurx00KOk3CNEC+mE+vjSPBc7IWqgqTaPT60IMcO/xsXGa3HfKjRgRdbl7/KDg0jtubje6aHj7c7J3dgLQ2zoPwwQ91SooOQdAW1VKVMHty0kA5Bb48BycJn/LjWFGbLv4thvvb53kFvjJ+XEdWkPfjQVR/CcNKYgGMc8JWt5Fa2j+MIPPuyI2pa4IoHSkt6vLIuRaQ9q32khzt4GCxtNu6k46GeiIR2lIfDQQsafPzq1LGRGL9Gk9d+vrwewvfHPQOoexQVjxdB/auk/zmaUMdsfz6bVUtIalT7bxveP1ZHh6GPDPYeSzeD69kcpIfxymFWLNrka+ljhBTWkWwz2JiJT84YHnz2iPx0P20PkmRF5i6HYiwZFJsn/YzdezbzE3cQibY5xV266z6RfXohakb+xB9CjanCD9qTbW7Grk4WV38VZm0l6dhQiEw9taHSuDqrS0FIfDwXM3X9mHMsvRAk/sauDpQy38P+GtzOTGB9mEpkD0C2dS8n8zOjqK9ng8WJZFU+JTjasGvaCNXPpvJBPoMlm0OoDNMfWVxONfWNSUPUZ7TUQ56tCZlPwSgMnJSVRpaSmxsbFE1raw82ZxAZZRQUiBYUKGp5UlOX2krBzmoUVjiIKhHge9rfPo+Wcy3ZeXIYASgL1/X5RfMXMvj46OosrLy7HZbGitUUohIuzoem0RofALaOsghgWGjky0MiJTL8b0lOvI8hN1DKXKP0jd3TNTWDgcJhgMoo4ePYrD4Yi+KmaeLlprnrtXFo9h/AAlG1AqE8yFmBrC+jO0bgH9EVpO/1F2Dc5g//OAsbEx/j0Af+USsQynL1UAAAAASUVORK5CYII=")}div.vis-network div.vis-edit-mode div.vis-label,div.vis-network div.vis-manipulation div.vis-label{line-height:25px;margin:0 0 0 23px}div.vis-network div.vis-manipulation div.vis-separator-line{background-color:#bdbdbd;display:inline-block;float:left;height:21px;margin:0 7px 0 15px;width:1px}');var BZ=function(){function g(t,e,A,C){var I,i,o=this;cd(this,g),this.body=t,this.canvas=e,this.selectionHandler=A,this.interactionHandler=C,this.editMode=!1,this.manipulationDiv=void 0,this.editModeDiv=void 0,this.closeDiv=void 0,this._domEventListenerCleanupQueue=[],this.temporaryUIFunctions={},this.temporaryEventFunctions=[],this.touchTime=0,this.temporaryIds={nodes:[],edges:[]},this.guiEnabled=!1,this.inMode=!1,this.selectedControlNode=void 0,this.options={},this.defaultOptions={enabled:!1,initiallyActive:!1,addNode:!0,addEdge:!0,editNode:void 0,editEdge:!0,deleteNode:!0,deleteEdge:!0,controlNodeStyle:{shape:"dot",size:6,color:{background:"#ff0000",border:"#3c3c3c",highlight:{background:"#07f968",border:"#3c3c3c"}},borderWidth:2,borderWidthSelected:2}},yA(this.options,this.defaultOptions),this.body.emitter.on("destroy",(function(){o._clean()})),this.body.emitter.on("_dataChanged",QA(I=this._restore).call(I,this)),this.body.emitter.on("_resetData",QA(i=this._restore).call(i,this))}return Bh(g,[{key:"_restore",value:function(){!1!==this.inMode&&(!0===this.options.initiallyActive?this.enableEditMode():this.disableEditMode())}},{key:"setOptions",value:function(g,t,e){void 0!==t&&(void 0!==t.locale?this.options.locale=t.locale:this.options.locale=e.locale,void 0!==t.locales?this.options.locales=t.locales:this.options.locales=e.locales),void 0!==g&&("boolean"==typeof g?this.options.enabled=g:(this.options.enabled=!0,Fm(this.options,g)),!0===this.options.initiallyActive&&(this.editMode=!0),this._setup())}},{key:"toggleEditMode",value:function(){!0===this.editMode?this.disableEditMode():this.enableEditMode()}},{key:"enableEditMode",value:function(){this.editMode=!0,this._clean(),!0===this.guiEnabled&&(this.manipulationDiv.style.display="block",this.closeDiv.style.display="block",this.editModeDiv.style.display="none",this.showManipulatorToolbar())}},{key:"disableEditMode",value:function(){this.editMode=!1,this._clean(),!0===this.guiEnabled&&(this.manipulationDiv.style.display="none",this.closeDiv.style.display="none",this.editModeDiv.style.display="block",this._createEditButton())}},{key:"showManipulatorToolbar",value:function(){if(this._clean(),this.manipulationDOM={},!0===this.guiEnabled){var g,t;this.editMode=!0,this.manipulationDiv.style.display="block",this.closeDiv.style.display="block";var e=this.selectionHandler.getSelectedNodeCount(),A=this.selectionHandler.getSelectedEdgeCount(),C=e+A,I=this.options.locales[this.options.locale],i=!1;!1!==this.options.addNode&&(this._createAddNodeButton(I),i=!0),!1!==this.options.addEdge&&(!0===i?this._createSeperator(1):i=!0,this._createAddEdgeButton(I)),1===e&&"function"==typeof this.options.editNode?(!0===i?this._createSeperator(2):i=!0,this._createEditNodeButton(I)):1===A&&0===e&&!1!==this.options.editEdge&&(!0===i?this._createSeperator(3):i=!0,this._createEditEdgeButton(I)),0!==C&&(e>0&&!1!==this.options.deleteNode||0===e&&!1!==this.options.deleteEdge)&&(!0===i&&this._createSeperator(4),this._createDeleteButton(I)),this._bindElementEvents(this.closeDiv,QA(g=this.toggleEditMode).call(g,this)),this._temporaryBindEvent("select",QA(t=this.showManipulatorToolbar).call(t,this))}this.body.emitter.emit("_redraw")}},{key:"addNodeMode",value:function(){var g;if(!0!==this.editMode&&this.enableEditMode(),this._clean(),this.inMode="addNode",!0===this.guiEnabled){var t,e=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(e),this._createSeperator(),this._createDescription(e.addDescription||this.options.locales.en.addDescription),this._bindElementEvents(this.closeDiv,QA(t=this.toggleEditMode).call(t,this))}this._temporaryBindEvent("click",QA(g=this._performAddNode).call(g,this))}},{key:"editNode",value:function(){var g=this;!0!==this.editMode&&this.enableEditMode(),this._clean();var t=this.selectionHandler.getSelectedNodes()[0];if(void 0!==t){if(this.inMode="editNode","function"!=typeof this.options.editNode)throw new Error("No function has been configured to handle the editing of nodes.");if(!0!==t.isCluster){var e=Fm({},t.options,!1);if(e.x=t.x,e.y=t.y,2!==this.options.editNode.length)throw new Error("The function for edit does not support two arguments (data, callback)");this.options.editNode(e,(function(t){null!=t&&"editNode"===g.inMode&&g.body.data.nodes.getDataSet().update(t),g.showManipulatorToolbar()}))}else alert(this.options.locales[this.options.locale].editClusterError||this.options.locales.en.editClusterError)}else this.showManipulatorToolbar()}},{key:"addEdgeMode",value:function(){var g,t,e,A,C;if(!0!==this.editMode&&this.enableEditMode(),this._clean(),this.inMode="addEdge",!0===this.guiEnabled){var I,i=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(i),this._createSeperator(),this._createDescription(i.edgeDescription||this.options.locales.en.edgeDescription),this._bindElementEvents(this.closeDiv,QA(I=this.toggleEditMode).call(I,this))}this._temporaryBindUI("onTouch",QA(g=this._handleConnect).call(g,this)),this._temporaryBindUI("onDragEnd",QA(t=this._finishConnect).call(t,this)),this._temporaryBindUI("onDrag",QA(e=this._dragControlNode).call(e,this)),this._temporaryBindUI("onRelease",QA(A=this._finishConnect).call(A,this)),this._temporaryBindUI("onDragStart",QA(C=this._dragStartEdge).call(C,this)),this._temporaryBindUI("onHold",(function(){}))}},{key:"editEdgeMode",value:function(){if(!0!==this.editMode&&this.enableEditMode(),this._clean(),this.inMode="editEdge","object"!==kh(this.options.editEdge)||"function"!=typeof this.options.editEdge.editWithoutDrag||(this.edgeBeingEditedId=this.selectionHandler.getSelectedEdgeIds()[0],void 0===this.edgeBeingEditedId)){if(!0===this.guiEnabled){var g,t=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(t),this._createSeperator(),this._createDescription(t.editEdgeDescription||this.options.locales.en.editEdgeDescription),this._bindElementEvents(this.closeDiv,QA(g=this.toggleEditMode).call(g,this))}if(this.edgeBeingEditedId=this.selectionHandler.getSelectedEdgeIds()[0],void 0!==this.edgeBeingEditedId){var e,A,C,I,i=this.body.edges[this.edgeBeingEditedId],o=this._getNewTargetNode(i.from.x,i.from.y),n=this._getNewTargetNode(i.to.x,i.to.y);this.temporaryIds.nodes.push(o.id),this.temporaryIds.nodes.push(n.id),this.body.nodes[o.id]=o,this.body.nodeIndices.push(o.id),this.body.nodes[n.id]=n,this.body.nodeIndices.push(n.id),this._temporaryBindUI("onTouch",QA(e=this._controlNodeTouch).call(e,this)),this._temporaryBindUI("onTap",(function(){})),this._temporaryBindUI("onHold",(function(){})),this._temporaryBindUI("onDragStart",QA(A=this._controlNodeDragStart).call(A,this)),this._temporaryBindUI("onDrag",QA(C=this._controlNodeDrag).call(C,this)),this._temporaryBindUI("onDragEnd",QA(I=this._controlNodeDragEnd).call(I,this)),this._temporaryBindUI("onMouseMove",(function(){})),this._temporaryBindEvent("beforeDrawing",(function(g){var t=i.edgeType.findBorderPositions(g);!1===o.selected&&(o.x=t.from.x,o.y=t.from.y),!1===n.selected&&(n.x=t.to.x,n.y=t.to.y)})),this.body.emitter.emit("_redraw")}else this.showManipulatorToolbar()}else{var r=this.body.edges[this.edgeBeingEditedId];this._performEditEdge(r.from.id,r.to.id)}}},{key:"deleteSelected",value:function(){var g=this;!0!==this.editMode&&this.enableEditMode(),this._clean(),this.inMode="delete";var t=this.selectionHandler.getSelectedNodeIds(),e=this.selectionHandler.getSelectedEdgeIds(),A=void 0;if(t.length>0){for(var C=0;C<t.length;C++)if(!0===this.body.nodes[t[C]].isCluster)return void alert(this.options.locales[this.options.locale].deleteClusterError||this.options.locales.en.deleteClusterError);"function"==typeof this.options.deleteNode&&(A=this.options.deleteNode)}else e.length>0&&"function"==typeof this.options.deleteEdge&&(A=this.options.deleteEdge);if("function"==typeof A){var I={nodes:t,edges:e};if(2!==A.length)throw new Error("The function for delete does not support two arguments (data, callback)");A(I,(function(t){null!=t&&"delete"===g.inMode?(g.body.data.edges.getDataSet().remove(t.edges),g.body.data.nodes.getDataSet().remove(t.nodes),g.body.emitter.emit("startSimulation"),g.showManipulatorToolbar()):(g.body.emitter.emit("startSimulation"),g.showManipulatorToolbar())}))}else this.body.data.edges.getDataSet().remove(e),this.body.data.nodes.getDataSet().remove(t),this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar()}},{key:"_setup",value:function(){!0===this.options.enabled?(this.guiEnabled=!0,this._createWrappers(),!1===this.editMode?this._createEditButton():this.showManipulatorToolbar()):(this._removeManipulationDOM(),this.guiEnabled=!1)}},{key:"_createWrappers",value:function(){var g,t;(void 0===this.manipulationDiv&&(this.manipulationDiv=document.createElement("div"),this.manipulationDiv.className="vis-manipulation",!0===this.editMode?this.manipulationDiv.style.display="block":this.manipulationDiv.style.display="none",this.canvas.frame.appendChild(this.manipulationDiv)),void 0===this.editModeDiv&&(this.editModeDiv=document.createElement("div"),this.editModeDiv.className="vis-edit-mode",!0===this.editMode?this.editModeDiv.style.display="none":this.editModeDiv.style.display="block",this.canvas.frame.appendChild(this.editModeDiv)),void 0===this.closeDiv)&&(this.closeDiv=document.createElement("button"),this.closeDiv.className="vis-close",this.closeDiv.setAttribute("aria-label",null!==(g=null===(t=this.options.locales[this.options.locale])||void 0===t?void 0:t.close)&&void 0!==g?g:this.options.locales.en.close),this.closeDiv.style.display=this.manipulationDiv.style.display,this.canvas.frame.appendChild(this.closeDiv))}},{key:"_getNewTargetNode",value:function(g,t){var e=Fm({},this.options.controlNodeStyle);e.id="targetNode"+OP(),e.hidden=!1,e.physics=!1,e.x=g,e.y=t;var A=this.body.functions.createNode(e);return A.shape.boundingBox={left:g,right:g,top:t,bottom:t},A}},{key:"_createEditButton",value:function(){var g;this._clean(),this.manipulationDOM={},Rm(this.editModeDiv);var t=this.options.locales[this.options.locale],e=this._createButton("editMode","vis-edit vis-edit-mode",t.edit||this.options.locales.en.edit);this.editModeDiv.appendChild(e),this._bindElementEvents(e,QA(g=this.toggleEditMode).call(g,this))}},{key:"_clean",value:function(){this.inMode=!1,!0===this.guiEnabled&&(Rm(this.editModeDiv),Rm(this.manipulationDiv),this._cleanupDOMEventListeners()),this._cleanupTemporaryNodesAndEdges(),this._unbindTemporaryUIs(),this._unbindTemporaryEvents(),this.body.emitter.emit("restorePhysics")}},{key:"_cleanupDOMEventListeners",value:function(){var g,t,e=PZ(cu(g=this._domEventListenerCleanupQueue).call(g,0));try{for(e.s();!(t=e.n()).done;){(0,t.value)()}}catch(g){e.e(g)}finally{e.f()}}},{key:"_removeManipulationDOM",value:function(){this._clean(),Rm(this.manipulationDiv),Rm(this.editModeDiv),Rm(this.closeDiv),this.manipulationDiv&&this.canvas.frame.removeChild(this.manipulationDiv),this.editModeDiv&&this.canvas.frame.removeChild(this.editModeDiv),this.closeDiv&&this.canvas.frame.removeChild(this.closeDiv),this.manipulationDiv=void 0,this.editModeDiv=void 0,this.closeDiv=void 0}},{key:"_createSeperator",value:function(){var g=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;this.manipulationDOM["seperatorLineDiv"+g]=document.createElement("div"),this.manipulationDOM["seperatorLineDiv"+g].className="vis-separator-line",this.manipulationDiv.appendChild(this.manipulationDOM["seperatorLineDiv"+g])}},{key:"_createAddNodeButton",value:function(g){var t,e=this._createButton("addNode","vis-add",g.addNode||this.options.locales.en.addNode);this.manipulationDiv.appendChild(e),this._bindElementEvents(e,QA(t=this.addNodeMode).call(t,this))}},{key:"_createAddEdgeButton",value:function(g){var t,e=this._createButton("addEdge","vis-connect",g.addEdge||this.options.locales.en.addEdge);this.manipulationDiv.appendChild(e),this._bindElementEvents(e,QA(t=this.addEdgeMode).call(t,this))}},{key:"_createEditNodeButton",value:function(g){var t,e=this._createButton("editNode","vis-edit",g.editNode||this.options.locales.en.editNode);this.manipulationDiv.appendChild(e),this._bindElementEvents(e,QA(t=this.editNode).call(t,this))}},{key:"_createEditEdgeButton",value:function(g){var t,e=this._createButton("editEdge","vis-edit",g.editEdge||this.options.locales.en.editEdge);this.manipulationDiv.appendChild(e),this._bindElementEvents(e,QA(t=this.editEdgeMode).call(t,this))}},{key:"_createDeleteButton",value:function(g){var t,e;e=this.options.rtl?"vis-delete-rtl":"vis-delete";var A=this._createButton("delete",e,g.del||this.options.locales.en.del);this.manipulationDiv.appendChild(A),this._bindElementEvents(A,QA(t=this.deleteSelected).call(t,this))}},{key:"_createBackButton",value:function(g){var t,e=this._createButton("back","vis-back",g.back||this.options.locales.en.back);this.manipulationDiv.appendChild(e),this._bindElementEvents(e,QA(t=this.showManipulatorToolbar).call(t,this))}},{key:"_createButton",value:function(g,t,e){var A=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"vis-label";return this.manipulationDOM[g+"Div"]=document.createElement("button"),this.manipulationDOM[g+"Div"].className="vis-button "+t,this.manipulationDOM[g+"Label"]=document.createElement("div"),this.manipulationDOM[g+"Label"].className=A,this.manipulationDOM[g+"Label"].innerText=e,this.manipulationDOM[g+"Div"].appendChild(this.manipulationDOM[g+"Label"]),this.manipulationDOM[g+"Div"]}},{key:"_createDescription",value:function(g){this.manipulationDOM.descriptionLabel=document.createElement("div"),this.manipulationDOM.descriptionLabel.className="vis-none",this.manipulationDOM.descriptionLabel.innerText=g,this.manipulationDiv.appendChild(this.manipulationDOM.descriptionLabel)}},{key:"_temporaryBindEvent",value:function(g,t){this.temporaryEventFunctions.push({event:g,boundFunction:t}),this.body.emitter.on(g,t)}},{key:"_temporaryBindUI",value:function(g,t){if(void 0===this.body.eventListeners[g])throw new Error("This UI function does not exist. Typo? You tried: "+g+" possible are: "+xf(Cc(this.body.eventListeners)));this.temporaryUIFunctions[g]=this.body.eventListeners[g],this.body.eventListeners[g]=t}},{key:"_unbindTemporaryUIs",value:function(){for(var g in this.temporaryUIFunctions)Object.prototype.hasOwnProperty.call(this.temporaryUIFunctions,g)&&(this.body.eventListeners[g]=this.temporaryUIFunctions[g],delete this.temporaryUIFunctions[g]);this.temporaryUIFunctions={}}},{key:"_unbindTemporaryEvents",value:function(){for(var g=0;g<this.temporaryEventFunctions.length;g++){var t=this.temporaryEventFunctions[g].event,e=this.temporaryEventFunctions[g].boundFunction;this.body.emitter.off(t,e)}this.temporaryEventFunctions=[]}},{key:"_bindElementEvents",value:function(g,t){var e=new db(g,{});jz(e,t),this._domEventListenerCleanupQueue.push((function(){e.destroy()}));var A=function(g){var e=g.keyCode,A=g.key;"Enter"!==A&&" "!==A&&13!==e&&32!==e||t()};g.addEventListener("keyup",A,!1),this._domEventListenerCleanupQueue.push((function(){g.removeEventListener("keyup",A,!1)}))}},{key:"_cleanupTemporaryNodesAndEdges",value:function(){for(var g=0;g<this.temporaryIds.edges.length;g++){var t;this.body.edges[this.temporaryIds.edges[g]].disconnect(),delete this.body.edges[this.temporaryIds.edges[g]];var e,A=$p(t=this.body.edgeIndices).call(t,this.temporaryIds.edges[g]);if(-1!==A)cu(e=this.body.edgeIndices).call(e,A,1)}for(var C=0;C<this.temporaryIds.nodes.length;C++){var I;delete this.body.nodes[this.temporaryIds.nodes[C]];var i,o=$p(I=this.body.nodeIndices).call(I,this.temporaryIds.nodes[C]);if(-1!==o)cu(i=this.body.nodeIndices).call(i,o,1)}this.temporaryIds={nodes:[],edges:[]}}},{key:"_controlNodeTouch",value:function(g){this.selectionHandler.unselectAll(),this.lastTouch=this.body.functions.getPointer(g.center),this.lastTouch.translation=yA({},this.body.view.translation)}},{key:"_controlNodeDragStart",value:function(){var g=this.lastTouch,t=this.selectionHandler._pointerToPositionObject(g),e=this.body.nodes[this.temporaryIds.nodes[0]],A=this.body.nodes[this.temporaryIds.nodes[1]],C=this.body.edges[this.edgeBeingEditedId];this.selectedControlNode=void 0;var I=e.isOverlappingWith(t),i=A.isOverlappingWith(t);!0===I?(this.selectedControlNode=e,C.edgeType.from=e):!0===i&&(this.selectedControlNode=A,C.edgeType.to=A),void 0!==this.selectedControlNode&&this.selectionHandler.selectObject(this.selectedControlNode),this.body.emitter.emit("_redraw")}},{key:"_controlNodeDrag",value:function(g){this.body.emitter.emit("disablePhysics");var t=this.body.functions.getPointer(g.center),e=this.canvas.DOMtoCanvas(t);void 0!==this.selectedControlNode?(this.selectedControlNode.x=e.x,this.selectedControlNode.y=e.y):this.interactionHandler.onDrag(g),this.body.emitter.emit("_redraw")}},{key:"_controlNodeDragEnd",value:function(g){var t=this.body.functions.getPointer(g.center),e=this.selectionHandler._pointerToPositionObject(t),A=this.body.edges[this.edgeBeingEditedId];if(void 0!==this.selectedControlNode){this.selectionHandler.unselectAll();for(var C=this.selectionHandler._getAllNodesOverlappingWith(e),I=void 0,i=C.length-1;i>=0;i--)if(C[i]!==this.selectedControlNode.id){I=this.body.nodes[C[i]];break}if(void 0!==I&&void 0!==this.selectedControlNode)if(!0===I.isCluster)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{var o=this.body.nodes[this.temporaryIds.nodes[0]];this.selectedControlNode.id===o.id?this._performEditEdge(I.id,A.to.id):this._performEditEdge(A.from.id,I.id)}else A.updateEdgeType(),this.body.emitter.emit("restorePhysics");this.body.emitter.emit("_redraw")}}},{key:"_handleConnect",value:function(g){if((new Date).valueOf()-this.touchTime>100){this.lastTouch=this.body.functions.getPointer(g.center),this.lastTouch.translation=yA({},this.body.view.translation),this.interactionHandler.drag.pointer=this.lastTouch,this.interactionHandler.drag.translation=this.lastTouch.translation;var t=this.lastTouch,e=this.selectionHandler.getNodeAt(t);if(void 0!==e)if(!0===e.isCluster)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{var A=this._getNewTargetNode(e.x,e.y);this.body.nodes[A.id]=A,this.body.nodeIndices.push(A.id);var C=this.body.functions.createEdge({id:"connectionEdge"+OP(),from:e.id,to:A.id,physics:!1,smooth:{enabled:!0,type:"continuous",roundness:.5}});this.body.edges[C.id]=C,this.body.edgeIndices.push(C.id),this.temporaryIds.nodes.push(A.id),this.temporaryIds.edges.push(C.id)}this.touchTime=(new Date).valueOf()}}},{key:"_dragControlNode",value:function(g){var t=this.body.functions.getPointer(g.center),e=this.selectionHandler._pointerToPositionObject(t),A=void 0;void 0!==this.temporaryIds.edges[0]&&(A=this.body.edges[this.temporaryIds.edges[0]].fromId);for(var C=this.selectionHandler._getAllNodesOverlappingWith(e),I=void 0,i=C.length-1;i>=0;i--){var o;if(-1===$p(o=this.temporaryIds.nodes).call(o,C[i])){I=this.body.nodes[C[i]];break}}if(g.controlEdge={from:A,to:I?I.id:void 0},this.selectionHandler.generateClickEvent("controlNodeDragging",g,t),void 0!==this.temporaryIds.nodes[0]){var n=this.body.nodes[this.temporaryIds.nodes[0]];n.x=this.canvas._XconvertDOMtoCanvas(t.x),n.y=this.canvas._YconvertDOMtoCanvas(t.y),this.body.emitter.emit("_redraw")}else this.interactionHandler.onDrag(g)}},{key:"_finishConnect",value:function(g){var t=this.body.functions.getPointer(g.center),e=this.selectionHandler._pointerToPositionObject(t),A=void 0;void 0!==this.temporaryIds.edges[0]&&(A=this.body.edges[this.temporaryIds.edges[0]].fromId);for(var C=this.selectionHandler._getAllNodesOverlappingWith(e),I=void 0,i=C.length-1;i>=0;i--){var o;if(-1===$p(o=this.temporaryIds.nodes).call(o,C[i])){I=this.body.nodes[C[i]];break}}this._cleanupTemporaryNodesAndEdges(),void 0!==I&&(!0===I.isCluster?alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError):void 0!==this.body.nodes[A]&&void 0!==this.body.nodes[I.id]&&this._performAddEdge(A,I.id)),g.controlEdge={from:A,to:I?I.id:void 0},this.selectionHandler.generateClickEvent("controlNodeDragEnd",g,t),this.body.emitter.emit("_redraw")}},{key:"_dragStartEdge",value:function(g){var t=this.lastTouch;this.selectionHandler.generateClickEvent("dragStart",g,t,void 0,!0)}},{key:"_performAddNode",value:function(g){var t=this,e={id:OP(),x:g.pointer.canvas.x,y:g.pointer.canvas.y,label:"new"};if("function"==typeof this.options.addNode){if(2!==this.options.addNode.length)throw this.showManipulatorToolbar(),new Error("The function for add does not support two arguments (data,callback)");this.options.addNode(e,(function(g){null!=g&&"addNode"===t.inMode&&t.body.data.nodes.getDataSet().add(g),t.showManipulatorToolbar()}))}else this.body.data.nodes.getDataSet().add(e),this.showManipulatorToolbar()}},{key:"_performAddEdge",value:function(g,t){var e=this,A={from:g,to:t};if("function"==typeof this.options.addEdge){if(2!==this.options.addEdge.length)throw new Error("The function for connect does not support two arguments (data,callback)");this.options.addEdge(A,(function(g){null!=g&&"addEdge"===e.inMode&&(e.body.data.edges.getDataSet().add(g),e.selectionHandler.unselectAll(),e.showManipulatorToolbar())}))}else this.body.data.edges.getDataSet().add(A),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}},{key:"_performEditEdge",value:function(g,t){var e=this,A={id:this.edgeBeingEditedId,from:g,to:t,label:this.body.data.edges.get(this.edgeBeingEditedId).label},C=this.options.editEdge;if("object"===kh(C)&&(C=C.editWithoutDrag),"function"==typeof C){if(2!==C.length)throw new Error("The function for edit does not support two arguments (data, callback)");C(A,(function(g){null==g||"editEdge"!==e.inMode?(e.body.edges[A.id].updateEdgeType(),e.body.emitter.emit("_redraw"),e.showManipulatorToolbar()):(e.body.data.edges.getDataSet().update(g),e.selectionHandler.unselectAll(),e.showManipulatorToolbar())}))}else this.body.data.edges.getDataSet().update(A),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}}]),g}(),zZ="string",SZ="boolean",ZZ="number",FZ="array",GZ="object",jZ=["arrow","bar","box","circle","crow","curve","diamond","image","inv_curve","inv_triangle","triangle","vee"],LZ={borderWidth:{number:ZZ},borderWidthSelected:{number:ZZ,undefined:"undefined"},brokenImage:{string:zZ,undefined:"undefined"},chosen:{label:{boolean:SZ,function:"function"},node:{boolean:SZ,function:"function"},__type__:{object:GZ,boolean:SZ}},color:{border:{string:zZ},background:{string:zZ},highlight:{border:{string:zZ},background:{string:zZ},__type__:{object:GZ,string:zZ}},hover:{border:{string:zZ},background:{string:zZ},__type__:{object:GZ,string:zZ}},__type__:{object:GZ,string:zZ}},opacity:{number:ZZ,undefined:"undefined"},fixed:{x:{boolean:SZ},y:{boolean:SZ},__type__:{object:GZ,boolean:SZ}},font:{align:{string:zZ},color:{string:zZ},size:{number:ZZ},face:{string:zZ},background:{string:zZ},strokeWidth:{number:ZZ},strokeColor:{string:zZ},vadjust:{number:ZZ},multi:{boolean:SZ,string:zZ},bold:{color:{string:zZ},size:{number:ZZ},face:{string:zZ},mod:{string:zZ},vadjust:{number:ZZ},__type__:{object:GZ,string:zZ}},boldital:{color:{string:zZ},size:{number:ZZ},face:{string:zZ},mod:{string:zZ},vadjust:{number:ZZ},__type__:{object:GZ,string:zZ}},ital:{color:{string:zZ},size:{number:ZZ},face:{string:zZ},mod:{string:zZ},vadjust:{number:ZZ},__type__:{object:GZ,string:zZ}},mono:{color:{string:zZ},size:{number:ZZ},face:{string:zZ},mod:{string:zZ},vadjust:{number:ZZ},__type__:{object:GZ,string:zZ}},__type__:{object:GZ,string:zZ}},group:{string:zZ,number:ZZ,undefined:"undefined"},heightConstraint:{minimum:{number:ZZ},valign:{string:zZ},__type__:{object:GZ,boolean:SZ,number:ZZ}},hidden:{boolean:SZ},icon:{face:{string:zZ},code:{string:zZ},size:{number:ZZ},color:{string:zZ},weight:{string:zZ,number:ZZ},__type__:{object:GZ}},id:{string:zZ,number:ZZ},image:{selected:{string:zZ,undefined:"undefined"},unselected:{string:zZ,undefined:"undefined"},__type__:{object:GZ,string:zZ}},imagePadding:{top:{number:ZZ},right:{number:ZZ},bottom:{number:ZZ},left:{number:ZZ},__type__:{object:GZ,number:ZZ}},label:{string:zZ,undefined:"undefined"},labelHighlightBold:{boolean:SZ},level:{number:ZZ,undefined:"undefined"},margin:{top:{number:ZZ},right:{number:ZZ},bottom:{number:ZZ},left:{number:ZZ},__type__:{object:GZ,number:ZZ}},mass:{number:ZZ},physics:{boolean:SZ},scaling:{min:{number:ZZ},max:{number:ZZ},label:{enabled:{boolean:SZ},min:{number:ZZ},max:{number:ZZ},maxVisible:{number:ZZ},drawThreshold:{number:ZZ},__type__:{object:GZ,boolean:SZ}},customScalingFunction:{function:"function"},__type__:{object:GZ}},shadow:{enabled:{boolean:SZ},color:{string:zZ},size:{number:ZZ},x:{number:ZZ},y:{number:ZZ},__type__:{object:GZ,boolean:SZ}},shape:{string:["custom","ellipse","circle","database","box","text","image","circularImage","diamond","dot","star","triangle","triangleDown","square","icon","hexagon"]},ctxRenderer:{function:"function"},shapeProperties:{borderDashes:{boolean:SZ,array:FZ},borderRadius:{number:ZZ},interpolation:{boolean:SZ},useImageSize:{boolean:SZ},useBorderWithImage:{boolean:SZ},coordinateOrigin:{string:["center","top-left"]},__type__:{object:GZ}},size:{number:ZZ},title:{string:zZ,dom:"dom",undefined:"undefined"},value:{number:ZZ,undefined:"undefined"},widthConstraint:{minimum:{number:ZZ},maximum:{number:ZZ},__type__:{object:GZ,boolean:SZ,number:ZZ}},x:{number:ZZ},y:{number:ZZ},__type__:{object:GZ}},VZ={configure:{enabled:{boolean:SZ},filter:{boolean:SZ,string:zZ,array:FZ,function:"function"},container:{dom:"dom"},showButton:{boolean:SZ},__type__:{object:GZ,boolean:SZ,string:zZ,array:FZ,function:"function"}},edges:{arrows:{to:{enabled:{boolean:SZ},scaleFactor:{number:ZZ},type:{string:jZ},imageHeight:{number:ZZ},imageWidth:{number:ZZ},src:{string:zZ},__type__:{object:GZ,boolean:SZ}},middle:{enabled:{boolean:SZ},scaleFactor:{number:ZZ},type:{string:jZ},imageWidth:{number:ZZ},imageHeight:{number:ZZ},src:{string:zZ},__type__:{object:GZ,boolean:SZ}},from:{enabled:{boolean:SZ},scaleFactor:{number:ZZ},type:{string:jZ},imageWidth:{number:ZZ},imageHeight:{number:ZZ},src:{string:zZ},__type__:{object:GZ,boolean:SZ}},__type__:{string:["from","to","middle"],object:GZ}},endPointOffset:{from:{number:ZZ},to:{number:ZZ},__type__:{object:GZ,number:ZZ}},arrowStrikethrough:{boolean:SZ},background:{enabled:{boolean:SZ},color:{string:zZ},size:{number:ZZ},dashes:{boolean:SZ,array:FZ},__type__:{object:GZ,boolean:SZ}},chosen:{label:{boolean:SZ,function:"function"},edge:{boolean:SZ,function:"function"},__type__:{object:GZ,boolean:SZ}},color:{color:{string:zZ},highlight:{string:zZ},hover:{string:zZ},inherit:{string:["from","to","both"],boolean:SZ},opacity:{number:ZZ},__type__:{object:GZ,string:zZ}},dashes:{boolean:SZ,array:FZ},font:{color:{string:zZ},size:{number:ZZ},face:{string:zZ},background:{string:zZ},strokeWidth:{number:ZZ},strokeColor:{string:zZ},align:{string:["horizontal","top","middle","bottom"]},vadjust:{number:ZZ},multi:{boolean:SZ,string:zZ},bold:{color:{string:zZ},size:{number:ZZ},face:{string:zZ},mod:{string:zZ},vadjust:{number:ZZ},__type__:{object:GZ,string:zZ}},boldital:{color:{string:zZ},size:{number:ZZ},face:{string:zZ},mod:{string:zZ},vadjust:{number:ZZ},__type__:{object:GZ,string:zZ}},ital:{color:{string:zZ},size:{number:ZZ},face:{string:zZ},mod:{string:zZ},vadjust:{number:ZZ},__type__:{object:GZ,string:zZ}},mono:{color:{string:zZ},size:{number:ZZ},face:{string:zZ},mod:{string:zZ},vadjust:{number:ZZ},__type__:{object:GZ,string:zZ}},__type__:{object:GZ,string:zZ}},hidden:{boolean:SZ},hoverWidth:{function:"function",number:ZZ},label:{string:zZ,undefined:"undefined"},labelHighlightBold:{boolean:SZ},length:{number:ZZ,undefined:"undefined"},physics:{boolean:SZ},scaling:{min:{number:ZZ},max:{number:ZZ},label:{enabled:{boolean:SZ},min:{number:ZZ},max:{number:ZZ},maxVisible:{number:ZZ},drawThreshold:{number:ZZ},__type__:{object:GZ,boolean:SZ}},customScalingFunction:{function:"function"},__type__:{object:GZ}},selectionWidth:{function:"function",number:ZZ},selfReferenceSize:{number:ZZ},selfReference:{size:{number:ZZ},angle:{number:ZZ},renderBehindTheNode:{boolean:SZ},__type__:{object:GZ}},shadow:{enabled:{boolean:SZ},color:{string:zZ},size:{number:ZZ},x:{number:ZZ},y:{number:ZZ},__type__:{object:GZ,boolean:SZ}},smooth:{enabled:{boolean:SZ},type:{string:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW","cubicBezier"]},roundness:{number:ZZ},forceDirection:{string:["horizontal","vertical","none"],boolean:SZ},__type__:{object:GZ,boolean:SZ}},title:{string:zZ,undefined:"undefined"},width:{number:ZZ},widthConstraint:{maximum:{number:ZZ},__type__:{object:GZ,boolean:SZ,number:ZZ}},value:{number:ZZ,undefined:"undefined"},__type__:{object:GZ}},groups:{useDefaultGroups:{boolean:SZ},__any__:LZ,__type__:{object:GZ}},interaction:{dragNodes:{boolean:SZ},dragView:{boolean:SZ},hideEdgesOnDrag:{boolean:SZ},hideEdgesOnZoom:{boolean:SZ},hideNodesOnDrag:{boolean:SZ},hover:{boolean:SZ},keyboard:{enabled:{boolean:SZ},speed:{x:{number:ZZ},y:{number:ZZ},zoom:{number:ZZ},__type__:{object:GZ}},bindToWindow:{boolean:SZ},autoFocus:{boolean:SZ},__type__:{object:GZ,boolean:SZ}},multiselect:{boolean:SZ},navigationButtons:{boolean:SZ},selectable:{boolean:SZ},selectConnectedEdges:{boolean:SZ},hoverConnectedEdges:{boolean:SZ},tooltipDelay:{number:ZZ},zoomView:{boolean:SZ},zoomSpeed:{number:ZZ},__type__:{object:GZ}},layout:{randomSeed:{undefined:"undefined",number:ZZ,string:zZ},improvedLayout:{boolean:SZ},clusterThreshold:{number:ZZ},hierarchical:{enabled:{boolean:SZ},levelSeparation:{number:ZZ},nodeSpacing:{number:ZZ},treeSpacing:{number:ZZ},blockShifting:{boolean:SZ},edgeMinimization:{boolean:SZ},parentCentralization:{boolean:SZ},direction:{string:["UD","DU","LR","RL"]},sortMethod:{string:["hubsize","directed"]},shakeTowards:{string:["leaves","roots"]},__type__:{object:GZ,boolean:SZ}},__type__:{object:GZ}},manipulation:{enabled:{boolean:SZ},initiallyActive:{boolean:SZ},addNode:{boolean:SZ,function:"function"},addEdge:{boolean:SZ,function:"function"},editNode:{function:"function"},editEdge:{editWithoutDrag:{function:"function"},__type__:{object:GZ,boolean:SZ,function:"function"}},deleteNode:{boolean:SZ,function:"function"},deleteEdge:{boolean:SZ,function:"function"},controlNodeStyle:LZ,__type__:{object:GZ,boolean:SZ}},nodes:LZ,physics:{enabled:{boolean:SZ},barnesHut:{theta:{number:ZZ},gravitationalConstant:{number:ZZ},centralGravity:{number:ZZ},springLength:{number:ZZ},springConstant:{number:ZZ},damping:{number:ZZ},avoidOverlap:{number:ZZ},__type__:{object:GZ}},forceAtlas2Based:{theta:{number:ZZ},gravitationalConstant:{number:ZZ},centralGravity:{number:ZZ},springLength:{number:ZZ},springConstant:{number:ZZ},damping:{number:ZZ},avoidOverlap:{number:ZZ},__type__:{object:GZ}},repulsion:{centralGravity:{number:ZZ},springLength:{number:ZZ},springConstant:{number:ZZ},nodeDistance:{number:ZZ},damping:{number:ZZ},__type__:{object:GZ}},hierarchicalRepulsion:{centralGravity:{number:ZZ},springLength:{number:ZZ},springConstant:{number:ZZ},nodeDistance:{number:ZZ},damping:{number:ZZ},avoidOverlap:{number:ZZ},__type__:{object:GZ}},maxVelocity:{number:ZZ},minVelocity:{number:ZZ},solver:{string:["barnesHut","repulsion","hierarchicalRepulsion","forceAtlas2Based"]},stabilization:{enabled:{boolean:SZ},iterations:{number:ZZ},updateInterval:{number:ZZ},onlyDynamicEdges:{boolean:SZ},fit:{boolean:SZ},__type__:{object:GZ,boolean:SZ}},timestep:{number:ZZ},adaptiveTimestep:{boolean:SZ},wind:{x:{number:ZZ},y:{number:ZZ},__type__:{object:GZ}},__type__:{object:GZ,boolean:SZ}},autoResize:{boolean:SZ},clickToUse:{boolean:SZ},locale:{string:zZ},locales:{__any__:{any:"any"},__type__:{object:GZ}},height:{string:zZ},width:{string:zZ},__type__:{object:GZ}},YZ={nodes:{borderWidth:[1,0,10,1],borderWidthSelected:[2,0,10,1],color:{border:["color","#2B7CE9"],background:["color","#97C2FC"],highlight:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]},hover:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]}},opacity:[0,0,1,.1],fixed:{x:!1,y:!1},font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[0,0,50,1],strokeColor:["color","#ffffff"]},hidden:!1,labelHighlightBold:!0,physics:!0,scaling:{min:[10,0,200,1],max:[30,0,200,1],label:{enabled:!1,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},shape:["ellipse","box","circle","database","diamond","dot","square","star","text","triangle","triangleDown","hexagon"],shapeProperties:{borderDashes:!1,borderRadius:[6,0,20,1],interpolation:!0,useImageSize:!1},size:[25,0,200,1]},edges:{arrows:{to:{enabled:!1,scaleFactor:[1,0,3,.05],type:"arrow"},middle:{enabled:!1,scaleFactor:[1,0,3,.05],type:"arrow"},from:{enabled:!1,scaleFactor:[1,0,3,.05],type:"arrow"}},endPointOffset:{from:[0,-10,10,1],to:[0,-10,10,1]},arrowStrikethrough:!0,color:{color:["color","#848484"],highlight:["color","#848484"],hover:["color","#848484"],inherit:["from","to","both",!0,!1],opacity:[1,0,1,.05]},dashes:!1,font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[2,0,50,1],strokeColor:["color","#ffffff"],align:["horizontal","top","middle","bottom"]},hidden:!1,hoverWidth:[1.5,0,5,.1],labelHighlightBold:!0,physics:!0,scaling:{min:[1,0,100,1],max:[15,0,100,1],label:{enabled:!0,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},selectionWidth:[1.5,0,5,.1],selfReferenceSize:[20,0,200,1],selfReference:{size:[20,0,200,1],angle:[Math.PI/2,-6*Math.PI,6*Math.PI,Math.PI/8],renderBehindTheNode:!0},shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},smooth:{enabled:!0,type:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW","cubicBezier"],forceDirection:["horizontal","vertical","none"],roundness:[.5,0,1,.05]},width:[1,0,30,1]},layout:{hierarchical:{enabled:!1,levelSeparation:[150,20,500,5],nodeSpacing:[100,20,500,5],treeSpacing:[200,20,500,5],blockShifting:!0,edgeMinimization:!0,parentCentralization:!0,direction:["UD","DU","LR","RL"],sortMethod:["hubsize","directed"],shakeTowards:["leaves","roots"]}},interaction:{dragNodes:!0,dragView:!0,hideEdgesOnDrag:!1,hideEdgesOnZoom:!1,hideNodesOnDrag:!1,hover:!1,keyboard:{enabled:!1,speed:{x:[10,0,40,1],y:[10,0,40,1],zoom:[.02,0,.1,.005]},bindToWindow:!0,autoFocus:!0},multiselect:!1,navigationButtons:!1,selectable:!0,selectConnectedEdges:!0,hoverConnectedEdges:!0,tooltipDelay:[300,0,1e3,25],zoomView:!0,zoomSpeed:[1,.1,2,.1]},manipulation:{enabled:!1,initiallyActive:!1},physics:{enabled:!0,barnesHut:{theta:[.5,.1,1,.05],gravitationalConstant:[-2e3,-3e4,0,50],centralGravity:[.3,0,10,.05],springLength:[95,0,500,5],springConstant:[.04,0,1.2,.005],damping:[.09,0,1,.01],avoidOverlap:[0,0,1,.01]},forceAtlas2Based:{theta:[.5,.1,1,.05],gravitationalConstant:[-50,-500,0,1],centralGravity:[.01,0,1,.005],springLength:[95,0,500,5],springConstant:[.08,0,1.2,.005],damping:[.4,0,1,.01],avoidOverlap:[0,0,1,.01]},repulsion:{centralGravity:[.2,0,10,.05],springLength:[200,0,500,5],springConstant:[.05,0,1.2,.005],nodeDistance:[100,0,500,5],damping:[.09,0,1,.01]},hierarchicalRepulsion:{centralGravity:[.2,0,10,.05],springLength:[100,0,500,5],springConstant:[.01,0,1.2,.005],nodeDistance:[120,0,500,5],damping:[.09,0,1,.01],avoidOverlap:[0,0,1,.01]},maxVelocity:[50,0,150,1],minVelocity:[.1,.01,.5,.01],solver:["barnesHut","forceAtlas2Based","repulsion","hierarchicalRepulsion"],timestep:[.5,.01,1,.01],wind:{x:[0,-10,10,.1],y:[0,-10,10,.1]}}},WZ=function(g,t,e){var A;return!(!ju(g).call(g,"physics")||!ju(A=YZ.physics.solver).call(A,t)||e.physics.solver===t||"wind"===t)},QZ=Object.freeze({__proto__:null,allOptions:VZ,configuratorHideOption:WZ,configureOptions:YZ}),UZ=function(){function g(){cd(this,g)}return Bh(g,[{key:"getDistances",value:function(g,t,e){for(var A={},C=g.edges,I=0;I<t.length;I++){var i={};A[t[I]]=i;for(var o=0;o<t.length;o++)i[t[o]]=I==o?0:1e9}for(var n=0;n<e.length;n++){var r=C[e[n]];!0===r.connected&&void 0!==A[r.fromId]&&void 0!==A[r.toId]&&(A[r.fromId][r.toId]=1,A[r.toId][r.fromId]=1)}for(var s=t.length,a=0;a<s;a++)for(var d=t[a],h=A[d],l=0;l<s-1;l++)for(var c=t[l],u=A[c],p=l+1;p<s;p++){var f=t[p],v=A[f],y=Math.min(u[f],u[d]+h[f]);u[f]=y,v[c]=y}return A}}]),g}(),_Z=function(){function g(t,e,A){cd(this,g),this.body=t,this.springLength=e,this.springConstant=A,this.distanceSolver=new UZ}return Bh(g,[{key:"setOptions",value:function(g){g&&(g.springLength&&(this.springLength=g.springLength),g.springConstant&&(this.springConstant=g.springConstant))}},{key:"solve",value:function(g,t){var e=arguments.length>2&&void 0!==arguments[2]&&arguments[2],A=this.distanceSolver.getDistances(this.body,g,t);this._createL_matrix(A),this._createK_matrix(A),this._createE_matrix();for(var C=0,I=Math.max(1e3,Math.min(10*this.body.nodeIndices.length,6e3)),i=1e9,o=0,n=0,r=0,s=0,a=0;i>.01&&C<I;){C+=1;var d=bl(this._getHighestEnergyNode(e),4);for(o=d[0],i=d[1],n=d[2],r=d[3],s=i,a=0;s>1&&a<5;){a+=1,this._moveNode(o,n,r);var h=bl(this._getEnergy(o),3);s=h[0],n=h[1],r=h[2]}}}},{key:"_getHighestEnergyNode",value:function(g){for(var t=this.body.nodeIndices,e=this.body.nodes,A=0,C=t[0],I=0,i=0,o=0;o<t.length;o++){var n=t[o];if(!0!==e[n].predefinedPosition||!0===e[n].isCluster&&!0===g||!0!==e[n].options.fixed.x||!0!==e[n].options.fixed.y){var r=bl(this._getEnergy(n),3),s=r[0],a=r[1],d=r[2];A<s&&(A=s,C=n,I=a,i=d)}}return[C,A,I,i]}},{key:"_getEnergy",value:function(g){var t=bl(this.E_sums[g],2),e=t[0],A=t[1];return[Math.sqrt(Math.pow(e,2)+Math.pow(A,2)),e,A]}},{key:"_moveNode",value:function(g,t,e){for(var A=this.body.nodeIndices,C=this.body.nodes,I=0,i=0,o=0,n=C[g].x,r=C[g].y,s=this.K_matrix[g],a=this.L_matrix[g],d=0;d<A.length;d++){var h=A[d];if(h!==g){var l=C[h].x,c=C[h].y,u=s[h],p=a[h],f=1/Math.pow(Math.pow(n-l,2)+Math.pow(r-c,2),1.5);I+=u*(1-p*Math.pow(r-c,2)*f),i+=u*(p*(n-l)*(r-c)*f),o+=u*(1-p*Math.pow(n-l,2)*f)}}var v=(t/I+e/i)/(i/I-o/i),y=-(i*v+t)/I;C[g].x+=y,C[g].y+=v,this._updateE_matrix(g)}},{key:"_createL_matrix",value:function(g){var t=this.body.nodeIndices,e=this.springLength;this.L_matrix=[];for(var A=0;A<t.length;A++){this.L_matrix[t[A]]={};for(var C=0;C<t.length;C++)this.L_matrix[t[A]][t[C]]=e*g[t[A]][t[C]]}}},{key:"_createK_matrix",value:function(g){var t=this.body.nodeIndices,e=this.springConstant;this.K_matrix=[];for(var A=0;A<t.length;A++){this.K_matrix[t[A]]={};for(var C=0;C<t.length;C++)this.K_matrix[t[A]][t[C]]=e*Math.pow(g[t[A]][t[C]],-2)}}},{key:"_createE_matrix",value:function(){var g=this.body.nodeIndices,t=this.body.nodes;this.E_matrix={},this.E_sums={};for(var e=0;e<g.length;e++)this.E_matrix[g[e]]=[];for(var A=0;A<g.length;A++){for(var C=g[A],I=t[C].x,i=t[C].y,o=0,n=0,r=A;r<g.length;r++){var s=g[r];if(s!==C){var a=t[s].x,d=t[s].y,h=1/Math.sqrt(Math.pow(I-a,2)+Math.pow(i-d,2));this.E_matrix[C][r]=[this.K_matrix[C][s]*(I-a-this.L_matrix[C][s]*(I-a)*h),this.K_matrix[C][s]*(i-d-this.L_matrix[C][s]*(i-d)*h)],this.E_matrix[s][A]=this.E_matrix[C][r],o+=this.E_matrix[C][r][0],n+=this.E_matrix[C][r][1]}}this.E_sums[C]=[o,n]}}},{key:"_updateE_matrix",value:function(g){for(var t=this.body.nodeIndices,e=this.body.nodes,A=this.E_matrix[g],C=this.K_matrix[g],I=this.L_matrix[g],i=e[g].x,o=e[g].y,n=0,r=0,s=0;s<t.length;s++){var a=t[s];if(a!==g){var d=A[s],h=d[0],l=d[1],c=e[a].x,u=e[a].y,p=1/Math.sqrt(Math.pow(i-c,2)+Math.pow(o-u,2)),f=C[a]*(i-c-I[a]*(i-c)*p),v=C[a]*(o-u-I[a]*(o-u)*p);A[s]=[f,v],n+=f,r+=v;var y=this.E_sums[a];y[0]+=f-h,y[1]+=v-l}}this.E_sums[g]=[n,r]}}]),g}();function HZ(g,t,e){var A,C,I,i,o=this;if(!(this instanceof HZ))throw new SyntaxError("Constructor must be called with the new operator");this.options={},this.defaultOptions={locale:"en",locales:Hb,clickToUse:!1},yA(this.options,this.defaultOptions),this.body={container:g,nodes:{},nodeIndices:[],edges:{},edgeIndices:[],emitter:{on:QA(A=this.on).call(A,this),off:QA(C=this.off).call(C,this),emit:QA(I=this.emit).call(I,this),once:QA(i=this.once).call(i,this)},eventListeners:{onTap:function(){},onTouch:function(){},onDoubleTap:function(){},onHold:function(){},onDragStart:function(){},onDrag:function(){},onDragEnd:function(){},onMouseWheel:function(){},onPinch:function(){},onMouseMove:function(){},onRelease:function(){},onContext:function(){}},data:{nodes:null,edges:null},functions:{createNode:function(){},createEdge:function(){},getPointer:function(){}},modules:{},view:{scale:1,translation:{x:0,y:0}},selectionBox:{show:!1,position:{start:{x:0,y:0},end:{x:0,y:0}}}},this.bindEventListeners(),this.images=new Xb((function(){return o.body.emitter.emit("_requestRedraw")})),this.groups=new Ox,this.canvas=new Vz(this.body),this.selectionHandler=new oZ(this.body,this.canvas),this.interactionHandler=new Hz(this.body,this.canvas,this.selectionHandler),this.view=new Yz(this.body,this.canvas),this.renderer=new Sz(this.body,this.canvas),this.physics=new Rz(this.body),this.layoutEngine=new RZ(this.body),this.clustering=new zz(this.body),this.manipulation=new BZ(this.body,this.canvas,this.selectionHandler,this.interactionHandler),this.nodesHandler=new hB(this.body,this.images,this.groups,this.layoutEngine),this.edgesHandler=new yz(this.body,this.images,this.groups),this.body.modules.kamadaKawai=new _Z(this.body,150,.05),this.body.modules.clustering=this.clustering,this.canvas._create(),this.setOptions(e),this.setData(t)}gC(HZ.prototype),HZ.prototype.setOptions=function(g){var t=this;if(null===g&&(g=void 0),void 0!==g){!0===cb.validate(g,VZ)&&console.error("%cErrors have been found in the supplied options object.",lb);if(Sm(["locale","locales","clickToUse"],this.options,g),void 0!==g.locale&&(g.locale=function(g,t){try{var e=bl(t.split(/[-_ /]/,2),2),A=e[0],C=e[1],I=null!=A?A.toLowerCase():null,i=null!=C?C.toUpperCase():null;if(I&&i){var o,n=I+"-"+i;if(Object.prototype.hasOwnProperty.call(g,n))return n;console.warn(Bl(o="Unknown variant ".concat(i," of language ")).call(o,I,"."))}if(I){var r=I;if(Object.prototype.hasOwnProperty.call(g,r))return r;console.warn("Unknown language ".concat(I))}return console.warn("Unknown locale ".concat(t,", falling back to English.")),"en"}catch(g){return console.error(g),console.warn("Unexpected error while normalizing locale ".concat(t,", falling back to English.")),"en"}}(g.locales||this.options.locales,g.locale)),g=this.layoutEngine.setOptions(g.layout,g),this.canvas.setOptions(g),this.groups.setOptions(g.groups),this.nodesHandler.setOptions(g.nodes),this.edgesHandler.setOptions(g.edges),this.physics.setOptions(g.physics),this.manipulation.setOptions(g.manipulation,g,this.options),this.interactionHandler.setOptions(g.interaction),this.renderer.setOptions(g.interaction),this.selectionHandler.setOptions(g.interaction),void 0!==g.groups&&this.body.emitter.emit("refreshNodes"),"configure"in g&&(this.configurator||(this.configurator=new ab(this,this.body.container,YZ,this.canvas.pixelRatio,WZ)),this.configurator.setOptions(g.configure)),this.configurator&&!0===this.configurator.options.enabled){var e={nodes:{},edges:{},layout:{},interaction:{},manipulation:{},physics:{},global:{}};Fm(e.nodes,this.nodesHandler.options),Fm(e.edges,this.edgesHandler.options),Fm(e.layout,this.layoutEngine.options),Fm(e.interaction,this.selectionHandler.options),Fm(e.interaction,this.renderer.options),Fm(e.interaction,this.interactionHandler.options),Fm(e.manipulation,this.manipulation.options),Fm(e.physics,this.physics.options),Fm(e.global,this.canvas.options),Fm(e.global,this.options),this.configurator.setModuleOptions(e)}void 0!==g.clickToUse?!0===g.clickToUse?void 0===this.activator&&(this.activator=new sb(this.canvas.frame),this.activator.on("change",(function(){t.body.emitter.emit("activate")}))):(void 0!==this.activator&&(this.activator.destroy(),delete this.activator),this.body.emitter.emit("activate")):this.body.emitter.emit("activate"),this.canvas.setSize(),this.body.emitter.emit("startSimulation")}},HZ.prototype._updateVisibleIndices=function(){var g=this.body.nodes,t=this.body.edges;for(var e in this.body.nodeIndices=[],this.body.edgeIndices=[],g)Object.prototype.hasOwnProperty.call(g,e)&&(this.clustering._isClusteredNode(e)||!1!==g[e].options.hidden||this.body.nodeIndices.push(g[e].id));for(var A in t)if(Object.prototype.hasOwnProperty.call(t,A)){var C=t[A],I=g[C.fromId],i=g[C.toId],o=void 0!==I&&void 0!==i;!this.clustering._isClusteredEdge(A)&&!1===C.options.hidden&&o&&!1===I.options.hidden&&!1===i.options.hidden&&this.body.edgeIndices.push(C.id)}},HZ.prototype.bindEventListeners=function(){var g=this;this.body.emitter.on("_dataChanged",(function(){g.edgesHandler._updateState(),g.body.emitter.emit("_dataUpdated")})),this.body.emitter.on("_dataUpdated",(function(){g.clustering._updateState(),g._updateVisibleIndices(),g._updateValueRange(g.body.nodes),g._updateValueRange(g.body.edges),g.body.emitter.emit("startSimulation"),g.body.emitter.emit("_requestRedraw")}))},HZ.prototype.setData=function(g){if(this.body.emitter.emit("resetPhysics"),this.body.emitter.emit("_resetData"),this.selectionHandler.unselectAll(),g&&g.dot&&(g.nodes||g.edges))throw new SyntaxError('Data must contain either parameter "dot" or parameter pair "nodes" and "edges", but not both.');if(this.setOptions(g&&g.options),g&&g.dot){console.warn("The dot property has been deprecated. Please use the static convertDot method to convert DOT into vis.network format and use the normal data format with nodes and edges. This converter is used like this: var data = vis.network.convertDot(dotString);");var t=Wb(g.dot);this.setData(t)}else if(g&&g.gephi){console.warn("The gephi property has been deprecated. Please use the static convertGephi method to convert gephi into vis.network format and use the normal data format with nodes and edges. This converter is used like this: var data = vis.network.convertGephi(gephiJson);");var e=Ub(g.gephi);this.setData(e)}else this.nodesHandler.setData(g&&g.nodes,!0),this.edgesHandler.setData(g&&g.edges,!0),this.body.emitter.emit("_dataChanged"),this.body.emitter.emit("_dataLoaded"),this.body.emitter.emit("initPhysics")},HZ.prototype.destroy=function(){for(var g in this.body.emitter.emit("destroy"),this.body.emitter.off(),this.off(),delete this.groups,delete this.canvas,delete this.selectionHandler,delete this.interactionHandler,delete this.view,delete this.renderer,delete this.physics,delete this.layoutEngine,delete this.clustering,delete this.manipulation,delete this.nodesHandler,delete this.edgesHandler,delete this.configurator,delete this.images,this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,g)&&delete this.body.nodes[g];for(var t in this.body.edges)Object.prototype.hasOwnProperty.call(this.body.edges,t)&&delete this.body.edges[t];Rm(this.body.container)},HZ.prototype._updateValueRange=function(g){var t,e=void 0,A=void 0,C=0;for(t in g)if(Object.prototype.hasOwnProperty.call(g,t)){var I=g[t].getValue();void 0!==I&&(e=void 0===e?I:Math.min(I,e),A=void 0===A?I:Math.max(I,A),C+=I)}if(void 0!==e&&void 0!==A)for(t in g)Object.prototype.hasOwnProperty.call(g,t)&&g[t].setValueRange(e,A,C)},HZ.prototype.isActive=function(){return!this.activator||this.activator.active},HZ.prototype.setSize=function(){return this.canvas.setSize.apply(this.canvas,arguments)},HZ.prototype.canvasToDOM=function(){return this.canvas.canvasToDOM.apply(this.canvas,arguments)},HZ.prototype.DOMtoCanvas=function(){return this.canvas.DOMtoCanvas.apply(this.canvas,arguments)},HZ.prototype.findNode=function(){return this.clustering.findNode.apply(this.clustering,arguments)},HZ.prototype.isCluster=function(){return this.clustering.isCluster.apply(this.clustering,arguments)},HZ.prototype.openCluster=function(){return this.clustering.openCluster.apply(this.clustering,arguments)},HZ.prototype.cluster=function(){return this.clustering.cluster.apply(this.clustering,arguments)},HZ.prototype.getNodesInCluster=function(){return this.clustering.getNodesInCluster.apply(this.clustering,arguments)},HZ.prototype.clusterByConnection=function(){return this.clustering.clusterByConnection.apply(this.clustering,arguments)},HZ.prototype.clusterByHubsize=function(){return this.clustering.clusterByHubsize.apply(this.clustering,arguments)},HZ.prototype.updateClusteredNode=function(){return this.clustering.updateClusteredNode.apply(this.clustering,arguments)},HZ.prototype.getClusteredEdges=function(){return this.clustering.getClusteredEdges.apply(this.clustering,arguments)},HZ.prototype.getBaseEdge=function(){return this.clustering.getBaseEdge.apply(this.clustering,arguments)},HZ.prototype.getBaseEdges=function(){return this.clustering.getBaseEdges.apply(this.clustering,arguments)},HZ.prototype.updateEdge=function(){return this.clustering.updateEdge.apply(this.clustering,arguments)},HZ.prototype.clusterOutliers=function(){return this.clustering.clusterOutliers.apply(this.clustering,arguments)},HZ.prototype.getSeed=function(){return this.layoutEngine.getSeed.apply(this.layoutEngine,arguments)},HZ.prototype.enableEditMode=function(){return this.manipulation.enableEditMode.apply(this.manipulation,arguments)},HZ.prototype.disableEditMode=function(){return this.manipulation.disableEditMode.apply(this.manipulation,arguments)},HZ.prototype.addNodeMode=function(){return this.manipulation.addNodeMode.apply(this.manipulation,arguments)},HZ.prototype.editNode=function(){return this.manipulation.editNode.apply(this.manipulation,arguments)},HZ.prototype.editNodeMode=function(){return console.warn("Deprecated: Please use editNode instead of editNodeMode."),this.manipulation.editNode.apply(this.manipulation,arguments)},HZ.prototype.addEdgeMode=function(){return this.manipulation.addEdgeMode.apply(this.manipulation,arguments)},HZ.prototype.editEdgeMode=function(){return this.manipulation.editEdgeMode.apply(this.manipulation,arguments)},HZ.prototype.deleteSelected=function(){return this.manipulation.deleteSelected.apply(this.manipulation,arguments)},HZ.prototype.getPositions=function(){return this.nodesHandler.getPositions.apply(this.nodesHandler,arguments)},HZ.prototype.getPosition=function(){return this.nodesHandler.getPosition.apply(this.nodesHandler,arguments)},HZ.prototype.storePositions=function(){return this.nodesHandler.storePositions.apply(this.nodesHandler,arguments)},HZ.prototype.moveNode=function(){return this.nodesHandler.moveNode.apply(this.nodesHandler,arguments)},HZ.prototype.getBoundingBox=function(){return this.nodesHandler.getBoundingBox.apply(this.nodesHandler,arguments)},HZ.prototype.getConnectedNodes=function(g){return void 0!==this.body.nodes[g]?this.nodesHandler.getConnectedNodes.apply(this.nodesHandler,arguments):this.edgesHandler.getConnectedNodes.apply(this.edgesHandler,arguments)},HZ.prototype.getConnectedEdges=function(){return this.nodesHandler.getConnectedEdges.apply(this.nodesHandler,arguments)},HZ.prototype.startSimulation=function(){return this.physics.startSimulation.apply(this.physics,arguments)},HZ.prototype.stopSimulation=function(){return this.physics.stopSimulation.apply(this.physics,arguments)},HZ.prototype.stabilize=function(){return this.physics.stabilize.apply(this.physics,arguments)},HZ.prototype.getSelection=function(){return this.selectionHandler.getSelection.apply(this.selectionHandler,arguments)},HZ.prototype.setSelection=function(){return this.selectionHandler.setSelection.apply(this.selectionHandler,arguments)},HZ.prototype.getSelectedNodes=function(){return this.selectionHandler.getSelectedNodeIds.apply(this.selectionHandler,arguments)},HZ.prototype.getSelectedEdges=function(){return this.selectionHandler.getSelectedEdgeIds.apply(this.selectionHandler,arguments)},HZ.prototype.getNodeAt=function(){var g=this.selectionHandler.getNodeAt.apply(this.selectionHandler,arguments);return void 0!==g&&void 0!==g.id?g.id:g},HZ.prototype.getEdgeAt=function(){var g=this.selectionHandler.getEdgeAt.apply(this.selectionHandler,arguments);return void 0!==g&&void 0!==g.id?g.id:g},HZ.prototype.selectNodes=function(){return this.selectionHandler.selectNodes.apply(this.selectionHandler,arguments)},HZ.prototype.selectEdges=function(){return this.selectionHandler.selectEdges.apply(this.selectionHandler,arguments)},HZ.prototype.unselectAll=function(){this.selectionHandler.unselectAll.apply(this.selectionHandler,arguments),this.selectionHandler.commitWithoutEmitting.apply(this.selectionHandler),this.redraw()},HZ.prototype.redraw=function(){return this.renderer.redraw.apply(this.renderer,arguments)},HZ.prototype.getScale=function(){return this.view.getScale.apply(this.view,arguments)},HZ.prototype.getViewPosition=function(){return this.view.getViewPosition.apply(this.view,arguments)},HZ.prototype.fit=function(){return this.view.fit.apply(this.view,arguments)},HZ.prototype.moveTo=function(){return this.view.moveTo.apply(this.view,arguments)},HZ.prototype.focus=function(){return this.view.focus.apply(this.view,arguments)},HZ.prototype.releaseNode=function(){return this.view.releaseNode.apply(this.view,arguments)},HZ.prototype.getOptionsFromConfigurator=function(){var g={};return this.configurator&&(g=this.configurator.getOptions.apply(this.configurator)),g};var KZ=Wb;g.DataSet=GP,g.DataView=jP,g.Network=HZ,g.NetworkImages=Xb,g.Queue=SP,g.data=YP,g.networkDOTParser=Qb,g.networkGephiParser=_b,g.networkOptions=QZ,g.parseDOTNetwork=KZ,g.parseGephiNetwork=Ub}));
//# sourceMappingURL=vis-network.min.js.map