Skip to content

Instantly share code, notes, and snippets.

@paulshen
Created April 20, 2021 05:37
Show Gist options
  • Save paulshen/912bd3ad9beecf17584ad1df9c5150e0 to your computer and use it in GitHub Desktop.
Save paulshen/912bd3ad9beecf17584ad1df9c5150e0 to your computer and use it in GitHub Desktop.
This file has been truncated, but you can view the full file.
!function(A){var e={};function t(i){if(e[i])return e[i].exports;var r=e[i]={i:i,l:!1,exports:{}};return A[i].call(r.exports,r,r.exports,t),r.l=!0,r.exports}t.m=A,t.c=e,t.d=function(A,e,i){t.o(A,e)||Object.defineProperty(A,e,{enumerable:!0,get:i})},t.r=function(A){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(A,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(A,"__esModule",{value:!0})},t.t=function(A,e){if(1&e&&(A=t(A)),8&e)return A;if(4&e&&"object"==typeof A&&A&&A.__esModule)return A;var i=Object.create(null);if(t.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:A}),2&e&&"string"!=typeof A)for(var r in A)t.d(i,r,function(e){return A[e]}.bind(null,r));return i},t.n=function(A){var e=A&&A.__esModule?function(){return A.default}:function(){return A};return t.d(e,"a",e),e},t.o=function(A,e){return Object.prototype.hasOwnProperty.call(A,e)},t.p="",t(t.s=224)}([function(A,e,t){"use strict";function i(A){return A&&0===A.length}function r(A){return null==A?[]:Object.keys(A)}function n(A){for(var e=[],t=Object.keys(A),i=0;i<t.length;i++)e.push(A[t[i]]);return e}function g(A,e){for(var t=[],i=r(A),n=0;n<i.length;n++){var g=i[n];t.push(e.call(null,A[g],g))}return t}function o(A,e){for(var t=[],i=0;i<A.length;i++)t.push(e.call(null,A[i],i));return t}function a(A){for(var e=[],t=0;t<A.length;t++){var i=A[t];Array.isArray(i)?e=e.concat(a(i)):e.push(i)}return e}function I(A){return i(A)?void 0:A[0]}function C(A){var e=A&&A.length;return e?A[e-1]:void 0}function s(A,e){if(Array.isArray(A))for(var t=0;t<A.length;t++)e.call(null,A[t],t);else{if(!G(A))throw Error("non exhaustive match");var i=r(A);for(t=0;t<i.length;t++){var n=i[t],g=A[n];e.call(null,g,n)}}}function c(A){return"string"==typeof A}function l(A){return void 0===A}function B(A){return A instanceof Function}function Q(A,e){return void 0===e&&(e=1),A.slice(e,A.length)}function u(A,e){return void 0===e&&(e=1),A.slice(0,A.length-e)}function E(A,e){var t=[];if(Array.isArray(A))for(var i=0;i<A.length;i++){var r=A[i];e.call(null,r)&&t.push(r)}return t}function h(A,e){return E(A,(function(A){return!e(A)}))}function f(A,e){for(var t=Object.keys(A),i={},r=0;r<t.length;r++){var n=t[r],g=A[n];e(g)&&(i[n]=g)}return i}function d(A,e){return!!G(A)&&A.hasOwnProperty(e)}function p(A,e){return void 0!==D(A,(function(A){return A===e}))}function y(A){for(var e=[],t=0;t<A.length;t++)e.push(A[t]);return e}function w(A){var e={};for(var t in A)Object.prototype.hasOwnProperty.call(A,t)&&(e[t]=A[t]);return e}function D(A,e){for(var t=0;t<A.length;t++){var i=A[t];if(e.call(null,i))return i}}function v(A,e){for(var t=[],i=0;i<A.length;i++){var r=A[i];e.call(null,r)&&t.push(r)}return t}function m(A,e,t){for(var i=Array.isArray(A),g=i?A:n(A),o=i?[]:r(A),a=t,I=0;I<g.length;I++)a=e.call(null,a,g[I],i?I:o[I]);return a}function b(A){return h(A,(function(A){return null==A}))}function k(A,e){void 0===e&&(e=function(A){return A});var t=[];return m(A,(function(A,i){var r=e(i);return p(t,r)?A:(t.push(r),A.concat(i))}),[])}function N(A){for(var e=[],t=1;t<arguments.length;t++)e[t-1]=arguments[t];var i=[null],r=i.concat(e);return Function.bind.apply(A,r)}function M(A){return Array.isArray(A)}function R(A){return A instanceof RegExp}function G(A){return A instanceof Object}function F(A,e){for(var t=0;t<A.length;t++)if(!e(A[t],t))return!1;return!0}function x(A,e){return h(A,(function(A){return p(e,A)}))}function S(A,e){for(var t=0;t<A.length;t++)if(e(A[t]))return!0;return!1}function Y(A,e){for(var t=0;t<A.length;t++)if(A[t]===e)return t;return-1}function _(A,e){var t=y(A);return t.sort((function(A,t){return e(A)-e(t)})),t}function U(A,e){if(A.length!==e.length)throw Error("can't zipObject with different number of keys and values!");for(var t={},i=0;i<A.length;i++)t[A[i]]=e[i];return t}function L(A){for(var e=[],t=1;t<arguments.length;t++)e[t-1]=arguments[t];for(var i=0;i<e.length;i++)for(var n=e[i],g=r(n),o=0;o<g.length;o++){var a=g[o];A[a]=n[a]}return A}function K(A){for(var e=[],t=1;t<arguments.length;t++)e[t-1]=arguments[t];for(var i=0;i<e.length;i++){var n=e[i];if(!l(n))for(var g=r(n),o=0;o<g.length;o++){var a=g[o];d(A,a)||(A[a]=n[a])}}return A}function J(){for(var A=[],e=0;e<arguments.length;e++)A[e]=arguments[e];return K.apply(null,[{}].concat(A))}function T(A,e){var t={};return s(A,(function(A){var i=e(A),r=t[i];r?r.push(A):t[i]=[A]})),t}function H(A,e){for(var t=w(A),i=r(e),n=0;n<i.length;n++){var g=i[n],o=e[g];t[g]=o}return t}function O(){}function q(A){return A}function j(A){for(var e=[],t=0;t<A.length;t++){var i=A[t];e.push(void 0!==i?i:void 0)}return e}function P(A){console&&console.error&&console.error("Error: "+A)}function V(A){console&&console.warn&&console.warn("Warning: "+A)}function z(){return"function"==typeof Map}function Z(A,e){e.forEach((function(e){var t=e.prototype;Object.getOwnPropertyNames(t).forEach((function(i){if("constructor"!==i){var r=Object.getOwnPropertyDescriptor(t,i);r&&(r.get||r.set)?Object.defineProperty(A.prototype,i,r):A.prototype[i]=e.prototype[i]}}))}))}function X(A){function e(){}e.prototype=A;var t=new e;function i(){return typeof t.bar}return i(),i(),A}function W(A){return A[A.length-1]}function $(A){var e=(new Date).getTime(),t=A();return{time:(new Date).getTime()-e,value:t}}t.d(e,"A",(function(){return i})),t.d(e,"G",(function(){return r})),t.d(e,"U",(function(){return n})),t.d(e,"J",(function(){return g})),t.d(e,"I",(function(){return o})),t.d(e,"t",(function(){return a})),t.d(e,"s",(function(){return I})),t.d(e,"H",(function(){return C})),t.d(e,"u",(function(){return s})),t.d(e,"E",(function(){return c})),t.d(e,"F",(function(){return l})),t.d(e,"B",(function(){return B})),t.d(e,"m",(function(){return Q})),t.d(e,"n",(function(){return u})),t.d(e,"p",(function(){return E})),t.d(e,"P",(function(){return h})),t.d(e,"N",(function(){return f})),t.d(e,"w",(function(){return d})),t.d(e,"j",(function(){return p})),t.d(e,"g",(function(){return y})),t.d(e,"h",(function(){return w})),t.d(e,"q",(function(){return D})),t.d(e,"r",(function(){return v})),t.d(e,"O",(function(){return m})),t.d(e,"i",(function(){return b})),t.d(e,"T",(function(){return k})),t.d(e,"y",(function(){return M})),t.d(e,"D",(function(){return R})),t.d(e,"C",(function(){return G})),t.d(e,"o",(function(){return F})),t.d(e,"l",(function(){return x})),t.d(e,"Q",(function(){return S})),t.d(e,"x",(function(){return Y})),t.d(e,"f",(function(){return L})),t.d(e,"k",(function(){return J})),t.d(e,"v",(function(){return T})),t.d(e,"K",(function(){return H})),t.d(e,"b",(function(){return O})),t.d(e,"a",(function(){return q})),t.d(e,"L",(function(){return j})),t.d(e,"c",(function(){return P})),t.d(e,"d",(function(){return V})),t.d(e,"z",(function(){return z})),t.d(e,"e",(function(){return Z})),t.d(e,"S",(function(){return X})),t.d(e,"M",(function(){return W})),t.d(e,"R",(function(){return $}))},function(A,e,t){"use strict";A.exports=t(228)},function(A,e,t){A.exports=t(256)()},function(A,e,t){"use strict";t.r(e),t.d(e,"bisect",(function(){return a})),t.d(e,"bisectRight",(function(){return g})),t.d(e,"bisectLeft",(function(){return o})),t.d(e,"ascending",(function(){return i})),t.d(e,"bisector",(function(){return r})),t.d(e,"cross",(function(){return s})),t.d(e,"descending",(function(){return c})),t.d(e,"deviation",(function(){return Q})),t.d(e,"extent",(function(){return u})),t.d(e,"histogram",(function(){return M})),t.d(e,"thresholdFreedmanDiaconis",(function(){return G})),t.d(e,"thresholdScott",(function(){return F})),t.d(e,"thresholdSturges",(function(){return N})),t.d(e,"max",(function(){return x})),t.d(e,"mean",(function(){return S})),t.d(e,"median",(function(){return Y})),t.d(e,"merge",(function(){return _})),t.d(e,"min",(function(){return U})),t.d(e,"pairs",(function(){return I})),t.d(e,"permute",(function(){return L})),t.d(e,"quantile",(function(){return R})),t.d(e,"range",(function(){return y})),t.d(e,"scan",(function(){return K})),t.d(e,"shuffle",(function(){return J})),t.d(e,"sum",(function(){return T})),t.d(e,"ticks",(function(){return m})),t.d(e,"tickIncrement",(function(){return b})),t.d(e,"tickStep",(function(){return k})),t.d(e,"transpose",(function(){return H})),t.d(e,"variance",(function(){return B})),t.d(e,"zip",(function(){return q}));var i=function(A,e){return A<e?-1:A>e?1:A>=e?0:NaN},r=function(A){var e;return 1===A.length&&(e=A,A=function(A,t){return i(e(A),t)}),{left:function(e,t,i,r){for(null==i&&(i=0),null==r&&(r=e.length);i<r;){var n=i+r>>>1;A(e[n],t)<0?i=n+1:r=n}return i},right:function(e,t,i,r){for(null==i&&(i=0),null==r&&(r=e.length);i<r;){var n=i+r>>>1;A(e[n],t)>0?r=n:i=n+1}return i}}};var n=r(i),g=n.right,o=n.left,a=g,I=function(A,e){null==e&&(e=C);for(var t=0,i=A.length-1,r=A[0],n=new Array(i<0?0:i);t<i;)n[t]=e(r,r=A[++t]);return n};function C(A,e){return[A,e]}var s=function(A,e,t){var i,r,n,g,o=A.length,a=e.length,I=new Array(o*a);for(null==t&&(t=C),i=n=0;i<o;++i)for(g=A[i],r=0;r<a;++r,++n)I[n]=t(g,e[r]);return I},c=function(A,e){return e<A?-1:e>A?1:e>=A?0:NaN},l=function(A){return null===A?NaN:+A},B=function(A,e){var t,i,r=A.length,n=0,g=-1,o=0,a=0;if(null==e)for(;++g<r;)isNaN(t=l(A[g]))||(a+=(i=t-o)*(t-(o+=i/++n)));else for(;++g<r;)isNaN(t=l(e(A[g],g,A)))||(a+=(i=t-o)*(t-(o+=i/++n)));if(n>1)return a/(n-1)},Q=function(A,e){var t=B(A,e);return t?Math.sqrt(t):t},u=function(A,e){var t,i,r,n=A.length,g=-1;if(null==e){for(;++g<n;)if(null!=(t=A[g])&&t>=t)for(i=r=t;++g<n;)null!=(t=A[g])&&(i>t&&(i=t),r<t&&(r=t))}else for(;++g<n;)if(null!=(t=e(A[g],g,A))&&t>=t)for(i=r=t;++g<n;)null!=(t=e(A[g],g,A))&&(i>t&&(i=t),r<t&&(r=t));return[i,r]},E=Array.prototype,h=E.slice,f=E.map,d=function(A){return function(){return A}},p=function(A){return A},y=function(A,e,t){A=+A,e=+e,t=(r=arguments.length)<2?(e=A,A=0,1):r<3?1:+t;for(var i=-1,r=0|Math.max(0,Math.ceil((e-A)/t)),n=new Array(r);++i<r;)n[i]=A+i*t;return n},w=Math.sqrt(50),D=Math.sqrt(10),v=Math.sqrt(2),m=function(A,e,t){var i,r,n,g,o=-1;if(t=+t,(A=+A)===(e=+e)&&t>0)return[A];if((i=e<A)&&(r=A,A=e,e=r),0===(g=b(A,e,t))||!isFinite(g))return[];if(g>0)for(A=Math.ceil(A/g),e=Math.floor(e/g),n=new Array(r=Math.ceil(e-A+1));++o<r;)n[o]=(A+o)*g;else for(A=Math.floor(A*g),e=Math.ceil(e*g),n=new Array(r=Math.ceil(A-e+1));++o<r;)n[o]=(A-o)/g;return i&&n.reverse(),n};function b(A,e,t){var i=(e-A)/Math.max(0,t),r=Math.floor(Math.log(i)/Math.LN10),n=i/Math.pow(10,r);return r>=0?(n>=w?10:n>=D?5:n>=v?2:1)*Math.pow(10,r):-Math.pow(10,-r)/(n>=w?10:n>=D?5:n>=v?2:1)}function k(A,e,t){var i=Math.abs(e-A)/Math.max(0,t),r=Math.pow(10,Math.floor(Math.log(i)/Math.LN10)),n=i/r;return n>=w?r*=10:n>=D?r*=5:n>=v&&(r*=2),e<A?-r:r}var N=function(A){return Math.ceil(Math.log(A.length)/Math.LN2)+1},M=function(){var A=p,e=u,t=N;function i(i){var r,n,g=i.length,o=new Array(g);for(r=0;r<g;++r)o[r]=A(i[r],r,i);var I=e(o),C=I[0],s=I[1],c=t(o,C,s);Array.isArray(c)||(c=k(C,s,c),c=y(Math.ceil(C/c)*c,s,c));for(var l=c.length;c[0]<=C;)c.shift(),--l;for(;c[l-1]>s;)c.pop(),--l;var B,Q=new Array(l+1);for(r=0;r<=l;++r)(B=Q[r]=[]).x0=r>0?c[r-1]:C,B.x1=r<l?c[r]:s;for(r=0;r<g;++r)C<=(n=o[r])&&n<=s&&Q[a(c,n,0,l)].push(i[r]);return Q}return i.value=function(e){return arguments.length?(A="function"==typeof e?e:d(e),i):A},i.domain=function(A){return arguments.length?(e="function"==typeof A?A:d([A[0],A[1]]),i):e},i.thresholds=function(A){return arguments.length?(t="function"==typeof A?A:Array.isArray(A)?d(h.call(A)):d(A),i):t},i},R=function(A,e,t){if(null==t&&(t=l),i=A.length){if((e=+e)<=0||i<2)return+t(A[0],0,A);if(e>=1)return+t(A[i-1],i-1,A);var i,r=(i-1)*e,n=Math.floor(r),g=+t(A[n],n,A);return g+(+t(A[n+1],n+1,A)-g)*(r-n)}},G=function(A,e,t){return A=f.call(A,l).sort(i),Math.ceil((t-e)/(2*(R(A,.75)-R(A,.25))*Math.pow(A.length,-1/3)))},F=function(A,e,t){return Math.ceil((t-e)/(3.5*Q(A)*Math.pow(A.length,-1/3)))},x=function(A,e){var t,i,r=A.length,n=-1;if(null==e){for(;++n<r;)if(null!=(t=A[n])&&t>=t)for(i=t;++n<r;)null!=(t=A[n])&&t>i&&(i=t)}else for(;++n<r;)if(null!=(t=e(A[n],n,A))&&t>=t)for(i=t;++n<r;)null!=(t=e(A[n],n,A))&&t>i&&(i=t);return i},S=function(A,e){var t,i=A.length,r=i,n=-1,g=0;if(null==e)for(;++n<i;)isNaN(t=l(A[n]))?--r:g+=t;else for(;++n<i;)isNaN(t=l(e(A[n],n,A)))?--r:g+=t;if(r)return g/r},Y=function(A,e){var t,r=A.length,n=-1,g=[];if(null==e)for(;++n<r;)isNaN(t=l(A[n]))||g.push(t);else for(;++n<r;)isNaN(t=l(e(A[n],n,A)))||g.push(t);return R(g.sort(i),.5)},_=function(A){for(var e,t,i,r=A.length,n=-1,g=0;++n<r;)g+=A[n].length;for(t=new Array(g);--r>=0;)for(e=(i=A[r]).length;--e>=0;)t[--g]=i[e];return t},U=function(A,e){var t,i,r=A.length,n=-1;if(null==e){for(;++n<r;)if(null!=(t=A[n])&&t>=t)for(i=t;++n<r;)null!=(t=A[n])&&i>t&&(i=t)}else for(;++n<r;)if(null!=(t=e(A[n],n,A))&&t>=t)for(i=t;++n<r;)null!=(t=e(A[n],n,A))&&i>t&&(i=t);return i},L=function(A,e){for(var t=e.length,i=new Array(t);t--;)i[t]=A[e[t]];return i},K=function(A,e){if(t=A.length){var t,r,n=0,g=0,o=A[g];for(null==e&&(e=i);++n<t;)(e(r=A[n],o)<0||0!==e(o,o))&&(o=r,g=n);return 0===e(o,o)?g:void 0}},J=function(A,e,t){for(var i,r,n=(null==t?A.length:t)-(e=null==e?0:+e);n;)r=Math.random()*n--|0,i=A[n+e],A[n+e]=A[r+e],A[r+e]=i;return A},T=function(A,e){var t,i=A.length,r=-1,n=0;if(null==e)for(;++r<i;)(t=+A[r])&&(n+=t);else for(;++r<i;)(t=+e(A[r],r,A))&&(n+=t);return n},H=function(A){if(!(r=A.length))return[];for(var e=-1,t=U(A,O),i=new Array(t);++e<t;)for(var r,n=-1,g=i[e]=new Array(r);++n<r;)g[n]=A[n][e];return i};function O(A){return A.length}var q=function(){return H(arguments)}},function(A,e,t){"use strict";t.r(e),function(A,i){t.d(e,"$mobx",(function(){return m})),t.d(e,"FlowCancellationError",(function(){return ve})),t.d(e,"IDerivationState",(function(){return W})),t.d(e,"ObservableMap",(function(){return ft})),t.d(e,"ObservableSet",(function(){return yt})),t.d(e,"Reaction",(function(){return PA})),t.d(e,"_allowStateChanges",(function(){return wA})),t.d(e,"_allowStateChangesInsideComputed",(function(){return mA})),t.d(e,"_allowStateReadsEnd",(function(){return BA})),t.d(e,"_allowStateReadsStart",(function(){return lA})),t.d(e,"_endAction",(function(){return yA})),t.d(e,"_getAdministration",(function(){return Gt})),t.d(e,"_getGlobalState",(function(){return UA})),t.d(e,"_interceptReads",(function(){return Ne})),t.d(e,"_isComputingDerivation",(function(){return gA})),t.d(e,"_resetGlobalState",(function(){return LA})),t.d(e,"_startAction",(function(){return pA})),t.d(e,"action",(function(){return re})),t.d(e,"autorun",(function(){return ae})),t.d(e,"comparer",(function(){return M})),t.d(e,"computed",(function(){return tA})),t.d(e,"configure",(function(){return Qe})),t.d(e,"createAtom",(function(){return N})),t.d(e,"decorate",(function(){return ue})),t.d(e,"entries",(function(){return Le})),t.d(e,"extendObservable",(function(){return Ee})),t.d(e,"flow",(function(){return be})),t.d(e,"get",(function(){return He})),t.d(e,"getAtom",(function(){return Rt})),t.d(e,"getDebugName",(function(){return Ft})),t.d(e,"getDependencyTree",(function(){return de})),t.d(e,"getObserverTree",(function(){return ye})),t.d(e,"has",(function(){return Te})),t.d(e,"intercept",(function(){return Me})),t.d(e,"isAction",(function(){return ge})),t.d(e,"isArrayLike",(function(){return d})),t.d(e,"isBoxedObservable",(function(){return kA})),t.d(e,"isComputed",(function(){return Ge})),t.d(e,"isComputedProp",(function(){return Fe})),t.d(e,"isFlowCancellationError",(function(){return me})),t.d(e,"isObservable",(function(){return Se})),t.d(e,"isObservableArray",(function(){return ut})),t.d(e,"isObservableMap",(function(){return dt})),t.d(e,"isObservableObject",(function(){return Mt})),t.d(e,"isObservableProp",(function(){return Ye})),t.d(e,"isObservableSet",(function(){return wt})),t.d(e,"keys",(function(){return _e})),t.d(e,"observable",(function(){return Z})),t.d(e,"observe",(function(){return Oe})),t.d(e,"onBecomeObserved",(function(){return ce})),t.d(e,"onBecomeUnobserved",(function(){return le})),t.d(e,"onReactionError",(function(){return VA})),t.d(e,"reaction",(function(){return se})),t.d(e,"remove",(function(){return Je})),t.d(e,"runInAction",(function(){return ne})),t.d(e,"set",(function(){return Ke})),t.d(e,"spy",(function(){return Ae})),t.d(e,"toJS",(function(){return Pe})),t.d(e,"trace",(function(){return Ve})),t.d(e,"transaction",(function(){return Ze})),t.d(e,"untracked",(function(){return CA})),t.d(e,"values",(function(){return Ue})),t.d(e,"when",(function(){return Xe}));
/*! *****************************************************************************
Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of the
License at http://www.apache.org/licenses/LICENSE-2.0
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
MERCHANTABLITY OR NON-INFRINGEMENT.
See the Apache Version 2.0 License for specific language governing permissions
and limitations under the License.
***************************************************************************** */
var r=function(A,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(A,e){A.__proto__=e}||function(A,e){for(var t in e)e.hasOwnProperty(t)&&(A[t]=e[t])})(A,e)};var n=function(){return(n=Object.assign||function(A){for(var e,t=1,i=arguments.length;t<i;t++)for(var r in e=arguments[t])Object.prototype.hasOwnProperty.call(e,r)&&(A[r]=e[r]);return A}).apply(this,arguments)};function g(A){var e="function"==typeof Symbol&&A[Symbol.iterator],t=0;return e?e.call(A):{next:function(){return A&&t>=A.length&&(A=void 0),{value:A&&A[t++],done:!A}}}}function o(A,e){var t="function"==typeof Symbol&&A[Symbol.iterator];if(!t)return A;var i,r,n=t.call(A),g=[];try{for(;(void 0===e||e-- >0)&&!(i=n.next()).done;)g.push(i.value)}catch(A){r={error:A}}finally{try{i&&!i.done&&(t=n.return)&&t.call(n)}finally{if(r)throw r.error}}return g}function a(){for(var A=[],e=0;e<arguments.length;e++)A=A.concat(o(arguments[e]));return A}var I=[];Object.freeze(I);var C={};function s(){return++_A.mobxGuid}function c(A){throw l(!1,A),"X"}function l(A,e){if(!A)throw new Error("[mobx] "+(e||"An invariant failed, however the error is obfuscated because this is a production build."))}Object.freeze(C);function B(A){var e=!1;return function(){if(!e)return e=!0,A.apply(this,arguments)}}var Q=function(){};function u(A){return null!==A&&"object"==typeof A}function E(A){if(null===A||"object"!=typeof A)return!1;var e=Object.getPrototypeOf(A);return e===Object.prototype||null===e}function h(A,e,t){Object.defineProperty(A,e,{enumerable:!1,writable:!0,configurable:!0,value:t})}function f(A,e){var t="isMobX"+A;return e.prototype[t]=!0,function(A){return u(A)&&!0===A[t]}}function d(A){return Array.isArray(A)||ut(A)}function p(A){return A instanceof Map}function y(A){return A instanceof Set}function w(A){var e=new Set;for(var t in A)e.add(t);return Object.getOwnPropertySymbols(A).forEach((function(t){Object.getOwnPropertyDescriptor(A,t).enumerable&&e.add(t)})),Array.from(e)}function D(A){return A&&A.toString?A.toString():new String(A).toString()}function v(A){return null===A?null:"object"==typeof A?""+A:A}var m=Symbol("mobx administration"),b=function(){function A(A){void 0===A&&(A="Atom@"+s()),this.name=A,this.isPendingUnobservation=!1,this.isBeingObserved=!1,this.observers=new Set,this.diffValue=0,this.lastAccessedBy=0,this.lowestObserverState=W.NOT_TRACKING}return A.prototype.onBecomeObserved=function(){this.onBecomeObservedListeners&&this.onBecomeObservedListeners.forEach((function(A){return A()}))},A.prototype.onBecomeUnobserved=function(){this.onBecomeUnobservedListeners&&this.onBecomeUnobservedListeners.forEach((function(A){return A()}))},A.prototype.reportObserved=function(){return qA(this)},A.prototype.reportChanged=function(){HA(),function(A){if(A.lowestObserverState===W.STALE)return;A.lowestObserverState=W.STALE,A.observers.forEach((function(e){e.dependenciesState===W.UP_TO_DATE&&(e.isTracing!==$.NONE&&jA(e,A),e.onBecomeStale()),e.dependenciesState=W.STALE}))}(this),OA()},A.prototype.toString=function(){return this.name},A}(),k=f("Atom",b);function N(A,e,t){void 0===e&&(e=Q),void 0===t&&(t=Q);var i=new b(A);return e!==Q&&ce(i,e),t!==Q&&le(i,t),i}var M={identity:function(A,e){return A===e},structural:function(A,e){return St(A,e)},default:function(A,e){return Object.is(A,e)},shallow:function(A,e){return St(A,e,1)}},R=Symbol("mobx did run lazy initializers"),G=Symbol("mobx pending decorators"),F={},x={};function S(A,e){var t=e?F:x;return t[A]||(t[A]={configurable:!0,enumerable:e,get:function(){return Y(this),this[A]},set:function(e){Y(this),this[A]=e}})}function Y(A){var e,t;if(!0!==A[R]){var i=A[G];if(i){h(A,R,!0);var r=a(Object.getOwnPropertySymbols(i),Object.keys(i));try{for(var n=g(r),o=n.next();!o.done;o=n.next()){var I=i[o.value];I.propertyCreator(A,I.prop,I.descriptor,I.decoratorTarget,I.decoratorArguments)}}catch(A){e={error:A}}finally{try{o&&!o.done&&(t=n.return)&&t.call(n)}finally{if(e)throw e.error}}}}}function _(A,e){return function(){var t,i=function(i,r,g,o){if(!0===o)return e(i,r,g,i,t),null;if(!Object.prototype.hasOwnProperty.call(i,G)){var a=i[G];h(i,G,n({},a))}return i[G][r]={prop:r,propertyCreator:e,descriptor:g,decoratorTarget:i,decoratorArguments:t},S(r,A)};return U(arguments)?(t=I,i.apply(null,arguments)):(t=Array.prototype.slice.call(arguments),i)}}function U(A){return(2===A.length||3===A.length)&&("string"==typeof A[1]||"symbol"==typeof A[1])||4===A.length&&!0===A[3]}function L(A,e,t){return Se(A)?A:Array.isArray(A)?Z.array(A,{name:t}):E(A)?Z.object(A,void 0,{name:t}):p(A)?Z.map(A,{name:t}):y(A)?Z.set(A,{name:t}):A}function K(A){return A}function J(e){l(e);var t=_(!0,(function(A,t,i,r,n){var g=i?i.initializer?i.initializer.call(A):i.value:void 0;vt(A).addObservableProp(t,g,e)})),i=(void 0!==A&&A.env,t);return i.enhancer=e,i}var T={deep:!0,name:void 0,defaultDecorator:void 0,proxy:!0};function H(A){return null==A?T:"string"==typeof A?{name:A,deep:!0,proxy:!0}:A}Object.freeze(T);var O=J(L),q=J((function(A,e,t){return null==A||Mt(A)||ut(A)||dt(A)||wt(A)?A:Array.isArray(A)?Z.array(A,{name:t,deep:!1}):E(A)?Z.object(A,void 0,{name:t,deep:!1}):p(A)?Z.map(A,{name:t,deep:!1}):y(A)?Z.set(A,{name:t,deep:!1}):c(!1)})),j=J(K),P=J((function(A,e,t){return St(A,e)?e:A}));function V(A){return A.defaultDecorator?A.defaultDecorator.enhancer:!1===A.deep?K:L}var z={box:function(A,e){arguments.length>2&&X("box");var t=H(e);return new bA(A,V(t),t.name,!0,t.equals)},array:function(A,e){arguments.length>2&&X("array");var t=H(e);return st(A,V(t),t.name)},map:function(A,e){arguments.length>2&&X("map");var t=H(e);return new ft(A,V(t),t.name)},set:function(A,e){arguments.length>2&&X("set");var t=H(e);return new yt(A,V(t),t.name)},object:function(A,e,t){"string"==typeof arguments[1]&&X("object");var i=H(t);if(!1===i.proxy)return Ee({},A,e,i);var r=he(i),n=Ee({},void 0,void 0,i),g=it(n);return fe(g,A,e,r),g},ref:j,shallow:q,deep:O,struct:P},Z=function(A,e,t){if("string"==typeof arguments[1]||"symbol"==typeof arguments[1])return O.apply(null,arguments);if(Se(A))return A;var i=E(A)?Z.object(A,e,t):Array.isArray(A)?Z.array(A,e):p(A)?Z.map(A,e):y(A)?Z.set(A,e):A;if(i!==A)return i;c(!1)};function X(A){c("Expected one or two arguments to observable."+A+". Did you accidentally try to use observable."+A+" as decorator?")}Object.keys(z).forEach((function(A){return Z[A]=z[A]}));var W,$,AA=_(!1,(function(A,e,t,i,r){var g=t.get,o=t.set,a=r[0]||{};vt(A).addComputedProp(A,e,n({get:g,set:o,context:A},a))})),eA=AA({equals:M.structural}),tA=function(A,e,t){if("string"==typeof e)return AA.apply(null,arguments);if(null!==A&&"object"==typeof A&&1===arguments.length)return AA.apply(null,arguments);var i="object"==typeof e?e:{};return i.get=A,i.set="function"==typeof e?e:i.set,i.name=i.name||A.name||"",new NA(i)};tA.struct=eA,function(A){A[A.NOT_TRACKING=-1]="NOT_TRACKING",A[A.UP_TO_DATE=0]="UP_TO_DATE",A[A.POSSIBLY_STALE=1]="POSSIBLY_STALE",A[A.STALE=2]="STALE"}(W||(W={})),function(A){A[A.NONE=0]="NONE",A[A.LOG=1]="LOG",A[A.BREAK=2]="BREAK"}($||($={}));var iA=function(A){this.cause=A};function rA(A){return A instanceof iA}function nA(A){switch(A.dependenciesState){case W.UP_TO_DATE:return!1;case W.NOT_TRACKING:case W.STALE:return!0;case W.POSSIBLY_STALE:for(var e=lA(!0),t=sA(),i=A.observing,r=i.length,n=0;n<r;n++){var g=i[n];if(MA(g)){if(_A.disableErrorBoundaries)g.get();else try{g.get()}catch(A){return cA(t),BA(e),!0}if(A.dependenciesState===W.STALE)return cA(t),BA(e),!0}}return QA(A),cA(t),BA(e),!1}}function gA(){return null!==_A.trackingDerivation}function oA(A){var e=A.observers.size>0;_A.computationDepth>0&&e&&c(!1),_A.allowStateChanges||!e&&"strict"!==_A.enforceActions||c(!1)}function aA(A,e,t){var i=lA(!0);QA(A),A.newObserving=new Array(A.observing.length+100),A.unboundDepsCount=0,A.runId=++_A.runId;var r,n=_A.trackingDerivation;if(_A.trackingDerivation=A,!0===_A.disableErrorBoundaries)r=e.call(t);else try{r=e.call(t)}catch(A){r=new iA(A)}return _A.trackingDerivation=n,function(A){for(var e=A.observing,t=A.observing=A.newObserving,i=W.UP_TO_DATE,r=0,n=A.unboundDepsCount,g=0;g<n;g++){0===(o=t[g]).diffValue&&(o.diffValue=1,r!==g&&(t[r]=o),r++),o.dependenciesState>i&&(i=o.dependenciesState)}t.length=r,A.newObserving=null,n=e.length;for(;n--;){0===(o=e[n]).diffValue&&JA(o,A),o.diffValue=0}for(;r--;){var o;1===(o=t[r]).diffValue&&(o.diffValue=0,KA(o,A))}i!==W.UP_TO_DATE&&(A.dependenciesState=i,A.onBecomeStale())}(A),BA(i),r}function IA(A){var e=A.observing;A.observing=[];for(var t=e.length;t--;)JA(e[t],A);A.dependenciesState=W.NOT_TRACKING}function CA(A){var e=sA();try{return A()}finally{cA(e)}}function sA(){var A=_A.trackingDerivation;return _A.trackingDerivation=null,A}function cA(A){_A.trackingDerivation=A}function lA(A){var e=_A.allowStateReads;return _A.allowStateReads=A,e}function BA(A){_A.allowStateReads=A}function QA(A){if(A.dependenciesState!==W.UP_TO_DATE){A.dependenciesState=W.UP_TO_DATE;for(var e=A.observing,t=e.length;t--;)e[t].lowestObserverState=W.UP_TO_DATE}}var uA=0,EA=1,hA=Object.getOwnPropertyDescriptor((function(){}),"name");hA&&hA.configurable;function fA(A,e,t){var i=function(){return dA(A,e,t||this,arguments)};return i.isMobxAction=!0,i}function dA(A,e,t,i){var r=pA(A,t,i);try{return e.apply(t,i)}catch(A){throw r.error=A,A}finally{yA(r)}}function pA(A,e,t){var i=0,r=sA();HA();var n={prevDerivation:r,prevAllowStateChanges:DA(!0),prevAllowStateReads:lA(!0),notifySpy:!1,startTime:i,actionId:EA++,parentActionId:uA};return uA=n.actionId,n}function yA(A){uA!==A.actionId&&c("invalid action stack. did you forget to finish an action?"),uA=A.parentActionId,void 0!==A.error&&(_A.suppressReactionErrors=!0),vA(A.prevAllowStateChanges),BA(A.prevAllowStateReads),OA(),cA(A.prevDerivation),A.notifySpy,_A.suppressReactionErrors=!1}function wA(A,e){var t,i=DA(A);try{t=e()}finally{vA(i)}return t}function DA(A){var e=_A.allowStateChanges;return _A.allowStateChanges=A,e}function vA(A){_A.allowStateChanges=A}function mA(A){var e,t=_A.computationDepth;_A.computationDepth=0;try{e=A()}finally{_A.computationDepth=t}return e}var bA=function(A){function e(e,t,i,r,n){void 0===i&&(i="ObservableValue@"+s()),void 0===r&&(r=!0),void 0===n&&(n=M.default);var g=A.call(this,i)||this;return g.enhancer=t,g.name=i,g.equals=n,g.hasUnreportedChange=!1,g.value=t(e,void 0,i),g}return function(A,e){function t(){this.constructor=A}r(A,e),A.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}(e,A),e.prototype.dehanceValue=function(A){return void 0!==this.dehancer?this.dehancer(A):A},e.prototype.set=function(A){this.value;if((A=this.prepareNewValue(A))!==_A.UNCHANGED){0,this.setNewValue(A)}},e.prototype.prepareNewValue=function(A){if(oA(this),rt(this)){var e=gt(this,{object:this,type:"update",newValue:A});if(!e)return _A.UNCHANGED;A=e.newValue}return A=this.enhancer(A,this.value,this.name),this.equals(this.value,A)?_A.UNCHANGED:A},e.prototype.setNewValue=function(A){var e=this.value;this.value=A,this.reportChanged(),ot(this)&&It(this,{type:"update",object:this,newValue:A,oldValue:e})},e.prototype.get=function(){return this.reportObserved(),this.dehanceValue(this.value)},e.prototype.intercept=function(A){return nt(this,A)},e.prototype.observe=function(A,e){return e&&A({object:this,type:"update",newValue:this.value,oldValue:void 0}),at(this,A)},e.prototype.toJSON=function(){return this.get()},e.prototype.toString=function(){return this.name+"["+this.value+"]"},e.prototype.valueOf=function(){return v(this.get())},e.prototype[Symbol.toPrimitive]=function(){return this.valueOf()},e}(b),kA=f("ObservableValue",bA),NA=function(){function A(A){this.dependenciesState=W.NOT_TRACKING,this.observing=[],this.newObserving=null,this.isBeingObserved=!1,this.isPendingUnobservation=!1,this.observers=new Set,this.diffValue=0,this.runId=0,this.lastAccessedBy=0,this.lowestObserverState=W.UP_TO_DATE,this.unboundDepsCount=0,this.__mapid="#"+s(),this.value=new iA(null),this.isComputing=!1,this.isRunningSetter=!1,this.isTracing=$.NONE,l(A.get,"missing option for computed: get"),this.derivation=A.get,this.name=A.name||"ComputedValue@"+s(),A.set&&(this.setter=fA(this.name+"-setter",A.set)),this.equals=A.equals||(A.compareStructural||A.struct?M.structural:M.default),this.scope=A.context,this.requiresReaction=!!A.requiresReaction,this.keepAlive=!!A.keepAlive}return A.prototype.onBecomeStale=function(){!function(A){if(A.lowestObserverState!==W.UP_TO_DATE)return;A.lowestObserverState=W.POSSIBLY_STALE,A.observers.forEach((function(e){e.dependenciesState===W.UP_TO_DATE&&(e.dependenciesState=W.POSSIBLY_STALE,e.isTracing!==$.NONE&&jA(e,A),e.onBecomeStale())}))}(this)},A.prototype.onBecomeObserved=function(){this.onBecomeObservedListeners&&this.onBecomeObservedListeners.forEach((function(A){return A()}))},A.prototype.onBecomeUnobserved=function(){this.onBecomeUnobservedListeners&&this.onBecomeUnobservedListeners.forEach((function(A){return A()}))},A.prototype.get=function(){this.isComputing&&c("Cycle detected in computation "+this.name+": "+this.derivation),0!==_A.inBatch||0!==this.observers.size||this.keepAlive?(qA(this),nA(this)&&this.trackAndCompute()&&function(A){if(A.lowestObserverState===W.STALE)return;A.lowestObserverState=W.STALE,A.observers.forEach((function(e){e.dependenciesState===W.POSSIBLY_STALE?e.dependenciesState=W.STALE:e.dependenciesState===W.UP_TO_DATE&&(A.lowestObserverState=W.UP_TO_DATE)}))}(this)):nA(this)&&(this.warnAboutUntrackedRead(),HA(),this.value=this.computeValue(!1),OA());var A=this.value;if(rA(A))throw A.cause;return A},A.prototype.peek=function(){var A=this.computeValue(!1);if(rA(A))throw A.cause;return A},A.prototype.set=function(A){if(this.setter){l(!this.isRunningSetter,"The setter of computed value '"+this.name+"' is trying to update itself. Did you intend to update an _observable_ value, instead of the computed property?"),this.isRunningSetter=!0;try{this.setter.call(this.scope,A)}finally{this.isRunningSetter=!1}}else l(!1,!1)},A.prototype.trackAndCompute=function(){var A=this.value,e=this.dependenciesState===W.NOT_TRACKING,t=this.computeValue(!0),i=e||rA(A)||rA(t)||!this.equals(A,t);return i&&(this.value=t),i},A.prototype.computeValue=function(A){var e;if(this.isComputing=!0,_A.computationDepth++,A)e=aA(this,this.derivation,this.scope);else if(!0===_A.disableErrorBoundaries)e=this.derivation.call(this.scope);else try{e=this.derivation.call(this.scope)}catch(A){e=new iA(A)}return _A.computationDepth--,this.isComputing=!1,e},A.prototype.suspend=function(){this.keepAlive||(IA(this),this.value=void 0)},A.prototype.observe=function(A,e){var t=this,i=!0,r=void 0;return ae((function(){var n=t.get();if(!i||e){var g=sA();A({type:"update",object:t,newValue:n,oldValue:r}),cA(g)}i=!1,r=n}))},A.prototype.warnAboutUntrackedRead=function(){},A.prototype.toJSON=function(){return this.get()},A.prototype.toString=function(){return this.name+"["+this.derivation.toString()+"]"},A.prototype.valueOf=function(){return v(this.get())},A.prototype[Symbol.toPrimitive]=function(){return this.valueOf()},A}(),MA=f("ComputedValue",NA),RA=["mobxGuid","spyListeners","enforceActions","computedRequiresReaction","reactionRequiresObservable","observableRequiresReaction","allowStateReads","disableErrorBoundaries","runId","UNCHANGED"],GA=function(){this.version=5,this.UNCHANGED={},this.trackingDerivation=null,this.computationDepth=0,this.runId=0,this.mobxGuid=0,this.inBatch=0,this.pendingUnobservations=[],this.pendingReactions=[],this.isRunningReactions=!1,this.allowStateChanges=!0,this.allowStateReads=!0,this.enforceActions=!1,this.spyListeners=[],this.globalReactionErrorHandlers=[],this.computedRequiresReaction=!1,this.reactionRequiresObservable=!1,this.observableRequiresReaction=!1,this.computedConfigurable=!1,this.disableErrorBoundaries=!1,this.suppressReactionErrors=!1},FA={};function xA(){return"undefined"!=typeof window?window:void 0!==i?i:"undefined"!=typeof self?self:FA}var SA=!0,YA=!1,_A=function(){var A=xA();return A.__mobxInstanceCount>0&&!A.__mobxGlobals&&(SA=!1),A.__mobxGlobals&&A.__mobxGlobals.version!==(new GA).version&&(SA=!1),SA?A.__mobxGlobals?(A.__mobxInstanceCount+=1,A.__mobxGlobals.UNCHANGED||(A.__mobxGlobals.UNCHANGED={}),A.__mobxGlobals):(A.__mobxInstanceCount=1,A.__mobxGlobals=new GA):(setTimeout((function(){YA||c("There are multiple, different versions of MobX active. Make sure MobX is loaded only once or use `configure({ isolateGlobalState: true })`")}),1),new GA)}();function UA(){return _A}function LA(){var A=new GA;for(var e in A)-1===RA.indexOf(e)&&(_A[e]=A[e]);_A.allowStateChanges=!_A.enforceActions}function KA(A,e){A.observers.add(e),A.lowestObserverState>e.dependenciesState&&(A.lowestObserverState=e.dependenciesState)}function JA(A,e){A.observers.delete(e),0===A.observers.size&&TA(A)}function TA(A){!1===A.isPendingUnobservation&&(A.isPendingUnobservation=!0,_A.pendingUnobservations.push(A))}function HA(){_A.inBatch++}function OA(){if(0==--_A.inBatch){ZA();for(var A=_A.pendingUnobservations,e=0;e<A.length;e++){var t=A[e];t.isPendingUnobservation=!1,0===t.observers.size&&(t.isBeingObserved&&(t.isBeingObserved=!1,t.onBecomeUnobserved()),t instanceof NA&&t.suspend())}_A.pendingUnobservations=[]}}function qA(A){var e=_A.trackingDerivation;return null!==e?(e.runId!==A.lastAccessedBy&&(A.lastAccessedBy=e.runId,e.newObserving[e.unboundDepsCount++]=A,A.isBeingObserved||(A.isBeingObserved=!0,A.onBecomeObserved())),!0):(0===A.observers.size&&_A.inBatch>0&&TA(A),!1)}function jA(A,e){if(console.log("[mobx.trace] '"+A.name+"' is invalidated due to a change in: '"+e.name+"'"),A.isTracing===$.BREAK){var t=[];!function A(e,t,i){if(t.length>=1e3)return void t.push("(and many more)");t.push(""+new Array(i).join("\t")+e.name),e.dependencies&&e.dependencies.forEach((function(e){return A(e,t,i+1)}))}(de(A),t,1),new Function("debugger;\n/*\nTracing '"+A.name+"'\n\nYou are entering this break point because derivation '"+A.name+"' is being traced and '"+e.name+"' is now forcing it to update.\nJust follow the stacktrace you should now see in the devtools to see precisely what piece of your code is causing this update\nThe stackframe you are looking for is at least ~6-8 stack-frames up.\n\n"+(A instanceof NA?A.derivation.toString().replace(/[*]\//g,"/"):"")+"\n\nThe dependencies for this derivation are:\n\n"+t.join("\n")+"\n*/\n ")()}}var PA=function(){function A(A,e,t,i){void 0===A&&(A="Reaction@"+s()),void 0===i&&(i=!1),this.name=A,this.onInvalidate=e,this.errorHandler=t,this.requiresObservable=i,this.observing=[],this.newObserving=[],this.dependenciesState=W.NOT_TRACKING,this.diffValue=0,this.runId=0,this.unboundDepsCount=0,this.__mapid="#"+s(),this.isDisposed=!1,this._isScheduled=!1,this._isTrackPending=!1,this._isRunning=!1,this.isTracing=$.NONE}return A.prototype.onBecomeStale=function(){this.schedule()},A.prototype.schedule=function(){this._isScheduled||(this._isScheduled=!0,_A.pendingReactions.push(this),ZA())},A.prototype.isScheduled=function(){return this._isScheduled},A.prototype.runReaction=function(){if(!this.isDisposed){if(HA(),this._isScheduled=!1,nA(this)){this._isTrackPending=!0;try{this.onInvalidate(),this._isTrackPending}catch(A){this.reportExceptionInDerivation(A)}}OA()}},A.prototype.track=function(A){if(!this.isDisposed){HA();0,this._isRunning=!0;var e=aA(this,A,void 0);this._isRunning=!1,this._isTrackPending=!1,this.isDisposed&&IA(this),rA(e)&&this.reportExceptionInDerivation(e.cause),OA()}},A.prototype.reportExceptionInDerivation=function(A){var e=this;if(this.errorHandler)this.errorHandler(A,this);else{if(_A.disableErrorBoundaries)throw A;var t="[mobx] Encountered an uncaught exception that was thrown by a reaction or observer component, in: '"+this+"'";_A.suppressReactionErrors?console.warn("[mobx] (error in reaction '"+this.name+"' suppressed, fix error of causing action below)"):console.error(t,A),_A.globalReactionErrorHandlers.forEach((function(t){return t(A,e)}))}},A.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this._isRunning||(HA(),IA(this),OA()))},A.prototype.getDisposer=function(){var A=this.dispose.bind(this);return A[m]=this,A},A.prototype.toString=function(){return"Reaction["+this.name+"]"},A.prototype.trace=function(A){void 0===A&&(A=!1),Ve(this,A)},A}();function VA(A){return _A.globalReactionErrorHandlers.push(A),function(){var e=_A.globalReactionErrorHandlers.indexOf(A);e>=0&&_A.globalReactionErrorHandlers.splice(e,1)}}var zA=function(A){return A()};function ZA(){_A.inBatch>0||_A.isRunningReactions||zA(XA)}function XA(){_A.isRunningReactions=!0;for(var A=_A.pendingReactions,e=0;A.length>0;){100==++e&&(console.error("Reaction doesn't converge to a stable state after 100 iterations. Probably there is a cycle in the reactive function: "+A[0]),A.splice(0));for(var t=A.splice(0),i=0,r=t.length;i<r;i++)t[i].runReaction()}_A.isRunningReactions=!1}var WA=f("Reaction",PA);function $A(A){var e=zA;zA=function(t){return A((function(){return e(t)}))}}function Ae(A){return console.warn("[mobx.spy] Is a no-op in production builds"),function(){}}function ee(){c(!1)}function te(A){return function(e,t,i){if(i){if(i.value)return{value:fA(A,i.value),enumerable:!1,configurable:!0,writable:!0};var r=i.initializer;return{enumerable:!1,configurable:!0,writable:!0,initializer:function(){return fA(A,r.call(this))}}}return ie(A).apply(this,arguments)}}function ie(A){return function(e,t,i){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,get:function(){},set:function(e){h(this,t,re(A,e))}})}}var re=function(A,e,t,i){return 1===arguments.length&&"function"==typeof A?fA(A.name||"<unnamed action>",A):2===arguments.length&&"function"==typeof e?fA(A,e):1===arguments.length&&"string"==typeof A?te(A):!0!==i?te(e).apply(null,arguments):void h(A,e,fA(A.name||e,t.value,this))};function ne(A,e){return dA("string"==typeof A?A:A.name||"<unnamed action>","function"==typeof A?A:e,this,void 0)}function ge(A){return"function"==typeof A&&!0===A.isMobxAction}function oe(A,e,t){h(A,e,fA(e,t.bind(A)))}function ae(A,e){void 0===e&&(e=C);var t,i=e&&e.name||A.name||"Autorun@"+s();if(!e.scheduler&&!e.delay)t=new PA(i,(function(){this.track(g)}),e.onError,e.requiresObservable);else{var r=Ce(e),n=!1;t=new PA(i,(function(){n||(n=!0,r((function(){n=!1,t.isDisposed||t.track(g)})))}),e.onError,e.requiresObservable)}function g(){A(t)}return t.schedule(),t.getDisposer()}re.bound=function(A,e,t,i){return!0===i?(oe(A,e,t.value),null):t?{configurable:!0,enumerable:!1,get:function(){return oe(this,e,t.value||t.initializer.call(this)),this[e]},set:ee}:{enumerable:!1,configurable:!0,set:function(A){oe(this,e,A)},get:function(){}}};var Ie=function(A){return A()};function Ce(A){return A.scheduler?A.scheduler:A.delay?function(e){return setTimeout(e,A.delay)}:Ie}function se(A,e,t){void 0===t&&(t=C);var i,r,n,g=t.name||"Reaction@"+s(),o=re(g,t.onError?(i=t.onError,r=e,function(){try{return r.apply(this,arguments)}catch(A){i.call(this,A)}}):e),a=!t.scheduler&&!t.delay,I=Ce(t),c=!0,l=!1,B=t.compareStructural?M.structural:t.equals||M.default,Q=new PA(g,(function(){c||a?u():l||(l=!0,I(u))}),t.onError,t.requiresObservable);function u(){if(l=!1,!Q.isDisposed){var e=!1;Q.track((function(){var t=A(Q);e=c||!B(n,t),n=t})),c&&t.fireImmediately&&o(n,Q),c||!0!==e||o(n,Q),c&&(c=!1)}}return Q.schedule(),Q.getDisposer()}function ce(A,e,t){return Be("onBecomeObserved",A,e,t)}function le(A,e,t){return Be("onBecomeUnobserved",A,e,t)}function Be(A,e,t,i){var r="function"==typeof i?Rt(e,t):Rt(e),n="function"==typeof i?i:t,g=A+"Listeners";return r[g]?r[g].add(n):r[g]=new Set([n]),"function"!=typeof r[A]?c(!1):function(){var A=r[g];A&&(A.delete(n),0===A.size&&delete r[g])}}function Qe(A){var e=A.enforceActions,t=A.computedRequiresReaction,i=A.computedConfigurable,r=A.disableErrorBoundaries,n=A.reactionScheduler,g=A.reactionRequiresObservable,o=A.observableRequiresReaction;if(!0===A.isolateGlobalState&&((_A.pendingReactions.length||_A.inBatch||_A.isRunningReactions)&&c("isolateGlobalState should be called before MobX is running any reactions"),YA=!0,SA&&(0==--xA().__mobxInstanceCount&&(xA().__mobxGlobals=void 0),_A=new GA)),void 0!==e){var a=void 0;switch(e){case!0:case"observed":a=!0;break;case!1:case"never":a=!1;break;case"strict":case"always":a="strict";break;default:c("Invalid value for 'enforceActions': '"+e+"', expected 'never', 'always' or 'observed'")}_A.enforceActions=a,_A.allowStateChanges=!0!==a&&"strict"!==a}void 0!==t&&(_A.computedRequiresReaction=!!t),void 0!==g&&(_A.reactionRequiresObservable=!!g),void 0!==o&&(_A.observableRequiresReaction=!!o,_A.allowStateReads=!_A.observableRequiresReaction),void 0!==i&&(_A.computedConfigurable=!!i),void 0!==r&&(!0===r&&console.warn("WARNING: Debug feature only. MobX will NOT recover from errors when `disableErrorBoundaries` is enabled."),_A.disableErrorBoundaries=!!r),n&&$A(n)}function ue(A,e){var t="function"==typeof A?A.prototype:A,i=function(A){var i=e[A];Array.isArray(i)||(i=[i]);var r=Object.getOwnPropertyDescriptor(t,A),n=i.reduce((function(e,i){return i(t,A,e)}),r);n&&Object.defineProperty(t,A,n)};for(var r in e)i(r);return A}function Ee(A,e,t,i){var r=he(i=H(i));return Y(A),vt(A,i.name,r.enhancer),e&&fe(A,e,t,r),A}function he(A){return A.defaultDecorator||(!1===A.deep?j:O)}function fe(A,e,t,i){var r,n;HA();try{var o=w(e);try{for(var a=g(o),I=a.next();!I.done;I=a.next()){var C=I.value,s=Object.getOwnPropertyDescriptor(e,C);0;var c=(t&&C in t?t[C]:s.get?AA:i)(A,C,s,!0);c&&Object.defineProperty(A,C,c)}}catch(A){r={error:A}}finally{try{I&&!I.done&&(n=a.return)&&n.call(a)}finally{if(r)throw r.error}}}finally{OA()}}function de(A,e){return pe(Rt(A,e))}function pe(A){var e,t,i={name:A.name};return A.observing&&A.observing.length>0&&(i.dependencies=(e=A.observing,t=[],e.forEach((function(A){-1===t.indexOf(A)&&t.push(A)})),t).map(pe)),i}function ye(A,e){return we(Rt(A,e))}function we(A){var e={name:A.name};return function(A){return A.observers&&A.observers.size>0}(A)&&(e.observers=Array.from(function(A){return A.observers}(A)).map(we)),e}var De=0;function ve(){this.message="FLOW_CANCELLED"}function me(A){return A instanceof ve}function be(A){1!==arguments.length&&c("Flow expects 1 argument and cannot be used as decorator");var e=A.name||"<unnamed flow>";return function(){var t,i=this,r=arguments,n=++De,g=re(e+" - runid: "+n+" - init",A).apply(i,r),o=void 0,a=new Promise((function(A,i){var r=0;function a(A){var t;o=void 0;try{t=re(e+" - runid: "+n+" - yield "+r++,g.next).call(g,A)}catch(A){return i(A)}C(t)}function I(A){var t;o=void 0;try{t=re(e+" - runid: "+n+" - yield "+r++,g.throw).call(g,A)}catch(A){return i(A)}C(t)}function C(e){if(!e||"function"!=typeof e.then)return e.done?A(e.value):(o=Promise.resolve(e.value)).then(a,I);e.then(C,i)}t=i,a(void 0)}));return a.cancel=re(e+" - runid: "+n+" - cancel",(function(){try{o&&ke(o);var A=g.return(void 0),e=Promise.resolve(A.value);e.then(Q,Q),ke(e),t(new ve)}catch(A){t(A)}})),a}}function ke(A){"function"==typeof A.cancel&&A.cancel()}function Ne(A,e,t){var i;if(dt(A)||ut(A)||kA(A))i=Gt(A);else{if(!Mt(A))return c(!1);if("string"!=typeof e)return c(!1);i=Gt(A,e)}return void 0!==i.dehancer?c(!1):(i.dehancer="function"==typeof e?e:t,function(){i.dehancer=void 0})}function Me(A,e,t){return"function"==typeof t?function(A,e,t){return Gt(A,e).intercept(t)}(A,e,t):function(A,e){return Gt(A).intercept(e)}(A,e)}function Re(A,e){if(null==A)return!1;if(void 0!==e){if(!1===Mt(A))return!1;if(!A[m].values.has(e))return!1;var t=Rt(A,e);return MA(t)}return MA(A)}function Ge(A){return arguments.length>1?c(!1):Re(A)}function Fe(A,e){return"string"!=typeof e?c(!1):Re(A,e)}function xe(A,e){return null!=A&&(void 0!==e?!!Mt(A)&&A[m].values.has(e):Mt(A)||!!A[m]||k(A)||WA(A)||MA(A))}function Se(A){return 1!==arguments.length&&c(!1),xe(A)}function Ye(A,e){return"string"!=typeof e?c(!1):xe(A,e)}function _e(A){return Mt(A)?A[m].getKeys():dt(A)||wt(A)?Array.from(A.keys()):ut(A)?A.map((function(A,e){return e})):c(!1)}function Ue(A){return Mt(A)?_e(A).map((function(e){return A[e]})):dt(A)?_e(A).map((function(e){return A.get(e)})):wt(A)?Array.from(A.values()):ut(A)?A.slice():c(!1)}function Le(A){return Mt(A)?_e(A).map((function(e){return[e,A[e]]})):dt(A)?_e(A).map((function(e){return[e,A.get(e)]})):wt(A)?Array.from(A.entries()):ut(A)?A.map((function(A,e){return[e,A]})):c(!1)}function Ke(A,e,t){if(2!==arguments.length||wt(A))if(Mt(A)){var i=A[m],r=i.values.get(e);r?i.write(e,t):i.addObservableProp(e,t,i.defaultEnhancer)}else if(dt(A))A.set(e,t);else if(wt(A))A.add(e);else{if(!ut(A))return c(!1);"number"!=typeof e&&(e=parseInt(e,10)),l(e>=0,"Not a valid index: '"+e+"'"),HA(),e>=A.length&&(A.length=e+1),A[e]=t,OA()}else{HA();var n=e;try{for(var g in n)Ke(A,g,n[g])}finally{OA()}}}function Je(A,e){if(Mt(A))A[m].remove(e);else if(dt(A))A.delete(e);else if(wt(A))A.delete(e);else{if(!ut(A))return c(!1);"number"!=typeof e&&(e=parseInt(e,10)),l(e>=0,"Not a valid index: '"+e+"'"),A.splice(e,1)}}function Te(A,e){return Mt(A)?Gt(A).has(e):dt(A)||wt(A)?A.has(e):ut(A)?e>=0&&e<A.length:c(!1)}function He(A,e){if(Te(A,e))return Mt(A)?A[e]:dt(A)?A.get(e):ut(A)?A[e]:c(!1)}function Oe(A,e,t,i){return"function"==typeof t?function(A,e,t,i){return Gt(A,e).observe(t,i)}(A,e,t,i):function(A,e,t){return Gt(A).observe(e,t)}(A,e,t)}ve.prototype=Object.create(Error.prototype);var qe={detectCycles:!0,exportMapsAsObjects:!0,recurseEverything:!1};function je(A,e,t,i){return i.detectCycles&&A.set(e,t),t}function Pe(A,e){var t;return"boolean"==typeof e&&(e={detectCycles:e}),e||(e=qe),e.detectCycles=void 0===e.detectCycles?!0===e.recurseEverything:!0===e.detectCycles,e.detectCycles&&(t=new Map),function A(e,t,i){if(!t.recurseEverything&&!Se(e))return e;if("object"!=typeof e)return e;if(null===e)return null;if(e instanceof Date)return e;if(kA(e))return A(e.get(),t,i);if(Se(e)&&_e(e),!0===t.detectCycles&&null!==e&&i.has(e))return i.get(e);if(ut(e)||Array.isArray(e)){var r=je(i,e,[],t),n=e.map((function(e){return A(e,t,i)}));r.length=n.length;for(var g=0,o=n.length;g<o;g++)r[g]=n[g];return r}if(wt(e)||Object.getPrototypeOf(e)===Set.prototype){if(!1===t.exportMapsAsObjects){var a=je(i,e,new Set,t);return e.forEach((function(e){a.add(A(e,t,i))})),a}var I=je(i,e,[],t);return e.forEach((function(e){I.push(A(e,t,i))})),I}if(dt(e)||Object.getPrototypeOf(e)===Map.prototype){if(!1===t.exportMapsAsObjects){var C=je(i,e,new Map,t);return e.forEach((function(e,r){C.set(r,A(e,t,i))})),C}var s=je(i,e,{},t);return e.forEach((function(e,r){s[r]=A(e,t,i)})),s}var c=je(i,e,{},t);return w(e).forEach((function(r){c[r]=A(e[r],t,i)})),c}(A,e,t)}function Ve(){for(var A=[],e=0;e<arguments.length;e++)A[e]=arguments[e];var t=!1;"boolean"==typeof A[A.length-1]&&(t=A.pop());var i=ze(A);if(!i)return c(!1);i.isTracing===$.NONE&&console.log("[mobx.trace] '"+i.name+"' tracing enabled"),i.isTracing=t?$.BREAK:$.LOG}function ze(A){switch(A.length){case 0:return _A.trackingDerivation;case 1:return Rt(A[0]);case 2:return Rt(A[0],A[1])}}function Ze(A,e){void 0===e&&(e=void 0),HA();try{return A.apply(e)}finally{OA()}}function Xe(A,e,t){return 1===arguments.length||e&&"object"==typeof e?$e(A,e):We(A,e,t||{})}function We(A,e,t){var i;"number"==typeof t.timeout&&(i=setTimeout((function(){if(!n[m].isDisposed){n();var A=new Error("WHEN_TIMEOUT");if(!t.onError)throw A;t.onError(A)}}),t.timeout)),t.name=t.name||"When@"+s();var r=fA(t.name+"-effect",e),n=ae((function(e){A()&&(e.dispose(),i&&clearTimeout(i),r())}),t);return n}function $e(A,e){var t;var i=new Promise((function(i,r){var g=We(A,i,n(n({},e),{onError:r}));t=function(){g(),r("WHEN_CANCELLED")}}));return i.cancel=t,i}function At(A){return A[m]}function et(A){return"string"==typeof A||"number"==typeof A||"symbol"==typeof A}var tt={has:function(A,e){if(e===m||"constructor"===e||e===R)return!0;var t=At(A);return et(e)?t.has(e):e in A},get:function(A,e){if(e===m||"constructor"===e||e===R)return A[e];var t=At(A),i=t.values.get(e);if(i instanceof b){var r=i.get();return void 0===r&&t.has(e),r}return et(e)&&t.has(e),A[e]},set:function(A,e,t){return!!et(e)&&(Ke(A,e,t),!0)},deleteProperty:function(A,e){return!!et(e)&&(At(A).remove(e),!0)},ownKeys:function(A){return At(A).keysAtom.reportObserved(),Reflect.ownKeys(A)},preventExtensions:function(A){return c("Dynamic observable objects cannot be frozen"),!1}};function it(A){var e=new Proxy(A,tt);return A[m].proxy=e,e}function rt(A){return void 0!==A.interceptors&&A.interceptors.length>0}function nt(A,e){var t=A.interceptors||(A.interceptors=[]);return t.push(e),B((function(){var A=t.indexOf(e);-1!==A&&t.splice(A,1)}))}function gt(A,e){var t=sA();try{for(var i=a(A.interceptors||[]),r=0,n=i.length;r<n&&(l(!(e=i[r](e))||e.type,"Intercept handlers should return nothing or a change object"),e);r++);return e}finally{cA(t)}}function ot(A){return void 0!==A.changeListeners&&A.changeListeners.length>0}function at(A,e){var t=A.changeListeners||(A.changeListeners=[]);return t.push(e),B((function(){var A=t.indexOf(e);-1!==A&&t.splice(A,1)}))}function It(A,e){var t=sA(),i=A.changeListeners;if(i){for(var r=0,n=(i=i.slice()).length;r<n;r++)i[r](e);cA(t)}}var Ct={get:function(A,e){return e===m?A[m]:"length"===e?A[m].getArrayLength():"number"==typeof e?lt.get.call(A,e):"string"!=typeof e||isNaN(e)?lt.hasOwnProperty(e)?lt[e]:A[e]:lt.get.call(A,parseInt(e))},set:function(A,e,t){return"length"===e&&A[m].setArrayLength(t),"number"==typeof e&&lt.set.call(A,e,t),"symbol"==typeof e||isNaN(e)?A[e]=t:lt.set.call(A,parseInt(e),t),!0},preventExtensions:function(A){return c("Observable arrays cannot be frozen"),!1}};function st(A,e,t,i){void 0===t&&(t="ObservableArray@"+s()),void 0===i&&(i=!1);var r=new ct(t,e,i);!function(A,e,t){Object.defineProperty(A,e,{enumerable:!1,writable:!1,configurable:!0,value:t})}(r.values,m,r);var n=new Proxy(r.values,Ct);if(r.proxy=n,A&&A.length){var g=DA(!0);r.spliceWithArray(0,0,A),vA(g)}return n}var ct=function(){function A(A,e,t){this.owned=t,this.values=[],this.proxy=void 0,this.lastKnownLength=0,this.atom=new b(A||"ObservableArray@"+s()),this.enhancer=function(t,i){return e(t,i,A+"[..]")}}return A.prototype.dehanceValue=function(A){return void 0!==this.dehancer?this.dehancer(A):A},A.prototype.dehanceValues=function(A){return void 0!==this.dehancer&&A.length>0?A.map(this.dehancer):A},A.prototype.intercept=function(A){return nt(this,A)},A.prototype.observe=function(A,e){return void 0===e&&(e=!1),e&&A({object:this.proxy,type:"splice",index:0,added:this.values.slice(),addedCount:this.values.length,removed:[],removedCount:0}),at(this,A)},A.prototype.getArrayLength=function(){return this.atom.reportObserved(),this.values.length},A.prototype.setArrayLength=function(A){if("number"!=typeof A||A<0)throw new Error("[mobx.array] Out of range: "+A);var e=this.values.length;if(A!==e)if(A>e){for(var t=new Array(A-e),i=0;i<A-e;i++)t[i]=void 0;this.spliceWithArray(e,0,t)}else this.spliceWithArray(A,e-A)},A.prototype.updateArrayLength=function(A,e){if(A!==this.lastKnownLength)throw new Error("[mobx] Modification exception: the internal structure of an observable array was changed.");this.lastKnownLength+=e},A.prototype.spliceWithArray=function(A,e,t){var i=this;oA(this.atom);var r=this.values.length;if(void 0===A?A=0:A>r?A=r:A<0&&(A=Math.max(0,r+A)),e=1===arguments.length?r-A:null==e?0:Math.max(0,Math.min(e,r-A)),void 0===t&&(t=I),rt(this)){var n=gt(this,{object:this.proxy,type:"splice",index:A,removedCount:e,added:t});if(!n)return I;e=n.removedCount,t=n.added}t=0===t.length?t:t.map((function(A){return i.enhancer(A,void 0)}));var g=this.spliceItemsIntoValues(A,e,t);return 0===e&&0===t.length||this.notifyArraySplice(A,t,g),this.dehanceValues(g)},A.prototype.spliceItemsIntoValues=function(A,e,t){var i;if(t.length<1e4)return(i=this.values).splice.apply(i,a([A,e],t));var r=this.values.slice(A,A+e);return this.values=this.values.slice(0,A).concat(t,this.values.slice(A+e)),r},A.prototype.notifyArrayChildUpdate=function(A,e,t){var i=!this.owned&&!1,r=ot(this),n=r||i?{object:this.proxy,type:"update",index:A,newValue:e,oldValue:t}:null;this.atom.reportChanged(),r&&It(this,n)},A.prototype.notifyArraySplice=function(A,e,t){var i=!this.owned&&!1,r=ot(this),n=r||i?{object:this.proxy,type:"splice",index:A,removed:t,added:e,removedCount:t.length,addedCount:e.length}:null;this.atom.reportChanged(),r&&It(this,n)},A}(),lt={intercept:function(A){return this[m].intercept(A)},observe:function(A,e){return void 0===e&&(e=!1),this[m].observe(A,e)},clear:function(){return this.splice(0)},replace:function(A){var e=this[m];return e.spliceWithArray(0,e.values.length,A)},toJS:function(){return this.slice()},toJSON:function(){return this.toJS()},splice:function(A,e){for(var t=[],i=2;i<arguments.length;i++)t[i-2]=arguments[i];var r=this[m];switch(arguments.length){case 0:return[];case 1:return r.spliceWithArray(A);case 2:return r.spliceWithArray(A,e)}return r.spliceWithArray(A,e,t)},spliceWithArray:function(A,e,t){return this[m].spliceWithArray(A,e,t)},push:function(){for(var A=[],e=0;e<arguments.length;e++)A[e]=arguments[e];var t=this[m];return t.spliceWithArray(t.values.length,0,A),t.values.length},pop:function(){return this.splice(Math.max(this[m].values.length-1,0),1)[0]},shift:function(){return this.splice(0,1)[0]},unshift:function(){for(var A=[],e=0;e<arguments.length;e++)A[e]=arguments[e];var t=this[m];return t.spliceWithArray(0,0,A),t.values.length},reverse:function(){var A=this.slice();return A.reverse.apply(A,arguments)},sort:function(A){var e=this.slice();return e.sort.apply(e,arguments)},remove:function(A){var e=this[m],t=e.dehanceValues(e.values).indexOf(A);return t>-1&&(this.splice(t,1),!0)},get:function(A){var e=this[m];if(e){if(A<e.values.length)return e.atom.reportObserved(),e.dehanceValue(e.values[A]);console.warn("[mobx.array] Attempt to read an array index ("+A+") that is out of bounds ("+e.values.length+"). Please check length first. Out of bound indices will not be tracked by MobX")}},set:function(A,e){var t=this[m],i=t.values;if(A<i.length){oA(t.atom);var r=i[A];if(rt(t)){var n=gt(t,{type:"update",object:t.proxy,index:A,newValue:e});if(!n)return;e=n.newValue}(e=t.enhancer(e,r))!==r&&(i[A]=e,t.notifyArrayChildUpdate(A,e,r))}else{if(A!==i.length)throw new Error("[mobx.array] Index out of bounds, "+A+" is larger than "+i.length);t.spliceWithArray(A,0,[e])}}};["concat","every","filter","forEach","indexOf","join","lastIndexOf","map","reduce","reduceRight","slice","some","toString","toLocaleString"].forEach((function(A){lt[A]=function(){var e=this[m];e.atom.reportObserved();var t=e.dehanceValues(e.values);return t[A].apply(t,arguments)}}));var Bt,Qt=f("ObservableArrayAdministration",ct);function ut(A){return u(A)&&Qt(A[m])}var Et,ht={},ft=function(){function A(A,e,t){if(void 0===e&&(e=L),void 0===t&&(t="ObservableMap@"+s()),this.enhancer=e,this.name=t,this[Bt]=ht,this._keysAtom=N(this.name+".keys()"),this[Symbol.toStringTag]="Map","function"!=typeof Map)throw new Error("mobx.map requires Map polyfill for the current browser. Check babel-polyfill or core-js/es6/map.js");this._data=new Map,this._hasMap=new Map,this.merge(A)}return A.prototype._has=function(A){return this._data.has(A)},A.prototype.has=function(A){var e=this;if(!_A.trackingDerivation)return this._has(A);var t=this._hasMap.get(A);if(!t){var i=t=new bA(this._has(A),K,this.name+"."+D(A)+"?",!1);this._hasMap.set(A,i),le(i,(function(){return e._hasMap.delete(A)}))}return t.get()},A.prototype.set=function(A,e){var t=this._has(A);if(rt(this)){var i=gt(this,{type:t?"update":"add",object:this,newValue:e,name:A});if(!i)return this;e=i.newValue}return t?this._updateValue(A,e):this._addValue(A,e),this},A.prototype.delete=function(A){var e=this;if(rt(this)&&!(i=gt(this,{type:"delete",object:this,name:A})))return!1;if(this._has(A)){var t=ot(this),i=t?{type:"delete",object:this,oldValue:this._data.get(A).value,name:A}:null;return Ze((function(){e._keysAtom.reportChanged(),e._updateHasMapEntry(A,!1),e._data.get(A).setNewValue(void 0),e._data.delete(A)})),t&&It(this,i),!0}return!1},A.prototype._updateHasMapEntry=function(A,e){var t=this._hasMap.get(A);t&&t.setNewValue(e)},A.prototype._updateValue=function(A,e){var t=this._data.get(A);if((e=t.prepareNewValue(e))!==_A.UNCHANGED){var i=ot(this),r=i?{type:"update",object:this,oldValue:t.value,name:A,newValue:e}:null;0,t.setNewValue(e),i&&It(this,r)}},A.prototype._addValue=function(A,e){var t=this;oA(this._keysAtom),Ze((function(){var i=new bA(e,t.enhancer,t.name+"."+D(A),!1);t._data.set(A,i),e=i.value,t._updateHasMapEntry(A,!0),t._keysAtom.reportChanged()}));var i=ot(this),r=i?{type:"add",object:this,name:A,newValue:e}:null;i&&It(this,r)},A.prototype.get=function(A){return this.has(A)?this.dehanceValue(this._data.get(A).get()):this.dehanceValue(void 0)},A.prototype.dehanceValue=function(A){return void 0!==this.dehancer?this.dehancer(A):A},A.prototype.keys=function(){return this._keysAtom.reportObserved(),this._data.keys()},A.prototype.values=function(){var A=this,e=0,t=Array.from(this.keys());return Ut({next:function(){return e<t.length?{value:A.get(t[e++]),done:!1}:{done:!0}}})},A.prototype.entries=function(){var A=this,e=0,t=Array.from(this.keys());return Ut({next:function(){if(e<t.length){var i=t[e++];return{value:[i,A.get(i)],done:!1}}return{done:!0}}})},A.prototype[(Bt=m,Symbol.iterator)]=function(){return this.entries()},A.prototype.forEach=function(A,e){var t,i;try{for(var r=g(this),n=r.next();!n.done;n=r.next()){var a=o(n.value,2),I=a[0],C=a[1];A.call(e,C,I,this)}}catch(A){t={error:A}}finally{try{n&&!n.done&&(i=r.return)&&i.call(r)}finally{if(t)throw t.error}}},A.prototype.merge=function(A){var e=this;return dt(A)&&(A=A.toJS()),Ze((function(){E(A)?w(A).forEach((function(t){return e.set(t,A[t])})):Array.isArray(A)?A.forEach((function(A){var t=o(A,2),i=t[0],r=t[1];return e.set(i,r)})):p(A)?(A.constructor!==Map&&c("Cannot initialize from classes that inherit from Map: "+A.constructor.name),A.forEach((function(A,t){return e.set(t,A)}))):null!=A&&c("Cannot initialize map from "+A)})),this},A.prototype.clear=function(){var A=this;Ze((function(){CA((function(){var e,t;try{for(var i=g(A.keys()),r=i.next();!r.done;r=i.next()){var n=r.value;A.delete(n)}}catch(A){e={error:A}}finally{try{r&&!r.done&&(t=i.return)&&t.call(i)}finally{if(e)throw e.error}}}))}))},A.prototype.replace=function(A){var e=this;return Ze((function(){var t,i=E(t=A)?Object.keys(t):Array.isArray(t)?t.map((function(A){return o(A,1)[0]})):p(t)||dt(t)?Array.from(t.keys()):c("Cannot get keys from '"+t+"'");Array.from(e.keys()).filter((function(A){return-1===i.indexOf(A)})).forEach((function(A){return e.delete(A)})),e.merge(A)})),this},Object.defineProperty(A.prototype,"size",{get:function(){return this._keysAtom.reportObserved(),this._data.size},enumerable:!0,configurable:!0}),A.prototype.toPOJO=function(){var A,e,t={};try{for(var i=g(this),r=i.next();!r.done;r=i.next()){var n=o(r.value,2),a=n[0],I=n[1];t["symbol"==typeof a?a:D(a)]=I}}catch(e){A={error:e}}finally{try{r&&!r.done&&(e=i.return)&&e.call(i)}finally{if(A)throw A.error}}return t},A.prototype.toJS=function(){return new Map(this)},A.prototype.toJSON=function(){return this.toPOJO()},A.prototype.toString=function(){var A=this;return this.name+"[{ "+Array.from(this.keys()).map((function(e){return D(e)+": "+A.get(e)})).join(", ")+" }]"},A.prototype.observe=function(A,e){return at(this,A)},A.prototype.intercept=function(A){return nt(this,A)},A}(),dt=f("ObservableMap",ft),pt={},yt=function(){function A(A,e,t){if(void 0===e&&(e=L),void 0===t&&(t="ObservableSet@"+s()),this.name=t,this[Et]=pt,this._data=new Set,this._atom=N(this.name),this[Symbol.toStringTag]="Set","function"!=typeof Set)throw new Error("mobx.set requires Set polyfill for the current browser. Check babel-polyfill or core-js/es6/set.js");this.enhancer=function(A,i){return e(A,i,t)},A&&this.replace(A)}return A.prototype.dehanceValue=function(A){return void 0!==this.dehancer?this.dehancer(A):A},A.prototype.clear=function(){var A=this;Ze((function(){CA((function(){var e,t;try{for(var i=g(A._data.values()),r=i.next();!r.done;r=i.next()){var n=r.value;A.delete(n)}}catch(A){e={error:A}}finally{try{r&&!r.done&&(t=i.return)&&t.call(i)}finally{if(e)throw e.error}}}))}))},A.prototype.forEach=function(A,e){var t,i;try{for(var r=g(this),n=r.next();!n.done;n=r.next()){var o=n.value;A.call(e,o,o,this)}}catch(A){t={error:A}}finally{try{n&&!n.done&&(i=r.return)&&i.call(r)}finally{if(t)throw t.error}}},Object.defineProperty(A.prototype,"size",{get:function(){return this._atom.reportObserved(),this._data.size},enumerable:!0,configurable:!0}),A.prototype.add=function(A){var e=this;if((oA(this._atom),rt(this))&&!(i=gt(this,{type:"add",object:this,newValue:A})))return this;if(!this.has(A)){Ze((function(){e._data.add(e.enhancer(A,void 0)),e._atom.reportChanged()}));var t=ot(this),i=t?{type:"add",object:this,newValue:A}:null;0,t&&It(this,i)}return this},A.prototype.delete=function(A){var e=this;if(rt(this)&&!(i=gt(this,{type:"delete",object:this,oldValue:A})))return!1;if(this.has(A)){var t=ot(this),i=t?{type:"delete",object:this,oldValue:A}:null;return Ze((function(){e._atom.reportChanged(),e._data.delete(A)})),t&&It(this,i),!0}return!1},A.prototype.has=function(A){return this._atom.reportObserved(),this._data.has(this.dehanceValue(A))},A.prototype.entries=function(){var A=0,e=Array.from(this.keys()),t=Array.from(this.values());return Ut({next:function(){var i=A;return A+=1,i<t.length?{value:[e[i],t[i]],done:!1}:{done:!0}}})},A.prototype.keys=function(){return this.values()},A.prototype.values=function(){this._atom.reportObserved();var A=this,e=0,t=Array.from(this._data.values());return Ut({next:function(){return e<t.length?{value:A.dehanceValue(t[e++]),done:!1}:{done:!0}}})},A.prototype.replace=function(A){var e=this;return wt(A)&&(A=A.toJS()),Ze((function(){Array.isArray(A)||y(A)?(e.clear(),A.forEach((function(A){return e.add(A)}))):null!=A&&c("Cannot initialize set from "+A)})),this},A.prototype.observe=function(A,e){return at(this,A)},A.prototype.intercept=function(A){return nt(this,A)},A.prototype.toJS=function(){return new Set(this)},A.prototype.toString=function(){return this.name+"[ "+Array.from(this).join(", ")+" ]"},A.prototype[(Et=m,Symbol.iterator)]=function(){return this.values()},A}(),wt=f("ObservableSet",yt),Dt=function(){function A(A,e,t,i){void 0===e&&(e=new Map),this.target=A,this.values=e,this.name=t,this.defaultEnhancer=i,this.keysAtom=new b(t+".keys")}return A.prototype.read=function(A){return this.values.get(A).get()},A.prototype.write=function(A,e){var t=this.target,i=this.values.get(A);if(i instanceof NA)i.set(e);else{if(rt(this)){if(!(n=gt(this,{type:"update",object:this.proxy||t,name:A,newValue:e})))return;e=n.newValue}if((e=i.prepareNewValue(e))!==_A.UNCHANGED){var r=ot(this),n=r?{type:"update",object:this.proxy||t,oldValue:i.value,name:A,newValue:e}:null;0,i.setNewValue(e),r&&It(this,n)}}},A.prototype.has=function(A){var e=this.pendingKeys||(this.pendingKeys=new Map),t=e.get(A);if(t)return t.get();var i=!!this.values.get(A);return t=new bA(i,K,this.name+"."+D(A)+"?",!1),e.set(A,t),t.get()},A.prototype.addObservableProp=function(A,e,t){void 0===t&&(t=this.defaultEnhancer);var i=this.target;if(rt(this)){var r=gt(this,{object:this.proxy||i,name:A,type:"add",newValue:e});if(!r)return;e=r.newValue}var n=new bA(e,t,this.name+"."+D(A),!1);this.values.set(A,n),e=n.value,Object.defineProperty(i,A,function(A){return mt[A]||(mt[A]={configurable:!0,enumerable:!0,get:function(){return this[m].read(A)},set:function(e){this[m].write(A,e)}})}(A)),this.notifyPropertyAddition(A,e)},A.prototype.addComputedProp=function(A,e,t){var i=this.target;t.name=t.name||this.name+"."+D(e),this.values.set(e,new NA(t)),(A===i||function(A,e){var t=Object.getOwnPropertyDescriptor(A,e);return!t||!1!==t.configurable&&!1!==t.writable}(A,e))&&Object.defineProperty(A,e,function(A){return bt[A]||(bt[A]={configurable:_A.computedConfigurable,enumerable:!1,get:function(){return kt(this).read(A)},set:function(e){kt(this).write(A,e)}})}(e))},A.prototype.remove=function(A){if(this.values.has(A)){var e=this.target;if(rt(this))if(!(g=gt(this,{object:this.proxy||e,name:A,type:"remove"})))return;try{HA();var t=ot(this),i=this.values.get(A),r=i&&i.get();if(i&&i.set(void 0),this.keysAtom.reportChanged(),this.values.delete(A),this.pendingKeys){var n=this.pendingKeys.get(A);n&&n.set(!1)}delete this.target[A];var g=t?{type:"remove",object:this.proxy||e,oldValue:r,name:A}:null;0,t&&It(this,g)}finally{OA()}}},A.prototype.illegalAccess=function(A,e){console.warn("Property '"+e+"' of '"+A+"' was accessed through the prototype chain. Use 'decorate' instead to declare the prop or access it statically through it's owner")},A.prototype.observe=function(A,e){return at(this,A)},A.prototype.intercept=function(A){return nt(this,A)},A.prototype.notifyPropertyAddition=function(A,e){var t=ot(this),i=t?{type:"add",object:this.proxy||this.target,name:A,newValue:e}:null;if(t&&It(this,i),this.pendingKeys){var r=this.pendingKeys.get(A);r&&r.set(!0)}this.keysAtom.reportChanged()},A.prototype.getKeys=function(){var A,e;this.keysAtom.reportObserved();var t=[];try{for(var i=g(this.values),r=i.next();!r.done;r=i.next()){var n=o(r.value,2),a=n[0];n[1]instanceof bA&&t.push(a)}}catch(e){A={error:e}}finally{try{r&&!r.done&&(e=i.return)&&e.call(i)}finally{if(A)throw A.error}}return t},A}();function vt(A,e,t){if(void 0===e&&(e=""),void 0===t&&(t=L),Object.prototype.hasOwnProperty.call(A,m))return A[m];E(A)||(e=(A.constructor.name||"ObservableObject")+"@"+s()),e||(e="ObservableObject@"+s());var i=new Dt(A,new Map,D(e),t);return h(A,m,i),i}var mt=Object.create(null),bt=Object.create(null);function kt(A){var e=A[m];return e||(Y(A),A[m])}var Nt=f("ObservableObjectAdministration",Dt);function Mt(A){return!!u(A)&&(Y(A),Nt(A[m]))}function Rt(A,e){if("object"==typeof A&&null!==A){if(ut(A))return void 0!==e&&c(!1),A[m].atom;if(wt(A))return A[m];if(dt(A)){var t=A;return void 0===e?t._keysAtom:((i=t._data.get(e)||t._hasMap.get(e))||c(!1),i)}var i;if(Y(A),e&&!A[m]&&A[e],Mt(A))return e?((i=A[m].values.get(e))||c(!1),i):c(!1);if(k(A)||MA(A)||WA(A))return A}else if("function"==typeof A&&WA(A[m]))return A[m];return c(!1)}function Gt(A,e){return A||c("Expecting some object"),void 0!==e?Gt(Rt(A,e)):k(A)||MA(A)||WA(A)||dt(A)||wt(A)?A:(Y(A),A[m]?A[m]:void c(!1))}function Ft(A,e){return(void 0!==e?Rt(A,e):Mt(A)||dt(A)||wt(A)?Gt(A):Rt(A)).name}var xt=Object.prototype.toString;function St(A,e,t){return void 0===t&&(t=-1),function A(e,t,i,r,n){if(e===t)return 0!==e||1/e==1/t;if(null==e||null==t)return!1;if(e!=e)return t!=t;var g=typeof e;if("function"!==g&&"object"!==g&&"object"!=typeof t)return!1;var o=xt.call(e);if(o!==xt.call(t))return!1;switch(o){case"[object RegExp]":case"[object String]":return""+e==""+t;case"[object Number]":return+e!=+e?+t!=+t:0==+e?1/+e==1/t:+e==+t;case"[object Date]":case"[object Boolean]":return+e==+t;case"[object Symbol]":return"undefined"!=typeof Symbol&&Symbol.valueOf.call(e)===Symbol.valueOf.call(t);case"[object Map]":case"[object Set]":i>=0&&i++}e=Yt(e),t=Yt(t);var a="[object Array]"===o;if(!a){if("object"!=typeof e||"object"!=typeof t)return!1;var I=e.constructor,C=t.constructor;if(I!==C&&!("function"==typeof I&&I instanceof I&&"function"==typeof C&&C instanceof C)&&"constructor"in e&&"constructor"in t)return!1}if(0===i)return!1;i<0&&(i=-1);n=n||[];var s=(r=r||[]).length;for(;s--;)if(r[s]===e)return n[s]===t;if(r.push(e),n.push(t),a){if((s=e.length)!==t.length)return!1;for(;s--;)if(!A(e[s],t[s],i-1,r,n))return!1}else{var c=Object.keys(e),l=void 0;if(s=c.length,Object.keys(t).length!==s)return!1;for(;s--;)if(l=c[s],!_t(t,l)||!A(e[l],t[l],i-1,r,n))return!1}return r.pop(),n.pop(),!0}(A,e,t)}function Yt(A){return ut(A)?A.slice():p(A)||dt(A)||y(A)||wt(A)?Array.from(A.entries()):A}function _t(A,e){return Object.prototype.hasOwnProperty.call(A,e)}function Ut(A){return A[Symbol.iterator]=Lt,A}function Lt(){return this}if("undefined"==typeof Proxy||"undefined"==typeof Symbol)throw new Error("[mobx] MobX 5+ requires Proxy and Symbol objects. If your environment doesn't support Symbol or Proxy objects, please downgrade to MobX 4. For React Native Android, consider upgrading JSCore.");"object"==typeof __MOBX_DEVTOOLS_GLOBAL_HOOK__&&__MOBX_DEVTOOLS_GLOBAL_HOOK__.injectMobx({spy:Ae,extras:{getDebugName:Ft},$mobx:m})}.call(this,t(97),t(19))},function(A,e,t){"use strict";t.d(e,"a",(function(){return n}));var i=new Date,r=new Date;function n(A,e,t,g){function o(e){return A(e=0===arguments.length?new Date:new Date(+e)),e}return o.floor=function(e){return A(e=new Date(+e)),e},o.ceil=function(t){return A(t=new Date(t-1)),e(t,1),A(t),t},o.round=function(A){var e=o(A),t=o.ceil(A);return A-e<t-A?e:t},o.offset=function(A,t){return e(A=new Date(+A),null==t?1:Math.floor(t)),A},o.range=function(t,i,r){var n,g=[];if(t=o.ceil(t),r=null==r?1:Math.floor(r),!(t<i&&r>0))return g;do{g.push(n=new Date(+t)),e(t,r),A(t)}while(n<t&&t<i);return g},o.filter=function(t){return n((function(e){if(e>=e)for(;A(e),!t(e);)e.setTime(e-1)}),(function(A,i){if(A>=A)if(i<0)for(;++i<=0;)for(;e(A,-1),!t(A););else for(;--i>=0;)for(;e(A,1),!t(A););}))},t&&(o.count=function(e,n){return i.setTime(+e),r.setTime(+n),A(i),A(r),Math.floor(t(i,r))},o.every=function(A){return A=Math.floor(A),isFinite(A)&&A>0?A>1?o.filter(g?function(e){return g(e)%A==0}:function(e){return o.count(0,e)%A==0}):o:null}),o}},function(A,e,t){"use strict";t.d(e,"d",(function(){return i})),t.d(e,"c",(function(){return r})),t.d(e,"b",(function(){return n})),t.d(e,"a",(function(){return g})),t.d(e,"e",(function(){return o}));var i=1e3,r=6e4,n=36e5,g=864e5,o=6048e5},function(A,e,t){"use strict";t.d(e,"c",(function(){return n})),t.d(e,"b",(function(){return g})),t.d(e,"a",(function(){return o}));var i=t(78);function r(A,e){return function(t){return A+t*e}}function n(A,e){var t=e-A;return t?r(A,t>180||t<-180?t-360*Math.round(t/360):t):Object(i.a)(isNaN(A)?e:A)}function g(A){return 1==(A=+A)?o:function(e,t){return t-e?function(A,e,t){return A=Math.pow(A,t),e=Math.pow(e,t)-A,t=1/t,function(i){return Math.pow(A+i*e,t)}}(e,t,A):Object(i.a)(isNaN(e)?t:e)}}function o(A,e){var t=e-A;return t?r(A,t):Object(i.a)(isNaN(A)?e:A)}},function(A,e,t){"use strict";t.d(e,"g",(function(){return g})),t.d(e,"c",(function(){return o})),t.d(e,"k",(function(){return a})),t.d(e,"m",(function(){return I})),t.d(e,"i",(function(){return C})),t.d(e,"a",(function(){return s})),t.d(e,"e",(function(){return c})),t.d(e,"h",(function(){return l})),t.d(e,"d",(function(){return B})),t.d(e,"l",(function(){return Q})),t.d(e,"n",(function(){return u})),t.d(e,"j",(function(){return E})),t.d(e,"b",(function(){return h})),t.d(e,"f",(function(){return f}));var i=t(5),r=t(6);function n(A){return Object(i.a)((function(e){e.setDate(e.getDate()-(e.getDay()+7-A)%7),e.setHours(0,0,0,0)}),(function(A,e){A.setDate(A.getDate()+7*e)}),(function(A,e){return(e-A-(e.getTimezoneOffset()-A.getTimezoneOffset())*r.c)/r.e}))}var g=n(0),o=n(1),a=n(2),I=n(3),C=n(4),s=n(5),c=n(6),l=g.range,B=o.range,Q=a.range,u=I.range,E=C.range,h=s.range,f=c.range},function(A,e,t){"use strict";t.d(e,"g",(function(){return g})),t.d(e,"c",(function(){return o})),t.d(e,"k",(function(){return a})),t.d(e,"m",(function(){return I})),t.d(e,"i",(function(){return C})),t.d(e,"a",(function(){return s})),t.d(e,"e",(function(){return c})),t.d(e,"h",(function(){return l})),t.d(e,"d",(function(){return B})),t.d(e,"l",(function(){return Q})),t.d(e,"n",(function(){return u})),t.d(e,"j",(function(){return E})),t.d(e,"b",(function(){return h})),t.d(e,"f",(function(){return f}));var i=t(5),r=t(6);function n(A){return Object(i.a)((function(e){e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-A)%7),e.setUTCHours(0,0,0,0)}),(function(A,e){A.setUTCDate(A.getUTCDate()+7*e)}),(function(A,e){return(e-A)/r.e}))}var g=n(0),o=n(1),a=n(2),I=n(3),C=n(4),s=n(5),c=n(6),l=g.range,B=o.range,Q=a.range,u=I.range,E=C.range,h=s.range,f=c.range},function(A,e,t){"use strict";t.d(e,"a",(function(){return r})),t.d(e,"d",(function(){return n})),t.d(e,"c",(function(){return g})),t.d(e,"e",(function(){return d})),t.d(e,"h",(function(){return w})),t.d(e,"g",(function(){return D})),t.d(e,"b",(function(){return v})),t.d(e,"f",(function(){return R}));var i=t(21);function r(){}var n=.7,g=1/n,o="\\s*([+-]?\\d+)\\s*",a="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)\\s*",I="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)%\\s*",C=/^#([0-9a-f]{3,8})$/,s=new RegExp("^rgb\\("+[o,o,o]+"\\)$"),c=new RegExp("^rgb\\("+[I,I,I]+"\\)$"),l=new RegExp("^rgba\\("+[o,o,o,a]+"\\)$"),B=new RegExp("^rgba\\("+[I,I,I,a]+"\\)$"),Q=new RegExp("^hsl\\("+[a,I,I]+"\\)$"),u=new RegExp("^hsla\\("+[a,I,I,a]+"\\)$"),E={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function h(){return this.rgb().formatHex()}function f(){return this.rgb().formatRgb()}function d(A){var e,t;return A=(A+"").trim().toLowerCase(),(e=C.exec(A))?(t=e[1].length,e=parseInt(e[1],16),6===t?p(e):3===t?new v(e>>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===t?y(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===t?y(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|240&e,((15&e)<<4|15&e)/255):null):(e=s.exec(A))?new v(e[1],e[2],e[3],1):(e=c.exec(A))?new v(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=l.exec(A))?y(e[1],e[2],e[3],e[4]):(e=B.exec(A))?y(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=Q.exec(A))?N(e[1],e[2]/100,e[3]/100,1):(e=u.exec(A))?N(e[1],e[2]/100,e[3]/100,e[4]):E.hasOwnProperty(A)?p(E[A]):"transparent"===A?new v(NaN,NaN,NaN,0):null}function p(A){return new v(A>>16&255,A>>8&255,255&A,1)}function y(A,e,t,i){return i<=0&&(A=e=t=NaN),new v(A,e,t,i)}function w(A){return A instanceof r||(A=d(A)),A?new v((A=A.rgb()).r,A.g,A.b,A.opacity):new v}function D(A,e,t,i){return 1===arguments.length?w(A):new v(A,e,t,null==i?1:i)}function v(A,e,t,i){this.r=+A,this.g=+e,this.b=+t,this.opacity=+i}function m(){return"#"+k(this.r)+k(this.g)+k(this.b)}function b(){var A=this.opacity;return(1===(A=isNaN(A)?1:Math.max(0,Math.min(1,A)))?"rgb(":"rgba(")+Math.max(0,Math.min(255,Math.round(this.r)||0))+", "+Math.max(0,Math.min(255,Math.round(this.g)||0))+", "+Math.max(0,Math.min(255,Math.round(this.b)||0))+(1===A?")":", "+A+")")}function k(A){return((A=Math.max(0,Math.min(255,Math.round(A)||0)))<16?"0":"")+A.toString(16)}function N(A,e,t,i){return i<=0?A=e=t=NaN:t<=0||t>=1?A=e=NaN:e<=0&&(A=NaN),new G(A,e,t,i)}function M(A){if(A instanceof G)return new G(A.h,A.s,A.l,A.opacity);if(A instanceof r||(A=d(A)),!A)return new G;if(A instanceof G)return A;var e=(A=A.rgb()).r/255,t=A.g/255,i=A.b/255,n=Math.min(e,t,i),g=Math.max(e,t,i),o=NaN,a=g-n,I=(g+n)/2;return a?(o=e===g?(t-i)/a+6*(t<i):t===g?(i-e)/a+2:(e-t)/a+4,a/=I<.5?g+n:2-g-n,o*=60):a=I>0&&I<1?0:o,new G(o,a,I,A.opacity)}function R(A,e,t,i){return 1===arguments.length?M(A):new G(A,e,t,null==i?1:i)}function G(A,e,t,i){this.h=+A,this.s=+e,this.l=+t,this.opacity=+i}function F(A,e,t){return 255*(A<60?e+(t-e)*A/60:A<180?t:A<240?e+(t-e)*(240-A)/60:e)}Object(i.a)(r,d,{copy:function(A){return Object.assign(new this.constructor,this,A)},displayable:function(){return this.rgb().displayable()},hex:h,formatHex:h,formatHsl:function(){return M(this).formatHsl()},formatRgb:f,toString:f}),Object(i.a)(v,D,Object(i.b)(r,{brighter:function(A){return A=null==A?g:Math.pow(g,A),new v(this.r*A,this.g*A,this.b*A,this.opacity)},darker:function(A){return A=null==A?n:Math.pow(n,A),new v(this.r*A,this.g*A,this.b*A,this.opacity)},rgb:function(){return this},displayable:function(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:m,formatHex:m,formatRgb:b,toString:b})),Object(i.a)(G,R,Object(i.b)(r,{brighter:function(A){return A=null==A?g:Math.pow(g,A),new G(this.h,this.s,this.l*A,this.opacity)},darker:function(A){return A=null==A?n:Math.pow(n,A),new G(this.h,this.s,this.l*A,this.opacity)},rgb:function(){var A=this.h%360+360*(this.h<0),e=isNaN(A)||isNaN(this.s)?0:this.s,t=this.l,i=t+(t<.5?t:1-t)*e,r=2*t-i;return new v(F(A>=240?A-240:A+120,r,i),F(A,r,i),F(A<120?A+240:A-120,r,i),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl:function(){var A=this.opacity;return(1===(A=isNaN(A)?1:Math.max(0,Math.min(1,A)))?"hsl(":"hsla(")+(this.h||0)+", "+100*(this.s||0)+"%, "+100*(this.l||0)+"%"+(1===A?")":", "+A+")")}}))},function(A,e,t){"use strict";t.d(e,"a",(function(){return i.a})),t.d(e,"b",(function(){return r.a})),t.d(e,"c",(function(){return n.b})),t.d(e,"d",(function(){return g.a})),t.d(e,"g",(function(){return o.a})),t.d(e,"h",(function(){return a})),t.d(e,"m",(function(){return C})),t.d(e,"o",(function(){return s.a})),t.d(e,"p",(function(){return c.a})),t.d(e,"q",(function(){return l.a})),t.d(e,"u",(function(){return B.a})),t.d(e,"v",(function(){return Q.a})),t.d(e,"w",(function(){return u.a})),t.d(e,"x",(function(){return u.b})),t.d(e,"y",(function(){return E.a})),t.d(e,"r",(function(){return h.a})),t.d(e,"s",(function(){return h.b})),t.d(e,"t",(function(){return h.c})),t.d(e,"k",(function(){return p})),t.d(e,"l",(function(){return y})),t.d(e,"n",(function(){return D})),t.d(e,"i",(function(){return m})),t.d(e,"j",(function(){return b})),t.d(e,"e",(function(){return k.b})),t.d(e,"f",(function(){return k.a})),t.d(e,"z",(function(){return N})),t.d(e,"A",(function(){return M}));var i=t(72),r=t(123),n=t(68),g=t(117),o=t(122),a=function(A){var e=A.length;return function(t){return A[Math.max(0,Math.min(e-1,Math.floor(t*e)))]}},I=t(7),C=function(A,e){var t=Object(I.c)(+A,+e);return function(A){var e=t(A);return e-360*Math.floor(e/360)}},s=t(20),c=t(54),l=t(124),B=t(219),Q=t(118),u=t(166),E=t(220),h=t(62),f=t(10);function d(A){return function(e,t){var i=A((e=Object(f.f)(e)).h,(t=Object(f.f)(t)).h),r=Object(I.a)(e.s,t.s),n=Object(I.a)(e.l,t.l),g=Object(I.a)(e.opacity,t.opacity);return function(A){return e.h=i(A),e.s=r(A),e.l=n(A),e.opacity=g(A),e+""}}}var p=d(I.c),y=d(I.a),w=t(89);function D(A,e){var t=Object(I.a)((A=Object(w.a)(A)).l,(e=Object(w.a)(e)).l),i=Object(I.a)(A.a,e.a),r=Object(I.a)(A.b,e.b),n=Object(I.a)(A.opacity,e.opacity);return function(e){return A.l=t(e),A.a=i(e),A.b=r(e),A.opacity=n(e),A+""}}function v(A){return function(e,t){var i=A((e=Object(w.c)(e)).h,(t=Object(w.c)(t)).h),r=Object(I.a)(e.c,t.c),n=Object(I.a)(e.l,t.l),g=Object(I.a)(e.opacity,t.opacity);return function(A){return e.h=i(A),e.c=r(A),e.l=n(A),e.opacity=g(A),e+""}}}var m=v(I.c),b=v(I.a),k=t(154);function N(A,e){for(var t=0,i=e.length-1,r=e[0],n=new Array(i<0?0:i);t<i;)n[t]=A(r,r=e[++t]);return function(A){var e=Math.max(0,Math.min(i-1,Math.floor(A*=i)));return n[e](A-e)}}var M=function(A,e){for(var t=new Array(e),i=0;i<e;++i)t[i]=A(i/(e-1));return t}},function(A,e,t){"use strict";t.r(e),t.d(e,"create",(function(){return n})),t.d(e,"creator",(function(){return i.a})),t.d(e,"local",(function(){return o})),t.d(e,"matcher",(function(){return I.a})),t.d(e,"mouse",(function(){return C.a})),t.d(e,"namespace",(function(){return s.a})),t.d(e,"namespaces",(function(){return c.a})),t.d(e,"clientPoint",(function(){return l.a})),t.d(e,"select",(function(){return r.a})),t.d(e,"selectAll",(function(){return Q})),t.d(e,"selection",(function(){return B.b})),t.d(e,"selector",(function(){return u.a})),t.d(e,"selectorAll",(function(){return E.a})),t.d(e,"style",(function(){return h.b})),t.d(e,"touch",(function(){return f.a})),t.d(e,"touches",(function(){return p})),t.d(e,"window",(function(){return y.a})),t.d(e,"event",(function(){return w.c})),t.d(e,"customEvent",(function(){return w.a}));var i=t(51),r=t(77),n=function(A){return Object(r.a)(Object(i.a)(A).call(document.documentElement))},g=0;function o(){return new a}function a(){this._="@"+(++g).toString(36)}a.prototype=o.prototype={constructor:a,get:function(A){for(var e=this._;!(e in A);)if(!(A=A.parentNode))return;return A[e]},set:function(A,e){return A[this._]=e},remove:function(A){return this._ in A&&delete A[this._]},toString:function(){return this._}};var I=t(119),C=t(214),s=t(69),c=t(53),l=t(52),B=t(39),Q=function(A){return"string"==typeof A?new B.a([document.querySelectorAll(A)],[document.documentElement]):new B.a([null==A?[]:A],B.c)},u=t(70),E=t(120),h=t(121),f=t(213),d=t(76),p=function(A,e){null==e&&(e=Object(d.a)().touches);for(var t=0,i=e?e.length:0,r=new Array(i);t<i;++t)r[t]=Object(l.a)(A,e[t]);return r},y=t(71),w=t(37)},function(A,e,t){(function(e){var t=function(A){return A&&A.Math==Math&&A};A.exports=t("object"==typeof globalThis&&globalThis)||t("object"==typeof window&&window)||t("object"==typeof self&&self)||t("object"==typeof e&&e)||Function("return this")()}).call(this,t(19))},function(A,e,t){var i=t(13),r=t(178),n=t(23),g=t(138),o=t(182),a=t(275),I=r("wks"),C=i.Symbol,s=a?C:C&&C.withoutSetter||g;A.exports=function(A){return n(I,A)||(o&&n(C,A)?I[A]=C[A]:I[A]=s("Symbol."+A)),I[A]}},function(A,e,t){"use strict";var i=t(10);t.d(e,"a",(function(){return i.e})),t.d(e,"h",(function(){return i.g})),t.d(e,"e",(function(){return i.f}));var r=t(89);t.d(e,"f",(function(){return r.a})),t.d(e,"d",(function(){return r.c})),t.d(e,"g",(function(){return r.d})),t.d(e,"c",(function(){return r.b}));var n=t(127);t.d(e,"b",(function(){return n.a}))},function(A,e,t){"use strict";(function(A){t.d(e,"a",(function(){return N})),t.d(e,"b",(function(){return E})),t.d(e,"c",(function(){return a})),t.d(e,"d",(function(){return b})),t.d(e,"e",(function(){return Q})),t.d(e,"f",(function(){return u})),t.d(e,"g",(function(){return G})),t.d(e,"h",(function(){return F})),t.d(e,"i",(function(){return m})),t.d(e,"j",(function(){return o}));var i=t(4),r=t(1),n=t.n(r);if(!r.useState)throw new Error("mobx-react-lite requires React with Hooks support");if(!i.spy)throw new Error("mobx-react-lite requires mobx at least version 4 to be available");var g=!1;function o(A){g=A}function a(){return g}function I(){return(I=Object.assign||function(A){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(A[i]=t[i])}return A}).apply(this,arguments)}function C(){var A=Object(r.useState)(0)[1];return Object(r.useCallback)((function(){A((function(A){return A+1}))}),[])}function s(A){return"function"==typeof Symbol?Symbol.for(A):"__$mobx-react "+A+"__"}var c={};function l(){return"undefined"!=typeof window?window:void 0!==A?A:"undefined"!=typeof self?self:c}var B=s("observerBatching"),Q=function(A){"function"==typeof A&&Object(i.configure)({reactionScheduler:A}),l()[B]=!0},u=function(){Object(i.configure)({reactionScheduler:void 0}),l()[B]=!0},E=function(){return l()[B]};function h(A){return Object(i.getDependencyTree)(A)}var f,d=1e4,p=new Set;function y(){void 0===f&&(f=setTimeout(w,1e4))}function w(){f=void 0;var A=Date.now();p.forEach((function(e){var t=e.current;t&&A>=t.cleanAt&&(t.reaction.dispose(),e.current=null,p.delete(e))})),p.size>0&&y()}var D={};function v(A){return"observer"+A}function m(A,e,t){if(void 0===e&&(e="observed"),void 0===t&&(t=D),a())return A();var r,g=(t.useForceUpdate||C)(),o=n.a.useRef(null);if(!o.current){var I=new i.Reaction(v(e),(function(){s.mounted?g():(I.dispose(),o.current=null)})),s=function(A){return{cleanAt:Date.now()+d,reaction:A}}(I);o.current=s,r=o,p.add(r),y()}var c,l,B=o.current.reaction;if(n.a.useDebugValue(B,h),n.a.useEffect((function(){var A;return A=o,p.delete(A),o.current?o.current.mounted=!0:(o.current={reaction:new i.Reaction(v(e),(function(){g()})),cleanAt:1/0},g()),function(){o.current.reaction.dispose(),o.current=null}}),[]),B.track((function(){try{c=A()}catch(A){l=A}})),l)throw l;return c}function b(A,e){if(a())return A;var t,i,n,g=I({forwardRef:!1},e),o=A.displayName||A.name,C=function(e,t){return m((function(){return A(e,t)}),o)};return C.displayName=o,t=g.forwardRef?Object(r.memo)(Object(r.forwardRef)(C)):Object(r.memo)(C),i=A,n=t,Object.keys(i).forEach((function(A){k[A]||Object.defineProperty(n,A,Object.getOwnPropertyDescriptor(i,A))})),t.displayName=o,t}var k={$$typeof:!0,render:!0,compare:!0,type:!0};function N(A){var e=A.children,t=A.render,i=e||t;return"function"!=typeof i?null:m(i)}function M(A,e,t,i,r){var n="children"===e?"render":"children",g="function"==typeof A[e],o="function"==typeof A[n];return g&&o?new Error("MobX Observer: Do not use children and render in the same time in`"+t):g||o?null:new Error("Invalid prop `"+r+"` of type `"+typeof A[e]+"` supplied to `"+t+"`, expected `function`.")}function R(A,e){if(!e||void 0!==A){0;var t=n.a.useState((function(){return Object(i.observable)(A,{},{deep:!1})}))[0];return Object(i.runInAction)((function(){Object.assign(t,A)})),t}}function G(A){return R(A,!1)}function F(A,e){var t=R(e,!0);return n.a.useState((function(){var e=Object(i.observable)(A(t));return function(A){if(!A||"object"!=typeof A)return!1;var e=Object.getPrototypeOf(A);return!e||e===Object.prototype}(e)&&Object(i.runInAction)((function(){Object.keys(e).forEach((function(A){var t,r,n=e[A];"function"==typeof n&&(e[A]=(t=n,r=e,function(){for(var A=arguments.length,e=new Array(A),n=0;n<A;n++)e[n]=arguments[n];return Object(i.transaction)((function(){return t.apply(r,e)}))}))}))})),e}))[0]}N.propTypes={children:M,render:M},N.displayName="Observer"}).call(this,t(19))},function(A,e,t){"use strict";t.d(e,"d",(function(){return g})),t.d(e,"e",(function(){return B})),t.d(e,"c",(function(){return n})),t.d(e,"b",(function(){return Q})),t.d(e,"f",(function(){return u})),t.d(e,"a",(function(){return E}));function i(){}function r(A,e){var t=new i;if(A instanceof i)A.each((function(A,e){t.set(e,A)}));else if(Array.isArray(A)){var r,n=-1,g=A.length;if(null==e)for(;++n<g;)t.set(n,A[n]);else for(;++n<g;)t.set(e(r=A[n],n,A),r)}else if(A)for(var o in A)t.set(o,A[o]);return t}i.prototype=r.prototype={constructor:i,has:function(A){return"$"+A in this},get:function(A){return this["$"+A]},set:function(A,e){return this["$"+A]=e,this},remove:function(A){var e="$"+A;return e in this&&delete this[e]},clear:function(){for(var A in this)"$"===A[0]&&delete this[A]},keys:function(){var A=[];for(var e in this)"$"===e[0]&&A.push(e.slice(1));return A},values:function(){var A=[];for(var e in this)"$"===e[0]&&A.push(this[e]);return A},entries:function(){var A=[];for(var e in this)"$"===e[0]&&A.push({key:e.slice(1),value:this[e]});return A},size:function(){var A=0;for(var e in this)"$"===e[0]&&++A;return A},empty:function(){for(var A in this)if("$"===A[0])return!1;return!0},each:function(A){for(var e in this)"$"===e[0]&&A(this[e],e.slice(1),this)}};var n=r,g=function(){var A,e,t,i=[],r=[];function g(t,r,o,a){if(r>=i.length)return null!=A&&t.sort(A),null!=e?e(t):t;for(var I,C,s,c=-1,l=t.length,B=i[r++],Q=n(),u=o();++c<l;)(s=Q.get(I=B(C=t[c])+""))?s.push(C):Q.set(I,[C]);return Q.each((function(A,e){a(u,e,g(A,r,o,a))})),u}return t={object:function(A){return g(A,0,o,a)},map:function(A){return g(A,0,I,C)},entries:function(A){return function A(t,n){if(++n>i.length)return t;var g,o=r[n-1];return null!=e&&n>=i.length?g=t.entries():(g=[],t.each((function(e,t){g.push({key:t,values:A(e,n)})}))),null!=o?g.sort((function(A,e){return o(A.key,e.key)})):g}(g(A,0,I,C),0)},key:function(A){return i.push(A),t},sortKeys:function(A){return r[i.length-1]=A,t},sortValues:function(e){return A=e,t},rollup:function(A){return e=A,t}}};function o(){return{}}function a(A,e,t){A[e]=t}function I(){return n()}function C(A,e,t){A.set(e,t)}function s(){}var c=n.prototype;function l(A,e){var t=new s;if(A instanceof s)A.each((function(A){t.add(A)}));else if(A){var i=-1,r=A.length;if(null==e)for(;++i<r;)t.add(A[i]);else for(;++i<r;)t.add(e(A[i],i,A))}return t}s.prototype=l.prototype={constructor:s,has:c.has,add:function(A){return this["$"+(A+="")]=A,this},remove:c.remove,clear:c.clear,values:c.keys,size:c.size,empty:c.empty,each:c.each};var B=l,Q=function(A){var e=[];for(var t in A)e.push(t);return e},u=function(A){var e=[];for(var t in A)e.push(A[t]);return e},E=function(A){var e=[];for(var t in A)e.push({key:t,value:A[t]});return e}},function(A,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.UnexpectedPropertyTree=e.DeserializeError=e.DeserializeResultBuilder=e.DeserializeResult=void 0;class i{constructor(A,e,t,i){this.hasValue=A,this.errors=t,this.unprocessedPropertyTree=i,this.value=void 0,this.value=e}static fromValue(A){return new i(!0,A,[],void 0)}static fromError(...A){return new i(!1,void 0,A.map(A=>r.from(A)),void 0)}static fromValueWithError(A,...e){return new i(!0,A,e.map(A=>r.from(A)),void 0)}get hasErrors(){return this.errors.length>0}formatError(){return JSON.stringify(this.errors)}getValidValue(){if(this.hasErrors)throw new Error(this.formatError());return this.value}}e.DeserializeResult=i;e.DeserializeResultBuilder=class{constructor(){this.hasValue=!1,this.value=void 0,this.errors=new Array}setValue(A){this.hasValue=!0,this.value=A}addError(...A){this.errors.push(...A.map(A=>r.from(A)))}build(){return new i(this.hasValue,this.value,this.errors,void 0)}};class r{constructor(A,e,t){this.message=A,this.path=e,this.alternatives=t}static from(A){return new r(A.message,void 0===A.path?[]:A.path,A.alternatives||[])}prependPath(A){return new r(this.message,[A].concat(...this.path),this.alternatives)}}e.DeserializeError=r;e.UnexpectedPropertyTree=class{constructor(A,e){this.properties=A,this.unprocessedProperties=e}merge(A){}}},function(A,e){var t;t=function(){return this}();try{t=t||new Function("return this")()}catch(A){"object"==typeof window&&(t=window)}A.exports=t},function(A,e,t){"use strict";e.a=function(A,e){return A=+A,e=+e,function(t){return A*(1-t)+e*t}}},function(A,e,t){"use strict";function i(A,e){var t=Object.create(A.prototype);for(var i in e)t[i]=e[i];return t}t.d(e,"b",(function(){return i})),e.a=function(A,e,t){A.prototype=e.prototype=t,t.constructor=A}},function(A,e,t){var i=t(13),r=t(274),n=t(177),g=t(25),o=t(14),a=o("iterator"),I=o("toStringTag"),C=n.values;for(var s in r){var c=i[s],l=c&&c.prototype;if(l){if(l[a]!==C)try{g(l,a,C)}catch(A){l[a]=C}if(l[I]||g(l,I,s),r[s])for(var B in n)if(l[B]!==n[B])try{g(l,B,n[B])}catch(A){l[B]=n[B]}}}},function(A,e){var t={}.hasOwnProperty;A.exports=function(A,e){return t.call(A,e)}},function(A,e){A.exports=function(A){try{return!!A()}catch(A){return!0}}},function(A,e,t){var i=t(26),r=t(31),n=t(64);A.exports=i?function(A,e,t){return r.f(A,e,n(1,t))}:function(A,e,t){return A[e]=t,A}},function(A,e,t){var i=t(24);A.exports=!i((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},function(A,e,t){"use strict";t.d(e,"b",(function(){return r}));var i=t(37);function r(){i.c.stopImmediatePropagation()}e.a=function(){i.c.preventDefault(),i.c.stopImmediatePropagation()}},function(A,e,t){"use strict";var i=this&&this.__createBinding||(Object.create?function(A,e,t,i){void 0===i&&(i=t),Object.defineProperty(A,i,{enumerable:!0,get:function(){return e[t]}})}:function(A,e,t,i){void 0===i&&(i=t),A[i]=e[t]}),r=this&&this.__exportStar||function(A,e){for(var t in A)"default"===t||e.hasOwnProperty(t)||i(e,A,t)};Object.defineProperty(e,"__esModule",{value:!0}),r(t(226),e),r(t(227),e),r(t(128),e),r(t(233),e),r(t(251),e),r(t(252),e),r(t(253),e)},function(A,e,t){"use strict";var i=this&&this.__createBinding||(Object.create?function(A,e,t,i){void 0===i&&(i=t),Object.defineProperty(A,i,{enumerable:!0,get:function(){return e[t]}})}:function(A,e,t,i){void 0===i&&(i=t),A[i]=e[t]}),r=this&&this.__exportStar||function(A,e){for(var t in A)"default"===t||e.hasOwnProperty(t)||i(e,A,t)};Object.defineProperty(e,"__esModule",{value:!0}),r(t(95),e),r(t(246),e);var n=t(247);Object.defineProperty(e,"sTypePackage",{enumerable:!0,get:function(){return n.sTypePackage}}),Object.defineProperty(e,"sSchemaDef",{enumerable:!0,get:function(){return n.sSchemaDef}});var g=t(249);Object.defineProperty(e,"TypeScriptTypeGenerator",{enumerable:!0,get:function(){return g.TypeScriptTypeGenerator}});var o=t(250);Object.defineProperty(e,"JsonSchemaGenerator",{enumerable:!0,get:function(){return o.JsonSchemaGenerator}}),r(t(80),e)},function(A,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.BaseSerializerImpl=e.BaseSerializer=void 0;const i=t(169),r=t(18),n=t(80),g=t(130),o=t(235);class a{get T(){throw new Error("Only for compile time")}asSerializer(){return this}deserialize(A,e=i.DeserializeContext.default){if(void 0===A)throw new Error("Got 'undefined' which is not valid JSON!");let t=e.withoutReportUnexpectedPropertiesAsError();if("object"==typeof A&&null!==A&&"$ns"in A&&t.firstDeserializationOnValue){const e=A.$ns;t=t.withPrefixes(g.fromEntries(Object.entries(e).map(([A,e])=>{if("string"!=typeof e)throw new Error(e+" has invalid type. Must be string.");return[A,n.namespace(e)]})))}let o=this.internalDeserialize(A,t);if(t.reportUnexpectedPropertiesAsError){const A=[...o.errors],e=(t,i)=>{for(const e of i.unprocessedProperties)A.push(r.DeserializeError.from({message:`Unexpected property "${e}"`,path:[...t,e]}));for(const[A,r]of Object.entries(i.properties))e([...t,A],r)};o.unprocessedPropertyTree&&e([],o.unprocessedPropertyTree),o=new r.DeserializeResult(o.hasValue,o.value,A,o.unprocessedPropertyTree)}return o}defineAs(A){return new I.NamedSerializerImpl(this,A,!0)}knownAs(A){return new I.NamedSerializerImpl(this,A,!1)}refine(A){return new I.RefinedSerializerImpl(this,A)}canSerialize(A){return this.internalCanSerialize(A)}serialize(A,e){e||(e=new o.SerializeContext);let t=e.prefixesEnabled;t||(e.prefixesEnabled=!0);const i=this.internalSerialize(A,e);if(!t&&"object"==typeof i&&null!==i){const A=e.getDefinedPrefixes();if(A.length>0){const e={};if("$ns"in i)throw new Error("This is unexpected");i.$ns=e;for(const{prefix:t,namespace:i}of A)e[t]=i}e.prefixesEnabled=!1}return i}}e.BaseSerializer=a;e.BaseSerializerImpl=class extends a{get TInterface(){throw new Error("Only For Runtime")}get TSerializer(){throw new Error("Only For Runtime")}};const I=t(129)},function(A,e,t){var i=t(26),r=t(180),n=t(33),g=t(102),o=Object.defineProperty;e.f=i?o:function(A,e,t){if(n(A),e=g(e,!0),n(t),r)try{return o(A,e,t)}catch(A){}if("get"in t||"set"in t)throw TypeError("Accessors not supported");return"value"in t&&(A[e]=t.value),A}},function(A,e){A.exports=function(A){return"object"==typeof A?null!==A:"function"==typeof A}},function(A,e,t){var i=t(32);A.exports=function(A){if(!i(A))throw TypeError(String(A)+" is not an object");return A}},function(A,e,t){var i=t(195),r="object"==typeof self&&self&&self.Object===Object&&self,n=i||r||Function("return this")();A.exports=n},function(A,e,t){"use strict";t.r(e);var i=t(5);t.d(e,"timeInterval",(function(){return i.a}));var r=t(91);t.d(e,"timeMillisecond",(function(){return r.a})),t.d(e,"timeMilliseconds",(function(){return r.b})),t.d(e,"utcMillisecond",(function(){return r.a})),t.d(e,"utcMilliseconds",(function(){return r.b}));var n=t(90);t.d(e,"timeSecond",(function(){return n.a})),t.d(e,"timeSeconds",(function(){return n.b})),t.d(e,"utcSecond",(function(){return n.a})),t.d(e,"utcSeconds",(function(){return n.b}));var g=t(157);t.d(e,"timeMinute",(function(){return g.a})),t.d(e,"timeMinutes",(function(){return g.b}));var o=t(156);t.d(e,"timeHour",(function(){return o.a})),t.d(e,"timeHours",(function(){return o.b}));var a=t(93);t.d(e,"timeDay",(function(){return a.b})),t.d(e,"timeDays",(function(){return a.a}));var I=t(8);t.d(e,"timeWeek",(function(){return I.g})),t.d(e,"timeWeeks",(function(){return I.h})),t.d(e,"timeSunday",(function(){return I.g})),t.d(e,"timeSundays",(function(){return I.h})),t.d(e,"timeMonday",(function(){return I.c})),t.d(e,"timeMondays",(function(){return I.d})),t.d(e,"timeTuesday",(function(){return I.k})),t.d(e,"timeTuesdays",(function(){return I.l})),t.d(e,"timeWednesday",(function(){return I.m})),t.d(e,"timeWednesdays",(function(){return I.n})),t.d(e,"timeThursday",(function(){return I.i})),t.d(e,"timeThursdays",(function(){return I.j})),t.d(e,"timeFriday",(function(){return I.a})),t.d(e,"timeFridays",(function(){return I.b})),t.d(e,"timeSaturday",(function(){return I.e})),t.d(e,"timeSaturdays",(function(){return I.f}));var C=t(155);t.d(e,"timeMonth",(function(){return C.a})),t.d(e,"timeMonths",(function(){return C.b}));var s=t(56);t.d(e,"timeYear",(function(){return s.a})),t.d(e,"timeYears",(function(){return s.b}));var c=t(160);t.d(e,"utcMinute",(function(){return c.a})),t.d(e,"utcMinutes",(function(){return c.b}));var l=t(159);t.d(e,"utcHour",(function(){return l.a})),t.d(e,"utcHours",(function(){return l.b}));var B=t(94);t.d(e,"utcDay",(function(){return B.a})),t.d(e,"utcDays",(function(){return B.b}));var Q=t(9);t.d(e,"utcWeek",(function(){return Q.g})),t.d(e,"utcWeeks",(function(){return Q.h})),t.d(e,"utcSunday",(function(){return Q.g})),t.d(e,"utcSundays",(function(){return Q.h})),t.d(e,"utcMonday",(function(){return Q.c})),t.d(e,"utcMondays",(function(){return Q.d})),t.d(e,"utcTuesday",(function(){return Q.k})),t.d(e,"utcTuesdays",(function(){return Q.l})),t.d(e,"utcWednesday",(function(){return Q.m})),t.d(e,"utcWednesdays",(function(){return Q.n})),t.d(e,"utcThursday",(function(){return Q.i})),t.d(e,"utcThursdays",(function(){return Q.j})),t.d(e,"utcFriday",(function(){return Q.a})),t.d(e,"utcFridays",(function(){return Q.b})),t.d(e,"utcSaturday",(function(){return Q.e})),t.d(e,"utcSaturdays",(function(){return Q.f}));var u=t(158);t.d(e,"utcMonth",(function(){return u.a})),t.d(e,"utcMonths",(function(){return u.b}));var E=t(57);t.d(e,"utcYear",(function(){return E.a})),t.d(e,"utcYears",(function(){return E.b}))},function(A,e,t){"use strict";t.d(e,"b",(function(){return r})),t.d(e,"c",(function(){return n})),t.d(e,"d",(function(){return g})),t.d(e,"e",(function(){return o})),t.d(e,"a",(function(){return I}));var i,r,n,g,o,a=t(125);function I(A){return i=Object(a.a)(A),r=i.format,n=i.parse,g=i.utcFormat,o=i.utcParse,i}I({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]})},function(A,e,t){"use strict";t.d(e,"c",(function(){return r})),t.d(e,"a",(function(){return C}));var i={},r=null;"undefined"!=typeof document&&("onmouseenter"in document.documentElement||(i={mouseenter:"mouseover",mouseleave:"mouseout"}));function n(A,e,t){return A=g(A,e,t),function(e){var t=e.relatedTarget;t&&(t===this||8&t.compareDocumentPosition(this))||A.call(this,e)}}function g(A,e,t){return function(i){var n=r;r=i;try{A.call(this,this.__data__,e,t)}finally{r=n}}}function o(A){return A.trim().split(/^|\s+/).map((function(A){var e="",t=A.indexOf(".");return t>=0&&(e=A.slice(t+1),A=A.slice(0,t)),{type:A,name:e}}))}function a(A){return function(){var e=this.__on;if(e){for(var t,i=0,r=-1,n=e.length;i<n;++i)t=e[i],A.type&&t.type!==A.type||t.name!==A.name?e[++r]=t:this.removeEventListener(t.type,t.listener,t.capture);++r?e.length=r:delete this.__on}}}function I(A,e,t){var r=i.hasOwnProperty(A.type)?n:g;return function(i,n,g){var o,a=this.__on,I=r(e,n,g);if(a)for(var C=0,s=a.length;C<s;++C)if((o=a[C]).type===A.type&&o.name===A.name)return this.removeEventListener(o.type,o.listener,o.capture),this.addEventListener(o.type,o.listener=I,o.capture=t),void(o.value=e);this.addEventListener(A.type,I,t),o={type:A.type,name:A.name,value:e,listener:I,capture:t},a?a.push(o):this.__on=[o]}}function C(A,e,t,i){var n=r;A.sourceEvent=r,r=A;try{return e.apply(t,i)}finally{r=n}}e.b=function(A,e,t){var i,r,n=o(A+""),g=n.length;if(!(arguments.length<2)){for(C=e?I:a,null==t&&(t=!1),i=0;i<g;++i)this.each(C(n[i],e,t));return this}var C=this.node().__on;if(C)for(var s,c=0,l=C.length;c<l;++c)for(i=0,s=C[c];i<g;++i)if((r=n[i]).type===s.type&&r.name===s.name)return s.value}},function(A,e,t){"use strict";var i=t(63);e.a=function(A){return(A=Object(i.a)(Math.abs(A)))?A[1]:NaN}},function(A,e,t){"use strict";t.d(e,"c",(function(){return V})),t.d(e,"a",(function(){return z}));var i=t(70),r=t(120),n=t(119),g=function(A){return new Array(A.length)};function o(A,e){this.ownerDocument=A.ownerDocument,this.namespaceURI=A.namespaceURI,this._next=null,this._parent=A,this.__data__=e}o.prototype={constructor:o,appendChild:function(A){return this._parent.insertBefore(A,this._next)},insertBefore:function(A,e){return this._parent.insertBefore(A,e)},querySelector:function(A){return this._parent.querySelector(A)},querySelectorAll:function(A){return this._parent.querySelectorAll(A)}};function a(A,e,t,i,r,n){for(var g,a=0,I=e.length,C=n.length;a<C;++a)(g=e[a])?(g.__data__=n[a],i[a]=g):t[a]=new o(A,n[a]);for(;a<I;++a)(g=e[a])&&(r[a]=g)}function I(A,e,t,i,r,n,g){var a,I,C,s={},c=e.length,l=n.length,B=new Array(c);for(a=0;a<c;++a)(I=e[a])&&(B[a]=C="$"+g.call(I,I.__data__,a,e),C in s?r[a]=I:s[C]=I);for(a=0;a<l;++a)(I=s[C="$"+g.call(A,n[a],a,n)])?(i[a]=I,I.__data__=n[a],s[C]=null):t[a]=new o(A,n[a]);for(a=0;a<c;++a)(I=e[a])&&s[B[a]]===I&&(r[a]=I)}function C(A,e){return A<e?-1:A>e?1:A>=e?0:NaN}var s=t(69);function c(A){return function(){this.removeAttribute(A)}}function l(A){return function(){this.removeAttributeNS(A.space,A.local)}}function B(A,e){return function(){this.setAttribute(A,e)}}function Q(A,e){return function(){this.setAttributeNS(A.space,A.local,e)}}function u(A,e){return function(){var t=e.apply(this,arguments);null==t?this.removeAttribute(A):this.setAttribute(A,t)}}function E(A,e){return function(){var t=e.apply(this,arguments);null==t?this.removeAttributeNS(A.space,A.local):this.setAttributeNS(A.space,A.local,t)}}var h=t(121);function f(A){return function(){delete this[A]}}function d(A,e){return function(){this[A]=e}}function p(A,e){return function(){var t=e.apply(this,arguments);null==t?delete this[A]:this[A]=t}}function y(A){return A.trim().split(/^|\s+/)}function w(A){return A.classList||new D(A)}function D(A){this._node=A,this._names=y(A.getAttribute("class")||"")}function v(A,e){for(var t=w(A),i=-1,r=e.length;++i<r;)t.add(e[i])}function m(A,e){for(var t=w(A),i=-1,r=e.length;++i<r;)t.remove(e[i])}function b(A){return function(){v(this,A)}}function k(A){return function(){m(this,A)}}function N(A,e){return function(){(e.apply(this,arguments)?v:m)(this,A)}}D.prototype={add:function(A){this._names.indexOf(A)<0&&(this._names.push(A),this._node.setAttribute("class",this._names.join(" ")))},remove:function(A){var e=this._names.indexOf(A);e>=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(A){return this._names.indexOf(A)>=0}};function M(){this.textContent=""}function R(A){return function(){this.textContent=A}}function G(A){return function(){var e=A.apply(this,arguments);this.textContent=null==e?"":e}}function F(){this.innerHTML=""}function x(A){return function(){this.innerHTML=A}}function S(A){return function(){var e=A.apply(this,arguments);this.innerHTML=null==e?"":e}}function Y(){this.nextSibling&&this.parentNode.appendChild(this)}function _(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}var U=t(51);function L(){return null}function K(){var A=this.parentNode;A&&A.removeChild(this)}function J(){var A=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(A,this.nextSibling):A}function T(){var A=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(A,this.nextSibling):A}var H=t(37),O=t(71);function q(A,e,t){var i=Object(O.a)(A),r=i.CustomEvent;"function"==typeof r?r=new r(e,t):(r=i.document.createEvent("Event"),t?(r.initEvent(e,t.bubbles,t.cancelable),r.detail=t.detail):r.initEvent(e,!1,!1)),A.dispatchEvent(r)}function j(A,e){return function(){return q(this,A,e)}}function P(A,e){return function(){return q(this,A,e.apply(this,arguments))}}var V=[null];function z(A,e){this._groups=A,this._parents=e}function Z(){return new z([[document.documentElement]],V)}z.prototype=Z.prototype={constructor:z,select:function(A){"function"!=typeof A&&(A=Object(i.a)(A));for(var e=this._groups,t=e.length,r=new Array(t),n=0;n<t;++n)for(var g,o,a=e[n],I=a.length,C=r[n]=new Array(I),s=0;s<I;++s)(g=a[s])&&(o=A.call(g,g.__data__,s,a))&&("__data__"in g&&(o.__data__=g.__data__),C[s]=o);return new z(r,this._parents)},selectAll:function(A){"function"!=typeof A&&(A=Object(r.a)(A));for(var e=this._groups,t=e.length,i=[],n=[],g=0;g<t;++g)for(var o,a=e[g],I=a.length,C=0;C<I;++C)(o=a[C])&&(i.push(A.call(o,o.__data__,C,a)),n.push(o));return new z(i,n)},filter:function(A){"function"!=typeof A&&(A=Object(n.a)(A));for(var e=this._groups,t=e.length,i=new Array(t),r=0;r<t;++r)for(var g,o=e[r],a=o.length,I=i[r]=[],C=0;C<a;++C)(g=o[C])&&A.call(g,g.__data__,C,o)&&I.push(g);return new z(i,this._parents)},data:function(A,e){if(!A)return u=new Array(this.size()),c=-1,this.each((function(A){u[++c]=A})),u;var t,i=e?I:a,r=this._parents,n=this._groups;"function"!=typeof A&&(t=A,A=function(){return t});for(var g=n.length,o=new Array(g),C=new Array(g),s=new Array(g),c=0;c<g;++c){var l=r[c],B=n[c],Q=B.length,u=A.call(l,l&&l.__data__,c,r),E=u.length,h=C[c]=new Array(E),f=o[c]=new Array(E);i(l,B,h,f,s[c]=new Array(Q),u,e);for(var d,p,y=0,w=0;y<E;++y)if(d=h[y]){for(y>=w&&(w=y+1);!(p=f[w])&&++w<E;);d._next=p||null}}return(o=new z(o,r))._enter=C,o._exit=s,o},enter:function(){return new z(this._enter||this._groups.map(g),this._parents)},exit:function(){return new z(this._exit||this._groups.map(g),this._parents)},join:function(A,e,t){var i=this.enter(),r=this,n=this.exit();return i="function"==typeof A?A(i):i.append(A+""),null!=e&&(r=e(r)),null==t?n.remove():t(n),i&&r?i.merge(r).order():r},merge:function(A){for(var e=this._groups,t=A._groups,i=e.length,r=t.length,n=Math.min(i,r),g=new Array(i),o=0;o<n;++o)for(var a,I=e[o],C=t[o],s=I.length,c=g[o]=new Array(s),l=0;l<s;++l)(a=I[l]||C[l])&&(c[l]=a);for(;o<i;++o)g[o]=e[o];return new z(g,this._parents)},order:function(){for(var A=this._groups,e=-1,t=A.length;++e<t;)for(var i,r=A[e],n=r.length-1,g=r[n];--n>=0;)(i=r[n])&&(g&&4^i.compareDocumentPosition(g)&&g.parentNode.insertBefore(i,g),g=i);return this},sort:function(A){function e(e,t){return e&&t?A(e.__data__,t.__data__):!e-!t}A||(A=C);for(var t=this._groups,i=t.length,r=new Array(i),n=0;n<i;++n){for(var g,o=t[n],a=o.length,I=r[n]=new Array(a),s=0;s<a;++s)(g=o[s])&&(I[s]=g);I.sort(e)}return new z(r,this._parents).order()},call:function(){var A=arguments[0];return arguments[0]=this,A.apply(null,arguments),this},nodes:function(){var A=new Array(this.size()),e=-1;return this.each((function(){A[++e]=this})),A},node:function(){for(var A=this._groups,e=0,t=A.length;e<t;++e)for(var i=A[e],r=0,n=i.length;r<n;++r){var g=i[r];if(g)return g}return null},size:function(){var A=0;return this.each((function(){++A})),A},empty:function(){return!this.node()},each:function(A){for(var e=this._groups,t=0,i=e.length;t<i;++t)for(var r,n=e[t],g=0,o=n.length;g<o;++g)(r=n[g])&&A.call(r,r.__data__,g,n);return this},attr:function(A,e){var t=Object(s.a)(A);if(arguments.length<2){var i=this.node();return t.local?i.getAttributeNS(t.space,t.local):i.getAttribute(t)}return this.each((null==e?t.local?l:c:"function"==typeof e?t.local?E:u:t.local?Q:B)(t,e))},style:h.a,property:function(A,e){return arguments.length>1?this.each((null==e?f:"function"==typeof e?p:d)(A,e)):this.node()[A]},classed:function(A,e){var t=y(A+"");if(arguments.length<2){for(var i=w(this.node()),r=-1,n=t.length;++r<n;)if(!i.contains(t[r]))return!1;return!0}return this.each(("function"==typeof e?N:e?b:k)(t,e))},text:function(A){return arguments.length?this.each(null==A?M:("function"==typeof A?G:R)(A)):this.node().textContent},html:function(A){return arguments.length?this.each(null==A?F:("function"==typeof A?S:x)(A)):this.node().innerHTML},raise:function(){return this.each(Y)},lower:function(){return this.each(_)},append:function(A){var e="function"==typeof A?A:Object(U.a)(A);return this.select((function(){return this.appendChild(e.apply(this,arguments))}))},insert:function(A,e){var t="function"==typeof A?A:Object(U.a)(A),r=null==e?L:"function"==typeof e?e:Object(i.a)(e);return this.select((function(){return this.insertBefore(t.apply(this,arguments),r.apply(this,arguments)||null)}))},remove:function(){return this.each(K)},clone:function(A){return this.select(A?T:J)},datum:function(A){return arguments.length?this.property("__data__",A):this.node().__data__},on:H.b,dispatch:function(A,e){return this.each(("function"==typeof e?P:j)(A,e))}};e.b=Z},function(A,e,t){"use strict";t.r(e),t.d(e,"MobXProviderContext",(function(){return x})),t.d(e,"PropTypes",(function(){return P})),t.d(e,"Provider",(function(){return S})),t.d(e,"disposeOnUnmount",(function(){return T})),t.d(e,"inject",(function(){return U})),t.d(e,"observer",(function(){return G}));var i=t(4),r=t(1),n=t.n(r),g=t(16);t.d(e,"Observer",(function(){return g.a})),t.d(e,"isObserverBatched",(function(){return g.b})),t.d(e,"isUsingStaticRendering",(function(){return g.c})),t.d(e,"observerBatching",(function(){return g.e})),t.d(e,"observerBatchingOptOut",(function(){return g.f})),t.d(e,"useAsObservableSource",(function(){return g.g})),t.d(e,"useLocalStore",(function(){return g.h})),t.d(e,"useObserver",(function(){return g.i})),t.d(e,"useStaticRendering",(function(){return g.j}));var o=0;var a={};function I(A){return a[A]||(a[A]=function(A){if("function"==typeof Symbol)return Symbol(A);var e="__$mobx-react "+A+" ("+o+")";return o++,e}(A)),a[A]}function C(A,e){if(s(A,e))return!0;if("object"!=typeof A||null===A||"object"!=typeof e||null===e)return!1;var t=Object.keys(A),i=Object.keys(e);if(t.length!==i.length)return!1;for(var r=0;r<t.length;r++)if(!Object.hasOwnProperty.call(e,t[r])||!s(A[t[r]],e[t[r]]))return!1;return!0}function s(A,e){return A===e?0!==A||1/A==1/e:A!=A&&e!=e}var c={$$typeof:1,render:1,compare:1,type:1,childContextTypes:1,contextType:1,contextTypes:1,defaultProps:1,getDefaultProps:1,getDerivedStateFromError:1,getDerivedStateFromProps:1,mixins:1,propTypes:1};function l(A,e,t){Object.hasOwnProperty.call(A,e)?A[e]=t:Object.defineProperty(A,e,{enumerable:!1,configurable:!0,writable:!0,value:t})}var B=I("patchMixins"),Q=I("patchedDefinition");function u(A,e){for(var t=this,i=arguments.length,r=new Array(i>2?i-2:0),n=2;n<i;n++)r[n-2]=arguments[n];e.locks++;try{var g;return null!=A&&(g=A.apply(this,r)),g}finally{e.locks--,0===e.locks&&e.methods.forEach((function(A){A.apply(t,r)}))}}function E(A,e){return function(){for(var t=arguments.length,i=new Array(t),r=0;r<t;r++)i[r]=arguments[r];u.call.apply(u,[this,A,e].concat(i))}}function h(A,e,t){var i=function(A,e){var t=A[B]=A[B]||{},i=t[e]=t[e]||{};return i.locks=i.locks||0,i.methods=i.methods||[],i}(A,e);i.methods.indexOf(t)<0&&i.methods.push(t);var r=Object.getOwnPropertyDescriptor(A,e);if(!r||!r[Q]){var n=A[e],g=function A(e,t,i,r,n){var g,o=E(n,r);return(g={})[Q]=!0,g.get=function(){return o},g.set=function(n){if(this===e)o=E(n,r);else{var g=A(this,t,i,r,n);Object.defineProperty(this,t,g)}},g.configurable=!0,g.enumerable=i,g}(A,e,r?r.enumerable:void 0,i,n);Object.defineProperty(A,e,g)}}var f=i.$mobx||"$mobx",d=I("isMobXReactObserver"),p=I("isUnmounted"),y=I("skipRender"),w=I("isForcingUpdate");function D(A){var e=A.prototype;if(A[d]){var t=v(e);console.warn("The provided component class ("+t+") \n has already been declared as an observer component.")}else A[d]=!0;if(e.componentWillReact)throw new Error("The componentWillReact life-cycle event is no longer supported");if(A.__proto__!==r.PureComponent)if(e.shouldComponentUpdate){if(e.shouldComponentUpdate!==b)throw new Error("It is not allowed to use shouldComponentUpdate in observer based components.")}else e.shouldComponentUpdate=b;k(e,"props"),k(e,"state");var i=e.render;return e.render=function(){return m.call(this,i)},h(e,"componentWillUnmount",(function(){var A;if(!0!==Object(g.c)()&&(null===(A=this.render[f])||void 0===A||A.dispose(),this[p]=!0,!this.render[f])){var e=v(this);console.warn("The reactive render of an observer class component ("+e+") \n was overriden after MobX attached. This may result in a memory leak if the \n overriden reactive render was not properly disposed.")}})),A}function v(A){return A.displayName||A.name||A.constructor&&(A.constructor.displayName||A.constructor.name)||"<component>"}function m(A){var e=this;if(!0===Object(g.c)())return A.call(this);l(this,y,!1),l(this,w,!1);var t=v(this),n=A.bind(this),o=!1,a=new i.Reaction(t+".render()",(function(){if(!o&&(o=!0,!0!==e[p])){var A=!0;try{l(e,w,!0),e[y]||r.Component.prototype.forceUpdate.call(e),A=!1}finally{l(e,w,!1),A&&a.dispose()}}}));function I(){o=!1;var A=void 0,e=void 0;if(a.track((function(){try{e=Object(i._allowStateChanges)(!1,n)}catch(e){A=e}})),A)throw A;return e}return a.reactComponent=this,I[f]=a,this.render=I,I.call(this)}function b(A,e){return Object(g.c)()&&console.warn("[mobx-react] It seems that a re-rendering of a React component is triggered while in static (server-side) mode. Please make sure components are rendered only once server-side."),this.state!==e||!C(this.props,A)}function k(A,e){var t=I("reactProp_"+e+"_valueHolder"),r=I("reactProp_"+e+"_atomHolder");function n(){return this[r]||l(this,r,Object(i.createAtom)("reactive "+e)),this[r]}Object.defineProperty(A,e,{configurable:!0,enumerable:!0,get:function(){var A=!1;return i._allowStateReadsStart&&i._allowStateReadsEnd&&(A=Object(i._allowStateReadsStart)(!0)),n.call(this).reportObserved(),i._allowStateReadsStart&&i._allowStateReadsEnd&&Object(i._allowStateReadsEnd)(A),this[t]},set:function(A){this[w]||C(this[t],A)?l(this,t,A):(l(this,t,A),l(this,y,!0),n.call(this).reportChanged(),l(this,y,!1))}})}var N="function"==typeof Symbol&&Symbol.for,M=N?Symbol.for("react.forward_ref"):"function"==typeof r.forwardRef&&Object(r.forwardRef)((function(A){return null})).$$typeof,R=N?Symbol.for("react.memo"):"function"==typeof r.memo&&Object(r.memo)((function(A){return null})).$$typeof;function G(A){if(!0===A.isMobxInjector&&console.warn("Mobx observer: You are trying to use 'observer' on a component that already has 'inject'. Please apply 'observer' before applying 'inject'"),R&&A.$$typeof===R)throw new Error("Mobx observer: You are trying to use 'observer' on a function component wrapped in either another observer or 'React.memo'. The observer already applies 'React.memo' for you.");if(M&&A.$$typeof===M){var e=A.render;if("function"!=typeof e)throw new Error("render property of ForwardRef was not a function");return Object(r.forwardRef)((function(){var A=arguments;return Object(r.createElement)(g.a,null,(function(){return e.apply(void 0,A)}))}))}return"function"!=typeof A||A.prototype&&A.prototype.render||A.isReactClass||Object.prototype.isPrototypeOf.call(r.Component,A)?D(A):Object(g.d)(A)}function F(){return(F=Object.assign||function(A){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(A[i]=t[i])}return A}).apply(this,arguments)}var x=n.a.createContext({});function S(A){var e=A.children,t=function(A,e){if(null==A)return{};var t,i,r={},n=Object.keys(A);for(i=0;i<n.length;i++)t=n[i],e.indexOf(t)>=0||(r[t]=A[t]);return r}(A,["children"]),i=n.a.useContext(x),r=n.a.useRef(F({},i,{},t)).current;return n.a.createElement(x.Provider,{value:r},e)}function Y(A,e,t,i){var r,g,o,a=n.a.forwardRef((function(t,i){var r=F({},t),g=n.a.useContext(x);return Object.assign(r,A(g||{},r)||{}),i&&(r.ref=i),n.a.createElement(e,r)}));return i&&(a=G(a)),a.isMobxInjector=!0,r=e,g=a,o=Object.getOwnPropertyNames(Object.getPrototypeOf(r)),Object.getOwnPropertyNames(r).forEach((function(A){c[A]||-1!==o.indexOf(A)||Object.defineProperty(g,A,Object.getOwnPropertyDescriptor(r,A))})),a.wrappedComponent=e,a.displayName=function(A,e){var t,i=A.displayName||A.name||A.constructor&&A.constructor.name||"Component";t=e?"inject-with-"+e+"("+i+")":"inject("+i+")";return t}(e,t),a}function _(A){return function(e,t){return A.forEach((function(A){if(!(A in t)){if(!(A in e))throw new Error("MobX injector: Store '"+A+"' is not available! Make sure it is provided by some Provider");t[A]=e[A]}})),t}}function U(){for(var A=arguments.length,e=new Array(A),t=0;t<A;t++)e[t]=arguments[t];if("function"==typeof arguments[0]){var i=arguments[0];return function(A){return Y(i,A,i.name,!0)}}return function(A){return Y(_(e),A,e.join("-"),!1)}}S.displayName="MobXProvider";var L=I("disposeOnUnmountProto"),K=I("disposeOnUnmountInst");function J(){var A=this;[].concat(this[L]||[],this[K]||[]).forEach((function(e){var t="string"==typeof e?A[e]:e;null!=t&&(Array.isArray(t)?t.map((function(A){return A()})):t())}))}function T(A,e){if(Array.isArray(e))return e.map((function(e){return T(A,e)}));var t=Object.getPrototypeOf(A).constructor,i=Object.getPrototypeOf(A.constructor),r=Object.getPrototypeOf(Object.getPrototypeOf(A));if(t!==n.a.Component&&t!==n.a.PureComponent&&i!==n.a.Component&&i!==n.a.PureComponent&&r!==n.a.Component&&r!==n.a.PureComponent)throw new Error("[mobx-react] disposeOnUnmount only supports direct subclasses of React.Component or React.PureComponent.");if("string"!=typeof e&&"function"!=typeof e&&!Array.isArray(e))throw new Error("[mobx-react] disposeOnUnmount only works if the parameter is either a property key or a function.");var g="string"==typeof e,o=!!A[L]||!!A[K];return(g?A[L]||(A[L]=[]):A[K]||(A[K]=[])).push(e),o||h(A,"componentWillUnmount",J),"string"!=typeof e?e:void 0}function H(A){function e(e,t,r,n,g,o){for(var a=arguments.length,I=new Array(a>6?a-6:0),C=6;C<a;C++)I[C-6]=arguments[C];return Object(i.untracked)((function(){if(n=n||"<<anonymous>>",o=o||r,null==t[r]){if(e){var i=null===t[r]?"null":"undefined";return new Error("The "+g+" `"+o+"` is marked as required in `"+n+"`, but its value is `"+i+"`.")}return null}return A.apply(void 0,[t,r,n,g,o].concat(I))}))}var t=e.bind(null,!1);return t.isRequired=e.bind(null,!0),t}function O(A){var e=typeof A;return Array.isArray(A)?"array":A instanceof RegExp?"object":function(A,e){return"symbol"===A||("Symbol"===e["@@toStringTag"]||"function"==typeof Symbol&&e instanceof Symbol)}(e,A)?"symbol":e}function q(A,e){return H((function(t,r,n,g,o){return Object(i.untracked)((function(){if(A&&O(t[r])===e.toLowerCase())return null;var g;switch(e){case"Array":g=i.isObservableArray;break;case"Object":g=i.isObservableObject;break;case"Map":g=i.isObservableMap;break;default:throw new Error("Unexpected mobxType: "+e)}var a=t[r];if(!g(a)){var I=function(A){var e=O(A);if("object"===e){if(A instanceof Date)return"date";if(A instanceof RegExp)return"regexp"}return e}(a),C=A?" or javascript `"+e.toLowerCase()+"`":"";return new Error("Invalid prop `"+o+"` of type `"+I+"` supplied to `"+n+"`, expected `mobx.Observable"+e+"`"+C+".")}return null}))}))}function j(A,e){return H((function(t,r,n,g,o){for(var a=arguments.length,I=new Array(a>5?a-5:0),C=5;C<a;C++)I[C-5]=arguments[C];return Object(i.untracked)((function(){if("function"!=typeof e)return new Error("Property `"+o+"` of component `"+n+"` has invalid PropType notation.");var i=q(A,"Array")(t,r,n,g,o);if(i instanceof Error)return i;for(var a=t[r],C=0;C<a.length;C++)if((i=e.apply(void 0,[a,C,n,g,o+"["+C+"]"].concat(I)))instanceof Error)return i;return null}))}))}var P={observableArray:q(!1,"Array"),observableArrayOf:j.bind(null,!1),observableMap:q(!1,"Map"),observableObject:q(!1,"Object"),arrayOrObservableArray:q(!0,"Array"),arrayOrObservableArrayOf:j.bind(null,!0),objectOrObservableObject:q(!0,"Object")};if(!r.Component)throw new Error("mobx-react requires React to be available");if(!i.observable)throw new Error("mobx-react requires mobx to be available")},function(A,e,t){var i=t(58),r=Math.min;A.exports=function(A){return A>0?r(i(A),9007199254740991):0}},function(A,e,t){"use strict";t.r(e);var i=t(215);t.d(e,"path",(function(){return i.a}))},function(A,e,t){"use strict";t.d(e,"b",(function(){return l})),t.d(e,"a",(function(){return Q})),t.d(e,"c",(function(){return u})),t.d(e,"d",(function(){return E}));var i,r,n=0,g=0,o=0,a=0,I=0,C=0,s="object"==typeof performance&&performance.now?performance:Date,c="object"==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(A){setTimeout(A,17)};function l(){return I||(c(B),I=s.now()+C)}function B(){I=0}function Q(){this._call=this._time=this._next=null}function u(A,e,t){var i=new Q;return i.restart(A,e,t),i}function E(){l(),++n;for(var A,e=i;e;)(A=I-e._time)>=0&&e._call.call(null,A),e=e._next;--n}function h(){I=(a=s.now())+C,n=g=0;try{E()}finally{n=0,function(){var A,e,t=i,n=1/0;for(;t;)t._call?(n>t._time&&(n=t._time),A=t,t=t._next):(e=t._next,t._next=null,t=A?A._next=e:i=e);r=A,d(n)}(),I=0}}function f(){var A=s.now(),e=A-a;e>1e3&&(C-=e,a=A)}function d(A){n||(g&&(g=clearTimeout(g)),A-I>24?(A<1/0&&(g=setTimeout(h,A-s.now()-C)),o&&(o=clearInterval(o))):(o||(a=s.now(),o=setInterval(f,1e3)),n=1,c(h)))}Q.prototype=u.prototype={constructor:Q,restart:function(A,e,t){if("function"!=typeof A)throw new TypeError("callback is not a function");t=(null==t?l():+t)+(null==e?0:+e),this._next||r===this||(r?r._next=this:i=this,r=this),this._call=A,this._time=t,d()},stop:function(){this._call&&(this._call=null,this._time=1/0,d())}}},function(A,e,t){"use strict";t.d(e,"c",(function(){return W})),t.d(e,"a",(function(){return rA})),t.d(e,"b",(function(){return l}));var i=t(39),r=t(211),n=t(43),g=t(212),o=Object(r.a)("start","end","cancel","interrupt"),a=[],I=function(A,e,t,i,r,I){var C=A.__transition;if(C){if(t in C)return}else A.__transition={};!function(A,e,t){var i,r=A.__transition;function o(n){var C,s,c,l;if(1!==t.state)return I();for(C in r)if((l=r[C]).name===t.name){if(3===l.state)return Object(g.a)(o);4===l.state?(l.state=6,l.timer.stop(),l.on.call("interrupt",A,A.__data__,l.index,l.group),delete r[C]):+C<e&&(l.state=6,l.timer.stop(),l.on.call("cancel",A,A.__data__,l.index,l.group),delete r[C])}if(Object(g.a)((function(){3===t.state&&(t.state=4,t.timer.restart(a,t.delay,t.time),a(n))})),t.state=2,t.on.call("start",A,A.__data__,t.index,t.group),2===t.state){for(t.state=3,i=new Array(c=t.tween.length),C=0,s=-1;C<c;++C)(l=t.tween[C].value.call(A,A.__data__,t.index,t.group))&&(i[++s]=l);i.length=s+1}}function a(e){for(var r=e<t.duration?t.ease.call(null,e/t.duration):(t.timer.restart(I),t.state=5,1),n=-1,g=i.length;++n<g;)i[n].call(A,r);5===t.state&&(t.on.call("end",A,A.__data__,t.index,t.group),I())}function I(){for(var i in t.state=6,t.timer.stop(),delete r[e],r)return;delete A.__transition}r[e]=t,t.timer=Object(n.c)((function(A){t.state=1,t.timer.restart(o,t.delay,t.time),t.delay<=A&&o(A-t.delay)}),0,t.time)}(A,t,{name:e,index:i,group:r,on:o,tween:a,time:I.time,delay:I.delay,duration:I.duration,ease:I.ease,timer:null,state:0})};function C(A,e){var t=c(A,e);if(t.state>0)throw new Error("too late; already scheduled");return t}function s(A,e){var t=c(A,e);if(t.state>3)throw new Error("too late; already running");return t}function c(A,e){var t=A.__transition;if(!t||!(t=t[e]))throw new Error("transition not found");return t}var l=function(A,e){var t,i,r,n=A.__transition,g=!0;if(n){for(r in e=null==e?null:e+"",n)(t=n[r]).name===e?(i=t.state>2&&t.state<5,t.state=6,t.timer.stop(),t.on.call(i?"interrupt":"cancel",A,A.__data__,t.index,t.group),delete n[r]):g=!1;g&&delete A.__transition}},B=t(166),Q=t(69);function u(A,e){var t,i;return function(){var r=s(this,A),n=r.tween;if(n!==t)for(var g=0,o=(i=t=n).length;g<o;++g)if(i[g].name===e){(i=i.slice()).splice(g,1);break}r.tween=i}}function E(A,e,t){var i,r;if("function"!=typeof t)throw new Error;return function(){var n=s(this,A),g=n.tween;if(g!==i){r=(i=g).slice();for(var o={name:e,value:t},a=0,I=r.length;a<I;++a)if(r[a].name===e){r[a]=o;break}a===I&&r.push(o)}n.tween=r}}function h(A,e,t){var i=A._id;return A.each((function(){var A=s(this,i);(A.value||(A.value={}))[e]=t.apply(this,arguments)})),function(A){return c(A,i).value[e]}}var f=t(10),d=t(20),p=t(62),y=t(118),w=function(A,e){var t;return("number"==typeof e?d.a:e instanceof f.e?p.a:(t=Object(f.e)(e))?(e=t,p.a):y.a)(A,e)};function D(A){return function(){this.removeAttribute(A)}}function v(A){return function(){this.removeAttributeNS(A.space,A.local)}}function m(A,e,t){var i,r,n=t+"";return function(){var g=this.getAttribute(A);return g===n?null:g===i?r:r=e(i=g,t)}}function b(A,e,t){var i,r,n=t+"";return function(){var g=this.getAttributeNS(A.space,A.local);return g===n?null:g===i?r:r=e(i=g,t)}}function k(A,e,t){var i,r,n;return function(){var g,o,a=t(this);if(null!=a)return(g=this.getAttribute(A))===(o=a+"")?null:g===i&&o===r?n:(r=o,n=e(i=g,a));this.removeAttribute(A)}}function N(A,e,t){var i,r,n;return function(){var g,o,a=t(this);if(null!=a)return(g=this.getAttributeNS(A.space,A.local))===(o=a+"")?null:g===i&&o===r?n:(r=o,n=e(i=g,a));this.removeAttributeNS(A.space,A.local)}}function M(A,e){return function(t){this.setAttribute(A,e.call(this,t))}}function R(A,e){return function(t){this.setAttributeNS(A.space,A.local,e.call(this,t))}}function G(A,e){var t,i;function r(){var r=e.apply(this,arguments);return r!==i&&(t=(i=r)&&R(A,r)),t}return r._value=e,r}function F(A,e){var t,i;function r(){var r=e.apply(this,arguments);return r!==i&&(t=(i=r)&&M(A,r)),t}return r._value=e,r}function x(A,e){return function(){C(this,A).delay=+e.apply(this,arguments)}}function S(A,e){return e=+e,function(){C(this,A).delay=e}}function Y(A,e){return function(){s(this,A).duration=+e.apply(this,arguments)}}function _(A,e){return e=+e,function(){s(this,A).duration=e}}function U(A,e){if("function"!=typeof e)throw new Error;return function(){s(this,A).ease=e}}var L=t(119);function K(A,e,t){var i,r,n=function(A){return(A+"").trim().split(/^|\s+/).every((function(A){var e=A.indexOf(".");return e>=0&&(A=A.slice(0,e)),!A||"start"===A}))}(e)?C:s;return function(){var g=n(this,A),o=g.on;o!==i&&(r=(i=o).copy()).on(e,t),g.on=r}}var J=t(70),T=t(120),H=i.b.prototype.constructor,O=t(121);function q(A){return function(){this.style.removeProperty(A)}}function j(A,e,t){return function(i){this.style.setProperty(A,e.call(this,i),t)}}function P(A,e,t){var i,r;function n(){var n=e.apply(this,arguments);return n!==r&&(i=(r=n)&&j(A,n,t)),i}return n._value=e,n}function V(A){return function(e){this.textContent=A.call(this,e)}}function z(A){var e,t;function i(){var i=A.apply(this,arguments);return i!==t&&(e=(t=i)&&V(i)),e}return i._value=A,i}var Z=0;function X(A,e,t,i){this._groups=A,this._parents=e,this._name=t,this._id=i}function W(A){return Object(i.b)().transition(A)}function $(){return++Z}var AA=i.b.prototype;X.prototype=W.prototype={constructor:X,select:function(A){var e=this._name,t=this._id;"function"!=typeof A&&(A=Object(J.a)(A));for(var i=this._groups,r=i.length,n=new Array(r),g=0;g<r;++g)for(var o,a,C=i[g],s=C.length,l=n[g]=new Array(s),B=0;B<s;++B)(o=C[B])&&(a=A.call(o,o.__data__,B,C))&&("__data__"in o&&(a.__data__=o.__data__),l[B]=a,I(l[B],e,t,B,l,c(o,t)));return new X(n,this._parents,e,t)},selectAll:function(A){var e=this._name,t=this._id;"function"!=typeof A&&(A=Object(T.a)(A));for(var i=this._groups,r=i.length,n=[],g=[],o=0;o<r;++o)for(var a,C=i[o],s=C.length,l=0;l<s;++l)if(a=C[l]){for(var B,Q=A.call(a,a.__data__,l,C),u=c(a,t),E=0,h=Q.length;E<h;++E)(B=Q[E])&&I(B,e,t,E,Q,u);n.push(Q),g.push(a)}return new X(n,g,e,t)},filter:function(A){"function"!=typeof A&&(A=Object(L.a)(A));for(var e=this._groups,t=e.length,i=new Array(t),r=0;r<t;++r)for(var n,g=e[r],o=g.length,a=i[r]=[],I=0;I<o;++I)(n=g[I])&&A.call(n,n.__data__,I,g)&&a.push(n);return new X(i,this._parents,this._name,this._id)},merge:function(A){if(A._id!==this._id)throw new Error;for(var e=this._groups,t=A._groups,i=e.length,r=t.length,n=Math.min(i,r),g=new Array(i),o=0;o<n;++o)for(var a,I=e[o],C=t[o],s=I.length,c=g[o]=new Array(s),l=0;l<s;++l)(a=I[l]||C[l])&&(c[l]=a);for(;o<i;++o)g[o]=e[o];return new X(g,this._parents,this._name,this._id)},selection:function(){return new H(this._groups,this._parents)},transition:function(){for(var A=this._name,e=this._id,t=$(),i=this._groups,r=i.length,n=0;n<r;++n)for(var g,o=i[n],a=o.length,C=0;C<a;++C)if(g=o[C]){var s=c(g,e);I(g,A,t,C,o,{time:s.time+s.delay+s.duration,delay:0,duration:s.duration,ease:s.ease})}return new X(i,this._parents,A,t)},call:AA.call,nodes:AA.nodes,node:AA.node,size:AA.size,empty:AA.empty,each:AA.each,on:function(A,e){var t=this._id;return arguments.length<2?c(this.node(),t).on.on(A):this.each(K(t,A,e))},attr:function(A,e){var t=Object(Q.a)(A),i="transform"===t?B.b:w;return this.attrTween(A,"function"==typeof e?(t.local?N:k)(t,i,h(this,"attr."+A,e)):null==e?(t.local?v:D)(t):(t.local?b:m)(t,i,e))},attrTween:function(A,e){var t="attr."+A;if(arguments.length<2)return(t=this.tween(t))&&t._value;if(null==e)return this.tween(t,null);if("function"!=typeof e)throw new Error;var i=Object(Q.a)(A);return this.tween(t,(i.local?G:F)(i,e))},style:function(A,e,t){var i="transform"==(A+="")?B.a:w;return null==e?this.styleTween(A,function(A,e){var t,i,r;return function(){var n=Object(O.b)(this,A),g=(this.style.removeProperty(A),Object(O.b)(this,A));return n===g?null:n===t&&g===i?r:r=e(t=n,i=g)}}(A,i)).on("end.style."+A,q(A)):"function"==typeof e?this.styleTween(A,function(A,e,t){var i,r,n;return function(){var g=Object(O.b)(this,A),o=t(this),a=o+"";return null==o&&(this.style.removeProperty(A),a=o=Object(O.b)(this,A)),g===a?null:g===i&&a===r?n:(r=a,n=e(i=g,o))}}(A,i,h(this,"style."+A,e))).each(function(A,e){var t,i,r,n,g="style."+e,o="end."+g;return function(){var a=s(this,A),I=a.on,C=null==a.value[g]?n||(n=q(e)):void 0;I===t&&r===C||(i=(t=I).copy()).on(o,r=C),a.on=i}}(this._id,A)):this.styleTween(A,function(A,e,t){var i,r,n=t+"";return function(){var g=Object(O.b)(this,A);return g===n?null:g===i?r:r=e(i=g,t)}}(A,i,e),t).on("end.style."+A,null)},styleTween:function(A,e,t){var i="style."+(A+="");if(arguments.length<2)return(i=this.tween(i))&&i._value;if(null==e)return this.tween(i,null);if("function"!=typeof e)throw new Error;return this.tween(i,P(A,e,null==t?"":t))},text:function(A){return this.tween("text","function"==typeof A?function(A){return function(){var e=A(this);this.textContent=null==e?"":e}}(h(this,"text",A)):function(A){return function(){this.textContent=A}}(null==A?"":A+""))},textTween:function(A){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(null==A)return this.tween(e,null);if("function"!=typeof A)throw new Error;return this.tween(e,z(A))},remove:function(){return this.on("end.remove",(A=this._id,function(){var e=this.parentNode;for(var t in this.__transition)if(+t!==A)return;e&&e.removeChild(this)}));var A},tween:function(A,e){var t=this._id;if(A+="",arguments.length<2){for(var i,r=c(this.node(),t).tween,n=0,g=r.length;n<g;++n)if((i=r[n]).name===A)return i.value;return null}return this.each((null==e?u:E)(t,A,e))},delay:function(A){var e=this._id;return arguments.length?this.each(("function"==typeof A?x:S)(e,A)):c(this.node(),e).delay},duration:function(A){var e=this._id;return arguments.length?this.each(("function"==typeof A?Y:_)(e,A)):c(this.node(),e).duration},ease:function(A){var e=this._id;return arguments.length?this.each(U(e,A)):c(this.node(),e).ease},end:function(){var A,e,t=this,i=t._id,r=t.size();return new Promise((function(n,g){var o={value:g},a={value:function(){0==--r&&n()}};t.each((function(){var t=s(this,i),r=t.on;r!==A&&((e=(A=r).copy())._.cancel.push(o),e._.interrupt.push(o),e._.end.push(a)),t.on=e}))}))}};var eA={time:null,delay:0,duration:250,ease:t(88).b};function tA(A,e){for(var t;!(t=A.__transition)||!(t=t[e]);)if(!(A=A.parentNode))return eA.time=Object(n.b)(),eA;return t}i.b.prototype.interrupt=function(A){return this.each((function(){l(this,A)}))},i.b.prototype.transition=function(A){var e,t;A instanceof X?(e=A._id,A=A._name):(e=$(),(t=eA).time=Object(n.b)(),A=null==A?null:A+"");for(var i=this._groups,r=i.length,g=0;g<r;++g)for(var o,a=i[g],C=a.length,s=0;s<C;++s)(o=a[s])&&I(o,A,e,s,a,t||tA(o,e));return new X(i,this._parents,A,e)};var iA=[null],rA=function(A,e){var t,i,r=A.__transition;if(r)for(i in e=null==e?null:e+"",r)if((t=r[i]).state>1&&t.name===e)return new X([[A]],iA,e,+i);return null}},function(A,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.visualizationNs=void 0;const i=t(80);e.visualizationNs=i.namespace("hediet.de/visualization")},function(A,e,t){"use strict";t(209),t(22),Object.defineProperty(e,"__esModule",{value:!0}),e.getCellConfig=async function({view:A,config:e},t,i){const r=e.row_pivots,n=e.column_pivots,g=t>=0?t:0,o=g+1,a=await A.to_json({start_row:g,end_row:o}),I=a.map(A=>A.__ROW_PATH__)[0]||[],C=r.map((A,e)=>{const t=I[e];return t?[A,"==",t]:void 0}).filter(A=>A),s=r.length>0?i+1:i,c=Object.keys(a[0])[s],l={row:a[0]};let B=[];if(c){const A=c.split("|");l.column_names=[A[A.length-1]],B=n.map((e,t)=>{const i=A[t];return i?[e,"==",i]:void 0}).filter(A=>A).filter(([,,A])=>"__ROW_PATH__"!==A)}const Q=e.filter.concat(C).concat(B);return l.config={filters:Q},l},e.log_perf=function(A){r.push(A)},e._start_profiling_loop=function(){i.DEBUG&&setInterval(n,5e3)},e.memoize=function(A,e,t){const i=new Map,r=t.value;return t.value=function(A){if(i.has(A))return i.get(A);{const e=r.call(this,A);return i.set(A,e),e}},t},e.column_path_2_type=function(A,e){const t=e.split("|");return A[t[t.length-1]]},e.isEqual=function A(e,t){if(e===t)return!0;if(e&&t&&"object"==typeof e&&"object"==typeof t){if(e.constructor!==t.constructor)return!1;let i,r,n;if(Array.isArray(e)){if(i=e.length,i!=t.length)return!1;for(r=i;0!=r--;)if(!A(e[r],t[r]))return!1;return!0}if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===t.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===t.toString();if(n=Object.keys(e),i=n.length,i!==Object.keys(t).length)return!1;for(r=i;0!=r--;)if(!Object.prototype.hasOwnProperty.call(t,n[r]))return!1;for(r=i;0!=r--;){let i=n[r];if(!A(e[i],t[i]))return!1}return!0}return e!=e&&t!=t},e.throttlePromise=function(A,e,t){const i=Symbol("private lock"),r=t.value;return t.value=async function(...A){if(this[i]&&(await this[i],this[i]))return void await this[i];let e;this[i]=(()=>{let A;const e=new Promise(e=>{A=e});return e.resolve=A,e})();try{e=await r.call(this,...A)}catch(A){console.error(A)}finally{const A=this[i];return this[i]=void 0,A.resolve(),e}},t},e.get_type_config=function A(e){const t={};a[e]&&Object.assign(t,a[e]);if(t.type){const e=A(t.type);return Object.assign(e,t),e}return t},e.default_types=e.css=e.html=void 0;var i=t(66);let r=[];function n(){const A=r.reduce((A,e)=>A+e,0)/r.length,e=r.length/5,t=1e3/A,i=r.length;console.log(`${A.toFixed(2)} ms/frame ${e} rfps ${t.toFixed(2)} vfps (${i} frames in 5s)`),r=[]}const g=(A,...e)=>A.map((A,t)=>[A,e[t]]).flat().filter(A=>!!A).join("");e.html=g;const o=g;e.css=o;const a={types:{float:{filter_operator:"==",aggregate:"sum",format:{style:"decimal",minimumFractionDigits:2,maximumFractionDigits:2}},string:{filter_operator:"==",aggregate:"count"},integer:{filter_operator:"==",aggregate:"sum",format:{}},boolean:{filter_operator:"==",aggregate:"count"},datetime:{filter_operator:"==",aggregate:"count",format:{week:"numeric",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"},null_value:-1},date:{filter_operator:"==",aggregate:"count",format:{week:"numeric",year:"numeric",month:"numeric",day:"numeric"},null_value:-1}}};e.default_types=a},function(A,e,t){"use strict";t.r(e);var i=t(211);t.d(e,"dispatch",(function(){return i.a}))},function(A,e,t){"use strict";t.d(e,"f",(function(){return n})),t.d(e,"g",(function(){return g})),t.d(e,"a",(function(){return o})),t.d(e,"b",(function(){return a})),t.d(e,"d",(function(){return I})),t.d(e,"c",(function(){return C})),t.d(e,"e",(function(){return s}));var i=t(74),r=Object(i.a)(","),n=r.parse,g=r.parseRows,o=r.format,a=r.formatBody,I=r.formatRows,C=r.formatRow,s=r.formatValue},function(A,e,t){"use strict";t.d(e,"f",(function(){return n})),t.d(e,"g",(function(){return g})),t.d(e,"a",(function(){return o})),t.d(e,"b",(function(){return a})),t.d(e,"d",(function(){return I})),t.d(e,"c",(function(){return C})),t.d(e,"e",(function(){return s}));var i=t(74),r=Object(i.a)("\t"),n=r.parse,g=r.parseRows,o=r.format,a=r.formatBody,I=r.formatRows,C=r.formatRow,s=r.formatValue},function(A,e,t){"use strict";t.d(e,"d",(function(){return i.a})),t.d(e,"c",(function(){return i.b})),t.d(e,"f",(function(){return i.c})),t.d(e,"g",(function(){return i.d})),t.d(e,"h",(function(){return i.e})),t.d(e,"e",(function(){return r.a})),t.d(e,"a",(function(){return n})),t.d(e,"b",(function(){return g}));var i=t(36),r=t(125);var n=Date.prototype.toISOString?function(A){return A.toISOString()}:Object(i.d)("%Y-%m-%dT%H:%M:%S.%LZ");var g=+new Date("2000-01-01T00:00:00.000Z")?function(A){var e=new Date(A);return isNaN(e)?null:e}:Object(i.e)("%Y-%m-%dT%H:%M:%S.%LZ")},function(A,e,t){"use strict";var i=t(69),r=t(53);function n(A){return function(){var e=this.ownerDocument,t=this.namespaceURI;return t===r.b&&e.documentElement.namespaceURI===r.b?e.createElement(A):e.createElementNS(t,A)}}function g(A){return function(){return this.ownerDocument.createElementNS(A.space,A.local)}}e.a=function(A){var e=Object(i.a)(A);return(e.local?g:n)(e)}},function(A,e,t){"use strict";e.a=function(A,e){var t=A.ownerSVGElement||A;if(t.createSVGPoint){var i=t.createSVGPoint();return i.x=e.clientX,i.y=e.clientY,[(i=i.matrixTransform(A.getScreenCTM().inverse())).x,i.y]}var r=A.getBoundingClientRect();return[e.clientX-r.left-A.clientLeft,e.clientY-r.top-A.clientTop]}},function(A,e,t){"use strict";t.d(e,"b",(function(){return i}));var i="http://www.w3.org/1999/xhtml";e.a={svg:"http://www.w3.org/2000/svg",xhtml:i,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"}},function(A,e,t){"use strict";function i(A){return ArrayBuffer.isView(A)&&!(A instanceof DataView)}t.d(e,"b",(function(){return i})),e.a=function(A,e){e||(e=[]);var t,i=A?Math.min(e.length,A.length):0,r=e.slice();return function(n){for(t=0;t<i;++t)r[t]=A[t]*(1-n)+e[t]*n;return r}}},function(A,e,t){var i,r,n;"undefined"!=typeof self&&self,r=[],void 0===(n="function"==typeof(i=function(){function A(){}A.prototype.saveState=function(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}},A.prototype.restoreState=function(A){this.idx=A.idx,this.input=A.input,this.groupIdx=A.groupIdx},A.prototype.pattern=function(A){this.idx=0,this.input=A,this.groupIdx=0,this.consumeChar("/");var e=this.disjunction();this.consumeChar("/");for(var t={type:"Flags",global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};this.isRegExpFlag();)switch(this.popChar()){case"g":o(t,"global");break;case"i":o(t,"ignoreCase");break;case"m":o(t,"multiLine");break;case"u":o(t,"unicode");break;case"y":o(t,"sticky")}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:t,value:e}},A.prototype.disjunction=function(){var A=[];for(A.push(this.alternative());"|"===this.peekChar();)this.consumeChar("|"),A.push(this.alternative());return{type:"Disjunction",value:A}},A.prototype.alternative=function(){for(var A=[];this.isTerm();)A.push(this.term());return{type:"Alternative",value:A}},A.prototype.term=function(){return this.isAssertion()?this.assertion():this.atom()},A.prototype.assertion=function(){switch(this.popChar()){case"^":return{type:"StartAnchor"};case"$":return{type:"EndAnchor"};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary"};case"B":return{type:"NonWordBoundary"}}throw Error("Invalid Assertion Escape");case"(":var A;switch(this.consumeChar("?"),this.popChar()){case"=":A="Lookahead";break;case"!":A="NegativeLookahead"}a(A);var e=this.disjunction();return this.consumeChar(")"),{type:A,value:e}}!function(){throw Error("Internal Error - Should never get here!")}()},A.prototype.quantifier=function(A){var e;switch(this.popChar()){case"*":e={atLeast:0,atMost:1/0};break;case"+":e={atLeast:1,atMost:1/0};break;case"?":e={atLeast:0,atMost:1};break;case"{":var t=this.integerIncludingZero();switch(this.popChar()){case"}":e={atLeast:t,atMost:t};break;case",":e=this.isDigit()?{atLeast:t,atMost:this.integerIncludingZero()}:{atLeast:t,atMost:1/0},this.consumeChar("}")}if(!0===A&&void 0===e)return;a(e)}if(!0!==A||void 0!==e)return a(e),"?"===this.peekChar(0)?(this.consumeChar("?"),e.greedy=!1):e.greedy=!0,e.type="Quantifier",e},A.prototype.atom=function(){var A;switch(this.peekChar()){case".":A=this.dotAll();break;case"\\":A=this.atomEscape();break;case"[":A=this.characterClass();break;case"(":A=this.group()}return void 0===A&&this.isPatternCharacter()&&(A=this.patternCharacter()),a(A),this.isQuantifier()&&(A.quantifier=this.quantifier()),A},A.prototype.dotAll=function(){return this.consumeChar("."),{type:"Set",complement:!0,value:[n("\n"),n("\r"),n("\u2028"),n("\u2029")]}},A.prototype.atomEscape=function(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}},A.prototype.decimalEscapeAtom=function(){return{type:"GroupBackReference",value:this.positiveInteger()}},A.prototype.characterClassEscape=function(){var A,e=!1;switch(this.popChar()){case"d":A=I;break;case"D":A=I,e=!0;break;case"s":A=s;break;case"S":A=s,e=!0;break;case"w":A=C;break;case"W":A=C,e=!0}return a(A),{type:"Set",value:A,complement:e}},A.prototype.controlEscapeAtom=function(){var A;switch(this.popChar()){case"f":A=n("\f");break;case"n":A=n("\n");break;case"r":A=n("\r");break;case"t":A=n("\t");break;case"v":A=n("\v")}return a(A),{type:"Character",value:A}},A.prototype.controlLetterEscapeAtom=function(){this.consumeChar("c");var A=this.popChar();if(!1===/[a-zA-Z]/.test(A))throw Error("Invalid ");return{type:"Character",value:A.toUpperCase().charCodeAt(0)-64}},A.prototype.nulCharacterAtom=function(){return this.consumeChar("0"),{type:"Character",value:n("\0")}},A.prototype.hexEscapeSequenceAtom=function(){return this.consumeChar("x"),this.parseHexDigits(2)},A.prototype.regExpUnicodeEscapeSequenceAtom=function(){return this.consumeChar("u"),this.parseHexDigits(4)},A.prototype.identityEscapeAtom=function(){return{type:"Character",value:n(this.popChar())}},A.prototype.classPatternCharacterAtom=function(){switch(this.peekChar()){case"\n":case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:return{type:"Character",value:n(this.popChar())}}},A.prototype.characterClass=function(){var A=[],e=!1;for(this.consumeChar("["),"^"===this.peekChar(0)&&(this.consumeChar("^"),e=!0);this.isClassAtom();){var t=this.classAtom();if("Character"===t.type&&this.isRangeDash()){this.consumeChar("-");var i=this.classAtom();if("Character"===i.type){if(i.value<t.value)throw Error("Range out of order in character class");A.push({from:t.value,to:i.value})}else g(t.value,A),A.push(n("-")),g(i.value,A)}else g(t.value,A)}return this.consumeChar("]"),{type:"Set",complement:e,value:A}},A.prototype.classAtom=function(){switch(this.peekChar()){case"]":case"\n":case"\r":case"\u2028":case"\u2029":throw Error("TBD");case"\\":return this.classEscape();default:return this.classPatternCharacterAtom()}},A.prototype.classEscape=function(){switch(this.consumeChar("\\"),this.peekChar()){case"b":return this.consumeChar("b"),{type:"Character",value:n("\b")};case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}},A.prototype.group=function(){var A=!0;switch(this.consumeChar("("),this.peekChar(0)){case"?":this.consumeChar("?"),this.consumeChar(":"),A=!1;break;default:this.groupIdx++}var e=this.disjunction();this.consumeChar(")");var t={type:"Group",capturing:A,value:e};return A&&(t.idx=this.groupIdx),t},A.prototype.positiveInteger=function(){var A=this.popChar();if(!1===r.test(A))throw Error("Expecting a positive integer");for(;i.test(this.peekChar(0));)A+=this.popChar();return parseInt(A,10)},A.prototype.integerIncludingZero=function(){var A=this.popChar();if(!1===i.test(A))throw Error("Expecting an integer");for(;i.test(this.peekChar(0));)A+=this.popChar();return parseInt(A,10)},A.prototype.patternCharacter=function(){var A=this.popChar();switch(A){case"\n":case"\r":case"\u2028":case"\u2029":case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":throw Error("TBD");default:return{type:"Character",value:n(A)}}},A.prototype.isRegExpFlag=function(){switch(this.peekChar(0)){case"g":case"i":case"m":case"u":case"y":return!0;default:return!1}},A.prototype.isRangeDash=function(){return"-"===this.peekChar()&&this.isClassAtom(1)},A.prototype.isDigit=function(){return i.test(this.peekChar(0))},A.prototype.isClassAtom=function(A){switch(void 0===A&&(A=0),this.peekChar(A)){case"]":case"\n":case"\r":case"\u2028":case"\u2029":return!1;default:return!0}},A.prototype.isTerm=function(){return this.isAtom()||this.isAssertion()},A.prototype.isAtom=function(){if(this.isPatternCharacter())return!0;switch(this.peekChar(0)){case".":case"\\":case"[":case"(":return!0;default:return!1}},A.prototype.isAssertion=function(){switch(this.peekChar(0)){case"^":case"$":return!0;case"\\":switch(this.peekChar(1)){case"b":case"B":return!0;default:return!1}case"(":return"?"===this.peekChar(1)&&("="===this.peekChar(2)||"!"===this.peekChar(2));default:return!1}},A.prototype.isQuantifier=function(){var A=this.saveState();try{return void 0!==this.quantifier(!0)}catch(A){return!1}finally{this.restoreState(A)}},A.prototype.isPatternCharacter=function(){switch(this.peekChar()){case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":case"/":case"\n":case"\r":case"\u2028":case"\u2029":return!1;default:return!0}},A.prototype.parseHexDigits=function(A){for(var e="",i=0;i<A;i++){var r=this.popChar();if(!1===t.test(r))throw Error("Expecting a HexDecimal digits");e+=r}return{type:"Character",value:parseInt(e,16)}},A.prototype.peekChar=function(A){return void 0===A&&(A=0),this.input[this.idx+A]},A.prototype.popChar=function(){var A=this.peekChar(0);return this.consumeChar(),A},A.prototype.consumeChar=function(A){if(void 0!==A&&this.input[this.idx]!==A)throw Error("Expected: '"+A+"' but found: '"+this.input[this.idx]+"' at offset: "+this.idx);if(this.idx>=this.input.length)throw Error("Unexpected end of input");this.idx++};var e,t=/[0-9a-fA-F]/,i=/[0-9]/,r=/[1-9]/;function n(A){return A.charCodeAt(0)}function g(A,e){void 0!==A.length?A.forEach((function(A){e.push(A)})):e.push(A)}function o(A,e){if(!0===A[e])throw"duplicate flag "+e;A[e]=!0}function a(A){if(void 0===A)throw Error("Internal Error - Should never get here!")}var I=[];for(e=n("0");e<=n("9");e++)I.push(e);var C=[n("_")].concat(I);for(e=n("a");e<=n("z");e++)C.push(e);for(e=n("A");e<=n("Z");e++)C.push(e);var s=[n(" "),n("\f"),n("\n"),n("\r"),n("\t"),n("\v"),n("\t"),n(" "),n(" "),n(" "),n(" "),n(" "),n(" "),n(" "),n(" "),n(" "),n(" "),n(" "),n(" "),n(" "),n("\u2028"),n("\u2029"),n(" "),n(" "),n(" "),n("\ufeff")];function c(){}return c.prototype.visitChildren=function(A){for(var e in A){var t=A[e];A.hasOwnProperty(e)&&(void 0!==t.type?this.visit(t):Array.isArray(t)&&t.forEach((function(A){this.visit(A)}),this))}},c.prototype.visit=function(A){switch(A.type){case"Pattern":this.visitPattern(A);break;case"Flags":this.visitFlags(A);break;case"Disjunction":this.visitDisjunction(A);break;case"Alternative":this.visitAlternative(A);break;case"StartAnchor":this.visitStartAnchor(A);break;case"EndAnchor":this.visitEndAnchor(A);break;case"WordBoundary":this.visitWordBoundary(A);break;case"NonWordBoundary":this.visitNonWordBoundary(A);break;case"Lookahead":this.visitLookahead(A);break;case"NegativeLookahead":this.visitNegativeLookahead(A);break;case"Character":this.visitCharacter(A);break;case"Set":this.visitSet(A);break;case"Group":this.visitGroup(A);break;case"GroupBackReference":this.visitGroupBackReference(A);break;case"Quantifier":this.visitQuantifier(A)}this.visitChildren(A)},c.prototype.visitPattern=function(A){},c.prototype.visitFlags=function(A){},c.prototype.visitDisjunction=function(A){},c.prototype.visitAlternative=function(A){},c.prototype.visitStartAnchor=function(A){},c.prototype.visitEndAnchor=function(A){},c.prototype.visitWordBoundary=function(A){},c.prototype.visitNonWordBoundary=function(A){},c.prototype.visitLookahead=function(A){},c.prototype.visitNegativeLookahead=function(A){},c.prototype.visitCharacter=function(A){},c.prototype.visitSet=function(A){},c.prototype.visitGroup=function(A){},c.prototype.visitGroupBackReference=function(A){},c.prototype.visitQuantifier=function(A){},{RegExpParser:A,BaseRegExpVisitor:c,VERSION:"0.4.0"}})?i.apply(e,r):i)||(A.exports=n)},function(A,e,t){"use strict";t.d(e,"b",(function(){return n}));var i=t(5),r=Object(i.a)((function(A){A.setMonth(0,1),A.setHours(0,0,0,0)}),(function(A,e){A.setFullYear(A.getFullYear()+e)}),(function(A,e){return e.getFullYear()-A.getFullYear()}),(function(A){return A.getFullYear()}));r.every=function(A){return isFinite(A=Math.floor(A))&&A>0?Object(i.a)((function(e){e.setFullYear(Math.floor(e.getFullYear()/A)*A),e.setMonth(0,1),e.setHours(0,0,0,0)}),(function(e,t){e.setFullYear(e.getFullYear()+t*A)})):null},e.a=r;var n=r.range},function(A,e,t){"use strict";t.d(e,"b",(function(){return n}));var i=t(5),r=Object(i.a)((function(A){A.setUTCMonth(0,1),A.setUTCHours(0,0,0,0)}),(function(A,e){A.setUTCFullYear(A.getUTCFullYear()+e)}),(function(A,e){return e.getUTCFullYear()-A.getUTCFullYear()}),(function(A){return A.getUTCFullYear()}));r.every=function(A){return isFinite(A=Math.floor(A))&&A>0?Object(i.a)((function(e){e.setUTCFullYear(Math.floor(e.getUTCFullYear()/A)*A),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)}),(function(e,t){e.setUTCFullYear(e.getUTCFullYear()+t*A)})):null},e.a=r;var n=r.range},function(A,e){var t=Math.ceil,i=Math.floor;A.exports=function(A){return isNaN(A=+A)?0:(A>0?i:t)(A)}},function(A,e,t){var i,r,n,g=t(279),o=t(13),a=t(32),I=t(25),C=t(23),s=t(141),c=t(139),l=o.WeakMap;if(g){var B=new l,Q=B.get,u=B.has,E=B.set;i=function(A,e){return E.call(B,A,e),e},r=function(A){return Q.call(B,A)||{}},n=function(A){return u.call(B,A)}}else{var h=s("state");c[h]=!0,i=function(A,e){return I(A,h,e),e},r=function(A){return C(A,h)?A[h]:{}},n=function(A){return C(A,h)}}A.exports={set:i,get:r,has:n,enforce:function(A){return n(A)?r(A):i(A,{})},getterFor:function(A){return function(e){var t;if(!a(e)||(t=r(e)).type!==A)throw TypeError("Incompatible receiver, "+A+" required");return t}}}},function(A,e,t){var i=t(13),r=t(25),n=t(23),g=t(137),o=t(187),a=t(59),I=a.get,C=a.enforce,s=String(String).split("String");(A.exports=function(A,e,t,o){var a=!!o&&!!o.unsafe,I=!!o&&!!o.enumerable,c=!!o&&!!o.noTargetGet;"function"==typeof t&&("string"!=typeof e||n(t,"name")||r(t,"name",e),C(t).source=s.join("string"==typeof e?e:"")),A!==i?(a?!c&&A[e]&&(I=!0):delete A[e],I?A[e]=t:r(A,e,t)):I?A[e]=t:g(e,t)})(Function.prototype,"toString",(function(){return"function"==typeof this&&I(this).source||o(this)}))},function(A,e,t){var i=t(100);A.exports=function(A){return Object(i(A))}},function(A,e,t){"use strict";t.d(e,"b",(function(){return a})),t.d(e,"c",(function(){return I}));var i=t(10),r=t(68),n=t(117),g=t(7);function o(A){return function(e){var t,r,n=e.length,g=new Array(n),o=new Array(n),a=new Array(n);for(t=0;t<n;++t)r=Object(i.g)(e[t]),g[t]=r.r||0,o[t]=r.g||0,a[t]=r.b||0;return g=A(g),o=A(o),a=A(a),r.opacity=1,function(A){return r.r=g(A),r.g=o(A),r.b=a(A),r+""}}}e.a=function A(e){var t=Object(g.b)(e);function r(A,e){var r=t((A=Object(i.g)(A)).r,(e=Object(i.g)(e)).r),n=t(A.g,e.g),o=t(A.b,e.b),a=Object(g.a)(A.opacity,e.opacity);return function(e){return A.r=r(e),A.g=n(e),A.b=o(e),A.opacity=a(e),A+""}}return r.gamma=A,r}(1);var a=o(r.b),I=o(n.a)},function(A,e,t){"use strict";e.a=function(A,e){if((t=(A=e?A.toExponential(e-1):A.toExponential()).indexOf("e"))<0)return null;var t,i=A.slice(0,t);return[i.length>1?i[0]+i.slice(2):i,+A.slice(t+1)]}},function(A,e){A.exports=function(A,e){return{enumerable:!(1&A),configurable:!(2&A),writable:!(4&A),value:e}}},function(A,e,t){var i=t(315),r=t(318);A.exports=function(A,e){var t=r(A,e);return i(t)?t:void 0}},function(A,e,t){"use strict";t(22),Object.defineProperty(e,"__esModule",{value:!0}),e.ICON_MAP=e.BROWSER_MAX_HEIGHT=e.DOUBLE_BUFFER_RECREATE=e.DOUBLE_BUFFER_ROW=e.DOUBLE_BUFFER_COLUMN=e.DEBUG=e.METADATA_MAP=void 0;const i=new WeakMap;e.METADATA_MAP=i;e.DEBUG=!1;e.DOUBLE_BUFFER_COLUMN=!1;e.DOUBLE_BUFFER_ROW=!1;e.DOUBLE_BUFFER_RECREATE=!1;e.BROWSER_MAX_HEIGHT=1e7;e.ICON_MAP={asc:"arrow_upward",desc:"arrow_downward","asc abs":"⇧","desc abs":"⇩","col asc":"arrow_back","col desc":"arrow_forward","col asc abs":"⇨","col desc abs":"⇦"}},function(A,e,t){"use strict";var i=t(115);t.d(e,"c",(function(){return i.a})),t.d(e,"b",(function(){return i.b})),t.d(e,"e",(function(){return i.c}));var r=t(126);t.d(e,"d",(function(){return r.a}));var n=t(75);t.d(e,"f",(function(){return n.b})),t.d(e,"a",(function(){return n.a}));var g=t(216);t.d(e,"g",(function(){return g.a}));var o=t(217);t.d(e,"h",(function(){return o.a}));var a=t(218);t.d(e,"i",(function(){return a.a}))},function(A,e,t){"use strict";function i(A,e,t,i,r){var n=A*A,g=n*A;return((1-3*A+3*n-g)*e+(4-6*n+3*g)*t+(1+3*A+3*n-3*g)*i+g*r)/6}t.d(e,"a",(function(){return i})),e.b=function(A){var e=A.length-1;return function(t){var r=t<=0?t=0:t>=1?(t=1,e-1):Math.floor(t*e),n=A[r],g=A[r+1],o=r>0?A[r-1]:2*n-g,a=r<e-1?A[r+2]:2*g-n;return i((t-r/e)*e,o,n,g,a)}}},function(A,e,t){"use strict";var i=t(53);e.a=function(A){var e=A+="",t=e.indexOf(":");return t>=0&&"xmlns"!==(e=A.slice(0,t))&&(A=A.slice(t+1)),i.a.hasOwnProperty(e)?{space:i.a[e],local:A}:A}},function(A,e,t){"use strict";function i(){}e.a=function(A){return null==A?i:function(){return this.querySelector(A)}}},function(A,e,t){"use strict";e.a=function(A){return A.ownerDocument&&A.ownerDocument.defaultView||A.document&&A||A.defaultView}},function(A,e,t){"use strict";var i=t(10),r=t(62),n=t(123),g=t(122),o=t(20),a=t(124),I=t(118),C=t(78),s=t(54);e.a=function(A,e){var t,c=typeof e;return null==e||"boolean"===c?Object(C.a)(e):("number"===c?o.a:"string"===c?(t=Object(i.e)(e))?(e=t,r.a):I.a:e instanceof i.e?r.a:e instanceof Date?g.a:Object(s.b)(e)?s.a:Array.isArray(e)?n.b:"function"!=typeof e.valueOf&&"function"!=typeof e.toString||isNaN(e)?a.a:o.a)(A,e)}},function(A,e,t){"use strict";t.d(e,"b",(function(){return n}));var i=t(77),r=t(27);function n(A,e){var t=A.document.documentElement,n=Object(i.a)(A).on("dragstart.drag",null);e&&(n.on("click.drag",r.a,!0),setTimeout((function(){n.on("click.drag",null)}),0)),"onselectstart"in t?n.on("selectstart.drag",null):(t.style.MozUserSelect=t.__noselect,delete t.__noselect)}e.a=function(A){var e=A.document.documentElement,t=Object(i.a)(A).on("dragstart.drag",r.a,!0);"onselectstart"in e?t.on("selectstart.drag",r.a,!0):(e.__noselect=e.style.MozUserSelect,e.style.MozUserSelect="none")}},function(A,e,t){"use strict";var i={},r={};function n(A){return new Function("d","return {"+A.map((function(A,e){return JSON.stringify(A)+": d["+e+'] || ""'})).join(",")+"}")}function g(A){var e=Object.create(null),t=[];return A.forEach((function(A){for(var i in A)i in e||t.push(e[i]=i)})),t}function o(A,e){var t=A+"",i=t.length;return i<e?new Array(e-i+1).join(0)+t:t}function a(A){var e,t=A.getUTCHours(),i=A.getUTCMinutes(),r=A.getUTCSeconds(),n=A.getUTCMilliseconds();return isNaN(A)?"Invalid Date":((e=A.getUTCFullYear())<0?"-"+o(-e,6):e>9999?"+"+o(e,6):o(e,4))+"-"+o(A.getUTCMonth()+1,2)+"-"+o(A.getUTCDate(),2)+(n?"T"+o(t,2)+":"+o(i,2)+":"+o(r,2)+"."+o(n,3)+"Z":r?"T"+o(t,2)+":"+o(i,2)+":"+o(r,2)+"Z":i||t?"T"+o(t,2)+":"+o(i,2)+"Z":"")}e.a=function(A){var e=new RegExp('["'+A+"\n\r]"),t=A.charCodeAt(0);function o(A,e){var n,g=[],o=A.length,a=0,I=0,C=o<=0,s=!1;function c(){if(C)return r;if(s)return s=!1,i;var e,n,g=a;if(34===A.charCodeAt(g)){for(;a++<o&&34!==A.charCodeAt(a)||34===A.charCodeAt(++a););return(e=a)>=o?C=!0:10===(n=A.charCodeAt(a++))?s=!0:13===n&&(s=!0,10===A.charCodeAt(a)&&++a),A.slice(g+1,e-1).replace(/""/g,'"')}for(;a<o;){if(10===(n=A.charCodeAt(e=a++)))s=!0;else if(13===n)s=!0,10===A.charCodeAt(a)&&++a;else if(n!==t)continue;return A.slice(g,e)}return C=!0,A.slice(g,o)}for(10===A.charCodeAt(o-1)&&--o,13===A.charCodeAt(o-1)&&--o;(n=c())!==r;){for(var l=[];n!==i&&n!==r;)l.push(n),n=c();e&&null==(l=e(l,I++))||g.push(l)}return g}function I(e,t){return e.map((function(e){return t.map((function(A){return s(e[A])})).join(A)}))}function C(e){return e.map(s).join(A)}function s(A){return null==A?"":A instanceof Date?a(A):e.test(A+="")?'"'+A.replace(/"/g,'""')+'"':A}return{parse:function(A,e){var t,i,r=o(A,(function(A,r){if(t)return t(A,r-1);i=A,t=e?function(A,e){var t=n(A);return function(i,r){return e(t(i),r,A)}}(A,e):n(A)}));return r.columns=i||[],r},parseRows:o,format:function(e,t){return null==t&&(t=g(e)),[t.map(s).join(A)].concat(I(e,t)).join("\n")},formatBody:function(A,e){return null==e&&(e=g(A)),I(A,e).join("\n")},formatRows:function(A){return A.map(C).join("\n")},formatRow:C,formatValue:s}}},function(A,e,t){"use strict";t.d(e,"b",(function(){return r})),t.d(e,"a",(function(){return n}));var i=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function r(A){if(!(e=i.exec(A)))throw new Error("invalid format: "+A);var e;return new n({fill:e[1],align:e[2],sign:e[3],symbol:e[4],zero:e[5],width:e[6],comma:e[7],precision:e[8]&&e[8].slice(1),trim:e[9],type:e[10]})}function n(A){this.fill=void 0===A.fill?" ":A.fill+"",this.align=void 0===A.align?">":A.align+"",this.sign=void 0===A.sign?"-":A.sign+"",this.symbol=void 0===A.symbol?"":A.symbol+"",this.zero=!!A.zero,this.width=void 0===A.width?void 0:+A.width,this.comma=!!A.comma,this.precision=void 0===A.precision?void 0:+A.precision,this.trim=!!A.trim,this.type=void 0===A.type?"":A.type+""}r.prototype=n.prototype,n.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type}},function(A,e,t){"use strict";var i=t(37);e.a=function(){for(var A,e=i.c;A=e.sourceEvent;)e=A;return e}},function(A,e,t){"use strict";var i=t(39);e.a=function(A){return"string"==typeof A?new i.a([[document.querySelector(A)]],[document.documentElement]):new i.a([[A]],i.c)}},function(A,e,t){"use strict";e.a=function(A){return function(){return A}}},function(A,e,t){"use strict";t.d(e,"a",(function(){return i})),t.d(e,"b",(function(){return r}));var i=Math.PI/180,r=180/Math.PI},function(A,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.namespace=e.NamespacedName=void 0;class i{constructor(A,e){this.namespace=A,this.name=e}equals(A){return this.namespace===A.namespace&&this.name===A.name}toString(){return`${this.namespace}#${this.name}`}}e.NamespacedName=i,e.namespace=function(A){const e=e=>new i(A,e);return e.namespace=A,e}},function(A,e,t){"use strict";function i(A){if(null===A)return"null";if(Array.isArray(A))return"array";const e=typeof A;if("bigint"===e||"function"===e||"undefined"===e||"symbol"===e)throw new Error(`Got value of unexpected type "${A}".`);return e}Object.defineProperty(e,"__esModule",{value:!0}),e.isValueOfType=e.getType=e.getTypeMismatchMessage=void 0,e.getTypeMismatchMessage=function(A,e){let t,r,n="";if("type"in e?(n=`Expected a value of type "${e.type}"`,t=e.type):(n=`Expected "${e.value}"`,t=i(e.value)),null===A)return n+', but got "null".';const g=i(A);return r=g===t?`but got "${A}"`:`but got a value of type "${g}"`,`${n}, ${r}.`},e.getType=i,e.isValueOfType=function(A,e){return i(A)==e}},function(A,e){A.exports={}},function(A,e,t){var i=t(13),r=t(142).f,n=t(25),g=t(60),o=t(137),a=t(280),I=t(282);A.exports=function(A,e){var t,C,s,c,l,B=A.target,Q=A.global,u=A.stat;if(t=Q?i:u?i[B]||o(B,{}):(i[B]||{}).prototype)for(C in e){if(c=e[C],s=A.noTargetGet?(l=r(t,C))&&l.value:t[C],!I(Q?C:B+(u?".":"#")+C,A.forced)&&void 0!==s){if(typeof c==typeof s)continue;a(c,s)}(A.sham||s&&s.sham)&&n(c,"sham",!0),g(t,C,c,A)}}},function(A,e,t){var i=t(31).f,r=t(23),n=t(14)("toStringTag");A.exports=function(A,e,t){A&&!r(A=t?A:A.prototype,n)&&i(A,n,{configurable:!0,value:e})}},function(A,e,t){var i=t(33),r=t(284);A.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var A,e=!1,t={};try{(A=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(t,[]),e=t instanceof Array}catch(A){}return function(t,n){return i(t),r(n),e?A.call(t,n):t.__proto__=n,t}}():void 0)},function(A,e,t){var i=t(147),r=t(298),n=t(299),g=i?i.toStringTag:void 0;A.exports=function(A){return null==A?void 0===A?"[object Undefined]":"[object Null]":g&&g in Object(A)?r(A):n(A)}},function(A,e){A.exports=function(A){return null!=A&&"object"==typeof A}},function(A,e,t){"use strict";function i(A){return A*A*A}function r(A){return--A*A*A+1}function n(A){return((A*=2)<=1?A*A*A:(A-=2)*A*A+2)/2}t.d(e,"a",(function(){return i})),t.d(e,"c",(function(){return r})),t.d(e,"b",(function(){return n}))},function(A,e,t){"use strict";t.d(e,"b",(function(){return I})),t.d(e,"a",(function(){return C})),t.d(e,"d",(function(){return E})),t.d(e,"c",(function(){return h}));var i=t(21),r=t(10),n=t(79),g=6/29,o=3*g*g;function a(A){if(A instanceof s)return new s(A.l,A.a,A.b,A.opacity);if(A instanceof f)return d(A);A instanceof r.b||(A=Object(r.h)(A));var e,t,i=Q(A.r),n=Q(A.g),g=Q(A.b),o=c((.2225045*i+.7168786*n+.0606169*g)/1);return i===n&&n===g?e=t=o:(e=c((.4360747*i+.3850649*n+.1430804*g)/.96422),t=c((.0139322*i+.0971045*n+.7141733*g)/.82521)),new s(116*o-16,500*(e-o),200*(o-t),A.opacity)}function I(A,e){return new s(A,0,0,null==e?1:e)}function C(A,e,t,i){return 1===arguments.length?a(A):new s(A,e,t,null==i?1:i)}function s(A,e,t,i){this.l=+A,this.a=+e,this.b=+t,this.opacity=+i}function c(A){return A>.008856451679035631?Math.pow(A,1/3):A/o+4/29}function l(A){return A>g?A*A*A:o*(A-4/29)}function B(A){return 255*(A<=.0031308?12.92*A:1.055*Math.pow(A,1/2.4)-.055)}function Q(A){return(A/=255)<=.04045?A/12.92:Math.pow((A+.055)/1.055,2.4)}function u(A){if(A instanceof f)return new f(A.h,A.c,A.l,A.opacity);if(A instanceof s||(A=a(A)),0===A.a&&0===A.b)return new f(NaN,0<A.l&&A.l<100?0:NaN,A.l,A.opacity);var e=Math.atan2(A.b,A.a)*n.b;return new f(e<0?e+360:e,Math.sqrt(A.a*A.a+A.b*A.b),A.l,A.opacity)}function E(A,e,t,i){return 1===arguments.length?u(A):new f(t,e,A,null==i?1:i)}function h(A,e,t,i){return 1===arguments.length?u(A):new f(A,e,t,null==i?1:i)}function f(A,e,t,i){this.h=+A,this.c=+e,this.l=+t,this.opacity=+i}function d(A){if(isNaN(A.h))return new s(A.l,0,0,A.opacity);var e=A.h*n.a;return new s(A.l,Math.cos(e)*A.c,Math.sin(e)*A.c,A.opacity)}Object(i.a)(s,C,Object(i.b)(r.a,{brighter:function(A){return new s(this.l+18*(null==A?1:A),this.a,this.b,this.opacity)},darker:function(A){return new s(this.l-18*(null==A?1:A),this.a,this.b,this.opacity)},rgb:function(){var A=(this.l+16)/116,e=isNaN(this.a)?A:A+this.a/500,t=isNaN(this.b)?A:A-this.b/200;return e=.96422*l(e),A=1*l(A),t=.82521*l(t),new r.b(B(3.1338561*e-1.6168667*A-.4906146*t),B(-.9787684*e+1.9161415*A+.033454*t),B(.0719453*e-.2289914*A+1.4052427*t),this.opacity)}})),Object(i.a)(f,h,Object(i.b)(r.a,{brighter:function(A){return new f(this.h,this.c,this.l+18*(null==A?1:A),this.opacity)},darker:function(A){return new f(this.h,this.c,this.l-18*(null==A?1:A),this.opacity)},rgb:function(){return d(this).rgb()}}))},function(A,e,t){"use strict";t.d(e,"b",(function(){return g}));var i=t(5),r=t(6),n=Object(i.a)((function(A){A.setTime(A-A.getMilliseconds())}),(function(A,e){A.setTime(+A+e*r.d)}),(function(A,e){return(e-A)/r.d}),(function(A){return A.getUTCSeconds()}));e.a=n;var g=n.range},function(A,e,t){"use strict";t.d(e,"b",(function(){return n}));var i=t(5),r=Object(i.a)((function(){}),(function(A,e){A.setTime(+A+e)}),(function(A,e){return e-A}));r.every=function(A){return A=Math.floor(A),isFinite(A)&&A>0?A>1?Object(i.a)((function(e){e.setTime(Math.floor(e/A)*A)}),(function(e,t){e.setTime(+e+t*A)}),(function(e,t){return(t-e)/A})):r:null},e.a=r;var n=r.range},function(A,e,t){"use strict";t.d(e,"b",(function(){return i.b})),t.d(e,"d",(function(){return i.c})),t.d(e,"e",(function(){return i.d})),t.d(e,"c",(function(){return r.a})),t.d(e,"a",(function(){return n}));var i=t(43),r=t(212),n=function(A,e,t){var r=new i.a,n=e;return null==e?(r.restart(A,e,t),r):(e=+e,t=null==t?Object(i.b)():+t,r.restart((function i(g){g+=n,r.restart(i,n+=e,t),A(g)}),e,t),r)}},function(A,e,t){"use strict";t.d(e,"a",(function(){return g}));var i=t(5),r=t(6),n=Object(i.a)((function(A){A.setHours(0,0,0,0)}),(function(A,e){A.setDate(A.getDate()+e)}),(function(A,e){return(e-A-(e.getTimezoneOffset()-A.getTimezoneOffset())*r.c)/r.a}),(function(A){return A.getDate()-1}));e.b=n;var g=n.range},function(A,e,t){"use strict";t.d(e,"b",(function(){return g}));var i=t(5),r=t(6),n=Object(i.a)((function(A){A.setUTCHours(0,0,0,0)}),(function(A,e){A.setUTCDate(A.getUTCDate()+e)}),(function(A,e){return(e-A)/r.a}),(function(A){return A.getUTCDate()-1}));e.a=n;var g=n.range},function(A,e,t){"use strict";var i=this&&this.__createBinding||(Object.create?function(A,e,t,i){void 0===i&&(i=t),Object.defineProperty(A,i,{enumerable:!0,get:function(){return e[t]}})}:function(A,e,t,i){void 0===i&&(i=t),A[i]=e[t]}),r=this&&this.__exportStar||function(A,e){for(var t in A)"default"===t||e.hasOwnProperty(t)||i(e,A,t)};Object.defineProperty(e,"__esModule",{value:!0}),r(t(129),e),r(t(169),e),r(t(18),e),r(t(245),e),r(t(170),e);var n=t(30);Object.defineProperty(e,"BaseSerializer",{enumerable:!0,get:function(){return n.BaseSerializer}})},function(A,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.DelegatingSerializerImpl=void 0;const i=t(30),r=t(18);class n extends i.BaseSerializerImpl{constructor(){super(...arguments),this.kind="delegation"}refineSource(A,e){const t=[...A.errors];let i=!1,n=void 0;if(!A.hasErrors){const r=this.refineIntermediate(A.value,e);r.hasValue&&(i=!0,n=r.value),t.push(...r.errors)}return new r.DeserializeResult(i,n,t,A.unprocessedPropertyTree)}internalDeserialize(A,e){const t=this.underlyingSerializer.deserialize(A,e.withoutFirstDeserializationOnValue());return this.refineSource(t,e)}}e.DelegatingSerializerImpl=n},function(A,e){var t,i,r=A.exports={};function n(){throw new Error("setTimeout has not been defined")}function g(){throw new Error("clearTimeout has not been defined")}function o(A){if(t===setTimeout)return setTimeout(A,0);if((t===n||!t)&&setTimeout)return t=setTimeout,setTimeout(A,0);try{return t(A,0)}catch(e){try{return t.call(null,A,0)}catch(e){return t.call(this,A,0)}}}!function(){try{t="function"==typeof setTimeout?setTimeout:n}catch(A){t=n}try{i="function"==typeof clearTimeout?clearTimeout:g}catch(A){i=g}}();var a,I=[],C=!1,s=-1;function c(){C&&a&&(C=!1,a.length?I=a.concat(I):s=-1,I.length&&l())}function l(){if(!C){var A=o(c);C=!0;for(var e=I.length;e;){for(a=I,I=[];++s<e;)a&&a[s].run();s=-1,e=I.length}a=null,C=!1,function(A){if(i===clearTimeout)return clearTimeout(A);if((i===g||!i)&&clearTimeout)return i=clearTimeout,clearTimeout(A);try{i(A)}catch(e){try{return i.call(null,A)}catch(e){return i.call(this,A)}}}(A)}}function B(A,e){this.fun=A,this.array=e}function Q(){}r.nextTick=function(A){var e=new Array(arguments.length-1);if(arguments.length>1)for(var t=1;t<arguments.length;t++)e[t-1]=arguments[t];I.push(new B(A,e)),1!==I.length||C||o(l)},B.prototype.run=function(){this.fun.apply(null,this.array)},r.title="browser",r.browser=!0,r.env={},r.argv=[],r.version="",r.versions={},r.on=Q,r.addListener=Q,r.once=Q,r.off=Q,r.removeListener=Q,r.removeAllListeners=Q,r.emit=Q,r.prependListener=Q,r.prependOnceListener=Q,r.listeners=function(A){return[]},r.binding=function(A){throw new Error("process.binding is not supported")},r.cwd=function(){return"/"},r.chdir=function(A){throw new Error("process.chdir is not supported")},r.umask=function(){return 0}},function(A,e,t){var i=t(135),r=t(100);A.exports=function(A){return i(r(A))}},function(A,e){var t={}.toString;A.exports=function(A){return t.call(A).slice(8,-1)}},function(A,e){A.exports=function(A){if(null==A)throw TypeError("Can't call method on "+A);return A}},function(A,e){A.exports=!1},function(A,e,t){var i=t(32);A.exports=function(A,e){if(!i(A))return A;var t,r;if(e&&"function"==typeof(t=A.toString)&&!i(r=t.call(A)))return r;if("function"==typeof(t=A.valueOf)&&!i(r=t.call(A)))return r;if(!e&&"function"==typeof(t=A.toString)&&!i(r=t.call(A)))return r;throw TypeError("Can't convert object to primitive value")}},function(A,e,t){var i,r=t(33),n=t(183),g=t(140),o=t(139),a=t(277),I=t(181),C=t(141),s=C("IE_PROTO"),c=function(){},l=function(A){return"<script>"+A+"<\/script>"},B=function(){try{i=document.domain&&new ActiveXObject("htmlfile")}catch(A){}var A,e;B=i?function(A){A.write(l("")),A.close();var e=A.parentWindow.Object;return A=null,e}(i):((e=I("iframe")).style.display="none",a.appendChild(e),e.src=String("javascript:"),(A=e.contentWindow.document).open(),A.write(l("document.F=Object")),A.close(),A.F);for(var t=g.length;t--;)delete B.prototype[g[t]];return B()};o[s]=!0,A.exports=Object.create||function(A,e){var t;return null!==A?(c.prototype=r(A),t=new c,c.prototype=null,t[s]=A):t=B(),void 0===e?t:n(t,e)}},function(A,e,t){var i=t(278),r=t(13),n=function(A){return"function"==typeof A?A:void 0};A.exports=function(A,e){return arguments.length<2?n(i[A])||n(r[A]):i[A]&&i[A][e]||r[A]&&r[A][e]}},function(A,e,t){var i=t(23),r=t(61),n=t(141),g=t(283),o=n("IE_PROTO"),a=Object.prototype;A.exports=g?Object.getPrototypeOf:function(A){return A=r(A),i(A,o)?A[o]:"function"==typeof A.constructor&&A instanceof A.constructor?A.constructor.prototype:A instanceof Object?a:null}},function(A,e){A.exports=function(A){var e=typeof A;return null!=A&&("object"==e||"function"==e)}},function(A,e,t){var i=t(305),r=t(306),n=t(307),g=t(308),o=t(309);function a(A){var e=-1,t=null==A?0:A.length;for(this.clear();++e<t;){var i=A[e];this.set(i[0],i[1])}}a.prototype.clear=i,a.prototype.delete=r,a.prototype.get=n,a.prototype.has=g,a.prototype.set=o,A.exports=a},function(A,e,t){var i=t(196);A.exports=function(A,e){for(var t=A.length;t--;)if(i(A[t][0],e))return t;return-1}},function(A,e,t){var i=t(65)(Object,"create");A.exports=i},function(A,e,t){var i=t(327);A.exports=function(A,e){var t=A.__data__;return i(e)?t["string"==typeof e?"string":"hash"]:t.map}},function(A,e,t){var i=t(371),r=t(99),n=t(14)("toStringTag"),g="Arguments"==r(function(){return arguments}());A.exports=i?r:function(A){var e,t,i;return void 0===A?"Undefined":null===A?"Null":"string"==typeof(t=function(A,e){try{return A[e]}catch(A){}}(e=Object(A),n))?t:g?r(e):"Object"==(i=r(e))&&"function"==typeof e.callee?"Arguments":i}},function(A,e){A.exports=function(A,e,t){if(!(A instanceof e))throw TypeError("Incorrect "+(t?t+" ":"")+"invocation");return A}},function(A,e,t){var i=t(111),r=t(82),n=t(14)("iterator");A.exports=function(A){if(null!=A)return A[n]||A["@@iterator"]||r[i(A)]}},function(A,e,t){var i=t(378);A.exports=function(A,e,t){if(i(A),void 0===e)return A;switch(t){case 0:return function(){return A.call(e)};case 1:return function(t){return A.call(e,t)};case 2:return function(t,i){return A.call(e,t,i)};case 3:return function(t,i,r){return A.call(e,t,i,r)}}return function(){return A.apply(e,arguments)}}},function(A,e,t){"use strict";t.d(e,"b",(function(){return r})),t.d(e,"c",(function(){return n})),t.d(e,"a",(function(){return o}));var i,r,n,g=t(126);function o(A){return i=Object(g.a)(A),r=i.format,n=i.formatPrefix,i}o({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"})},function(A,e,t){"use strict";t.d(e,"a",(function(){return u})),t.d(e,"b",(function(){return a.a})),t.d(e,"c",(function(){return a.b}));var i=t(211),r=t(37),n=t(214),g=t(77),o=t(213),a=t(73),I=t(27),C=function(A){return function(){return A}};function s(A,e,t,i,r,n,g,o,a,I){this.target=A,this.type=e,this.subject=t,this.identifier=i,this.active=r,this.x=n,this.y=g,this.dx=o,this.dy=a,this._=I}function c(){return!r.c.ctrlKey&&!r.c.button}function l(){return this.parentNode}function B(A){return null==A?{x:r.c.x,y:r.c.y}:A}function Q(){return navigator.maxTouchPoints||"ontouchstart"in this}s.prototype.on=function(){var A=this._.on.apply(this._,arguments);return A===this._?this:A};var u=function(){var A,e,t,u,E=c,h=l,f=B,d=Q,p={},y=Object(i.a)("start","drag","end"),w=0,D=0;function v(A){A.on("mousedown.drag",m).filter(d).on("touchstart.drag",N).on("touchmove.drag",M).on("touchend.drag touchcancel.drag",R).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(){if(!u&&E.apply(this,arguments)){var i=G("mouse",h.apply(this,arguments),n.a,this,arguments);i&&(Object(g.a)(r.c.view).on("mousemove.drag",b,!0).on("mouseup.drag",k,!0),Object(a.a)(r.c.view),Object(I.b)(),t=!1,A=r.c.clientX,e=r.c.clientY,i("start"))}}function b(){if(Object(I.a)(),!t){var i=r.c.clientX-A,n=r.c.clientY-e;t=i*i+n*n>D}p.mouse("drag")}function k(){Object(g.a)(r.c.view).on("mousemove.drag mouseup.drag",null),Object(a.b)(r.c.view,t),Object(I.a)(),p.mouse("end")}function N(){if(E.apply(this,arguments)){var A,e,t=r.c.changedTouches,i=h.apply(this,arguments),n=t.length;for(A=0;A<n;++A)(e=G(t[A].identifier,i,o.a,this,arguments))&&(Object(I.b)(),e("start"))}}function M(){var A,e,t=r.c.changedTouches,i=t.length;for(A=0;A<i;++A)(e=p[t[A].identifier])&&(Object(I.a)(),e("drag"))}function R(){var A,e,t=r.c.changedTouches,i=t.length;for(u&&clearTimeout(u),u=setTimeout((function(){u=null}),500),A=0;A<i;++A)(e=p[t[A].identifier])&&(Object(I.b)(),e("end"))}function G(A,e,t,i,n){var g,o,a,I=t(e,A),C=y.copy();if(Object(r.a)(new s(v,"beforestart",g,A,w,I[0],I[1],0,0,C),(function(){return null!=(r.c.subject=g=f.apply(i,n))&&(o=g.x-I[0]||0,a=g.y-I[1]||0,!0)})))return function c(l){var B,Q=I;switch(l){case"start":p[A]=c,B=w++;break;case"end":delete p[A],--w;case"drag":I=t(e,A),B=w}Object(r.a)(new s(v,l,g,A,B,I[0]+o,I[1]+a,I[0]-Q[0],I[1]-Q[1],C),C.apply,C,[l,i,n])}}return v.filter=function(A){return arguments.length?(E="function"==typeof A?A:C(!!A),v):E},v.container=function(A){return arguments.length?(h="function"==typeof A?A:C(A),v):h},v.subject=function(A){return arguments.length?(f="function"==typeof A?A:C(A),v):f},v.touchable=function(A){return arguments.length?(d="function"==typeof A?A:C(!!A),v):d},v.on=function(){var A=y.on.apply(y,arguments);return A===y?v:A},v.clickDistance=function(A){return arguments.length?(D=(A=+A)*A,v):Math.sqrt(D)},v}},function(A,e,t){"use strict";var i=t(68);e.a=function(A){var e=A.length;return function(t){var r=Math.floor(((t%=1)<0?++t:t)*e),n=A[(r+e-1)%e],g=A[r%e],o=A[(r+1)%e],a=A[(r+2)%e];return Object(i.a)((t-r/e)*e,n,g,o,a)}}},function(A,e,t){"use strict";var i=t(20),r=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,n=new RegExp(r.source,"g");e.a=function(A,e){var t,g,o,a=r.lastIndex=n.lastIndex=0,I=-1,C=[],s=[];for(A+="",e+="";(t=r.exec(A))&&(g=n.exec(e));)(o=g.index)>a&&(o=e.slice(a,o),C[I]?C[I]+=o:C[++I]=o),(t=t[0])===(g=g[0])?C[I]?C[I]+=g:C[++I]=g:(C[++I]=null,s.push({i:I,x:Object(i.a)(t,g)})),a=n.lastIndex;return a<e.length&&(o=e.slice(a),C[I]?C[I]+=o:C[++I]=o),C.length<2?s[0]?function(A){return function(e){return A(e)+""}}(s[0].x):function(A){return function(){return A}}(e):(e=s.length,function(A){for(var t,i=0;i<e;++i)C[(t=s[i]).i]=t.x(A);return C.join("")})}},function(A,e,t){"use strict";e.a=function(A){return function(){return this.matches(A)}}},function(A,e,t){"use strict";function i(){return[]}e.a=function(A){return null==A?i:function(){return this.querySelectorAll(A)}}},function(A,e,t){"use strict";t.d(e,"b",(function(){return o}));var i=t(71);function r(A){return function(){this.style.removeProperty(A)}}function n(A,e,t){return function(){this.style.setProperty(A,e,t)}}function g(A,e,t){return function(){var i=e.apply(this,arguments);null==i?this.style.removeProperty(A):this.style.setProperty(A,i,t)}}function o(A,e){return A.style.getPropertyValue(e)||Object(i.a)(A).getComputedStyle(A,null).getPropertyValue(e)}e.a=function(A,e,t){return arguments.length>1?this.each((null==e?r:"function"==typeof e?g:n)(A,e,null==t?"":t)):o(this.node(),A)}},function(A,e,t){"use strict";e.a=function(A,e){var t=new Date;return A=+A,e=+e,function(i){return t.setTime(A*(1-i)+e*i),t}}},function(A,e,t){"use strict";t.d(e,"b",(function(){return n}));var i=t(72),r=t(54);function n(A,e){var t,r=e?e.length:0,n=A?Math.min(r,A.length):0,g=new Array(n),o=new Array(r);for(t=0;t<n;++t)g[t]=Object(i.a)(A[t],e[t]);for(;t<r;++t)o[t]=e[t];return function(A){for(t=0;t<n;++t)o[t]=g[t](A);return o}}e.a=function(A,e){return(Object(r.b)(e)?r.a:n)(A,e)}},function(A,e,t){"use strict";var i=t(72);e.a=function(A,e){var t,r={},n={};for(t in null!==A&&"object"==typeof A||(A={}),null!==e&&"object"==typeof e||(e={}),e)t in A?r[t]=Object(i.a)(A[t],e[t]):n[t]=e[t];return function(A){for(t in r)n[t]=r[t](A);return n}}},function(A,e,t){"use strict";t.d(e,"a",(function(){return c}));var i=t(9),r=t(94),n=t(8),g=t(93),o=t(56),a=t(57);function I(A){if(0<=A.y&&A.y<100){var e=new Date(-1,A.m,A.d,A.H,A.M,A.S,A.L);return e.setFullYear(A.y),e}return new Date(A.y,A.m,A.d,A.H,A.M,A.S,A.L)}function C(A){if(0<=A.y&&A.y<100){var e=new Date(Date.UTC(-1,A.m,A.d,A.H,A.M,A.S,A.L));return e.setUTCFullYear(A.y),e}return new Date(Date.UTC(A.y,A.m,A.d,A.H,A.M,A.S,A.L))}function s(A,e,t){return{y:A,m:e,d:t,H:0,M:0,S:0,L:0}}function c(A){var e=A.dateTime,t=A.date,o=A.time,a=A.periods,c=A.days,B=A.shortDays,Q=A.months,u=A.shortMonths,E=f(a),h=d(a),DA=f(c),vA=d(c),mA=f(B),bA=d(B),kA=f(Q),NA=d(Q),MA=f(u),RA=d(u),GA={a:function(A){return B[A.getDay()]},A:function(A){return c[A.getDay()]},b:function(A){return u[A.getMonth()]},B:function(A){return Q[A.getMonth()]},c:null,d:J,e:J,f:j,H:T,I:H,j:O,L:q,m:P,M:V,p:function(A){return a[+(A.getHours()>=12)]},q:function(A){return 1+~~(A.getMonth()/3)},Q:yA,s:wA,S:z,u:Z,U:X,V:W,w:$,W:AA,x:null,X:null,y:eA,Y:tA,Z:iA,"%":pA},FA={a:function(A){return B[A.getUTCDay()]},A:function(A){return c[A.getUTCDay()]},b:function(A){return u[A.getUTCMonth()]},B:function(A){return Q[A.getUTCMonth()]},c:null,d:rA,e:rA,f:IA,H:nA,I:gA,j:oA,L:aA,m:CA,M:sA,p:function(A){return a[+(A.getUTCHours()>=12)]},q:function(A){return 1+~~(A.getUTCMonth()/3)},Q:yA,s:wA,S:cA,u:lA,U:BA,V:QA,w:uA,W:EA,x:null,X:null,y:hA,Y:fA,Z:dA,"%":pA},xA={a:function(A,e,t){var i=mA.exec(e.slice(t));return i?(A.w=bA[i[0].toLowerCase()],t+i[0].length):-1},A:function(A,e,t){var i=DA.exec(e.slice(t));return i?(A.w=vA[i[0].toLowerCase()],t+i[0].length):-1},b:function(A,e,t){var i=MA.exec(e.slice(t));return i?(A.m=RA[i[0].toLowerCase()],t+i[0].length):-1},B:function(A,e,t){var i=kA.exec(e.slice(t));return i?(A.m=NA[i[0].toLowerCase()],t+i[0].length):-1},c:function(A,t,i){return _A(A,e,t,i)},d:R,e:R,f:_,H:F,I:F,j:G,L:Y,m:M,M:x,p:function(A,e,t){var i=E.exec(e.slice(t));return i?(A.p=h[i[0].toLowerCase()],t+i[0].length):-1},q:N,Q:L,s:K,S:S,u:y,U:w,V:D,w:p,W:v,x:function(A,e,i){return _A(A,t,e,i)},X:function(A,e,t){return _A(A,o,e,t)},y:b,Y:m,Z:k,"%":U};function SA(A,e){return function(t){var i,r,n,g=[],o=-1,a=0,I=A.length;for(t instanceof Date||(t=new Date(+t));++o<I;)37===A.charCodeAt(o)&&(g.push(A.slice(a,o)),null!=(r=l[i=A.charAt(++o)])?i=A.charAt(++o):r="e"===i?" ":"0",(n=e[i])&&(i=n(t,r)),g.push(i),a=o+1);return g.push(A.slice(a,o)),g.join("")}}function YA(A,e){return function(t){var o,a,c=s(1900,void 0,1);if(_A(c,A,t+="",0)!=t.length)return null;if("Q"in c)return new Date(c.Q);if("s"in c)return new Date(1e3*c.s+("L"in c?c.L:0));if(e&&!("Z"in c)&&(c.Z=0),"p"in c&&(c.H=c.H%12+12*c.p),void 0===c.m&&(c.m="q"in c?c.q:0),"V"in c){if(c.V<1||c.V>53)return null;"w"in c||(c.w=1),"Z"in c?(a=(o=C(s(c.y,0,1))).getUTCDay(),o=a>4||0===a?i.c.ceil(o):Object(i.c)(o),o=r.a.offset(o,7*(c.V-1)),c.y=o.getUTCFullYear(),c.m=o.getUTCMonth(),c.d=o.getUTCDate()+(c.w+6)%7):(a=(o=I(s(c.y,0,1))).getDay(),o=a>4||0===a?n.c.ceil(o):Object(n.c)(o),o=g.b.offset(o,7*(c.V-1)),c.y=o.getFullYear(),c.m=o.getMonth(),c.d=o.getDate()+(c.w+6)%7)}else("W"in c||"U"in c)&&("w"in c||(c.w="u"in c?c.u%7:"W"in c?1:0),a="Z"in c?C(s(c.y,0,1)).getUTCDay():I(s(c.y,0,1)).getDay(),c.m=0,c.d="W"in c?(c.w+6)%7+7*c.W-(a+5)%7:c.w+7*c.U-(a+6)%7);return"Z"in c?(c.H+=c.Z/100|0,c.M+=c.Z%100,C(c)):I(c)}}function _A(A,e,t,i){for(var r,n,g=0,o=e.length,a=t.length;g<o;){if(i>=a)return-1;if(37===(r=e.charCodeAt(g++))){if(r=e.charAt(g++),!(n=xA[r in l?e.charAt(g++):r])||(i=n(A,t,i))<0)return-1}else if(r!=t.charCodeAt(i++))return-1}return i}return GA.x=SA(t,GA),GA.X=SA(o,GA),GA.c=SA(e,GA),FA.x=SA(t,FA),FA.X=SA(o,FA),FA.c=SA(e,FA),{format:function(A){var e=SA(A+="",GA);return e.toString=function(){return A},e},parse:function(A){var e=YA(A+="",!1);return e.toString=function(){return A},e},utcFormat:function(A){var e=SA(A+="",FA);return e.toString=function(){return A},e},utcParse:function(A){var e=YA(A+="",!0);return e.toString=function(){return A},e}}}var l={"-":"",_:" ",0:"0"},B=/^\s*\d+/,Q=/^%/,u=/[\\^$*+?|[\]().{}]/g;function E(A,e,t){var i=A<0?"-":"",r=(i?-A:A)+"",n=r.length;return i+(n<t?new Array(t-n+1).join(e)+r:r)}function h(A){return A.replace(u,"\\$&")}function f(A){return new RegExp("^(?:"+A.map(h).join("|")+")","i")}function d(A){for(var e={},t=-1,i=A.length;++t<i;)e[A[t].toLowerCase()]=t;return e}function p(A,e,t){var i=B.exec(e.slice(t,t+1));return i?(A.w=+i[0],t+i[0].length):-1}function y(A,e,t){var i=B.exec(e.slice(t,t+1));return i?(A.u=+i[0],t+i[0].length):-1}function w(A,e,t){var i=B.exec(e.slice(t,t+2));return i?(A.U=+i[0],t+i[0].length):-1}function D(A,e,t){var i=B.exec(e.slice(t,t+2));return i?(A.V=+i[0],t+i[0].length):-1}function v(A,e,t){var i=B.exec(e.slice(t,t+2));return i?(A.W=+i[0],t+i[0].length):-1}function m(A,e,t){var i=B.exec(e.slice(t,t+4));return i?(A.y=+i[0],t+i[0].length):-1}function b(A,e,t){var i=B.exec(e.slice(t,t+2));return i?(A.y=+i[0]+(+i[0]>68?1900:2e3),t+i[0].length):-1}function k(A,e,t){var i=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(t,t+6));return i?(A.Z=i[1]?0:-(i[2]+(i[3]||"00")),t+i[0].length):-1}function N(A,e,t){var i=B.exec(e.slice(t,t+1));return i?(A.q=3*i[0]-3,t+i[0].length):-1}function M(A,e,t){var i=B.exec(e.slice(t,t+2));return i?(A.m=i[0]-1,t+i[0].length):-1}function R(A,e,t){var i=B.exec(e.slice(t,t+2));return i?(A.d=+i[0],t+i[0].length):-1}function G(A,e,t){var i=B.exec(e.slice(t,t+3));return i?(A.m=0,A.d=+i[0],t+i[0].length):-1}function F(A,e,t){var i=B.exec(e.slice(t,t+2));return i?(A.H=+i[0],t+i[0].length):-1}function x(A,e,t){var i=B.exec(e.slice(t,t+2));return i?(A.M=+i[0],t+i[0].length):-1}function S(A,e,t){var i=B.exec(e.slice(t,t+2));return i?(A.S=+i[0],t+i[0].length):-1}function Y(A,e,t){var i=B.exec(e.slice(t,t+3));return i?(A.L=+i[0],t+i[0].length):-1}function _(A,e,t){var i=B.exec(e.slice(t,t+6));return i?(A.L=Math.floor(i[0]/1e3),t+i[0].length):-1}function U(A,e,t){var i=Q.exec(e.slice(t,t+1));return i?t+i[0].length:-1}function L(A,e,t){var i=B.exec(e.slice(t));return i?(A.Q=+i[0],t+i[0].length):-1}function K(A,e,t){var i=B.exec(e.slice(t));return i?(A.s=+i[0],t+i[0].length):-1}function J(A,e){return E(A.getDate(),e,2)}function T(A,e){return E(A.getHours(),e,2)}function H(A,e){return E(A.getHours()%12||12,e,2)}function O(A,e){return E(1+g.b.count(Object(o.a)(A),A),e,3)}function q(A,e){return E(A.getMilliseconds(),e,3)}function j(A,e){return q(A,e)+"000"}function P(A,e){return E(A.getMonth()+1,e,2)}function V(A,e){return E(A.getMinutes(),e,2)}function z(A,e){return E(A.getSeconds(),e,2)}function Z(A){var e=A.getDay();return 0===e?7:e}function X(A,e){return E(n.g.count(Object(o.a)(A)-1,A),e,2)}function W(A,e){var t=A.getDay();return A=t>=4||0===t?Object(n.i)(A):n.i.ceil(A),E(n.i.count(Object(o.a)(A),A)+(4===Object(o.a)(A).getDay()),e,2)}function $(A){return A.getDay()}function AA(A,e){return E(n.c.count(Object(o.a)(A)-1,A),e,2)}function eA(A,e){return E(A.getFullYear()%100,e,2)}function tA(A,e){return E(A.getFullYear()%1e4,e,4)}function iA(A){var e=A.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+E(e/60|0,"0",2)+E(e%60,"0",2)}function rA(A,e){return E(A.getUTCDate(),e,2)}function nA(A,e){return E(A.getUTCHours(),e,2)}function gA(A,e){return E(A.getUTCHours()%12||12,e,2)}function oA(A,e){return E(1+r.a.count(Object(a.a)(A),A),e,3)}function aA(A,e){return E(A.getUTCMilliseconds(),e,3)}function IA(A,e){return aA(A,e)+"000"}function CA(A,e){return E(A.getUTCMonth()+1,e,2)}function sA(A,e){return E(A.getUTCMinutes(),e,2)}function cA(A,e){return E(A.getUTCSeconds(),e,2)}function lA(A){var e=A.getUTCDay();return 0===e?7:e}function BA(A,e){return E(i.g.count(Object(a.a)(A)-1,A),e,2)}function QA(A,e){var t=A.getUTCDay();return A=t>=4||0===t?Object(i.i)(A):i.i.ceil(A),E(i.i.count(Object(a.a)(A),A)+(4===Object(a.a)(A).getUTCDay()),e,2)}function uA(A){return A.getUTCDay()}function EA(A,e){return E(i.c.count(Object(a.a)(A)-1,A),e,2)}function hA(A,e){return E(A.getUTCFullYear()%100,e,2)}function fA(A,e){return E(A.getUTCFullYear()%1e4,e,4)}function dA(){return"+0000"}function pA(){return"%"}function yA(A){return+A}function wA(A){return Math.floor(+A/1e3)}},function(A,e,t){"use strict";var i,r=t(38),n=t(75),g=t(63),o=function(A,e){var t=Object(g.a)(A,e);if(!t)return A+"";var i=t[0],r=t[1];return r<0?"0."+new Array(-r).join("0")+i:i.length>r+1?i.slice(0,r+1)+"."+i.slice(r+1):i+new Array(r-i.length+2).join("0")},a={"%":function(A,e){return(100*A).toFixed(e)},b:function(A){return Math.round(A).toString(2)},c:function(A){return A+""},d:function(A){return Math.round(A).toString(10)},e:function(A,e){return A.toExponential(e)},f:function(A,e){return A.toFixed(e)},g:function(A,e){return A.toPrecision(e)},o:function(A){return Math.round(A).toString(8)},p:function(A,e){return o(100*A,e)},r:o,s:function(A,e){var t=Object(g.a)(A,e);if(!t)return A+"";var r=t[0],n=t[1],o=n-(i=3*Math.max(-8,Math.min(8,Math.floor(n/3))))+1,a=r.length;return o===a?r:o>a?r+new Array(o-a+1).join("0"):o>0?r.slice(0,o)+"."+r.slice(o):"0."+new Array(1-o).join("0")+Object(g.a)(A,Math.max(0,e+o-1))[0]},X:function(A){return Math.round(A).toString(16).toUpperCase()},x:function(A){return Math.round(A).toString(16)}},I=function(A){return A},C=Array.prototype.map,s=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];e.a=function(A){var e,t,g=void 0===A.grouping||void 0===A.thousands?I:(e=C.call(A.grouping,Number),t=A.thousands+"",function(A,i){for(var r=A.length,n=[],g=0,o=e[0],a=0;r>0&&o>0&&(a+o+1>i&&(o=Math.max(1,i-a)),n.push(A.substring(r-=o,r+o)),!((a+=o+1)>i));)o=e[g=(g+1)%e.length];return n.reverse().join(t)}),o=void 0===A.currency?"":A.currency[0]+"",c=void 0===A.currency?"":A.currency[1]+"",l=void 0===A.decimal?".":A.decimal+"",B=void 0===A.numerals?I:function(A){return function(e){return e.replace(/[0-9]/g,(function(e){return A[+e]}))}}(C.call(A.numerals,String)),Q=void 0===A.percent?"%":A.percent+"",u=void 0===A.minus?"-":A.minus+"",E=void 0===A.nan?"NaN":A.nan+"";function h(A){var e=(A=Object(n.b)(A)).fill,t=A.align,r=A.sign,I=A.symbol,C=A.zero,h=A.width,f=A.comma,d=A.precision,p=A.trim,y=A.type;"n"===y?(f=!0,y="g"):a[y]||(void 0===d&&(d=12),p=!0,y="g"),(C||"0"===e&&"="===t)&&(C=!0,e="0",t="=");var w="$"===I?o:"#"===I&&/[boxX]/.test(y)?"0"+y.toLowerCase():"",D="$"===I?c:/[%p]/.test(y)?Q:"",v=a[y],m=/[defgprs%]/.test(y);function b(A){var n,o,a,I=w,c=D;if("c"===y)c=v(A)+c,A="";else{var Q=(A=+A)<0||1/A<0;if(A=isNaN(A)?E:v(Math.abs(A),d),p&&(A=function(A){A:for(var e,t=A.length,i=1,r=-1;i<t;++i)switch(A[i]){case".":r=e=i;break;case"0":0===r&&(r=i),e=i;break;default:if(!+A[i])break A;r>0&&(r=0)}return r>0?A.slice(0,r)+A.slice(e+1):A}(A)),Q&&0==+A&&"+"!==r&&(Q=!1),I=(Q?"("===r?r:u:"-"===r||"("===r?"":r)+I,c=("s"===y?s[8+i/3]:"")+c+(Q&&"("===r?")":""),m)for(n=-1,o=A.length;++n<o;)if(48>(a=A.charCodeAt(n))||a>57){c=(46===a?l+A.slice(n+1):A.slice(n))+c,A=A.slice(0,n);break}}f&&!C&&(A=g(A,1/0));var b=I.length+A.length+c.length,k=b<h?new Array(h-b+1).join(e):"";switch(f&&C&&(A=g(k+A,k.length?h-c.length:1/0),k=""),t){case"<":A=I+A+c+k;break;case"=":A=I+k+A+c;break;case"^":A=k.slice(0,b=k.length>>1)+I+A+c+k.slice(b);break;default:A=k+I+A+c}return B(A)}return d=void 0===d?6:/[gprs]/.test(y)?Math.max(1,Math.min(21,d)):Math.max(0,Math.min(20,d)),b.toString=function(){return A+""},b}return{format:h,formatPrefix:function(A,e){var t=h(((A=Object(n.b)(A)).type="f",A)),i=3*Math.max(-8,Math.min(8,Math.floor(Object(r.a)(e)/3))),g=Math.pow(10,-i),o=s[8+i/3];return function(A){return t(g*A)+o}}}}},function(A,e,t){"use strict";t.d(e,"a",(function(){return Q}));var i=t(21),r=t(10),n=t(79),g=-.14861,o=1.78277,a=-.29227,I=-.90649,C=1.97294,s=C*I,c=C*o,l=o*a-I*g;function B(A){if(A instanceof u)return new u(A.h,A.s,A.l,A.opacity);A instanceof r.b||(A=Object(r.h)(A));var e=A.r/255,t=A.g/255,i=A.b/255,g=(l*i+s*e-c*t)/(l+s-c),o=i-g,B=(C*(t-g)-a*o)/I,Q=Math.sqrt(B*B+o*o)/(C*g*(1-g)),E=Q?Math.atan2(B,o)*n.b-120:NaN;return new u(E<0?E+360:E,Q,g,A.opacity)}function Q(A,e,t,i){return 1===arguments.length?B(A):new u(A,e,t,null==i?1:i)}function u(A,e,t,i){this.h=+A,this.s=+e,this.l=+t,this.opacity=+i}Object(i.a)(u,Q,Object(i.b)(r.a,{brighter:function(A){return A=null==A?r.c:Math.pow(r.c,A),new u(this.h,this.s,this.l*A,this.opacity)},darker:function(A){return A=null==A?r.d:Math.pow(r.d,A),new u(this.h,this.s,this.l*A,this.opacity)},rgb:function(){var A=isNaN(this.h)?0:(this.h+120)*n.a,e=+this.l,t=isNaN(this.s)?0:this.s*e*(1-e),i=Math.cos(A),s=Math.sin(A);return new r.b(255*(e+t*(g*i+o*s)),255*(e+t*(a*i+I*s)),255*(e+t*(C*i)),this.opacity)}}))},function(A,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.asVisualizationId=e.asVisualizerId=void 0,e.asVisualizerId=function(A){return A},e.asVisualizationId=function(A){return A}},function(A,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=t(234);Object.defineProperty(e,"AnySerializerImpl",{enumerable:!0,get:function(){return i.AnySerializerImpl}});var r=t(236);Object.defineProperty(e,"PrimitiveSerializerImpl",{enumerable:!0,get:function(){return r.PrimitiveSerializerImpl}});var n=t(237);Object.defineProperty(e,"LiteralSerializerImpl",{enumerable:!0,get:function(){return n.LiteralSerializerImpl}});var g=t(238);Object.defineProperty(e,"UnionSerializerImpl",{enumerable:!0,get:function(){return g.UnionSerializerImpl}});var o=t(239);Object.defineProperty(e,"IntersectionSerializerImpl",{enumerable:!0,get:function(){return o.IntersectionSerializerImpl}});var a=t(96);Object.defineProperty(e,"DelegatingSerializerImpl",{enumerable:!0,get:function(){return a.DelegatingSerializerImpl}});var I=t(240);Object.defineProperty(e,"RefinedSerializerImpl",{enumerable:!0,get:function(){return I.RefinedSerializerImpl}});var C=t(241);Object.defineProperty(e,"NamedSerializerImpl",{enumerable:!0,get:function(){return C.NamedSerializerImpl}});var s=t(242);Object.defineProperty(e,"LazySerializerImpl",{enumerable:!0,get:function(){return s.LazySerializerImpl}});var c=t(243);Object.defineProperty(e,"ArraySerializerImpl",{enumerable:!0,get:function(){return c.ArraySerializerImpl}});var l=t(131);Object.defineProperty(e,"ObjectSerializerImpl",{enumerable:!0,get:function(){return l.ObjectSerializerImpl}});var B=t(244);Object.defineProperty(e,"MapSerializerImpl",{enumerable:!0,get:function(){return B.MapSerializerImpl}})},function(A,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.fromEntries=void 0,e.fromEntries=function(A){return[...A].reduce((A,[e,t])=>(A[e]=t,A),{})}},function(A,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.sProp=e.sOptionalProp=e.sObject=e.sOpenObject=e.ObjectSerializerProperty=e.ObjectSerializerImpl=void 0;const i=t(30),r=t(18),n=t(81);class g extends i.BaseSerializerImpl{constructor(A,e){super(),this.properties=A,this.allowUnknownProperties=e,this.kind="object"}get propertiesList(){return[...Object.values(this.properties)]}internalDeserialize(A,e){if(!n.isValueOfType(A,"object"))return r.DeserializeResult.fromError({message:n.getTypeMismatchMessage(A,{type:"object"})});const t=new Array,i={};this.allowUnknownProperties&&Object.assign(i,A);const g=e.withFirstDeserializationOnValue();let o=void 0;const a=this.allowUnknownProperties?new Set:new Set(Object.keys(A).filter(A=>"$ns"!==A));for(const e of this.propertiesList)if(e.name in A){const r=A[e.name];a.delete(e.name);const n=e.serializer.deserialize(r,g);n.unprocessedPropertyTree&&(o||(o={}),o[e.name]=n.unprocessedPropertyTree),t.push(...n.errors.map(A=>A.prependPath(e.name))),n.hasValue?i[e.name]=n.value:i[e.name]=void 0}else e.isOptional?e.defaultValue&&(i[e.name]=e.defaultValue.value):t.push(r.DeserializeError.from({message:`Required property "${e.name}" is missing.`}));let I=void 0;return(o||0!==a.size)&&(I=new r.UnexpectedPropertyTree(o||{},a)),new r.DeserializeResult(!0,i,t,I)}internalCanSerialize(A){if(!n.isValueOfType(A,"object"))return!1;for(const[e,t]of Object.entries(this.properties))if(!(e in A)&&!t.isOptional)return!1;for(const[e,t]of Object.entries(this.properties))if(e in A){const i=A[e];if(!t.serializer.canSerialize(i))return!1}return!0}internalSerialize(A,e){if(!n.isValueOfType(A,"object"))throw new Error(n.getTypeMismatchMessage(A,{type:"object"}));const t={};for(const i of this.propertiesList)if(i.name in A){const r=A[i.name];if(!i.isOptional||void 0!==r){const A=i.serializer.serialize(r,e);t[i.name]=A}}return t}opened(){return new g(this.properties,!0)}}e.ObjectSerializerImpl=g;class o{constructor(A,e,t,i,r){this.name=A,this.serializer=e,this.description=t,this.isOptional=i,this.defaultValue=r}get T(){throw new Error("Not meant to be accessed at runtime!")}get TKind(){throw new Error("Not meant to be accessed at runtime!")}withName(A){return new o(A,this.serializer,this.description,this.isOptional,this.defaultValue)}}function a(A,e){return e=e||{},new g(function(A){const e={};for(const[t,i]of Object.entries(A))if("deserialize"in i)e[t]=new o(t,i,void 0,!1,void 0);else{if(!(i instanceof o))throw new Error("Unexpected field type: "+i);i||console.log(A),e[t]=i.withName(t)}return e}(A),!!e.allowUnknownProperties)}e.ObjectSerializerProperty=o,e.sOpenObject=function(A,e){return a(A,{allowUnknownProperties:!0})},e.sObject=a,e.sOptionalProp=function(A,e={}){return new o("(not set yet)",A,e.description,!0,void 0)},e.sProp=function(A,e){let t=void 0;return"object"==typeof e.optional&&"withDefault"in e.optional&&(t={value:e.optional.withDefault}),new o("(not set yet)",A,e.description,!!e.optional,t)}},function(A,e,t){"use strict";var i=this&&this.__decorate||function(A,e,t,i){var r,n=arguments.length,g=n<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,t):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(A,e,t,i);else for(var o=A.length-1;o>=0;o--)(r=A[o])&&(g=(n<3?r(g):n>3?r(e,t,g):r(e,t))||g);return n>3&&g&&Object.defineProperty(e,t,g),g};Object.defineProperty(e,"__esModule",{value:!0}),e.GraphvizDotViewer=e.getSvgFromDotCode=void 0;const r=t(40),n=t(1),g=t(133),o=t(171);const a=new class{async getViz(){if(!this.result){const A=await Promise.resolve().then(()=>t(258)),{Module:e,render:i}=await Promise.resolve().then(()=>t(259)),r=new A.default({Module:()=>e({TOTAL_MEMORY:1<<30}),render:i});this.result=r}return this.result}};e.getSvgFromDotCode=function(A){return new o.Loadable(async()=>{const e=await a.getViz();return await e.renderString(A)})};let I=class extends n.Component{render(){const{svgSource:A}=this.props;return A.load(),A.result?n.createElement(g.SvgViewer,{svgRef:this.props.svgRef,svgContent:A.result}):n.createElement("div",null,"Loading...")}};I=i([r.observer],I),e.GraphvizDotViewer=I},function(A,e,t){"use strict";var i=this&&this.__decorate||function(A,e,t,i){var r,n=arguments.length,g=n<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,t):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(A,e,t,i);else for(var o=A.length-1;o>=0;o--)(r=A[o])&&(g=(n<3?r(g):n>3?r(e,t,g):r(e,t))||g);return n>3&&g&&Object.defineProperty(e,t,g),g};Object.defineProperty(e,"__esModule",{value:!0}),e.SvgViewer=void 0;const r=t(431),n=t(40),g=t(1),o=t(4),a=t(428);function I(A){return A.bounds&&A.bounds.height?A.bounds.height:1}let C=class extends g.Component{constructor(){super(...arguments),this.tool="pan",this.svgPanZoomRef=g.createRef(),this.value={}}setTool(A){this.tool=A}componentDidMount(){const A=this.svgPanZoomRef.current;if(this.props.svgRef){if(!A)return void this.props.svgRef(null);const e=A.ViewerDOM;this.props.svgRef(e)}}render(){let{svgContent:A}=this.props,e=0,t=0;A=A.replace(/viewBox="[0-9\.]+ [0-9\.]+ ([0-9\.]+) ([0-9\.]+)"/,(A,i,r)=>(e=parseFloat(i),t=parseFloat(r),""));const i=this.tool,n=this.value;return g.createElement(r.default,{bounds:!0,onResize:()=>{this.svgPanZoomRef.current&&this.svgPanZoomRef.current.fitToViewer("center","center")}},({measureRef:r,contentRect:o})=>{return g.createElement("div",{ref:r,className:"svgViewer",style:{width:"100%",height:"100%"}},g.createElement(a.ReactSVGPanZoom,{width:(C=o,C.bounds&&C.bounds.width?C.bounds.width:1),height:I(o),tool:i,value:n,onChangeValue:A=>this.value=A,onChangeTool:this.setTool,ref:this.svgPanZoomRef,toolbarProps:{SVGAlignX:"center",SVGAlignY:"center"},miniatureProps:{position:"none",height:0,width:0,background:"black"}},g.createElement("svg",{width:e,height:t},g.createElement("g",{dangerouslySetInnerHTML:{__html:A}}))));var C})}};i([o.observable],C.prototype,"tool",void 0),i([o.action.bound],C.prototype,"setTool",null),i([o.observable],C.prototype,"value",void 0),C=i([n.observer],C),e.SvgViewer=C},function(A,e,t){"use strict";var i=this&&this.__decorate||function(A,e,t,i){var r,n=arguments.length,g=n<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,t):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(A,e,t,i);else for(var o=A.length-1;o>=0;o--)(r=A[o])&&(g=(n<3?r(g):n>3?r(e,t,g):r(e,t))||g);return n>3&&g&&Object.defineProperty(e,t,g),g};Object.defineProperty(e,"__esModule",{value:!0}),e.makeLazyLoadable=void 0;const r=t(1),n=t(40),g=t(171);e.makeLazyLoadable=function(A){const e=new g.Loadable(A);let t=class extends r.Component{constructor(A){super(A),e.load()}render(){if(!e.result)return r.createElement("div",null,"Loading...");const A=e.result;return r.createElement(A,Object.assign({},this.props))}static async preload(){await e.load()}};return t=i([n.observer],t),t}},function(A,e,t){var i=t(24),r=t(99),n="".split;A.exports=i((function(){return!Object("z").propertyIsEnumerable(0)}))?function(A){return"String"==r(A)?n.call(A,""):Object(A)}:Object},function(A,e,t){var i=t(14),r=t(103),n=t(31),g=i("unscopables"),o=Array.prototype;null==o[g]&&n.f(o,g,{configurable:!0,value:r(null)}),A.exports=function(A){o[g][A]=!0}},function(A,e,t){var i=t(13),r=t(25);A.exports=function(A,e){try{r(i,A,e)}catch(t){i[A]=e}return e}},function(A,e){var t=0,i=Math.random();A.exports=function(A){return"Symbol("+String(void 0===A?"":A)+")_"+(++t+i).toString(36)}},function(A,e){A.exports={}},function(A,e){A.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},function(A,e,t){var i=t(178),r=t(138),n=i("keys");A.exports=function(A){return n[A]||(n[A]=r(A))}},function(A,e,t){var i=t(26),r=t(189),n=t(64),g=t(98),o=t(102),a=t(23),I=t(180),C=Object.getOwnPropertyDescriptor;e.f=i?C:function(A,e){if(A=g(A),e=o(e,!0),I)try{return C(A,e)}catch(A){}if(a(A,e))return n(!r.f.call(A,e),A[e])}},function(A,e,t){var i=t(185),r=t(140).concat("length","prototype");e.f=Object.getOwnPropertyNames||function(A){return i(A,r)}},function(A,e){A.exports=function(A){return A.webpackPolyfill||(A.deprecate=function(){},A.paths=[],A.children||(A.children=[]),Object.defineProperty(A,"loaded",{enumerable:!0,get:function(){return A.l}}),Object.defineProperty(A,"id",{enumerable:!0,get:function(){return A.i}}),A.webpackPolyfill=1),A}},function(A,e,t){"use strict";var i,r,n=t(290),g=t(291),o=RegExp.prototype.exec,a=String.prototype.replace,I=o,C=(i=/a/,r=/b*/g,o.call(i,"a"),o.call(r,"a"),0!==i.lastIndex||0!==r.lastIndex),s=g.UNSUPPORTED_Y||g.BROKEN_CARET,c=void 0!==/()??/.exec("")[1];(C||c||s)&&(I=function(A){var e,t,i,r,g=this,I=s&&g.sticky,l=n.call(g),B=g.source,Q=0,u=A;return I&&(-1===(l=l.replace("y","")).indexOf("g")&&(l+="g"),u=String(A).slice(g.lastIndex),g.lastIndex>0&&(!g.multiline||g.multiline&&"\n"!==A[g.lastIndex-1])&&(B="(?: "+B+")",u=" "+u,Q++),t=new RegExp("^(?:"+B+")",l)),c&&(t=new RegExp("^"+B+"$(?!\\s)",l)),C&&(e=g.lastIndex),i=o.call(I?t:g,u),I?i?(i.input=i.input.slice(Q),i[0]=i[0].slice(Q),i.index=g.lastIndex,g.lastIndex+=i[0].length):g.lastIndex=0:C&&i&&(g.lastIndex=g.global?i.index+i[0].length:e),c&&i&&i.length>1&&a.call(i[0],t,(function(){for(r=1;r<arguments.length-2;r++)void 0===arguments[r]&&(i[r]=void 0)})),i}),A.exports=I},function(A,e,t){var i=t(58),r=t(100),n=function(A){return function(e,t){var n,g,o=String(r(e)),a=i(t),I=o.length;return a<0||a>=I?A?"":void 0:(n=o.charCodeAt(a))<55296||n>56319||a+1===I||(g=o.charCodeAt(a+1))<56320||g>57343?A?o.charAt(a):n:A?o.slice(a,a+2):g-56320+(n-55296<<10)+65536}};A.exports={codeAt:n(!1),charAt:n(!0)}},function(A,e,t){var i=t(34).Symbol;A.exports=i},function(A,e,t){var i=t(65)(t(34),"Map");A.exports=i},function(A,e){var t=Array.isArray;A.exports=t},function(A,e,t){"use strict";var i,r=t(204),n=t(26),g=t(13),o=t(32),a=t(23),I=t(111),C=t(25),s=t(60),c=t(31).f,l=t(105),B=t(85),Q=t(14),u=t(138),E=g.Int8Array,h=E&&E.prototype,f=g.Uint8ClampedArray,d=f&&f.prototype,p=E&&l(E),y=h&&l(h),w=Object.prototype,D=w.isPrototypeOf,v=Q("toStringTag"),m=u("TYPED_ARRAY_TAG"),b=r&&!!B&&"Opera"!==I(g.opera),k=!1,N={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},M=function(A){return o(A)&&a(N,I(A))};for(i in N)g[i]||(b=!1);if((!b||"function"!=typeof p||p===Function.prototype)&&(p=function(){throw TypeError("Incorrect invocation")},b))for(i in N)g[i]&&B(g[i],p);if((!b||!y||y===w)&&(y=p.prototype,b))for(i in N)g[i]&&B(g[i].prototype,y);if(b&&l(d)!==y&&B(d,y),n&&!a(y,v))for(i in k=!0,c(y,v,{get:function(){return o(this)?this[m]:void 0}}),N)g[i]&&C(g[i],m,i);A.exports={NATIVE_ARRAY_BUFFER_VIEWS:b,TYPED_ARRAY_TAG:k&&m,aTypedArray:function(A){if(M(A))return A;throw TypeError("Target is not a typed array")},aTypedArrayConstructor:function(A){if(B){if(D.call(p,A))return A}else for(var e in N)if(a(N,i)){var t=g[e];if(t&&(A===t||D.call(t,A)))return A}throw TypeError("Target is not a typed array constructor")},exportTypedArrayMethod:function(A,e,t){if(n){if(t)for(var i in N){var r=g[i];r&&a(r.prototype,A)&&delete r.prototype[A]}y[A]&&!t||s(y,A,t?e:b&&h[A]||e)}},exportTypedArrayStaticMethod:function(A,e,t){var i,r;if(n){if(B){if(t)for(i in N)(r=g[i])&&a(r,A)&&delete r[A];if(p[A]&&!t)return;try{return s(p,A,t?e:b&&E[A]||e)}catch(A){}}for(i in N)!(r=g[i])||r[A]&&!t||s(r,A,e)}},isView:function(A){var e=I(A);return"DataView"===e||a(N,e)},isTypedArray:M,TypedArray:p,TypedArrayPrototype:y}},function(A,e,t){"use strict";t.r(e),function(A){t.d(e,"importTemplate",(function(){return i})),t.d(e,"registerElement",(function(){return r})),t.d(e,"bindTemplate",(function(){return n})),t.d(e,"copy_to_clipboard",(function(){return o})),t.d(e,"setPromise",(function(){return a})),t.d(e,"invertPromise",(function(){return I})),t.d(e,"throttlePromise",(function(){return C})),t.d(e,"swap",(function(){return s})),t.d(e,"json_attribute",(function(){return c})),t.d(e,"array_attribute",(function(){return l})),t.d(e,"registerPlugin",(function(){return B}));t(22);function i(A){const e=document.createElement("div");return e.innerHTML=A,Array.prototype.slice.call(e.children)[0]}function r(A,e,t){const r=i(A);!function(A){if(A.content)return;let e;for(A.content=document.createDocumentFragment();e=A.firstChild;)Node.prototype.appendChild.call(A.content,e)}(r),e&&(r.innerHTML=`<style>${e.toString()}</style>`+r.innerHTML),r.innerHTML=`<style id="psp_styles" scope="${r.getAttribute("id")}">test{}</style>`+r.innerHTML;for(let A of Object.getOwnPropertyNames(t.prototype)){let e=Object.getOwnPropertyDescriptor(t.prototype,A);if(e&&e.set){let i=e.set;e.set=function(e){this.hasAttribute(A)&&this.getAttribute(A)===e?(this._initializing||this._initialized)&&i.call(this,e):this.setAttribute(A,e)},Object.defineProperty(t.prototype,A,e)}}let n=r.getAttribute("id");console.log("Registered "+n),window.customElements.define(n,class extends t{attributeChangedCallback(A,e,i){null===i&&(i="null"),"_"!==A[0]&&e!=i&&Object.getOwnPropertyDescriptor(t.prototype,A).set&&(this[A]=i)}connectedCallback(){if(!this._initialized){this._initializing=!0;var A=document.importNode(r.content,!0);this.attachShadow({mode:"open"}),this.shadowRoot.appendChild(A),super.connectedCallback&&super.connectedCallback();for(let A of Object.getOwnPropertyNames(t.prototype))"connectedCallback"!==A&&this.hasAttribute(A)&&"_"!==A[0]&&Object.getOwnPropertyDescriptor(t.prototype,A).set&&(this[A]=this.getAttribute(A));this._initializing=!1,this._initialized=!0}}static get observedAttributes(){return Object.getOwnPropertyNames(t.prototype)}})}function n(A,...e){const t=e.map(A=>A.toString()).join("\n");return function(e){return r(A,{toString:()=>t},e)}}function g(A){return function(e,t,i){const r=i.value;return i.set=function(e){let i=this.getAttribute(t);try{null!=e&&""!==e||(e=A()),"string"!=typeof e&&(e=JSON.stringify(e)),e!==i&&(i=e),i=JSON.parse(i)}catch(r){console.warn(`Invalid value for attribute "${t}": ${e}`),i=A()}r.call(this,i)},i.get=function(){return this.hasAttribute(t)?JSON.parse(this.getAttribute(t)):A()},delete i.value,delete i.writable,i}}function o(A){let e=document.createElement("textarea");document.body.appendChild(e),e.value=A,e.select(),document.execCommand("copy"),document.body.removeChild(e)}async function a(A=(async()=>{}),e=0){return await new Promise(A=>setTimeout(A,e)),await A()}function I(){let A,e=new Promise(e=>{A=e});return e.resolve=A,e}function C(A,e,t){const i=Symbol("private lock"),r=t.value;return t.value=async function(...A){if(this[i]&&(await this[i],this[i]))return void await this[i];let e;this[i]=I();try{e=await r.call(this,...A)}catch(A){console.error(A)}finally{const A=this[i];return this[i]=void 0,A.resolve(),e}},t}function s(A,...e){if(e[0]===e[1])return;if(e.every(A=>A.classList.contains("null-column")))return;let[t,i]=e.map(e=>Array.prototype.slice.call(A.children).indexOf(e));i<t&&([t,i]=[i,t],e=e.reverse()),A.insertBefore(e[1],e[0]),i+1===A.children.length?A.appendChild(e[0]):A.insertBefore(e[0],A.children[i+1])}const c=g(()=>({})),l=g(()=>[]),B=(e,t)=>{A.registerPlugin?A.registerPlugin(e,t):(A.__perspective_plugins__=A.__perspective_plugins__||[],A.__perspective_plugins__.push([e,t]))}}.call(this,t(19))},function(A,e,t){"use strict";var i,r=function(){return void 0===i&&(i=Boolean(window&&document&&document.all&&!window.atob)),i},n=function(){var A={};return function(e){if(void 0===A[e]){var t=document.querySelector(e);if(window.HTMLIFrameElement&&t instanceof window.HTMLIFrameElement)try{t=t.contentDocument.head}catch(A){t=null}A[e]=t}return A[e]}}(),g=[];function o(A){for(var e=-1,t=0;t<g.length;t++)if(g[t].identifier===A){e=t;break}return e}function a(A,e){for(var t={},i=[],r=0;r<A.length;r++){var n=A[r],a=e.base?n[0]+e.base:n[0],I=t[a]||0,C="".concat(a," ").concat(I);t[a]=I+1;var s=o(C),c={css:n[1],media:n[2],sourceMap:n[3]};-1!==s?(g[s].references++,g[s].updater(c)):g.push({identifier:C,updater:u(c,e),references:1}),i.push(C)}return i}function I(A){var e=document.createElement("style"),i=A.attributes||{};if(void 0===i.nonce){var r=t.nc;r&&(i.nonce=r)}if(Object.keys(i).forEach((function(A){e.setAttribute(A,i[A])})),"function"==typeof A.insert)A.insert(e);else{var g=n(A.insert||"head");if(!g)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");g.appendChild(e)}return e}var C,s=(C=[],function(A,e){return C[A]=e,C.filter(Boolean).join("\n")});function c(A,e,t,i){var r=t?"":i.media?"@media ".concat(i.media," {").concat(i.css,"}"):i.css;if(A.styleSheet)A.styleSheet.cssText=s(e,r);else{var n=document.createTextNode(r),g=A.childNodes;g[e]&&A.removeChild(g[e]),g.length?A.insertBefore(n,g[e]):A.appendChild(n)}}function l(A,e,t){var i=t.css,r=t.media,n=t.sourceMap;if(r?A.setAttribute("media",r):A.removeAttribute("media"),n&&btoa&&(i+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(n))))," */")),A.styleSheet)A.styleSheet.cssText=i;else{for(;A.firstChild;)A.removeChild(A.firstChild);A.appendChild(document.createTextNode(i))}}var B=null,Q=0;function u(A,e){var t,i,r;if(e.singleton){var n=Q++;t=B||(B=I(e)),i=c.bind(null,t,n,!1),r=c.bind(null,t,n,!0)}else t=I(e),i=l.bind(null,t,e),r=function(){!function(A){if(null===A.parentNode)return!1;A.parentNode.removeChild(A)}(t)};return i(A),function(e){if(e){if(e.css===A.css&&e.media===A.media&&e.sourceMap===A.sourceMap)return;i(A=e)}else r()}}A.exports=function(A,e){(e=e||{}).singleton||"boolean"==typeof e.singleton||(e.singleton=r());var t=a(A=A||[],e);return function(A){if(A=A||[],"[object Array]"===Object.prototype.toString.call(A)){for(var i=0;i<t.length;i++){var r=o(t[i]);g[r].references--}for(var n=a(A,e),I=0;I<t.length;I++){var C=o(t[I]);0===g[C].references&&(g[C].updater(),g.splice(C,1))}t=n}}}},function(A,e,t){"use strict";A.exports=function(A){var e=[];return e.toString=function(){return this.map((function(e){var t=function(A,e){var t=A[1]||"",i=A[3];if(!i)return t;if(e&&"function"==typeof btoa){var r=(g=i,o=btoa(unescape(encodeURIComponent(JSON.stringify(g)))),a="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(o),"/*# ".concat(a," */")),n=i.sources.map((function(A){return"/*# sourceURL=".concat(i.sourceRoot||"").concat(A," */")}));return[t].concat(n).concat([r]).join("\n")}var g,o,a;return[t].join("\n")}(e,A);return e[2]?"@media ".concat(e[2]," {").concat(t,"}"):t})).join("")},e.i=function(A,t,i){"string"==typeof A&&(A=[[null,A,""]]);var r={};if(i)for(var n=0;n<this.length;n++){var g=this[n][0];null!=g&&(r[g]=!0)}for(var o=0;o<A.length;o++){var a=[].concat(A[o]);i&&r[a[0]]||(t&&(a[2]?a[2]="".concat(t," and ").concat(a[2]):a[2]=t),e.push(a))}},e}},function(A,e,t){"use strict";t.d(e,"a",(function(){return g}));var i=t(127),r=t(7);function n(A){return function e(t){function n(e,n){var g=A((e=Object(i.a)(e)).h,(n=Object(i.a)(n)).h),o=Object(r.a)(e.s,n.s),a=Object(r.a)(e.l,n.l),I=Object(r.a)(e.opacity,n.opacity);return function(A){return e.h=g(A),e.s=o(A),e.l=a(Math.pow(A,t)),e.opacity=I(A),e+""}}return t=+t,n.gamma=e,n}(1)}e.b=n(r.c);var g=n(r.a)},function(A,e,t){"use strict";t.d(e,"b",(function(){return n}));var i=t(5),r=Object(i.a)((function(A){A.setDate(1),A.setHours(0,0,0,0)}),(function(A,e){A.setMonth(A.getMonth()+e)}),(function(A,e){return e.getMonth()-A.getMonth()+12*(e.getFullYear()-A.getFullYear())}),(function(A){return A.getMonth()}));e.a=r;var n=r.range},function(A,e,t){"use strict";t.d(e,"b",(function(){return g}));var i=t(5),r=t(6),n=Object(i.a)((function(A){A.setTime(A-A.getMilliseconds()-A.getSeconds()*r.d-A.getMinutes()*r.c)}),(function(A,e){A.setTime(+A+e*r.b)}),(function(A,e){return(e-A)/r.b}),(function(A){return A.getHours()}));e.a=n;var g=n.range},function(A,e,t){"use strict";t.d(e,"b",(function(){return g}));var i=t(5),r=t(6),n=Object(i.a)((function(A){A.setTime(A-A.getMilliseconds()-A.getSeconds()*r.d)}),(function(A,e){A.setTime(+A+e*r.c)}),(function(A,e){return(e-A)/r.c}),(function(A){return A.getMinutes()}));e.a=n;var g=n.range},function(A,e,t){"use strict";t.d(e,"b",(function(){return n}));var i=t(5),r=Object(i.a)((function(A){A.setUTCDate(1),A.setUTCHours(0,0,0,0)}),(function(A,e){A.setUTCMonth(A.getUTCMonth()+e)}),(function(A,e){return e.getUTCMonth()-A.getUTCMonth()+12*(e.getUTCFullYear()-A.getUTCFullYear())}),(function(A){return A.getUTCMonth()}));e.a=r;var n=r.range},function(A,e,t){"use strict";t.d(e,"b",(function(){return g}));var i=t(5),r=t(6),n=Object(i.a)((function(A){A.setUTCMinutes(0,0,0)}),(function(A,e){A.setTime(+A+e*r.b)}),(function(A,e){return(e-A)/r.b}),(function(A){return A.getUTCHours()}));e.a=n;var g=n.range},function(A,e,t){"use strict";t.d(e,"b",(function(){return g}));var i=t(5),r=t(6),n=Object(i.a)((function(A){A.setUTCSeconds(0,0)}),(function(A,e){A.setTime(+A+e*r.c)}),(function(A,e){return(e-A)/r.c}),(function(A){return A.getUTCMinutes()}));e.a=n;var g=n.range},function(A,e,t){"use strict";t.r(e),t.d(e,"arc",(function(){return D})),t.d(e,"area",(function(){return M})),t.d(e,"line",(function(){return N})),t.d(e,"pie",(function(){return F})),t.d(e,"areaRadial",(function(){return L})),t.d(e,"radialArea",(function(){return L})),t.d(e,"lineRadial",(function(){return U})),t.d(e,"radialLine",(function(){return U})),t.d(e,"pointRadial",(function(){return K})),t.d(e,"linkHorizontal",(function(){return V})),t.d(e,"linkVertical",(function(){return z})),t.d(e,"linkRadial",(function(){return Z})),t.d(e,"symbol",(function(){return BA})),t.d(e,"symbols",(function(){return lA})),t.d(e,"symbolCircle",(function(){return X})),t.d(e,"symbolCross",(function(){return W})),t.d(e,"symbolDiamond",(function(){return eA})),t.d(e,"symbolSquare",(function(){return gA})),t.d(e,"symbolStar",(function(){return nA})),t.d(e,"symbolTriangle",(function(){return aA})),t.d(e,"symbolWye",(function(){return cA})),t.d(e,"curveBasisClosed",(function(){return dA})),t.d(e,"curveBasisOpen",(function(){return yA})),t.d(e,"curveBasis",(function(){return hA})),t.d(e,"curveBundle",(function(){return DA})),t.d(e,"curveCardinalClosed",(function(){return NA})),t.d(e,"curveCardinalOpen",(function(){return RA})),t.d(e,"curveCardinal",(function(){return bA})),t.d(e,"curveCatmullRomClosed",(function(){return YA})),t.d(e,"curveCatmullRomOpen",(function(){return UA})),t.d(e,"curveCatmullRom",(function(){return xA})),t.d(e,"curveLinearClosed",(function(){return KA})),t.d(e,"curveLinear",(function(){return m})),t.d(e,"curveMonotoneX",(function(){return VA})),t.d(e,"curveMonotoneY",(function(){return zA})),t.d(e,"curveNatural",(function(){return WA})),t.d(e,"curveStep",(function(){return Ae})),t.d(e,"curveStepAfter",(function(){return te})),t.d(e,"curveStepBefore",(function(){return ee})),t.d(e,"stack",(function(){return ge})),t.d(e,"stackOffsetExpand",(function(){return oe})),t.d(e,"stackOffsetDiverging",(function(){return ae})),t.d(e,"stackOffsetNone",(function(){return ie})),t.d(e,"stackOffsetSilhouette",(function(){return Ie})),t.d(e,"stackOffsetWiggle",(function(){return Ce})),t.d(e,"stackOrderAppearance",(function(){return se})),t.d(e,"stackOrderAscending",(function(){return le})),t.d(e,"stackOrderDescending",(function(){return Qe})),t.d(e,"stackOrderInsideOut",(function(){return ue})),t.d(e,"stackOrderNone",(function(){return re})),t.d(e,"stackOrderReverse",(function(){return Ee}));var i=t(215),r=function(A){return function(){return A}},n=Math.abs,g=Math.atan2,o=Math.cos,a=Math.max,I=Math.min,C=Math.sin,s=Math.sqrt,c=Math.PI,l=c/2,B=2*c;function Q(A){return A>1?0:A<-1?c:Math.acos(A)}function u(A){return A>=1?l:A<=-1?-l:Math.asin(A)}function E(A){return A.innerRadius}function h(A){return A.outerRadius}function f(A){return A.startAngle}function d(A){return A.endAngle}function p(A){return A&&A.padAngle}function y(A,e,t,i,r,n,g,o){var a=t-A,I=i-e,C=g-r,s=o-n,c=s*a-C*I;if(!(c*c<1e-12))return[A+(c=(C*(e-n)-s*(A-r))/c)*a,e+c*I]}function w(A,e,t,i,r,n,g){var o=A-t,I=e-i,C=(g?n:-n)/s(o*o+I*I),c=C*I,l=-C*o,B=A+c,Q=e+l,u=t+c,E=i+l,h=(B+u)/2,f=(Q+E)/2,d=u-B,p=E-Q,y=d*d+p*p,w=r-n,D=B*E-u*Q,v=(p<0?-1:1)*s(a(0,w*w*y-D*D)),m=(D*p-d*v)/y,b=(-D*d-p*v)/y,k=(D*p+d*v)/y,N=(-D*d+p*v)/y,M=m-h,R=b-f,G=k-h,F=N-f;return M*M+R*R>G*G+F*F&&(m=k,b=N),{cx:m,cy:b,x01:-c,y01:-l,x11:m*(r/w-1),y11:b*(r/w-1)}}var D=function(){var A=E,e=h,t=r(0),a=null,D=f,v=d,m=p,b=null;function k(){var r,E,h=+A.apply(this,arguments),f=+e.apply(this,arguments),d=D.apply(this,arguments)-l,p=v.apply(this,arguments)-l,k=n(p-d),N=p>d;if(b||(b=r=Object(i.a)()),f<h&&(E=f,f=h,h=E),f>1e-12)if(k>B-1e-12)b.moveTo(f*o(d),f*C(d)),b.arc(0,0,f,d,p,!N),h>1e-12&&(b.moveTo(h*o(p),h*C(p)),b.arc(0,0,h,p,d,N));else{var M,R,G=d,F=p,x=d,S=p,Y=k,_=k,U=m.apply(this,arguments)/2,L=U>1e-12&&(a?+a.apply(this,arguments):s(h*h+f*f)),K=I(n(f-h)/2,+t.apply(this,arguments)),J=K,T=K;if(L>1e-12){var H=u(L/h*C(U)),O=u(L/f*C(U));(Y-=2*H)>1e-12?(x+=H*=N?1:-1,S-=H):(Y=0,x=S=(d+p)/2),(_-=2*O)>1e-12?(G+=O*=N?1:-1,F-=O):(_=0,G=F=(d+p)/2)}var q=f*o(G),j=f*C(G),P=h*o(S),V=h*C(S);if(K>1e-12){var z,Z=f*o(F),X=f*C(F),W=h*o(x),$=h*C(x);if(k<c&&(z=y(q,j,W,$,Z,X,P,V))){var AA=q-z[0],eA=j-z[1],tA=Z-z[0],iA=X-z[1],rA=1/C(Q((AA*tA+eA*iA)/(s(AA*AA+eA*eA)*s(tA*tA+iA*iA)))/2),nA=s(z[0]*z[0]+z[1]*z[1]);J=I(K,(h-nA)/(rA-1)),T=I(K,(f-nA)/(rA+1))}}_>1e-12?T>1e-12?(M=w(W,$,q,j,f,T,N),R=w(Z,X,P,V,f,T,N),b.moveTo(M.cx+M.x01,M.cy+M.y01),T<K?b.arc(M.cx,M.cy,T,g(M.y01,M.x01),g(R.y01,R.x01),!N):(b.arc(M.cx,M.cy,T,g(M.y01,M.x01),g(M.y11,M.x11),!N),b.arc(0,0,f,g(M.cy+M.y11,M.cx+M.x11),g(R.cy+R.y11,R.cx+R.x11),!N),b.arc(R.cx,R.cy,T,g(R.y11,R.x11),g(R.y01,R.x01),!N))):(b.moveTo(q,j),b.arc(0,0,f,G,F,!N)):b.moveTo(q,j),h>1e-12&&Y>1e-12?J>1e-12?(M=w(P,V,Z,X,h,-J,N),R=w(q,j,W,$,h,-J,N),b.lineTo(M.cx+M.x01,M.cy+M.y01),J<K?b.arc(M.cx,M.cy,J,g(M.y01,M.x01),g(R.y01,R.x01),!N):(b.arc(M.cx,M.cy,J,g(M.y01,M.x01),g(M.y11,M.x11),!N),b.arc(0,0,h,g(M.cy+M.y11,M.cx+M.x11),g(R.cy+R.y11,R.cx+R.x11),N),b.arc(R.cx,R.cy,J,g(R.y11,R.x11),g(R.y01,R.x01),!N))):b.arc(0,0,h,S,x,N):b.lineTo(P,V)}else b.moveTo(0,0);if(b.closePath(),r)return b=null,r+""||null}return k.centroid=function(){var t=(+A.apply(this,arguments)+ +e.apply(this,arguments))/2,i=(+D.apply(this,arguments)+ +v.apply(this,arguments))/2-c/2;return[o(i)*t,C(i)*t]},k.innerRadius=function(e){return arguments.length?(A="function"==typeof e?e:r(+e),k):A},k.outerRadius=function(A){return arguments.length?(e="function"==typeof A?A:r(+A),k):e},k.cornerRadius=function(A){return arguments.length?(t="function"==typeof A?A:r(+A),k):t},k.padRadius=function(A){return arguments.length?(a=null==A?null:"function"==typeof A?A:r(+A),k):a},k.startAngle=function(A){return arguments.length?(D="function"==typeof A?A:r(+A),k):D},k.endAngle=function(A){return arguments.length?(v="function"==typeof A?A:r(+A),k):v},k.padAngle=function(A){return arguments.length?(m="function"==typeof A?A:r(+A),k):m},k.context=function(A){return arguments.length?(b=null==A?null:A,k):b},k};function v(A){this._context=A}v.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(A,e):this._context.moveTo(A,e);break;case 1:this._point=2;default:this._context.lineTo(A,e)}}};var m=function(A){return new v(A)};function b(A){return A[0]}function k(A){return A[1]}var N=function(){var A=b,e=k,t=r(!0),n=null,g=m,o=null;function a(r){var a,I,C,s=r.length,c=!1;for(null==n&&(o=g(C=Object(i.a)())),a=0;a<=s;++a)!(a<s&&t(I=r[a],a,r))===c&&((c=!c)?o.lineStart():o.lineEnd()),c&&o.point(+A(I,a,r),+e(I,a,r));if(C)return o=null,C+""||null}return a.x=function(e){return arguments.length?(A="function"==typeof e?e:r(+e),a):A},a.y=function(A){return arguments.length?(e="function"==typeof A?A:r(+A),a):e},a.defined=function(A){return arguments.length?(t="function"==typeof A?A:r(!!A),a):t},a.curve=function(A){return arguments.length?(g=A,null!=n&&(o=g(n)),a):g},a.context=function(A){return arguments.length?(null==A?n=o=null:o=g(n=A),a):n},a},M=function(){var A=b,e=null,t=r(0),n=k,g=r(!0),o=null,a=m,I=null;function C(r){var C,s,c,l,B,Q=r.length,u=!1,E=new Array(Q),h=new Array(Q);for(null==o&&(I=a(B=Object(i.a)())),C=0;C<=Q;++C){if(!(C<Q&&g(l=r[C],C,r))===u)if(u=!u)s=C,I.areaStart(),I.lineStart();else{for(I.lineEnd(),I.lineStart(),c=C-1;c>=s;--c)I.point(E[c],h[c]);I.lineEnd(),I.areaEnd()}u&&(E[C]=+A(l,C,r),h[C]=+t(l,C,r),I.point(e?+e(l,C,r):E[C],n?+n(l,C,r):h[C]))}if(B)return I=null,B+""||null}function s(){return N().defined(g).curve(a).context(o)}return C.x=function(t){return arguments.length?(A="function"==typeof t?t:r(+t),e=null,C):A},C.x0=function(e){return arguments.length?(A="function"==typeof e?e:r(+e),C):A},C.x1=function(A){return arguments.length?(e=null==A?null:"function"==typeof A?A:r(+A),C):e},C.y=function(A){return arguments.length?(t="function"==typeof A?A:r(+A),n=null,C):t},C.y0=function(A){return arguments.length?(t="function"==typeof A?A:r(+A),C):t},C.y1=function(A){return arguments.length?(n=null==A?null:"function"==typeof A?A:r(+A),C):n},C.lineX0=C.lineY0=function(){return s().x(A).y(t)},C.lineY1=function(){return s().x(A).y(n)},C.lineX1=function(){return s().x(e).y(t)},C.defined=function(A){return arguments.length?(g="function"==typeof A?A:r(!!A),C):g},C.curve=function(A){return arguments.length?(a=A,null!=o&&(I=a(o)),C):a},C.context=function(A){return arguments.length?(null==A?o=I=null:I=a(o=A),C):o},C},R=function(A,e){return e<A?-1:e>A?1:e>=A?0:NaN},G=function(A){return A},F=function(){var A=G,e=R,t=null,i=r(0),n=r(B),g=r(0);function o(r){var o,a,I,C,s,c=r.length,l=0,Q=new Array(c),u=new Array(c),E=+i.apply(this,arguments),h=Math.min(B,Math.max(-B,n.apply(this,arguments)-E)),f=Math.min(Math.abs(h)/c,g.apply(this,arguments)),d=f*(h<0?-1:1);for(o=0;o<c;++o)(s=u[Q[o]=o]=+A(r[o],o,r))>0&&(l+=s);for(null!=e?Q.sort((function(A,t){return e(u[A],u[t])})):null!=t&&Q.sort((function(A,e){return t(r[A],r[e])})),o=0,I=l?(h-c*d)/l:0;o<c;++o,E=C)a=Q[o],C=E+((s=u[a])>0?s*I:0)+d,u[a]={data:r[a],index:o,value:s,startAngle:E,endAngle:C,padAngle:f};return u}return o.value=function(e){return arguments.length?(A="function"==typeof e?e:r(+e),o):A},o.sortValues=function(A){return arguments.length?(e=A,t=null,o):e},o.sort=function(A){return arguments.length?(t=A,e=null,o):t},o.startAngle=function(A){return arguments.length?(i="function"==typeof A?A:r(+A),o):i},o.endAngle=function(A){return arguments.length?(n="function"==typeof A?A:r(+A),o):n},o.padAngle=function(A){return arguments.length?(g="function"==typeof A?A:r(+A),o):g},o},x=Y(m);function S(A){this._curve=A}function Y(A){function e(e){return new S(A(e))}return e._curve=A,e}function _(A){var e=A.curve;return A.angle=A.x,delete A.x,A.radius=A.y,delete A.y,A.curve=function(A){return arguments.length?e(Y(A)):e()._curve},A}S.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(A,e){this._curve.point(e*Math.sin(A),e*-Math.cos(A))}};var U=function(){return _(N().curve(x))},L=function(){var A=M().curve(x),e=A.curve,t=A.lineX0,i=A.lineX1,r=A.lineY0,n=A.lineY1;return A.angle=A.x,delete A.x,A.startAngle=A.x0,delete A.x0,A.endAngle=A.x1,delete A.x1,A.radius=A.y,delete A.y,A.innerRadius=A.y0,delete A.y0,A.outerRadius=A.y1,delete A.y1,A.lineStartAngle=function(){return _(t())},delete A.lineX0,A.lineEndAngle=function(){return _(i())},delete A.lineX1,A.lineInnerRadius=function(){return _(r())},delete A.lineY0,A.lineOuterRadius=function(){return _(n())},delete A.lineY1,A.curve=function(A){return arguments.length?e(Y(A)):e()._curve},A},K=function(A,e){return[(e=+e)*Math.cos(A-=Math.PI/2),e*Math.sin(A)]},J=Array.prototype.slice;function T(A){return A.source}function H(A){return A.target}function O(A){var e=T,t=H,n=b,g=k,o=null;function a(){var r,a=J.call(arguments),I=e.apply(this,a),C=t.apply(this,a);if(o||(o=r=Object(i.a)()),A(o,+n.apply(this,(a[0]=I,a)),+g.apply(this,a),+n.apply(this,(a[0]=C,a)),+g.apply(this,a)),r)return o=null,r+""||null}return a.source=function(A){return arguments.length?(e=A,a):e},a.target=function(A){return arguments.length?(t=A,a):t},a.x=function(A){return arguments.length?(n="function"==typeof A?A:r(+A),a):n},a.y=function(A){return arguments.length?(g="function"==typeof A?A:r(+A),a):g},a.context=function(A){return arguments.length?(o=null==A?null:A,a):o},a}function q(A,e,t,i,r){A.moveTo(e,t),A.bezierCurveTo(e=(e+i)/2,t,e,r,i,r)}function j(A,e,t,i,r){A.moveTo(e,t),A.bezierCurveTo(e,t=(t+r)/2,i,t,i,r)}function P(A,e,t,i,r){var n=K(e,t),g=K(e,t=(t+r)/2),o=K(i,t),a=K(i,r);A.moveTo(n[0],n[1]),A.bezierCurveTo(g[0],g[1],o[0],o[1],a[0],a[1])}function V(){return O(q)}function z(){return O(j)}function Z(){var A=O(P);return A.angle=A.x,delete A.x,A.radius=A.y,delete A.y,A}var X={draw:function(A,e){var t=Math.sqrt(e/c);A.moveTo(t,0),A.arc(0,0,t,0,B)}},W={draw:function(A,e){var t=Math.sqrt(e/5)/2;A.moveTo(-3*t,-t),A.lineTo(-t,-t),A.lineTo(-t,-3*t),A.lineTo(t,-3*t),A.lineTo(t,-t),A.lineTo(3*t,-t),A.lineTo(3*t,t),A.lineTo(t,t),A.lineTo(t,3*t),A.lineTo(-t,3*t),A.lineTo(-t,t),A.lineTo(-3*t,t),A.closePath()}},$=Math.sqrt(1/3),AA=2*$,eA={draw:function(A,e){var t=Math.sqrt(e/AA),i=t*$;A.moveTo(0,-t),A.lineTo(i,0),A.lineTo(0,t),A.lineTo(-i,0),A.closePath()}},tA=Math.sin(c/10)/Math.sin(7*c/10),iA=Math.sin(B/10)*tA,rA=-Math.cos(B/10)*tA,nA={draw:function(A,e){var t=Math.sqrt(.8908130915292852*e),i=iA*t,r=rA*t;A.moveTo(0,-t),A.lineTo(i,r);for(var n=1;n<5;++n){var g=B*n/5,o=Math.cos(g),a=Math.sin(g);A.lineTo(a*t,-o*t),A.lineTo(o*i-a*r,a*i+o*r)}A.closePath()}},gA={draw:function(A,e){var t=Math.sqrt(e),i=-t/2;A.rect(i,i,t,t)}},oA=Math.sqrt(3),aA={draw:function(A,e){var t=-Math.sqrt(e/(3*oA));A.moveTo(0,2*t),A.lineTo(-oA*t,-t),A.lineTo(oA*t,-t),A.closePath()}},IA=Math.sqrt(3)/2,CA=1/Math.sqrt(12),sA=3*(CA/2+1),cA={draw:function(A,e){var t=Math.sqrt(e/sA),i=t/2,r=t*CA,n=i,g=t*CA+t,o=-n,a=g;A.moveTo(i,r),A.lineTo(n,g),A.lineTo(o,a),A.lineTo(-.5*i-IA*r,IA*i+-.5*r),A.lineTo(-.5*n-IA*g,IA*n+-.5*g),A.lineTo(-.5*o-IA*a,IA*o+-.5*a),A.lineTo(-.5*i+IA*r,-.5*r-IA*i),A.lineTo(-.5*n+IA*g,-.5*g-IA*n),A.lineTo(-.5*o+IA*a,-.5*a-IA*o),A.closePath()}},lA=[X,W,eA,gA,nA,aA,cA],BA=function(){var A=r(X),e=r(64),t=null;function n(){var r;if(t||(t=r=Object(i.a)()),A.apply(this,arguments).draw(t,+e.apply(this,arguments)),r)return t=null,r+""||null}return n.type=function(e){return arguments.length?(A="function"==typeof e?e:r(e),n):A},n.size=function(A){return arguments.length?(e="function"==typeof A?A:r(+A),n):e},n.context=function(A){return arguments.length?(t=null==A?null:A,n):t},n},QA=function(){};function uA(A,e,t){A._context.bezierCurveTo((2*A._x0+A._x1)/3,(2*A._y0+A._y1)/3,(A._x0+2*A._x1)/3,(A._y0+2*A._y1)/3,(A._x0+4*A._x1+e)/6,(A._y0+4*A._y1+t)/6)}function EA(A){this._context=A}EA.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:uA(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(A,e):this._context.moveTo(A,e);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:uA(this,A,e)}this._x0=this._x1,this._x1=A,this._y0=this._y1,this._y1=e}};var hA=function(A){return new EA(A)};function fA(A){this._context=A}fA.prototype={areaStart:QA,areaEnd:QA,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1,this._x2=A,this._y2=e;break;case 1:this._point=2,this._x3=A,this._y3=e;break;case 2:this._point=3,this._x4=A,this._y4=e,this._context.moveTo((this._x0+4*this._x1+A)/6,(this._y0+4*this._y1+e)/6);break;default:uA(this,A,e)}this._x0=this._x1,this._x1=A,this._y0=this._y1,this._y1=e}};var dA=function(A){return new fA(A)};function pA(A){this._context=A}pA.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var t=(this._x0+4*this._x1+A)/6,i=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(t,i):this._context.moveTo(t,i);break;case 3:this._point=4;default:uA(this,A,e)}this._x0=this._x1,this._x1=A,this._y0=this._y1,this._y1=e}};var yA=function(A){return new pA(A)};function wA(A,e){this._basis=new EA(A),this._beta=e}wA.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var A=this._x,e=this._y,t=A.length-1;if(t>0)for(var i,r=A[0],n=e[0],g=A[t]-r,o=e[t]-n,a=-1;++a<=t;)i=a/t,this._basis.point(this._beta*A[a]+(1-this._beta)*(r+i*g),this._beta*e[a]+(1-this._beta)*(n+i*o));this._x=this._y=null,this._basis.lineEnd()},point:function(A,e){this._x.push(+A),this._y.push(+e)}};var DA=function A(e){function t(A){return 1===e?new EA(A):new wA(A,e)}return t.beta=function(e){return A(+e)},t}(.85);function vA(A,e,t){A._context.bezierCurveTo(A._x1+A._k*(A._x2-A._x0),A._y1+A._k*(A._y2-A._y0),A._x2+A._k*(A._x1-e),A._y2+A._k*(A._y1-t),A._x2,A._y2)}function mA(A,e){this._context=A,this._k=(1-e)/6}mA.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:vA(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(A,e):this._context.moveTo(A,e);break;case 1:this._point=2,this._x1=A,this._y1=e;break;case 2:this._point=3;default:vA(this,A,e)}this._x0=this._x1,this._x1=this._x2,this._x2=A,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var bA=function A(e){function t(A){return new mA(A,e)}return t.tension=function(e){return A(+e)},t}(0);function kA(A,e){this._context=A,this._k=(1-e)/6}kA.prototype={areaStart:QA,areaEnd:QA,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1,this._x3=A,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=A,this._y4=e);break;case 2:this._point=3,this._x5=A,this._y5=e;break;default:vA(this,A,e)}this._x0=this._x1,this._x1=this._x2,this._x2=A,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var NA=function A(e){function t(A){return new kA(A,e)}return t.tension=function(e){return A(+e)},t}(0);function MA(A,e){this._context=A,this._k=(1-e)/6}MA.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:vA(this,A,e)}this._x0=this._x1,this._x1=this._x2,this._x2=A,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var RA=function A(e){function t(A){return new MA(A,e)}return t.tension=function(e){return A(+e)},t}(0);function GA(A,e,t){var i=A._x1,r=A._y1,n=A._x2,g=A._y2;if(A._l01_a>1e-12){var o=2*A._l01_2a+3*A._l01_a*A._l12_a+A._l12_2a,a=3*A._l01_a*(A._l01_a+A._l12_a);i=(i*o-A._x0*A._l12_2a+A._x2*A._l01_2a)/a,r=(r*o-A._y0*A._l12_2a+A._y2*A._l01_2a)/a}if(A._l23_a>1e-12){var I=2*A._l23_2a+3*A._l23_a*A._l12_a+A._l12_2a,C=3*A._l23_a*(A._l23_a+A._l12_a);n=(n*I+A._x1*A._l23_2a-e*A._l12_2a)/C,g=(g*I+A._y1*A._l23_2a-t*A._l12_2a)/C}A._context.bezierCurveTo(i,r,n,g,A._x2,A._y2)}function FA(A,e){this._context=A,this._alpha=e}FA.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(A,e){if(A=+A,e=+e,this._point){var t=this._x2-A,i=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(t*t+i*i,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(A,e):this._context.moveTo(A,e);break;case 1:this._point=2;break;case 2:this._point=3;default:GA(this,A,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=A,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var xA=function A(e){function t(A){return e?new FA(A,e):new mA(A,0)}return t.alpha=function(e){return A(+e)},t}(.5);function SA(A,e){this._context=A,this._alpha=e}SA.prototype={areaStart:QA,areaEnd:QA,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(A,e){if(A=+A,e=+e,this._point){var t=this._x2-A,i=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(t*t+i*i,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=A,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=A,this._y4=e);break;case 2:this._point=3,this._x5=A,this._y5=e;break;default:GA(this,A,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=A,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var YA=function A(e){function t(A){return e?new SA(A,e):new kA(A,0)}return t.alpha=function(e){return A(+e)},t}(.5);function _A(A,e){this._context=A,this._alpha=e}_A.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(A,e){if(A=+A,e=+e,this._point){var t=this._x2-A,i=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(t*t+i*i,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:GA(this,A,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=A,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var UA=function A(e){function t(A){return e?new _A(A,e):new MA(A,0)}return t.alpha=function(e){return A(+e)},t}(.5);function LA(A){this._context=A}LA.prototype={areaStart:QA,areaEnd:QA,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(A,e){A=+A,e=+e,this._point?this._context.lineTo(A,e):(this._point=1,this._context.moveTo(A,e))}};var KA=function(A){return new LA(A)};function JA(A){return A<0?-1:1}function TA(A,e,t){var i=A._x1-A._x0,r=e-A._x1,n=(A._y1-A._y0)/(i||r<0&&-0),g=(t-A._y1)/(r||i<0&&-0),o=(n*r+g*i)/(i+r);return(JA(n)+JA(g))*Math.min(Math.abs(n),Math.abs(g),.5*Math.abs(o))||0}function HA(A,e){var t=A._x1-A._x0;return t?(3*(A._y1-A._y0)/t-e)/2:e}function OA(A,e,t){var i=A._x0,r=A._y0,n=A._x1,g=A._y1,o=(n-i)/3;A._context.bezierCurveTo(i+o,r+o*e,n-o,g-o*t,n,g)}function qA(A){this._context=A}function jA(A){this._context=new PA(A)}function PA(A){this._context=A}function VA(A){return new qA(A)}function zA(A){return new jA(A)}function ZA(A){this._context=A}function XA(A){var e,t,i=A.length-1,r=new Array(i),n=new Array(i),g=new Array(i);for(r[0]=0,n[0]=2,g[0]=A[0]+2*A[1],e=1;e<i-1;++e)r[e]=1,n[e]=4,g[e]=4*A[e]+2*A[e+1];for(r[i-1]=2,n[i-1]=7,g[i-1]=8*A[i-1]+A[i],e=1;e<i;++e)t=r[e]/n[e-1],n[e]-=t,g[e]-=t*g[e-1];for(r[i-1]=g[i-1]/n[i-1],e=i-2;e>=0;--e)r[e]=(g[e]-r[e+1])/n[e];for(n[i-1]=(A[i]+r[i-1])/2,e=0;e<i-1;++e)n[e]=2*A[e+1]-r[e+1];return[r,n]}qA.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:OA(this,this._t0,HA(this,this._t0))}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(A,e){var t=NaN;if(e=+e,(A=+A)!==this._x1||e!==this._y1){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(A,e):this._context.moveTo(A,e);break;case 1:this._point=2;break;case 2:this._point=3,OA(this,HA(this,t=TA(this,A,e)),t);break;default:OA(this,this._t0,t=TA(this,A,e))}this._x0=this._x1,this._x1=A,this._y0=this._y1,this._y1=e,this._t0=t}}},(jA.prototype=Object.create(qA.prototype)).point=function(A,e){qA.prototype.point.call(this,e,A)},PA.prototype={moveTo:function(A,e){this._context.moveTo(e,A)},closePath:function(){this._context.closePath()},lineTo:function(A,e){this._context.lineTo(e,A)},bezierCurveTo:function(A,e,t,i,r,n){this._context.bezierCurveTo(e,A,i,t,n,r)}},ZA.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var A=this._x,e=this._y,t=A.length;if(t)if(this._line?this._context.lineTo(A[0],e[0]):this._context.moveTo(A[0],e[0]),2===t)this._context.lineTo(A[1],e[1]);else for(var i=XA(A),r=XA(e),n=0,g=1;g<t;++n,++g)this._context.bezierCurveTo(i[0][n],r[0][n],i[1][n],r[1][n],A[g],e[g]);(this._line||0!==this._line&&1===t)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(A,e){this._x.push(+A),this._y.push(+e)}};var WA=function(A){return new ZA(A)};function $A(A,e){this._context=A,this._t=e}$A.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&2===this._point&&this._context.lineTo(this._x,this._y),(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(A,e):this._context.moveTo(A,e);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,e),this._context.lineTo(A,e);else{var t=this._x*(1-this._t)+A*this._t;this._context.lineTo(t,this._y),this._context.lineTo(t,e)}}this._x=A,this._y=e}};var Ae=function(A){return new $A(A,.5)};function ee(A){return new $A(A,0)}function te(A){return new $A(A,1)}var ie=function(A,e){if((r=A.length)>1)for(var t,i,r,n=1,g=A[e[0]],o=g.length;n<r;++n)for(i=g,g=A[e[n]],t=0;t<o;++t)g[t][1]+=g[t][0]=isNaN(i[t][1])?i[t][0]:i[t][1]},re=function(A){for(var e=A.length,t=new Array(e);--e>=0;)t[e]=e;return t};function ne(A,e){return A[e]}var ge=function(){var A=r([]),e=re,t=ie,i=ne;function n(r){var n,g,o=A.apply(this,arguments),a=r.length,I=o.length,C=new Array(I);for(n=0;n<I;++n){for(var s,c=o[n],l=C[n]=new Array(a),B=0;B<a;++B)l[B]=s=[0,+i(r[B],c,B,r)],s.data=r[B];l.key=c}for(n=0,g=e(C);n<I;++n)C[g[n]].index=n;return t(C,g),C}return n.keys=function(e){return arguments.length?(A="function"==typeof e?e:r(J.call(e)),n):A},n.value=function(A){return arguments.length?(i="function"==typeof A?A:r(+A),n):i},n.order=function(A){return arguments.length?(e=null==A?re:"function"==typeof A?A:r(J.call(A)),n):e},n.offset=function(A){return arguments.length?(t=null==A?ie:A,n):t},n},oe=function(A,e){if((i=A.length)>0){for(var t,i,r,n=0,g=A[0].length;n<g;++n){for(r=t=0;t<i;++t)r+=A[t][n][1]||0;if(r)for(t=0;t<i;++t)A[t][n][1]/=r}ie(A,e)}},ae=function(A,e){if((o=A.length)>0)for(var t,i,r,n,g,o,a=0,I=A[e[0]].length;a<I;++a)for(n=g=0,t=0;t<o;++t)(r=(i=A[e[t]][a])[1]-i[0])>0?(i[0]=n,i[1]=n+=r):r<0?(i[1]=g,i[0]=g+=r):(i[0]=0,i[1]=r)},Ie=function(A,e){if((t=A.length)>0){for(var t,i=0,r=A[e[0]],n=r.length;i<n;++i){for(var g=0,o=0;g<t;++g)o+=A[g][i][1]||0;r[i][1]+=r[i][0]=-o/2}ie(A,e)}},Ce=function(A,e){if((r=A.length)>0&&(i=(t=A[e[0]]).length)>0){for(var t,i,r,n=0,g=1;g<i;++g){for(var o=0,a=0,I=0;o<r;++o){for(var C=A[e[o]],s=C[g][1]||0,c=(s-(C[g-1][1]||0))/2,l=0;l<o;++l){var B=A[e[l]];c+=(B[g][1]||0)-(B[g-1][1]||0)}a+=s,I+=c*s}t[g-1][1]+=t[g-1][0]=n,a&&(n-=I/a)}t[g-1][1]+=t[g-1][0]=n,ie(A,e)}},se=function(A){var e=A.map(ce);return re(A).sort((function(A,t){return e[A]-e[t]}))};function ce(A){for(var e,t=-1,i=0,r=A.length,n=-1/0;++t<r;)(e=+A[t][1])>n&&(n=e,i=t);return i}var le=function(A){var e=A.map(Be);return re(A).sort((function(A,t){return e[A]-e[t]}))};function Be(A){for(var e,t=0,i=-1,r=A.length;++i<r;)(e=+A[i][1])&&(t+=e);return t}var Qe=function(A){return le(A).reverse()},ue=function(A){var e,t,i=A.length,r=A.map(Be),n=se(A),g=0,o=0,a=[],I=[];for(e=0;e<i;++e)t=n[e],g<o?(g+=r[t],a.push(t)):(o+=r[t],I.push(t));return I.reverse().concat(a)},Ee=function(A){return re(A).reverse()}},function(A,e,t){"use strict";function i(A){return+A}function r(A){return A*A}function n(A){return A*(2-A)}function g(A){return((A*=2)<=1?A*A:--A*(2-A)+1)/2}t.d(e,"y",(function(){return i})),t.d(e,"D",(function(){return g})),t.d(e,"E",(function(){return r})),t.d(e,"G",(function(){return n})),t.d(e,"F",(function(){return g})),t.d(e,"m",(function(){return o.b})),t.d(e,"n",(function(){return o.a})),t.d(e,"p",(function(){return o.c})),t.d(e,"o",(function(){return o.b})),t.d(e,"z",(function(){return C})),t.d(e,"A",(function(){return a})),t.d(e,"C",(function(){return I})),t.d(e,"B",(function(){return C})),t.d(e,"H",(function(){return Q})),t.d(e,"I",(function(){return l})),t.d(e,"K",(function(){return B})),t.d(e,"J",(function(){return Q})),t.d(e,"u",(function(){return h})),t.d(e,"v",(function(){return u})),t.d(e,"x",(function(){return E})),t.d(e,"w",(function(){return h})),t.d(e,"i",(function(){return p})),t.d(e,"j",(function(){return f})),t.d(e,"l",(function(){return d})),t.d(e,"k",(function(){return p})),t.d(e,"e",(function(){return D})),t.d(e,"f",(function(){return w})),t.d(e,"h",(function(){return D})),t.d(e,"g",(function(){return v})),t.d(e,"a",(function(){return k})),t.d(e,"b",(function(){return m})),t.d(e,"d",(function(){return b})),t.d(e,"c",(function(){return k})),t.d(e,"q",(function(){return R})),t.d(e,"r",(function(){return M})),t.d(e,"t",(function(){return R})),t.d(e,"s",(function(){return G}));var o=t(88),a=function A(e){function t(A){return Math.pow(A,e)}return e=+e,t.exponent=A,t}(3),I=function A(e){function t(A){return 1-Math.pow(1-A,e)}return e=+e,t.exponent=A,t}(3),C=function A(e){function t(A){return((A*=2)<=1?Math.pow(A,e):2-Math.pow(2-A,e))/2}return e=+e,t.exponent=A,t}(3),s=Math.PI,c=s/2;function l(A){return 1-Math.cos(A*c)}function B(A){return Math.sin(A*c)}function Q(A){return(1-Math.cos(s*A))/2}function u(A){return Math.pow(2,10*A-10)}function E(A){return 1-Math.pow(2,-10*A)}function h(A){return((A*=2)<=1?Math.pow(2,10*A-10):2-Math.pow(2,10-10*A))/2}function f(A){return 1-Math.sqrt(1-A*A)}function d(A){return Math.sqrt(1- --A*A)}function p(A){return((A*=2)<=1?1-Math.sqrt(1-A*A):Math.sqrt(1-(A-=2)*A)+1)/2}var y=7.5625;function w(A){return 1-D(1-A)}function D(A){return(A=+A)<4/11?y*A*A:A<8/11?y*(A-=6/11)*A+3/4:A<10/11?y*(A-=9/11)*A+15/16:y*(A-=21/22)*A+63/64}function v(A){return((A*=2)<=1?1-D(1-A):D(A-1)+1)/2}var m=function A(e){function t(A){return A*A*((e+1)*A-e)}return e=+e,t.overshoot=A,t}(1.70158),b=function A(e){function t(A){return--A*A*((e+1)*A+e)+1}return e=+e,t.overshoot=A,t}(1.70158),k=function A(e){function t(A){return((A*=2)<1?A*A*((e+1)*A-e):(A-=2)*A*((e+1)*A+e)+2)/2}return e=+e,t.overshoot=A,t}(1.70158),N=2*Math.PI,M=function A(e,t){var i=Math.asin(1/(e=Math.max(1,e)))*(t/=N);function r(A){return e*Math.pow(2,10*--A)*Math.sin((i-A)/t)}return r.amplitude=function(e){return A(e,t*N)},r.period=function(t){return A(e,t)},r}(1,.3),R=function A(e,t){var i=Math.asin(1/(e=Math.max(1,e)))*(t/=N);function r(A){return 1-e*Math.pow(2,-10*(A=+A))*Math.sin((A+i)/t)}return r.amplitude=function(e){return A(e,t*N)},r.period=function(t){return A(e,t)},r}(1,.3),G=function A(e,t){var i=Math.asin(1/(e=Math.max(1,e)))*(t/=N);function r(A){return((A=2*A-1)<0?e*Math.pow(2,10*A)*Math.sin((i-A)/t):2-e*Math.pow(2,-10*A)*Math.sin((i+A)/t))/2}return r.amplitude=function(e){return A(e,t*N)},r.period=function(t){return A(e,t)},r}(1,.3)},function(A,e,t){"use strict";function i(A){if(!A.ok)throw new Error(A.status+" "+A.statusText);return A.blob()}t.r(e),t.d(e,"blob",(function(){return r})),t.d(e,"buffer",(function(){return g})),t.d(e,"dsv",(function(){return l})),t.d(e,"csv",(function(){return B})),t.d(e,"tsv",(function(){return Q})),t.d(e,"image",(function(){return u})),t.d(e,"json",(function(){return h})),t.d(e,"text",(function(){return s})),t.d(e,"xml",(function(){return d})),t.d(e,"html",(function(){return p})),t.d(e,"svg",(function(){return y}));var r=function(A,e){return fetch(A,e).then(i)};function n(A){if(!A.ok)throw new Error(A.status+" "+A.statusText);return A.arrayBuffer()}var g=function(A,e){return fetch(A,e).then(n)},o=t(74),a=t(48),I=t(49);function C(A){if(!A.ok)throw new Error(A.status+" "+A.statusText);return A.text()}var s=function(A,e){return fetch(A,e).then(C)};function c(A){return function(e,t,i){return 2===arguments.length&&"function"==typeof t&&(i=t,t=void 0),s(e,t).then((function(e){return A(e,i)}))}}function l(A,e,t,i){3===arguments.length&&"function"==typeof t&&(i=t,t=void 0);var r=Object(o.a)(A);return s(e,t).then((function(A){return r.parse(A,i)}))}var B=c(a.f),Q=c(I.f),u=function(A,e){return new Promise((function(t,i){var r=new Image;for(var n in e)r[n]=e[n];r.onerror=i,r.onload=function(){t(r)},r.src=A}))};function E(A){if(!A.ok)throw new Error(A.status+" "+A.statusText);if(204!==A.status&&205!==A.status)return A.json()}var h=function(A,e){return fetch(A,e).then(E)};function f(A){return function(e,t){return s(e,t).then((function(e){return(new DOMParser).parseFromString(e,A)}))}}var d=f("application/xml"),p=f("text/html"),y=f("image/svg+xml")},function(A,e,t){"use strict";t.r(e),t.d(e,"randomUniform",(function(){return r})),t.d(e,"randomNormal",(function(){return n})),t.d(e,"randomLogNormal",(function(){return g})),t.d(e,"randomBates",(function(){return a})),t.d(e,"randomIrwinHall",(function(){return o})),t.d(e,"randomExponential",(function(){return I}));var i=function(){return Math.random()},r=function A(e){function t(A,t){return A=null==A?0:+A,t=null==t?1:+t,1===arguments.length?(t=A,A=0):t-=A,function(){return e()*t+A}}return t.source=A,t}(i),n=function A(e){function t(A,t){var i,r;return A=null==A?0:+A,t=null==t?1:+t,function(){var n;if(null!=i)n=i,i=null;else do{i=2*e()-1,n=2*e()-1,r=i*i+n*n}while(!r||r>1);return A+t*n*Math.sqrt(-2*Math.log(r)/r)}}return t.source=A,t}(i),g=function A(e){function t(){var A=n.source(e).apply(this,arguments);return function(){return Math.exp(A())}}return t.source=A,t}(i),o=function A(e){function t(A){return function(){for(var t=0,i=0;i<A;++i)t+=e();return t}}return t.source=A,t}(i),a=function A(e){function t(A){var t=o.source(e)(A);return function(){return t()/A}}return t.source=A,t}(i),I=function A(e){function t(A){return function(){return-Math.log(1-e())/A}}return t.source=A,t}(i)},function(A,e,t){"use strict";t.r(e),t.d(e,"brush",(function(){return L})),t.d(e,"brushX",(function(){return _})),t.d(e,"brushY",(function(){return U})),t.d(e,"brushSelection",(function(){return Y}));var i=t(211),r=t(73),n=t(72),g=t(213),o=t(37),a=t(77),I=t(214),C=t(44),s=function(A){return function(){return A}},c=function(A,e,t){this.target=A,this.type=e,this.selection=t};function l(){o.c.stopImmediatePropagation()}var B=function(){o.c.preventDefault(),o.c.stopImmediatePropagation()},Q={name:"drag"},u={name:"space"},E={name:"handle"},h={name:"center"};function f(A){return[+A[0],+A[1]]}function d(A){return[f(A[0]),f(A[1])]}function p(A){return function(e){return Object(g.a)(e,o.c.touches,A)}}var y={name:"x",handles:["w","e"].map(M),input:function(A,e){return null==A?null:[[+A[0],e[0][1]],[+A[1],e[1][1]]]},output:function(A){return A&&[A[0][0],A[1][0]]}},w={name:"y",handles:["n","s"].map(M),input:function(A,e){return null==A?null:[[e[0][0],+A[0]],[e[1][0],+A[1]]]},output:function(A){return A&&[A[0][1],A[1][1]]}},D={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(M),input:function(A){return null==A?null:d(A)},output:function(A){return A}},v={overlay:"crosshair",selection:"move",n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},m={e:"w",w:"e",nw:"ne",ne:"nw",se:"sw",sw:"se"},b={n:"s",s:"n",nw:"sw",ne:"se",se:"ne",sw:"nw"},k={overlay:1,selection:1,n:null,e:1,s:null,w:-1,nw:-1,ne:1,se:1,sw:-1},N={overlay:1,selection:1,n:-1,e:null,s:1,w:null,nw:-1,ne:-1,se:1,sw:1};function M(A){return{type:A}}function R(){return!o.c.ctrlKey&&!o.c.button}function G(){var A=this.ownerSVGElement||this;return A.hasAttribute("viewBox")?[[(A=A.viewBox.baseVal).x,A.y],[A.x+A.width,A.y+A.height]]:[[0,0],[A.width.baseVal.value,A.height.baseVal.value]]}function F(){return navigator.maxTouchPoints||"ontouchstart"in this}function x(A){for(;!A.__brush;)if(!(A=A.parentNode))return;return A.__brush}function S(A){return A[0][0]===A[1][0]||A[0][1]===A[1][1]}function Y(A){var e=A.__brush;return e?e.dim.output(e.selection):null}function _(){return K(y)}function U(){return K(w)}var L=function(){return K(D)};function K(A){var e,t=G,g=R,f=F,D=!0,Y=Object(i.a)("start","brush","end"),_=6;function U(e){var t=e.property("__brush",q).selectAll(".overlay").data([M("overlay")]);t.enter().append("rect").attr("class","overlay").attr("pointer-events","all").attr("cursor",v.overlay).merge(t).each((function(){var A=x(this).extent;Object(a.a)(this).attr("x",A[0][0]).attr("y",A[0][1]).attr("width",A[1][0]-A[0][0]).attr("height",A[1][1]-A[0][1])})),e.selectAll(".selection").data([M("selection")]).enter().append("rect").attr("class","selection").attr("cursor",v.selection).attr("fill","#777").attr("fill-opacity",.3).attr("stroke","#fff").attr("shape-rendering","crispEdges");var i=e.selectAll(".handle").data(A.handles,(function(A){return A.type}));i.exit().remove(),i.enter().append("rect").attr("class",(function(A){return"handle handle--"+A.type})).attr("cursor",(function(A){return v[A.type]})),e.each(L).attr("fill","none").attr("pointer-events","all").on("mousedown.brush",T).filter(f).on("touchstart.brush",T).on("touchmove.brush",H).on("touchend.brush touchcancel.brush",O).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function L(){var A=Object(a.a)(this),e=x(this).selection;e?(A.selectAll(".selection").style("display",null).attr("x",e[0][0]).attr("y",e[0][1]).attr("width",e[1][0]-e[0][0]).attr("height",e[1][1]-e[0][1]),A.selectAll(".handle").style("display",null).attr("x",(function(A){return"e"===A.type[A.type.length-1]?e[1][0]-_/2:e[0][0]-_/2})).attr("y",(function(A){return"s"===A.type[0]?e[1][1]-_/2:e[0][1]-_/2})).attr("width",(function(A){return"n"===A.type||"s"===A.type?e[1][0]-e[0][0]+_:_})).attr("height",(function(A){return"e"===A.type||"w"===A.type?e[1][1]-e[0][1]+_:_}))):A.selectAll(".selection,.handle").style("display","none").attr("x",null).attr("y",null).attr("width",null).attr("height",null)}function K(A,e,t){return!t&&A.__brush.emitter||new J(A,e)}function J(A,e){this.that=A,this.args=e,this.state=A.__brush,this.active=0}function T(){if((!e||o.c.touches)&&g.apply(this,arguments)){var t,i,n,s,c,f,d,M,R,G,F,Y=this,_=o.c.target.__data__.type,U="selection"===(D&&o.c.metaKey?_="overlay":_)?Q:D&&o.c.altKey?h:E,J=A===w?null:k[_],T=A===y?null:N[_],H=x(Y),O=H.extent,q=H.selection,j=O[0][0],P=O[0][1],V=O[1][0],z=O[1][1],Z=0,X=0,W=J&&T&&D&&o.c.shiftKey,$=o.c.touches?p(o.c.changedTouches[0].identifier):I.a,AA=$(Y),eA=AA,tA=K(Y,arguments,!0).beforestart();"overlay"===_?(q&&(R=!0),H.selection=q=[[t=A===w?j:AA[0],n=A===y?P:AA[1]],[c=A===w?V:t,d=A===y?z:n]]):(t=q[0][0],n=q[0][1],c=q[1][0],d=q[1][1]),i=t,s=n,f=c,M=d;var iA=Object(a.a)(Y).attr("pointer-events","none"),rA=iA.selectAll(".overlay").attr("cursor",v[_]);if(o.c.touches)tA.moved=gA,tA.ended=aA;else{var nA=Object(a.a)(o.c.view).on("mousemove.brush",gA,!0).on("mouseup.brush",aA,!0);D&&nA.on("keydown.brush",IA,!0).on("keyup.brush",CA,!0),Object(r.a)(o.c.view)}l(),Object(C.b)(Y),L.call(Y),tA.start()}function gA(){var A=$(Y);!W||G||F||(Math.abs(A[0]-eA[0])>Math.abs(A[1]-eA[1])?F=!0:G=!0),eA=A,R=!0,B(),oA()}function oA(){var A;switch(Z=eA[0]-AA[0],X=eA[1]-AA[1],U){case u:case Q:J&&(Z=Math.max(j-t,Math.min(V-c,Z)),i=t+Z,f=c+Z),T&&(X=Math.max(P-n,Math.min(z-d,X)),s=n+X,M=d+X);break;case E:J<0?(Z=Math.max(j-t,Math.min(V-t,Z)),i=t+Z,f=c):J>0&&(Z=Math.max(j-c,Math.min(V-c,Z)),i=t,f=c+Z),T<0?(X=Math.max(P-n,Math.min(z-n,X)),s=n+X,M=d):T>0&&(X=Math.max(P-d,Math.min(z-d,X)),s=n,M=d+X);break;case h:J&&(i=Math.max(j,Math.min(V,t-Z*J)),f=Math.max(j,Math.min(V,c+Z*J))),T&&(s=Math.max(P,Math.min(z,n-X*T)),M=Math.max(P,Math.min(z,d+X*T)))}f<i&&(J*=-1,A=t,t=c,c=A,A=i,i=f,f=A,_ in m&&rA.attr("cursor",v[_=m[_]])),M<s&&(T*=-1,A=n,n=d,d=A,A=s,s=M,M=A,_ in b&&rA.attr("cursor",v[_=b[_]])),H.selection&&(q=H.selection),G&&(i=q[0][0],f=q[1][0]),F&&(s=q[0][1],M=q[1][1]),q[0][0]===i&&q[0][1]===s&&q[1][0]===f&&q[1][1]===M||(H.selection=[[i,s],[f,M]],L.call(Y),tA.brush())}function aA(){if(l(),o.c.touches){if(o.c.touches.length)return;e&&clearTimeout(e),e=setTimeout((function(){e=null}),500)}else Object(r.b)(o.c.view,R),nA.on("keydown.brush keyup.brush mousemove.brush mouseup.brush",null);iA.attr("pointer-events","all"),rA.attr("cursor",v.overlay),H.selection&&(q=H.selection),S(q)&&(H.selection=null,L.call(Y)),tA.end()}function IA(){switch(o.c.keyCode){case 16:W=J&&T;break;case 18:U===E&&(J&&(c=f-Z*J,t=i+Z*J),T&&(d=M-X*T,n=s+X*T),U=h,oA());break;case 32:U!==E&&U!==h||(J<0?c=f-Z:J>0&&(t=i-Z),T<0?d=M-X:T>0&&(n=s-X),U=u,rA.attr("cursor",v.selection),oA());break;default:return}B()}function CA(){switch(o.c.keyCode){case 16:W&&(G=F=W=!1,oA());break;case 18:U===h&&(J<0?c=f:J>0&&(t=i),T<0?d=M:T>0&&(n=s),U=E,oA());break;case 32:U===u&&(o.c.altKey?(J&&(c=f-Z*J,t=i+Z*J),T&&(d=M-X*T,n=s+X*T),U=h):(J<0?c=f:J>0&&(t=i),T<0?d=M:T>0&&(n=s),U=E),rA.attr("cursor",v[_]),oA());break;default:return}B()}}function H(){K(this,arguments).moved()}function O(){K(this,arguments).ended()}function q(){var e=this.__brush||{selection:null};return e.extent=d(t.apply(this,arguments)),e.dim=A,e}return U.move=function(e,t){e.selection?e.on("start.brush",(function(){K(this,arguments).beforestart().start()})).on("interrupt.brush end.brush",(function(){K(this,arguments).end()})).tween("brush",(function(){var e=this,i=e.__brush,r=K(e,arguments),g=i.selection,o=A.input("function"==typeof t?t.apply(this,arguments):t,i.extent),a=Object(n.a)(g,o);function I(A){i.selection=1===A&&null===o?null:a(A),L.call(e),r.brush()}return null!==g&&null!==o?I:I(1)})):e.each((function(){var e=this,i=arguments,r=e.__brush,n=A.input("function"==typeof t?t.apply(e,i):t,r.extent),g=K(e,i).beforestart();Object(C.b)(e),r.selection=null===n?null:n,L.call(e),g.start().brush().end()}))},U.clear=function(A){U.move(A,null)},J.prototype={beforestart:function(){return 1==++this.active&&(this.state.emitter=this,this.starting=!0),this},start:function(){return this.starting?(this.starting=!1,this.emit("start")):this.emit("brush"),this},brush:function(){return this.emit("brush"),this},end:function(){return 0==--this.active&&(delete this.state.emitter,this.emit("end")),this},emit:function(e){Object(o.a)(new c(U,e,A.output(this.state.selection)),Y.apply,Y,[e,this.that,this.args])}},U.extent=function(A){return arguments.length?(t="function"==typeof A?A:s(d(A)),U):t},U.filter=function(A){return arguments.length?(g="function"==typeof A?A:s(!!A),U):g},U.touchable=function(A){return arguments.length?(f="function"==typeof A?A:s(!!A),U):f},U.handleSize=function(A){return arguments.length?(_=+A,U):_},U.keyModifiers=function(A){return arguments.length?(D=!!A,U):D},U.on=function(){var A=Y.on.apply(Y,arguments);return A===Y?U:A},U}},function(A,e,t){"use strict";t.d(e,"a",(function(){return c})),t.d(e,"b",(function(){return l}));var i,r,n,g,o=t(20),a=180/Math.PI,I={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1},C=function(A,e,t,i,r,n){var g,o,I;return(g=Math.sqrt(A*A+e*e))&&(A/=g,e/=g),(I=A*t+e*i)&&(t-=A*I,i-=e*I),(o=Math.sqrt(t*t+i*i))&&(t/=o,i/=o,I/=o),A*i<e*t&&(A=-A,e=-e,I=-I,g=-g),{translateX:r,translateY:n,rotate:Math.atan2(e,A)*a,skewX:Math.atan(I)*a,scaleX:g,scaleY:o}};function s(A,e,t,i){function r(A){return A.length?A.pop()+" ":""}return function(n,g){var a=[],I=[];return n=A(n),g=A(g),function(A,i,r,n,g,a){if(A!==r||i!==n){var I=g.push("translate(",null,e,null,t);a.push({i:I-4,x:Object(o.a)(A,r)},{i:I-2,x:Object(o.a)(i,n)})}else(r||n)&&g.push("translate("+r+e+n+t)}(n.translateX,n.translateY,g.translateX,g.translateY,a,I),function(A,e,t,n){A!==e?(A-e>180?e+=360:e-A>180&&(A+=360),n.push({i:t.push(r(t)+"rotate(",null,i)-2,x:Object(o.a)(A,e)})):e&&t.push(r(t)+"rotate("+e+i)}(n.rotate,g.rotate,a,I),function(A,e,t,n){A!==e?n.push({i:t.push(r(t)+"skewX(",null,i)-2,x:Object(o.a)(A,e)}):e&&t.push(r(t)+"skewX("+e+i)}(n.skewX,g.skewX,a,I),function(A,e,t,i,n,g){if(A!==t||e!==i){var a=n.push(r(n)+"scale(",null,",",null,")");g.push({i:a-4,x:Object(o.a)(A,t)},{i:a-2,x:Object(o.a)(e,i)})}else 1===t&&1===i||n.push(r(n)+"scale("+t+","+i+")")}(n.scaleX,n.scaleY,g.scaleX,g.scaleY,a,I),n=g=null,function(A){for(var e,t=-1,i=I.length;++t<i;)a[(e=I[t]).i]=e.x(A);return a.join("")}}}var c=s((function(A){return"none"===A?I:(i||(i=document.createElement("DIV"),r=document.documentElement,n=document.defaultView),i.style.transform=A,A=n.getComputedStyle(r.appendChild(i),null).getPropertyValue("transform"),r.removeChild(i),A=A.slice(7,-1).split(","),C(+A[0],+A[1],+A[2],+A[3],+A[4],+A[5]))}),"px, ","px)","deg)"),l=s((function(A){return null==A?I:(g||(g=document.createElementNS("http://www.w3.org/2000/svg","g")),g.setAttribute("transform",A),(A=g.transform.baseVal.consolidate())?(A=A.matrix,C(A.a,A.b,A.c,A.d,A.e,A.f)):I)}),", ",")",")")},function(A,e,t){"use strict";t.d(e,"i",(function(){return i.a})),t.d(e,"g",(function(){return r.f})),t.d(e,"h",(function(){return r.g})),t.d(e,"b",(function(){return r.a})),t.d(e,"c",(function(){return r.b})),t.d(e,"e",(function(){return r.d})),t.d(e,"d",(function(){return r.c})),t.d(e,"f",(function(){return r.e})),t.d(e,"o",(function(){return n.f})),t.d(e,"p",(function(){return n.g})),t.d(e,"j",(function(){return n.a})),t.d(e,"k",(function(){return n.b})),t.d(e,"m",(function(){return n.d})),t.d(e,"l",(function(){return n.c})),t.d(e,"n",(function(){return n.e})),t.d(e,"a",(function(){return g}));var i=t(74),r=t(48),n=t(49);function g(A){for(var e in A){var t,i,r=A[e].trim();if(r)if("true"===r)r=!0;else if("false"===r)r=!1;else if("NaN"===r)r=NaN;else if(isNaN(t=+r)){if(!(i=r.match(/^([-+]\d{2})?\d{4}(-\d{2}(-\d{2})?)?(T\d{2}:\d{2}(:\d{2}(\.\d{3})?)?(Z|[-+]\d{2}:\d{2})?)?$/)))continue;o&&i[4]&&!i[7]&&(r=r.replace(/-/g,"/").replace(/T/," ")),r=new Date(r)}else r=t;else r=null;A[e]=r}return A}var o=new Date("2019-01-01T00:00").getHours()||new Date("2019-07-01T00:00").getHours()},function(A,e,t){"use strict";
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/var i=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable;function g(A){if(null==A)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(A)}A.exports=function(){try{if(!Object.assign)return!1;var A=new String("abc");if(A[5]="de","5"===Object.getOwnPropertyNames(A)[0])return!1;for(var e={},t=0;t<10;t++)e["_"+String.fromCharCode(t)]=t;if("0123456789"!==Object.getOwnPropertyNames(e).map((function(A){return e[A]})).join(""))return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach((function(A){i[A]=A})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},i)).join("")}catch(A){return!1}}()?Object.assign:function(A,e){for(var t,o,a=g(A),I=1;I<arguments.length;I++){for(var C in t=Object(arguments[I]))r.call(t,C)&&(a[C]=t[C]);if(i){o=i(t);for(var s=0;s<o.length;s++)n.call(t,o[s])&&(a[o[s]]=t[o[s]])}}return a}},function(A,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.DeserializeContext=void 0;let i=(()=>{class A{constructor(A,e,t){this.parent=A,this.firstDeserializationOnValue=e,this.reportUnexpectedPropertiesAsError=t,this.namespaces=new Map}hasPrefixes(){return this.namespaces.size>0}withPrefixes(e){const t=new A(this,this.firstDeserializationOnValue,this.reportUnexpectedPropertiesAsError);for(const[A,i]of Object.entries(e))t.namespaces.set(A,i);return t}_withReportUnexpectedPropertiesAsError(e){return this.reportUnexpectedPropertiesAsError===e?this:new A(this,this.firstDeserializationOnValue,e)}withoutReportUnexpectedPropertiesAsError(){return this._withReportUnexpectedPropertiesAsError(!0)}_withFirstDeserializationOnValue(e){return this.firstDeserializationOnValue===e?this:new A(this,e,this.reportUnexpectedPropertiesAsError)}withFirstDeserializationOnValue(){return this._withFirstDeserializationOnValue(!0)}withoutFirstDeserializationOnValue(){return this._withFirstDeserializationOnValue(!1)}lookupNamespace(A){const e=this.namespaces.get(A);return e||(this.parent?this.parent.lookupNamespace(A):void 0)}}return A.default=new A(void 0,!0,!0),A})();e.DeserializeContext=i},function(A,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.sNamespacedName=e.sLazy=e.sMap=e.sArrayOf=e.sIntersect=e.sUnion=e.sIntersectionMany=e.sUnionMany=e.sLiteral=e.sNull=e.sBoolean=e.sNumber=e.sString=e.sAny=void 0;const i=t(129),r=t(80),n=t(18);var g=t(131);function o(){return new i.PrimitiveSerializerImpl("string")}function a(A,e){return new i.UnionSerializerImpl(A,e.processingStrategy)}function I(A){return new i.IntersectionSerializerImpl(A)}Object.defineProperty(e,"sObject",{enumerable:!0,get:function(){return g.sObject}}),Object.defineProperty(e,"sOpenObject",{enumerable:!0,get:function(){return g.sOpenObject}}),Object.defineProperty(e,"sProp",{enumerable:!0,get:function(){return g.sProp}}),Object.defineProperty(e,"sOptionalProp",{enumerable:!0,get:function(){return g.sOptionalProp}}),e.sAny=function(){return new i.AnySerializerImpl},e.sString=o,e.sNumber=function(){return new i.PrimitiveSerializerImpl("number")},e.sBoolean=function(){return new i.PrimitiveSerializerImpl("boolean")},e.sNull=function(){return new i.LiteralSerializerImpl(null)},e.sLiteral=function(A){return new i.LiteralSerializerImpl(A)},e.sUnionMany=a,e.sIntersectionMany=I,e.sUnion=function(A,e={}){return a(A,{processingStrategy:e.inclusive?"first":"firstExclusive"}).refine({canSerialize:e=>A.some(A=>A.canSerialize(e)),fromIntermediate:A=>n.DeserializeResult.fromValue(A[0]),toIntermediate:A=>[A]})},e.sIntersect=function(A){return I(A).refine({canSerialize:A=>Array.isArray(A),fromIntermediate:A=>n.DeserializeResult.fromValue(Object.assign({},...A)),toIntermediate:A=>[A]})},e.sArrayOf=function(A){return new i.ArraySerializerImpl(A)},e.sMap=function(A){return new i.MapSerializerImpl(A)},e.sLazy=function(A){return new i.LazySerializerImpl(A)},e.sNamespacedName=function(){return o().refine({canSerialize:A=>A instanceof r.NamespacedName,fromIntermediate:(A,e)=>{const t=/(.*)#(.*)/.exec(A);if(!t)return n.DeserializeResult.fromError({message:'Namespaced name must match the regex "(.*)#(.*)".'});const i=t[1],r=t[2],g=e.lookupNamespace(i);return g?n.DeserializeResult.fromValue(g(r)):n.DeserializeResult.fromError({message:`Prefix "${i}" is not defined.`})},toIntermediate:(A,e)=>`${e.getPrefixForNamespace(r.namespace(A.namespace))}#${A.name}`})}},function(A,e,t){"use strict";var i=this&&this.__decorate||function(A,e,t,i){var r,n=arguments.length,g=n<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,t):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(A,e,t,i);else for(var o=A.length-1;o>=0;o--)(r=A[o])&&(g=(n<3?r(g):n>3?r(e,t,g):r(e,t))||g);return n>3&&g&&Object.defineProperty(e,t,g),g};Object.defineProperty(e,"__esModule",{value:!0}),e.Loadable=void 0;const r=t(4);class n{constructor(A){this._load=A,this.operation=void 0}load(){return this.operation||(this.operation=(async()=>{const A=await this._load();r.runInAction(()=>{this.result=A})})()),this.operation}}i([r.observable.ref],n.prototype,"result",void 0),e.Loadable=n},function(A,e,t){"use strict";(function(A){
/*!
* The buffer module from node.js, for the browser.
*
* @author Feross Aboukhadijeh <http://feross.org>
* @license MIT
*/
var i=t(260),r=t(261),n=t(262);function g(){return a.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function o(A,e){if(g()<e)throw new RangeError("Invalid typed array length");return a.TYPED_ARRAY_SUPPORT?(A=new Uint8Array(e)).__proto__=a.prototype:(null===A&&(A=new a(e)),A.length=e),A}function a(A,e,t){if(!(a.TYPED_ARRAY_SUPPORT||this instanceof a))return new a(A,e,t);if("number"==typeof A){if("string"==typeof e)throw new Error("If encoding is specified then the first argument must be a string");return s(this,A)}return I(this,A,e,t)}function I(A,e,t,i){if("number"==typeof e)throw new TypeError('"value" argument must not be a number');return"undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer?function(A,e,t,i){if(e.byteLength,t<0||e.byteLength<t)throw new RangeError("'offset' is out of bounds");if(e.byteLength<t+(i||0))throw new RangeError("'length' is out of bounds");e=void 0===t&&void 0===i?new Uint8Array(e):void 0===i?new Uint8Array(e,t):new Uint8Array(e,t,i);a.TYPED_ARRAY_SUPPORT?(A=e).__proto__=a.prototype:A=c(A,e);return A}(A,e,t,i):"string"==typeof e?function(A,e,t){"string"==typeof t&&""!==t||(t="utf8");if(!a.isEncoding(t))throw new TypeError('"encoding" must be a valid string encoding');var i=0|B(e,t),r=(A=o(A,i)).write(e,t);r!==i&&(A=A.slice(0,r));return A}(A,e,t):function(A,e){if(a.isBuffer(e)){var t=0|l(e.length);return 0===(A=o(A,t)).length||e.copy(A,0,0,t),A}if(e){if("undefined"!=typeof ArrayBuffer&&e.buffer instanceof ArrayBuffer||"length"in e)return"number"!=typeof e.length||(i=e.length)!=i?o(A,0):c(A,e);if("Buffer"===e.type&&n(e.data))return c(A,e.data)}var i;throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(A,e)}function C(A){if("number"!=typeof A)throw new TypeError('"size" argument must be a number');if(A<0)throw new RangeError('"size" argument must not be negative')}function s(A,e){if(C(e),A=o(A,e<0?0:0|l(e)),!a.TYPED_ARRAY_SUPPORT)for(var t=0;t<e;++t)A[t]=0;return A}function c(A,e){var t=e.length<0?0:0|l(e.length);A=o(A,t);for(var i=0;i<t;i+=1)A[i]=255&e[i];return A}function l(A){if(A>=g())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+g().toString(16)+" bytes");return 0|A}function B(A,e){if(a.isBuffer(A))return A.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(A)||A instanceof ArrayBuffer))return A.byteLength;"string"!=typeof A&&(A=""+A);var t=A.length;if(0===t)return 0;for(var i=!1;;)switch(e){case"ascii":case"latin1":case"binary":return t;case"utf8":case"utf-8":case void 0:return K(A).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*t;case"hex":return t>>>1;case"base64":return J(A).length;default:if(i)return K(A).length;e=(""+e).toLowerCase(),i=!0}}function Q(A,e,t){var i=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===t||t>this.length)&&(t=this.length),t<=0)return"";if((t>>>=0)<=(e>>>=0))return"";for(A||(A="utf8");;)switch(A){case"hex":return N(this,e,t);case"utf8":case"utf-8":return m(this,e,t);case"ascii":return b(this,e,t);case"latin1":case"binary":return k(this,e,t);case"base64":return v(this,e,t);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return M(this,e,t);default:if(i)throw new TypeError("Unknown encoding: "+A);A=(A+"").toLowerCase(),i=!0}}function u(A,e,t){var i=A[e];A[e]=A[t],A[t]=i}function E(A,e,t,i,r){if(0===A.length)return-1;if("string"==typeof t?(i=t,t=0):t>2147483647?t=2147483647:t<-2147483648&&(t=-2147483648),t=+t,isNaN(t)&&(t=r?0:A.length-1),t<0&&(t=A.length+t),t>=A.length){if(r)return-1;t=A.length-1}else if(t<0){if(!r)return-1;t=0}if("string"==typeof e&&(e=a.from(e,i)),a.isBuffer(e))return 0===e.length?-1:h(A,e,t,i,r);if("number"==typeof e)return e&=255,a.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?r?Uint8Array.prototype.indexOf.call(A,e,t):Uint8Array.prototype.lastIndexOf.call(A,e,t):h(A,[e],t,i,r);throw new TypeError("val must be string, number or Buffer")}function h(A,e,t,i,r){var n,g=1,o=A.length,a=e.length;if(void 0!==i&&("ucs2"===(i=String(i).toLowerCase())||"ucs-2"===i||"utf16le"===i||"utf-16le"===i)){if(A.length<2||e.length<2)return-1;g=2,o/=2,a/=2,t/=2}function I(A,e){return 1===g?A[e]:A.readUInt16BE(e*g)}if(r){var C=-1;for(n=t;n<o;n++)if(I(A,n)===I(e,-1===C?0:n-C)){if(-1===C&&(C=n),n-C+1===a)return C*g}else-1!==C&&(n-=n-C),C=-1}else for(t+a>o&&(t=o-a),n=t;n>=0;n--){for(var s=!0,c=0;c<a;c++)if(I(A,n+c)!==I(e,c)){s=!1;break}if(s)return n}return-1}function f(A,e,t,i){t=Number(t)||0;var r=A.length-t;i?(i=Number(i))>r&&(i=r):i=r;var n=e.length;if(n%2!=0)throw new TypeError("Invalid hex string");i>n/2&&(i=n/2);for(var g=0;g<i;++g){var o=parseInt(e.substr(2*g,2),16);if(isNaN(o))return g;A[t+g]=o}return g}function d(A,e,t,i){return T(K(e,A.length-t),A,t,i)}function p(A,e,t,i){return T(function(A){for(var e=[],t=0;t<A.length;++t)e.push(255&A.charCodeAt(t));return e}(e),A,t,i)}function y(A,e,t,i){return p(A,e,t,i)}function w(A,e,t,i){return T(J(e),A,t,i)}function D(A,e,t,i){return T(function(A,e){for(var t,i,r,n=[],g=0;g<A.length&&!((e-=2)<0);++g)t=A.charCodeAt(g),i=t>>8,r=t%256,n.push(r),n.push(i);return n}(e,A.length-t),A,t,i)}function v(A,e,t){return 0===e&&t===A.length?i.fromByteArray(A):i.fromByteArray(A.slice(e,t))}function m(A,e,t){t=Math.min(A.length,t);for(var i=[],r=e;r<t;){var n,g,o,a,I=A[r],C=null,s=I>239?4:I>223?3:I>191?2:1;if(r+s<=t)switch(s){case 1:I<128&&(C=I);break;case 2:128==(192&(n=A[r+1]))&&(a=(31&I)<<6|63&n)>127&&(C=a);break;case 3:n=A[r+1],g=A[r+2],128==(192&n)&&128==(192&g)&&(a=(15&I)<<12|(63&n)<<6|63&g)>2047&&(a<55296||a>57343)&&(C=a);break;case 4:n=A[r+1],g=A[r+2],o=A[r+3],128==(192&n)&&128==(192&g)&&128==(192&o)&&(a=(15&I)<<18|(63&n)<<12|(63&g)<<6|63&o)>65535&&a<1114112&&(C=a)}null===C?(C=65533,s=1):C>65535&&(C-=65536,i.push(C>>>10&1023|55296),C=56320|1023&C),i.push(C),r+=s}return function(A){var e=A.length;if(e<=4096)return String.fromCharCode.apply(String,A);var t="",i=0;for(;i<e;)t+=String.fromCharCode.apply(String,A.slice(i,i+=4096));return t}(i)}e.Buffer=a,e.SlowBuffer=function(A){+A!=A&&(A=0);return a.alloc(+A)},e.INSPECT_MAX_BYTES=50,a.TYPED_ARRAY_SUPPORT=void 0!==A.TYPED_ARRAY_SUPPORT?A.TYPED_ARRAY_SUPPORT:function(){try{var A=new Uint8Array(1);return A.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===A.foo()&&"function"==typeof A.subarray&&0===A.subarray(1,1).byteLength}catch(A){return!1}}(),e.kMaxLength=g(),a.poolSize=8192,a._augment=function(A){return A.__proto__=a.prototype,A},a.from=function(A,e,t){return I(null,A,e,t)},a.TYPED_ARRAY_SUPPORT&&(a.prototype.__proto__=Uint8Array.prototype,a.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&a[Symbol.species]===a&&Object.defineProperty(a,Symbol.species,{value:null,configurable:!0})),a.alloc=function(A,e,t){return function(A,e,t,i){return C(e),e<=0?o(A,e):void 0!==t?"string"==typeof i?o(A,e).fill(t,i):o(A,e).fill(t):o(A,e)}(null,A,e,t)},a.allocUnsafe=function(A){return s(null,A)},a.allocUnsafeSlow=function(A){return s(null,A)},a.isBuffer=function(A){return!(null==A||!A._isBuffer)},a.compare=function(A,e){if(!a.isBuffer(A)||!a.isBuffer(e))throw new TypeError("Arguments must be Buffers");if(A===e)return 0;for(var t=A.length,i=e.length,r=0,n=Math.min(t,i);r<n;++r)if(A[r]!==e[r]){t=A[r],i=e[r];break}return t<i?-1:i<t?1:0},a.isEncoding=function(A){switch(String(A).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},a.concat=function(A,e){if(!n(A))throw new TypeError('"list" argument must be an Array of Buffers');if(0===A.length)return a.alloc(0);var t;if(void 0===e)for(e=0,t=0;t<A.length;++t)e+=A[t].length;var i=a.allocUnsafe(e),r=0;for(t=0;t<A.length;++t){var g=A[t];if(!a.isBuffer(g))throw new TypeError('"list" argument must be an Array of Buffers');g.copy(i,r),r+=g.length}return i},a.byteLength=B,a.prototype._isBuffer=!0,a.prototype.swap16=function(){var A=this.length;if(A%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var e=0;e<A;e+=2)u(this,e,e+1);return this},a.prototype.swap32=function(){var A=this.length;if(A%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var e=0;e<A;e+=4)u(this,e,e+3),u(this,e+1,e+2);return this},a.prototype.swap64=function(){var A=this.length;if(A%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var e=0;e<A;e+=8)u(this,e,e+7),u(this,e+1,e+6),u(this,e+2,e+5),u(this,e+3,e+4);return this},a.prototype.toString=function(){var A=0|this.length;return 0===A?"":0===arguments.length?m(this,0,A):Q.apply(this,arguments)},a.prototype.equals=function(A){if(!a.isBuffer(A))throw new TypeError("Argument must be a Buffer");return this===A||0===a.compare(this,A)},a.prototype.inspect=function(){var A="",t=e.INSPECT_MAX_BYTES;return this.length>0&&(A=this.toString("hex",0,t).match(/.{2}/g).join(" "),this.length>t&&(A+=" ... ")),"<Buffer "+A+">"},a.prototype.compare=function(A,e,t,i,r){if(!a.isBuffer(A))throw new TypeError("Argument must be a Buffer");if(void 0===e&&(e=0),void 0===t&&(t=A?A.length:0),void 0===i&&(i=0),void 0===r&&(r=this.length),e<0||t>A.length||i<0||r>this.length)throw new RangeError("out of range index");if(i>=r&&e>=t)return 0;if(i>=r)return-1;if(e>=t)return 1;if(this===A)return 0;for(var n=(r>>>=0)-(i>>>=0),g=(t>>>=0)-(e>>>=0),o=Math.min(n,g),I=this.slice(i,r),C=A.slice(e,t),s=0;s<o;++s)if(I[s]!==C[s]){n=I[s],g=C[s];break}return n<g?-1:g<n?1:0},a.prototype.includes=function(A,e,t){return-1!==this.indexOf(A,e,t)},a.prototype.indexOf=function(A,e,t){return E(this,A,e,t,!0)},a.prototype.lastIndexOf=function(A,e,t){return E(this,A,e,t,!1)},a.prototype.write=function(A,e,t,i){if(void 0===e)i="utf8",t=this.length,e=0;else if(void 0===t&&"string"==typeof e)i=e,t=this.length,e=0;else{if(!isFinite(e))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");e|=0,isFinite(t)?(t|=0,void 0===i&&(i="utf8")):(i=t,t=void 0)}var r=this.length-e;if((void 0===t||t>r)&&(t=r),A.length>0&&(t<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");for(var n=!1;;)switch(i){case"hex":return f(this,A,e,t);case"utf8":case"utf-8":return d(this,A,e,t);case"ascii":return p(this,A,e,t);case"latin1":case"binary":return y(this,A,e,t);case"base64":return w(this,A,e,t);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return D(this,A,e,t);default:if(n)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),n=!0}},a.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function b(A,e,t){var i="";t=Math.min(A.length,t);for(var r=e;r<t;++r)i+=String.fromCharCode(127&A[r]);return i}function k(A,e,t){var i="";t=Math.min(A.length,t);for(var r=e;r<t;++r)i+=String.fromCharCode(A[r]);return i}function N(A,e,t){var i=A.length;(!e||e<0)&&(e=0),(!t||t<0||t>i)&&(t=i);for(var r="",n=e;n<t;++n)r+=L(A[n]);return r}function M(A,e,t){for(var i=A.slice(e,t),r="",n=0;n<i.length;n+=2)r+=String.fromCharCode(i[n]+256*i[n+1]);return r}function R(A,e,t){if(A%1!=0||A<0)throw new RangeError("offset is not uint");if(A+e>t)throw new RangeError("Trying to access beyond buffer length")}function G(A,e,t,i,r,n){if(!a.isBuffer(A))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>r||e<n)throw new RangeError('"value" argument is out of bounds');if(t+i>A.length)throw new RangeError("Index out of range")}function F(A,e,t,i){e<0&&(e=65535+e+1);for(var r=0,n=Math.min(A.length-t,2);r<n;++r)A[t+r]=(e&255<<8*(i?r:1-r))>>>8*(i?r:1-r)}function x(A,e,t,i){e<0&&(e=4294967295+e+1);for(var r=0,n=Math.min(A.length-t,4);r<n;++r)A[t+r]=e>>>8*(i?r:3-r)&255}function S(A,e,t,i,r,n){if(t+i>A.length)throw new RangeError("Index out of range");if(t<0)throw new RangeError("Index out of range")}function Y(A,e,t,i,n){return n||S(A,0,t,4),r.write(A,e,t,i,23,4),t+4}function _(A,e,t,i,n){return n||S(A,0,t,8),r.write(A,e,t,i,52,8),t+8}a.prototype.slice=function(A,e){var t,i=this.length;if((A=~~A)<0?(A+=i)<0&&(A=0):A>i&&(A=i),(e=void 0===e?i:~~e)<0?(e+=i)<0&&(e=0):e>i&&(e=i),e<A&&(e=A),a.TYPED_ARRAY_SUPPORT)(t=this.subarray(A,e)).__proto__=a.prototype;else{var r=e-A;t=new a(r,void 0);for(var n=0;n<r;++n)t[n]=this[n+A]}return t},a.prototype.readUIntLE=function(A,e,t){A|=0,e|=0,t||R(A,e,this.length);for(var i=this[A],r=1,n=0;++n<e&&(r*=256);)i+=this[A+n]*r;return i},a.prototype.readUIntBE=function(A,e,t){A|=0,e|=0,t||R(A,e,this.length);for(var i=this[A+--e],r=1;e>0&&(r*=256);)i+=this[A+--e]*r;return i},a.prototype.readUInt8=function(A,e){return e||R(A,1,this.length),this[A]},a.prototype.readUInt16LE=function(A,e){return e||R(A,2,this.length),this[A]|this[A+1]<<8},a.prototype.readUInt16BE=function(A,e){return e||R(A,2,this.length),this[A]<<8|this[A+1]},a.prototype.readUInt32LE=function(A,e){return e||R(A,4,this.length),(this[A]|this[A+1]<<8|this[A+2]<<16)+16777216*this[A+3]},a.prototype.readUInt32BE=function(A,e){return e||R(A,4,this.length),16777216*this[A]+(this[A+1]<<16|this[A+2]<<8|this[A+3])},a.prototype.readIntLE=function(A,e,t){A|=0,e|=0,t||R(A,e,this.length);for(var i=this[A],r=1,n=0;++n<e&&(r*=256);)i+=this[A+n]*r;return i>=(r*=128)&&(i-=Math.pow(2,8*e)),i},a.prototype.readIntBE=function(A,e,t){A|=0,e|=0,t||R(A,e,this.length);for(var i=e,r=1,n=this[A+--i];i>0&&(r*=256);)n+=this[A+--i]*r;return n>=(r*=128)&&(n-=Math.pow(2,8*e)),n},a.prototype.readInt8=function(A,e){return e||R(A,1,this.length),128&this[A]?-1*(255-this[A]+1):this[A]},a.prototype.readInt16LE=function(A,e){e||R(A,2,this.length);var t=this[A]|this[A+1]<<8;return 32768&t?4294901760|t:t},a.prototype.readInt16BE=function(A,e){e||R(A,2,this.length);var t=this[A+1]|this[A]<<8;return 32768&t?4294901760|t:t},a.prototype.readInt32LE=function(A,e){return e||R(A,4,this.length),this[A]|this[A+1]<<8|this[A+2]<<16|this[A+3]<<24},a.prototype.readInt32BE=function(A,e){return e||R(A,4,this.length),this[A]<<24|this[A+1]<<16|this[A+2]<<8|this[A+3]},a.prototype.readFloatLE=function(A,e){return e||R(A,4,this.length),r.read(this,A,!0,23,4)},a.prototype.readFloatBE=function(A,e){return e||R(A,4,this.length),r.read(this,A,!1,23,4)},a.prototype.readDoubleLE=function(A,e){return e||R(A,8,this.length),r.read(this,A,!0,52,8)},a.prototype.readDoubleBE=function(A,e){return e||R(A,8,this.length),r.read(this,A,!1,52,8)},a.prototype.writeUIntLE=function(A,e,t,i){(A=+A,e|=0,t|=0,i)||G(this,A,e,t,Math.pow(2,8*t)-1,0);var r=1,n=0;for(this[e]=255&A;++n<t&&(r*=256);)this[e+n]=A/r&255;return e+t},a.prototype.writeUIntBE=function(A,e,t,i){(A=+A,e|=0,t|=0,i)||G(this,A,e,t,Math.pow(2,8*t)-1,0);var r=t-1,n=1;for(this[e+r]=255&A;--r>=0&&(n*=256);)this[e+r]=A/n&255;return e+t},a.prototype.writeUInt8=function(A,e,t){return A=+A,e|=0,t||G(this,A,e,1,255,0),a.TYPED_ARRAY_SUPPORT||(A=Math.floor(A)),this[e]=255&A,e+1},a.prototype.writeUInt16LE=function(A,e,t){return A=+A,e|=0,t||G(this,A,e,2,65535,0),a.TYPED_ARRAY_SUPPORT?(this[e]=255&A,this[e+1]=A>>>8):F(this,A,e,!0),e+2},a.prototype.writeUInt16BE=function(A,e,t){return A=+A,e|=0,t||G(this,A,e,2,65535,0),a.TYPED_ARRAY_SUPPORT?(this[e]=A>>>8,this[e+1]=255&A):F(this,A,e,!1),e+2},a.prototype.writeUInt32LE=function(A,e,t){return A=+A,e|=0,t||G(this,A,e,4,4294967295,0),a.TYPED_ARRAY_SUPPORT?(this[e+3]=A>>>24,this[e+2]=A>>>16,this[e+1]=A>>>8,this[e]=255&A):x(this,A,e,!0),e+4},a.prototype.writeUInt32BE=function(A,e,t){return A=+A,e|=0,t||G(this,A,e,4,4294967295,0),a.TYPED_ARRAY_SUPPORT?(this[e]=A>>>24,this[e+1]=A>>>16,this[e+2]=A>>>8,this[e+3]=255&A):x(this,A,e,!1),e+4},a.prototype.writeIntLE=function(A,e,t,i){if(A=+A,e|=0,!i){var r=Math.pow(2,8*t-1);G(this,A,e,t,r-1,-r)}var n=0,g=1,o=0;for(this[e]=255&A;++n<t&&(g*=256);)A<0&&0===o&&0!==this[e+n-1]&&(o=1),this[e+n]=(A/g>>0)-o&255;return e+t},a.prototype.writeIntBE=function(A,e,t,i){if(A=+A,e|=0,!i){var r=Math.pow(2,8*t-1);G(this,A,e,t,r-1,-r)}var n=t-1,g=1,o=0;for(this[e+n]=255&A;--n>=0&&(g*=256);)A<0&&0===o&&0!==this[e+n+1]&&(o=1),this[e+n]=(A/g>>0)-o&255;return e+t},a.prototype.writeInt8=function(A,e,t){return A=+A,e|=0,t||G(this,A,e,1,127,-128),a.TYPED_ARRAY_SUPPORT||(A=Math.floor(A)),A<0&&(A=255+A+1),this[e]=255&A,e+1},a.prototype.writeInt16LE=function(A,e,t){return A=+A,e|=0,t||G(this,A,e,2,32767,-32768),a.TYPED_ARRAY_SUPPORT?(this[e]=255&A,this[e+1]=A>>>8):F(this,A,e,!0),e+2},a.prototype.writeInt16BE=function(A,e,t){return A=+A,e|=0,t||G(this,A,e,2,32767,-32768),a.TYPED_ARRAY_SUPPORT?(this[e]=A>>>8,this[e+1]=255&A):F(this,A,e,!1),e+2},a.prototype.writeInt32LE=function(A,e,t){return A=+A,e|=0,t||G(this,A,e,4,2147483647,-2147483648),a.TYPED_ARRAY_SUPPORT?(this[e]=255&A,this[e+1]=A>>>8,this[e+2]=A>>>16,this[e+3]=A>>>24):x(this,A,e,!0),e+4},a.prototype.writeInt32BE=function(A,e,t){return A=+A,e|=0,t||G(this,A,e,4,2147483647,-2147483648),A<0&&(A=4294967295+A+1),a.TYPED_ARRAY_SUPPORT?(this[e]=A>>>24,this[e+1]=A>>>16,this[e+2]=A>>>8,this[e+3]=255&A):x(this,A,e,!1),e+4},a.prototype.writeFloatLE=function(A,e,t){return Y(this,A,e,!0,t)},a.prototype.writeFloatBE=function(A,e,t){return Y(this,A,e,!1,t)},a.prototype.writeDoubleLE=function(A,e,t){return _(this,A,e,!0,t)},a.prototype.writeDoubleBE=function(A,e,t){return _(this,A,e,!1,t)},a.prototype.copy=function(A,e,t,i){if(t||(t=0),i||0===i||(i=this.length),e>=A.length&&(e=A.length),e||(e=0),i>0&&i<t&&(i=t),i===t)return 0;if(0===A.length||0===this.length)return 0;if(e<0)throw new RangeError("targetStart out of bounds");if(t<0||t>=this.length)throw new RangeError("sourceStart out of bounds");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),A.length-e<i-t&&(i=A.length-e+t);var r,n=i-t;if(this===A&&t<e&&e<i)for(r=n-1;r>=0;--r)A[r+e]=this[r+t];else if(n<1e3||!a.TYPED_ARRAY_SUPPORT)for(r=0;r<n;++r)A[r+e]=this[r+t];else Uint8Array.prototype.set.call(A,this.subarray(t,t+n),e);return n},a.prototype.fill=function(A,e,t,i){if("string"==typeof A){if("string"==typeof e?(i=e,e=0,t=this.length):"string"==typeof t&&(i=t,t=this.length),1===A.length){var r=A.charCodeAt(0);r<256&&(A=r)}if(void 0!==i&&"string"!=typeof i)throw new TypeError("encoding must be a string");if("string"==typeof i&&!a.isEncoding(i))throw new TypeError("Unknown encoding: "+i)}else"number"==typeof A&&(A&=255);if(e<0||this.length<e||this.length<t)throw new RangeError("Out of range index");if(t<=e)return this;var n;if(e>>>=0,t=void 0===t?this.length:t>>>0,A||(A=0),"number"==typeof A)for(n=e;n<t;++n)this[n]=A;else{var g=a.isBuffer(A)?A:K(new a(A,i).toString()),o=g.length;for(n=0;n<t-e;++n)this[n+e]=g[n%o]}return this};var U=/[^+\/0-9A-Za-z-_]/g;function L(A){return A<16?"0"+A.toString(16):A.toString(16)}function K(A,e){var t;e=e||1/0;for(var i=A.length,r=null,n=[],g=0;g<i;++g){if((t=A.charCodeAt(g))>55295&&t<57344){if(!r){if(t>56319){(e-=3)>-1&&n.push(239,191,189);continue}if(g+1===i){(e-=3)>-1&&n.push(239,191,189);continue}r=t;continue}if(t<56320){(e-=3)>-1&&n.push(239,191,189),r=t;continue}t=65536+(r-55296<<10|t-56320)}else r&&(e-=3)>-1&&n.push(239,191,189);if(r=null,t<128){if((e-=1)<0)break;n.push(t)}else if(t<2048){if((e-=2)<0)break;n.push(t>>6|192,63&t|128)}else if(t<65536){if((e-=3)<0)break;n.push(t>>12|224,t>>6&63|128,63&t|128)}else{if(!(t<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;n.push(t>>18|240,t>>12&63|128,t>>6&63|128,63&t|128)}}return n}function J(A){return i.toByteArray(function(A){if((A=function(A){return A.trim?A.trim():A.replace(/^\s+|\s+$/g,"")}(A).replace(U,"")).length<2)return"";for(;A.length%4!=0;)A+="=";return A}(A))}function T(A,e,t,i){for(var r=0;r<i&&!(r+t>=e.length||r>=A.length);++r)e[r+t]=A[r];return r}}).call(this,t(19))},function(A,e){},function(A,e){},function(A,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.sGraph=e.sGraphEdge=e.sGraphNode=void 0;const i=t(29),r=t(45);e.sGraphNode=i.sOpenObject({id:i.sString(),label:i.sOptionalProp(i.sString(),{}),color:i.sOptionalProp(i.sString(),{}),shape:i.sOptionalProp(i.sUnion([i.sLiteral("ellipse"),i.sLiteral("box")]),{})}).defineAs(r.visualizationNs("GraphNode")),e.sGraphEdge=i.sOpenObject({from:i.sString(),to:i.sString(),label:i.sOptionalProp(i.sString(),{}),id:i.sOptionalProp(i.sString(),{}),color:i.sOptionalProp(i.sString(),{}),style:i.sOptionalProp(i.sUnion([i.sLiteral("solid"),i.sLiteral("dashed"),i.sLiteral("dotted")]),{})}).defineAs(r.visualizationNs("GraphEdge")),e.sGraph=i.sOpenObject({kind:i.sOpenObject({graph:i.sLiteral(!0)}),nodes:i.sArrayOf(e.sGraphNode),edges:i.sArrayOf(e.sGraphEdge)}).defineAs(r.visualizationNs("GraphVisualizationData"))},function(A,e,t){"use strict";(function(A){t.d(e,"a",(function(){return FC})),t.d(e,"b",(function(){return xC})),t.d(e,"c",(function(){return Pl})),t.d(e,"d",(function(){return xa})),t.d(e,"e",(function(){return MC})),t.d(e,"f",(function(){return SC})),t.d(e,"g",(function(){return zg})),t.d(e,"h",(function(){return Xg})),t.d(e,"i",(function(){return Ol})),t.d(e,"j",(function(){return Vl})),t.d(e,"k",(function(){return Zg}));
/**
* vis-network
* https://visjs.github.io/vis-network/
*
* A dynamic, browser-based visualization library.
*
* @version 8.0.0
* @date 2020-08-03T19:17:24.334Z
*
* @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.
*/
var i="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==A?A:"undefined"!=typeof self?self:{};function r(A,e,t){return A(t={path:e,exports:{},require:function(A,e){return function(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}(null==e&&t.path)}},t.exports),t.exports}var n=function(A){return A&&A.Math==Math&&A},g=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof i&&i)||Function("return this")(),o=function(A){try{return!!A()}catch(A){return!0}},a=!o((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),I={}.propertyIsEnumerable,C=Object.getOwnPropertyDescriptor,s={f:C&&!I.call({1:2},1)?function(A){var e=C(this,A);return!!e&&e.enumerable}:I},c=function(A,e){return{enumerable:!(1&A),configurable:!(2&A),writable:!(4&A),value:e}},l={}.toString,B=function(A){return l.call(A).slice(8,-1)},Q="".split,u=o((function(){return!Object("z").propertyIsEnumerable(0)}))?function(A){return"String"==B(A)?Q.call(A,""):Object(A)}:Object,E=function(A){if(null==A)throw TypeError("Can't call method on "+A);return A},h=function(A){return u(E(A))},f=function(A){return"object"==typeof A?null!==A:"function"==typeof A},d=function(A,e){if(!f(A))return A;var t,i;if(e&&"function"==typeof(t=A.toString)&&!f(i=t.call(A)))return i;if("function"==typeof(t=A.valueOf)&&!f(i=t.call(A)))return i;if(!e&&"function"==typeof(t=A.toString)&&!f(i=t.call(A)))return i;throw TypeError("Can't convert object to primitive value")},p={}.hasOwnProperty,y=function(A,e){return p.call(A,e)},w=g.document,D=f(w)&&f(w.createElement),v=function(A){return D?w.createElement(A):{}},m=!a&&!o((function(){return 7!=Object.defineProperty(v("div"),"a",{get:function(){return 7}}).a})),b=Object.getOwnPropertyDescriptor,k={f:a?b:function(A,e){if(A=h(A),e=d(e,!0),m)try{return b(A,e)}catch(A){}if(y(A,e))return c(!s.f.call(A,e),A[e])}},N=/#|\.prototype\./,M=function(A,e){var t=G[R(A)];return t==x||t!=F&&("function"==typeof e?o(e):!!e)},R=M.normalize=function(A){return String(A).replace(N,".").toLowerCase()},G=M.data={},F=M.NATIVE="N",x=M.POLYFILL="P",S=M,Y={},_=function(A){if("function"!=typeof A)throw TypeError(String(A)+" is not a function");return A},U=function(A,e,t){if(_(A),void 0===e)return A;switch(t){case 0:return function(){return A.call(e)};case 1:return function(t){return A.call(e,t)};case 2:return function(t,i){return A.call(e,t,i)};case 3:return function(t,i,r){return A.call(e,t,i,r)}}return function(){return A.apply(e,arguments)}},L=function(A){if(!f(A))throw TypeError(String(A)+" is not an object");return A},K=Object.defineProperty,J={f:a?K:function(A,e,t){if(L(A),e=d(e,!0),L(t),m)try{return K(A,e,t)}catch(A){}if("get"in t||"set"in t)throw TypeError("Accessors not supported");return"value"in t&&(A[e]=t.value),A}},T=a?function(A,e,t){return J.f(A,e,c(1,t))}:function(A,e,t){return A[e]=t,A},H=k.f,O=function(A){var e=function(e,t,i){if(this instanceof A){switch(arguments.length){case 0:return new A;case 1:return new A(e);case 2:return new A(e,t)}return new A(e,t,i)}return A.apply(this,arguments)};return e.prototype=A.prototype,e},q=function(A,e){var t,i,r,n,o,a,I,C,s=A.target,c=A.global,l=A.stat,B=A.proto,Q=c?g:l?g[s]:(g[s]||{}).prototype,u=c?Y:Y[s]||(Y[s]={}),E=u.prototype;for(r in e)t=!S(c?r:s+(l?".":"#")+r,A.forced)&&Q&&y(Q,r),o=u[r],t&&(a=A.noTargetGet?(C=H(Q,r))&&C.value:Q[r]),n=t&&a?a:e[r],t&&typeof o==typeof n||(I=A.bind&&t?U(n,g):A.wrap&&t?O(n):B&&"function"==typeof n?U(Function.call,n):n,(A.sham||n&&n.sham||o&&o.sham)&&T(I,"sham",!0),u[r]=I,B&&(y(Y,i=s+"Prototype")||T(Y,i,{}),Y[i][r]=n,A.real&&E&&!E[r]&&T(E,r,n)))},j=[].slice,P={},V=function(A,e,t){if(!(e in P)){for(var i=[],r=0;r<e;r++)i[r]="a["+r+"]";P[e]=Function("C,a","return new C("+i.join(",")+")")}return P[e](A,t)},z=Function.bind||function(A){var e=_(this),t=j.call(arguments,1),i=function(){var r=t.concat(j.call(arguments));return this instanceof i?V(e,r.length,r):e.apply(A,r)};return f(e.prototype)&&(i.prototype=e.prototype),i};q({target:"Function",proto:!0},{bind:z});var Z=function(A){return Y[A+"Prototype"]},X=Z("Function").bind,W=Function.prototype,$=function(A){var e=A.bind;return A===W||A instanceof Function&&e===W.bind?X:e},AA=Math.ceil,eA=Math.floor,tA=function(A){return isNaN(A=+A)?0:(A>0?eA:AA)(A)},iA=Math.min,rA=function(A){return A>0?iA(tA(A),9007199254740991):0},nA=Math.max,gA=Math.min,oA=function(A,e){var t=tA(A);return t<0?nA(t+e,0):gA(t,e)},aA=function(A){return function(e,t,i){var r,n=h(e),g=rA(n.length),o=oA(i,g);if(A&&t!=t){for(;g>o;)if((r=n[o++])!=r)return!0}else for(;g>o;o++)if((A||o in n)&&n[o]===t)return A||o||0;return!A&&-1}},IA={includes:aA(!0),indexOf:aA(!1)},CA={},sA=IA.indexOf,cA=function(A,e){var t,i=h(A),r=0,n=[];for(t in i)!y(CA,t)&&y(i,t)&&n.push(t);for(;e.length>r;)y(i,t=e[r++])&&(~sA(n,t)||n.push(t));return n},lA=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],BA=Object.keys||function(A){return cA(A,lA)},QA={f:Object.getOwnPropertySymbols},uA=function(A){return Object(E(A))},EA=Object.assign,hA=Object.defineProperty,fA=!EA||o((function(){if(a&&1!==EA({b:1},EA(hA({},"a",{enumerable:!0,get:function(){hA(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var A={},e={},t=Symbol();return A[t]=7,"abcdefghijklmnopqrst".split("").forEach((function(A){e[A]=A})),7!=EA({},A)[t]||"abcdefghijklmnopqrst"!=BA(EA({},e)).join("")}))?function(A,e){for(var t=uA(A),i=arguments.length,r=1,n=QA.f,g=s.f;i>r;)for(var o,I=u(arguments[r++]),C=n?BA(I).concat(n(I)):BA(I),c=C.length,l=0;c>l;)o=C[l++],a&&!g.call(I,o)||(t[o]=I[o]);return t}:EA;q({target:"Object",stat:!0,forced:Object.assign!==fA},{assign:fA});var dA=Y.Object.assign;function pA(A,e,t,i){A.beginPath(),A.arc(e,t,i,0,2*Math.PI,!1),A.closePath()}function yA(A,e,t,i,r,n){var g=Math.PI/180;i-2*n<0&&(n=i/2),r-2*n<0&&(n=r/2),A.beginPath(),A.moveTo(e+n,t),A.lineTo(e+i-n,t),A.arc(e+i-n,t+n,n,270*g,360*g,!1),A.lineTo(e+i,t+r-n),A.arc(e+i-n,t+r-n,n,0,90*g,!1),A.lineTo(e+n,t+r),A.arc(e+n,t+r-n,n,90*g,180*g,!1),A.lineTo(e,t+n),A.arc(e+n,t+n,n,180*g,270*g,!1),A.closePath()}function wA(A,e,t,i,r){var n=i/2*.5522848,g=r/2*.5522848,o=e+i,a=t+r,I=e+i/2,C=t+r/2;A.beginPath(),A.moveTo(e,C),A.bezierCurveTo(e,C-g,I-n,t,I,t),A.bezierCurveTo(I+n,t,o,C-g,o,C),A.bezierCurveTo(o,C+g,I+n,a,I,a),A.bezierCurveTo(I-n,a,e,C+g,e,C),A.closePath()}function DA(A,e,t,i,r){var n=r*(1/3),g=i/2*.5522848,o=n/2*.5522848,a=e+i,I=t+n,C=e+i/2,s=t+n/2,c=t+(r-n/2),l=t+r;A.beginPath(),A.moveTo(a,s),A.bezierCurveTo(a,s+o,C+g,I,C,I),A.bezierCurveTo(C-g,I,e,s+o,e,s),A.bezierCurveTo(e,s-o,C-g,t,C,t),A.bezierCurveTo(C+g,t,a,s-o,a,s),A.lineTo(a,c),A.bezierCurveTo(a,c+o,C+g,l,C,l),A.bezierCurveTo(C-g,l,e,c+o,e,c),A.lineTo(e,s)}function vA(A,e,t,i,r,n){A.beginPath(),A.moveTo(e,t);for(var g=n.length,o=i-e,a=r-t,I=a/o,C=Math.sqrt(o*o+a*a),s=0,c=!0,l=0,B=+n[0];C>=.1;)(B=+n[s++%g])>C&&(B=C),l=Math.sqrt(B*B/(1+I*I)),e+=l=o<0?-l:l,t+=I*l,!0===c?A.lineTo(e,t):A.moveTo(e,t),C-=B,c=!c}var mA={circle:pA,dashedLine:vA,database:DA,diamond:function(A,e,t,i){A.beginPath(),A.lineTo(e,t+i),A.lineTo(e+i,t),A.lineTo(e,t-i),A.lineTo(e-i,t),A.closePath()},ellipse:wA,ellipse_vis:wA,hexagon:function(A,e,t,i){A.beginPath();var r=2*Math.PI/6;A.moveTo(e+i,t);for(var n=1;n<6;n++)A.lineTo(e+i*Math.cos(r*n),t+i*Math.sin(r*n));A.closePath()},roundRect:yA,square:function(A,e,t,i){A.beginPath(),A.rect(e-i,t-i,2*i,2*i),A.closePath()},star:function(A,e,t,i){A.beginPath(),t+=.1*(i*=.82);for(var r=0;r<10;r++){var n=r%2==0?1.3*i:.5*i;A.lineTo(e+n*Math.sin(2*r*Math.PI/10),t-n*Math.cos(2*r*Math.PI/10))}A.closePath()},triangle:function(A,e,t,i){A.beginPath(),t+=.275*(i*=1.15);var r=2*i,n=r/2,g=Math.sqrt(3)/6*r,o=Math.sqrt(r*r-n*n);A.moveTo(e,t-(o-g)),A.lineTo(e+n,t+g),A.lineTo(e-n,t+g),A.lineTo(e,t-(o-g)),A.closePath()},triangleDown:function(A,e,t,i){A.beginPath(),t-=.275*(i*=1.15);var r=2*i,n=r/2,g=Math.sqrt(3)/6*r,o=Math.sqrt(r*r-n*n);A.moveTo(e,t+(o-g)),A.lineTo(e+n,t-g),A.lineTo(e-n,t-g),A.lineTo(e,t+(o-g)),A.closePath()}};var bA=r((function(A){function e(A){if(A)return function(A){for(var t in e.prototype)A[t]=e.prototype[t];return A}(A)}A.exports=e,e.prototype.on=e.prototype.addEventListener=function(A,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+A]=this._callbacks["$"+A]||[]).push(e),this},e.prototype.once=function(A,e){function t(){this.off(A,t),e.apply(this,arguments)}return t.fn=e,this.on(A,t),this},e.prototype.off=e.prototype.removeListener=e.prototype.removeAllListeners=e.prototype.removeEventListener=function(A,e){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var t,i=this._callbacks["$"+A];if(!i)return this;if(1==arguments.length)return delete this._callbacks["$"+A],this;for(var r=0;r<i.length;r++)if((t=i[r])===e||t.fn===e){i.splice(r,1);break}return 0===i.length&&delete this._callbacks["$"+A],this},e.prototype.emit=function(A){this._callbacks=this._callbacks||{};for(var e=new Array(arguments.length-1),t=this._callbacks["$"+A],i=1;i<arguments.length;i++)e[i-1]=arguments[i];if(t){i=0;for(var r=(t=t.slice(0)).length;i<r;++i)t[i].apply(this,e)}return this},e.prototype.listeners=function(A){return this._callbacks=this._callbacks||{},this._callbacks["$"+A]||[]},e.prototype.hasListeners=function(A){return!!this.listeners(A).length}}));q({target:"Object",stat:!0,forced:!a,sham:!a},{defineProperty:J.f});var kA=r((function(A){var e=Y.Object,t=A.exports=function(A,t,i){return e.defineProperty(A,t,i)};e.defineProperty.sham&&(t.sham=!0)})),NA=kA,MA=a?Object.defineProperties:function(A,e){L(A);for(var t,i=BA(e),r=i.length,n=0;r>n;)J.f(A,t=i[n++],e[t]);return A};q({target:"Object",stat:!0,forced:!a,sham:!a},{defineProperties:MA});var RA=r((function(A){var e=Y.Object,t=A.exports=function(A,t){return e.defineProperties(A,t)};e.defineProperties.sham&&(t.sham=!0)})),GA=function(A){return"function"==typeof A?A:void 0},FA=function(A,e){return arguments.length<2?GA(Y[A])||GA(g[A]):Y[A]&&Y[A][e]||g[A]&&g[A][e]},xA=lA.concat("length","prototype"),SA={f:Object.getOwnPropertyNames||function(A){return cA(A,xA)}},YA=FA("Reflect","ownKeys")||function(A){var e=SA.f(L(A)),t=QA.f;return t?e.concat(t(A)):e},_A=function(A,e,t){var i=d(e);i in A?J.f(A,i,c(0,t)):A[i]=t};q({target:"Object",stat:!0,sham:!a},{getOwnPropertyDescriptors:function(A){for(var e,t,i=h(A),r=k.f,n=YA(i),g={},o=0;n.length>o;)void 0!==(t=r(i,e=n[o++]))&&_A(g,e,t);return g}});var UA=Y.Object.getOwnPropertyDescriptors,LA=k.f,KA=o((function(){LA(1)}));q({target:"Object",stat:!0,forced:!a||KA,sham:!a},{getOwnPropertyDescriptor:function(A,e){return LA(h(A),e)}});var JA,TA=r((function(A){var e=Y.Object,t=A.exports=function(A,t){return e.getOwnPropertyDescriptor(A,t)};e.getOwnPropertyDescriptor.sham&&(t.sham=!0)})),HA=TA,OA=!!Object.getOwnPropertySymbols&&!o((function(){return!String(Symbol())})),qA=OA&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,jA=Array.isArray||function(A){return"Array"==B(A)},PA=FA("document","documentElement"),VA=g["__core-js_shared__"]||function(A,e){try{T(g,A,e)}catch(t){g[A]=e}return e}("__core-js_shared__",{}),zA=r((function(A){(A.exports=function(A,e){return VA[A]||(VA[A]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.4",mode:"pure",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})})),ZA=0,XA=Math.random(),WA=function(A){return"Symbol("+String(void 0===A?"":A)+")_"+(++ZA+XA).toString(36)},$A=zA("keys"),Ae=function(A){return $A[A]||($A[A]=WA(A))},ee=Ae("IE_PROTO"),te=function(){},ie=function(A){return"<script>"+A+"<\/script>"},re=function(){try{JA=document.domain&&new ActiveXObject("htmlfile")}catch(A){}var A,e;re=JA?function(A){A.write(ie("")),A.close();var e=A.parentWindow.Object;return A=null,e}(JA):((e=v("iframe")).style.display="none",PA.appendChild(e),e.src=String("javascript:"),(A=e.contentWindow.document).open(),A.write(ie("document.F=Object")),A.close(),A.F);for(var t=lA.length;t--;)delete re.prototype[lA[t]];return re()};CA[ee]=!0;var ne=Object.create||function(A,e){var t;return null!==A?(te.prototype=L(A),t=new te,te.prototype=null,t[ee]=A):t=re(),void 0===e?t:MA(t,e)},ge=SA.f,oe={}.toString,ae="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],Ie={f:function(A){return ae&&"[object Window]"==oe.call(A)?function(A){try{return ge(A)}catch(A){return ae.slice()}}(A):ge(h(A))}},Ce=function(A,e,t,i){i&&i.enumerable?A[e]=t:T(A,e,t)},se=zA("wks"),ce=g.Symbol,le=qA?ce:ce&&ce.withoutSetter||WA,Be=function(A){return y(se,A)||(OA&&y(ce,A)?se[A]=ce[A]:se[A]=le("Symbol."+A)),se[A]},Qe={f:Be},ue=J.f,Ee=function(A){var e=Y.Symbol||(Y.Symbol={});y(e,A)||ue(e,A,{value:Qe.f(A)})},he={};he[Be("toStringTag")]="z";var fe="[object z]"===String(he),de=Be("toStringTag"),pe="Arguments"==B(function(){return arguments}()),ye=fe?B:function(A){var e,t,i;return void 0===A?"Undefined":null===A?"Null":"string"==typeof(t=function(A,e){try{return A[e]}catch(A){}}(e=Object(A),de))?t:pe?B(e):"Object"==(i=B(e))&&"function"==typeof e.callee?"Arguments":i},we=fe?{}.toString:function(){return"[object "+ye(this)+"]"},De=J.f,ve=Be("toStringTag"),me=function(A,e,t,i){if(A){var r=t?A:A.prototype;y(r,ve)||De(r,ve,{configurable:!0,value:e}),i&&!fe&&T(r,"toString",we)}},be=Function.toString;"function"!=typeof VA.inspectSource&&(VA.inspectSource=function(A){return be.call(A)});var ke,Ne,Me,Re=VA.inspectSource,Ge=g.WeakMap,Fe="function"==typeof Ge&&/native code/.test(Re(Ge)),xe=g.WeakMap;if(Fe){var Se=new xe,Ye=Se.get,_e=Se.has,Ue=Se.set;ke=function(A,e){return Ue.call(Se,A,e),e},Ne=function(A){return Ye.call(Se,A)||{}},Me=function(A){return _e.call(Se,A)}}else{var Le=Ae("state");CA[Le]=!0,ke=function(A,e){return T(A,Le,e),e},Ne=function(A){return y(A,Le)?A[Le]:{}},Me=function(A){return y(A,Le)}}var Ke={set:ke,get:Ne,has:Me,enforce:function(A){return Me(A)?Ne(A):ke(A,{})},getterFor:function(A){return function(e){var t;if(!f(e)||(t=Ne(e)).type!==A)throw TypeError("Incompatible receiver, "+A+" required");return t}}},Je=Be("species"),Te=function(A,e){var t;return jA(A)&&("function"!=typeof(t=A.constructor)||t!==Array&&!jA(t.prototype)?f(t)&&null===(t=t[Je])&&(t=void 0):t=void 0),new(void 0===t?Array:t)(0===e?0:e)},He=[].push,Oe=function(A){var e=1==A,t=2==A,i=3==A,r=4==A,n=6==A,g=5==A||n;return function(o,a,I,C){for(var s,c,l=uA(o),B=u(l),Q=U(a,I,3),E=rA(B.length),h=0,f=C||Te,d=e?f(o,E):t?f(o,0):void 0;E>h;h++)if((g||h in B)&&(c=Q(s=B[h],h,l),A))if(e)d[h]=c;else if(c)switch(A){case 3:return!0;case 5:return s;case 6:return h;case 2:He.call(d,s)}else if(r)return!1;return n?-1:i||r?r:d}},qe={forEach:Oe(0),map:Oe(1),filter:Oe(2),some:Oe(3),every:Oe(4),find:Oe(5),findIndex:Oe(6)},je=qe.forEach,Pe=Ae("hidden"),Ve=Be("toPrimitive"),ze=Ke.set,Ze=Ke.getterFor("Symbol"),Xe=Object.prototype,We=g.Symbol,$e=FA("JSON","stringify"),At=k.f,et=J.f,tt=Ie.f,it=s.f,rt=zA("symbols"),nt=zA("op-symbols"),gt=zA("string-to-symbol-registry"),ot=zA("symbol-to-string-registry"),at=zA("wks"),It=g.QObject,Ct=!It||!It.prototype||!It.prototype.findChild,st=a&&o((function(){return 7!=ne(et({},"a",{get:function(){return et(this,"a",{value:7}).a}})).a}))?function(A,e,t){var i=At(Xe,e);i&&delete Xe[e],et(A,e,t),i&&A!==Xe&&et(Xe,e,i)}:et,ct=function(A,e){var t=rt[A]=ne(We.prototype);return ze(t,{type:"Symbol",tag:A,description:e}),a||(t.description=e),t},lt=qA?function(A){return"symbol"==typeof A}:function(A){return Object(A)instanceof We},Bt=function(A,e,t){A===Xe&&Bt(nt,e,t),L(A);var i=d(e,!0);return L(t),y(rt,i)?(t.enumerable?(y(A,Pe)&&A[Pe][i]&&(A[Pe][i]=!1),t=ne(t,{enumerable:c(0,!1)})):(y(A,Pe)||et(A,Pe,c(1,{})),A[Pe][i]=!0),st(A,i,t)):et(A,i,t)},Qt=function(A,e){L(A);var t=h(e),i=BA(t).concat(ft(t));return je(i,(function(e){a&&!ut.call(t,e)||Bt(A,e,t[e])})),A},ut=function(A){var e=d(A,!0),t=it.call(this,e);return!(this===Xe&&y(rt,e)&&!y(nt,e))&&(!(t||!y(this,e)||!y(rt,e)||y(this,Pe)&&this[Pe][e])||t)},Et=function(A,e){var t=h(A),i=d(e,!0);if(t!==Xe||!y(rt,i)||y(nt,i)){var r=At(t,i);return!r||!y(rt,i)||y(t,Pe)&&t[Pe][i]||(r.enumerable=!0),r}},ht=function(A){var e=tt(h(A)),t=[];return je(e,(function(A){y(rt,A)||y(CA,A)||t.push(A)})),t},ft=function(A){var e=A===Xe,t=tt(e?nt:h(A)),i=[];return je(t,(function(A){!y(rt,A)||e&&!y(Xe,A)||i.push(rt[A])})),i};if(OA||(Ce((We=function(){if(this instanceof We)throw TypeError("Symbol is not a constructor");var A=arguments.length&&void 0!==arguments[0]?String(arguments[0]):void 0,e=WA(A),t=function(A){this===Xe&&t.call(nt,A),y(this,Pe)&&y(this[Pe],e)&&(this[Pe][e]=!1),st(this,e,c(1,A))};return a&&Ct&&st(Xe,e,{configurable:!0,set:t}),ct(e,A)}).prototype,"toString",(function(){return Ze(this).tag})),Ce(We,"withoutSetter",(function(A){return ct(WA(A),A)})),s.f=ut,J.f=Bt,k.f=Et,SA.f=Ie.f=ht,QA.f=ft,Qe.f=function(A){return ct(Be(A),A)},a&&et(We.prototype,"description",{configurable:!0,get:function(){return Ze(this).description}})),q({global:!0,wrap:!0,forced:!OA,sham:!OA},{Symbol:We}),je(BA(at),(function(A){Ee(A)})),q({target:"Symbol",stat:!0,forced:!OA},{for:function(A){var e=String(A);if(y(gt,e))return gt[e];var t=We(e);return gt[e]=t,ot[t]=e,t},keyFor:function(A){if(!lt(A))throw TypeError(A+" is not a symbol");if(y(ot,A))return ot[A]},useSetter:function(){Ct=!0},useSimple:function(){Ct=!1}}),q({target:"Object",stat:!0,forced:!OA,sham:!a},{create:function(A,e){return void 0===e?ne(A):Qt(ne(A),e)},defineProperty:Bt,defineProperties:Qt,getOwnPropertyDescriptor:Et}),q({target:"Object",stat:!0,forced:!OA},{getOwnPropertyNames:ht,getOwnPropertySymbols:ft}),q({target:"Object",stat:!0,forced:o((function(){QA.f(1)}))},{getOwnPropertySymbols:function(A){return QA.f(uA(A))}}),$e){var dt=!OA||o((function(){var A=We();return"[null]"!=$e([A])||"{}"!=$e({a:A})||"{}"!=$e(Object(A))}));q({target:"JSON",stat:!0,forced:dt},{stringify:function(A,e,t){for(var i,r=[A],n=1;arguments.length>n;)r.push(arguments[n++]);if(i=e,(f(e)||void 0!==A)&&!lt(A))return jA(e)||(e=function(A,e){if("function"==typeof i&&(e=i.call(this,A,e)),!lt(e))return e}),r[1]=e,$e.apply(null,r)}})}We.prototype[Ve]||T(We.prototype,Ve,We.prototype.valueOf),me(We,"Symbol"),CA[Pe]=!0;var pt,yt,wt,Dt=Y.Object.getOwnPropertySymbols,vt={},mt=!o((function(){function A(){}return A.prototype.constructor=null,Object.getPrototypeOf(new A)!==A.prototype})),bt=Ae("IE_PROTO"),kt=Object.prototype,Nt=mt?Object.getPrototypeOf:function(A){return A=uA(A),y(A,bt)?A[bt]:"function"==typeof A.constructor&&A instanceof A.constructor?A.constructor.prototype:A instanceof Object?kt:null},Mt=(Be("iterator"),!1);[].keys&&("next"in(wt=[].keys())?(yt=Nt(Nt(wt)))!==Object.prototype&&(pt=yt):Mt=!0),null==pt&&(pt={});var Rt={IteratorPrototype:pt,BUGGY_SAFARI_ITERATORS:Mt},Gt=Rt.IteratorPrototype,Ft=function(){return this},xt=Object.setPrototypeOf||("__proto__"in{}?function(){var A,e=!1,t={};try{(A=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(t,[]),e=t instanceof Array}catch(A){}return function(t,i){return L(t),function(A){if(!f(A)&&null!==A)throw TypeError("Can't set "+String(A)+" as a prototype")}(i),e?A.call(t,i):t.__proto__=i,t}}():void 0),St=Rt.IteratorPrototype,Yt=Rt.BUGGY_SAFARI_ITERATORS,_t=Be("iterator"),Ut=function(){return this},Lt=function(A,e,t,i,r,n,g){!function(A,e,t){var i=e+" Iterator";A.prototype=ne(Gt,{next:c(1,t)}),me(A,i,!1,!0),vt[i]=Ft}(t,e,i);var o,a,I,C=function(A){if(A===r&&u)return u;if(!Yt&&A in B)return B[A];switch(A){case"keys":case"values":case"entries":return function(){return new t(this,A)}}return function(){return new t(this)}},s=e+" Iterator",l=!1,B=A.prototype,Q=B[_t]||B["@@iterator"]||r&&B[r],u=!Yt&&Q||C(r),E="Array"==e&&B.entries||Q;if(E&&(o=Nt(E.call(new A)),St!==Object.prototype&&o.next&&(me(o,s,!0,!0),vt[s]=Ut)),"values"==r&&Q&&"values"!==Q.name&&(l=!0,u=function(){return Q.call(this)}),g&&B[_t]!==u&&T(B,_t,u),vt[e]=u,r)if(a={values:C("values"),keys:n?u:C("keys"),entries:C("entries")},g)for(I in a)(Yt||l||!(I in B))&&Ce(B,I,a[I]);else q({target:e,proto:!0,forced:Yt||l},a);return a},Kt=Ke.set,Jt=Ke.getterFor("Array Iterator");Lt(Array,"Array",(function(A,e){Kt(this,{type:"Array Iterator",target:h(A),index:0,kind:e})}),(function(){var A=Jt(this),e=A.target,t=A.kind,i=A.index++;return!e||i>=e.length?(A.target=void 0,{value:void 0,done:!0}):"keys"==t?{value:i,done:!1}:"values"==t?{value:e[i],done:!1}:{value:[i,e[i]],done:!1}}),"values");vt.Arguments=vt.Array;var Tt=Be("toStringTag");for(var Ht in{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}){var Ot=g[Ht],qt=Ot&&Ot.prototype;qt&&ye(qt)!==Tt&&T(qt,Tt,Ht),vt[Ht]=vt.Array}var jt=function(A){return function(e,t){var i,r,n=String(E(e)),g=tA(t),o=n.length;return g<0||g>=o?A?"":void 0:(i=n.charCodeAt(g))<55296||i>56319||g+1===o||(r=n.charCodeAt(g+1))<56320||r>57343?A?n.charAt(g):i:A?n.slice(g,g+2):r-56320+(i-55296<<10)+65536}},Pt={codeAt:jt(!1),charAt:jt(!0)}.charAt,Vt=Ke.set,zt=Ke.getterFor("String Iterator");Lt(String,"String",(function(A){Vt(this,{type:"String Iterator",string:String(A),index:0})}),(function(){var A,e=zt(this),t=e.string,i=e.index;return i>=t.length?{value:void 0,done:!0}:(A=Pt(t,i),e.index+=A.length,{value:A,done:!1})}));var Zt=Be("iterator"),Xt=function(A){if(null!=A)return A[Zt]||A["@@iterator"]||vt[ye(A)]},Wt=function(A){var e=Xt(A);if("function"!=typeof e)throw TypeError(String(A)+" is not iterable");return L(e.call(A))},$t=Xt,Ai=function(A,e,t,i){try{return i?e(L(t)[0],t[1]):e(t)}catch(e){var r=A.return;throw void 0!==r&&L(r.call(A)),e}},ei=Be("iterator"),ti=Array.prototype,ii=function(A){return void 0!==A&&(vt.Array===A||ti[ei]===A)},ri=Be("iterator"),ni=!1;try{var gi=0,oi={next:function(){return{done:!!gi++}},return:function(){ni=!0}};oi[ri]=function(){return this},Array.from(oi,(function(){throw 2}))}catch(A){}var ai=!function(A,e){if(!e&&!ni)return!1;var t=!1;try{var i={};i[ri]=function(){return{next:function(){return{done:t=!0}}}},A(i)}catch(A){}return t}((function(A){Array.from(A)}));q({target:"Array",stat:!0,forced:ai},{from:function(A){var e,t,i,r,n,g,o=uA(A),a="function"==typeof this?this:Array,I=arguments.length,C=I>1?arguments[1]:void 0,s=void 0!==C,c=Xt(o),l=0;if(s&&(C=U(C,I>2?arguments[2]:void 0,2)),null==c||a==Array&&ii(c))for(t=new a(e=rA(o.length));e>l;l++)g=s?C(o[l],l):o[l],_A(t,l,g);else for(n=(r=c.call(o)).next,t=new a;!(i=n.call(r)).done;l++)g=s?Ai(r,C,[i.value,l],!0):i.value,_A(t,l,g);return t.length=l,t}});var Ii=Y.Array.from,Ci=Ii;q({target:"Object",stat:!0,sham:!a},{create:ne});var si=Y.Object,ci=function(A,e){return si.create(A,e)},li=ci,Bi=kA;var Qi,ui=function(A,e,t){return e in A?Bi(A,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):A[e]=t,A},Ei="\t\n\v\f\r                 \u2028\u2029\ufeff",hi="["+Ei+"]",fi=RegExp("^"+hi+hi+"*"),di=RegExp(hi+hi+"*$"),pi=function(A){return function(e){var t=String(E(e));return 1&A&&(t=t.replace(fi,"")),2&A&&(t=t.replace(di,"")),t}},yi={start:pi(1),end:pi(2),trim:pi(3)},wi=yi.trim;q({target:"String",proto:!0,forced:(Qi="trim",o((function(){return!!Ei[Qi]()||"​…᠎"!="​…᠎"[Qi]()||Ei[Qi].name!==Qi})))},{trim:function(){return wi(this)}});Z("String").trim;var Di=function(A,e){var t=[][A];return!!t&&o((function(){t.call(null,e||function(){throw 1},1)}))},vi=Object.defineProperty,mi={},bi=function(A){throw A},ki=function(A,e){if(y(mi,A))return mi[A];e||(e={});var t=[][A],i=!!y(e,"ACCESSORS")&&e.ACCESSORS,r=y(e,0)?e[0]:bi,n=y(e,1)?e[1]:void 0;return mi[A]=!!t&&!o((function(){if(i&&!a)return!0;var A={length:-1};i?vi(A,1,{enumerable:!0,get:bi}):A[1]=1,t.call(A,r,n)}))},Ni=qe.forEach,Mi=Di("forEach"),Ri=ki("forEach"),Gi=Mi&&Ri?[].forEach:function(A){return Ni(this,A,arguments.length>1?arguments[1]:void 0)};q({target:"Array",proto:!0,forced:[].forEach!=Gi},{forEach:Gi});var Fi=Z("Array").forEach,xi=Array.prototype,Si={DOMTokenList:!0,NodeList:!0},Yi=function(A){var e=A.forEach;return A===xi||A instanceof Array&&e===xi.forEach||Si.hasOwnProperty(ye(A))?Fi:e},_i=yi.trim,Ui=g.parseInt,Li=/^[+-]?0[Xx]/,Ki=8!==Ui(Ei+"08")||22!==Ui(Ei+"0x16")?function(A,e){var t=_i(String(A));return Ui(t,e>>>0||(Li.test(t)?16:10))}:Ui;q({global:!0,forced:parseInt!=Ki},{parseInt:Ki});var Ji=Y.parseInt,Ti=s.f,Hi=function(A){return function(e){for(var t,i=h(e),r=BA(i),n=r.length,g=0,o=[];n>g;)t=r[g++],a&&!Ti.call(i,t)||o.push(A?[t,i[t]]:i[t]);return o}},Oi={entries:Hi(!0),values:Hi(!1)}.values;q({target:"Object",stat:!0},{values:function(A){return Oi(A)}});Y.Object.values;var qi,ji,Pi=FA("navigator","userAgent")||"",Vi=g.process,zi=Vi&&Vi.versions,Zi=zi&&zi.v8;Zi?ji=(qi=Zi.split("."))[0]+qi[1]:Pi&&(!(qi=Pi.match(/Edge\/(\d+)/))||qi[1]>=74)&&(qi=Pi.match(/Chrome\/(\d+)/))&&(ji=qi[1]);var Xi=ji&&+ji,Wi=Be("species"),$i=function(A){return Xi>=51||!o((function(){var e=[];return(e.constructor={})[Wi]=function(){return{foo:1}},1!==e[A](Boolean).foo}))},Ar=qe.filter,er=$i("filter"),tr=ki("filter");q({target:"Array",proto:!0,forced:!er||!tr},{filter:function(A){return Ar(this,A,arguments.length>1?arguments[1]:void 0)}});var ir=Z("Array").filter,rr=Array.prototype,nr=function(A){var e=A.filter;return A===rr||A instanceof Array&&e===rr.filter?ir:e},gr=o((function(){Nt(1)}));q({target:"Object",stat:!0,forced:gr,sham:!mt},{getPrototypeOf:function(A){return Nt(uA(A))}});var or=Y.Object.getPrototypeOf,ar=or,Ir=IA.indexOf,Cr=[].indexOf,sr=!!Cr&&1/[1].indexOf(1,-0)<0,cr=Di("indexOf"),lr=ki("indexOf",{ACCESSORS:!0,1:0});q({target:"Array",proto:!0,forced:sr||!cr||!lr},{indexOf:function(A){return sr?Cr.apply(this,arguments)||0:Ir(this,A,arguments.length>1?arguments[1]:void 0)}});var Br=Z("Array").indexOf,Qr=Array.prototype,ur=function(A){var e=A.indexOf;return A===Qr||A instanceof Array&&e===Qr.indexOf?Br:e};q({target:"Array",stat:!0},{isArray:jA});var Er=Y.Array.isArray,hr=Er;var fr=function(A){if(hr(A))return A},dr=Be("iterator"),pr=function(A){var e=Object(A);return void 0!==e[dr]||"@@iterator"in e||vt.hasOwnProperty(ye(e))},yr=Be("isConcatSpreadable"),wr=Xi>=51||!o((function(){var A=[];return A[yr]=!1,A.concat()[0]!==A})),Dr=$i("concat"),vr=function(A){if(!f(A))return!1;var e=A[yr];return void 0!==e?!!e:jA(A)};q({target:"Array",proto:!0,forced:!wr||!Dr},{concat:function(A){var e,t,i,r,n,g=uA(this),o=Te(g,0),a=0;for(e=-1,i=arguments.length;e<i;e++)if(vr(n=-1===e?g:arguments[e])){if(a+(r=rA(n.length))>9007199254740991)throw TypeError("Maximum allowed index exceeded");for(t=0;t<r;t++,a++)t in n&&_A(o,a,n[t])}else{if(a>=9007199254740991)throw TypeError("Maximum allowed index exceeded");_A(o,a++,n)}return o.length=a,o}}),Ee("asyncIterator"),Ee("hasInstance"),Ee("isConcatSpreadable"),Ee("iterator"),Ee("match"),Ee("matchAll"),Ee("replace"),Ee("search"),Ee("species"),Ee("split"),Ee("toPrimitive"),Ee("toStringTag"),Ee("unscopables"),me(Math,"Math",!0),me(g.JSON,"JSON",!0);var mr=Y.Symbol;Ee("asyncDispose"),Ee("dispose"),Ee("observable"),Ee("patternMatch"),Ee("replaceAll");var br=mr;var kr=function(A,e){if(void 0!==br&&pr(Object(A))){var t=[],i=!0,r=!1,n=void 0;try{for(var g,o=Wt(A);!(i=(g=o.next()).done)&&(t.push(g.value),!e||t.length!==e);i=!0);}catch(A){r=!0,n=A}finally{try{i||null==o.return||o.return()}finally{if(r)throw n}}return t}},Nr=Ii,Mr=$i("slice"),Rr=ki("slice",{ACCESSORS:!0,0:0,1:2}),Gr=Be("species"),Fr=[].slice,xr=Math.max;q({target:"Array",proto:!0,forced:!Mr||!Rr},{slice:function(A,e){var t,i,r,n=h(this),g=rA(n.length),o=oA(A,g),a=oA(void 0===e?g:e,g);if(jA(n)&&("function"!=typeof(t=n.constructor)||t!==Array&&!jA(t.prototype)?f(t)&&null===(t=t[Gr])&&(t=void 0):t=void 0,t===Array||void 0===t))return Fr.call(n,o,a);for(i=new(void 0===t?Array:t)(xr(a-o,0)),r=0;o<a;o++,r++)o in n&&_A(i,r,n[o]);return i.length=r,i}});var Sr=Z("Array").slice,Yr=Array.prototype,_r=function(A){var e=A.slice;return A===Yr||A instanceof Array&&e===Yr.slice?Sr:e},Ur=_r;var Lr=function(A,e){(null==e||e>A.length)&&(e=A.length);for(var t=0,i=new Array(e);t<e;t++)i[t]=A[t];return i};var Kr=function(A,e){var t;if(A){if("string"==typeof A)return Lr(A,e);var i=Ur(t=Object.prototype.toString.call(A)).call(t,8,-1);return"Object"===i&&A.constructor&&(i=A.constructor.name),"Map"===i||"Set"===i?Nr(A):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?Lr(A,e):void 0}};var Jr=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.")};var Tr=function(A,e){return fr(A)||kr(A,e)||Kr(A,e)||Jr()};q({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}});var Hr=Y.Date.now,Or=o((function(){BA(1)}));q({target:"Object",stat:!0,forced:Or},{keys:function(A){return BA(uA(A))}});var qr=Y.Object.keys,jr=qe.map,Pr=$i("map"),Vr=ki("map");q({target:"Array",proto:!0,forced:!Pr||!Vr},{map:function(A){return jr(this,A,arguments.length>1?arguments[1]:void 0)}});var zr=Z("Array").map,Zr=Array.prototype,Xr=function(A){var e=A.map;return A===Zr||A instanceof Array&&e===Zr.map?zr:e},Wr=Er,$r=Qe.f("iterator"),An=$r,en=r((function(A){function e(t){return A.exports=e="function"==typeof br&&"symbol"==typeof An?function(A){return typeof A}:function(A){return A&&"function"==typeof br&&A.constructor===br&&A!==br.prototype?"symbol":typeof A},e(t)}A.exports=e}));q({target:"Reflect",stat:!0},{ownKeys:YA});var tn=Y.Reflect.ownKeys,rn=_r;var nn=function(A){if(hr(A))return Lr(A)};var gn=function(A){if(void 0!==br&&pr(Object(A)))return Nr(A)};var on=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 an=function(A){return nn(A)||gn(A)||Kr(A)||on()},In=Z("Array").concat,Cn=Array.prototype,sn=function(A){var e=A.concat;return A===Cn||A instanceof Array&&e===Cn.concat?In:e},cn=mr;function ln(A,e){var t;if(void 0===cn||null==$t(A)){if(Wr(A)||(t=function(A,e){var t;if(!A)return;if("string"==typeof A)return Bn(A,e);var i=rn(t=Object.prototype.toString.call(A)).call(t,8,-1);"Object"===i&&A.constructor&&(i=A.constructor.name);if("Map"===i||"Set"===i)return Ci(A);if("Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i))return Bn(A,e)}(A))||e&&A&&"number"==typeof A.length){t&&(A=t);var i=0,r=function(){};return{s:r,n:function(){return i>=A.length?{done:!0}:{done:!1,value:A[i++]}},e:function(A){throw A},f:r}}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 n,g=!0,o=!1;return{s:function(){t=Wt(A)},n:function(){var A=t.next();return g=A.done,A},e:function(A){o=!0,n=A},f:function(){try{g||null==t.return||t.return()}finally{if(o)throw n}}}}function Bn(A,e){(null==e||e>A.length)&&(e=A.length);for(var t=0,i=new Array(e);t<e;t++)i[t]=A[t];return i}
/**
* vis-util
* https://github.com/visjs/vis-util
*
* utilitie collection for visjs
*
* @version 4.3.4
* @date 2020-08-01T15:11:53.524Z
*
* @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.
*/var Qn=cn("DELETE");function un(){var A=En.apply(void 0,arguments);return fn(A),A}function En(){for(var A=arguments.length,e=new Array(A),t=0;t<A;t++)e[t]=arguments[t];if(e.length<2)return e[0];var i;if(e.length>2)return En.apply(void 0,sn(i=[un(e[0],e[1])]).call(i,an(rn(e).call(e,2))));var r,n=e[0],g=e[1],o=ln(tn(g));try{for(o.s();!(r=o.n()).done;){var a=r.value;Object.prototype.propertyIsEnumerable.call(g,a)&&(g[a]===Qn?delete n[a]:null===n[a]||null===g[a]||"object"!==en(n[a])||"object"!==en(g[a])||Wr(n[a])||Wr(g[a])?n[a]=hn(g[a]):n[a]=En(n[a],g[a]))}}catch(A){o.e(A)}finally{o.f()}return n}function hn(A){return Wr(A)?Xr(A).call(A,(function(A){return hn(A)})):"object"===en(A)&&null!==A?En({},A):A}function fn(A){for(var e=0,t=qr(A);e<t.length;e++){var i=t[e];A[i]===Qn?delete A[i]:"object"===en(A[i])&&null!==A[i]&&fn(A[i])}}function dn(){for(var A=arguments.length,e=new Array(A),t=0;t<A;t++)e[t]=arguments[t];return pn(e.length?e:[Hr()])}function pn(A){var e=function(){for(var A=yn(),e=A(" "),t=A(" "),i=A(" "),r=0;r<arguments.length;r++)(e-=A(r<0||arguments.length<=r?void 0:arguments[r]))<0&&(e+=1),(t-=A(r<0||arguments.length<=r?void 0:arguments[r]))<0&&(t+=1),(i-=A(r<0||arguments.length<=r?void 0:arguments[r]))<0&&(i+=1);return[e,t,i]}(A),t=Tr(e,3),i=t[0],r=t[1],n=t[2],g=1,o=function(){var A=2091639*i+2.3283064365386963e-10*g;return i=r,r=n,n=A-(g=0|A)};return o.uint32=function(){return 4294967296*o()},o.fract53=function(){return o()+11102230246251565e-32*(2097152*o()|0)},o.algorithm="Alea",o.seed=A,o.version="0.9",o}function yn(){var A=4022871197;return function(e){for(var t=e.toString(),i=0;i<t.length;i++){var r=.02519603282416938*(A+=t.charCodeAt(i));r-=A=r>>>0,A=(r*=A)>>>0,A+=4294967296*(r-=A)}return 2.3283064365386963e-10*(A>>>0)}}var wn=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i,Dn=/^#?([a-f\d])([a-f\d])([a-f\d])$/i,vn=/^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,mn=/^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 bn(A){if(A)for(;!0===A.hasChildNodes();){var e=A.firstChild;e&&(bn(e),A.removeChild(e))}}function kn(A){return A instanceof String||"string"==typeof A}function Nn(A){return"object"===en(A)&&null!==A}function Mn(A,e,t,i){var r=!1;!0===i&&(r=null===e[t]&&void 0!==A[t]),r?delete A[t]:A[t]=e[t]}function Rn(A,e){var t=arguments.length>2&&void 0!==arguments[2]&&arguments[2];for(var i in A)if(void 0!==e[i])if(null===e[i]||"object"!==en(e[i]))Mn(A,e,i,t);else{var r=A[i],n=e[i];Nn(r)&&Nn(n)&&Rn(r,n,t)}}function Gn(A,e,t){var i=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(Wr(t))throw new TypeError("Arrays are not supported by deepExtend");for(var r=0;r<A.length;r++){var n=A[r];if(Object.prototype.hasOwnProperty.call(t,n))if(t[n]&&t[n].constructor===Object)void 0===e[n]&&(e[n]={}),e[n].constructor===Object?xn(e[n],t[n],!1,i):Mn(e,t,n,i);else{if(Wr(t[n]))throw new TypeError("Arrays are not supported by deepExtend");Mn(e,t,n,i)}}return e}function Fn(A,e,t){var i=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(Wr(t))throw new TypeError("Arrays are not supported by deepExtend");for(var r in t)if(Object.prototype.hasOwnProperty.call(t,r)&&-1===ur(A).call(A,r))if(t[r]&&t[r].constructor===Object)void 0===e[r]&&(e[r]={}),e[r].constructor===Object?xn(e[r],t[r]):Mn(e,t,r,i);else if(Wr(t[r])){e[r]=[];for(var n=0;n<t[r].length;n++)e[r].push(t[r][n])}else Mn(e,t,r,i);return e}function xn(A,e){var t=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=arguments.length>3&&void 0!==arguments[3]&&arguments[3];for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)||!0===t)if("object"===en(e[r])&&null!==e[r]&&ar(e[r])===Object.prototype)void 0===A[r]?A[r]=xn({},e[r],t):"object"===en(A[r])&&null!==A[r]&&ar(A[r])===Object.prototype?xn(A[r],e[r],t):Mn(A,e,r,i);else if(Wr(e[r])){var n;A[r]=rn(n=e[r]).call(n)}else Mn(A,e,r,i);return A}function Sn(A,e){var t;return sn(t=[]).call(t,an(A),[e])}function Yn(A){return rn(A).call(A)}function _n(A){return A.getBoundingClientRect().top}function Un(A,e){if(Wr(A))for(var t=A.length,i=0;i<t;i++)e(A[i],i,A);else for(var r in A)Object.prototype.hasOwnProperty.call(A,r)&&e(A[r],r,A)}function Ln(A){var e;switch(A.length){case 3:case 4:return(e=Dn.exec(A))?{r:Ji(e[1]+e[1],16),g:Ji(e[2]+e[2],16),b:Ji(e[3]+e[3],16)}:null;case 6:case 7:return(e=wn.exec(A))?{r:Ji(e[1],16),g:Ji(e[2],16),b:Ji(e[3],16)}:null;default:return null}}function Kn(A,e){if(-1!==ur(A).call(A,"rgba"))return A;if(-1!==ur(A).call(A,"rgb")){var t=A.substr(ur(A).call(A,"(")+1).replace(")","").split(",");return"rgba("+t[0]+","+t[1]+","+t[2]+","+e+")"}var i=Ln(A);return null==i?A:"rgba("+i.r+","+i.g+","+i.b+","+e+")"}function Jn(A,e,t){var i;return"#"+rn(i=((1<<24)+(A<<16)+(e<<8)+t).toString(16)).call(i,1)}function Tn(A,e){if(kn(A)){var t=A;if(Pn(t)){var i,r=Xr(i=t.substr(4).substr(0,t.length-5).split(",")).call(i,(function(A){return Ji(A)}));t=Jn(r[0],r[1],r[2])}if(!0===jn(t)){var n=function(A){var e=Ln(A);if(!e)throw new TypeError("'".concat(A,"' is not a valid color."));return Hn(e.r,e.g,e.b)}(t),g={h:n.h,s:.8*n.s,v:Math.min(1,1.02*n.v)},o={h:n.h,s:Math.min(1,1.25*n.s),v:.8*n.v},a=qn(o.h,o.s,o.v),I=qn(g.h,g.s,g.v);return{background:t,border:a,highlight:{background:I,border:a},hover:{background:I,border:a}}}return{background:t,border:t,highlight:{background:t,border:t},hover:{background:t,border:t}}}return e?{background:A.background||e.background,border:A.border||e.border,highlight:kn(A.highlight)?{border:A.highlight,background:A.highlight}:{background:A.highlight&&A.highlight.background||e.highlight.background,border:A.highlight&&A.highlight.border||e.highlight.border},hover:kn(A.hover)?{border:A.hover,background:A.hover}:{border:A.hover&&A.hover.border||e.hover.border,background:A.hover&&A.hover.background||e.hover.background}}:{background:A.background||void 0,border:A.border||void 0,highlight:kn(A.highlight)?{border:A.highlight,background:A.highlight}:{background:A.highlight&&A.highlight.background||void 0,border:A.highlight&&A.highlight.border||void 0},hover:kn(A.hover)?{border:A.hover,background:A.hover}:{border:A.hover&&A.hover.border||void 0,background:A.hover&&A.hover.background||void 0}}}function Hn(A,e,t){A/=255,e/=255,t/=255;var i=Math.min(A,Math.min(e,t)),r=Math.max(A,Math.max(e,t));return i===r?{h:0,s:0,v:i}:{h:60*((A===i?3:t===i?1:5)-(A===i?e-t:t===i?A-e:t-A)/(r-i))/360,s:(r-i)/r,v:r}}function On(A,e,t){var i,r,n,g=Math.floor(6*A),o=6*A-g,a=t*(1-e),I=t*(1-o*e),C=t*(1-(1-o)*e);switch(g%6){case 0:i=t,r=C,n=a;break;case 1:i=I,r=t,n=a;break;case 2:i=a,r=t,n=C;break;case 3:i=a,r=I,n=t;break;case 4:i=C,r=a,n=t;break;case 5:i=t,r=a,n=I}return{r:Math.floor(255*i),g:Math.floor(255*r),b:Math.floor(255*n)}}function qn(A,e,t){var i=On(A,e,t);return Jn(i.r,i.g,i.b)}function jn(A){return/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(A)}function Pn(A){return vn.test(A)}function Vn(A){return mn.test(A)}function zn(A){if(null===A||"object"!==en(A))return null;if(A instanceof Element)return A;var e=li(A);for(var t in A)Object.prototype.hasOwnProperty.call(A,t)&&"object"==en(A[t])&&(e[t]=zn(A[t]));return e}function Zn(A,e,t){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},r=function(A){return null!=A},n=function(A){return null!==A&&"object"===en(A)},g=function(A){for(var e in A)if(Object.prototype.hasOwnProperty.call(A,e))return!1;return!0};if(!n(A))throw new Error("Parameter mergeTarget must be an object");if(!n(e))throw new Error("Parameter options must be an object");if(!r(t))throw new Error("Parameter option must have a value");if(!n(i))throw new Error("Parameter globalOptions must be an object");var o=function(A,e,t){n(A[t])||(A[t]={});var i=e[t],r=A[t];for(var g in i)Object.prototype.hasOwnProperty.call(i,g)&&(r[g]=i[g])},a=e[t],I=n(i)&&!g(i),C=I?i[t]:void 0,s=C?C.enabled:void 0;if(void 0!==a){if("boolean"==typeof a)return n(A[t])||(A[t]={}),void(A[t].enabled=a);if(null===a&&!n(A[t])){if(!r(C))return;A[t]=li(C)}if(n(a)){var c=!0;void 0!==a.enabled?c=a.enabled:void 0!==s&&(c=C.enabled),o(A,e,t),A[t].enabled=c}}}var Xn={linear:function(A){return A},easeInQuad:function(A){return A*A},easeOutQuad:function(A){return A*(2-A)},easeInOutQuad:function(A){return A<.5?2*A*A:(4-2*A)*A-1},easeInCubic:function(A){return A*A*A},easeOutCubic:function(A){return--A*A*A+1},easeInOutCubic:function(A){return A<.5?4*A*A*A:(A-1)*(2*A-2)*(2*A-2)+1},easeInQuart:function(A){return A*A*A*A},easeOutQuart:function(A){return 1- --A*A*A*A},easeInOutQuart:function(A){return A<.5?8*A*A*A*A:1-8*--A*A*A*A},easeInQuint:function(A){return A*A*A*A*A},easeOutQuint:function(A){return 1+--A*A*A*A*A},easeInOutQuint:function(A){return A<.5?16*A*A*A*A*A:1+16*--A*A*A*A*A}};function Wn(A,e){var t;Wr(e)||(e=[e]);var i,r=ln(A);try{for(r.s();!(i=r.n()).done;){var n=i.value;if(n){t=n[e[0]];for(var g=1;g<e.length;g++)t&&(t=t[e[g]]);if(void 0!==t)break}}}catch(A){r.e(A)}finally{r.f()}return t}var $n=$i("splice"),Ag=ki("splice",{ACCESSORS:!0,0:0,1:2}),eg=Math.max,tg=Math.min;q({target:"Array",proto:!0,forced:!$n||!Ag},{splice:function(A,e){var t,i,r,n,g,o,a=uA(this),I=rA(a.length),C=oA(A,I),s=arguments.length;if(0===s?t=i=0:1===s?(t=0,i=I-C):(t=s-2,i=tg(eg(tA(e),0),I-C)),I+t-i>9007199254740991)throw TypeError("Maximum allowed length exceeded");for(r=Te(a,i),n=0;n<i;n++)(g=C+n)in a&&_A(r,n,a[g]);if(r.length=i,t<i){for(n=C;n<I-i;n++)o=n+t,(g=n+i)in a?a[o]=a[g]:delete a[o];for(n=I;n>I-i+t;n--)delete a[n-1]}else if(t>i)for(n=I-i;n>C;n--)o=n+t-1,(g=n+i-1)in a?a[o]=a[g]:delete a[o];for(n=0;n<t;n++)a[n+C]=arguments[n+2];return a.length=I-i+t,r}});var ig=Z("Array").splice,rg=Array.prototype,ng=function(A){var e=A.splice;return A===rg||A instanceof Array&&e===rg.splice?ig:e},gg=IA.includes,og=ki("indexOf",{ACCESSORS:!0,1:0});q({target:"Array",proto:!0,forced:!og},{includes:function(A){return gg(this,A,arguments.length>1?arguments[1]:void 0)}});var ag=Z("Array").includes,Ig=Be("match"),Cg=function(A){if(function(A){var e;return f(A)&&(void 0!==(e=A[Ig])?!!e:"RegExp"==B(A))}(A))throw TypeError("The method doesn't accept regular expressions");return A},sg=Be("match");q({target:"String",proto:!0,forced:!function(A){var e=/./;try{"/./"[A](e)}catch(t){try{return e[sg]=!1,"/./"[A](e)}catch(A){}}return!1}("includes")},{includes:function(A){return!!~String(E(this)).indexOf(Cg(A),arguments.length>1?arguments[1]:void 0)}});var cg=Z("String").includes,lg=Array.prototype,Bg=String.prototype,Qg=function(A){var e=A.includes;return A===lg||A instanceof Array&&e===lg.includes?ag:"string"==typeof A||A===Bg||A instanceof String&&e===Bg.includes?cg:e};function ug(A){return Dg=A,function(){var A={};vg=0,void(mg=Dg.charAt(0)),Ug(),"strict"===bg&&(A.strict=!0,Ug());"graph"!==bg&&"digraph"!==bg||(A.type=bg,Ug());kg===pg&&(A.id=bg,Ug());if("{"!=bg)throw Og("Angle bracket { expected");if(Ug(),Lg(A),"}"!=bg)throw Og("Angle bracket } expected");if(Ug(),""!==bg)throw Og("End of file expected");return Ug(),delete A.node,delete A.edge,delete A.graph,A}()}var Eg={fontsize:"font.size",fontcolor:"font.color",labelfontcolor:"font.color",fontname:"font.face",color:["color.border","color.background"],fillcolor:"color.background",tooltip:"title",labeltooltip:"title"},hg=li(Eg);hg.color="color.color",hg.style="dashes";var fg=0,dg=1,pg=2,yg=3,wg={"{":!0,"}":!0,"[":!0,"]":!0,";":!0,"=":!0,",":!0,"->":!0,"--":!0},Dg="",vg=0,mg="",bg="",kg=fg;function Ng(){vg++,mg=Dg.charAt(vg)}function Mg(){return Dg.charAt(vg+1)}var Rg=/[a-zA-Z_0-9.:#]/;function Gg(A){return Rg.test(A)}function Fg(A,e){if(A||(A={}),e)for(var t in e)e.hasOwnProperty(t)&&(A[t]=e[t]);return A}function xg(A,e,t){for(var i=e.split("."),r=A;i.length;){var n=i.shift();i.length?(r[n]||(r[n]={}),r=r[n]):r[n]=t}}function Sg(A,e){for(var t,i,r=null,n=[A],g=A;g.parent;)n.push(g.parent),g=g.parent;if(g.nodes)for(t=0,i=g.nodes.length;t<i;t++)if(e.id===g.nodes[t].id){r=g.nodes[t];break}for(r||(r={id:e.id},A.node&&(r.attr=Fg(r.attr,A.node))),t=n.length-1;t>=0;t--){var o,a=n[t];a.nodes||(a.nodes=[]),-1===ur(o=a.nodes).call(o,r)&&a.nodes.push(r)}e.attr&&(r.attr=Fg(r.attr,e.attr))}function Yg(A,e){if(A.edges||(A.edges=[]),A.edges.push(e),A.edge){var t=Fg({},A.edge);e.attr=Fg(t,e.attr)}}function _g(A,e,t,i,r){var n={from:e,to:t,type:i};return A.edge&&(n.attr=Fg({},A.edge)),n.attr=Fg(n.attr||{},r),null!=r&&r.hasOwnProperty("arrows")&&null!=r.arrows&&(n.arrows={to:{enabled:!0,type:r.arrows.type}},r.arrows=null),n}function Ug(){for(kg=fg,bg="";" "===mg||"\t"===mg||"\n"===mg||"\r"===mg;)Ng();do{var A=!1;if("#"===mg){for(var e=vg-1;" "===Dg.charAt(e)||"\t"===Dg.charAt(e);)e--;if("\n"===Dg.charAt(e)||""===Dg.charAt(e)){for(;""!=mg&&"\n"!=mg;)Ng();A=!0}}if("/"===mg&&"/"===Mg()){for(;""!=mg&&"\n"!=mg;)Ng();A=!0}if("/"===mg&&"*"===Mg()){for(;""!=mg;){if("*"===mg&&"/"===Mg()){Ng(),Ng();break}Ng()}A=!0}for(;" "===mg||"\t"===mg||"\n"===mg||"\r"===mg;)Ng()}while(A);if(""!==mg){var t=mg+Mg();if(wg[t])return kg=dg,bg=t,Ng(),void Ng();if(wg[mg])return kg=dg,bg=mg,void Ng();if(Gg(mg)||"-"===mg){for(bg+=mg,Ng();Gg(mg);)bg+=mg,Ng();return"false"===bg?bg=!1:"true"===bg?bg=!0:isNaN(Number(bg))||(bg=Number(bg)),void(kg=pg)}if('"'===mg){for(Ng();""!=mg&&('"'!=mg||'"'===mg&&'"'===Mg());)'"'===mg?(bg+=mg,Ng()):"\\"===mg&&"n"===Mg()?(bg+="\n",Ng()):bg+=mg,Ng();if('"'!=mg)throw Og('End of string " expected');return Ng(),void(kg=pg)}for(kg=yg;""!=mg;)bg+=mg,Ng();throw new SyntaxError('Syntax error in part "'+qg(bg,30)+'"')}kg=dg}function Lg(A){for(;""!==bg&&"}"!=bg;)Kg(A),";"===bg&&Ug()}function Kg(A){var e=Jg(A);if(e)Tg(A,e);else if(!function(A){if("node"===bg)return Ug(),A.node=Hg(),"node";if("edge"===bg)return Ug(),A.edge=Hg(),"edge";if("graph"===bg)return Ug(),A.graph=Hg(),"graph";return null}(A)){if(kg!=pg)throw Og("Identifier expected");var t=bg;if(Ug(),"="===bg){if(Ug(),kg!=pg)throw Og("Identifier expected");A[t]=bg,Ug()}else!function(A,e){var t={id:e},i=Hg();i&&(t.attr=i);Sg(A,t),Tg(A,e)}(A,t)}}function Jg(A){var e=null;if("subgraph"===bg&&((e={}).type="subgraph",Ug(),kg===pg&&(e.id=bg,Ug())),"{"===bg){if(Ug(),e||(e={}),e.parent=A,e.node=A.node,e.edge=A.edge,e.graph=A.graph,Lg(e),"}"!=bg)throw Og("Angle bracket } expected");Ug(),delete e.node,delete e.edge,delete e.graph,delete e.parent,A.subgraphs||(A.subgraphs=[]),A.subgraphs.push(e)}return e}function Tg(A,e){for(;"->"===bg||"--"===bg;){var t,i=bg;Ug();var r=Jg(A);if(r)t=r;else{if(kg!=pg)throw Og("Identifier or subgraph expected");Sg(A,{id:t=bg}),Ug()}Yg(A,_g(A,e,t,i,Hg())),e=t}}function Hg(){for(var A,e,t=null,i={dashed:!0,solid:!1,dotted:[1,5]},r={dot:"circle",box:"box",crow:"crow",curve:"curve",icurve:"inv_curve",normal:"triangle",inv:"inv_triangle",diamond:"diamond",tee:"bar",vee:"vee"},n=new Array,g=new Array;"["===bg;){for(Ug(),t={};""!==bg&&"]"!=bg;){if(kg!=pg)throw Og("Attribute name expected");var o=bg;if(Ug(),"="!=bg)throw Og("Equal sign = expected");if(Ug(),kg!=pg)throw Og("Attribute value expected");var a=bg;"style"===o&&(a=i[a]),"arrowhead"===o&&(o="arrows",a={to:{enabled:!0,type:r[a]}}),"arrowtail"===o&&(o="arrows",a={from:{enabled:!0,type:r[a]}}),n.push({attr:t,name:o,value:a}),g.push(o),Ug(),","==bg&&Ug()}if("]"!=bg)throw Og("Bracket ] expected");Ug()}if(Qg(g).call(g,"dir")){var I={arrows:{}};for(A=0;A<n.length;A++)if("arrows"===n[A].name)if(null!=n[A].value.to)I.arrows.to=A;else{if(null==n[A].value.from)throw Og("Invalid value of arrows");I.arrows.from=A}else"dir"===n[A].name&&(I.dir=A);var C,s,c=n[I.dir].value;if(!Qg(g).call(g,"arrows"))if("both"===c)n.push({attr:n[I.dir].attr,name:"arrows",value:{to:{enabled:!0}}}),I.arrows.to=n.length-1,n.push({attr:n[I.dir].attr,name:"arrows",value:{from:{enabled:!0}}}),I.arrows.from=n.length-1;else if("forward"===c)n.push({attr:n[I.dir].attr,name:"arrows",value:{to:{enabled:!0}}}),I.arrows.to=n.length-1;else if("back"===c)n.push({attr:n[I.dir].attr,name:"arrows",value:{from:{enabled:!0}}}),I.arrows.from=n.length-1;else{if("none"!==c)throw Og('Invalid dir type "'+c+'"');n.push({attr:n[I.dir].attr,name:"arrows",value:""}),I.arrows.to=n.length-1}if("both"===c)I.arrows.to&&I.arrows.from?(s=n[I.arrows.to].value.to.type,C=n[I.arrows.from].value.from.type,n[I.arrows.to]={attr:n[I.arrows.to].attr,name:n[I.arrows.to].name,value:{to:{enabled:!0,type:s},from:{enabled:!0,type:C}}},ng(n).call(n,I.arrows.from,1)):I.arrows.to?(s=n[I.arrows.to].value.to.type,C="arrow",n[I.arrows.to]={attr:n[I.arrows.to].attr,name:n[I.arrows.to].name,value:{to:{enabled:!0,type:s},from:{enabled:!0,type:C}}}):I.arrows.from&&(s="arrow",C=n[I.arrows.from].value.from.type,n[I.arrows.from]={attr:n[I.arrows.from].attr,name:n[I.arrows.from].name,value:{to:{enabled:!0,type:s},from:{enabled:!0,type:C}}});else if("back"===c)I.arrows.to&&I.arrows.from?(s="",C=n[I.arrows.from].value.from.type,n[I.arrows.from]={attr:n[I.arrows.from].attr,name:n[I.arrows.from].name,value:{to:{enabled:!0,type:s},from:{enabled:!0,type:C}}}):I.arrows.to?(s="",C="arrow",I.arrows.from=I.arrows.to,n[I.arrows.from]={attr:n[I.arrows.from].attr,name:n[I.arrows.from].name,value:{to:{enabled:!0,type:s},from:{enabled:!0,type:C}}}):I.arrows.from&&(s="",C=n[I.arrows.from].value.from.type,n[I.arrows.to]={attr:n[I.arrows.from].attr,name:n[I.arrows.from].name,value:{to:{enabled:!0,type:s},from:{enabled:!0,type:C}}}),n[I.arrows.from]={attr:n[I.arrows.from].attr,name:n[I.arrows.from].name,value:{from:{enabled:!0,type:n[I.arrows.from].value.from.type}}};else if("none"===c){var l;n[l=I.arrows.to?I.arrows.to:I.arrows.from]={attr:n[l].attr,name:n[l].name,value:""}}else{if("forward"!==c)throw Og('Invalid dir type "'+c+'"');I.arrows.to&&I.arrows.from||I.arrows.to?(s=n[I.arrows.to].value.to.type,C="",n[I.arrows.to]={attr:n[I.arrows.to].attr,name:n[I.arrows.to].name,value:{to:{enabled:!0,type:s},from:{enabled:!0,type:C}}}):I.arrows.from&&(s="arrow",C="",I.arrows.to=I.arrows.from,n[I.arrows.to]={attr:n[I.arrows.to].attr,name:n[I.arrows.to].name,value:{to:{enabled:!0,type:s},from:{enabled:!0,type:C}}}),n[I.arrows.to]={attr:n[I.arrows.to].attr,name:n[I.arrows.to].name,value:{to:{enabled:!0,type:n[I.arrows.to].value.to.type}}}}ng(n).call(n,I.dir,1)}if(Qg(g).call(g,"penwidth")){var B=[];for(e=n.length,A=0;A<e;A++)"width"!==n[A].name&&("penwidth"===n[A].name&&(n[A].name="width"),B.push(n[A]));n=B}for(e=n.length,A=0;A<e;A++)xg(n[A].attr,n[A].name,n[A].value);return t}function Og(A){return new SyntaxError(A+', got "'+qg(bg,30)+'" (char '+vg+")")}function qg(A,e){return A.length<=e?A:A.substr(0,27)+"..."}function jg(A,e,t){for(var i=e.split("."),r=i.pop(),n=A,g=0;g<i.length;g++){var o=i[g];o in n||(n[o]={}),n=n[o]}return n[r]=t,A}function Pg(A,e){var t={};for(var i in A)if(A.hasOwnProperty(i)){var r=e[i];Wr(r)?Yi(r).call(r,(function(e){jg(t,e,A[i])})):jg(t,"string"==typeof r?r:i,A[i])}return t}function Vg(A){var e,t=ug(A),i={nodes:[],edges:[],options:{}};t.nodes&&Yi(e=t.nodes).call(e,(function(A){var e={id:A.id,label:String(A.label||A.id)};Fg(e,Pg(A.attr,Eg)),e.image&&(e.shape="image"),i.nodes.push(e)}));if(t.edges){var r,n=function(A){var e={from:A.from,to:A.to};return Fg(e,Pg(A.attr,hg)),null==e.arrows&&"->"===A.type&&(e.arrows="to"),e};Yi(r=t.edges).call(r,(function(A){var e,t,r,g,o,a,I;(e=A.from instanceof Object?A.from.nodes:{id:A.from},t=A.to instanceof Object?A.to.nodes:{id:A.to},A.from instanceof Object&&A.from.edges)&&Yi(r=A.from.edges).call(r,(function(A){var e=n(A);i.edges.push(e)}));(o=t,a=function(e,t){var r=_g(i,e.id,t.id,A.type,A.attr),g=n(r);i.edges.push(g)},Wr(g=e)?Yi(g).call(g,(function(A){Wr(o)?Yi(o).call(o,(function(e){a(A,e)})):a(A,o)})):Wr(o)?Yi(o).call(o,(function(A){a(g,A)})):a(g,o),A.to instanceof Object&&A.to.edges)&&Yi(I=A.to.edges).call(I,(function(A){var e=n(A);i.edges.push(e)}))}))}return t.attr&&(i.options=t.attr),i}var zg=Object.freeze({__proto__:null,parseDOT:ug,DOTToGraph:Vg});function Zg(A,e){var t,i={edges:{inheritColor:!1},nodes:{fixed:!1,parseColor:!1}};null!=e&&(null!=e.fixed&&(i.nodes.fixed=e.fixed),null!=e.parseColor&&(i.nodes.parseColor=e.parseColor),null!=e.inheritColor&&(i.edges.inheritColor=e.inheritColor));var r=A.edges,n=Xr(r).call(r,(function(A){var e={from:A.source,id:A.id,to:A.target};return null!=A.attributes&&(e.attributes=A.attributes),null!=A.label&&(e.label=A.label),null!=A.attributes&&null!=A.attributes.title&&(e.title=A.attributes.title),"Directed"===A.type&&(e.arrows="to"),A.color&&!1===i.edges.inheritColor&&(e.color=A.color),e}));return{nodes:Xr(t=A.nodes).call(t,(function(A){var e={id:A.id,fixed:i.nodes.fixed&&null!=A.x&&null!=A.y};return null!=A.attributes&&(e.attributes=A.attributes),null!=A.label&&(e.label=A.label),null!=A.size&&(e.size=A.size),null!=A.attributes&&null!=A.attributes.title&&(e.title=A.attributes.title),null!=A.title&&(e.title=A.title),null!=A.x&&(e.x=A.x),null!=A.y&&(e.y=A.y),null!=A.color&&(!0===i.nodes.parseColor?e.color=A.color:e.color={background:A.color,border:A.color,highlight:{background:A.color,border:A.color},hover:{background:A.color,border:A.color}}),e})),edges:n}}var Xg=Object.freeze({__proto__:null,parseGephi:Zg});function Wg(A,e){void 0===e&&(e={});var t=e.insertAt;if(A&&"undefined"!=typeof document){var i=document.head||document.getElementsByTagName("head")[0],r=document.createElement("style");r.type="text/css","top"===t&&i.firstChild?i.insertBefore(r,i.firstChild):i.appendChild(r),r.styleSheet?r.styleSheet.cssText=A:r.appendChild(document.createTextNode(A))}}Wg(".vis-overlay {\n position: absolute;\n top: 0px;\n right: 0px;\n bottom: 0px;\n left: 0px;\n\n /* Must be displayed above for example selected Timeline items */\n z-index: 10;\n}\n\n.vis-active {\n box-shadow: 0 0 10px #86d5f8;\n}\n");var $g=r((function(A,e){A.exports=function(A){var e,t=A&&A.preventDefault||!1,i=A&&A.container||window,r={},n={keydown:{},keyup:{}},g={};for(e=97;e<=122;e++)g[String.fromCharCode(e)]={code:e-97+65,shift:!1};for(e=65;e<=90;e++)g[String.fromCharCode(e)]={code:e,shift:!0};for(e=0;e<=9;e++)g[""+e]={code:48+e,shift:!1};for(e=1;e<=12;e++)g["F"+e]={code:111+e,shift:!1};for(e=0;e<=9;e++)g["num"+e]={code:96+e,shift:!1};g["num*"]={code:106,shift:!1},g["num+"]={code:107,shift:!1},g["num-"]={code:109,shift:!1},g["num/"]={code:111,shift:!1},g["num."]={code:110,shift:!1},g.left={code:37,shift:!1},g.up={code:38,shift:!1},g.right={code:39,shift:!1},g.down={code:40,shift:!1},g.space={code:32,shift:!1},g.enter={code:13,shift:!1},g.shift={code:16,shift:void 0},g.esc={code:27,shift:!1},g.backspace={code:8,shift:!1},g.tab={code:9,shift:!1},g.ctrl={code:17,shift:!1},g.alt={code:18,shift:!1},g.delete={code:46,shift:!1},g.pageup={code:33,shift:!1},g.pagedown={code:34,shift:!1},g["="]={code:187,shift:!1},g["-"]={code:189,shift:!1},g["]"]={code:221,shift:!1},g["["]={code:219,shift:!1};var o=function(A){I(A,"keydown")},a=function(A){I(A,"keyup")},I=function(A,e){if(void 0!==n[e][A.keyCode]){for(var i=n[e][A.keyCode],r=0;r<i.length;r++)(void 0===i[r].shift||1==i[r].shift&&1==A.shiftKey||0==i[r].shift&&0==A.shiftKey)&&i[r].fn(A);1==t&&A.preventDefault()}};return r.bind=function(A,e,t){if(void 0===t&&(t="keydown"),void 0===g[A])throw new Error("unsupported key: "+A);void 0===n[t][g[A].code]&&(n[t][g[A].code]=[]),n[t][g[A].code].push({fn:e,shift:g[A].shift})},r.bindAll=function(A,e){for(var t in void 0===e&&(e="keydown"),g)g.hasOwnProperty(t)&&r.bind(t,A,e)},r.getKey=function(A){for(var e in g)if(g.hasOwnProperty(e)){if(1==A.shiftKey&&1==g[e].shift&&A.keyCode==g[e].code)return e;if(0==A.shiftKey&&0==g[e].shift&&A.keyCode==g[e].code)return e;if(A.keyCode==g[e].code&&"shift"==e)return e}return"unknown key, currently not supported"},r.unbind=function(A,e,t){if(void 0===t&&(t="keydown"),void 0===g[A])throw new Error("unsupported key: "+A);if(void 0!==e){var i=[],r=n[t][g[A].code];if(void 0!==r)for(var o=0;o<r.length;o++)r[o].fn==e&&r[o].shift==g[A].shift||i.push(n[t][g[A].code][o]);n[t][g[A].code]=i}else n[t][g[A].code]=[]},r.reset=function(){n={keydown:{},keyup:{}}},r.destroy=function(){n={keydown:{},keyup:{}},i.removeEventListener("keydown",o,!0),i.removeEventListener("keyup",a,!0)},i.addEventListener("keydown",o,!0),i.addEventListener("keyup",a,!0),r}}));
/*! 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 Ao(){return(Ao=Object.assign||function(A){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(A[i]=t[i])}return A}).apply(this,arguments)}function eo(A,e){A.prototype=Object.create(e.prototype),A.prototype.constructor=A,A.__proto__=e}function to(A){if(void 0===A)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return A}var io,ro="function"!=typeof Object.assign?function(A){if(null==A)throw new TypeError("Cannot convert undefined or null to object");for(var e=Object(A),t=1;t<arguments.length;t++){var i=arguments[t];if(null!=i)for(var r in i)i.hasOwnProperty(r)&&(e[r]=i[r])}return e}:Object.assign,no=["","webkit","Moz","MS","ms","o"],go="undefined"==typeof document?{style:{}}:document.createElement("div"),oo=Math.round,ao=Math.abs,Io=Date.now;function Co(A,e){for(var t,i,r=e[0].toUpperCase()+e.slice(1),n=0;n<no.length;){if((i=(t=no[n])?t+r:e)in A)return i;n++}}io="undefined"==typeof window?{}:window;var so=Co(go.style,"touchAction"),co=void 0!==so;var lo=function(){if(!co)return!1;var A={},e=io.CSS&&io.CSS.supports;return["auto","manipulation","pan-y","pan-x","pan-x pan-y","none"].forEach((function(t){return A[t]=!e||io.CSS.supports("touch-action",t)})),A}(),Bo="ontouchstart"in io,Qo=void 0!==Co(io,"PointerEvent"),uo=Bo&&/mobile|tablet|ip(ad|hone|od)|android/i.test(navigator.userAgent),Eo=["x","y"],ho=["clientX","clientY"];function fo(A,e,t){var i;if(A)if(A.forEach)A.forEach(e,t);else if(void 0!==A.length)for(i=0;i<A.length;)e.call(t,A[i],i,A),i++;else for(i in A)A.hasOwnProperty(i)&&e.call(t,A[i],i,A)}function po(A,e){return"function"==typeof A?A.apply(e&&e[0]||void 0,e):A}function yo(A,e){return A.indexOf(e)>-1}var wo=function(){function A(A,e){this.manager=A,this.set(e)}var e=A.prototype;return e.set=function(A){"compute"===A&&(A=this.compute()),co&&this.manager.element.style&&lo[A]&&(this.manager.element.style[so]=A),this.actions=A.toLowerCase().trim()},e.update=function(){this.set(this.manager.options.touchAction)},e.compute=function(){var A=[];return fo(this.manager.recognizers,(function(e){po(e.options.enable,[e])&&(A=A.concat(e.getTouchAction()))})),function(A){if(yo(A,"none"))return"none";var e=yo(A,"pan-x"),t=yo(A,"pan-y");return e&&t?"none":e||t?e?"pan-x":"pan-y":yo(A,"manipulation")?"manipulation":"auto"}(A.join(" "))},e.preventDefaults=function(A){var e=A.srcEvent,t=A.offsetDirection;if(this.manager.session.prevented)e.preventDefault();else{var i=this.actions,r=yo(i,"none")&&!lo.none,n=yo(i,"pan-y")&&!lo["pan-y"],g=yo(i,"pan-x")&&!lo["pan-x"];if(r){var o=1===A.pointers.length,a=A.distance<2,I=A.deltaTime<250;if(o&&a&&I)return}if(!g||!n)return r||n&&6&t||g&&24&t?this.preventSrc(e):void 0}},e.preventSrc=function(A){this.manager.session.prevented=!0,A.preventDefault()},A}();function Do(A,e){for(;A;){if(A===e)return!0;A=A.parentNode}return!1}function vo(A){var e=A.length;if(1===e)return{x:oo(A[0].clientX),y:oo(A[0].clientY)};for(var t=0,i=0,r=0;r<e;)t+=A[r].clientX,i+=A[r].clientY,r++;return{x:oo(t/e),y:oo(i/e)}}function mo(A){for(var e=[],t=0;t<A.pointers.length;)e[t]={clientX:oo(A.pointers[t].clientX),clientY:oo(A.pointers[t].clientY)},t++;return{timeStamp:Io(),pointers:e,center:vo(e),deltaX:A.deltaX,deltaY:A.deltaY}}function bo(A,e,t){t||(t=Eo);var i=e[t[0]]-A[t[0]],r=e[t[1]]-A[t[1]];return Math.sqrt(i*i+r*r)}function ko(A,e,t){t||(t=Eo);var i=e[t[0]]-A[t[0]],r=e[t[1]]-A[t[1]];return 180*Math.atan2(r,i)/Math.PI}function No(A,e){return A===e?1:ao(A)>=ao(e)?A<0?2:4:e<0?8:16}function Mo(A,e,t){return{x:e/A||0,y:t/A||0}}function Ro(A,e){var t=A.session,i=e.pointers,r=i.length;t.firstInput||(t.firstInput=mo(e)),r>1&&!t.firstMultiple?t.firstMultiple=mo(e):1===r&&(t.firstMultiple=!1);var n=t.firstInput,g=t.firstMultiple,o=g?g.center:n.center,a=e.center=vo(i);e.timeStamp=Io(),e.deltaTime=e.timeStamp-n.timeStamp,e.angle=ko(o,a),e.distance=bo(o,a),function(A,e){var t=e.center,i=A.offsetDelta||{},r=A.prevDelta||{},n=A.prevInput||{};1!==e.eventType&&4!==n.eventType||(r=A.prevDelta={x:n.deltaX||0,y:n.deltaY||0},i=A.offsetDelta={x:t.x,y:t.y}),e.deltaX=r.x+(t.x-i.x),e.deltaY=r.y+(t.y-i.y)}(t,e),e.offsetDirection=No(e.deltaX,e.deltaY);var I,C,s=Mo(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=s.x,e.overallVelocityY=s.y,e.overallVelocity=ao(s.x)>ao(s.y)?s.x:s.y,e.scale=g?(I=g.pointers,bo((C=i)[0],C[1],ho)/bo(I[0],I[1],ho)):1,e.rotation=g?function(A,e){return ko(e[1],e[0],ho)+ko(A[1],A[0],ho)}(g.pointers,i):0,e.maxPointers=t.prevInput?e.pointers.length>t.prevInput.maxPointers?e.pointers.length:t.prevInput.maxPointers:e.pointers.length,function(A,e){var t,i,r,n,g=A.lastInterval||e,o=e.timeStamp-g.timeStamp;if(8!==e.eventType&&(o>25||void 0===g.velocity)){var a=e.deltaX-g.deltaX,I=e.deltaY-g.deltaY,C=Mo(o,a,I);i=C.x,r=C.y,t=ao(C.x)>ao(C.y)?C.x:C.y,n=No(a,I),A.lastInterval=e}else t=g.velocity,i=g.velocityX,r=g.velocityY,n=g.direction;e.velocity=t,e.velocityX=i,e.velocityY=r,e.direction=n}(t,e);var c,l=A.element,B=e.srcEvent;Do(c=B.composedPath?B.composedPath()[0]:B.path?B.path[0]:B.target,l)&&(l=c),e.target=l}function Go(A,e,t){var i=t.pointers.length,r=t.changedPointers.length,n=1&e&&i-r==0,g=12&e&&i-r==0;t.isFirst=!!n,t.isFinal=!!g,n&&(A.session={}),t.eventType=e,Ro(A,t),A.emit("hammer.input",t),A.recognize(t),A.session.prevInput=t}function Fo(A){return A.trim().split(/\s+/g)}function xo(A,e,t){fo(Fo(e),(function(e){A.addEventListener(e,t,!1)}))}function So(A,e,t){fo(Fo(e),(function(e){A.removeEventListener(e,t,!1)}))}function Yo(A){var e=A.ownerDocument||A;return e.defaultView||e.parentWindow||window}var _o=function(){function A(A,e){var t=this;this.manager=A,this.callback=e,this.element=A.element,this.target=A.options.inputTarget,this.domHandler=function(e){po(A.options.enable,[A])&&t.handler(e)},this.init()}var e=A.prototype;return e.handler=function(){},e.init=function(){this.evEl&&xo(this.element,this.evEl,this.domHandler),this.evTarget&&xo(this.target,this.evTarget,this.domHandler),this.evWin&&xo(Yo(this.element),this.evWin,this.domHandler)},e.destroy=function(){this.evEl&&So(this.element,this.evEl,this.domHandler),this.evTarget&&So(this.target,this.evTarget,this.domHandler),this.evWin&&So(Yo(this.element),this.evWin,this.domHandler)},A}();function Uo(A,e,t){if(A.indexOf&&!t)return A.indexOf(e);for(var i=0;i<A.length;){if(t&&A[i][t]==e||!t&&A[i]===e)return i;i++}return-1}var Lo={pointerdown:1,pointermove:2,pointerup:4,pointercancel:8,pointerout:8},Ko={2:"touch",3:"pen",4:"mouse",5:"kinect"},Jo="pointerdown",To="pointermove pointerup pointercancel";io.MSPointerEvent&&!io.PointerEvent&&(Jo="MSPointerDown",To="MSPointerMove MSPointerUp MSPointerCancel");var Ho=function(A){function e(){var t,i=e.prototype;return i.evEl=Jo,i.evWin=To,(t=A.apply(this,arguments)||this).store=t.manager.session.pointerEvents=[],t}return eo(e,A),e.prototype.handler=function(A){var e=this.store,t=!1,i=A.type.toLowerCase().replace("ms",""),r=Lo[i],n=Ko[A.pointerType]||A.pointerType,g="touch"===n,o=Uo(e,A.pointerId,"pointerId");1&r&&(0===A.button||g)?o<0&&(e.push(A),o=e.length-1):12&r&&(t=!0),o<0||(e[o]=A,this.callback(this.manager,r,{pointers:e,changedPointers:[A],pointerType:n,srcEvent:A}),t&&e.splice(o,1))},e}(_o);function Oo(A){return Array.prototype.slice.call(A,0)}function qo(A,e,t){for(var i=[],r=[],n=0;n<A.length;){var g=e?A[n][e]:A[n];Uo(r,g)<0&&i.push(A[n]),r[n]=g,n++}return t&&(i=e?i.sort((function(A,t){return A[e]>t[e]})):i.sort()),i}var jo={touchstart:1,touchmove:2,touchend:4,touchcancel:8},Po=function(A){function e(){var t;return e.prototype.evTarget="touchstart touchmove touchend touchcancel",(t=A.apply(this,arguments)||this).targetIds={},t}return eo(e,A),e.prototype.handler=function(A){var e=jo[A.type],t=Vo.call(this,A,e);t&&this.callback(this.manager,e,{pointers:t[0],changedPointers:t[1],pointerType:"touch",srcEvent:A})},e}(_o);function Vo(A,e){var t,i,r=Oo(A.touches),n=this.targetIds;if(3&e&&1===r.length)return n[r[0].identifier]=!0,[r,r];var g=Oo(A.changedTouches),o=[],a=this.target;if(i=r.filter((function(A){return Do(A.target,a)})),1===e)for(t=0;t<i.length;)n[i[t].identifier]=!0,t++;for(t=0;t<g.length;)n[g[t].identifier]&&o.push(g[t]),12&e&&delete n[g[t].identifier],t++;return o.length?[qo(i.concat(o),"identifier",!0),o]:void 0}var zo={mousedown:1,mousemove:2,mouseup:4},Zo=function(A){function e(){var t,i=e.prototype;return i.evEl="mousedown",i.evWin="mousemove mouseup",(t=A.apply(this,arguments)||this).pressed=!1,t}return eo(e,A),e.prototype.handler=function(A){var e=zo[A.type];1&e&&0===A.button&&(this.pressed=!0),2&e&&1!==A.which&&(e=4),this.pressed&&(4&e&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[A],changedPointers:[A],pointerType:"mouse",srcEvent:A}))},e}(_o);function Xo(A){var e=A.changedPointers[0];if(e.identifier===this.primaryTouch){var t={x:e.clientX,y:e.clientY},i=this.lastTouches;this.lastTouches.push(t);setTimeout((function(){var A=i.indexOf(t);A>-1&&i.splice(A,1)}),2500)}}function Wo(A,e){1&A?(this.primaryTouch=e.changedPointers[0].identifier,Xo.call(this,e)):12&A&&Xo.call(this,e)}function $o(A){for(var e=A.srcEvent.clientX,t=A.srcEvent.clientY,i=0;i<this.lastTouches.length;i++){var r=this.lastTouches[i],n=Math.abs(e-r.x),g=Math.abs(t-r.y);if(n<=25&&g<=25)return!0}return!1}var Aa=function(){return function(A){function e(e,t){var i;return(i=A.call(this,e,t)||this).handler=function(A,e,t){var r="touch"===t.pointerType,n="mouse"===t.pointerType;if(!(n&&t.sourceCapabilities&&t.sourceCapabilities.firesTouchEvents)){if(r)Wo.call(to(to(i)),e,t);else if(n&&$o.call(to(to(i)),t))return;i.callback(A,e,t)}},i.touch=new Po(i.manager,i.handler),i.mouse=new Zo(i.manager,i.handler),i.primaryTouch=null,i.lastTouches=[],i}return eo(e,A),e.prototype.destroy=function(){this.touch.destroy(),this.mouse.destroy()},e}(_o)}();function ea(A,e,t){return!!Array.isArray(A)&&(fo(A,t[e],t),!0)}var ta=1;function ia(A,e){var t=e.manager;return t?t.get(A):A}function ra(A){return 16&A?"cancel":8&A?"end":4&A?"move":2&A?"start":""}var na=function(){function A(A){void 0===A&&(A={}),this.options=Ao({enable:!0},A),this.id=ta++,this.manager=null,this.state=1,this.simultaneous={},this.requireFail=[]}var e=A.prototype;return e.set=function(A){return ro(this.options,A),this.manager&&this.manager.touchAction.update(),this},e.recognizeWith=function(A){if(ea(A,"recognizeWith",this))return this;var e=this.simultaneous;return e[(A=ia(A,this)).id]||(e[A.id]=A,A.recognizeWith(this)),this},e.dropRecognizeWith=function(A){return ea(A,"dropRecognizeWith",this)||(A=ia(A,this),delete this.simultaneous[A.id]),this},e.requireFailure=function(A){if(ea(A,"requireFailure",this))return this;var e=this.requireFail;return-1===Uo(e,A=ia(A,this))&&(e.push(A),A.requireFailure(this)),this},e.dropRequireFailure=function(A){if(ea(A,"dropRequireFailure",this))return this;A=ia(A,this);var e=Uo(this.requireFail,A);return e>-1&&this.requireFail.splice(e,1),this},e.hasRequireFailures=function(){return this.requireFail.length>0},e.canRecognizeWith=function(A){return!!this.simultaneous[A.id]},e.emit=function(A){var e=this,t=this.state;function i(t){e.manager.emit(t,A)}t<8&&i(e.options.event+ra(t)),i(e.options.event),A.additionalEvent&&i(A.additionalEvent),t>=8&&i(e.options.event+ra(t))},e.tryEmit=function(A){if(this.canEmit())return this.emit(A);this.state=32},e.canEmit=function(){for(var A=0;A<this.requireFail.length;){if(!(33&this.requireFail[A].state))return!1;A++}return!0},e.recognize=function(A){var e=ro({},A);if(!po(this.options.enable,[this,e]))return this.reset(),void(this.state=32);56&this.state&&(this.state=1),this.state=this.process(e),30&this.state&&this.tryEmit(e)},e.process=function(A){},e.getTouchAction=function(){},e.reset=function(){},A}(),ga=function(A){function e(e){var t;return void 0===e&&(e={}),(t=A.call(this,Ao({event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},e))||this).pTime=!1,t.pCenter=!1,t._timer=null,t._input=null,t.count=0,t}eo(e,A);var t=e.prototype;return t.getTouchAction=function(){return["manipulation"]},t.process=function(A){var e=this,t=this.options,i=A.pointers.length===t.pointers,r=A.distance<t.threshold,n=A.deltaTime<t.time;if(this.reset(),1&A.eventType&&0===this.count)return this.failTimeout();if(r&&n&&i){if(4!==A.eventType)return this.failTimeout();var g=!this.pTime||A.timeStamp-this.pTime<t.interval,o=!this.pCenter||bo(this.pCenter,A.center)<t.posThreshold;if(this.pTime=A.timeStamp,this.pCenter=A.center,o&&g?this.count+=1:this.count=1,this._input=A,0===this.count%t.taps)return this.hasRequireFailures()?(this._timer=setTimeout((function(){e.state=8,e.tryEmit()}),t.interval),2):8}return 32},t.failTimeout=function(){var A=this;return this._timer=setTimeout((function(){A.state=32}),this.options.interval),32},t.reset=function(){clearTimeout(this._timer)},t.emit=function(){8===this.state&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))},e}(na),oa=function(A){function e(e){return void 0===e&&(e={}),A.call(this,Ao({pointers:1},e))||this}eo(e,A);var t=e.prototype;return t.attrTest=function(A){var e=this.options.pointers;return 0===e||A.pointers.length===e},t.process=function(A){var e=this.state,t=A.eventType,i=6&e,r=this.attrTest(A);return i&&(8&t||!r)?16|e:i||r?4&t?8|e:2&e?4|e:2:32},e}(na);function aa(A){return 16===A?"down":8===A?"up":2===A?"left":4===A?"right":""}var Ia=function(A){function e(e){var t;return void 0===e&&(e={}),(t=A.call(this,Ao({event:"pan",threshold:10,pointers:1,direction:30},e))||this).pX=null,t.pY=null,t}eo(e,A);var t=e.prototype;return t.getTouchAction=function(){var A=this.options.direction,e=[];return 6&A&&e.push("pan-y"),24&A&&e.push("pan-x"),e},t.directionTest=function(A){var e=this.options,t=!0,i=A.distance,r=A.direction,n=A.deltaX,g=A.deltaY;return r&e.direction||(6&e.direction?(r=0===n?1:n<0?2:4,t=n!==this.pX,i=Math.abs(A.deltaX)):(r=0===g?1:g<0?8:16,t=g!==this.pY,i=Math.abs(A.deltaY))),A.direction=r,t&&i>e.threshold&&r&e.direction},t.attrTest=function(A){return oa.prototype.attrTest.call(this,A)&&(2&this.state||!(2&this.state)&&this.directionTest(A))},t.emit=function(e){this.pX=e.deltaX,this.pY=e.deltaY;var t=aa(e.direction);t&&(e.additionalEvent=this.options.event+t),A.prototype.emit.call(this,e)},e}(oa),Ca=function(A){function e(e){return void 0===e&&(e={}),A.call(this,Ao({event:"swipe",threshold:10,velocity:.3,direction:30,pointers:1},e))||this}eo(e,A);var t=e.prototype;return t.getTouchAction=function(){return Ia.prototype.getTouchAction.call(this)},t.attrTest=function(e){var t,i=this.options.direction;return 30&i?t=e.overallVelocity:6&i?t=e.overallVelocityX:24&i&&(t=e.overallVelocityY),A.prototype.attrTest.call(this,e)&&i&e.offsetDirection&&e.distance>this.options.threshold&&e.maxPointers===this.options.pointers&&ao(t)>this.options.velocity&&4&e.eventType},t.emit=function(A){var e=aa(A.offsetDirection);e&&this.manager.emit(this.options.event+e,A),this.manager.emit(this.options.event,A)},e}(oa),sa=function(A){function e(e){return void 0===e&&(e={}),A.call(this,Ao({event:"pinch",threshold:0,pointers:2},e))||this}eo(e,A);var t=e.prototype;return t.getTouchAction=function(){return["none"]},t.attrTest=function(e){return A.prototype.attrTest.call(this,e)&&(Math.abs(e.scale-1)>this.options.threshold||2&this.state)},t.emit=function(e){if(1!==e.scale){var t=e.scale<1?"in":"out";e.additionalEvent=this.options.event+t}A.prototype.emit.call(this,e)},e}(oa),ca=function(A){function e(e){return void 0===e&&(e={}),A.call(this,Ao({event:"rotate",threshold:0,pointers:2},e))||this}eo(e,A);var t=e.prototype;return t.getTouchAction=function(){return["none"]},t.attrTest=function(e){return A.prototype.attrTest.call(this,e)&&(Math.abs(e.rotation)>this.options.threshold||2&this.state)},e}(oa),la=function(A){function e(e){var t;return void 0===e&&(e={}),(t=A.call(this,Ao({event:"press",pointers:1,time:251,threshold:9},e))||this)._timer=null,t._input=null,t}eo(e,A);var t=e.prototype;return t.getTouchAction=function(){return["auto"]},t.process=function(A){var e=this,t=this.options,i=A.pointers.length===t.pointers,r=A.distance<t.threshold,n=A.deltaTime>t.time;if(this._input=A,!r||!i||12&A.eventType&&!n)this.reset();else if(1&A.eventType)this.reset(),this._timer=setTimeout((function(){e.state=8,e.tryEmit()}),t.time);else if(4&A.eventType)return 8;return 32},t.reset=function(){clearTimeout(this._timer)},t.emit=function(A){8===this.state&&(A&&4&A.eventType?this.manager.emit(this.options.event+"up",A):(this._input.timeStamp=Io(),this.manager.emit(this.options.event,this._input)))},e}(na),Ba={domEvents:!1,touchAction:"compute",enable:!0,inputTarget:null,inputClass:null,cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},Qa=[[ca,{enable:!1}],[sa,{enable:!1},["rotate"]],[Ca,{direction:6}],[Ia,{direction:6},["swipe"]],[ga],[ga,{event:"doubletap",taps:2},["tap"]],[la]];function ua(A,e){var t,i=A.element;i.style&&(fo(A.options.cssProps,(function(r,n){t=Co(i.style,n),e?(A.oldCssProps[t]=i.style[t],i.style[t]=r):i.style[t]=A.oldCssProps[t]||""})),e||(A.oldCssProps={}))}var Ea=function(){function A(A,e){var t,i=this;this.options=ro({},Ba,e||{}),this.options.inputTarget=this.options.inputTarget||A,this.handlers={},this.session={},this.recognizers=[],this.oldCssProps={},this.element=A,this.input=new((t=this).options.inputClass||(Qo?Ho:uo?Po:Bo?Aa:Zo))(t,Go),this.touchAction=new wo(this,this.options.touchAction),ua(this,!0),fo(this.options.recognizers,(function(A){var e=i.add(new A[0](A[1]));A[2]&&e.recognizeWith(A[2]),A[3]&&e.requireFailure(A[3])}),this)}var e=A.prototype;return e.set=function(A){return ro(this.options,A),A.touchAction&&this.touchAction.update(),A.inputTarget&&(this.input.destroy(),this.input.target=A.inputTarget,this.input.init()),this},e.stop=function(A){this.session.stopped=A?2:1},e.recognize=function(A){var e=this.session;if(!e.stopped){var t;this.touchAction.preventDefaults(A);var i=this.recognizers,r=e.curRecognizer;(!r||r&&8&r.state)&&(e.curRecognizer=null,r=null);for(var n=0;n<i.length;)t=i[n],2===e.stopped||r&&t!==r&&!t.canRecognizeWith(r)?t.reset():t.recognize(A),!r&&14&t.state&&(e.curRecognizer=t,r=t),n++}},e.get=function(A){if(A instanceof na)return A;for(var e=this.recognizers,t=0;t<e.length;t++)if(e[t].options.event===A)return e[t];return null},e.add=function(A){if(ea(A,"add",this))return this;var e=this.get(A.options.event);return e&&this.remove(e),this.recognizers.push(A),A.manager=this,this.touchAction.update(),A},e.remove=function(A){if(ea(A,"remove",this))return this;var e=this.get(A);if(A){var t=this.recognizers,i=Uo(t,e);-1!==i&&(t.splice(i,1),this.touchAction.update())}return this},e.on=function(A,e){if(void 0===A||void 0===e)return this;var t=this.handlers;return fo(Fo(A),(function(A){t[A]=t[A]||[],t[A].push(e)})),this},e.off=function(A,e){if(void 0===A)return this;var t=this.handlers;return fo(Fo(A),(function(A){e?t[A]&&t[A].splice(Uo(t[A],e),1):delete t[A]})),this},e.emit=function(A,e){this.options.domEvents&&function(A,e){var t=document.createEvent("Event");t.initEvent(A,!0,!0),t.gesture=e,e.target.dispatchEvent(t)}(A,e);var t=this.handlers[A]&&this.handlers[A].slice();if(t&&t.length){e.type=A,e.preventDefault=function(){e.srcEvent.preventDefault()};for(var i=0;i<t.length;)t[i](e),i++}},e.destroy=function(){this.element&&ua(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null},A}(),ha={touchstart:1,touchmove:2,touchend:4,touchcancel:8},fa=function(A){function e(){var t,i=e.prototype;return i.evTarget="touchstart",i.evWin="touchstart touchmove touchend touchcancel",(t=A.apply(this,arguments)||this).started=!1,t}return eo(e,A),e.prototype.handler=function(A){var e=ha[A.type];if(1===e&&(this.started=!0),this.started){var t=da.call(this,A,e);12&e&&t[0].length-t[1].length==0&&(this.started=!1),this.callback(this.manager,e,{pointers:t[0],changedPointers:t[1],pointerType:"touch",srcEvent:A})}},e}(_o);function da(A,e){var t=Oo(A.touches),i=Oo(A.changedTouches);return 12&e&&(t=qo(t.concat(i),"identifier",!0)),[t,i]}function pa(A,e,t){var i="DEPRECATED METHOD: "+e+"\n"+t+" AT \n";return function(){var e=new Error("get-stack-trace"),t=e&&e.stack?e.stack.replace(/^[^\(]+?[\n$]/gm,"").replace(/^\s+at\s+/gm,"").replace(/^Object.<anonymous>\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",r=window.console&&(window.console.warn||window.console.log);return r&&r.call(window.console,i,t),A.apply(this,arguments)}}var ya=pa((function(A,e,t){for(var i=Object.keys(e),r=0;r<i.length;)(!t||t&&void 0===A[i[r]])&&(A[i[r]]=e[i[r]]),r++;return A}),"extend","Use `assign`."),wa=pa((function(A,e){return ya(A,e,!0)}),"merge","Use `assign`.");function Da(A,e,t){var i,r=e.prototype;(i=A.prototype=Object.create(r)).constructor=A,i._super=r,t&&ro(i,t)}function va(A,e){return function(){return A.apply(e,arguments)}}var ma=function(){var A=function(A,e){return void 0===e&&(e={}),new Ea(A,Ao({recognizers:Qa.concat()},e))};return A.VERSION="2.0.17-rc",A.DIRECTION_ALL=30,A.DIRECTION_DOWN=16,A.DIRECTION_LEFT=2,A.DIRECTION_RIGHT=4,A.DIRECTION_UP=8,A.DIRECTION_HORIZONTAL=6,A.DIRECTION_VERTICAL=24,A.DIRECTION_NONE=1,A.DIRECTION_DOWN=16,A.INPUT_START=1,A.INPUT_MOVE=2,A.INPUT_END=4,A.INPUT_CANCEL=8,A.STATE_POSSIBLE=1,A.STATE_BEGAN=2,A.STATE_CHANGED=4,A.STATE_ENDED=8,A.STATE_RECOGNIZED=8,A.STATE_CANCELLED=16,A.STATE_FAILED=32,A.Manager=Ea,A.Input=_o,A.TouchAction=wo,A.TouchInput=Po,A.MouseInput=Zo,A.PointerEventInput=Ho,A.TouchMouseInput=Aa,A.SingleTouchInput=fa,A.Recognizer=na,A.AttrRecognizer=oa,A.Tap=ga,A.Pan=Ia,A.Swipe=Ca,A.Pinch=sa,A.Rotate=ca,A.Press=la,A.on=xo,A.off=So,A.each=fo,A.merge=wa,A.extend=ya,A.bindFn=va,A.assign=ro,A.inherit=Da,A.bindFn=va,A.prefixed=Co,A.toArray=Oo,A.inArray=Uo,A.uniqueArray=qo,A.splitStr=Fo,A.boolOrFn=po,A.hasParent=Do,A.addEventListeners=xo,A.removeEventListeners=So,A.defaults=ro({},Ba,{preset:Qa}),A}(),ba=r((function(A){if("undefined"!=typeof window){var e=window.Hammer||ma;A.exports=e}else A.exports=function(){return{on:A=function(){},off:A,destroy:A,emit:A,get:function(e){return{set:A}}};var A}}));function ka(A){var e,t,i=this;this.active=!1,this.dom={container:A},this.dom.overlay=document.createElement("div"),this.dom.overlay.className="vis-overlay",this.dom.container.appendChild(this.dom.overlay),this.hammer=ba(this.dom.overlay),this.hammer.on("tap",$(e=this._onTapOverlay).call(e,this));var r=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];Yi(r).call(r,(function(A){i.hammer.on(A,(function(A){A.srcEvent.stopPropagation()}))})),document&&document.body&&(this.onClick=function(e){(function(A,e){for(;A;){if(A===e)return!0;A=A.parentNode}return!1})(e.target,A)||i.deactivate()},document.body.addEventListener("click",this.onClick)),void 0!==this.keycharm&&this.keycharm.destroy(),this.keycharm=$g(),this.escListener=$(t=this.deactivate).call(t,this)}bA(ka.prototype),ka.current=null,ka.prototype.destroy=function(){this.deactivate(),this.dom.overlay.parentNode.removeChild(this.dom.overlay),this.onClick&&document.body.removeEventListener("click",this.onClick),void 0!==this.keycharm&&this.keycharm.destroy(),this.keycharm=null,this.hammer.destroy(),this.hammer=null},ka.prototype.activate=function(){var A,e,t,i,r;ka.current&&ka.current.deactivate(),ka.current=this,this.active=!0,this.dom.overlay.style.display="none",e=this.dom.container,t="vis-active",i=e.className.split(" "),r=t.split(" "),i=sn(i).call(i,nr(r).call(r,(function(A){return ur(i).call(i,A)<0}))),e.className=i.join(" "),this.emit("change"),this.emit("activate"),$(A=this.keycharm).call(A,"esc",this.escListener)},ka.prototype.deactivate=function(){var A,e,t,i;this.active=!1,this.dom.overlay.style.display="block",A=this.dom.container,e="vis-active",t=A.className.split(" "),i=e.split(" "),t=nr(t).call(t,(function(A){return ur(i).call(i,A)<0})),A.className=t.join(" "),this.keycharm.unbind("esc",this.escListener),this.emit("change"),this.emit("deactivate")},ka.prototype._onTapOverlay=function(A){this.activate(),A.srcEvent.stopPropagation()};var Na=Object.freeze({__proto__:null,en:{addDescription:"Click in an empty space to place a new node.",addEdge:"Add Edge",addNode:"Add Node",back:"Back",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"},de:{addDescription:"Klicke auf eine freie Stelle, um einen neuen Knoten zu plazieren.",addEdge:"Kante hinzufügen",addNode:"Knoten hinzufügen",back:"Zurück",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"},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",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"},it:{addDescription:"Clicca per aggiungere un nuovo nodo",addEdge:"Aggiungi un vertice",addNode:"Aggiungi un nodo",back:"Indietro",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",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",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:"Назад",createEdgeError:"Невозможно соединить ребра в кластер.",del:"Удалить выбранное",deleteClusterError:"Кластеры не могут быть удалены",edgeDescription:"Кликните на узел и протяните ребро к другому узлу, чтобы соединить их.",edit:"Редактировать",editClusterError:"Кластеры недоступны для редактирования.",editEdge:"Редактировать ребро",editEdgeDescription:"Кликните на контрольные точки и перетащите их в узел, чтобы подключиться к нему.",editNode:"Редактировать узел"},cn:{addDescription:"单击空白处放置新节点。",addEdge:"添加连接线",addNode:"添加节点",back:"返回",createEdgeError:"无法将连接线连接到群集。",del:"删除选定",deleteClusterError:"无法删除群集。",edgeDescription:"单击某个节点并将该连接线拖动到另一个节点以连接它们。",edit:"编辑",editClusterError:"无法编辑群集。",editEdge:"编辑连接线",editEdgeDescription:"单击控制节点并将它们拖到节点上连接。",editNode:"编辑节点"},uk:{addDescription:"Kлікніть на вільне місце, щоб додати новий вузол.",addEdge:"Додати край",addNode:"Додати вузол",back:"Назад",createEdgeError:"Не можливо об'єднати краї в групу.",del:"Видалити обране",deleteClusterError:"Групи не можуть бути видалені.",edgeDescription:"Клікніть на вузол і перетягніть край до іншого вузла, щоб їх з'єднати.",edit:"Редагувати",editClusterError:"Групи недоступні для редагування.",editEdge:"Редагувати край",editEdgeDescription:"Клікніть на контрольні точки і перетягніть їх у вузол, щоб підключитися до нього.",editNode:"Редагувати вузол"},fr:{addDescription:"Cliquez dans un endroit vide pour placer un nœud.",addEdge:"Ajouter un lien",addNode:"Ajouter un nœud",back:"Retour",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"},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",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"}});var Ma=function(A,e){if(!(A instanceof e))throw new TypeError("Cannot call a class as a function")};function Ra(A,e){for(var t=0;t<e.length;t++){var i=e[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Bi(A,i.key,i)}}var Ga=function(A,e,t){return e&&Ra(A.prototype,e),t&&Ra(A,t),A},Fa=function(){function A(){Ma(this,A),this.NUM_ITERATIONS=4,this.image=new Image,this.canvas=document.createElement("canvas")}return Ga(A,[{key:"init",value:function(){if(!this.initialized()){this.src=this.image.src;var A=this.image.width,e=this.image.height;this.width=A,this.height=e;var t=Math.floor(e/2),i=Math.floor(e/4),r=Math.floor(e/8),n=Math.floor(e/16),g=Math.floor(A/2),o=Math.floor(A/4),a=Math.floor(A/8),I=Math.floor(A/16);this.canvas.width=3*o,this.canvas.height=t,this.coordinates=[[0,0,g,t],[g,0,o,i],[g,i,a,r],[5*a,i,I,n]],this._fillMipMap()}}},{key:"initialized",value:function(){return void 0!==this.coordinates}},{key:"_fillMipMap",value:function(){var A=this.canvas.getContext("2d"),e=this.coordinates[0];A.drawImage(this.image,e[0],e[1],e[2],e[3]);for(var t=1;t<this.NUM_ITERATIONS;t++){var i=this.coordinates[t-1],r=this.coordinates[t];A.drawImage(this.canvas,i[0],i[1],i[2],i[3],r[0],r[1],r[2],r[3])}}},{key:"drawImageAtPosition",value:function(A,e,t,i,r,n){if(this.initialized())if(e>2){e*=.5;for(var g=0;e>2&&g<this.NUM_ITERATIONS;)e*=.5,g+=1;g>=this.NUM_ITERATIONS&&(g=this.NUM_ITERATIONS-1);var o=this.coordinates[g];A.drawImage(this.canvas,o[0],o[1],o[2],o[3],t,i,r,n)}else A.drawImage(this.image,t,i,r,n)}}]),A}(),xa=function(){function A(e){Ma(this,A),this.images={},this.imageBroken={},this.callback=e}return Ga(A,[{key:"_tryloadBrokenUrl",value:function(A,e,t){void 0!==A&&void 0!==t&&(void 0!==e?(t.image.onerror=function(){console.error("Could not load brokenImage:",e)},t.image.src=e):console.warn("No broken url image defined"))}},{key:"_redrawWithImage",value:function(A){this.callback&&this.callback(A)}},{key:"load",value:function(A,e){var t=this,i=this.images[A];if(i)return i;var r=new Fa;return this.images[A]=r,r.image.onload=function(){t._fixImageCoordinates(r.image),r.init(),t._redrawWithImage(r)},r.image.onerror=function(){console.error("Could not load image:",A),t._tryloadBrokenUrl(A,e,r)},r.image.src=A,r}},{key:"_fixImageCoordinates",value:function(A){0===A.width&&(document.body.appendChild(A),A.width=A.offsetWidth,A.height=A.offsetHeight,document.body.removeChild(A))}}]),A}(),Sa=function(){function A(){Ma(this,A),this.clear(),this.defaultIndex=0,this.groupsArray=[],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},dA(this.options,this.defaultOptions)}return Ga(A,[{key:"setOptions",value:function(A){var e=["useDefaultGroups"];if(void 0!==A)for(var t in A)if(Object.prototype.hasOwnProperty.call(A,t)&&-1===ur(e).call(e,t)){var i=A[t];this.add(t,i)}}},{key:"clear",value:function(){this.groups={},this.groupsArray=[]}},{key:"get",value:function(A){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],t=this.groups[A];if(void 0===t&&e)if(!1===this.options.useDefaultGroups&&this.groupsArray.length>0){var i=this.groupIndex%this.groupsArray.length;this.groupIndex++,(t={}).color=this.groups[this.groupsArray[i]],this.groups[A]=t}else{var r=this.defaultIndex%this.defaultGroups.length;this.defaultIndex++,(t={}).color=this.defaultGroups[r],this.groups[A]=t}return t}},{key:"add",value:function(A,e){return this.groups[A]=e,this.groupsArray.push(A),e}}]),A}(),Ya=[].slice,_a=/MSIE .\./.test(Pi),Ua=function(A){return function(e,t){var i=arguments.length>2,r=i?Ya.call(arguments,2):void 0;return A(i?function(){("function"==typeof e?e:Function(e)).apply(this,r)}:e,t)}};q({global:!0,bind:!0,forced:_a},{setTimeout:Ua(g.setTimeout),setInterval:Ua(g.setInterval)});var La=Y.setTimeout,Ka=qe.some,Ja=Di("some"),Ta=ki("some");q({target:"Array",proto:!0,forced:!Ja||!Ta},{some:function(A){return Ka(this,A,arguments.length>1?arguments[1]:void 0)}});var Ha=Z("Array").some,Oa=Array.prototype,qa=function(A){var e=A.some;return A===Oa||A instanceof Array&&e===Oa.some?Ha:e},ja=g.isFinite,Pa=Number.isFinite||function(A){return"number"==typeof A&&ja(A)};q({target:"Number",stat:!0},{isFinite:Pa});var Va=Y.Number.isFinite;q({target:"Number",stat:!0},{isNaN:function(A){return A!=A}});var za=Y.Number.isNaN;var Za=function(A){if(void 0===A)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return A},Xa=FA("Reflect","construct"),Wa=o((function(){function A(){}return!(Xa((function(){}),[],A)instanceof A)})),$a=!o((function(){Xa((function(){}))})),AI=Wa||$a;q({target:"Reflect",stat:!0,forced:AI,sham:AI},{construct:function(A,e){_(A),L(e);var t=arguments.length<3?A:_(arguments[2]);if($a&&!Wa)return Xa(A,e,t);if(A==t){switch(e.length){case 0:return new A;case 1:return new A(e[0]);case 2:return new A(e[0],e[1]);case 3:return new A(e[0],e[1],e[2]);case 4:return new A(e[0],e[1],e[2],e[3])}var i=[null];return i.push.apply(i,e),new(z.apply(A,i))}var r=t.prototype,n=ne(f(r)?r:Object.prototype),g=Function.apply.call(A,n,e);return f(g)?g:n}});var eI=Y.Reflect.construct,tI=Z("Array").entries,iI=Array.prototype,rI={DOMTokenList:!0,NodeList:!0},nI=function(A){var e=A.entries;return A===iI||A instanceof Array&&e===iI.entries||rI.hasOwnProperty(ye(A))?tI:e},gI=FA("JSON","stringify"),oI=/[\uD800-\uDFFF]/g,aI=/^[\uD800-\uDBFF]$/,II=/^[\uDC00-\uDFFF]$/,CI=function(A,e,t){var i=t.charAt(e-1),r=t.charAt(e+1);return aI.test(A)&&!II.test(r)||II.test(A)&&!aI.test(i)?"\\u"+A.charCodeAt(0).toString(16):A},sI=o((function(){return'"\\udf06\\ud834"'!==gI("\udf06\ud834")||'"\\udead"'!==gI("\udead")}));gI&&q({target:"JSON",stat:!0,forced:sI},{stringify:function(A,e,t){var i=gI.apply(null,arguments);return"string"==typeof i?i.replace(oI,CI):i}}),Y.JSON||(Y.JSON={stringify:JSON.stringify});var cI=function(A,e,t){return Y.JSON.stringify.apply(null,arguments)},lI=Z("Array").values,BI=Array.prototype,QI={DOMTokenList:!0,NodeList:!0},uI=function(A){var e=A.values;return A===BI||A instanceof Array&&e===BI.values||QI.hasOwnProperty(ye(A))?lI:e},EI=Z("Array").keys,hI=Array.prototype,fI={DOMTokenList:!0,NodeList:!0},dI=function(A){var e=A.keys;return A===hI||A instanceof Array&&e===hI.keys||fI.hasOwnProperty(ye(A))?EI:e},pI=ci;q({target:"Object",stat:!0},{setPrototypeOf:xt});var yI=Y.Object.setPrototypeOf,wI=r((function(A){function e(t,i){return A.exports=e=yI||function(A,e){return A.__proto__=e,A},e(t,i)}A.exports=e}));var DI=function(A,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");A.prototype=pI(e&&e.prototype,{constructor:{value:A,writable:!0,configurable:!0}}),e&&wI(A,e)};var vI=function(A,e){return!e||"object"!==en(e)&&"function"!=typeof e?Za(A):e},mI=or,bI=r((function(A){function e(t){return A.exports=e=yI?mI:function(A){return A.__proto__||mI(A)},e(t)}A.exports=e})),kI=[],NI=kI.sort,MI=o((function(){kI.sort(void 0)})),RI=o((function(){kI.sort(null)})),GI=Di("sort");q({target:"Array",proto:!0,forced:MI||!RI||!GI},{sort:function(A){return void 0===A?NI.call(uA(this)):NI.call(uA(this),_(A))}});var FI=Z("Array").sort,xI=Array.prototype,SI=function(A){var e=A.sort;return A===xI||A instanceof Array&&e===xI.sort?FI:e},YI=!o((function(){return Object.isExtensible(Object.preventExtensions({}))})),_I=r((function(A){var e=J.f,t=WA("meta"),i=0,r=Object.isExtensible||function(){return!0},n=function(A){e(A,t,{value:{objectID:"O"+ ++i,weakData:{}}})},g=A.exports={REQUIRED:!1,fastKey:function(A,e){if(!f(A))return"symbol"==typeof A?A:("string"==typeof A?"S":"P")+A;if(!y(A,t)){if(!r(A))return"F";if(!e)return"E";n(A)}return A[t].objectID},getWeakData:function(A,e){if(!y(A,t)){if(!r(A))return!0;if(!e)return!1;n(A)}return A[t].weakData},onFreeze:function(A){return YI&&g.REQUIRED&&r(A)&&!y(A,t)&&n(A),A}};CA[t]=!0})),UI=r((function(A){var e=function(A,e){this.stopped=A,this.result=e};(A.exports=function(A,t,i,r,n){var g,o,a,I,C,s,c,l=U(t,i,r?2:1);if(n)g=A;else{if("function"!=typeof(o=Xt(A)))throw TypeError("Target is not iterable");if(ii(o)){for(a=0,I=rA(A.length);I>a;a++)if((C=r?l(L(c=A[a])[0],c[1]):l(A[a]))&&C instanceof e)return C;return new e(!1)}g=o.call(A)}for(s=g.next;!(c=s.call(g)).done;)if("object"==typeof(C=Ai(g,l,c.value,r))&&C&&C instanceof e)return C;return new e(!1)}).stop=function(A){return new e(!0,A)}})),LI=function(A,e,t){if(!(A instanceof e))throw TypeError("Incorrect "+(t?t+" ":"")+"invocation");return A},KI=J.f,JI=qe.forEach,TI=Ke.set,HI=Ke.getterFor,OI=function(A,e,t){var i,r=-1!==A.indexOf("Map"),n=-1!==A.indexOf("Weak"),I=r?"set":"add",C=g[A],s=C&&C.prototype,c={};if(a&&"function"==typeof C&&(n||s.forEach&&!o((function(){(new C).entries().next()})))){i=e((function(e,t){TI(LI(e,i,A),{type:A,collection:new C}),null!=t&&UI(t,e[I],e,r)}));var l=HI(A);JI(["add","clear","delete","forEach","get","has","set","keys","values","entries"],(function(A){var e="add"==A||"set"==A;!(A in s)||n&&"clear"==A||T(i.prototype,A,(function(t,i){var r=l(this).collection;if(!e&&n&&!f(t))return"get"==A&&void 0;var g=r[A](0===t?0:t,i);return e?this:g}))})),n||KI(i.prototype,"size",{configurable:!0,get:function(){return l(this).collection.size}})}else i=t.getConstructor(e,A,r,I),_I.REQUIRED=!0;return me(i,A,!1,!0),c[A]=i,q({global:!0,forced:!0},c),n||t.setStrong(i,A,r),i},qI=function(A,e,t){for(var i in e)t&&t.unsafe&&A[i]?A[i]=e[i]:Ce(A,i,e[i],t);return A},jI=Be("species"),PI=J.f,VI=_I.fastKey,zI=Ke.set,ZI=Ke.getterFor,XI={getConstructor:function(A,e,t,i){var r=A((function(A,n){LI(A,r,e),zI(A,{type:e,index:ne(null),first:void 0,last:void 0,size:0}),a||(A.size=0),null!=n&&UI(n,A[i],A,t)})),n=ZI(e),g=function(A,e,t){var i,r,g=n(A),I=o(A,e);return I?I.value=t:(g.last=I={index:r=VI(e,!0),key:e,value:t,previous:i=g.last,next:void 0,removed:!1},g.first||(g.first=I),i&&(i.next=I),a?g.size++:A.size++,"F"!==r&&(g.index[r]=I)),A},o=function(A,e){var t,i=n(A),r=VI(e);if("F"!==r)return i.index[r];for(t=i.first;t;t=t.next)if(t.key==e)return t};return qI(r.prototype,{clear:function(){for(var A=n(this),e=A.index,t=A.first;t;)t.removed=!0,t.previous&&(t.previous=t.previous.next=void 0),delete e[t.index],t=t.next;A.first=A.last=void 0,a?A.size=0:this.size=0},delete:function(A){var e=n(this),t=o(this,A);if(t){var i=t.next,r=t.previous;delete e.index[t.index],t.removed=!0,r&&(r.next=i),i&&(i.previous=r),e.first==t&&(e.first=i),e.last==t&&(e.last=r),a?e.size--:this.size--}return!!t},forEach:function(A){for(var e,t=n(this),i=U(A,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:t.first;)for(i(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(A){return!!o(this,A)}}),qI(r.prototype,t?{get:function(A){var e=o(this,A);return e&&e.value},set:function(A,e){return g(this,0===A?0:A,e)}}:{add:function(A){return g(this,A=0===A?0:A,A)}}),a&&PI(r.prototype,"size",{get:function(){return n(this).size}}),r},setStrong:function(A,e,t){var i=e+" Iterator",r=ZI(e),n=ZI(i);Lt(A,e,(function(A,e){zI(this,{type:i,target:A,state:r(A),kind:e,last:void 0})}),(function(){for(var A=n(this),e=A.kind,t=A.last;t&&t.removed;)t=t.previous;return A.target&&(A.last=t=t?t.next:A.state.first)?"keys"==e?{value:t.key,done:!1}:"values"==e?{value:t.value,done:!1}:{value:[t.key,t.value],done:!1}:(A.target=void 0,{value:void 0,done:!0})}),t?"entries":"values",!t,!0),function(A){var e=FA(A),t=J.f;a&&e&&!e[jI]&&t(e,jI,{configurable:!0,get:function(){return this}})}(e)}},WI=(OI("Set",(function(A){return function(){return A(this,arguments.length?arguments[0]:void 0)}}),XI),Y.Set),$I=(OI("Map",(function(A){return function(){return A(this,arguments.length?arguments[0]:void 0)}}),XI),Y.Map),AC=r((function(A){var e=function(A){var e=Object.prototype,t=e.hasOwnProperty,i="function"==typeof Symbol?Symbol:{},r=i.iterator||"@@iterator",n=i.asyncIterator||"@@asyncIterator",g=i.toStringTag||"@@toStringTag";function o(A,e,t){return Object.defineProperty(A,e,{value:t,enumerable:!0,configurable:!0,writable:!0}),A[e]}try{o({},"")}catch(A){o=function(A,e,t){return A[e]=t}}function a(A,e,t,i){var r=e&&e.prototype instanceof s?e:s,n=Object.create(r.prototype),g=new w(i||[]);return n._invoke=function(A,e,t){var i="suspendedStart";return function(r,n){if("executing"===i)throw new Error("Generator is already running");if("completed"===i){if("throw"===r)throw n;return v()}for(t.method=r,t.arg=n;;){var g=t.delegate;if(g){var o=d(g,t);if(o){if(o===C)continue;return o}}if("next"===t.method)t.sent=t._sent=t.arg;else if("throw"===t.method){if("suspendedStart"===i)throw i="completed",t.arg;t.dispatchException(t.arg)}else"return"===t.method&&t.abrupt("return",t.arg);i="executing";var a=I(A,e,t);if("normal"===a.type){if(i=t.done?"completed":"suspendedYield",a.arg===C)continue;return{value:a.arg,done:t.done}}"throw"===a.type&&(i="completed",t.method="throw",t.arg=a.arg)}}}(A,t,g),n}function I(A,e,t){try{return{type:"normal",arg:A.call(e,t)}}catch(A){return{type:"throw",arg:A}}}A.wrap=a;var C={};function s(){}function c(){}function l(){}var B={};B[r]=function(){return this};var Q=Object.getPrototypeOf,u=Q&&Q(Q(D([])));u&&u!==e&&t.call(u,r)&&(B=u);var E=l.prototype=s.prototype=Object.create(B);function h(A){["next","throw","return"].forEach((function(e){o(A,e,(function(A){return this._invoke(e,A)}))}))}function f(A,e){var i;this._invoke=function(r,n){function g(){return new e((function(i,g){!function i(r,n,g,o){var a=I(A[r],A,n);if("throw"!==a.type){var C=a.arg,s=C.value;return s&&"object"==typeof s&&t.call(s,"__await")?e.resolve(s.__await).then((function(A){i("next",A,g,o)}),(function(A){i("throw",A,g,o)})):e.resolve(s).then((function(A){C.value=A,g(C)}),(function(A){return i("throw",A,g,o)}))}o(a.arg)}(r,n,i,g)}))}return i=i?i.then(g,g):g()}}function d(A,e){var t=A.iterator[e.method];if(void 0===t){if(e.delegate=null,"throw"===e.method){if(A.iterator.return&&(e.method="return",e.arg=void 0,d(A,e),"throw"===e.method))return C;e.method="throw",e.arg=new TypeError("The iterator does not provide a 'throw' method")}return C}var i=I(t,A.iterator,e.arg);if("throw"===i.type)return e.method="throw",e.arg=i.arg,e.delegate=null,C;var r=i.arg;return r?r.done?(e[A.resultName]=r.value,e.next=A.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,C):r:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,C)}function p(A){var e={tryLoc:A[0]};1 in A&&(e.catchLoc=A[1]),2 in A&&(e.finallyLoc=A[2],e.afterLoc=A[3]),this.tryEntries.push(e)}function y(A){var e=A.completion||{};e.type="normal",delete e.arg,A.completion=e}function w(A){this.tryEntries=[{tryLoc:"root"}],A.forEach(p,this),this.reset(!0)}function D(A){if(A){var e=A[r];if(e)return e.call(A);if("function"==typeof A.next)return A;if(!isNaN(A.length)){var i=-1,n=function e(){for(;++i<A.length;)if(t.call(A,i))return e.value=A[i],e.done=!1,e;return e.value=void 0,e.done=!0,e};return n.next=n}}return{next:v}}function v(){return{value:void 0,done:!0}}return c.prototype=E.constructor=l,l.constructor=c,c.displayName=o(l,g,"GeneratorFunction"),A.isGeneratorFunction=function(A){var e="function"==typeof A&&A.constructor;return!!e&&(e===c||"GeneratorFunction"===(e.displayName||e.name))},A.mark=function(A){return Object.setPrototypeOf?Object.setPrototypeOf(A,l):(A.__proto__=l,o(A,g,"GeneratorFunction")),A.prototype=Object.create(E),A},A.awrap=function(A){return{__await:A}},h(f.prototype),f.prototype[n]=function(){return this},A.AsyncIterator=f,A.async=function(e,t,i,r,n){void 0===n&&(n=Promise);var g=new f(a(e,t,i,r),n);return A.isGeneratorFunction(t)?g:g.next().then((function(A){return A.done?A.value:g.next()}))},h(E),o(E,g,"Generator"),E[r]=function(){return this},E.toString=function(){return"[object Generator]"},A.keys=function(A){var e=[];for(var t in A)e.push(t);return e.reverse(),function t(){for(;e.length;){var i=e.pop();if(i in A)return t.value=i,t.done=!1,t}return t.done=!0,t}},A.values=D,w.prototype={constructor:w,reset:function(A){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,this.tryEntries.forEach(y),!A)for(var e in this)"t"===e.charAt(0)&&t.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var A=this.tryEntries[0].completion;if("throw"===A.type)throw A.arg;return this.rval},dispatchException:function(A){if(this.done)throw A;var e=this;function i(t,i){return g.type="throw",g.arg=A,e.next=t,i&&(e.method="next",e.arg=void 0),!!i}for(var r=this.tryEntries.length-1;r>=0;--r){var n=this.tryEntries[r],g=n.completion;if("root"===n.tryLoc)return i("end");if(n.tryLoc<=this.prev){var o=t.call(n,"catchLoc"),a=t.call(n,"finallyLoc");if(o&&a){if(this.prev<n.catchLoc)return i(n.catchLoc,!0);if(this.prev<n.finallyLoc)return i(n.finallyLoc)}else if(o){if(this.prev<n.catchLoc)return i(n.catchLoc,!0)}else{if(!a)throw new Error("try statement without catch or finally");if(this.prev<n.finallyLoc)return i(n.finallyLoc)}}}},abrupt:function(A,e){for(var i=this.tryEntries.length-1;i>=0;--i){var r=this.tryEntries[i];if(r.tryLoc<=this.prev&&t.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var n=r;break}}n&&("break"===A||"continue"===A)&&n.tryLoc<=e&&e<=n.finallyLoc&&(n=null);var g=n?n.completion:{};return g.type=A,g.arg=e,n?(this.method="next",this.next=n.finallyLoc,C):this.complete(g)},complete:function(A,e){if("throw"===A.type)throw A.arg;return"break"===A.type||"continue"===A.type?this.next=A.arg:"return"===A.type?(this.rval=this.arg=A.arg,this.method="return",this.next="end"):"normal"===A.type&&e&&(this.next=e),C},finish:function(A){for(var e=this.tryEntries.length-1;e>=0;--e){var t=this.tryEntries[e];if(t.finallyLoc===A)return this.complete(t.completion,t.afterLoc),y(t),C}},catch:function(A){for(var e=this.tryEntries.length-1;e>=0;--e){var t=this.tryEntries[e];if(t.tryLoc===A){var i=t.completion;if("throw"===i.type){var r=i.arg;y(t)}return r}}throw new Error("illegal catch attempt")},delegateYield:function(A,e,t){return this.delegate={iterator:D(A),resultName:e,nextLoc:t},"next"===this.method&&(this.arg=void 0),C}},A}(A.exports);try{regeneratorRuntime=e}catch(A){Function("r","regeneratorRuntime = r")(e)}})),eC=$r,tC=function(A,e,t,i,r,n,g,o){for(var a,I=r,C=0,s=!!g&&U(g,o,3);C<i;){if(C in t){if(a=s?s(t[C],C,e):t[C],n>0&&jA(a))I=tC(A,e,a,rA(a.length),I,n-1)-1;else{if(I>=9007199254740991)throw TypeError("Exceed the acceptable array length");A[I]=a}I++}C++}return I},iC=tC;q({target:"Array",proto:!0},{flatMap:function(A){var e,t=uA(this),i=rA(t.length);return _(A),(e=Te(t,0)).length=iC(e,t,t,i,0,1,A,arguments.length>1?arguments[1]:void 0),e}});var rC=Z("Array").flatMap,nC=Array.prototype,gC=function(A){var e=A.flatMap;return A===nC||A instanceof Array&&e===nC.flatMap?rC:e},oC=function(A){return function(e,t,i,r){_(t);var n=uA(e),g=u(n),o=rA(n.length),a=A?o-1:0,I=A?-1:1;if(i<2)for(;;){if(a in g){r=g[a],a+=I;break}if(a+=I,A?a<0:o<=a)throw TypeError("Reduce of empty array with no initial value")}for(;A?a>=0:o>a;a+=I)a in g&&(r=t(r,g[a],a,n));return r}},aC={left:oC(!1),right:oC(!0)}.left,IC=Di("reduce"),CC=ki("reduce",{1:0});q({target:"Array",proto:!0,forced:!IC||!CC},{reduce:function(A){return aC(this,A,arguments.length,arguments.length>1?arguments[1]:void 0)}});var sC=Z("Array").reduce,cC=Array.prototype,lC=function(A){var e=A.reduce;return A===cC||A instanceof Array&&e===cC.reduce?sC:e},BC="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||"undefined"!=typeof msCrypto&&"function"==typeof msCrypto.getRandomValues&&msCrypto.getRandomValues.bind(msCrypto),QC=new Uint8Array(16);function uC(){if(!BC)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return BC(QC)}var EC=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function hC(A){return"string"==typeof A&&EC.test(A)}for(var fC=[],dC=0;dC<256;++dC)fC.push((dC+256).toString(16).substr(1));function pC(A,e,t){var i=(A=A||{}).random||(A.rng||uC)();if(i[6]=15&i[6]|64,i[8]=63&i[8]|128,e){t=t||0;for(var r=0;r<16;++r)e[t+r]=i[r];return e}return function(A){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,t=(fC[A[e+0]]+fC[A[e+1]]+fC[A[e+2]]+fC[A[e+3]]+"-"+fC[A[e+4]]+fC[A[e+5]]+"-"+fC[A[e+6]]+fC[A[e+7]]+"-"+fC[A[e+8]]+fC[A[e+9]]+"-"+fC[A[e+10]]+fC[A[e+11]]+fC[A[e+12]]+fC[A[e+13]]+fC[A[e+14]]+fC[A[e+15]]).toLowerCase();if(!hC(t))throw TypeError("Stringified UUID is invalid");return t}(i)}function yC(A,e){var t=qr(A);if(Dt){var i=Dt(A);e&&(i=nr(i).call(i,(function(e){return HA(A,e).enumerable}))),t.push.apply(t,i)}return t}function wC(A){for(var e=1;e<arguments.length;e++){var t,i=null!=arguments[e]?arguments[e]:{};if(e%2)Yi(t=yC(Object(i),!0)).call(t,(function(e){ui(A,e,i[e])}));else if(UA)RA(A,UA(i));else{var r;Yi(r=yC(Object(i))).call(r,(function(e){NA(A,e,HA(i,e))}))}}return A}function DC(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}function vC(A,e){var t;if(void 0===cn||null==$t(A)){if(Wr(A)||(t=function(A,e){var t;if(!A)return;if("string"==typeof A)return mC(A,e);var i=rn(t=Object.prototype.toString.call(A)).call(t,8,-1);"Object"===i&&A.constructor&&(i=A.constructor.name);if("Map"===i||"Set"===i)return Ci(A);if("Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i))return mC(A,e)}(A))||e&&A&&"number"==typeof A.length){t&&(A=t);var i=0,r=function(){};return{s:r,n:function(){return i>=A.length?{done:!0}:{done:!1,value:A[i++]}},e:function(A){throw A},f:r}}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 n,g=!0,o=!1;return{s:function(){t=Wt(A)},n:function(){var A=t.next();return g=A.done,A},e:function(A){o=!0,n=A},f:function(){try{g||null==t.return||t.return()}finally{if(o)throw n}}}}function mC(A,e){(null==e||e>A.length)&&(e=A.length);for(var t=0,i=new Array(e);t<e;t++)i[t]=A[t];return i}var bC=function(){function A(e,t,i){var r,n,g;Ma(this,A),this._source=e,this._transformers=t,this._target=i,this._listeners={add:$(r=this._add).call(r,this),remove:$(n=this._remove).call(n,this),update:$(g=this._update).call(g,this)}}return Ga(A,[{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(A){var e;return lC(e=this._transformers).call(e,(function(A,e){return e(A)}),A)}},{key:"_add",value:function(A,e){null!=e&&this._target.add(this._transformItems(this._source.get(e.items)))}},{key:"_update",value:function(A,e){null!=e&&this._target.update(this._transformItems(this._source.get(e.items)))}},{key:"_remove",value:function(A,e){null!=e&&this._target.remove(this._transformItems(e.oldData))}}]),A}(),kC=function(){function A(e){Ma(this,A),this._source=e,this._transformers=[]}return Ga(A,[{key:"filter",value:function(A){return this._transformers.push((function(e){return nr(e).call(e,A)})),this}},{key:"map",value:function(A){return this._transformers.push((function(e){return Xr(e).call(e,A)})),this}},{key:"flatMap",value:function(A){return this._transformers.push((function(e){return gC(e).call(e,A)})),this}},{key:"to",value:function(A){return new bC(this._source,this._transformers,A)}}]),A}();function NC(A){return"string"==typeof A||"number"==typeof A}var MC=function(){function A(e){Ma(this,A),this._queue=[],this._timeout=null,this._extended=null,this.delay=null,this.max=1/0,this.setOptions(e)}return Ga(A,[{key:"setOptions",value:function(A){A&&void 0!==A.delay&&(this.delay=A.delay),A&&void 0!==A.max&&(this.max=A.max),this._flushIfNeeded()}},{key:"destroy",value:function(){if(this.flush(),this._extended){for(var A=this._extended.object,e=this._extended.methods,t=0;t<e.length;t++){var i=e[t];i.original?A[i.name]=i.original:delete A[i.name]}this._extended=null}}},{key:"replace",value:function(A,e){var t=this,i=A[e];if(!i)throw new Error("Method "+e+" undefined");A[e]=function(){for(var A=arguments.length,e=new Array(A),r=0;r<A;r++)e[r]=arguments[r];t.queue({args:e,fn:i,context:this})}}},{key:"queue",value:function(A){"function"==typeof A?this._queue.push({fn:A}):this._queue.push(A),this._flushIfNeeded()}},{key:"_flushIfNeeded",value:function(){var A=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=La((function(){A.flush()}),this.delay))}},{key:"flush",value:function(){var A,e;Yi(A=ng(e=this._queue).call(e,0)).call(A,(function(A){A.fn.apply(A.context||A.fn,A.args||[])}))}}],[{key:"extend",value:function(e,t){var i=new A(t);if(void 0!==e.flush)throw new Error("Target object already has a property flush");e.flush=function(){i.flush()};var r=[{name:"flush",original:void 0}];if(t&&t.replace)for(var n=0;n<t.replace.length;n++){var g=t.replace[n];r.push({name:g,original:e[g]}),i.replace(e,g)}return i._extended={object:e,methods:r},i}}]),A}(),RC=function(){function A(){Ma(this,A),this._subscribers={"*":[],add:[],remove:[],update:[]},this.subscribe=A.prototype.on,this.unsubscribe=A.prototype.off}return Ga(A,[{key:"_trigger",value:function(A,e,t){var i,r;if("*"===A)throw new Error("Cannot trigger event *");Yi(i=sn(r=[]).call(r,an(this._subscribers[A]),an(this._subscribers["*"]))).call(i,(function(i){i(A,e,null!=t?t:null)}))}},{key:"on",value:function(A,e){"function"==typeof e&&this._subscribers[A].push(e)}},{key:"off",value:function(A,e){var t;this._subscribers[A]=nr(t=this._subscribers[A]).call(t,(function(A){return A!==e}))}}]),A}(),GC=function(){function A(e){Ma(this,A),this._pairs=e}return Ga(A,[{key:eC,value:AC.mark((function A(){var e,t,i,r,n;return AC.wrap((function(A){for(;;)switch(A.prev=A.next){case 0:e=vC(this._pairs),A.prev=1,e.s();case 3:if((t=e.n()).done){A.next=9;break}return i=Tr(t.value,2),r=i[0],n=i[1],A.next=7,[r,n];case 7:A.next=3;break;case 9:A.next=14;break;case 11:A.prev=11,A.t0=A.catch(1),e.e(A.t0);case 14:return A.prev=14,e.f(),A.finish(14);case 17:case"end":return A.stop()}}),A,this,[[1,11,14,17]])}))},{key:"entries",value:AC.mark((function A(){var e,t,i,r,n;return AC.wrap((function(A){for(;;)switch(A.prev=A.next){case 0:e=vC(this._pairs),A.prev=1,e.s();case 3:if((t=e.n()).done){A.next=9;break}return i=Tr(t.value,2),r=i[0],n=i[1],A.next=7,[r,n];case 7:A.next=3;break;case 9:A.next=14;break;case 11:A.prev=11,A.t0=A.catch(1),e.e(A.t0);case 14:return A.prev=14,e.f(),A.finish(14);case 17:case"end":return A.stop()}}),A,this,[[1,11,14,17]])}))},{key:"keys",value:AC.mark((function A(){var e,t,i,r;return AC.wrap((function(A){for(;;)switch(A.prev=A.next){case 0:e=vC(this._pairs),A.prev=1,e.s();case 3:if((t=e.n()).done){A.next=9;break}return i=Tr(t.value,1),r=i[0],A.next=7,r;case 7:A.next=3;break;case 9:A.next=14;break;case 11:A.prev=11,A.t0=A.catch(1),e.e(A.t0);case 14:return A.prev=14,e.f(),A.finish(14);case 17:case"end":return A.stop()}}),A,this,[[1,11,14,17]])}))},{key:"values",value:AC.mark((function A(){var e,t,i,r;return AC.wrap((function(A){for(;;)switch(A.prev=A.next){case 0:e=vC(this._pairs),A.prev=1,e.s();case 3:if((t=e.n()).done){A.next=9;break}return i=Tr(t.value,2),r=i[1],A.next=7,r;case 7:A.next=3;break;case 9:A.next=14;break;case 11:A.prev=11,A.t0=A.catch(1),e.e(A.t0);case 14:return A.prev=14,e.f(),A.finish(14);case 17:case"end":return A.stop()}}),A,this,[[1,11,14,17]])}))},{key:"toIdArray",value:function(){var A;return Xr(A=an(this._pairs)).call(A,(function(A){return A[0]}))}},{key:"toItemArray",value:function(){var A;return Xr(A=an(this._pairs)).call(A,(function(A){return A[1]}))}},{key:"toEntryArray",value:function(){return an(this._pairs)}},{key:"toObjectMap",value:function(){var A,e=li(null),t=vC(this._pairs);try{for(t.s();!(A=t.n()).done;){var i=Tr(A.value,2),r=i[0],n=i[1];e[r]=n}}catch(A){t.e(A)}finally{t.f()}return e}},{key:"toMap",value:function(){return new $I(this._pairs)}},{key:"toIdSet",value:function(){return new WI(this.toIdArray())}},{key:"toItemSet",value:function(){return new WI(this.toItemArray())}},{key:"cache",value:function(){return new A(an(this._pairs))}},{key:"distinct",value:function(A){var e,t=new WI,i=vC(this._pairs);try{for(i.s();!(e=i.n()).done;){var r=Tr(e.value,2),n=r[0],g=r[1];t.add(A(g,n))}}catch(A){i.e(A)}finally{i.f()}return t}},{key:"filter",value:function(e){var t=this._pairs;return new A(ui({},eC,AC.mark((function A(){var i,r,n,g,o;return AC.wrap((function(A){for(;;)switch(A.prev=A.next){case 0:i=vC(t),A.prev=1,i.s();case 3:if((r=i.n()).done){A.next=10;break}if(n=Tr(r.value,2),g=n[0],o=n[1],!e(o,g)){A.next=8;break}return A.next=8,[g,o];case 8:A.next=3;break;case 10:A.next=15;break;case 12:A.prev=12,A.t0=A.catch(1),i.e(A.t0);case 15:return A.prev=15,i.f(),A.finish(15);case 18:case"end":return A.stop()}}),A,null,[[1,12,15,18]])}))))}},{key:"forEach",value:function(A){var e,t=vC(this._pairs);try{for(t.s();!(e=t.n()).done;){var i=Tr(e.value,2),r=i[0];A(i[1],r)}}catch(A){t.e(A)}finally{t.f()}}},{key:"map",value:function(e){var t=this._pairs;return new A(ui({},eC,AC.mark((function A(){var i,r,n,g,o;return AC.wrap((function(A){for(;;)switch(A.prev=A.next){case 0:i=vC(t),A.prev=1,i.s();case 3:if((r=i.n()).done){A.next=9;break}return n=Tr(r.value,2),g=n[0],o=n[1],A.next=7,[g,e(o,g)];case 7:A.next=3;break;case 9:A.next=14;break;case 11:A.prev=11,A.t0=A.catch(1),i.e(A.t0);case 14:return A.prev=14,i.f(),A.finish(14);case 17:case"end":return A.stop()}}),A,null,[[1,11,14,17]])}))))}},{key:"max",value:function(A){var e=Wt(this._pairs),t=e.next();if(t.done)return null;for(var i=t.value[1],r=A(t.value[1],t.value[0]);!(t=e.next()).done;){var n=Tr(t.value,2),g=n[0],o=n[1],a=A(o,g);a>r&&(r=a,i=o)}return i}},{key:"min",value:function(A){var e=Wt(this._pairs),t=e.next();if(t.done)return null;for(var i=t.value[1],r=A(t.value[1],t.value[0]);!(t=e.next()).done;){var n=Tr(t.value,2),g=n[0],o=n[1],a=A(o,g);a<r&&(r=a,i=o)}return i}},{key:"reduce",value:function(A,e){var t,i=vC(this._pairs);try{for(i.s();!(t=i.n()).done;){var r=Tr(t.value,2),n=r[0];e=A(e,r[1],n)}}catch(A){i.e(A)}finally{i.f()}return e}},{key:"sort",value:function(e){var t=this;return new A(ui({},eC,(function(){var A;return Wt(SI(A=an(t._pairs)).call(A,(function(A,t){var i=Tr(A,2),r=i[0],n=i[1],g=Tr(t,2),o=g[0],a=g[1];return e(n,a,r,o)})))})))}}]),A}();var FC=function(A){DI(t,A);var e=DC(t);function t(A,i){var r;return Ma(this,t),r=e.call(this),A&&!Wr(A)&&(i=A,A=[]),r._options=i||{},r._data=new $I,r.length=0,r._idProp=r._options.fieldId||"id",A&&A.length&&r.add(A),r.setOptions(i),r}return Ga(t,[{key:"setOptions",value:function(A){A&&void 0!==A.queue&&(!1===A.queue?this._queue&&(this._queue.destroy(),delete this._queue):(this._queue||(this._queue=MC.extend(this,{replace:["add","update","remove"]})),A.queue&&"object"===en(A.queue)&&this._queue.setOptions(A.queue)))}},{key:"add",value:function(A,e){var t,i=this,r=[];if(Wr(A)){var n=Xr(A).call(A,(function(A){return A[i._idProp]}));if(qa(n).call(n,(function(A){return i._data.has(A)})))throw new Error("A duplicate id was found in the parameter array.");for(var g=0,o=A.length;g<o;g++)t=this._addItem(A[g]),r.push(t)}else{if(!A||"object"!==en(A))throw new Error("Unknown dataType");t=this._addItem(A),r.push(t)}return r.length&&this._trigger("add",{items:r},e),r}},{key:"update",value:function(A,e){var t=this,i=[],r=[],n=[],g=[],o=this._idProp,a=function(A){var e=A[o];if(null!=e&&t._data.has(e)){var a=A,I=dA({},t._data.get(e)),C=t._updateItem(a);r.push(C),g.push(a),n.push(I)}else{var s=t._addItem(A);i.push(s)}};if(Wr(A))for(var I=0,C=A.length;I<C;I++)A[I]&&"object"===en(A[I])?a(A[I]):console.warn("Ignoring input item, which is not an object at index "+I);else{if(!A||"object"!==en(A))throw new Error("Unknown dataType");a(A)}if(i.length&&this._trigger("add",{items:i},e),r.length){var s={items:r,oldData:n,data:g};this._trigger("update",s,e)}return sn(i).call(i,r)}},{key:"updateOnly",value:function(A,e){var t,i=this;Wr(A)||(A=[A]);var r=Xr(t=Xr(A).call(A,(function(A){var e=i._data.get(A[i._idProp]);if(null==e)throw new Error("Updating non-existent items is not allowed.");return{oldData:e,update:A}}))).call(t,(function(A){var e=A.oldData,t=A.update,r=e[i._idProp],n=function(A){for(var e,t=arguments.length,i=new Array(t>1?t-1:0),r=1;r<t;r++)i[r-1]=arguments[r];return un.apply(void 0,sn(e=[{},A]).call(e,i))}(e,t);return i._data.set(r,n),{id:r,oldData:e,updatedData:n}}));if(r.length){var n={items:Xr(r).call(r,(function(A){return A.id})),oldData:Xr(r).call(r,(function(A){return A.oldData})),data:Xr(r).call(r,(function(A){return A.updatedData}))};return this._trigger("update",n,e),n.items}return[]}},{key:"get",value:function(A,e){var t=void 0,i=void 0,r=void 0;NC(A)?(t=A,r=e):Wr(A)?(i=A,r=e):r=A;var n=r&&"Object"===r.returnType?"Object":"Array",g=r&&nr(r),o=[],a=void 0,I=void 0,C=void 0;if(null!=t)(a=this._data.get(t))&&g&&!g(a)&&(a=void 0);else if(null!=i)for(var s=0,c=i.length;s<c;s++)null==(a=this._data.get(i[s]))||g&&!g(a)||o.push(a);else for(var l,B=0,Q=(I=an(dI(l=this._data).call(l))).length;B<Q;B++)C=I[B],null==(a=this._data.get(C))||g&&!g(a)||o.push(a);if(r&&r.order&&null==t&&this._sort(o,r.order),r&&r.fields){var u=r.fields;if(null!=t&&null!=a)a=this._filterFields(a,u);else for(var E=0,h=o.length;E<h;E++)o[E]=this._filterFields(o[E],u)}if("Object"==n){for(var f={},d=0,p=o.length;d<p;d++){var y=o[d];f[y[this._idProp]]=y}return f}return null!=t?null!=a?a:null:o}},{key:"getIds",value:function(A){var e=this._data,t=A&&nr(A),i=A&&A.order,r=an(dI(e).call(e)),n=[];if(t)if(i){for(var g=[],o=0,a=r.length;o<a;o++){var I=r[o],C=this._data.get(I);null!=C&&t(C)&&g.push(C)}this._sort(g,i);for(var s=0,c=g.length;s<c;s++)n.push(g[s][this._idProp])}else for(var l=0,B=r.length;l<B;l++){var Q=r[l],u=this._data.get(Q);null!=u&&t(u)&&n.push(u[this._idProp])}else if(i){for(var E=[],h=0,f=r.length;h<f;h++){var d=r[h];E.push(e.get(d))}this._sort(E,i);for(var p=0,y=E.length;p<y;p++)n.push(E[p][this._idProp])}else for(var w=0,D=r.length;w<D;w++){var v=r[w],m=e.get(v);null!=m&&n.push(m[this._idProp])}return n}},{key:"getDataSet",value:function(){return this}},{key:"forEach",value:function(A,e){var t=e&&nr(e),i=this._data,r=an(dI(i).call(i));if(e&&e.order)for(var n=this.get(e),g=0,o=n.length;g<o;g++){var a=n[g];A(a,a[this._idProp])}else for(var I=0,C=r.length;I<C;I++){var s=r[I],c=this._data.get(s);null==c||t&&!t(c)||A(c,s)}}},{key:"map",value:function(A,e){for(var t=e&&nr(e),i=[],r=this._data,n=an(dI(r).call(r)),g=0,o=n.length;g<o;g++){var a=n[g],I=this._data.get(a);null==I||t&&!t(I)||i.push(A(I,a))}return e&&e.order&&this._sort(i,e.order),i}},{key:"_filterFields",value:function(A,e){var t;return A?lC(t=Wr(e)?e:qr(e)).call(t,(function(e,t){return e[t]=A[t],e}),{}):A}},{key:"_sort",value:function(A,e){if("string"==typeof e){var t=e;SI(A).call(A,(function(A,e){var i=A[t],r=e[t];return i>r?1:i<r?-1:0}))}else{if("function"!=typeof e)throw new TypeError("Order must be a function or a string");SI(A).call(A,e)}}},{key:"remove",value:function(A,e){for(var t=[],i=[],r=Wr(A)?A:[A],n=0,g=r.length;n<g;n++){var o=this._remove(r[n]);if(o){var a=o[this._idProp];null!=a&&(t.push(a),i.push(o))}}return t.length&&this._trigger("remove",{items:t,oldData:i},e),t}},{key:"_remove",value:function(A){var e;if(NC(A)?e=A:A&&"object"===en(A)&&(e=A[this._idProp]),null!=e&&this._data.has(e)){var t=this._data.get(e)||null;return this._data.delete(e),--this.length,t}return null}},{key:"clear",value:function(A){for(var e,t=an(dI(e=this._data).call(e)),i=[],r=0,n=t.length;r<n;r++)i.push(this._data.get(t[r]));return this._data.clear(),this.length=0,this._trigger("remove",{items:t,oldData:i},A),t}},{key:"max",value:function(A){var e,t,i=null,r=null,n=vC(uI(e=this._data).call(e));try{for(n.s();!(t=n.n()).done;){var g=t.value,o=g[A];"number"==typeof o&&(null==r||o>r)&&(i=g,r=o)}}catch(A){n.e(A)}finally{n.f()}return i||null}},{key:"min",value:function(A){var e,t,i=null,r=null,n=vC(uI(e=this._data).call(e));try{for(n.s();!(t=n.n()).done;){var g=t.value,o=g[A];"number"==typeof o&&(null==r||o<r)&&(i=g,r=o)}}catch(A){n.e(A)}finally{n.f()}return i||null}},{key:"distinct",value:function(A){for(var e=this._data,t=an(dI(e).call(e)),i=[],r=0,n=0,g=t.length;n<g;n++){for(var o=t[n],a=e.get(o)[A],I=!1,C=0;C<r;C++)if(i[C]==a){I=!0;break}I||void 0===a||(i[r]=a,r++)}return i}},{key:"_addItem",value:function(A){var e=function(A,e){return null==A[e]&&(A[e]=pC()),A}(A,this._idProp),t=e[this._idProp];if(this._data.has(t))throw new Error("Cannot add item: item with id "+t+" already exists");return this._data.set(t,e),++this.length,t}},{key:"_updateItem",value:function(A){var e=A[this._idProp];if(null==e)throw new Error("Cannot update item: item has no id (item: "+cI(A)+")");var t=this._data.get(e);if(!t)throw new Error("Cannot update item: no item with id "+e+" found");return this._data.set(e,wC(wC({},t),A)),e}},{key:"stream",value:function(A){if(A){var e=this._data;return new GC(ui({},eC,AC.mark((function t(){var i,r,n,g;return AC.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:i=vC(A),t.prev=1,i.s();case 3:if((r=i.n()).done){t.next=11;break}if(n=r.value,null==(g=e.get(n))){t.next=9;break}return t.next=9,[n,g];case 9:t.next=3;break;case 11:t.next=16;break;case 13:t.prev=13,t.t0=t.catch(1),i.e(t.t0);case 16:return t.prev=16,i.f(),t.finish(16);case 19:case"end":return t.stop()}}),t,null,[[1,13,16,19]])}))))}var t;return new GC(ui({},eC,$(t=nI(this._data)).call(t,this._data)))}}]),t}(RC),xC=function(A){DI(t,A);var e=DC(t);function t(A,i){var r,n;return Ma(this,t),(n=e.call(this)).length=0,n._ids=new WI,n._options=i||{},n._listener=$(r=n._onEvent).call(r,Za(n)),n.setData(A),n}return Ga(t,[{key:"setData",value:function(A){if(this._data){this._data.off&&this._data.off("*",this._listener);var e=this._data.getIds({filter:nr(this._options)}),t=this._data.get(e);this._ids.clear(),this.length=0,this._trigger("remove",{items:e,oldData:t})}if(null!=A){this._data=A;for(var i=this._data.getIds({filter:nr(this._options)}),r=0,n=i.length;r<n;r++){var g=i[r];this._ids.add(g)}this.length=i.length,this._trigger("add",{items:i})}else this._data=new FC;this._data.on&&this._data.on("*",this._listener)}},{key:"refresh",value:function(){for(var A=this._data.getIds({filter:nr(this._options)}),e=an(this._ids),t={},i=[],r=[],n=[],g=0,o=A.length;g<o;g++){var a=A[g];t[a]=!0,this._ids.has(a)||(i.push(a),this._ids.add(a))}for(var I=0,C=e.length;I<C;I++){var s=e[I],c=this._data.get(s);null==c?console.error("If you see this, report it please."):t[s]||(r.push(s),n.push(c),this._ids.delete(s))}this.length+=i.length-r.length,i.length&&this._trigger("add",{items:i}),r.length&&this._trigger("remove",{items:r,oldData:n})}},{key:"get",value:function(A,e){if(null==this._data)return null;var t,i=null;NC(A)||Wr(A)?(i=A,t=e):t=A;var r=dA({},this._options,t),n=nr(this._options),g=t&&nr(t);return n&&g&&(r.filter=function(A){return n(A)&&g(A)}),null==i?this._data.get(r):this._data.get(i,r)}},{key:"getIds",value:function(A){if(this._data.length){var e,t=nr(this._options),i=null!=A?nr(A):null;return e=i?t?function(A){return t(A)&&i(A)}:i:t,this._data.getIds({filter:e,order:A&&A.order})}return[]}},{key:"forEach",value:function(A,e){if(this._data){var t,i,r=nr(this._options),n=e&&nr(e);i=n?r?function(A){return r(A)&&n(A)}:n:r,Yi(t=this._data).call(t,A,{filter:i,order:e&&e.order})}}},{key:"map",value:function(A,e){if(this._data){var t,i,r=nr(this._options),n=e&&nr(e);return i=n?r?function(A){return r(A)&&n(A)}:n:r,Xr(t=this._data).call(t,A,{filter:i,order:e&&e.order})}return[]}},{key:"getDataSet",value:function(){return this._data.getDataSet()}},{key:"stream",value:function(A){var e;return this._data.stream(A||ui({},eC,$(e=dI(this._ids)).call(e,this._ids)))}},{key:"dispose",value:function(){var A;(null===(A=this._data)||void 0===A?void 0:A.off)&&this._data.off("*",this._listener);var e="This data view has already been disposed of.";NA(this,"_data",{get:function(){throw new Error(e)},set:function(){throw new Error(e)},configurable:!1})}},{key:"_onEvent",value:function(A,e,t){if(e&&e.items&&this._data){var i=e.items,r=[],n=[],g=[],o=[],a=[],I=[];switch(A){case"add":for(var C=0,s=i.length;C<s;C++){var c=i[C];this.get(c)&&(this._ids.add(c),r.push(c))}break;case"update":for(var l=0,B=i.length;l<B;l++){var Q=i[l];this.get(Q)?this._ids.has(Q)?(n.push(Q),a.push(e.data[l]),o.push(e.oldData[l])):(this._ids.add(Q),r.push(Q)):this._ids.has(Q)&&(this._ids.delete(Q),g.push(Q),I.push(e.oldData[l]))}break;case"remove":for(var u=0,E=i.length;u<E;u++){var h=i[u];this._ids.has(h)&&(this._ids.delete(h),g.push(h),I.push(e.oldData[u]))}}this.length+=r.length-g.length,r.length&&this._trigger("add",{items:r},t),n.length&&this._trigger("update",{items:n,oldData:o,data:a},t),g.length&&this._trigger("remove",{items:g,oldData:I},t)}}}]),t}(RC),SC=Object.freeze({__proto__:null,DELETE:Qn,DataSet:FC,DataStream:GC,DataView:xC,Queue:MC,createNewDataPipeFrom:function(A){return new kC(A)}}),YC=Ie.f,_C=o((function(){return!Object.getOwnPropertyNames(1)}));q({target:"Object",stat:!0,forced:_C},{getOwnPropertyNames:YC});var UC=Y.Object,LC=function(A){return UC.getOwnPropertyNames(A)},KC=yi.trim,JC=g.parseFloat,TC=1/JC(Ei+"-0")!=-1/0?function(A){var e=KC(String(A)),t=JC(e);return 0===t&&"-"==e.charAt(0)?-0:t}:JC;q({global:!0,forced:parseFloat!=TC},{parseFloat:TC});var HC=Y.parseFloat;function OC(A,e){var t=["node","edge","label"],i=!0,r=Wn(e,"chosen");if("boolean"==typeof r)i=r;else if("object"===en(r)){if(-1===ur(t).call(t,A))throw new Error("choosify: subOption '"+A+"' should be one of '"+t.join("', '")+"'");var n=Wn(e,["chosen",A]);"boolean"!=typeof n&&"function"!=typeof n||(i=n)}return i}function qC(A,e,t){if(A.width<=0||A.height<=0)return!1;if(void 0!==t){var i={x:e.x-t.x,y:e.y-t.y};if(0!==t.angle){var r=-t.angle;e={x:Math.cos(r)*i.x-Math.sin(r)*i.y,y:Math.sin(r)*i.x+Math.cos(r)*i.y}}else e=i}var n=A.x+A.width,g=A.y+A.width;return A.left<e.x&&n>e.x&&A.top<e.y&&g>e.y}function jC(A){return"string"==typeof A&&""!==A}function PC(A,e,t,i){var r=i.x,n=i.y;if("function"==typeof i.distanceToBorder){var g=i.distanceToBorder(A,e),o=Math.sin(e)*g,a=Math.cos(e)*g;a===g?(r+=g,n=i.y):o===g?(r=i.x,n-=g):(r+=a,n-=o)}else i.shape.width>i.shape.height?(r=i.x+.5*i.shape.width,n=i.y-t):(r=i.x+t,n=i.y-.5*i.shape.height);return{x:r,y:n}}var VC=function(){function A(e){Ma(this,A),this.measureText=e,this.current=0,this.width=0,this.height=0,this.lines=[]}return Ga(A,[{key:"_add",value:function(A,e){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"normal";void 0===this.lines[A]&&(this.lines[A]={width:0,height:0,blocks:[]});var i=e;void 0!==e&&""!==e||(i=" ");var r=this.measureText(i,t),n=dA({},uI(r));n.text=e,n.width=r.width,n.mod=t,void 0!==e&&""!==e||(n.width=0),this.lines[A].blocks.push(n),this.lines[A].width+=n.width}},{key:"curWidth",value:function(){var A=this.lines[this.current];return void 0===A?0:A.width}},{key:"append",value:function(A){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"normal";this._add(this.current,A,e)}},{key:"newLine",value:function(A){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"normal";this._add(this.current,A,e),this.current++}},{key:"determineLineHeights",value:function(){for(var A=0;A<this.lines.length;A++){var e=this.lines[A],t=0;if(void 0!==e.blocks)for(var i=0;i<e.blocks.length;i++){var r=e.blocks[i];t<r.height&&(t=r.height)}e.height=t}}},{key:"determineLabelSize",value:function(){for(var A=0,e=0,t=0;t<this.lines.length;t++){var i=this.lines[t];i.width>A&&(A=i.width),e+=i.height}this.width=A,this.height=e}},{key:"removeEmptyBlocks",value:function(){for(var A=[],e=0;e<this.lines.length;e++){var t=this.lines[e];if(0!==t.blocks.length&&(e!==this.lines.length-1||0!==t.width)){var i={};dA(i,t),i.blocks=[];for(var r=void 0,n=[],g=0;g<t.blocks.length;g++){var o=t.blocks[g];0!==o.width?n.push(o):void 0===r&&(r=o)}0===n.length&&void 0!==r&&n.push(r),i.blocks=n,A.push(i)}}return A}},{key:"finalize",value:function(){this.determineLineHeights(),this.determineLabelSize();var A=this.removeEmptyBlocks();return{width:this.width,height:this.height,lines:A}}}]),A}(),zC={"<b>":/<b>/,"<i>":/<i>/,"<code>":/<code>/,"</b>":/<\/b>/,"</i>":/<\/i>/,"</code>":/<\/code>/,"*":/\*/,_:/\_/,"`":/`/,afterBold:/[^\*]/,afterItal:/[^_]/,afterMono:/[^`]/},ZC=function(){function A(e){Ma(this,A),this.text=e,this.bold=!1,this.ital=!1,this.mono=!1,this.spacing=!1,this.position=0,this.buffer="",this.modStack=[],this.blocks=[]}return Ga(A,[{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(A){" "===A&&(this.spacing=!0),this.spacing&&(this.buffer+=" ",this.spacing=!1)," "!=A&&(this.buffer+=A)}},{key:"parseWS",value:function(A){return!!/[ \t]/.test(A)&&(this.mono?this.add(A):this.spacing=!0,!0)}},{key:"setTag",value:function(A){this.emitBlock(),this[A]=!0,this.modStack.unshift(A)}},{key:"unsetTag",value:function(A){this.emitBlock(),this[A]=!1,this.modStack.shift()}},{key:"parseStartTag",value:function(A,e){return!(this.mono||this[A]||!this.match(e))&&(this.setTag(A),!0)}},{key:"match",value:function(A){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],t=this.prepareRegExp(A),i=Tr(t,2),r=i[0],n=i[1],g=r.test(this.text.substr(this.position,n));return g&&e&&(this.position+=n-1),g}},{key:"parseEndTag",value:function(A,e,t){var i=this.mod()===A;return!(!(i="mono"===A?i&&this.mono:i&&!this.mono)||!this.match(e))&&(void 0!==t?(this.position===this.text.length-1||this.match(t,!1))&&this.unsetTag(A):this.unsetTag(A),!0)}},{key:"replace",value:function(A,e){return!!this.match(A)&&(this.add(e),this.position+=length-1,!0)}},{key:"prepareRegExp",value:function(A){var e,t;if(A instanceof RegExp)t=A,e=1;else{var i=zC[A];t=void 0!==i?i:new RegExp(A),e=A.length}return[t,e]}}]),A}(),XC=function(){function A(e,t,i,r){var n=this;Ma(this,A),this.ctx=e,this.parent=t,this.selected=i,this.hover=r;this.lines=new VC((function(A,t){if(void 0===A)return 0;var g=n.parent.getFormattingValues(e,i,r,t),o=0;""!==A&&(o=n.ctx.measureText(A).width);return{width:o,values:g}}))}return Ga(A,[{key:"process",value:function(A){if(!jC(A))return this.lines.finalize();var e=this.parent.fontOptions;A=(A=A.replace(/\r\n/g,"\n")).replace(/\r/g,"\n");var t=String(A).split("\n"),i=t.length;if(e.multi)for(var r=0;r<i;r++){var n=this.splitBlocks(t[r],e.multi);if(void 0!==n)if(0!==n.length){if(e.maxWdt>0)for(var g=0;g<n.length;g++){var o=n[g].mod,a=n[g].text;this.splitStringIntoLines(a,o,!0)}else for(var I=0;I<n.length;I++){var C=n[I].mod,s=n[I].text;this.lines.append(s,C)}this.lines.newLine()}else this.lines.newLine("")}else if(e.maxWdt>0)for(var c=0;c<i;c++)this.splitStringIntoLines(t[c]);else for(var l=0;l<i;l++)this.lines.newLine(t[l]);return this.lines.finalize()}},{key:"decodeMarkupSystem",value:function(A){var e="none";return"markdown"===A||"md"===A?e="markdown":!0!==A&&"html"!==A||(e="html"),e}},{key:"splitHtmlBlocks",value:function(A){for(var e=new ZC(A),t=function(A){return!!/&/.test(A)&&(e.replace(e.text,"&lt;","<")||e.replace(e.text,"&amp;","&")||e.add("&"),!0)};e.position<e.text.length;){var i=e.text.charAt(e.position);e.parseWS(i)||/</.test(i)&&(e.parseStartTag("bold","<b>")||e.parseStartTag("ital","<i>")||e.parseStartTag("mono","<code>")||e.parseEndTag("bold","</b>")||e.parseEndTag("ital","</i>")||e.parseEndTag("mono","</code>"))||t(i)||e.add(i),e.position++}return e.emitBlock(),e.blocks}},{key:"splitMarkdownBlocks",value:function(A){for(var e=this,t=new ZC(A),i=!0,r=function(A){return!!/\\/.test(A)&&(t.position<e.text.length+1&&(t.position++,A=e.text.charAt(t.position),/ \t/.test(A)?t.spacing=!0:(t.add(A),i=!1)),!0)};t.position<t.text.length;){var n=t.text.charAt(t.position);t.parseWS(n)||r(n)||(i||t.spacing)&&(t.parseStartTag("bold","*")||t.parseStartTag("ital","_")||t.parseStartTag("mono","`"))||t.parseEndTag("bold","*","afterBold")||t.parseEndTag("ital","_","afterItal")||t.parseEndTag("mono","`","afterMono")||(t.add(n),i=!1),t.position++}return t.emitBlock(),t.blocks}},{key:"splitBlocks",value:function(A,e){var t=this.decodeMarkupSystem(e);return"none"===t?[{text:A,mod:"normal"}]:"markdown"===t?this.splitMarkdownBlocks(A):"html"===t?this.splitHtmlBlocks(A):void 0}},{key:"overMaxWidth",value:function(A){var e=this.ctx.measureText(A).width;return this.lines.curWidth()+e>this.parent.fontOptions.maxWdt}},{key:"getLongestFit",value:function(A){for(var e="",t=0;t<A.length;){var i=e+(""===e?"":" ")+A[t];if(this.overMaxWidth(i))break;e=i,t++}return t}},{key:"getLongestFitWord",value:function(A){for(var e=0;e<A.length&&!this.overMaxWidth(rn(A).call(A,0,e));)e++;return e}},{key:"splitStringIntoLines",value:function(A){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"normal",t=arguments.length>2&&void 0!==arguments[2]&&arguments[2];this.parent.getFormattingValues(this.ctx,this.selected,this.hover,e);for(var i=(A=(A=A.replace(/^( +)/g,"$1\r")).replace(/([^\r][^ ]*)( +)/g,"$1\r$2\r")).split("\r");i.length>0;){var r=this.getLongestFit(i);if(0===r){var n=i[0],g=this.getLongestFitWord(n);this.lines.newLine(rn(n).call(n,0,g),e),i[0]=rn(n).call(n,g)}else{var o=r;" "===i[r-1]?r--:" "===i[o]&&o++;var a=rn(i).call(i,0,r).join("");r==i.length&&t?this.lines.append(a,e):this.lines.newLine(a,e),i=rn(i).call(i,o)}}}}]),A}(),WC=["bold","ital","boldital","mono"],$C=function(){function A(e,t){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];Ma(this,A),this.body=e,this.pointToSelf=!1,this.baseSize=void 0,this.fontOptions={},this.setOptions(t),this.size={top:0,left:0,width:0,height:0,yLine:0},this.isEdgeLabel=i}return Ga(A,[{key:"setOptions",value:function(A){if(this.elementOptions=A,this.initFontOptions(A.font),jC(A.label)?this.labelDirty=!0:A.label=void 0,void 0!==A.font&&null!==A.font)if("string"==typeof A.font)this.baseSize=this.fontOptions.size;else if("object"===en(A.font)){var e=A.font.size;void 0!==e&&(this.baseSize=e)}}},{key:"initFontOptions",value:function(e){var t=this;Un(WC,(function(A){t.fontOptions[A]={}})),A.parseFontString(this.fontOptions,e)?this.fontOptions.vadjust=0:Un(e,(function(A,e){null!=A&&"object"!==en(A)&&(t.fontOptions[e]=A)}))}},{key:"constrain",value:function(A){var e={constrainWidth:!1,maxWdt:-1,minWdt:-1,constrainHeight:!1,minHgt:-1,valign:"middle"},t=Wn(A,"widthConstraint");if("number"==typeof t)e.maxWdt=Number(t),e.minWdt=Number(t);else if("object"===en(t)){var i=Wn(A,["widthConstraint","maximum"]);"number"==typeof i&&(e.maxWdt=Number(i));var r=Wn(A,["widthConstraint","minimum"]);"number"==typeof r&&(e.minWdt=Number(r))}var n=Wn(A,"heightConstraint");if("number"==typeof n)e.minHgt=Number(n);else if("object"===en(n)){var g=Wn(A,["heightConstraint","minimum"]);"number"==typeof g&&(e.minHgt=Number(g));var o=Wn(A,["heightConstraint","valign"]);"string"==typeof o&&("top"!==o&&"bottom"!==o||(e.valign=o))}return e}},{key:"update",value:function(A,e){this.setOptions(A,!0),this.propagateFonts(e),xn(this.fontOptions,this.constrain(e)),this.fontOptions.chooser=OC("label",e)}},{key:"adjustSizes",value:function(A){var e=A?A.right+A.left:0;this.fontOptions.constrainWidth&&(this.fontOptions.maxWdt-=e,this.fontOptions.minWdt-=e);var t=A?A.top+A.bottom:0;this.fontOptions.constrainHeight&&(this.fontOptions.minHgt-=t)}},{key:"addFontOptionsToPile",value:function(A,e){for(var t=0;t<e.length;++t)this.addFontToPile(A,e[t])}},{key:"addFontToPile",value:function(A,e){if(void 0!==e&&void 0!==e.font&&null!==e.font){var t=e.font;A.push(t)}}},{key:"getBasicOptions",value:function(e){for(var t={},i=0;i<e.length;++i){var r=e[i],n={};A.parseFontString(n,r)&&(r=n),Un(r,(function(A,e){void 0!==A&&(Object.prototype.hasOwnProperty.call(t,e)||(-1!==ur(WC).call(WC,e)?t[e]={}:t[e]=A))}))}return t}},{key:"getFontOption",value:function(e,t,i){for(var r,n=0;n<e.length;++n){var g=e[n];if(Object.prototype.hasOwnProperty.call(g,t)){if(null==(r=g[t]))continue;var o={};if(A.parseFontString(o,r)&&(r=o),Object.prototype.hasOwnProperty.call(r,i))return r[i]}}if(Object.prototype.hasOwnProperty.call(this.fontOptions,i))return this.fontOptions[i];throw new Error("Did not find value for multi-font for property: '"+i+"'")}},{key:"getFontOptions",value:function(A,e){for(var t={},i=["color","size","face","mod","vadjust"],r=0;r<i.length;++r){var n=i[r];t[n]=this.getFontOption(A,e,n)}return t}},{key:"propagateFonts",value:function(A){var e=this,t=[];this.addFontOptionsToPile(t,A),this.fontOptions=this.getBasicOptions(t);for(var i=function(A){var i=WC[A],r=e.fontOptions[i];Un(e.getFontOptions(t,i),(function(A,e){r[e]=A})),r.size=Number(r.size),r.vadjust=Number(r.vadjust)},r=0;r<WC.length;++r)i(r)}},{key:"draw",value:function(A,e,t,i,r){var n=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"middle";if(void 0!==this.elementOptions.label){var g=this.fontOptions.size*this.body.view.scale;this.elementOptions.label&&g<this.elementOptions.scaling.label.drawThreshold-1||(g>=this.elementOptions.scaling.label.maxVisible&&(g=Number(this.elementOptions.scaling.label.maxVisible)/this.body.view.scale),this.calculateLabelSize(A,i,r,e,t,n),this._drawBackground(A),this._drawText(A,e,this.size.yLine,n,g))}}},{key:"_drawBackground",value:function(A){if(void 0!==this.fontOptions.background&&"none"!==this.fontOptions.background){A.fillStyle=this.fontOptions.background;var e=this.getSize();A.fillRect(e.left,e.top,e.width,e.height)}}},{key:"_drawText",value:function(A,e,t){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"middle",r=arguments.length>4?arguments[4]:void 0,n=this._setAlignment(A,e,t,i),g=Tr(n,2);e=g[0],t=g[1],A.textAlign="left",e-=this.size.width/2,this.fontOptions.valign&&this.size.height>this.size.labelHeight&&("top"===this.fontOptions.valign&&(t-=(this.size.height-this.size.labelHeight)/2),"bottom"===this.fontOptions.valign&&(t+=(this.size.height-this.size.labelHeight)/2));for(var o=0;o<this.lineCount;o++){var a=this.lines[o];if(a&&a.blocks){var I=0;this.isEdgeLabel||"center"===this.fontOptions.align?I+=(this.size.width-a.width)/2:"right"===this.fontOptions.align&&(I+=this.size.width-a.width);for(var C=0;C<a.blocks.length;C++){var s=a.blocks[C];A.font=s.font;var c=this._getColor(s.color,r,s.strokeColor),l=Tr(c,2),B=l[0],Q=l[1];s.strokeWidth>0&&(A.lineWidth=s.strokeWidth,A.strokeStyle=Q,A.lineJoin="round"),A.fillStyle=B,s.strokeWidth>0&&A.strokeText(s.text,e+I,t+s.vadjust),A.fillText(s.text,e+I,t+s.vadjust),I+=s.width}t+=a.height}}}},{key:"_setAlignment",value:function(A,e,t,i){if(this.isEdgeLabel&&"horizontal"!==this.fontOptions.align&&!1===this.pointToSelf){e=0,t=0;"top"===this.fontOptions.align?(A.textBaseline="alphabetic",t-=4):"bottom"===this.fontOptions.align?(A.textBaseline="hanging",t+=4):A.textBaseline="middle"}else A.textBaseline=i;return[e,t]}},{key:"_getColor",value:function(A,e,t){var i=A||"#000000",r=t||"#ffffff";if(e<=this.elementOptions.scaling.label.drawThreshold){var n=Math.max(0,Math.min(1,1-(this.elementOptions.scaling.label.drawThreshold-e)));i=Kn(i,n),r=Kn(r,n)}return[i,r]}},{key:"getTextSize",value:function(A){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],t=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return this._processLabel(A,e,t),{width:this.size.width,height:this.size.height,lineCount:this.lineCount}}},{key:"getSize",value:function(){var A=this.size.left,e=this.size.top-1;if(this.isEdgeLabel){var t=.5*-this.size.width;switch(this.fontOptions.align){case"middle":A=t,e=.5*-this.size.height;break;case"top":A=t,e=-(this.size.height+2);break;case"bottom":A=t,e=2}}return{left:A,top:e,width:this.size.width,height:this.size.height}}},{key:"calculateLabelSize",value:function(A,e,t){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,n=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"middle";this._processLabel(A,e,t),this.size.left=i-.5*this.size.width,this.size.top=r-.5*this.size.height,this.size.yLine=r+.5*(1-this.lineCount)*this.fontOptions.size,"hanging"===n&&(this.size.top+=.5*this.fontOptions.size,this.size.top+=4,this.size.yLine+=4)}},{key:"getFormattingValues",value:function(A,e,t,i){var r=function(A,e,t){return"normal"===e?"mod"===t?"":A[t]:void 0!==A[e][t]?A[e][t]:A[t]},n={color:r(this.fontOptions,i,"color"),size:r(this.fontOptions,i,"size"),face:r(this.fontOptions,i,"face"),mod:r(this.fontOptions,i,"mod"),vadjust:r(this.fontOptions,i,"vadjust"),strokeWidth:this.fontOptions.strokeWidth,strokeColor:this.fontOptions.strokeColor};(e||t)&&("normal"===i&&!0===this.fontOptions.chooser&&this.elementOptions.labelHighlightBold?n.mod="bold":"function"==typeof this.fontOptions.chooser&&this.fontOptions.chooser(n,this.elementOptions.id,e,t));var g="";return void 0!==n.mod&&""!==n.mod&&(g+=n.mod+" "),g+=n.size+"px "+n.face,A.font=g.replace(/"/g,""),n.font=A.font,n.height=n.size,n}},{key:"differentState",value:function(A,e){return A!==this.selectedState||e!==this.hoverState}},{key:"_processLabelText",value:function(A,e,t,i){return new XC(A,this,e,t).process(i)}},{key:"_processLabel",value:function(A,e,t){if(!1!==this.labelDirty||this.differentState(e,t)){var i=this._processLabelText(A,e,t,this.elementOptions.label);this.fontOptions.minWdt>0&&i.width<this.fontOptions.minWdt&&(i.width=this.fontOptions.minWdt),this.size.labelHeight=i.height,this.fontOptions.minHgt>0&&i.height<this.fontOptions.minHgt&&(i.height=this.fontOptions.minHgt),this.lines=i.lines,this.lineCount=i.lines.length,this.size.width=i.width,this.size.height=i.height,this.selectedState=e,this.hoverState=t,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(A,e){if(!e||"string"!=typeof e)return!1;var t=e.split(" ");return A.size=+t[0].replace("px",""),A.face=t[1],A.color=t[2],!0}}]),A}();q({target:"Array",proto:!0},{fill:function(A){for(var e=uA(this),t=rA(e.length),i=arguments.length,r=oA(i>1?arguments[1]:void 0,t),n=i>2?arguments[2]:void 0,g=void 0===n?t:oA(n,t);g>r;)e[r++]=A;return e}});var As=Z("Array").fill,es=Array.prototype,ts=function(A){var e=A.fill;return A===es||A instanceof Array&&e===es.fill?As:e},is=function(){function A(e,t,i){Ma(this,A),this.body=t,this.labelModule=i,this.setOptions(e),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 Ga(A,[{key:"setOptions",value:function(A){this.options=A}},{key:"_setMargins",value:function(A){this.margin={},this.options.margin&&("object"==en(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)),A.adjustSizes(this.margin)}},{key:"_distanceToBorder",value:function(A,e){var t=this.options.borderWidth;return A&&this.resize(A),Math.min(Math.abs(this.width/2/Math.cos(e)),Math.abs(this.height/2/Math.sin(e)))+t}},{key:"enableShadow",value:function(A,e){e.shadow&&(A.shadowColor=e.shadowColor,A.shadowBlur=e.shadowSize,A.shadowOffsetX=e.shadowX,A.shadowOffsetY=e.shadowY)}},{key:"disableShadow",value:function(A,e){e.shadow&&(A.shadowColor="rgba(0,0,0,0)",A.shadowBlur=0,A.shadowOffsetX=0,A.shadowOffsetY=0)}},{key:"enableBorderDashes",value:function(A,e){if(!1!==e.borderDashes)if(void 0!==A.setLineDash){var t=e.borderDashes;!0===t&&(t=[5,15]),A.setLineDash(t)}else console.warn("setLineDash is not supported in this browser. The dashed borders cannot be used."),this.options.shapeProperties.borderDashes=!1,e.borderDashes=!1}},{key:"disableBorderDashes",value:function(A,e){!1!==e.borderDashes&&(void 0!==A.setLineDash?A.setLineDash([0]):(console.warn("setLineDash is not supported in this browser. The dashed borders cannot be used."),this.options.shapeProperties.borderDashes=!1,e.borderDashes=!1))}},{key:"needsRefresh",value:function(A,e){return!0===this.refreshNeeded?(this.refreshNeeded=!1,!0):void 0===this.width||this.labelModule.differentState(A,e)}},{key:"initContextForDraw",value:function(A,e){var t=e.borderWidth/this.body.view.scale;A.lineWidth=Math.min(this.width,t),A.strokeStyle=e.borderColor,A.fillStyle=e.color}},{key:"performStroke",value:function(A,e){var t=e.borderWidth/this.body.view.scale;A.save(),t>0&&(this.enableBorderDashes(A,e),A.stroke(),this.disableBorderDashes(A,e)),A.restore()}},{key:"performFill",value:function(A,e){A.save(),A.fillStyle=e.color,this.enableShadow(A,e),ts(A).call(A),this.disableShadow(A,e),A.restore(),this.performStroke(A,e)}},{key:"_addBoundingBoxMargin",value:function(A){this.boundingBox.left-=A,this.boundingBox.top-=A,this.boundingBox.bottom+=A,this.boundingBox.right+=A}},{key:"_updateBoundingBox",value:function(A,e,t,i,r){void 0!==t&&this.resize(t,i,r),this.left=A-this.width/2,this.top=e-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(A,e,t,i,r){this._updateBoundingBox(A,e,t,i,r)}},{key:"getDimensionsFromLabel",value:function(A,e,t){this.textSize=this.labelModule.getTextSize(A,e,t);var i=this.textSize.width,r=this.textSize.height;return 0===i&&(i=14,r=14),{width:i,height:r}}}]),A}();function rs(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var ns=function(A){DI(t,A);var e=rs(t);function t(A,i,r){var n;return Ma(this,t),(n=e.call(this,A,i,r))._setMargins(r),n}return Ga(t,[{key:"resize",value:function(A){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.selected,t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.hover;if(this.needsRefresh(e,t)){var i=this.getDimensionsFromLabel(A,e,t);this.width=i.width+this.margin.right+this.margin.left,this.height=i.height+this.margin.top+this.margin.bottom,this.radius=this.width/2}}},{key:"draw",value:function(A,e,t,i,r,n){this.resize(A,i,r),this.left=e-this.width/2,this.top=t-this.height/2,this.initContextForDraw(A,n),yA(A,this.left,this.top,this.width,this.height,n.borderRadius),this.performFill(A,n),this.updateBoundingBox(e,t,A,i,r),this.labelModule.draw(A,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,i,r)}},{key:"updateBoundingBox",value:function(A,e,t,i,r){this._updateBoundingBox(A,e,t,i,r);var n=this.options.shapeProperties.borderRadius;this._addBoundingBoxMargin(n)}},{key:"distanceToBorder",value:function(A,e){A&&this.resize(A);var t=this.options.borderWidth;return Math.min(Math.abs(this.width/2/Math.cos(e)),Math.abs(this.height/2/Math.sin(e)))+t}}]),t}(is);function gs(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var os=function(A){DI(t,A);var e=gs(t);function t(A,i,r){var n;return Ma(this,t),(n=e.call(this,A,i,r)).labelOffset=0,n.selected=!1,n}return Ga(t,[{key:"setOptions",value:function(A,e,t){this.options=A,void 0===e&&void 0===t||this.setImages(e,t)}},{key:"setImages",value:function(A,e){e&&this.selected?(this.imageObj=e,this.imageObjAlt=A):(this.imageObj=A,this.imageObjAlt=e)}},{key:"switchImages",value:function(A){var e=A&&!this.selected||!A&&this.selected;if(this.selected=A,void 0!==this.imageObjAlt&&e){var t=this.imageObj;this.imageObj=this.imageObjAlt,this.imageObjAlt=t}}},{key:"_getImagePadding",value:function(){var A={top:0,right:0,bottom:0,left:0};if(this.options.imagePadding){var e=this.options.imagePadding;"object"==en(e)?(A.top=e.top,A.right=e.right,A.bottom=e.bottom,A.left=e.left):(A.top=e,A.right=e,A.bottom=e,A.left=e)}return A}},{key:"_resizeImage",value:function(){var A,e;if(!1===this.options.shapeProperties.useImageSize){var t=1,i=1;this.imageObj.width&&this.imageObj.height&&(this.imageObj.width>this.imageObj.height?t=this.imageObj.width/this.imageObj.height:i=this.imageObj.height/this.imageObj.width),A=2*this.options.size*t,e=2*this.options.size*i}else{var r=this._getImagePadding();A=this.imageObj.width+r.left+r.right,e=this.imageObj.height+r.top+r.bottom}this.width=A,this.height=e,this.radius=.5*this.width}},{key:"_drawRawCircle",value:function(A,e,t,i){this.initContextForDraw(A,i),pA(A,e,t,i.size),this.performFill(A,i)}},{key:"_drawImageAtPosition",value:function(A,e){if(0!=this.imageObj.width){A.globalAlpha=void 0!==e.opacity?e.opacity:1,this.enableShadow(A,e);var t=1;!0===this.options.shapeProperties.interpolation&&(t=this.imageObj.width/this.width/this.body.view.scale);var i=this._getImagePadding(),r=this.left+i.left,n=this.top+i.top,g=this.width-i.left-i.right,o=this.height-i.top-i.bottom;this.imageObj.drawImageAtPosition(A,t,r,n,g,o),this.disableShadow(A,e)}}},{key:"_drawImageLabel",value:function(A,e,t,i,r){var n=0;if(void 0!==this.height){n=.5*this.height;var g=this.labelModule.getTextSize(A,i,r);g.lineCount>=1&&(n+=g.height/2)}var o=t+n;this.options.label&&(this.labelOffset=n),this.labelModule.draw(A,e,o,i,r,"hanging")}}]),t}(is);function as(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var Is=function(A){DI(t,A);var e=as(t);function t(A,i,r){var n;return Ma(this,t),(n=e.call(this,A,i,r))._setMargins(r),n}return Ga(t,[{key:"resize",value:function(A){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.selected,t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.hover;if(this.needsRefresh(e,t)){var i=this.getDimensionsFromLabel(A,e,t),r=Math.max(i.width+this.margin.right+this.margin.left,i.height+this.margin.top+this.margin.bottom);this.options.size=r/2,this.width=r,this.height=r,this.radius=this.width/2}}},{key:"draw",value:function(A,e,t,i,r,n){this.resize(A,i,r),this.left=e-this.width/2,this.top=t-this.height/2,this._drawRawCircle(A,e,t,n),this.updateBoundingBox(e,t),this.labelModule.draw(A,this.left+this.textSize.width/2+this.margin.left,t,i,r)}},{key:"updateBoundingBox",value:function(A,e){this.boundingBox.top=e-this.options.size,this.boundingBox.left=A-this.options.size,this.boundingBox.right=A+this.options.size,this.boundingBox.bottom=e+this.options.size}},{key:"distanceToBorder",value:function(A,e){return A&&this.resize(A),.5*this.width}}]),t}(os);function Cs(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var ss=function(A){DI(t,A);var e=Cs(t);function t(A,i,r,n,g){var o;return Ma(this,t),(o=e.call(this,A,i,r)).setImages(n,g),o}return Ga(t,[{key:"resize",value:function(A){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.selected,t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.hover,i=void 0===this.imageObj.src||void 0===this.imageObj.width||void 0===this.imageObj.height;if(i){var r=2*this.options.size;return this.width=r,this.height=r,void(this.radius=.5*this.width)}this.needsRefresh(e,t)&&this._resizeImage()}},{key:"draw",value:function(A,e,t,i,r,n){this.switchImages(i),this.resize();var g=e,o=t;"top-left"===this.options.shapeProperties.coordinateOrigin?(this.left=e,this.top=t,g+=this.width/2,o+=this.height/2):(this.left=e-this.width/2,this.top=t-this.height/2),this._drawRawCircle(A,g,o,n),A.save(),A.clip(),this._drawImageAtPosition(A,n),A.restore(),this._drawImageLabel(A,g,o,i,r),this.updateBoundingBox(e,t)}},{key:"updateBoundingBox",value:function(A,e){"top-left"===this.options.shapeProperties.coordinateOrigin?(this.boundingBox.top=e,this.boundingBox.left=A,this.boundingBox.right=A+2*this.options.size,this.boundingBox.bottom=e+2*this.options.size):(this.boundingBox.top=e-this.options.size,this.boundingBox.left=A-this.options.size,this.boundingBox.right=A+this.options.size,this.boundingBox.bottom=e+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(A,e){return A&&this.resize(A),.5*this.width}}]),t}(os);function cs(A,e){var t=qr(A);if(Dt){var i=Dt(A);e&&(i=nr(i).call(i,(function(e){return HA(A,e).enumerable}))),t.push.apply(t,i)}return t}function ls(A){for(var e=1;e<arguments.length;e++){var t,i=null!=arguments[e]?arguments[e]:{};if(e%2)Yi(t=cs(Object(i),!0)).call(t,(function(e){ui(A,e,i[e])}));else if(UA)RA(A,UA(i));else{var r;Yi(r=cs(Object(i))).call(r,(function(e){NA(A,e,HA(i,e))}))}}return A}function Bs(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var Qs=function(A){DI(t,A);var e=Bs(t);function t(A,i,r){return Ma(this,t),e.call(this,A,i,r)}return Ga(t,[{key:"resize",value:function(A){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.selected,t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.hover,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{size:this.options.size};if(this.needsRefresh(e,t)){this.labelModule.getTextSize(A,e,t);var r=2*i.size;this.width=r,this.height=r,this.radius=.5*this.width}}},{key:"_drawShape",value:function(A,e,t,i,r,n,g,o,a){if(this.resize(A,n,g,o),this.left=i-this.width/2,this.top=r-this.height/2,"custom"===e)return A.save(),a({ctx:A,x:i,y:r,state:{selected:n,hover:g},style:ls({},o),label:this.options.label}),void A.restore();if(this.initContextForDraw(A,o),function(A){return Object.prototype.hasOwnProperty.call(mA,A)?mA[A]:function(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),r=1;r<t;r++)i[r-1]=arguments[r];CanvasRenderingContext2D.prototype[A].call(e,i)}}(e)(A,i,r,o.size),this.performFill(A,o),void 0!==this.options.icon&&void 0!==this.options.icon.code&&(A.font=(n?"bold ":"")+this.height/2+"px "+(this.options.icon.face||"FontAwesome"),A.fillStyle=this.options.icon.color||"black",A.textAlign="center",A.textBaseline="middle",A.fillText(this.options.icon.code,i,r)),void 0!==this.options.label){this.labelModule.calculateLabelSize(A,n,g,i,r,"hanging");var I=r+.5*this.height+.5*this.labelModule.size.height;this.labelModule.draw(A,i,I,n,g,"hanging")}this.updateBoundingBox(i,r)}},{key:"updateBoundingBox",value:function(A,e){this.boundingBox.top=e-this.options.size,this.boundingBox.left=A-this.options.size,this.boundingBox.right=A+this.options.size,this.boundingBox.bottom=e+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))}}]),t}(is);function us(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var Es=function(A){DI(t,A);var e=us(t);function t(A,i,r,n){var g;return Ma(this,t),(g=e.call(this,A,i,r,n)).ctxRenderer=n,g}return Ga(t,[{key:"draw",value:function(A,e,t,i,r,n){this._drawShape(A,"custom",4,e,t,i,r,n,this.ctxRenderer)}},{key:"distanceToBorder",value:function(A,e){return this._distanceToBorder(A,e)}}]),t}(Qs);function hs(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var fs=function(A){DI(t,A);var e=hs(t);function t(A,i,r){var n;return Ma(this,t),(n=e.call(this,A,i,r))._setMargins(r),n}return Ga(t,[{key:"resize",value:function(A,e,t){if(this.needsRefresh(e,t)){var i=this.getDimensionsFromLabel(A,e,t).width+this.margin.right+this.margin.left;this.width=i,this.height=i,this.radius=this.width/2}}},{key:"draw",value:function(A,e,t,i,r,n){this.resize(A,i,r),this.left=e-this.width/2,this.top=t-this.height/2,this.initContextForDraw(A,n),DA(A,e-this.width/2,t-this.height/2,this.width,this.height),this.performFill(A,n),this.updateBoundingBox(e,t,A,i,r),this.labelModule.draw(A,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,i,r)}},{key:"distanceToBorder",value:function(A,e){return this._distanceToBorder(A,e)}}]),t}(is);function ds(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var ps=function(A){DI(t,A);var e=ds(t);function t(A,i,r){return Ma(this,t),e.call(this,A,i,r)}return Ga(t,[{key:"draw",value:function(A,e,t,i,r,n){this._drawShape(A,"diamond",4,e,t,i,r,n)}},{key:"distanceToBorder",value:function(A,e){return this._distanceToBorder(A,e)}}]),t}(Qs);function ys(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var ws=function(A){DI(t,A);var e=ys(t);function t(A,i,r){return Ma(this,t),e.call(this,A,i,r)}return Ga(t,[{key:"draw",value:function(A,e,t,i,r,n){this._drawShape(A,"circle",2,e,t,i,r,n)}},{key:"distanceToBorder",value:function(A,e){return A&&this.resize(A),this.options.size}}]),t}(Qs);function Ds(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var vs=function(A){DI(t,A);var e=Ds(t);function t(A,i,r){return Ma(this,t),e.call(this,A,i,r)}return Ga(t,[{key:"resize",value:function(A){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.selected,t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.hover;if(this.needsRefresh(e,t)){var i=this.getDimensionsFromLabel(A,e,t);this.height=2*i.height,this.width=i.width+i.height,this.radius=.5*this.width}}},{key:"draw",value:function(A,e,t,i,r,n){this.resize(A,i,r),this.left=e-.5*this.width,this.top=t-.5*this.height,this.initContextForDraw(A,n),wA(A,this.left,this.top,this.width,this.height),this.performFill(A,n),this.updateBoundingBox(e,t,A,i,r),this.labelModule.draw(A,e,t,i,r)}},{key:"distanceToBorder",value:function(A,e){A&&this.resize(A);var t=.5*this.width,i=.5*this.height,r=Math.sin(e)*t,n=Math.cos(e)*i;return t*i/Math.sqrt(r*r+n*n)}}]),t}(is);function ms(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var bs=function(A){DI(t,A);var e=ms(t);function t(A,i,r){var n;return Ma(this,t),(n=e.call(this,A,i,r))._setMargins(r),n}return Ga(t,[{key:"resize",value:function(A,e,t){this.needsRefresh(e,t)&&(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(A,e,t,i,r,n){if(this.resize(A,i,r),this.options.icon.size=this.options.icon.size||50,this.left=e-this.width/2,this.top=t-this.height/2,this._icon(A,e,t,i,r,n),void 0!==this.options.label){this.labelModule.draw(A,this.left+this.iconSize.width/2+this.margin.left,t+this.height/2+5,i)}this.updateBoundingBox(e,t)}},{key:"updateBoundingBox",value:function(A,e){if(this.boundingBox.top=e-.5*this.options.icon.size,this.boundingBox.left=A-.5*this.options.icon.size,this.boundingBox.right=A+.5*this.options.icon.size,this.boundingBox.bottom=e+.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(A,e,t,i,r,n){var g=Number(this.options.icon.size);void 0!==this.options.icon.code?(A.font=[null!=this.options.icon.weight?this.options.icon.weight:i?"bold":"",(null!=this.options.icon.weight&&i?5:0)+g+"px",this.options.icon.face].join(" "),A.fillStyle=this.options.icon.color||"black",A.textAlign="center",A.textBaseline="middle",this.enableShadow(A,n),A.fillText(this.options.icon.code,e,t),this.disableShadow(A,n)):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(A,e){return this._distanceToBorder(A,e)}}]),t}(is);function ks(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var Ns=function(A){DI(t,A);var e=ks(t);function t(A,i,r,n,g){var o;return Ma(this,t),(o=e.call(this,A,i,r)).setImages(n,g),o}return Ga(t,[{key:"resize",value:function(A){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.selected,t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.hover,i=void 0===this.imageObj.src||void 0===this.imageObj.width||void 0===this.imageObj.height;if(i){var r=2*this.options.size;return this.width=r,void(this.height=r)}this.needsRefresh(e,t)&&this._resizeImage()}},{key:"draw",value:function(A,e,t,i,r,n){A.save(),this.switchImages(i),this.resize();var g=e,o=t;if("top-left"===this.options.shapeProperties.coordinateOrigin?(this.left=e,this.top=t,g+=this.width/2,o+=this.height/2):(this.left=e-this.width/2,this.top=t-this.height/2),!0===this.options.shapeProperties.useBorderWithImage){var a=this.options.borderWidth,I=this.options.borderWidthSelected||2*this.options.borderWidth,C=(i?I:a)/this.body.view.scale;A.lineWidth=Math.min(this.width,C),A.beginPath();var s=i?this.options.color.highlight.border:r?this.options.color.hover.border:this.options.color.border,c=i?this.options.color.highlight.background:r?this.options.color.hover.background:this.options.color.background;void 0!==n.opacity&&(s=Kn(s,n.opacity),c=Kn(c,n.opacity)),A.strokeStyle=s,A.fillStyle=c,A.rect(this.left-.5*A.lineWidth,this.top-.5*A.lineWidth,this.width+A.lineWidth,this.height+A.lineWidth),ts(A).call(A),this.performStroke(A,n),A.closePath()}this._drawImageAtPosition(A,n),this._drawImageLabel(A,g,o,i,r),this.updateBoundingBox(e,t),A.restore()}},{key:"updateBoundingBox",value:function(A,e){this.resize(),"top-left"===this.options.shapeProperties.coordinateOrigin?(this.left=A,this.top=e):(this.left=A-this.width/2,this.top=e-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(A,e){return this._distanceToBorder(A,e)}}]),t}(os);function Ms(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var Rs=function(A){DI(t,A);var e=Ms(t);function t(A,i,r){return Ma(this,t),e.call(this,A,i,r)}return Ga(t,[{key:"draw",value:function(A,e,t,i,r,n){this._drawShape(A,"square",2,e,t,i,r,n)}},{key:"distanceToBorder",value:function(A,e){return this._distanceToBorder(A,e)}}]),t}(Qs);function Gs(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var Fs=function(A){DI(t,A);var e=Gs(t);function t(A,i,r){return Ma(this,t),e.call(this,A,i,r)}return Ga(t,[{key:"draw",value:function(A,e,t,i,r,n){this._drawShape(A,"hexagon",4,e,t,i,r,n)}},{key:"distanceToBorder",value:function(A,e){return this._distanceToBorder(A,e)}}]),t}(Qs);function xs(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var Ss=function(A){DI(t,A);var e=xs(t);function t(A,i,r){return Ma(this,t),e.call(this,A,i,r)}return Ga(t,[{key:"draw",value:function(A,e,t,i,r,n){this._drawShape(A,"star",4,e,t,i,r,n)}},{key:"distanceToBorder",value:function(A,e){return this._distanceToBorder(A,e)}}]),t}(Qs);function Ys(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var _s=function(A){DI(t,A);var e=Ys(t);function t(A,i,r){var n;return Ma(this,t),(n=e.call(this,A,i,r))._setMargins(r),n}return Ga(t,[{key:"resize",value:function(A,e,t){this.needsRefresh(e,t)&&(this.textSize=this.labelModule.getTextSize(A,e,t),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(A,e,t,i,r,n){this.resize(A,i,r),this.left=e-this.width/2,this.top=t-this.height/2,this.enableShadow(A,n),this.labelModule.draw(A,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,i,r),this.disableShadow(A,n),this.updateBoundingBox(e,t,A,i,r)}},{key:"distanceToBorder",value:function(A,e){return this._distanceToBorder(A,e)}}]),t}(is);function Us(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var Ls=function(A){DI(t,A);var e=Us(t);function t(A,i,r){return Ma(this,t),e.call(this,A,i,r)}return Ga(t,[{key:"draw",value:function(A,e,t,i,r,n){this._drawShape(A,"triangle",3,e,t,i,r,n)}},{key:"distanceToBorder",value:function(A,e){return this._distanceToBorder(A,e)}}]),t}(Qs);function Ks(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var Js,Ts=function(A){DI(t,A);var e=Ks(t);function t(A,i,r){return Ma(this,t),e.call(this,A,i,r)}return Ga(t,[{key:"draw",value:function(A,e,t,i,r,n){this._drawShape(A,"triangleDown",3,e,t,i,r,n)}},{key:"distanceToBorder",value:function(A,e){return this._distanceToBorder(A,e)}}]),t}(Qs),Hs=!1,Os="background: #FFeeee; color: #dd0000",qs=function(){function A(){Ma(this,A)}return Ga(A,null,[{key:"validate",value:function(e,t,i){Hs=!1,Js=t;var r=t;return void 0!==i&&(r=t[i]),A.parse(e,r,[]),Hs}},{key:"parse",value:function(e,t,i){for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&A.check(r,e,t,i)}},{key:"check",value:function(e,t,i,r){if(void 0!==i[e]||void 0!==i.__any__){var n=e,g=!0;void 0===i[e]&&void 0!==i.__any__&&(n="__any__",g="object"===A.getType(t[e]));var o=i[n];g&&void 0!==o.__type__&&(o=o.__type__),A.checkFields(e,t,i,n,o,r)}else A.getSuggestion(e,i,r)}},{key:"checkFields",value:function(e,t,i,r,n,g){var o=function(t){console.log("%c"+t+A.printLocation(g,e),Os)},a=A.getType(t[e]),I=n[a];void 0!==I?"array"===A.getType(I)&&-1===ur(I).call(I,t[e])?(o('Invalid option detected in "'+e+'". Allowed values are:'+A.print(I)+' not "'+t[e]+'". '),Hs=!0):"object"===a&&"__any__"!==r&&(g=Sn(g,e),A.parse(t[e],i[r],g)):void 0===n.any&&(o('Invalid type received for "'+e+'". Expected: '+A.print(qr(n))+". Received ["+a+'] "'+t[e]+'"'),Hs=!0)}},{key:"getType",value:function(A){var e=en(A);return"object"===e?null===A?"null":A instanceof Boolean?"boolean":A instanceof Number?"number":A instanceof String?"string":Wr(A)?"array":A instanceof Date?"date":void 0!==A.nodeType?"dom":!0===A._isAMomentObject?"moment":"object":"number"===e?"number":"boolean"===e?"boolean":"string"===e?"string":void 0===e?"undefined":e}},{key:"getSuggestion",value:function(e,t,i){var r,n=A.findInOptions(e,t,i,!1),g=A.findInOptions(e,Js,[],!0);r=void 0!==n.indexMatch?" in "+A.printLocation(n.path,e,"")+'Perhaps it was incomplete? Did you mean: "'+n.indexMatch+'"?\n\n':g.distance<=4&&n.distance>g.distance?" in "+A.printLocation(n.path,e,"")+"Perhaps it was misplaced? Matching option found at: "+A.printLocation(g.path,g.closestMatch,""):n.distance<=8?'. Did you mean "'+n.closestMatch+'"?'+A.printLocation(n.path,e):". Did you mean one of these: "+A.print(qr(t))+A.printLocation(i,e),console.log('%cUnknown option detected: "'+e+'"'+r,Os),Hs=!0}},{key:"findInOptions",value:function(e,t,i){var r=arguments.length>3&&void 0!==arguments[3]&&arguments[3],n=1e9,g="",o=[],a=e.toLowerCase(),I=void 0;for(var C in t){var s=void 0;if(void 0!==t[C].__type__&&!0===r){var c=A.findInOptions(e,t[C],Sn(i,C));n>c.distance&&(g=c.closestMatch,o=c.path,n=c.distance,I=c.indexMatch)}else{var l;-1!==ur(l=C.toLowerCase()).call(l,a)&&(I=C),n>(s=A.levenshteinDistance(e,C))&&(g=C,o=Yn(i),n=s)}}return{closestMatch:g,path:o,distance:n,indexMatch:I}}},{key:"printLocation",value:function(A,e){for(var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"Problem value found at: \n",i="\n\n"+t+"options = {\n",r=0;r<A.length;r++){for(var n=0;n<r+1;n++)i+=" ";i+=A[r]+": {\n"}for(var g=0;g<A.length+1;g++)i+=" ";i+=e+"\n";for(var o=0;o<A.length+1;o++){for(var a=0;a<A.length-o;a++)i+=" ";i+="}\n"}return i+"\n\n"}},{key:"print",value:function(A){return cI(A).replace(/(\")|(\[)|(\])|(,"__type__")/g,"").replace(/(\,)/g,", ")}},{key:"levenshteinDistance",value:function(A,e){if(0===A.length)return e.length;if(0===e.length)return A.length;var t,i,r=[];for(t=0;t<=e.length;t++)r[t]=[t];for(i=0;i<=A.length;i++)r[0][i]=i;for(t=1;t<=e.length;t++)for(i=1;i<=A.length;i++)e.charAt(t-1)==A.charAt(i-1)?r[t][i]=r[t-1][i-1]:r[t][i]=Math.min(r[t-1][i-1]+1,Math.min(r[t][i-1]+1,r[t-1][i]+1));return r[e.length][A.length]}}]),A}();function js(A,e){var t=qr(A);if(Dt){var i=Dt(A);e&&(i=nr(i).call(i,(function(e){return HA(A,e).enumerable}))),t.push.apply(t,i)}return t}function Ps(A){for(var e=1;e<arguments.length;e++){var t,i=null!=arguments[e]?arguments[e]:{};if(e%2)Yi(t=js(Object(i),!0)).call(t,(function(e){ui(A,e,i[e])}));else if(UA)RA(A,UA(i));else{var r;Yi(r=js(Object(i))).call(r,(function(e){NA(A,e,HA(i,e))}))}}return A}var Vs=function(){function A(e,t,i,r,n,g){Ma(this,A),this.options=zn(n),this.globalOptions=n,this.defaultOptions=g,this.body=t,this.edges=[],this.id=void 0,this.imagelist=i,this.grouplist=r,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 $C(this.body,this.options,!1),this.setOptions(e)}return Ga(A,[{key:"attachEdge",value:function(A){var e;-1===ur(e=this.edges).call(e,A)&&this.edges.push(A)}},{key:"detachEdge",value:function(A){var e,t,i=ur(e=this.edges).call(e,A);-1!=i&&ng(t=this.edges).call(t,i,1)}},{key:"setOptions",value:function(e){var t=this.options.shape;if(e){if(void 0!==e.color&&(this._localColor=e.color),void 0!==e.id&&(this.id=e.id),void 0===this.id)throw new Error("Node must have an id");A.checkMass(e,this.id),void 0!==e.x&&(null===e.x?(this.x=void 0,this.predefinedPosition=!1):(this.x=Ji(e.x),this.predefinedPosition=!0)),void 0!==e.y&&(null===e.y?(this.y=void 0,this.predefinedPosition=!1):(this.y=Ji(e.y),this.predefinedPosition=!0)),void 0!==e.size&&(this.baseSize=e.size),void 0!==e.value&&(e.value=HC(e.value)),A.parseOptions(this.options,e,!0,this.globalOptions,this.grouplist);var i=[e,this.options,this.defaultOptions];return this.chooser=OC("node",i),this._load_images(),this.updateLabelModule(e),void 0!==e.opacity&&A.checkOpacity(e.opacity)&&(this.options.opacity=e.opacity),this.updateShape(t),void 0!==e.hidden||void 0!==e.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 A={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?(A.borderWidth*=2,A.color=this.options.color.highlight.background,A.borderColor=this.options.color.highlight.border,A.shadow=this.options.shadow.enabled):this.hover&&(A.color=this.options.color.hover.background,A.borderColor=this.options.color.hover.border,A.shadow=this.options.shadow.enabled):"function"==typeof this.chooser&&(this.chooser(A,this.options.id,this.selected,this.hover),!1===A.shadow&&(A.shadowColor===this.options.shadow.color&&A.shadowSize===this.options.shadow.size&&A.shadowX===this.options.shadow.x&&A.shadowY===this.options.shadow.y||(A.shadow=!0))):A.shadow=this.options.shadow.enabled,void 0!==this.options.opacity){var e=this.options.opacity;A.borderColor=Kn(A.borderColor,e),A.color=Kn(A.color,e),A.shadowColor=Kn(A.shadowColor,e)}return A}},{key:"updateLabelModule",value:function(e){void 0!==this.options.label&&null!==this.options.label||(this.options.label=""),A.updateGroupOptions(this.options,Ps(Ps({},e),{},{color:e&&e.color||this._localColor||void 0}),this.grouplist);var t=this.grouplist.get(this.options.group,!1),i=[e,this.options,t,this.globalOptions,this.defaultOptions];this.labelModule.update(this.options,i),void 0!==this.labelModule.baseSize&&(this.baseFontSize=this.labelModule.baseSize)}},{key:"updateShape",value:function(A){if(A===this.options.shape&&this.shape)this.shape.setOptions(this.options,this.imageObj,this.imageObjAlt);else switch(this.options.shape){case"box":this.shape=new ns(this.options,this.body,this.labelModule);break;case"circle":this.shape=new Is(this.options,this.body,this.labelModule);break;case"circularImage":this.shape=new ss(this.options,this.body,this.labelModule,this.imageObj,this.imageObjAlt);break;case"custom":this.shape=new Es(this.options,this.body,this.labelModule,this.options.ctxRenderer);break;case"database":this.shape=new fs(this.options,this.body,this.labelModule);break;case"diamond":this.shape=new ps(this.options,this.body,this.labelModule);break;case"dot":this.shape=new ws(this.options,this.body,this.labelModule);break;case"ellipse":this.shape=new vs(this.options,this.body,this.labelModule);break;case"icon":this.shape=new bs(this.options,this.body,this.labelModule);break;case"image":this.shape=new Ns(this.options,this.body,this.labelModule,this.imageObj,this.imageObjAlt);break;case"square":this.shape=new Rs(this.options,this.body,this.labelModule);break;case"hexagon":this.shape=new Fs(this.options,this.body,this.labelModule);break;case"star":this.shape=new Ss(this.options,this.body,this.labelModule);break;case"text":this.shape=new _s(this.options,this.body,this.labelModule);break;case"triangle":this.shape=new Ls(this.options,this.body,this.labelModule);break;case"triangleDown":this.shape=new Ts(this.options,this.body,this.labelModule);break;default:this.shape=new vs(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(A,e){return this.shape.distanceToBorder(A,e)}},{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(A,e,t){if(void 0!==this.options.value){var i=this.options.scaling.customScalingFunction(A,e,t,this.options.value),r=this.options.scaling.max-this.options.scaling.min;if(!0===this.options.scaling.label.enabled){var n=this.options.scaling.label.max-this.options.scaling.label.min;this.options.font.size=this.options.scaling.label.min+i*n}this.options.size=this.options.scaling.min+i*r}else this.options.size=this.baseSize,this.options.font.size=this.baseFontSize;this.updateLabelModule()}},{key:"draw",value:function(A){var e=this.getFormattingValues();this.shape.draw(A,this.x,this.y,this.selected,this.hover,e)}},{key:"updateBoundingBox",value:function(A){this.shape.updateBoundingBox(this.x,this.y,A)}},{key:"resize",value:function(A){var e=this.getFormattingValues();this.shape.resize(A,this.selected,this.hover,e)}},{key:"getItemsOnPoint",value:function(A){var e=[];return this.labelModule.visible()&&qC(this.labelModule.getSize(),A)&&e.push({nodeId:this.id,labelId:0}),qC(this.shape.boundingBox,A)&&e.push({nodeId:this.id}),e}},{key:"isOverlappingWith",value:function(A){return this.shape.left<A.right&&this.shape.left+this.shape.width>A.left&&this.shape.top<A.bottom&&this.shape.top+this.shape.height>A.top}},{key:"isBoundingBoxOverlappingWith",value:function(A){return this.shape.boundingBox.left<A.right&&this.shape.boundingBox.right>A.left&&this.shape.boundingBox.top<A.bottom&&this.shape.boundingBox.bottom>A.top}}],[{key:"checkOpacity",value:function(A){return 0<=A&&A<=1}},{key:"checkCoordinateOrigin",value:function(A){return void 0===A||"center"===A||"top-left"===A}},{key:"updateGroupOptions",value:function(e,t,i){var r;if(void 0!==i){var n=e.group;if(void 0!==t&&void 0!==t.group&&n!==t.group)throw new Error("updateGroupOptions: group values in options don't match.");if("number"==typeof n||"string"==typeof n&&""!=n){var g=i.get(n);void 0!==g.opacity&&void 0===t.opacity&&(A.checkOpacity(g.opacity)||(console.error("Invalid option for node opacity. Value must be between 0 and 1, found: "+g.opacity),g.opacity=void 0));var o=nr(r=LC(t)).call(r,(function(A){return null!=t[A]}));o.push("font"),Fn(o,e,g),e.color=Tn(e.color)}}}},{key:"parseOptions",value:function(e,t){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},n=arguments.length>4?arguments[4]:void 0,g=["color","fixed","shadow"];if(Fn(g,e,t,i),A.checkMass(t),void 0!==e.opacity&&(A.checkOpacity(e.opacity)||(console.error("Invalid option for node opacity. Value must be between 0 and 1, found: "+e.opacity),e.opacity=void 0)),void 0!==t.opacity&&(A.checkOpacity(t.opacity)||(console.error("Invalid option for node opacity. Value must be between 0 and 1, found: "+t.opacity),t.opacity=void 0)),t.shapeProperties&&!A.checkCoordinateOrigin(t.shapeProperties.coordinateOrigin)&&console.error("Invalid option for node coordinateOrigin, found: "+t.shapeProperties.coordinateOrigin),Zn(e,t,"shadow",r),void 0!==t.color&&null!==t.color){var o=Tn(t.color);Rn(e.color,o)}else!0===i&&null===t.color&&(e.color=zn(r.color));void 0!==t.fixed&&null!==t.fixed&&("boolean"==typeof t.fixed?(e.fixed.x=t.fixed,e.fixed.y=t.fixed):(void 0!==t.fixed.x&&"boolean"==typeof t.fixed.x&&(e.fixed.x=t.fixed.x),void 0!==t.fixed.y&&"boolean"==typeof t.fixed.y&&(e.fixed.y=t.fixed.y))),!0===i&&null===t.font&&(e.font=zn(r.font)),A.updateGroupOptions(e,t,n),void 0!==t.scaling&&Zn(e.scaling,t.scaling,"label",r.scaling)}},{key:"checkMass",value:function(A,e){if(void 0!==A.mass&&A.mass<=0){var t="";void 0!==e&&(t=" in node id: "+e),console.log("%cNegative or zero mass disallowed"+t+", setting mass to 1.",Os),A.mass=1}}}]),A}();function zs(A,e){var t;if(void 0===cn||null==$t(A)){if(Wr(A)||(t=function(A,e){var t;if(!A)return;if("string"==typeof A)return Zs(A,e);var i=rn(t=Object.prototype.toString.call(A)).call(t,8,-1);"Object"===i&&A.constructor&&(i=A.constructor.name);if("Map"===i||"Set"===i)return Ci(A);if("Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i))return Zs(A,e)}(A))||e&&A&&"number"==typeof A.length){t&&(A=t);var i=0,r=function(){};return{s:r,n:function(){return i>=A.length?{done:!0}:{done:!1,value:A[i++]}},e:function(A){throw A},f:r}}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 n,g=!0,o=!1;return{s:function(){t=Wt(A)},n:function(){var A=t.next();return g=A.done,A},e:function(A){o=!0,n=A},f:function(){try{g||null==t.return||t.return()}finally{if(o)throw n}}}}function Zs(A,e){(null==e||e>A.length)&&(e=A.length);for(var t=0,i=new Array(e);t<e;t++)i[t]=A[t];return i}var Xs=function(){function A(e,t,i,r){var n,g=this;if(Ma(this,A),this.body=e,this.images=t,this.groups=i,this.layoutEngine=r,this.body.functions.createNode=$(n=this.create).call(n,this),this.nodesListeners={add:function(A,e){g.add(e.items)},update:function(A,e){g.update(e.items,e.data,e.oldData)},remove:function(A,e){g.remove(e.items)}},this.defaultOptions={borderWidth:1,borderWidthSelected:2,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(A,e,t,i){if(e===A)return.5;var r=1/(e-A);return Math.max(0,(i-A)*r)}},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=zn(this.defaultOptions),this.bindEventListeners()}return Ga(A,[{key:"bindEventListeners",value:function(){var A,e,t=this;this.body.emitter.on("refreshNodes",$(A=this.refresh).call(A,this)),this.body.emitter.on("refresh",$(e=this.refresh).call(e,this)),this.body.emitter.on("destroy",(function(){Un(t.nodesListeners,(function(A,e){t.body.data.nodes&&t.body.data.nodes.off(e,A)})),delete t.body.functions.createNode,delete t.nodesListeners.add,delete t.nodesListeners.update,delete t.nodesListeners.remove,delete t.nodesListeners}))}},{key:"setOptions",value:function(A){if(void 0!==A){if(Vs.parseOptions(this.options,A),void 0!==A.opacity&&(za(A.opacity)||!Va(A.opacity)||A.opacity<0||A.opacity>1?console.error("Invalid option for node opacity. Value must be between 0 and 1, found: "+A.opacity):this.options.opacity=A.opacity),void 0!==A.shape)for(var e in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,e)&&this.body.nodes[e].updateShape();if(void 0!==A.font||void 0!==A.widthConstraint||void 0!==A.heightConstraint)for(var t=0,i=qr(this.body.nodes);t<i.length;t++){var r=i[t];this.body.nodes[r].updateLabelModule(),this.body.nodes[r].needsRefresh()}if(void 0!==A.size)for(var n in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,n)&&this.body.nodes[n].needsRefresh();void 0===A.hidden&&void 0===A.physics||this.body.emitter.emit("_dataChanged")}}},{key:"setData",value:function(A){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],t=this.body.data.nodes;if(A instanceof FC||A instanceof xC)this.body.data.nodes=A;else if(Wr(A))this.body.data.nodes=new FC,this.body.data.nodes.add(A);else{if(A)throw new TypeError("Array or DataSet expected");this.body.data.nodes=new FC}if(t&&Un(this.nodesListeners,(function(A,e){t.off(e,A)})),this.body.nodes={},this.body.data.nodes){var i=this;Un(this.nodesListeners,(function(A,e){i.body.data.nodes.on(e,A)}));var r=this.body.data.nodes.getIds();this.add(r,!0)}!1===e&&this.body.emitter.emit("_dataChanged")}},{key:"add",value:function(A){for(var e,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=[],r=0;r<A.length;r++){e=A[r];var n=this.body.data.nodes.get(e),g=this.create(n);i.push(g),this.body.nodes[e]=g}this.layoutEngine.positionInitially(i),!1===t&&this.body.emitter.emit("_dataChanged")}},{key:"update",value:function(A,e,t){for(var i=this.body.nodes,r=!1,n=0;n<A.length;n++){var g=A[n],o=i[g],a=e[n];void 0!==o?o.setOptions(a)&&(r=!0):(r=!0,o=this.create(a),i[g]=o)}r||void 0===t||(r=qa(e).call(e,(function(A,e){var i=t[e];return i&&i.level!==A.level}))),!0===r?this.body.emitter.emit("_dataChanged"):this.body.emitter.emit("_dataUpdated")}},{key:"remove",value:function(A){for(var e=this.body.nodes,t=0;t<A.length;t++){delete e[A[t]]}this.body.emitter.emit("_dataChanged")}},{key:"create",value:function(A){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Vs;return new e(A,this.body,this.images,this.groups,this.options,this.defaultOptions)}},{key:"refresh",value:function(){var A=this,e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];Un(this.body.nodes,(function(t,i){var r=A.body.data.nodes.get(i);void 0!==r&&(!0===e&&t.setOptions({x:null,y:null}),t.setOptions({fixed:!1}),t.setOptions(r))}))}},{key:"getPositions",value:function(A){var e={};if(void 0!==A){if(!0===Wr(A)){for(var t=0;t<A.length;t++)if(void 0!==this.body.nodes[A[t]]){var i=this.body.nodes[A[t]];e[A[t]]={x:Math.round(i.x),y:Math.round(i.y)}}}else if(void 0!==this.body.nodes[A]){var r=this.body.nodes[A];e[A]={x:Math.round(r.x),y:Math.round(r.y)}}}else for(var n=0;n<this.body.nodeIndices.length;n++){var g=this.body.nodes[this.body.nodeIndices[n]];e[this.body.nodeIndices[n]]={x:Math.round(g.x),y:Math.round(g.y)}}return e}},{key:"getPosition",value:function(A){if(null==A)throw new TypeError("No id was specified for getPosition method.");if(null==this.body.nodes[A])throw new ReferenceError("NodeId provided for getPosition does not exist. Provided: ".concat(A));return{x:Math.round(this.body.nodes[A].x),y:Math.round(this.body.nodes[A].y)}}},{key:"storePositions",value:function(){var A,e=[],t=this.body.data.nodes.getDataSet(),i=zs(t.get());try{for(i.s();!(A=i.n()).done;){var r=A.value,n=r.id,g=this.body.nodes[n],o=Math.round(g.x),a=Math.round(g.y);r.x===o&&r.y===a||e.push({id:n,x:o,y:a})}}catch(A){i.e(A)}finally{i.f()}t.update(e)}},{key:"getBoundingBox",value:function(A){if(void 0!==this.body.nodes[A])return this.body.nodes[A].shape.boundingBox}},{key:"getConnectedNodes",value:function(A,e){var t=[];if(void 0!==this.body.nodes[A])for(var i=this.body.nodes[A],r={},n=0;n<i.edges.length;n++){var g=i.edges[n];"to"!==e&&g.toId==i.id?void 0===r[g.fromId]&&(t.push(g.fromId),r[g.fromId]=!0):"from"!==e&&g.fromId==i.id&&void 0===r[g.toId]&&(t.push(g.toId),r[g.toId]=!0)}return t}},{key:"getConnectedEdges",value:function(A){var e=[];if(void 0!==this.body.nodes[A])for(var t=this.body.nodes[A],i=0;i<t.edges.length;i++)e.push(t.edges[i].id);else console.log("NodeId provided for getConnectedEdges does not exist. Provided: ",A);return e}},{key:"moveNode",value:function(A,e,t){var i=this;void 0!==this.body.nodes[A]?(this.body.nodes[A].x=Number(e),this.body.nodes[A].y=Number(t),La((function(){i.body.emitter.emit("startSimulation")}),0)):console.log("Node id supplied to moveNode does not exist. Provided: ",A)}}]),A}(),Ws=TA;q({target:"Reflect",stat:!0},{get:function A(e,t){var i,r,n=arguments.length<3?e:arguments[2];return L(e)===n?e[t]:(i=k.f(e,t))?y(i,"value")?i.value:void 0===i.get?void 0:i.get.call(n):f(r=Nt(e))?A(r,t,n):void 0}});var $s=Y.Reflect.get;var Ac=function(A,e){for(;!Object.prototype.hasOwnProperty.call(A,e)&&null!==(A=bI(A)););return A},ec=r((function(A){function e(t,i,r){return"undefined"!=typeof Reflect&&$s?A.exports=e=$s:A.exports=e=function(A,e,t){var i=Ac(A,e);if(i){var r=Ws(i,e);return r.get?r.get.call(t):r.value}},e(t,i,r||t)}A.exports=e})),tc=Math.hypot,ic=Math.abs,rc=Math.sqrt,nc=!!tc&&tc(1/0,NaN)!==1/0;q({target:"Math",stat:!0,forced:nc},{hypot:function(A,e){for(var t,i,r=0,n=0,g=arguments.length,o=0;n<g;)o<(t=ic(arguments[n++]))?(r=r*(i=o/t)*i+1,o=t):r+=t>0?(i=t/o)*i:t;return o===1/0?1/0:o*rc(r)}});var gc=Y.Math.hypot;function oc(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var ac=function(){function A(){Ma(this,A)}return Ga(A,null,[{key:"transform",value:function(A,e){Wr(A)||(A=[A]);for(var t=e.point.x,i=e.point.y,r=e.angle,n=e.length,g=0;g<A.length;++g){var o=A[g],a=o.x*Math.cos(r)-o.y*Math.sin(r),I=o.x*Math.sin(r)+o.y*Math.cos(r);o.x=t+n*a,o.y=i+n*I}}},{key:"drawPath",value:function(A,e){A.beginPath(),A.moveTo(e[0].x,e[0].y);for(var t=1;t<e.length;++t)A.lineTo(e[t].x,e[t].y);A.closePath()}}]),A}(),Ic=function(A){DI(t,A);var e=oc(t);function t(){return Ma(this,t),e.apply(this,arguments)}return Ga(t,null,[{key:"draw",value:function(A,e){if(e.image){A.save(),A.translate(e.point.x,e.point.y),A.rotate(Math.PI/2+e.angle);var t=null!=e.imageWidth?e.imageWidth:e.image.width,i=null!=e.imageHeight?e.imageHeight:e.image.height;e.image.drawImageAtPosition(A,1,-t/2,0,t,i),A.restore()}return!1}}]),t}(ac),Cc=function(A){DI(t,A);var e=oc(t);function t(){return Ma(this,t),e.apply(this,arguments)}return Ga(t,null,[{key:"draw",value:function(A,e){var t=[{x:0,y:0},{x:-1,y:.3},{x:-.9,y:0},{x:-1,y:-.3}];return ac.transform(t,e),ac.drawPath(A,t),!0}}]),t}(ac),sc=function(){function A(){Ma(this,A)}return Ga(A,null,[{key:"draw",value:function(A,e){var t=[{x:-1,y:0},{x:0,y:.3},{x:-.4,y:0},{x:0,y:-.3}];return ac.transform(t,e),ac.drawPath(A,t),!0}}]),A}(),cc=function(){function A(){Ma(this,A)}return Ga(A,null,[{key:"draw",value:function(A,e){var t={x:-.4,y:0};ac.transform(t,e),A.strokeStyle=A.fillStyle,A.fillStyle="rgba(0, 0, 0, 0)";var i=Math.PI,r=e.angle-i/2,n=e.angle+i/2;return A.beginPath(),A.arc(t.x,t.y,.4*e.length,r,n,!1),A.stroke(),!0}}]),A}(),lc=function(){function A(){Ma(this,A)}return Ga(A,null,[{key:"draw",value:function(A,e){var t={x:-.3,y:0};ac.transform(t,e),A.strokeStyle=A.fillStyle,A.fillStyle="rgba(0, 0, 0, 0)";var i=Math.PI,r=e.angle+i/2,n=e.angle+3*i/2;return A.beginPath(),A.arc(t.x,t.y,.4*e.length,r,n,!1),A.stroke(),!0}}]),A}(),Bc=function(){function A(){Ma(this,A)}return Ga(A,null,[{key:"draw",value:function(A,e){var t=[{x:.02,y:0},{x:-1,y:.3},{x:-1,y:-.3}];return ac.transform(t,e),ac.drawPath(A,t),!0}}]),A}(),Qc=function(){function A(){Ma(this,A)}return Ga(A,null,[{key:"draw",value:function(A,e){var t=[{x:0,y:.3},{x:0,y:-.3},{x:-1,y:0}];return ac.transform(t,e),ac.drawPath(A,t),!0}}]),A}(),uc=function(){function A(){Ma(this,A)}return Ga(A,null,[{key:"draw",value:function(A,e){var t={x:-.4,y:0};return ac.transform(t,e),pA(A,t.x,t.y,.4*e.length),!0}}]),A}(),Ec=function(){function A(){Ma(this,A)}return Ga(A,null,[{key:"draw",value:function(A,e){var t=[{x:0,y:.5},{x:0,y:-.5},{x:-.15,y:-.5},{x:-.15,y:.5}];return ac.transform(t,e),ac.drawPath(A,t),!0}}]),A}(),hc=function(){function A(){Ma(this,A)}return Ga(A,null,[{key:"draw",value:function(A,e){var t=[{x:0,y:.3},{x:0,y:-.3},{x:-.6,y:-.3},{x:-.6,y:.3}];return ac.transform(t,e),ac.drawPath(A,t),!0}}]),A}(),fc=function(){function A(){Ma(this,A)}return Ga(A,null,[{key:"draw",value:function(A,e){var t=[{x:0,y:0},{x:-.5,y:-.3},{x:-1,y:0},{x:-.5,y:.3}];return ac.transform(t,e),ac.drawPath(A,t),!0}}]),A}(),dc=function(){function A(){Ma(this,A)}return Ga(A,null,[{key:"draw",value:function(A,e){var t=[{x:-1,y:.3},{x:-.5,y:0},{x:-1,y:-.3},{x:0,y:0}];return ac.transform(t,e),ac.drawPath(A,t),!0}}]),A}(),pc=function(){function A(){Ma(this,A)}return Ga(A,null,[{key:"draw",value:function(A,e){var t;switch(e.type&&(t=e.type.toLowerCase()),t){case"image":return Ic.draw(A,e);case"circle":return uc.draw(A,e);case"box":return hc.draw(A,e);case"crow":return sc.draw(A,e);case"curve":return cc.draw(A,e);case"diamond":return fc.draw(A,e);case"inv_curve":return lc.draw(A,e);case"triangle":return Bc.draw(A,e);case"inv_triangle":return Qc.draw(A,e);case"bar":return Ec.draw(A,e);case"vee":return dc.draw(A,e);case"arrow":default:return Cc.draw(A,e)}}}]),A}();function yc(A,e){var t=qr(A);if(Dt){var i=Dt(A);e&&(i=nr(i).call(i,(function(e){return HA(A,e).enumerable}))),t.push.apply(t,i)}return t}function wc(A){for(var e=1;e<arguments.length;e++){var t,i=null!=arguments[e]?arguments[e]:{};if(e%2)Yi(t=yc(Object(i),!0)).call(t,(function(e){ui(A,e,i[e])}));else if(UA)RA(A,UA(i));else{var r;Yi(r=yc(Object(i))).call(r,(function(e){NA(A,e,HA(i,e))}))}}return A}var Dc=function(){function A(e,t,i){Ma(this,A),this._body=t,this._labelModule=i,this.color={},this.colorDirty=!0,this.hoverWidth=1.5,this.selectionWidth=2,this.setOptions(e),this.fromPoint=this.from,this.toPoint=this.to}return Ga(A,[{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(A){this.options=A,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(A,e,t,i){var r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:this.getViaNode();A.strokeStyle=this.getColor(A,e),A.lineWidth=e.width,!1!==e.dashes?this._drawDashedLine(A,e,r):this._drawLine(A,e,r)}},{key:"_drawLine",value:function(A,e,t,i,r){if(this.from!=this.to)this._line(A,e,t,i,r);else{var n=this._getCircleData(A),g=Tr(n,3),o=g[0],a=g[1],I=g[2];this._circle(A,e,o,a,I)}}},{key:"_drawDashedLine",value:function(A,e,t,i,r){A.lineCap="round";var n=Wr(e.dashes)?e.dashes:[5,5];if(void 0!==A.setLineDash){if(A.save(),A.setLineDash(n),A.lineDashOffset=0,this.from!=this.to)this._line(A,e,t);else{var g=this._getCircleData(A),o=Tr(g,3),a=o[0],I=o[1],C=o[2];this._circle(A,e,a,I,C)}A.setLineDash([0]),A.lineDashOffset=0,A.restore()}else{if(this.from!=this.to)vA(A,this.from.x,this.from.y,this.to.x,this.to.y,n);else{var s=this._getCircleData(A),c=Tr(s,3),l=c[0],B=c[1],Q=c[2];this._circle(A,e,l,B,Q)}this.enableShadow(A,e),A.stroke(),this.disableShadow(A,e)}}},{key:"findBorderPosition",value:function(A,e,t){return this.from!=this.to?this._findBorderPosition(A,e,t):this._findBorderPositionCircle(A,e,t)}},{key:"findBorderPositions",value:function(A){if(this.from!=this.to)return{from:this._findBorderPosition(this.from,A),to:this._findBorderPosition(this.to,A)};var e,t=rn(e=this._getCircleData(A)).call(e,0,2),i=Tr(t,2),r=i[0],n=i[1];return{from:this._findBorderPositionCircle(this.from,A,{x:r,y:n,low:.25,high:.6,direction:-1}),to:this._findBorderPositionCircle(this.from,A,{x:r,y:n,low:.6,high:.8,direction:1})}}},{key:"_getCircleData",value:function(A){var e=this.options.selfReference.size;void 0!==A&&void 0===this.from.shape.width&&this.from.shape.resize(A);var t=PC(A,this.options.selfReference.angle,e,this.from);return[t.x,t.y,e]}},{key:"_pointOnCircle",value:function(A,e,t,i){var r=2*i*Math.PI;return{x:A+t*Math.cos(r),y:e-t*Math.sin(r)}}},{key:"_findBorderPositionCircle",value:function(A,e,t){var i,r=t.x,n=t.y,g=t.low,o=t.high,a=t.direction,I=this.options.selfReference.size,C=.5*(g+o),s=0;!0===this.options.arrowStrikethrough&&(-1===a?s=this.options.endPointOffset.from:1===a&&(s=this.options.endPointOffset.to));var c=0;do{C=.5*(g+o),i=this._pointOnCircle(r,n,I,C);var l=Math.atan2(A.y-i.y,A.x-i.x),B=A.distanceToBorder(e,l)+s-Math.sqrt(Math.pow(i.x-A.x,2)+Math.pow(i.y-A.y,2));if(Math.abs(B)<.05)break;B>0?a>0?g=C:o=C:a>0?o=C:g=C,++c}while(g<=o&&c<10);return wc(wc({},i),{},{t:C})}},{key:"getLineWidth",value:function(A,e){return!0===A?Math.max(this.selectionWidth,.3/this._body.view.scale):!0===e?Math.max(this.hoverWidth,.3/this._body.view.scale):Math.max(this.options.width,.3/this._body.view.scale)}},{key:"getColor",value:function(A,e){if(!1!==e.inheritsColor){if("both"===e.inheritsColor&&this.from.id!==this.to.id){var t=A.createLinearGradient(this.from.x,this.from.y,this.to.x,this.to.y),i=this.from.options.color.highlight.border,r=this.to.options.color.highlight.border;return!1===this.from.selected&&!1===this.to.selected?(i=Kn(this.from.options.color.border,e.opacity),r=Kn(this.to.options.color.border,e.opacity)):!0===this.from.selected&&!1===this.to.selected?r=this.to.options.color.border:!1===this.from.selected&&!0===this.to.selected&&(i=this.from.options.color.border),t.addColorStop(0,i),t.addColorStop(1,r),t}return"to"===e.inheritsColor?Kn(this.to.options.color.border,e.opacity):Kn(this.from.options.color.border,e.opacity)}return Kn(e.color,e.opacity)}},{key:"_circle",value:function(A,e,t,i,r){this.enableShadow(A,e);var n=0,g=2*Math.PI;if(!this.options.selfReference.renderBehindTheNode){var o=this.options.selfReference.angle,a=this.options.selfReference.angle+Math.PI,I=this._findBorderPositionCircle(this.from,A,{x:t,y:i,low:o,high:a,direction:-1}),C=this._findBorderPositionCircle(this.from,A,{x:t,y:i,low:o,high:a,direction:1});n=Math.atan2(I.y-i,I.x-t),g=Math.atan2(C.y-i,C.x-t)}A.beginPath(),A.arc(t,i,r,n,g,!1),A.stroke(),this.disableShadow(A,e)}},{key:"getDistanceToEdge",value:function(A,e,t,i,r,n){if(this.from!=this.to)return this._getDistanceToEdge(A,e,t,i,r,n);var g=this._getCircleData(void 0),o=Tr(g,3),a=o[0],I=o[1],C=o[2],s=a-r,c=I-n;return Math.abs(Math.sqrt(s*s+c*c)-C)}},{key:"_getDistanceToLine",value:function(A,e,t,i,r,n){var g=t-A,o=i-e,a=((r-A)*g+(n-e)*o)/(g*g+o*o);a>1?a=1:a<0&&(a=0);var I=A+a*g-r,C=e+a*o-n;return Math.sqrt(I*I+C*C)}},{key:"getArrowData",value:function(A,e,t,i,r,n){var g,o,a,I,C,s,c,l=n.width;"from"===e?(a=this.from,I=this.to,C=n.fromArrowScale<0,s=Math.abs(n.fromArrowScale),c=n.fromArrowType):"to"===e?(a=this.to,I=this.from,C=n.toArrowScale<0,s=Math.abs(n.toArrowScale),c=n.toArrowType):(a=this.to,I=this.from,C=n.middleArrowScale<0,s=Math.abs(n.middleArrowScale),c=n.middleArrowType);var B=15*s+3*l;if(a!=I){var Q=B/gc(a.x-I.x,a.y-I.y);if("middle"!==e)if(!0===this.options.smooth.enabled){var u=this._findBorderPosition(a,A,{via:t}),E=this.getPoint(u.t+Q*("from"===e?1:-1),t);g=Math.atan2(u.y-E.y,u.x-E.x),o=u}else g=Math.atan2(a.y-I.y,a.x-I.x),o=this._findBorderPosition(a,A);else{var h=(C?-Q:Q)/2,f=this.getPoint(.5+h,t),d=this.getPoint(.5-h,t);g=Math.atan2(f.y-d.y,f.x-d.x),o=this.getPoint(.5,t)}}else{var p=this._getCircleData(A),y=Tr(p,3),w=y[0],D=y[1],v=y[2];if("from"===e){var m=this.options.selfReference.angle,b=this.options.selfReference.angle+Math.PI,k=this._findBorderPositionCircle(this.from,A,{x:w,y:D,low:m,high:b,direction:-1});g=-2*k.t*Math.PI+1.5*Math.PI+.1*Math.PI,o=k}else if("to"===e){var N=this.options.selfReference.angle,M=this.options.selfReference.angle+Math.PI,R=this._findBorderPositionCircle(this.from,A,{x:w,y:D,low:N,high:M,direction:1});g=-2*R.t*Math.PI+1.5*Math.PI-1.1*Math.PI,o=R}else{var G=this.options.selfReference.angle/(2*Math.PI);o=this._pointOnCircle(w,D,v,G),g=-2*G*Math.PI+1.5*Math.PI+.1*Math.PI}}return{point:o,core:{x:o.x-.9*B*Math.cos(g),y:o.y-.9*B*Math.sin(g)},angle:g,length:B,type:c}}},{key:"drawArrowHead",value:function(A,e,t,i,r){A.strokeStyle=this.getColor(A,e),A.fillStyle=A.strokeStyle,A.lineWidth=e.width,pc.draw(A,r)&&(this.enableShadow(A,e),ts(A).call(A),this.disableShadow(A,e))}},{key:"enableShadow",value:function(A,e){!0===e.shadow&&(A.shadowColor=e.shadowColor,A.shadowBlur=e.shadowSize,A.shadowOffsetX=e.shadowX,A.shadowOffsetY=e.shadowY)}},{key:"disableShadow",value:function(A,e){!0===e.shadow&&(A.shadowColor="rgba(0,0,0,0)",A.shadowBlur=0,A.shadowOffsetX=0,A.shadowOffsetY=0)}},{key:"drawBackground",value:function(A,e){if(!1!==e.background){var t={strokeStyle:A.strokeStyle,lineWidth:A.lineWidth,dashes:A.dashes};A.strokeStyle=e.backgroundColor,A.lineWidth=e.backgroundSize,this.setStrokeDashed(A,e.backgroundDashes),A.stroke(),A.strokeStyle=t.strokeStyle,A.lineWidth=t.lineWidth,A.dashes=t.dashes,this.setStrokeDashed(A,e.dashes)}}},{key:"setStrokeDashed",value:function(A,e){if(!1!==e)if(void 0!==A.setLineDash){var t=Wr(e)?e:[5,5];A.setLineDash(t)}else console.warn("setLineDash is not supported in this browser. The dashed stroke cannot be used.");else void 0!==A.setLineDash?A.setLineDash([]):console.warn("setLineDash is not supported in this browser. The dashed stroke cannot be used.")}}]),A}();function vc(A,e){var t=qr(A);if(Dt){var i=Dt(A);e&&(i=nr(i).call(i,(function(e){return HA(A,e).enumerable}))),t.push.apply(t,i)}return t}function mc(A){for(var e=1;e<arguments.length;e++){var t,i=null!=arguments[e]?arguments[e]:{};if(e%2)Yi(t=vc(Object(i),!0)).call(t,(function(e){ui(A,e,i[e])}));else if(UA)RA(A,UA(i));else{var r;Yi(r=vc(Object(i))).call(r,(function(e){NA(A,e,HA(i,e))}))}}return A}function bc(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var kc=function(A){DI(t,A);var e=bc(t);function t(A,i,r){return Ma(this,t),e.call(this,A,i,r)}return Ga(t,[{key:"_findBorderPositionBezier",value:function(A,e){var t,i,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this._getViaCoordinates(),n=10,g=.2,o=!1,a=1,I=0,C=this.to,s=this.options.endPointOffset?this.options.endPointOffset.to:0;A.id===this.from.id&&(C=this.from,o=!0,s=this.options.endPointOffset?this.options.endPointOffset.from:0),!1===this.options.arrowStrikethrough&&(s=0);var c=0;do{i=.5*(I+a),t=this.getPoint(i,r);var l=Math.atan2(C.y-t.y,C.x-t.x),B=C.distanceToBorder(e,l)+s,Q=Math.sqrt(Math.pow(t.x-C.x,2)+Math.pow(t.y-C.y,2)),u=B-Q;if(Math.abs(u)<g)break;u<0?!1===o?I=i:a=i:!1===o?a=i:I=i,++c}while(I<=a&&c<n);return mc(mc({},t),{},{t:i})}},{key:"_getDistanceToBezierEdge",value:function(A,e,t,i,r,n,g){var o,a,I,C,s,c=1e9,l=A,B=e;for(a=1;a<10;a++)I=.1*a,C=Math.pow(1-I,2)*A+2*I*(1-I)*g.x+Math.pow(I,2)*t,s=Math.pow(1-I,2)*e+2*I*(1-I)*g.y+Math.pow(I,2)*i,a>0&&(c=(o=this._getDistanceToLine(l,B,C,s,r,n))<c?o:c),l=C,B=s;return c}},{key:"_bezierCurve",value:function(A,e,t,i){A.beginPath(),A.moveTo(this.fromPoint.x,this.fromPoint.y),null!=t&&null!=t.x?null!=i&&null!=i.x?A.bezierCurveTo(t.x,t.y,i.x,i.y,this.toPoint.x,this.toPoint.y):A.quadraticCurveTo(t.x,t.y,this.toPoint.x,this.toPoint.y):A.lineTo(this.toPoint.x,this.toPoint.y),this.drawBackground(A,e),this.enableShadow(A,e),A.stroke(),this.disableShadow(A,e)}},{key:"getViaNode",value:function(){return this._getViaCoordinates()}}]),t}(Dc);function Nc(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var Mc=function(A){DI(t,A);var e=Nc(t);function t(A,i,r){var n;return Ma(this,t),(n=e.call(this,A,i,r)).via=n.via,n._boundFunction=function(){n.positionBezierNode()},n._body.emitter.on("_repositionBezierNodes",n._boundFunction),n}return Ga(t,[{key:"setOptions",value:function(A){ec(bI(t.prototype),"setOptions",this).call(this,A);var e=!1;this.options.physics!==A.physics&&(e=!0),this.options=A,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===e&&(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 A="edgeId:"+this.id,e=this._body.functions.createNode({id:A,shape:"circle",physics:!0,hidden:!0});this._body.nodes[A]=e,this.via=e,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(A,e,t){this._bezierCurve(A,e,t)}},{key:"_getViaCoordinates",value:function(){return this.via}},{key:"getViaNode",value:function(){return this.via}},{key:"getPoint",value:function(A){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.via;if(this.from===this.to){var t=this._getCircleData(),i=Tr(t,3),r=i[0],n=i[1],g=i[2],o=2*Math.PI*(1-A);return{x:r+g*Math.sin(o),y:n+g-g*(1-Math.cos(o))}}return{x:Math.pow(1-A,2)*this.fromPoint.x+2*A*(1-A)*e.x+Math.pow(A,2)*this.toPoint.x,y:Math.pow(1-A,2)*this.fromPoint.y+2*A*(1-A)*e.y+Math.pow(A,2)*this.toPoint.y}}},{key:"_findBorderPosition",value:function(A,e){return this._findBorderPositionBezier(A,e,this.via)}},{key:"_getDistanceToEdge",value:function(A,e,t,i,r,n){return this._getDistanceToBezierEdge(A,e,t,i,r,n,this.via)}}]),t}(kc);function Rc(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var Gc=function(A){DI(t,A);var e=Rc(t);function t(A,i,r){return Ma(this,t),e.call(this,A,i,r)}return Ga(t,[{key:"_line",value:function(A,e,t){this._bezierCurve(A,e,t)}},{key:"getViaNode",value:function(){return this._getViaCoordinates()}},{key:"_getViaCoordinates",value:function(){var A,e,t=this.options.smooth.roundness,i=this.options.smooth.type,r=Math.abs(this.from.x-this.to.x),n=Math.abs(this.from.y-this.to.y);if("discrete"===i||"diagonalCross"===i){var g,o;g=o=r<=n?t*n:t*r,this.from.x>this.to.x&&(g=-g),this.from.y>=this.to.y&&(o=-o);var a=this.from.x+g,I=this.from.y+o;return"discrete"===i&&(r<=n?a=r<t*n?this.from.x:a:I=n<t*r?this.from.y:I),{x:a,y:I}}if("straightCross"===i){var C=(1-t)*r,s=(1-t)*n;return r<=n?(C=0,this.from.y<this.to.y&&(s=-s)):(this.from.x<this.to.x&&(C=-C),s=0),{x:this.to.x+C,y:this.to.y+s}}if("horizontal"===i){var c=(1-t)*r;return this.from.x<this.to.x&&(c=-c),{x:this.to.x+c,y:this.from.y}}if("vertical"===i){var l=(1-t)*n;return this.from.y<this.to.y&&(l=-l),{x:this.from.x,y:this.to.y+l}}if("curvedCW"===i){r=this.to.x-this.from.x,n=this.from.y-this.to.y;var B=Math.sqrt(r*r+n*n),Q=Math.PI,u=(Math.atan2(n,r)+(.5*t+.5)*Q)%(2*Q);return{x:this.from.x+(.5*t+.5)*B*Math.sin(u),y:this.from.y+(.5*t+.5)*B*Math.cos(u)}}if("curvedCCW"===i){r=this.to.x-this.from.x,n=this.from.y-this.to.y;var E=Math.sqrt(r*r+n*n),h=Math.PI,f=(Math.atan2(n,r)+(.5*-t+.5)*h)%(2*h);return{x:this.from.x+(.5*t+.5)*E*Math.sin(f),y:this.from.y+(.5*t+.5)*E*Math.cos(f)}}A=e=r<=n?t*n:t*r,this.from.x>this.to.x&&(A=-A),this.from.y>=this.to.y&&(e=-e);var d=this.from.x+A,p=this.from.y+e;return r<=n?d=this.from.x<=this.to.x?this.to.x<d?this.to.x:d:this.to.x>d?this.to.x:d:p=this.from.y>=this.to.y?this.to.y>p?this.to.y:p:this.to.y<p?this.to.y:p,{x:d,y:p}}},{key:"_findBorderPosition",value:function(A,e){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this._findBorderPositionBezier(A,e,t.via)}},{key:"_getDistanceToEdge",value:function(A,e,t,i,r,n){var g=arguments.length>6&&void 0!==arguments[6]?arguments[6]:this._getViaCoordinates();return this._getDistanceToBezierEdge(A,e,t,i,r,n,g)}},{key:"getPoint",value:function(A){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this._getViaCoordinates(),t=A,i=Math.pow(1-t,2)*this.fromPoint.x+2*t*(1-t)*e.x+Math.pow(t,2)*this.toPoint.x,r=Math.pow(1-t,2)*this.fromPoint.y+2*t*(1-t)*e.y+Math.pow(t,2)*this.toPoint.y;return{x:i,y:r}}}]),t}(kc);function Fc(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}function xc(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var Sc=function(A){DI(t,A);var e=xc(t);function t(A,i,r){return Ma(this,t),e.call(this,A,i,r)}return Ga(t,[{key:"_line",value:function(A,e,t){var i=t[0],r=t[1];this._bezierCurve(A,e,i,r)}},{key:"_getViaCoordinates",value:function(){var A,e,t,i,r=this.from.x-this.to.x,n=this.from.y-this.to.y,g=this.options.smooth.roundness;return(Math.abs(r)>Math.abs(n)||!0===this.options.smooth.forceDirection||"horizontal"===this.options.smooth.forceDirection)&&"vertical"!==this.options.smooth.forceDirection?(e=this.from.y,i=this.to.y,A=this.from.x-g*r,t=this.to.x+g*r):(e=this.from.y-g*n,i=this.to.y+g*n,A=this.from.x,t=this.to.x),[{x:A,y:e},{x:t,y:i}]}},{key:"getViaNode",value:function(){return this._getViaCoordinates()}},{key:"_findBorderPosition",value:function(A,e){return this._findBorderPositionBezier(A,e)}},{key:"_getDistanceToEdge",value:function(A,e,t,i,r,n){var g=arguments.length>6&&void 0!==arguments[6]?arguments[6]:this._getViaCoordinates(),o=Tr(g,2),a=o[0],I=o[1];return this._getDistanceToBezierEdge2(A,e,t,i,r,n,a,I)}},{key:"getPoint",value:function(A){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this._getViaCoordinates(),t=Tr(e,2),i=t[0],r=t[1],n=A,g=[Math.pow(1-n,3),3*n*Math.pow(1-n,2),3*Math.pow(n,2)*(1-n),Math.pow(n,3)],o=g[0]*this.fromPoint.x+g[1]*i.x+g[2]*r.x+g[3]*this.toPoint.x,a=g[0]*this.fromPoint.y+g[1]*i.y+g[2]*r.y+g[3]*this.toPoint.y;return{x:o,y:a}}}]),t}(function(A){DI(t,A);var e=Fc(t);function t(A,i,r){return Ma(this,t),e.call(this,A,i,r)}return Ga(t,[{key:"_getDistanceToBezierEdge2",value:function(A,e,t,i,r,n,g,o){for(var a=1e9,I=A,C=e,s=[0,0,0,0],c=1;c<10;c++){var l=.1*c;s[0]=Math.pow(1-l,3),s[1]=3*l*Math.pow(1-l,2),s[2]=3*Math.pow(l,2)*(1-l),s[3]=Math.pow(l,3);var B=s[0]*A+s[1]*g.x+s[2]*o.x+s[3]*t,Q=s[0]*e+s[1]*g.y+s[2]*o.y+s[3]*i;if(c>0){var u=this._getDistanceToLine(I,C,B,Q,r,n);a=u<a?u:a}I=B,C=Q}return a}}]),t}(kc));function Yc(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var _c=function(A){DI(t,A);var e=Yc(t);function t(A,i,r){return Ma(this,t),e.call(this,A,i,r)}return Ga(t,[{key:"_line",value:function(A,e){A.beginPath(),A.moveTo(this.fromPoint.x,this.fromPoint.y),A.lineTo(this.toPoint.x,this.toPoint.y),this.enableShadow(A,e),A.stroke(),this.disableShadow(A,e)}},{key:"getViaNode",value:function(){}},{key:"getPoint",value:function(A){return{x:(1-A)*this.fromPoint.x+A*this.toPoint.x,y:(1-A)*this.fromPoint.y+A*this.toPoint.y}}},{key:"_findBorderPosition",value:function(A,e){var t=this.to,i=this.from;A.id===this.from.id&&(t=this.from,i=this.to);var r=Math.atan2(t.y-i.y,t.x-i.x),n=t.x-i.x,g=t.y-i.y,o=Math.sqrt(n*n+g*g),a=(o-A.distanceToBorder(e,r))/o;return{x:(1-a)*i.x+a*t.x,y:(1-a)*i.y+a*t.y,t:0}}},{key:"_getDistanceToEdge",value:function(A,e,t,i,r,n){return this._getDistanceToLine(A,e,t,i,r,n)}}]),t}(Dc),Uc=function(){function A(e,t,i,r,n){if(Ma(this,A),void 0===t)throw new Error("No body provided");this.options=zn(r),this.globalOptions=r,this.defaultOptions=n,this.body=t,this.imagelist=i,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 $C(this.body,this.options,!0),this.setOptions(e)}return Ga(A,[{key:"setOptions",value:function(e){if(e){var t=void 0!==e.physics&&this.options.physics!==e.physics||void 0!==e.hidden&&(this.options.hidden||!1)!==(e.hidden||!1)||void 0!==e.from&&this.options.from!==e.from||void 0!==e.to&&this.options.to!==e.to;A.parseOptions(this.options,e,!0,this.globalOptions),void 0!==e.id&&(this.id=e.id),void 0!==e.from&&(this.fromId=e.from),void 0!==e.to&&(this.toId=e.to),void 0!==e.title&&(this.title=e.title),void 0!==e.value&&(e.value=HC(e.value));var i=[e,this.options,this.defaultOptions];return this.chooser=OC("edge",i),this.updateLabelModule(e),t=this.updateEdgeType()||t,this._setInteractionWidths(),this.connect(),t}}},{key:"getFormattingValues",value:function(){var A=!0===this.options.arrows.to||!0===this.options.arrows.to.enabled,e=!0===this.options.arrows.from||!0===this.options.arrows.from.enabled,t=!0===this.options.arrows.middle||!0===this.options.arrows.middle.enabled,i=this.options.color.inherit,r={toArrow:A,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:t,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:e,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:i?void 0:this.options.color.color,inheritsColor:i,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 n=this.options.selectionWidth;"function"==typeof n?r.width=n(r.width):"number"==typeof n&&(r.width+=n),r.width=Math.max(r.width,.3/this.body.view.scale),r.color=this.options.color.highlight,r.shadow=this.options.shadow.enabled}else if(this.hover){var g=this.options.hoverWidth;"function"==typeof g?r.width=g(r.width):"number"==typeof g&&(r.width+=g),r.width=Math.max(r.width,.3/this.body.view.scale),r.color=this.options.color.hover,r.shadow=this.options.shadow.enabled}}else"function"==typeof this.chooser&&(this.chooser(r,this.options.id,this.selected,this.hover),void 0!==r.color&&(r.inheritsColor=!1),!1===r.shadow&&(r.shadowColor===this.options.shadow.color&&r.shadowSize===this.options.shadow.size&&r.shadowX===this.options.shadow.x&&r.shadowY===this.options.shadow.y||(r.shadow=!0)));else r.shadow=this.options.shadow.enabled,r.width=Math.max(r.width,.3/this.body.view.scale);return r}},{key:"updateLabelModule",value:function(A){var e=[A,this.options,this.globalOptions,this.defaultOptions];this.labelModule.update(this.options,e),void 0!==this.labelModule.baseSize&&(this.baseFontSize=this.labelModule.baseSize)}},{key:"updateEdgeType",value:function(){var A=this.options.smooth,e=!1,t=!0;return void 0!==this.edgeType&&((this.edgeType instanceof Mc&&!0===A.enabled&&"dynamic"===A.type||this.edgeType instanceof Sc&&!0===A.enabled&&"cubicBezier"===A.type||this.edgeType instanceof Gc&&!0===A.enabled&&"dynamic"!==A.type&&"cubicBezier"!==A.type||this.edgeType instanceof _c&&!1===A.type.enabled)&&(t=!1),!0===t&&(e=this.cleanup())),!0===t?!0===A.enabled?"dynamic"===A.type?(e=!0,this.edgeType=new Mc(this.options,this.body,this.labelModule)):"cubicBezier"===A.type?this.edgeType=new Sc(this.options,this.body,this.labelModule):this.edgeType=new Gc(this.options,this.body,this.labelModule):this.edgeType=new _c(this.options,this.body,this.labelModule):this.edgeType.setOptions(this.options),e}},{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(A,e,t){if(void 0!==this.options.value){var i=this.options.scaling.customScalingFunction(A,e,t,this.options.value),r=this.options.scaling.max-this.options.scaling.min;if(!0===this.options.scaling.label.enabled){var n=this.options.scaling.label.max-this.options.scaling.label.min;this.options.font.size=this.options.scaling.label.min+i*n}this.options.width=this.options.scaling.min+i*r}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(A){var e=this.getFormattingValues();if(!e.hidden){var t=this.edgeType.getViaNode();this.edgeType.drawLine(A,e,this.selected,this.hover,t),this.drawLabel(A,t)}}},{key:"drawArrows",value:function(A){var e=this.getFormattingValues();if(!e.hidden){var t=this.edgeType.getViaNode(),i={};this.edgeType.fromPoint=this.edgeType.from,this.edgeType.toPoint=this.edgeType.to,e.fromArrow&&(i.from=this.edgeType.getArrowData(A,"from",t,this.selected,this.hover,e),!1===e.arrowStrikethrough&&(this.edgeType.fromPoint=i.from.core),e.fromArrowSrc&&(i.from.image=this.imagelist.load(e.fromArrowSrc)),e.fromArrowImageWidth&&(i.from.imageWidth=e.fromArrowImageWidth),e.fromArrowImageHeight&&(i.from.imageHeight=e.fromArrowImageHeight)),e.toArrow&&(i.to=this.edgeType.getArrowData(A,"to",t,this.selected,this.hover,e),!1===e.arrowStrikethrough&&(this.edgeType.toPoint=i.to.core),e.toArrowSrc&&(i.to.image=this.imagelist.load(e.toArrowSrc)),e.toArrowImageWidth&&(i.to.imageWidth=e.toArrowImageWidth),e.toArrowImageHeight&&(i.to.imageHeight=e.toArrowImageHeight)),e.middleArrow&&(i.middle=this.edgeType.getArrowData(A,"middle",t,this.selected,this.hover,e),e.middleArrowSrc&&(i.middle.image=this.imagelist.load(e.middleArrowSrc)),e.middleArrowImageWidth&&(i.middle.imageWidth=e.middleArrowImageWidth),e.middleArrowImageHeight&&(i.middle.imageHeight=e.middleArrowImageHeight)),e.fromArrow&&this.edgeType.drawArrowHead(A,e,this.selected,this.hover,i.from),e.middleArrow&&this.edgeType.drawArrowHead(A,e,this.selected,this.hover,i.middle),e.toArrow&&this.edgeType.drawArrowHead(A,e,this.selected,this.hover,i.to)}}},{key:"drawLabel",value:function(A,e){if(void 0!==this.options.label){var t,i=this.from,r=this.to;if(this.labelModule.differentState(this.selected,this.hover)&&this.labelModule.getTextSize(A,this.selected,this.hover),i.id!=r.id){this.labelModule.pointToSelf=!1,t=this.edgeType.getPoint(.5,e),A.save();var n=this._getRotation(A);0!=n.angle&&(A.translate(n.x,n.y),A.rotate(n.angle)),this.labelModule.draw(A,t.x,t.y,this.selected,this.hover),A.restore()}else{this.labelModule.pointToSelf=!0;var g=PC(A,this.options.selfReference.angle,this.options.selfReference.size,i);t=this._pointOnCircle(g.x,g.y,this.options.selfReference.size,this.options.selfReference.angle),this.labelModule.draw(A,t.x,t.y,this.selected,this.hover)}}}},{key:"getItemsOnPoint",value:function(A){var e=[];if(this.labelModule.visible()){var t=this._getRotation();qC(this.labelModule.getSize(),A,t)&&e.push({edgeId:this.id,labelId:0})}var i={left:A.x,top:A.y};return this.isOverlappingWith(i)&&e.push({edgeId:this.id}),e}},{key:"isOverlappingWith",value:function(A){if(this.connected){var e=this.from.x,t=this.from.y,i=this.to.x,r=this.to.y,n=A.left,g=A.top;return this.edgeType.getDistanceToEdge(e,t,i,r,n,g)<10}return!1}},{key:"_getRotation",value:function(A){var e=this.edgeType.getViaNode(),t=this.edgeType.getPoint(.5,e);void 0!==A&&this.labelModule.calculateLabelSize(A,this.selected,this.hover,t.x,t.y);var i={x:t.x,y:this.labelModule.size.yLine,angle:0};if(!this.labelModule.visible())return i;if("horizontal"===this.options.font.align)return i;var r=this.from.y-this.to.y,n=this.from.x-this.to.x,g=Math.atan2(r,n);return(g<-1&&n<0||g>0&&n<0)&&(g+=Math.PI),i.angle=g,i}},{key:"_pointOnCircle",value:function(A,e,t,i){return{x:A+t*Math.cos(i),y:e-t*Math.sin(i)}}},{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(A,e){var t=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},r=arguments.length>4&&void 0!==arguments[4]&&arguments[4],n=["endPointOffset","arrowStrikethrough","id","from","hidden","hoverWidth","labelHighlightBold","length","line","opacity","physics","scaling","selectionWidth","selfReferenceSize","selfReference","to","title","value","width","font","chosen","widthConstraint"];if(Gn(n,A,e,t),void 0!==e.endPointOffset&&void 0!==e.endPointOffset.from&&(Va(e.endPointOffset.from)?A.endPointOffset.from=e.endPointOffset.from:(A.endPointOffset.from=void 0!==i.endPointOffset.from?i.endPointOffset.from:0,console.error("endPointOffset.from is not a valid number"))),void 0!==e.endPointOffset&&void 0!==e.endPointOffset.to&&(Va(e.endPointOffset.to)?A.endPointOffset.to=e.endPointOffset.to:(A.endPointOffset.to=void 0!==i.endPointOffset.to?i.endPointOffset.to:0,console.error("endPointOffset.to is not a valid number"))),jC(e.label)?A.label=e.label:jC(A.label)||(A.label=void 0),Zn(A,e,"smooth",i),Zn(A,e,"shadow",i),Zn(A,e,"background",i),void 0!==e.dashes&&null!==e.dashes?A.dashes=e.dashes:!0===t&&null===e.dashes&&(A.dashes=li(i.dashes)),void 0!==e.scaling&&null!==e.scaling?(void 0!==e.scaling.min&&(A.scaling.min=e.scaling.min),void 0!==e.scaling.max&&(A.scaling.max=e.scaling.max),Zn(A.scaling,e.scaling,"label",i.scaling)):!0===t&&null===e.scaling&&(A.scaling=li(i.scaling)),void 0!==e.arrows&&null!==e.arrows)if("string"==typeof e.arrows){var g=e.arrows.toLowerCase();A.arrows.to.enabled=-1!=ur(g).call(g,"to"),A.arrows.middle.enabled=-1!=ur(g).call(g,"middle"),A.arrows.from.enabled=-1!=ur(g).call(g,"from")}else{if("object"!==en(e.arrows))throw new Error("The arrow newOptions can only be an object or a string. Refer to the documentation. You used:"+cI(e.arrows));Zn(A.arrows,e.arrows,"to",i.arrows),Zn(A.arrows,e.arrows,"middle",i.arrows),Zn(A.arrows,e.arrows,"from",i.arrows)}else!0===t&&null===e.arrows&&(A.arrows=li(i.arrows));if(void 0!==e.color&&null!==e.color){var o=kn(e.color)?{color:e.color,highlight:e.color,hover:e.color,inherit:!1,opacity:1}:e.color,a=A.color;if(r)xn(a,i.color,!1,t);else for(var I in a)Object.prototype.hasOwnProperty.call(a,I)&&delete a[I];if(kn(a))a.color=a,a.highlight=a,a.hover=a,a.inherit=!1,void 0===o.opacity&&(a.opacity=1);else{var C=!1;void 0!==o.color&&(a.color=o.color,C=!0),void 0!==o.highlight&&(a.highlight=o.highlight,C=!0),void 0!==o.hover&&(a.hover=o.hover,C=!0),void 0!==o.inherit&&(a.inherit=o.inherit),void 0!==o.opacity&&(a.opacity=Math.min(1,Math.max(0,o.opacity))),!0===C?a.inherit=!1:void 0===a.inherit&&(a.inherit="from")}}else!0===t&&null===e.color&&(A.color=zn(i.color));!0===t&&null===e.font&&(A.font=zn(i.font)),Object.prototype.hasOwnProperty.call(e,"selfReferenceSize")&&(console.log("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}"),A.selfReference.size=e.selfReferenceSize)}}]),A}(),Lc=function(){function A(e,t,i){var r,n=this;Ma(this,A),this.body=e,this.images=t,this.groups=i,this.body.functions.createEdge=$(r=this.create).call(r,this),this.edgesListeners={add:function(A,e){n.add(e.items)},update:function(A,e){n.update(e.items)},remove:function(A,e){n.remove(e.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(A,e,t,i){if(e===A)return.5;var r=1/(e-A);return Math.max(0,(i-A)*r)}},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},xn(this.options,this.defaultOptions),this.bindEventListeners()}return Ga(A,[{key:"bindEventListeners",value:function(){var A,e,t=this;this.body.emitter.on("_forceDisableDynamicCurves",(function(A){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];"dynamic"===A&&(A="continuous");var i=!1;for(var r in t.body.edges)if(Object.prototype.hasOwnProperty.call(t.body.edges,r)){var n=t.body.edges[r],g=t.body.data.edges.get(r);if(null!=g){var o=g.smooth;void 0!==o&&!0===o.enabled&&"dynamic"===o.type&&(void 0===A?n.setOptions({smooth:!1}):n.setOptions({smooth:{type:A}}),i=!0)}}!0===e&&!0===i&&t.body.emitter.emit("_dataChanged")})),this.body.emitter.on("_dataUpdated",(function(){t.reconnectEdges()})),this.body.emitter.on("refreshEdges",$(A=this.refresh).call(A,this)),this.body.emitter.on("refresh",$(e=this.refresh).call(e,this)),this.body.emitter.on("destroy",(function(){Un(t.edgesListeners,(function(A,e){t.body.data.edges&&t.body.data.edges.off(e,A)})),delete t.body.functions.createEdge,delete t.edgesListeners.add,delete t.edgesListeners.update,delete t.edgesListeners.remove,delete t.edgesListeners}))}},{key:"setOptions",value:function(A){if(void 0!==A){Uc.parseOptions(this.options,A,!0,this.defaultOptions,!0);var e=!1;if(void 0!==A.smooth)for(var t in this.body.edges)Object.prototype.hasOwnProperty.call(this.body.edges,t)&&(e=this.body.edges[t].updateEdgeType()||e);if(void 0!==A.font)for(var i in this.body.edges)Object.prototype.hasOwnProperty.call(this.body.edges,i)&&this.body.edges[i].updateLabelModule();void 0===A.hidden&&void 0===A.physics&&!0!==e||this.body.emitter.emit("_dataChanged")}}},{key:"setData",value:function(A){var e=this,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=this.body.data.edges;if(A instanceof FC||A instanceof xC)this.body.data.edges=A;else if(Wr(A))this.body.data.edges=new FC,this.body.data.edges.add(A);else{if(A)throw new TypeError("Array or DataSet expected");this.body.data.edges=new FC}if(i&&Un(this.edgesListeners,(function(A,e){i.off(e,A)})),this.body.edges={},this.body.data.edges){Un(this.edgesListeners,(function(A,t){e.body.data.edges.on(t,A)}));var r=this.body.data.edges.getIds();this.add(r,!0)}this.body.emitter.emit("_adjustEdgesForHierarchicalLayout"),!1===t&&this.body.emitter.emit("_dataChanged")}},{key:"add",value:function(A){for(var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],t=this.body.edges,i=this.body.data.edges,r=0;r<A.length;r++){var n=A[r],g=t[n];g&&g.disconnect();var o=i.get(n,{showInternalIds:!0});t[n]=this.create(o)}this.body.emitter.emit("_adjustEdgesForHierarchicalLayout"),!1===e&&this.body.emitter.emit("_dataChanged")}},{key:"update",value:function(A){for(var e=this.body.edges,t=this.body.data.edges,i=!1,r=0;r<A.length;r++){var n=A[r],g=t.get(n),o=e[n];void 0!==o?(o.disconnect(),i=o.setOptions(g)||i,o.connect()):(this.body.edges[n]=this.create(g),i=!0)}!0===i?(this.body.emitter.emit("_adjustEdgesForHierarchicalLayout"),this.body.emitter.emit("_dataChanged")):this.body.emitter.emit("_dataUpdated")}},{key:"remove",value:function(A){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(0!==A.length){var t=this.body.edges;Un(A,(function(A){var e=t[A];void 0!==e&&e.remove()})),e&&this.body.emitter.emit("_dataChanged")}}},{key:"refresh",value:function(){var A=this;Un(this.body.edges,(function(e,t){var i=A.body.data.edges.get(t);void 0!==i&&e.setOptions(i)}))}},{key:"create",value:function(A){return new Uc(A,this.body,this.images,this.options,this.defaultOptions)}},{key:"reconnectEdges",value:function(){var A,e=this.body.nodes,t=this.body.edges;for(A in e)Object.prototype.hasOwnProperty.call(e,A)&&(e[A].edges=[]);for(A in t)if(Object.prototype.hasOwnProperty.call(t,A)){var i=t[A];i.from=null,i.to=null,i.connect()}}},{key:"getConnectedNodes",value:function(A){var e=[];if(void 0!==this.body.edges[A]){var t=this.body.edges[A];void 0!==t.fromId&&e.push(t.fromId),void 0!==t.toId&&e.push(t.toId)}return e}},{key:"_updateState",value:function(){this._addMissingEdges(),this._removeInvalidEdges()}},{key:"_removeInvalidEdges",value:function(){var A=this,e=[];Un(this.body.edges,(function(t,i){var r=A.body.nodes[t.toId],n=A.body.nodes[t.fromId];void 0!==r&&!0===r.isCluster||void 0!==n&&!0===n.isCluster||void 0!==r&&void 0!==n||e.push(i)})),this.remove(e,!1)}},{key:"_addMissingEdges",value:function(){var A=this.body.data.edges;if(null!=A){var e=this.body.edges,t=[];Yi(A).call(A,(function(A,i){void 0===e[i]&&t.push(i)})),this.add(t,!0)}}}]),A}(),Kc=function(){function A(e,t,i){Ma(this,A),this.body=e,this.physicsBody=t,this.barnesHutTree,this.setOptions(i),this._rng=dn("BARNES HUT SOLVER")}return Ga(A,[{key:"setOptions",value:function(A){this.options=A,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 A,e=this.body.nodes,t=this.physicsBody.physicsNodeIndices,i=t.length,r=this._formBarnesHutTree(e,t);this.barnesHutTree=r;for(var n=0;n<i;n++)(A=e[t[n]]).options.mass>0&&this._getForceContributions(r.root,A)}}},{key:"_getForceContributions",value:function(A,e){this._getForceContribution(A.children.NW,e),this._getForceContribution(A.children.NE,e),this._getForceContribution(A.children.SW,e),this._getForceContribution(A.children.SE,e)}},{key:"_getForceContribution",value:function(A,e){if(A.childrenCount>0){var t=A.centerOfMass.x-e.x,i=A.centerOfMass.y-e.y,r=Math.sqrt(t*t+i*i);r*A.calcSize>this.thetaInversed?this._calculateForces(r,t,i,e,A):4===A.childrenCount?this._getForceContributions(A,e):A.children.data.id!=e.id&&this._calculateForces(r,t,i,e,A)}}},{key:"_calculateForces",value:function(A,e,t,i,r){0===A&&(e=A=.1),this.overlapAvoidanceFactor<1&&i.shape.radius&&(A=Math.max(.1+this.overlapAvoidanceFactor*i.shape.radius,A-i.shape.radius));var n=this.options.gravitationalConstant*r.mass*i.options.mass/Math.pow(A,3),g=e*n,o=t*n;this.physicsBody.forces[i.id].x+=g,this.physicsBody.forces[i.id].y+=o}},{key:"_formBarnesHutTree",value:function(A,e){for(var t,i=e.length,r=A[e[0]].x,n=A[e[0]].y,g=A[e[0]].x,o=A[e[0]].y,a=1;a<i;a++){var I=A[e[a]],C=I.x,s=I.y;I.options.mass>0&&(C<r&&(r=C),C>g&&(g=C),s<n&&(n=s),s>o&&(o=s))}var c=Math.abs(g-r)-Math.abs(o-n);c>0?(n-=.5*c,o+=.5*c):(r+=.5*c,g-=.5*c);var l=Math.max(1e-5,Math.abs(g-r)),B=.5*l,Q=.5*(r+g),u=.5*(n+o),E={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:Q-B,maxX:Q+B,minY:u-B,maxY:u+B},size:l,calcSize:1/l,children:{data:null},maxWidth:0,level:0,childrenCount:4}};this._splitBranch(E.root);for(var h=0;h<i;h++)(t=A[e[h]]).options.mass>0&&this._placeInTree(E.root,t);return E}},{key:"_updateBranchMass",value:function(A,e){var t=A.centerOfMass,i=A.mass+e.options.mass,r=1/i;t.x=t.x*A.mass+e.x*e.options.mass,t.x*=r,t.y=t.y*A.mass+e.y*e.options.mass,t.y*=r,A.mass=i;var n=Math.max(Math.max(e.height,e.radius),e.width);A.maxWidth=A.maxWidth<n?n:A.maxWidth}},{key:"_placeInTree",value:function(A,e,t){1==t&&void 0!==t||this._updateBranchMass(A,e);var i,r=A.children.NW.range;i=r.maxX>e.x?r.maxY>e.y?"NW":"SW":r.maxY>e.y?"NE":"SE",this._placeInRegion(A,e,i)}},{key:"_placeInRegion",value:function(A,e,t){var i=A.children[t];switch(i.childrenCount){case 0:i.children.data=e,i.childrenCount=1,this._updateBranchMass(i,e);break;case 1:i.children.data.x===e.x&&i.children.data.y===e.y?(e.x+=this._rng(),e.y+=this._rng()):(this._splitBranch(i),this._placeInTree(i,e));break;case 4:this._placeInTree(i,e)}}},{key:"_splitBranch",value:function(A){var e=null;1===A.childrenCount&&(e=A.children.data,A.mass=0,A.centerOfMass.x=0,A.centerOfMass.y=0),A.childrenCount=4,A.children.data=null,this._insertRegion(A,"NW"),this._insertRegion(A,"NE"),this._insertRegion(A,"SW"),this._insertRegion(A,"SE"),null!=e&&this._placeInTree(A,e)}},{key:"_insertRegion",value:function(A,e){var t,i,r,n,g=.5*A.size;switch(e){case"NW":t=A.range.minX,i=A.range.minX+g,r=A.range.minY,n=A.range.minY+g;break;case"NE":t=A.range.minX+g,i=A.range.maxX,r=A.range.minY,n=A.range.minY+g;break;case"SW":t=A.range.minX,i=A.range.minX+g,r=A.range.minY+g,n=A.range.maxY;break;case"SE":t=A.range.minX+g,i=A.range.maxX,r=A.range.minY+g,n=A.range.maxY}A.children[e]={centerOfMass:{x:0,y:0},mass:0,range:{minX:t,maxX:i,minY:r,maxY:n},size:.5*A.size,calcSize:2*A.calcSize,children:{data:null},maxWidth:0,level:A.level+1,childrenCount:0}}},{key:"_debug",value:function(A,e){void 0!==this.barnesHutTree&&(A.lineWidth=1,this._drawBranch(this.barnesHutTree.root,A,e))}},{key:"_drawBranch",value:function(A,e,t){void 0===t&&(t="#FF0000"),4===A.childrenCount&&(this._drawBranch(A.children.NW,e),this._drawBranch(A.children.NE,e),this._drawBranch(A.children.SE,e),this._drawBranch(A.children.SW,e)),e.strokeStyle=t,e.beginPath(),e.moveTo(A.range.minX,A.range.minY),e.lineTo(A.range.maxX,A.range.minY),e.stroke(),e.beginPath(),e.moveTo(A.range.maxX,A.range.minY),e.lineTo(A.range.maxX,A.range.maxY),e.stroke(),e.beginPath(),e.moveTo(A.range.maxX,A.range.maxY),e.lineTo(A.range.minX,A.range.maxY),e.stroke(),e.beginPath(),e.moveTo(A.range.minX,A.range.maxY),e.lineTo(A.range.minX,A.range.minY),e.stroke()}}]),A}(),Jc=function(){function A(e,t,i){Ma(this,A),this._rng=dn("REPULSION SOLVER"),this.body=e,this.physicsBody=t,this.setOptions(i)}return Ga(A,[{key:"setOptions",value:function(A){this.options=A}},{key:"solve",value:function(){for(var A,e,t,i,r,n,g,o,a=this.body.nodes,I=this.physicsBody.physicsNodeIndices,C=this.physicsBody.forces,s=this.options.nodeDistance,c=-2/3/s,l=0;l<I.length-1;l++){g=a[I[l]];for(var B=l+1;B<I.length;B++)A=(o=a[I[B]]).x-g.x,e=o.y-g.y,0===(t=Math.sqrt(A*A+e*e))&&(A=t=.1*this._rng()),t<2*s&&(n=t<.5*s?1:c*t+4/3,i=A*(n/=t),r=e*n,C[g.id].x-=i,C[g.id].y-=r,C[o.id].x+=i,C[o.id].y+=r)}}}]),A}(),Tc=function(){function A(e,t,i){Ma(this,A),this.body=e,this.physicsBody=t,this.setOptions(i)}return Ga(A,[{key:"setOptions",value:function(A){this.options=A,this.overlapAvoidanceFactor=Math.max(0,Math.min(1,this.options.avoidOverlap||0))}},{key:"solve",value:function(){for(var A=this.body.nodes,e=this.physicsBody.physicsNodeIndices,t=this.physicsBody.forces,i=this.options.nodeDistance,r=0;r<e.length-1;r++)for(var n=A[e[r]],g=r+1;g<e.length;g++){var o=A[e[g]];if(n.level===o.level){var a=i+this.overlapAvoidanceFactor*((n.shape.radius||0)/2+(o.shape.radius||0)/2),I=o.x-n.x,C=o.y-n.y,s=Math.sqrt(I*I+C*C),c=void 0;c=s<a?-Math.pow(.05*s,2)+Math.pow(.05*a,2):0,0!==s&&(c/=s);var l=I*c,B=C*c;t[n.id].x-=l,t[n.id].y-=B,t[o.id].x+=l,t[o.id].y+=B}}}}]),A}(),Hc=function(){function A(e,t,i){Ma(this,A),this.body=e,this.physicsBody=t,this.setOptions(i)}return Ga(A,[{key:"setOptions",value:function(A){this.options=A}},{key:"solve",value:function(){for(var A,e,t,i,r,n=this.physicsBody.physicsEdgeIndices,g=this.body.edges,o=0;o<n.length;o++)!0===(e=g[n[o]]).connected&&e.toId!==e.fromId&&void 0!==this.body.nodes[e.toId]&&void 0!==this.body.nodes[e.fromId]&&(void 0!==e.edgeType.via?(A=void 0===e.options.length?this.options.springLength:e.options.length,t=e.to,i=e.edgeType.via,r=e.from,this._calculateSpringForce(t,i,.5*A),this._calculateSpringForce(i,r,.5*A)):(A=void 0===e.options.length?1.5*this.options.springLength:e.options.length,this._calculateSpringForce(e.from,e.to,A)))}},{key:"_calculateSpringForce",value:function(A,e,t){var i=A.x-e.x,r=A.y-e.y,n=Math.max(Math.sqrt(i*i+r*r),.01),g=this.options.springConstant*(t-n)/n,o=i*g,a=r*g;void 0!==this.physicsBody.forces[A.id]&&(this.physicsBody.forces[A.id].x+=o,this.physicsBody.forces[A.id].y+=a),void 0!==this.physicsBody.forces[e.id]&&(this.physicsBody.forces[e.id].x-=o,this.physicsBody.forces[e.id].y-=a)}}]),A}(),Oc=function(){function A(e,t,i){Ma(this,A),this.body=e,this.physicsBody=t,this.setOptions(i)}return Ga(A,[{key:"setOptions",value:function(A){this.options=A}},{key:"solve",value:function(){for(var A,e,t,i,r,n,g,o,a,I,C=this.body.edges,s=this.physicsBody.physicsEdgeIndices,c=this.physicsBody.physicsNodeIndices,l=this.physicsBody.forces,B=0;B<c.length;B++){var Q=c[B];l[Q].springFx=0,l[Q].springFy=0}for(var u=0;u<s.length;u++)!0===(e=C[s[u]]).connected&&(A=void 0===e.options.length?this.options.springLength:e.options.length,t=e.from.x-e.to.x,i=e.from.y-e.to.y,o=0===(o=Math.sqrt(t*t+i*i))?.01:o,r=t*(g=this.options.springConstant*(A-o)/o),n=i*g,e.to.level!=e.from.level?(void 0!==l[e.toId]&&(l[e.toId].springFx-=r,l[e.toId].springFy-=n),void 0!==l[e.fromId]&&(l[e.fromId].springFx+=r,l[e.fromId].springFy+=n)):(void 0!==l[e.toId]&&(l[e.toId].x-=.5*r,l[e.toId].y-=.5*n),void 0!==l[e.fromId]&&(l[e.fromId].x+=.5*r,l[e.fromId].y+=.5*n)));g=1;for(var E=0;E<c.length;E++){var h=c[E];a=Math.min(g,Math.max(-g,l[h].springFx)),I=Math.min(g,Math.max(-g,l[h].springFy)),l[h].x+=a,l[h].y+=I}for(var f=0,d=0,p=0;p<c.length;p++){var y=c[p];f+=l[y].x,d+=l[y].y}for(var w=f/c.length,D=d/c.length,v=0;v<c.length;v++){var m=c[v];l[m].x-=w,l[m].y-=D}}}]),A}(),qc=function(){function A(e,t,i){Ma(this,A),this.body=e,this.physicsBody=t,this.setOptions(i)}return Ga(A,[{key:"setOptions",value:function(A){this.options=A}},{key:"solve",value:function(){for(var A,e,t,i,r=this.body.nodes,n=this.physicsBody.physicsNodeIndices,g=this.physicsBody.forces,o=0;o<n.length;o++){A=-(i=r[n[o]]).x,e=-i.y,t=Math.sqrt(A*A+e*e),this._calculateForces(t,A,e,g,i)}}},{key:"_calculateForces",value:function(A,e,t,i,r){var n=0===A?0:this.options.centralGravity/A;i[r.id].x=e*n,i[r.id].y=t*n}}]),A}();function jc(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var Pc=function(A){DI(t,A);var e=jc(t);function t(A,i,r){var n;return Ma(this,t),(n=e.call(this,A,i,r))._rng=dn("FORCE ATLAS 2 BASED REPULSION SOLVER"),n}return Ga(t,[{key:"_calculateForces",value:function(A,e,t,i,r){0===A&&(e=A=.1*this._rng()),this.overlapAvoidanceFactor<1&&i.shape.radius&&(A=Math.max(.1+this.overlapAvoidanceFactor*i.shape.radius,A-i.shape.radius));var n=i.edges.length+1,g=this.options.gravitationalConstant*r.mass*i.options.mass*n/Math.pow(A,2),o=e*g,a=t*g;this.physicsBody.forces[i.id].x+=o,this.physicsBody.forces[i.id].y+=a}}]),t}(Kc);function Vc(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var zc=function(A){DI(t,A);var e=Vc(t);function t(A,i,r){return Ma(this,t),e.call(this,A,i,r)}return Ga(t,[{key:"_calculateForces",value:function(A,e,t,i,r){if(A>0){var n=r.edges.length+1,g=this.options.centralGravity*n*r.options.mass;i[r.id].x=e*g,i[r.id].y=t*g}}}]),t}(qc),Zc=function(){function A(e){Ma(this,A),this.body=e,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}},dA(this.options,this.defaultOptions),this.timestep=.5,this.layoutFailed=!1,this.bindEventListeners()}return Ga(A,[{key:"bindEventListeners",value:function(){var A=this;this.body.emitter.on("initPhysics",(function(){A.initPhysics()})),this.body.emitter.on("_layoutFailed",(function(){A.layoutFailed=!0})),this.body.emitter.on("resetPhysics",(function(){A.stopSimulation(),A.ready=!1})),this.body.emitter.on("disablePhysics",(function(){A.physicsEnabled=!1,A.stopSimulation()})),this.body.emitter.on("restorePhysics",(function(){A.setOptions(A.options),!0===A.ready&&A.startSimulation()})),this.body.emitter.on("startSimulation",(function(){!0===A.ready&&A.startSimulation()})),this.body.emitter.on("stopSimulation",(function(){A.stopSimulation()})),this.body.emitter.on("destroy",(function(){A.stopSimulation(!1),A.body.emitter.off()})),this.body.emitter.on("_dataChanged",(function(){A.updatePhysicsData()}))}},{key:"setOptions",value:function(A){if(void 0!==A)if(!1===A)this.options.enabled=!1,this.physicsEnabled=!1,this.stopSimulation();else if(!0===A)this.options.enabled=!0,this.physicsEnabled=!0,this.startSimulation();else{this.physicsEnabled=!0,Fn(["stabilization"],this.options,A),Zn(this.options,A,"stabilization"),void 0===A.enabled&&(this.options.enabled=!0),!1===this.options.enabled&&(this.physicsEnabled=!1,this.stopSimulation());var e=this.options.wind;e&&(("number"!=typeof e.x||za(e.x))&&(e.x=0),("number"!=typeof e.y||za(e.y))&&(e.y=0)),this.timestep=this.options.timestep}this.init()}},{key:"init",value:function(){var A;"forceAtlas2Based"===this.options.solver?(A=this.options.forceAtlas2Based,this.nodesSolver=new Pc(this.body,this.physicsBody,A),this.edgesSolver=new Hc(this.body,this.physicsBody,A),this.gravitySolver=new zc(this.body,this.physicsBody,A)):"repulsion"===this.options.solver?(A=this.options.repulsion,this.nodesSolver=new Jc(this.body,this.physicsBody,A),this.edgesSolver=new Hc(this.body,this.physicsBody,A),this.gravitySolver=new qc(this.body,this.physicsBody,A)):"hierarchicalRepulsion"===this.options.solver?(A=this.options.hierarchicalRepulsion,this.nodesSolver=new Tc(this.body,this.physicsBody,A),this.edgesSolver=new Oc(this.body,this.physicsBody,A),this.gravitySolver=new qc(this.body,this.physicsBody,A)):(A=this.options.barnesHut,this.nodesSolver=new Kc(this.body,this.physicsBody,A),this.edgesSolver=new Hc(this.body,this.physicsBody,A),this.gravitySolver=new qc(this.body,this.physicsBody,A)),this.modelOptions=A}},{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 A;!0===this.physicsEnabled&&!0===this.options.enabled?(this.stabilized=!1,this.adaptiveTimestep=!1,this.body.emitter.emit("_resizeNodes"),void 0===this.viewFunction&&(this.viewFunction=$(A=this.simulationStep).call(A,this),this.body.emitter.on("initRedraw",this.viewFunction),this.body.emitter.emit("_startRendering"))):this.body.emitter.emit("_redraw")}},{key:"stopSimulation",value:function(){var A=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.stabilized=!0,!0===A&&this._emitStabilized(),void 0!==this.viewFunction&&(this.body.emitter.off("initRedraw",this.viewFunction),this.viewFunction=void 0,!0===A&&this.body.emitter.emit("_stopRendering"))}},{key:"simulationStep",value:function(){var A=Hr();this.physicsTick(),(Hr()-A<.4*this.simulationInterval||!0===this.runDoubleSpeed)&&!1===this.stabilized&&(this.physicsTick(),this.runDoubleSpeed=!0),!0===this.stabilized&&this.stopSimulation()}},{key:"_emitStabilized",value:function(){var A=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.stabilizationIterations;(this.stabilizationIterations>1||!0===this.startedStabilization)&&La((function(){A.body.emitter.emit("stabilized",{iterations:e}),A.startedStabilization=!1,A.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 A=this.body.nodes,e=this.body.edges;for(var t in A)Object.prototype.hasOwnProperty.call(A,t)&&!0===A[t].options.physics&&this.physicsBody.physicsNodeIndices.push(A[t].id);for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&!0===e[i].options.physics&&this.physicsBody.physicsEdgeIndices.push(e[i].id);for(var r=0;r<this.physicsBody.physicsNodeIndices.length;r++){var n=this.physicsBody.physicsNodeIndices[r];this.physicsBody.forces[n]={x:0,y:0},void 0===this.physicsBody.velocities[n]&&(this.physicsBody.velocities[n]={x:0,y:0})}for(var g in this.physicsBody.velocities)void 0===A[g]&&delete this.physicsBody.velocities[g]}},{key:"revert",value:function(){var A=qr(this.previousStates),e=this.body.nodes,t=this.physicsBody.velocities;this.referenceState={};for(var i=0;i<A.length;i++){var r=A[i];void 0!==e[r]?!0===e[r].options.physics&&(this.referenceState[r]={positions:{x:e[r].x,y:e[r].y}},t[r].x=this.previousStates[r].vx,t[r].y=this.previousStates[r].vy,e[r].x=this.previousStates[r].x,e[r].y=this.previousStates[r].y):delete this.previousStates[r]}}},{key:"_evaluateStepQuality",value:function(){var A,e,t=this.body.nodes,i=this.referenceState;for(var r in this.referenceState)if(Object.prototype.hasOwnProperty.call(this.referenceState,r)&&void 0!==t[r]&&(A=t[r].x-i[r].positions.x,e=t[r].y-i[r].positions.y,Math.sqrt(Math.pow(A,2)+Math.pow(e,2))>.3))return!1;return!0}},{key:"moveNodes",value:function(){for(var A=this.physicsBody.physicsNodeIndices,e=0,t=0,i=0;i<A.length;i++){var r=A[i],n=this._performStep(r);e=Math.max(e,n),t+=n}this.adaptiveTimestepEnabled=t/A.length<5,this.stabilized=e<this.options.minVelocity}},{key:"calculateComponentVelocity",value:function(A,e,t){A+=(e-this.modelOptions.damping*A)/t*this.timestep;var i=this.options.maxVelocity||1e9;return Math.abs(A)>i&&(A=A>0?i:-i),A}},{key:"_performStep",value:function(A){var e=this.body.nodes[A],t=this.physicsBody.forces[A];this.options.wind&&(t.x+=this.options.wind.x,t.y+=this.options.wind.y);var i=this.physicsBody.velocities[A];return this.previousStates[A]={x:e.x,y:e.y,vx:i.x,vy:i.y},!1===e.options.fixed.x?(i.x=this.calculateComponentVelocity(i.x,t.x,e.options.mass),e.x+=i.x*this.timestep):(t.x=0,i.x=0),!1===e.options.fixed.y?(i.y=this.calculateComponentVelocity(i.y,t.y,e.options.mass),e.y+=i.y*this.timestep):(t.y=0,i.y=0),Math.sqrt(Math.pow(i.x,2)+Math.pow(i.y,2))}},{key:"_freezeNodes",value:function(){var A=this.body.nodes;for(var e in A)if(Object.prototype.hasOwnProperty.call(A,e)&&A[e].x&&A[e].y){var t=A[e].options.fixed;this.freezeCache[e]={x:t.x,y:t.y},t.x=!0,t.y=!0}}},{key:"_restoreFrozenNodes",value:function(){var A=this.body.nodes;for(var e in A)Object.prototype.hasOwnProperty.call(A,e)&&void 0!==this.freezeCache[e]&&(A[e].options.fixed.x=this.freezeCache[e].x,A[e].options.fixed.y=this.freezeCache[e].y);this.freezeCache={}}},{key:"stabilize",value:function(){var A=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.options.stabilization.iterations;"number"!=typeof e&&(e=this.options.stabilization.iterations,console.log("The stabilize method needs a numeric amount of iterations. Switching to default: ",e)),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=e,!0===this.options.stabilization.onlyDynamicEdges&&this._freezeNodes(),this.stabilizationIterations=0,La((function(){return A._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 A=this,e=function(){return!1===A.stabilized&&A.stabilizationIterations<A.targetIterations},t=function(){A.body.emitter.emit("stabilizationProgress",{iterations:A.stabilizationIterations,total:A.targetIterations})};this._startStabilizing()&&t();for(var i,r=0;e()&&r<this.options.stabilization.updateInterval;)this.physicsTick(),r++;(t(),e())?La($(i=this._stabilizationBatch).call(i,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(A){for(var e=0;e<this.physicsBody.physicsNodeIndices.length;e++){var t=this.physicsBody.physicsNodeIndices[e],i=this.body.nodes[t],r=this.physicsBody.forces[t],n=Math.sqrt(Math.pow(r.x,2)+Math.pow(r.x,2)),g=Math.min(Math.max(5,n),15),o=3*g,a=qn((180-180*Math.min(1,Math.max(0,.03*n)))/360,1,1),I={x:i.x+20*r.x,y:i.y+20*r.y};A.lineWidth=g,A.strokeStyle=a,A.beginPath(),A.moveTo(i.x,i.y),A.lineTo(I.x,I.y),A.stroke();var C=Math.atan2(r.y,r.x);A.fillStyle=a,pc.draw(A,{type:"arrow",point:I,angle:C,length:o}),ts(A).call(A)}}}]),A}(),Xc=[].reverse,Wc=[1,2];q({target:"Array",proto:!0,forced:String(Wc)===String(Wc.reverse())},{reverse:function(){return jA(this)&&(this.length=this.length),Xc.call(this)}});var $c=Z("Array").reverse,Al=Array.prototype,el=function(A){var e=A.reverse;return A===Al||A instanceof Array&&e===Al.reverse?$c:e},tl=function(){function A(){Ma(this,A)}return Ga(A,null,[{key:"getRange",value:function(A){var e,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],i=1e9,r=-1e9,n=1e9,g=-1e9;if(t.length>0)for(var o=0;o<t.length;o++)n>(e=A[t[o]]).shape.boundingBox.left&&(n=e.shape.boundingBox.left),g<e.shape.boundingBox.right&&(g=e.shape.boundingBox.right),i>e.shape.boundingBox.top&&(i=e.shape.boundingBox.top),r<e.shape.boundingBox.bottom&&(r=e.shape.boundingBox.bottom);return 1e9===n&&-1e9===g&&1e9===i&&-1e9===r&&(i=0,r=0,n=0,g=0),{minX:n,maxX:g,minY:i,maxY:r}}},{key:"getRangeCore",value:function(A){var e,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],i=1e9,r=-1e9,n=1e9,g=-1e9;if(t.length>0)for(var o=0;o<t.length;o++)n>(e=A[t[o]]).x&&(n=e.x),g<e.x&&(g=e.x),i>e.y&&(i=e.y),r<e.y&&(r=e.y);return 1e9===n&&-1e9===g&&1e9===i&&-1e9===r&&(i=0,r=0,n=0,g=0),{minX:n,maxX:g,minY:i,maxY:r}}},{key:"findCenter",value:function(A){return{x:.5*(A.maxX+A.minX),y:.5*(A.maxY+A.minY)}}},{key:"cloneOptions",value:function(A,e){var t={};return void 0===e||"node"===e?(xn(t,A.options,!0),t.x=A.x,t.y=A.y,t.amountOfConnections=A.edges.length):xn(t,A.options,!0),t}}]),A}();function il(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var rl=function(A){DI(t,A);var e=il(t);function t(A,i,r,n,g,o){var a;return Ma(this,t),(a=e.call(this,A,i,r,n,g,o)).isCluster=!0,a.containedNodes={},a.containedEdges={},a}return Ga(t,[{key:"_openChildCluster",value:function(A){var e=this,t=this.body.nodes[A];if(void 0===this.containedNodes[A])throw new Error("node with id: "+A+" not in current cluster");if(!t.isCluster)throw new Error("node with id: "+A+" is not a cluster");delete this.containedNodes[A],Un(t.edges,(function(A){delete e.containedEdges[A.id]})),Un(t.containedNodes,(function(A,t){e.containedNodes[t]=A})),t.containedNodes={},Un(t.containedEdges,(function(A,t){e.containedEdges[t]=A})),t.containedEdges={},Un(t.edges,(function(A){Un(e.edges,(function(t){var i,r,n=ur(i=t.clusteringEdgeReplacingIds).call(i,A.id);-1!==n&&(Un(A.clusteringEdgeReplacingIds,(function(A){t.clusteringEdgeReplacingIds.push(A),e.body.edges[A].edgeReplacedById=t.id})),ng(r=t.clusteringEdgeReplacingIds).call(r,n,1))}))})),t.edges=[]}}]),t}(Vs),nl=function(){function A(e){var t=this;Ma(this,A),this.body=e,this.clusteredNodes={},this.clusteredEdges={},this.options={},this.defaultOptions={},dA(this.options,this.defaultOptions),this.body.emitter.on("_resetData",(function(){t.clusteredNodes={},t.clusteredEdges={}}))}return Ga(A,[{key:"clusterByHubsize",value:function(A,e){void 0===A?A=this._getHubSize():"object"===en(A)&&(e=this._checkOptions(A),A=this._getHubSize());for(var t=[],i=0;i<this.body.nodeIndices.length;i++){var r=this.body.nodes[this.body.nodeIndices[i]];r.edges.length>=A&&t.push(r.id)}for(var n=0;n<t.length;n++)this.clusterByConnection(t[n],e,!0);this.body.emitter.emit("_dataChanged")}},{key:"cluster",value:function(){var A=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(void 0===e.joinCondition)throw new Error("Cannot call clusterByNodeData without a joinCondition function in the options.");e=this._checkOptions(e);var i={},r={};Un(this.body.nodes,(function(t,n){t.options&&!0===e.joinCondition(t.options)&&(i[n]=t,Un(t.edges,(function(e){void 0===A.clusteredEdges[e.id]&&(r[e.id]=e)})))})),this._cluster(i,r,e,t)}},{key:"clusterByEdgeCount",value:function(A,e){var t=this,i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];e=this._checkOptions(e);for(var r,n,g,o=[],a={},I=function(i){var I={},C={},s=t.body.nodeIndices[i],c=t.body.nodes[s];if(void 0===a[s]){g=0,n=[];for(var l=0;l<c.edges.length;l++)r=c.edges[l],void 0===t.clusteredEdges[r.id]&&(r.toId!==r.fromId&&g++,n.push(r));if(g===A){for(var B=function(A){if(void 0===e.joinCondition||null===e.joinCondition)return!0;var t=tl.cloneOptions(A);return e.joinCondition(t)},Q=!0,u=0;u<n.length;u++){r=n[u];var E=t._getConnectedId(r,s);if(!B(c)){Q=!1;break}C[r.id]=r,I[s]=c,I[E]=t.body.nodes[E],a[s]=!0}if(qr(I).length>0&&qr(C).length>0&&!0===Q){var h=function(){for(var A=0;A<o.length;++A)for(var e in I)if(void 0!==o[A].nodes[e])return o[A]}();if(void 0!==h){for(var f in I)void 0===h.nodes[f]&&(h.nodes[f]=I[f]);for(var d in C)void 0===h.edges[d]&&(h.edges[d]=C[d])}else o.push({nodes:I,edges:C})}}}},C=0;C<this.body.nodeIndices.length;C++)I(C);for(var s=0;s<o.length;s++)this._cluster(o[s].nodes,o[s].edges,e,!1);!0===i&&this.body.emitter.emit("_dataChanged")}},{key:"clusterOutliers",value:function(A){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];this.clusterByEdgeCount(1,A,e)}},{key:"clusterBridges",value:function(A){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];this.clusterByEdgeCount(2,A,e)}},{key:"clusterByConnection",value:function(A,e){var t,i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(void 0===A)throw new Error("No nodeId supplied to clusterByConnection!");if(void 0===this.body.nodes[A])throw new Error("The nodeId given to clusterByConnection does not exist!");var r=this.body.nodes[A];void 0===(e=this._checkOptions(e,r)).clusterNodeProperties.x&&(e.clusterNodeProperties.x=r.x),void 0===e.clusterNodeProperties.y&&(e.clusterNodeProperties.y=r.y),void 0===e.clusterNodeProperties.fixed&&(e.clusterNodeProperties.fixed={},e.clusterNodeProperties.fixed.x=r.options.fixed.x,e.clusterNodeProperties.fixed.y=r.options.fixed.y);var n={},g={},o=r.id,a=tl.cloneOptions(r);n[o]=r;for(var I=0;I<r.edges.length;I++){var C=r.edges[I];if(void 0===this.clusteredEdges[C.id]){var s=this._getConnectedId(C,o);if(void 0===this.clusteredNodes[s])if(s!==o)if(void 0===e.joinCondition)g[C.id]=C,n[s]=this.body.nodes[s];else{var c=tl.cloneOptions(this.body.nodes[s]);!0===e.joinCondition(a,c)&&(g[C.id]=C,n[s]=this.body.nodes[s])}else g[C.id]=C}}var l=Xr(t=qr(n)).call(t,(function(A){return n[A].id}));for(var B in n)if(Object.prototype.hasOwnProperty.call(n,B))for(var Q=n[B],u=0;u<Q.edges.length;u++){var E=Q.edges[u];ur(l).call(l,this._getConnectedId(E,Q.id))>-1&&(g[E.id]=E)}this._cluster(n,g,e,i)}},{key:"_createClusterEdges",value:function(A,e,t,i){for(var r,n,g,o,a,I,C=qr(A),s=[],c=0;c<C.length;c++){g=A[n=C[c]];for(var l=0;l<g.edges.length;l++)r=g.edges[l],void 0===this.clusteredEdges[r.id]&&(r.toId==r.fromId?e[r.id]=r:r.toId==n?(o=t.id,I=a=r.fromId):(o=r.toId,a=t.id,I=o),void 0===A[I]&&s.push({edge:r,fromId:a,toId:o}))}for(var B=[],Q=function(A){for(var e=0;e<B.length;e++){var t=B[e],i=A.fromId===t.fromId&&A.toId===t.toId,r=A.fromId===t.toId&&A.toId===t.fromId;if(i||r)return t}return null},u=0;u<s.length;u++){var E=s[u],h=E.edge,f=Q(E);null===f?(f=this._createClusteredEdge(E.fromId,E.toId,h,i),B.push(f)):f.clusteringEdgeReplacingIds.push(h.id),this.body.edges[h.id].edgeReplacedById=f.id,this._backupEdgeOptions(h),h.setOptions({physics:!1})}}},{key:"_checkOptions",value:function(){var A=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return void 0===A.clusterEdgeProperties&&(A.clusterEdgeProperties={}),void 0===A.clusterNodeProperties&&(A.clusterNodeProperties={}),A}},{key:"_cluster",value:function(A,e,t){var i=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],r=[];for(var n in A)Object.prototype.hasOwnProperty.call(A,n)&&void 0!==this.clusteredNodes[n]&&r.push(n);for(var g=0;g<r.length;++g)delete A[r[g]];if(0!=qr(A).length&&(1!=qr(A).length||1==t.clusterNodeProperties.allowSingleNodeCluster)){var o=xn({},t.clusterNodeProperties);if(void 0!==t.processProperties){var a=[];for(var I in A)if(Object.prototype.hasOwnProperty.call(A,I)){var C=tl.cloneOptions(A[I]);a.push(C)}var s=[];for(var c in e)if(Object.prototype.hasOwnProperty.call(e,c)&&"clusterEdge:"!==c.substr(0,12)){var l=tl.cloneOptions(e[c],"edge");s.push(l)}if(!(o=t.processProperties(o,a,s)))throw new Error("The processProperties function does not return properties!")}void 0===o.id&&(o.id="cluster:"+pC());var B=o.id;void 0===o.label&&(o.label="cluster");var Q=void 0;void 0===o.x&&(Q=this._getClusterPosition(A),o.x=Q.x),void 0===o.y&&(void 0===Q&&(Q=this._getClusterPosition(A)),o.y=Q.y),o.id=B;var u=this.body.functions.createNode(o,rl);u.containedNodes=A,u.containedEdges=e,u.clusterEdgeProperties=t.clusterEdgeProperties,this.body.nodes[o.id]=u,this._clusterEdges(A,e,o,t.clusterEdgeProperties),o.id=void 0,!0===i&&this.body.emitter.emit("_dataChanged")}}},{key:"_backupEdgeOptions",value:function(A){void 0===this.clusteredEdges[A.id]&&(this.clusteredEdges[A.id]={physics:A.options.physics})}},{key:"_restoreEdge",value:function(A){var e=this.clusteredEdges[A.id];void 0!==e&&(A.setOptions({physics:e.physics}),delete this.clusteredEdges[A.id])}},{key:"isCluster",value:function(A){return void 0!==this.body.nodes[A]?!0===this.body.nodes[A].isCluster:(console.log("Node does not exist."),!1)}},{key:"_getClusterPosition",value:function(A){for(var e,t=qr(A),i=A[t[0]].x,r=A[t[0]].x,n=A[t[0]].y,g=A[t[0]].y,o=1;o<t.length;o++)i=(e=A[t[o]]).x<i?e.x:i,r=e.x>r?e.x:r,n=e.y<n?e.y:n,g=e.y>g?e.y:g;return{x:.5*(i+r),y:.5*(n+g)}}},{key:"openCluster",value:function(A,e){var t=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(void 0===A)throw new Error("No clusterNodeId supplied to openCluster.");var i=this.body.nodes[A];if(void 0===i)throw new Error("The clusterNodeId supplied to openCluster does not exist.");if(!0!==i.isCluster||void 0===i.containedNodes||void 0===i.containedEdges)throw new Error("The node:"+A+" is not a valid cluster.");var r=this.findNode(A),n=ur(r).call(r,A)-1;if(n>=0){var g=r[n],o=this.body.nodes[g];return o._openChildCluster(A),delete this.body.nodes[A],void(!0===t&&this.body.emitter.emit("_dataChanged"))}var a=i.containedNodes,I=i.containedEdges;if(void 0!==e&&void 0!==e.releaseFunction&&"function"==typeof e.releaseFunction){var C={},s={x:i.x,y:i.y};for(var c in a)if(Object.prototype.hasOwnProperty.call(a,c)){var l=this.body.nodes[c];C[c]={x:l.x,y:l.y}}var B=e.releaseFunction(s,C);for(var Q in a)if(Object.prototype.hasOwnProperty.call(a,Q)){var u=this.body.nodes[Q];void 0!==B[Q]&&(u.x=void 0===B[Q].x?i.x:B[Q].x,u.y=void 0===B[Q].y?i.y:B[Q].y)}}else Un(a,(function(A){!1===A.options.fixed.x&&(A.x=i.x),!1===A.options.fixed.y&&(A.y=i.y)}));for(var E in a)if(Object.prototype.hasOwnProperty.call(a,E)){var h=this.body.nodes[E];h.vx=i.vx,h.vy=i.vy,h.setOptions({physics:!0}),delete this.clusteredNodes[E]}for(var f=[],d=0;d<i.edges.length;d++)f.push(i.edges[d]);for(var p=0;p<f.length;p++){for(var y=f[p],w=this._getConnectedId(y,A),D=this.clusteredNodes[w],v=0;v<y.clusteringEdgeReplacingIds.length;v++){var m=y.clusteringEdgeReplacingIds[v],b=this.body.edges[m];if(void 0!==b)if(void 0!==D){var k=this.body.nodes[D.clusterId];k.containedEdges[b.id]=b,delete I[b.id];var N=b.fromId,M=b.toId;b.toId==w?M=D.clusterId:N=D.clusterId,this._createClusteredEdge(N,M,b,k.clusterEdgeProperties,{hidden:!1,physics:!0})}else this._restoreEdge(b)}y.remove()}for(var R in I)Object.prototype.hasOwnProperty.call(I,R)&&this._restoreEdge(I[R]);delete this.body.nodes[A],!0===t&&this.body.emitter.emit("_dataChanged")}},{key:"getNodesInCluster",value:function(A){var e=[];if(!0===this.isCluster(A)){var t=this.body.nodes[A].containedNodes;for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&e.push(this.body.nodes[i].id)}return e}},{key:"findNode",value:function(A){for(var e,t=[],i=0;void 0!==this.clusteredNodes[A]&&i<100;){if(void 0===(e=this.body.nodes[A]))return[];t.push(e.id),A=this.clusteredNodes[A].clusterId,i++}return void 0===(e=this.body.nodes[A])?[]:(t.push(e.id),el(t).call(t),t)}},{key:"updateClusteredNode",value:function(A,e){if(void 0===A)throw new Error("No clusteredNodeId supplied to updateClusteredNode.");if(void 0===e)throw new Error("No newOptions supplied to updateClusteredNode.");if(void 0===this.body.nodes[A])throw new Error("The clusteredNodeId supplied to updateClusteredNode does not exist.");this.body.nodes[A].setOptions(e),this.body.emitter.emit("_dataChanged")}},{key:"updateEdge",value:function(A,e){if(void 0===A)throw new Error("No startEdgeId supplied to updateEdge.");if(void 0===e)throw new Error("No newOptions supplied to updateEdge.");if(void 0===this.body.edges[A])throw new Error("The startEdgeId supplied to updateEdge does not exist.");for(var t=this.getClusteredEdges(A),i=0;i<t.length;i++){this.body.edges[t[i]].setOptions(e)}this.body.emitter.emit("_dataChanged")}},{key:"getClusteredEdges",value:function(A){for(var e=[],t=0;void 0!==A&&void 0!==this.body.edges[A]&&t<100;)e.push(this.body.edges[A].id),A=this.body.edges[A].edgeReplacedById,t++;return el(e).call(e),e}},{key:"getBaseEdge",value:function(A){return this.getBaseEdges(A)[0]}},{key:"getBaseEdges",value:function(A){for(var e=[A],t=[],i=[],r=0;e.length>0&&r<100;){var n=e.pop();if(void 0!==n){var g=this.body.edges[n];if(void 0!==g){r++;var o=g.clusteringEdgeReplacingIds;if(void 0===o)i.push(n);else for(var a=0;a<o.length;++a){var I=o[a];-1===ur(e).call(e,o)&&-1===ur(t).call(t,o)&&e.push(I)}t.push(n)}}}return i}},{key:"_getConnectedId",value:function(A,e){return A.toId!=e?A.toId:(A.fromId,A.fromId)}},{key:"_getHubSize",value:function(){for(var A=0,e=0,t=0,i=0,r=0;r<this.body.nodeIndices.length;r++){var n=this.body.nodes[this.body.nodeIndices[r]];n.edges.length>i&&(i=n.edges.length),A+=n.edges.length,e+=Math.pow(n.edges.length,2),t+=1}A/=t;var g=(e/=t)-Math.pow(A,2),o=Math.sqrt(g),a=Math.floor(A+2*o);return a>i&&(a=i),a}},{key:"_createClusteredEdge",value:function(A,e,t,i,r){var n=tl.cloneOptions(t,"edge");xn(n,i),n.from=A,n.to=e,n.id="clusterEdge:"+pC(),void 0!==r&&xn(n,r);var g=this.body.functions.createEdge(n);return g.clusteringEdgeReplacingIds=[t.id],g.connect(),this.body.edges[g.id]=g,g}},{key:"_clusterEdges",value:function(A,e,t,i){if(e instanceof Uc){var r=e,n={};n[r.id]=r,e=n}if(A instanceof Vs){var g=A,o={};o[g.id]=g,A=o}if(null==t)throw new Error("_clusterEdges: parameter clusterNode required");for(var a in void 0===i&&(i=t.clusterEdgeProperties),this._createClusterEdges(A,e,t,i),e)if(Object.prototype.hasOwnProperty.call(e,a)&&void 0!==this.body.edges[a]){var I=this.body.edges[a];this._backupEdgeOptions(I),I.setOptions({physics:!1})}for(var C in A)Object.prototype.hasOwnProperty.call(A,C)&&(this.clusteredNodes[C]={clusterId:t.id,node:this.body.nodes[C]},this.body.nodes[C].setOptions({physics:!1}))}},{key:"_getClusterNodeForNode",value:function(A){if(void 0!==A){var e=this.clusteredNodes[A];if(void 0!==e){var t=e.clusterId;if(void 0!==t)return this.body.nodes[t]}}}},{key:"_filter",value:function(A,e){var t=[];return Un(A,(function(A){e(A)&&t.push(A)})),t}},{key:"_updateState",value:function(){var A,e=this,t=[],i={},r=function(A){Un(e.body.nodes,(function(e){!0===e.isCluster&&A(e)}))};for(A in this.clusteredNodes){if(Object.prototype.hasOwnProperty.call(this.clusteredNodes,A))void 0===this.body.nodes[A]&&t.push(A)}r((function(A){for(var e=0;e<t.length;e++)delete A.containedNodes[t[e]]}));for(var n=0;n<t.length;n++)delete this.clusteredNodes[t[n]];Un(this.clusteredEdges,(function(A){var t=e.body.edges[A];void 0!==t&&t.endPointsValid()||(i[A]=A)})),r((function(A){Un(A.containedEdges,(function(A,e){A.endPointsValid()||i[e]||(i[e]=e)}))})),Un(this.body.edges,(function(A,t){var r=!0,n=A.clusteringEdgeReplacingIds;if(void 0!==n){var g=0;Un(n,(function(A){var t=e.body.edges[A];void 0!==t&&t.endPointsValid()&&(g+=1)})),r=g>0}A.endPointsValid()&&r||(i[t]=t)})),r((function(A){Un(i,(function(t){delete A.containedEdges[t],Un(A.edges,(function(r,n){r.id!==t?r.clusteringEdgeReplacingIds=e._filter(r.clusteringEdgeReplacingIds,(function(A){return!i[A]})):A.edges[n]=null})),A.edges=e._filter(A.edges,(function(A){return null!==A}))}))})),Un(i,(function(A){delete e.clusteredEdges[A]})),Un(i,(function(A){delete e.body.edges[A]})),Un(qr(this.body.edges),(function(A){var t=e.body.edges[A],i=e._isClusteredNode(t.fromId)||e._isClusteredNode(t.toId);if(i!==e._isClusteredEdge(t.id))if(i){var r=e._getClusterNodeForNode(t.fromId);void 0!==r&&e._clusterEdges(e.body.nodes[t.fromId],t,r);var n=e._getClusterNodeForNode(t.toId);void 0!==n&&e._clusterEdges(e.body.nodes[t.toId],t,n)}else delete e._clusterEdges[A],e._restoreEdge(t)}));for(var g=!1,o=!0,a=function(){var A=[];r((function(e){var t=qr(e.containedNodes).length,i=!0===e.options.allowSingleNodeCluster;(i&&t<1||!i&&t<2)&&A.push(e.id)}));for(var t=0;t<A.length;++t)e.openCluster(A[t],{},!1);o=A.length>0,g=g||o};o;)a();g&&this._updateState()}},{key:"_isClusteredNode",value:function(A){return void 0!==this.clusteredNodes[A]}},{key:"_isClusteredEdge",value:function(A){return void 0!==this.clusteredEdges[A]}}]),A}();var gl=function(){function A(e,t){var i;Ma(this,A),void 0!==window&&(i=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame),window.requestAnimationFrame=void 0===i?function(A){A()}:i,this.body=e,this.canvas=t,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},dA(this.options,this.defaultOptions),this._determineBrowserMethod(),this.bindEventListeners()}return Ga(A,[{key:"bindEventListeners",value:function(){var A,e=this;this.body.emitter.on("dragStart",(function(){e.dragging=!0})),this.body.emitter.on("dragEnd",(function(){e.dragging=!1})),this.body.emitter.on("zoom",(function(){e.zooming=!0,window.clearTimeout(e.zoomTimeoutId),e.zoomTimeoutId=window.setTimeout((function(){var A;e.zooming=!1,$(A=e._requestRedraw).call(A,e)()}),250)})),this.body.emitter.on("_resizeNodes",(function(){e._resizeNodes()})),this.body.emitter.on("_redraw",(function(){!1===e.renderingActive&&e._redraw()})),this.body.emitter.on("_blockRedraw",(function(){e.allowRedraw=!1})),this.body.emitter.on("_allowRedraw",(function(){e.allowRedraw=!0,e.redrawRequested=!1})),this.body.emitter.on("_requestRedraw",$(A=this._requestRedraw).call(A,this)),this.body.emitter.on("_startRendering",(function(){e.renderRequests+=1,e.renderingActive=!0,e._startRendering()})),this.body.emitter.on("_stopRendering",(function(){e.renderRequests-=1,e.renderingActive=e.renderRequests>0,e.renderTimer=void 0})),this.body.emitter.on("destroy",(function(){e.renderRequests=0,e.allowRedraw=!1,e.renderingActive=!1,!0===e.requiresTimeout?clearTimeout(e.renderTimer):window.cancelAnimationFrame(e.renderTimer),e.body.emitter.off()}))}},{key:"setOptions",value:function(A){if(void 0!==A){Gn(["hideEdgesOnDrag","hideEdgesOnZoom","hideNodesOnDrag"],this.options,A)}}},{key:"_requestNextFrame",value:function(A,e){if("undefined"!=typeof window){var t,i=window;return!0===this.requiresTimeout?t=i.setTimeout(A,e):i.requestAnimationFrame&&(t=i.requestAnimationFrame(A)),t}}},{key:"_startRendering",value:function(){var A;!0===this.renderingActive&&(void 0===this.renderTimer&&(this.renderTimer=this._requestNextFrame($(A=this._renderStep).call(A,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 A=this;!0!==this.redrawRequested&&!1===this.renderingActive&&!0===this.allowRedraw&&(this.redrawRequested=!0,this._requestNextFrame((function(){A._redraw(!1)}),0))}},{key:"_redraw",value:function(){var A=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!0===this.allowRedraw){this.body.emitter.emit("initRedraw"),this.redrawRequested=!1,0!==this.canvas.frame.canvas.width&&0!==this.canvas.frame.canvas.height||this.canvas.setSize(),this.canvas.setTransform();var e=this.canvas.getContext(),t=this.canvas.frame.canvas.clientWidth,i=this.canvas.frame.canvas.clientHeight;if(e.clearRect(0,0,t,i),0===this.canvas.frame.clientWidth)return;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===A&&(!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)&&this._drawNodes(e,A),!1===A&&(!1===this.dragging||!0===this.dragging&&!1===this.options.hideEdgesOnDrag)&&(!1===this.zooming||!0===this.zooming&&!1===this.options.hideEdgesOnZoom)&&this._drawArrows(e),!1===A&&this._drawSelectionBox(e),e.beginPath(),this.body.emitter.emit("afterDrawing",e),e.closePath(),e.restore(),!0===A&&e.clearRect(0,0,t,i)}}},{key:"_resizeNodes",value:function(){this.canvas.setTransform();var A=this.canvas.getContext();A.save(),A.translate(this.body.view.translation.x,this.body.view.translation.y),A.scale(this.body.view.scale,this.body.view.scale);var e,t=this.body.nodes;for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&((e=t[i]).resize(A),e.updateBoundingBox(A,e.selected));A.restore()}},{key:"_drawNodes",value:function(A){for(var e,t,i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=this.body.nodes,n=this.body.nodeIndices,g=[],o=[],a=20,I=this.canvas.DOMtoCanvas({x:-a,y:-a}),C=this.canvas.DOMtoCanvas({x:this.canvas.frame.canvas.clientWidth+a,y:this.canvas.frame.canvas.clientHeight+a}),s={top:I.y,left:I.x,bottom:C.y,right:C.x},c=0;c<n.length;c++)(e=r[n[c]]).hover?o.push(n[c]):e.isSelected()?g.push(n[c]):!0===i||!0===e.isBoundingBoxOverlappingWith(s)?e.draw(A):e.updateBoundingBox(A,e.selected);var l=g.length,B=o.length;for(t=0;t<l;t++)(e=r[g[t]]).draw(A);for(t=0;t<B;t++)(e=r[o[t]]).draw(A)}},{key:"_drawEdges",value:function(A){for(var e=this.body.edges,t=this.body.edgeIndices,i=0;i<t.length;i++){var r=e[t[i]];!0===r.connected&&r.draw(A)}}},{key:"_drawArrows",value:function(A){for(var e=this.body.edges,t=this.body.edgeIndices,i=0;i<t.length;i++){var r=e[t[i]];!0===r.connected&&r.drawArrows(A)}}},{key:"_determineBrowserMethod",value:function(){if("undefined"!=typeof window){var A=navigator.userAgent.toLowerCase();this.requiresTimeout=!1,(-1!=ur(A).call(A,"msie 9.0")||-1!=ur(A).call(A,"safari")&&ur(A).call(A,"chrome")<=-1)&&(this.requiresTimeout=!0)}else this.requiresTimeout=!0}},{key:"_drawSelectionBox",value:function(A){if(this.body.selectionBox.show){A.beginPath();var e=this.body.selectionBox.position.end.x-this.body.selectionBox.position.start.x,t=this.body.selectionBox.position.end.y-this.body.selectionBox.position.start.y;A.rect(this.body.selectionBox.position.start.x,this.body.selectionBox.position.start.y,e,t),A.fillStyle="rgba(151, 194, 252, 0.2)",A.fillRect(this.body.selectionBox.position.start.x,this.body.selectionBox.position.start.y,e,t),A.strokeStyle="rgba(151, 194, 252, 1)",A.stroke()}else A.closePath()}}]),A}(),ol=Y.setInterval;function al(A,e){e.inputHandler=function(A){A.isFirst&&e(A)},A.on("hammer.input",e.inputHandler)}function Il(A,e){return e.inputHandler=function(A){A.isFinal&&e(A)},A.on("hammer.input",e.inputHandler)}var Cl=function(){function A(e){var t;Ma(this,A),this.body=e,this.pixelRatio=1,this.resizeTimer=void 0,this.resizeFunction=$(t=this._onResize).call(t,this),this.cameraState={},this.initialized=!1,this.canvasViewCenter={},this.options={},this.defaultOptions={autoResize:!0,height:"100%",width:"100%"},dA(this.options,this.defaultOptions),this.bindEventListeners()}return Ga(A,[{key:"bindEventListeners",value:function(){var A,e=this;this.body.emitter.once("resize",(function(A){0!==A.width&&(e.body.view.translation.x=.5*A.width),0!==A.height&&(e.body.view.translation.y=.5*A.height)})),this.body.emitter.on("setSize",$(A=this.setSize).call(A,this)),this.body.emitter.on("destroy",(function(){e.hammerFrame.destroy(),e.hammer.destroy(),e._cleanUp()}))}},{key:"setOptions",value:function(A){var e,t,i,r,n,g,o=this;if(void 0!==A){Gn(["width","height","autoResize"],this.options,A)}!0===this.options.autoResize&&(this._cleanUp(),this.resizeTimer=ol((function(){!0===o.setSize()&&o.body.emitter.emit("_requestRedraw")}),1e3),this.resizeFunction=$(e=this._onResize).call(e,this),t=window,i="resize",r=this.resizeFunction,t.addEventListener?(void 0===n&&(n=!1),"mousewheel"===i&&ur(g=navigator.userAgent).call(g,"Firefox")>=0&&(i="DOMMouseScroll"),t.addEventListener(i,r,n)):t.attachEvent("on"+i,r))}},{key:"_cleanUp",value:function(){var A,e,t,i,r;void 0!==this.resizeTimer&&clearInterval(this.resizeTimer),A=window,e="resize",t=this.resizeFunction,A.removeEventListener?(void 0===i&&(i=!1),"mousewheel"===e&&ur(r=navigator.userAgent).call(r,"Firefox")>=0&&(e="DOMMouseScroll"),A.removeEventListener(e,t,i)):A.detachEvent("on"+e,t),this.resizeFunction=void 0}},{key:"_onResize",value:function(){this.setSize(),this.body.emitter.emit("_redraw")}},{key:"_getCameraState",value:function(){var A=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.pixelRatio;!0===this.initialized&&(this.cameraState.previousWidth=this.frame.canvas.width/A,this.cameraState.previousHeight=this.frame.canvas.height/A,this.cameraState.scale=this.body.view.scale,this.cameraState.position=this.DOMtoCanvas({x:.5*this.frame.canvas.width/A,y:.5*this.frame.canvas.height/A}))}},{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 A=this.frame.canvas.width/this.pixelRatio/this.cameraState.previousWidth,e=this.frame.canvas.height/this.pixelRatio/this.cameraState.previousHeight,t=this.cameraState.scale;1!=A&&1!=e?t=.5*this.cameraState.scale*(A+e):1!=A?t=this.cameraState.scale*A:1!=e&&(t=this.cameraState.scale*e),this.body.view.scale=t;var i=this.DOMtoCanvas({x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight}),r={x:i.x-this.cameraState.position.x,y:i.y-this.cameraState.position.y};this.body.view.translation.x+=r.x*this.body.view.scale,this.body.view.translation.y+=r.y*this.body.view.scale}}},{key:"_prepareValue",value:function(A){if("number"==typeof A)return A+"px";if("string"==typeof A){if(-1!==ur(A).call(A,"%")||-1!==ur(A).call(A,"px"))return A;if(-1===ur(A).call(A,"%"))return A+"px"}throw new Error("Could not use the value supplied for width or height:"+A)}},{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=900,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 A=document.createElement("DIV");A.style.color="red",A.style.fontWeight="bold",A.style.padding="10px",A.innerHTML="Error: your browser does not support HTML canvas",this.frame.canvas.appendChild(A)}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 A=this;void 0!==this.hammer&&this.hammer.destroy(),this.drag={},this.pinch={},this.hammer=new ba(this.frame.canvas),this.hammer.get("pinch").set({enable:!0}),this.hammer.get("pan").set({threshold:5,direction:ba.DIRECTION_ALL}),al(this.hammer,(function(e){A.body.eventListeners.onTouch(e)})),this.hammer.on("tap",(function(e){A.body.eventListeners.onTap(e)})),this.hammer.on("doubletap",(function(e){A.body.eventListeners.onDoubleTap(e)})),this.hammer.on("press",(function(e){A.body.eventListeners.onHold(e)})),this.hammer.on("panstart",(function(e){A.body.eventListeners.onDragStart(e)})),this.hammer.on("panmove",(function(e){A.body.eventListeners.onDrag(e)})),this.hammer.on("panend",(function(e){A.body.eventListeners.onDragEnd(e)})),this.hammer.on("pinch",(function(e){A.body.eventListeners.onPinch(e)})),this.frame.canvas.addEventListener("wheel",(function(e){A.body.eventListeners.onMouseWheel(e)})),this.frame.canvas.addEventListener("mousemove",(function(e){A.body.eventListeners.onMouseMove(e)})),this.frame.canvas.addEventListener("contextmenu",(function(e){A.body.eventListeners.onContext(e)})),this.hammerFrame=new ba(this.frame),Il(this.hammerFrame,(function(e){A.body.eventListeners.onRelease(e)}))}},{key:"setSize",value:function(){var A=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.options.width,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.options.height;A=this._prepareValue(A),e=this._prepareValue(e);var t=!1,i=this.frame.canvas.width,r=this.frame.canvas.height,n=this.pixelRatio;if(this._setPixelRatio(),A!=this.options.width||e!=this.options.height||this.frame.style.width!=A||this.frame.style.height!=e)this._getCameraState(n),this.frame.style.width=A,this.frame.style.height=e,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=A,this.options.height=e,this.canvasViewCenter={x:.5*this.frame.clientWidth,y:.5*this.frame.clientHeight},t=!0;else{var g=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),o=Math.round(this.frame.canvas.clientHeight*this.pixelRatio);this.frame.canvas.width===g&&this.frame.canvas.height===o||this._getCameraState(n),this.frame.canvas.width!==g&&(this.frame.canvas.width=g,t=!0),this.frame.canvas.height!==o&&(this.frame.canvas.height=o,t=!0)}return!0===t&&(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(i/this.pixelRatio),oldHeight:Math.round(r/this.pixelRatio)}),this._setCameraState()),this.initialized=!0,t}},{key:"getContext",value:function(){return this.frame.canvas.getContext("2d")}},{key:"_determinePixelRatio",value:function(){var A=this.getContext();if(void 0===A)throw new Error("Could not get canvax context");var e=1;return"undefined"!=typeof window&&(e=window.devicePixelRatio||1),e/(A.webkitBackingStorePixelRatio||A.mozBackingStorePixelRatio||A.msBackingStorePixelRatio||A.oBackingStorePixelRatio||A.backingStorePixelRatio||1)}},{key:"_setPixelRatio",value:function(){this.pixelRatio=this._determinePixelRatio()}},{key:"setTransform",value:function(){var A=this.getContext();if(void 0===A)throw new Error("Could not get canvax context");A.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}},{key:"_XconvertDOMtoCanvas",value:function(A){return(A-this.body.view.translation.x)/this.body.view.scale}},{key:"_XconvertCanvasToDOM",value:function(A){return A*this.body.view.scale+this.body.view.translation.x}},{key:"_YconvertDOMtoCanvas",value:function(A){return(A-this.body.view.translation.y)/this.body.view.scale}},{key:"_YconvertCanvasToDOM",value:function(A){return A*this.body.view.scale+this.body.view.translation.y}},{key:"canvasToDOM",value:function(A){return{x:this._XconvertCanvasToDOM(A.x),y:this._YconvertCanvasToDOM(A.y)}}},{key:"DOMtoCanvas",value:function(A){return{x:this._XconvertDOMtoCanvas(A.x),y:this._YconvertDOMtoCanvas(A.y)}}}]),A}(),sl=function(){function A(e,t){var i,r,n=this;Ma(this,A),this.body=e,this.canvas=t,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",$(i=this.fit).call(i,this)),this.body.emitter.on("animationFinished",(function(){n.body.emitter.emit("_stopRendering")})),this.body.emitter.on("unlockNode",$(r=this.releaseNode).call(r,this))}return Ga(A,[{key:"setOptions",value:function(){var A=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.options=A}},{key:"fit",value:function(){var A,e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{nodes:[]},i=arguments.length>1&&void 0!==arguments[1]&&arguments[1];void 0!==(t=dA({},t)).nodes&&0!==t.nodes.length||(t.nodes=this.body.nodeIndices);var r=this.canvas.frame.canvas.clientWidth,n=this.canvas.frame.canvas.clientHeight;if(0===r||0===n)e=1,A=tl.getRange(this.body.nodes,t.nodes);else if(!0===i){var g=0;for(var o in this.body.nodes)if(Object.prototype.hasOwnProperty.call(this.body.nodes,o)){var a=this.body.nodes[o];!0===a.predefinedPosition&&(g+=1)}if(g>.5*this.body.nodeIndices.length)return void this.fit(t,!1);A=tl.getRange(this.body.nodes,t.nodes);var I=this.body.nodeIndices.length;e=12.662/(I+7.4147)+.0964822;var C=Math.min(r/600,n/600);e*=C}else{this.body.emitter.emit("_resizeNodes"),A=tl.getRange(this.body.nodes,t.nodes);var s=1.1*Math.abs(A.maxX-A.minX),c=1.1*Math.abs(A.maxY-A.minY),l=r/s,B=n/c;e=l<=B?l:B}(e>1||0===e)&&(e=1);var Q=tl.findCenter(A),u={position:Q,scale:e,animation:t.animation};this.moveTo(u)}},{key:"focus",value:function(A){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(void 0!==this.body.nodes[A]){var t={x:this.body.nodes[A].x,y:this.body.nodes[A].y};e.position=t,e.lockedOnNode=A,this.moveTo(e)}else console.log("Node: "+A+" cannot be found.")}},{key:"moveTo",value:function(A){if(void 0!==A){if(null!=A.offset){if(null!=A.offset.x){if(A.offset.x=+A.offset.x,!Va(A.offset.x))throw new TypeError('The option "offset.x" has to be a finite number.')}else A.offset.x=0;if(null!=A.offset.y){if(A.offset.y=+A.offset.y,!Va(A.offset.y))throw new TypeError('The option "offset.y" has to be a finite number.')}else A.offset.x=0}else A.offset={x:0,y:0};if(null!=A.position){if(null!=A.position.x){if(A.position.x=+A.position.x,!Va(A.position.x))throw new TypeError('The option "position.x" has to be a finite number.')}else A.position.x=0;if(null!=A.position.y){if(A.position.y=+A.position.y,!Va(A.position.y))throw new TypeError('The option "position.y" has to be a finite number.')}else A.position.x=0}else A.position=this.getViewPosition();if(null!=A.scale){if(A.scale=+A.scale,!(A.scale>0))throw new TypeError('The option "scale" has to be a number greater than zero.')}else A.scale=this.body.view.scale;void 0===A.animation&&(A.animation={duration:0}),!1===A.animation&&(A.animation={duration:0}),!0===A.animation&&(A.animation={}),void 0===A.animation.duration&&(A.animation.duration=1e3),void 0===A.animation.easingFunction&&(A.animation.easingFunction="easeInOutQuad"),this.animateView(A)}else A={}}},{key:"animateView",value:function(A){if(void 0!==A){this.animationEasingFunction=A.animation.easingFunction,this.releaseNode(),!0===A.locked&&(this.lockedOnNodeId=A.lockedOnNode,this.lockedOnNodeOffset=A.offset),0!=this.easingTime&&this._transitionRedraw(!0),this.sourceScale=this.body.view.scale,this.sourceTranslation=this.body.view.translation,this.targetScale=A.scale,this.body.view.scale=this.targetScale;var e,t,i=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),r=i.x-A.position.x,n=i.y-A.position.y;if(this.targetTranslation={x:this.sourceTranslation.x+r*this.targetScale+A.offset.x,y:this.sourceTranslation.y+n*this.targetScale+A.offset.y},0===A.animation.duration)if(null!=this.lockedOnNodeId)this.viewFunction=$(e=this._lockedRedraw).call(e,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*A.animation.duration*.001)||1/60,this.animationEasingFunction=A.animation.easingFunction,this.viewFunction=$(t=this._transitionRedraw).call(t,this),this.body.emitter.on("initRedraw",this.viewFunction),this.body.emitter.emit("_startRendering")}}},{key:"_lockedRedraw",value:function(){var A=this.body.nodes[this.lockedOnNodeId].x,e=this.body.nodes[this.lockedOnNodeId].y,t=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),i=t.x-A,r=t.y-e,n=this.body.view.translation,g={x:n.x+i*this.body.view.scale+this.lockedOnNodeOffset.x,y:n.y+r*this.body.view.scale+this.lockedOnNodeOffset.y};this.body.view.translation=g}},{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 A=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.easingTime+=this.animationSpeed,this.easingTime=!0===A?1:this.easingTime;var e=Xn[this.animationEasingFunction](this.easingTime);if(this.body.view.scale=this.sourceScale+(this.targetScale-this.sourceScale)*e,this.body.view.translation={x:this.sourceTranslation.x+(this.targetTranslation.x-this.sourceTranslation.x)*e,y:this.sourceTranslation.y+(this.targetTranslation.y-this.sourceTranslation.y)*e},this.easingTime>=1){var t;if(this.body.emitter.off("initRedraw",this.viewFunction),this.easingTime=0,null!=this.lockedOnNodeId)this.viewFunction=$(t=this._lockedRedraw).call(t,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})}}]),A}();Wg("div.vis-network div.vis-navigation div.vis-button {\n width:34px;\n height:34px;\n -moz-border-radius: 17px;\n border-radius: 17px;\n position:absolute;\n display:inline-block;\n background-position: 2px 2px;\n background-repeat:no-repeat;\n cursor: pointer;\n -webkit-touch-callout: none;\n -webkit-user-select: none;\n -khtml-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n\ndiv.vis-network div.vis-navigation div.vis-button:hover {\n box-shadow: 0 0 3px 3px rgba(56, 207, 21, 0.30);\n}\n\ndiv.vis-network div.vis-navigation div.vis-button:active {\n box-shadow: 0 0 1px 3px rgba(56, 207, 21, 0.95);\n}\n\ndiv.vis-network div.vis-navigation div.vis-button.vis-up {\n background-image: url('data:image/png;base64,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');\n bottom:50px;\n left:55px;\n}\ndiv.vis-network div.vis-navigation div.vis-button.vis-down {\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADqYAAAOpgAABdvkl/FRgAABpdJREFUeNqcV21QlNcVfp5zX9ikoAvLEsAIIgsoHwpqWAQUNKLNaNv8iZ1JMkNG6/Qj/dDUyCSTtCHpmEkwVk3TToZRMjXj5MOG2KidjIkxQYSAQUAtX6IgIN8su8KCoOzbH4sk4q5g77/33uee555z7rnneYmZDB2MKcJKlyYbqOsZVIgGEOgSHQoy4AKbFFjqAo5dWn/rNAh9OpO852oeJHYxtrmEu4WALhMbxG2ZE9uFAlImDRLY/t/y0b3Ig+u+iWOKsAlgIZSb0OIf15kWtKo1NXh1d5xxiSPEN2wUAHrGOg11jirjWVtJyFnb6YgrzoYwocClu0DI5guPDb43Y2LLp/Iaqf9JCGSErGvIifxd7aqQn/TOJCvFvZ8Hf9haEH+m/6sFQgHBv1Sts/15WmJLkeyl6FuFwFPzny1/ZdE7Nfg/xhv1uUmH2w6kggQp+yqze7d5JbZ8Im+KpucSwI6EN7/cYtlxZarBCts3ptfrtq9odjaGKihE+sV0vRC3u8RqWmmbij149W+Wd5p2rnET6bsqsntyb6+pO3KqkE8FvLxo74lNUX9s9uTJb8/9fG2L81KoogJFYfCm3b9usNq0MXxzw1RsUkDqQICPqf/b/q8sQi3j4WdmtV47OFgNAO6r+DEUFAtFAc9YtpXmRP6hxVsI24cvhyoqnFtrK6jM7isgBa3Dl0O94TeGb255MvzXpUIFjVrhxo/dzgoARBuwFQJkBK9reCnurxfvXX8CRW3yW1G749vT2Br7ysW0oNX1pKDTPG+rm1gHRbibAHLm/7522sKnQCZqFgCUaBCqaS/bEw9vqtWoQROf3dBBiT6KTACImZ3YueqhDdOWjDbFQ4IzIl4elNUX5begU1HD6lPRmULKeghhDcpqnUmZuD3+nkgTH6gZEE9ctlZSoGmG9UIynSCsQVndMyX+IZGiBoHMjHh2SreCglClaSBiSEG8cYnD24bv7CWms/3FocO3hnw13plTggAFb196NdlPM44tC0zrSg5ItXmyEz070UEKCMRqQgkkBQ9NvL2eSJ+revoJTORSpoT6do4/7/7UShBFHQexM+HdfyUHWO8iN/uaRzX3/QjUSLlnqM72F4cCRIY5u9Zf+Y+BAv4AvzpkQ7WAIBRujA/7Vg6cia9xlId6InafVEAAGnQMUCSkb6zTMPdBy8hU3JjrphIq+CrD+Mvxeyumrr+4IH9y7o2GF5eDghuuGx4L2zbWZ9Dc0RoQRbkkFNRdP2/0BH7EtLJLKCjr+zqh2l5u8haZ847vTBW24kRFQXKAtcsT5oqz3igQENIoECkjBJUDZSGewBlBj/ammjLrdX1c/t70ero34gMte9IByLLAjPrUwKweT5jawQshdIuGMiF5XEBU2koivBl9NeEfJeYHwuxtI81zPrn2z6ip60c6DkV1jLTOCTaE2HNjd5Z4s9MwWBOhqEHp/I9cWDtUrJNoHm4KO9P7hdnTBoMYXI8Gb6gVCg63FS53jg9O5tA57tSOdHywnCAygrJrfcTgUe5U2cvNHSPtYYoKCWlrTgsIneB2AfFR+4F4b6f9ZdTzF6P8Ytud407/dy/nL7k9X9i8J9l5y+Ef6RfbnjPvWa8N5suez+KFCgqyPY95Lnd3stv2AcBZ2+mFbze+lui1xc3dXCUUlPafXNx4/aKxcajWWNp/MklRw8/mPFntbd+h1oLE847KhQQxejVg36QQqD0MPTzHv42Ux+uGasJNBnPfwllJd71kkX7RQ3WDNf7dox3BLcNNs6vt34bbbvYHJhlTGp6O+JVHb0/2HJtX1PH+aqECqG/5YN1nlXcokGvvO6vCc4x+QskotxVHB/qa+xbOWuzw8NB3nuo+Ht0z2hHsuGU3GrWAoZfi3jrxgHpw3BPpobaCH7vbqOw6mHI836vYW3Eqcq9AtioqbJy7ufQ3lhfu8sR+s9+3vL8klACsQSu7AnxMY1MxH7YXJp7oPpLulrrj+9575Ni2aeVt1teWfEWfHQLCaspseHzOU7VWU+aM5G2NoyL4i+6j8XWDNQsmGsKu/cv+nTtjQb/mm7hfENyvqEAK5v8opjPJaL26KGBpd5TfguuBvuZRgBgY6zO0jlyZXXe9JqR+8MK8ntHOMHfHIkhu2b/0yIH7/oXJ0yFlxYnPUdRbvuILgO7+y+91l6Ka6M+cnCf4fMSypXvymHf/vzBTD3CuNGUFKT8lmK5Rs5ASqKiBlAGBXFaiSuni0fkp1pJ7Ed4e/xsAqLk46EWsG1EAAAAASUVORK5CYII=');\n bottom:10px;\n left:55px;\n}\ndiv.vis-network div.vis-navigation div.vis-button.vis-left {\n background-image: url('data:image/png;base64,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');\n bottom:10px;\n left:15px;\n}\ndiv.vis-network div.vis-navigation div.vis-button.vis-right {\n background-image: url('data:image/png;base64,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');\n bottom:10px;\n left:95px;\n}\ndiv.vis-network div.vis-navigation div.vis-button.vis-zoomIn {\n background-image: url('data:image/png;base64,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');\n bottom:10px;\n right:15px;\n}\ndiv.vis-network div.vis-navigation div.vis-button.vis-zoomOut {\n background-image: url('data:image/png;base64,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');\n bottom:10px;\n right:55px;\n}\ndiv.vis-network div.vis-navigation div.vis-button.vis-zoomExtends {\n background-image: url('data:image/png;base64,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');\n bottom:50px;\n right:15px;\n}\n");var cl=function(){function A(e,t){var i=this;Ma(this,A),this.body=e,this.canvas=t,this.iconsCreated=!1,this.navigationHammers=[],this.boundFunctions={},this.touchTime=0,this.activated=!1,this.body.emitter.on("activate",(function(){i.activated=!0,i.configureKeyboardBindings()})),this.body.emitter.on("deactivate",(function(){i.activated=!1,i.configureKeyboardBindings()})),this.body.emitter.on("destroy",(function(){void 0!==i.keycharm&&i.keycharm.destroy()})),this.options={}}return Ga(A,[{key:"setOptions",value:function(A){void 0!==A&&(this.options=A,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 A=0;A<this.navigationHammers.length;A++)this.navigationHammers[A].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 A=this;this.cleanNavigation(),this.navigationDOM={};var e=["up","down","left","right","zoomIn","zoomOut","zoomExtends"],t=["_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 i=0;i<e.length;i++){this.navigationDOM[e[i]]=document.createElement("div"),this.navigationDOM[e[i]].className="vis-button vis-"+e[i],this.navigationDOM.wrapper.appendChild(this.navigationDOM[e[i]]);var r,n,g=new ba(this.navigationDOM[e[i]]);if("_fit"===t[i])al(g,$(r=this._fit).call(r,this));else al(g,$(n=this.bindToRedraw).call(n,this,t[i]));this.navigationHammers.push(g)}var o=new ba(this.canvas.frame);Il(o,(function(){A._stopMovement()})),this.navigationHammers.push(o),this.iconsCreated=!0}},{key:"bindToRedraw",value:function(A){var e;void 0===this.boundFunctions[A]&&(this.boundFunctions[A]=$(e=this[A]).call(e,this),this.body.emitter.on("initRedraw",this.boundFunctions[A]),this.body.emitter.emit("_startRendering"))}},{key:"unbindFromRedraw",value:function(A){void 0!==this.boundFunctions[A]&&(this.body.emitter.off("initRedraw",this.boundFunctions[A]),this.body.emitter.emit("_stopRendering"),delete this.boundFunctions[A])}},{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 A in this.boundFunctions)Object.prototype.hasOwnProperty.call(this.boundFunctions,A)&&(this.body.emitter.off("initRedraw",this.boundFunctions[A]),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 A=this.body.view.scale,e=this.body.view.scale*(1+this.options.keyboard.speed.zoom),t=this.body.view.translation,i=e/A,r=(1-i)*this.canvas.canvasViewCenter.x+t.x*i,n=(1-i)*this.canvas.canvasViewCenter.y+t.y*i;this.body.view.scale=e,this.body.view.translation={x:r,y:n},this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale,pointer:null})}},{key:"_zoomOut",value:function(){var A=this.body.view.scale,e=this.body.view.scale/(1+this.options.keyboard.speed.zoom),t=this.body.view.translation,i=e/A,r=(1-i)*this.canvas.canvasViewCenter.x+t.x*i,n=(1-i)*this.canvas.canvasViewCenter.y+t.y*i;this.body.view.scale=e,this.body.view.translation={x:r,y:n},this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale,pointer:null})}},{key:"configureKeyboardBindings",value:function(){var A,e,t,i,r,n,g,o,a,I,C,s,c,l,B,Q,u,E,h,f,d,p,y,w,D=this;(void 0!==this.keycharm&&this.keycharm.destroy(),!0===this.options.keyboard.enabled)&&(!0===this.options.keyboard.bindToWindow?this.keycharm=$g({container:window,preventDefault:!0}):this.keycharm=$g({container:this.canvas.frame,preventDefault:!0}),this.keycharm.reset(),!0===this.activated&&($(A=this.keycharm).call(A,"up",(function(){D.bindToRedraw("_moveUp")}),"keydown"),$(e=this.keycharm).call(e,"down",(function(){D.bindToRedraw("_moveDown")}),"keydown"),$(t=this.keycharm).call(t,"left",(function(){D.bindToRedraw("_moveLeft")}),"keydown"),$(i=this.keycharm).call(i,"right",(function(){D.bindToRedraw("_moveRight")}),"keydown"),$(r=this.keycharm).call(r,"=",(function(){D.bindToRedraw("_zoomIn")}),"keydown"),$(n=this.keycharm).call(n,"num+",(function(){D.bindToRedraw("_zoomIn")}),"keydown"),$(g=this.keycharm).call(g,"num-",(function(){D.bindToRedraw("_zoomOut")}),"keydown"),$(o=this.keycharm).call(o,"-",(function(){D.bindToRedraw("_zoomOut")}),"keydown"),$(a=this.keycharm).call(a,"[",(function(){D.bindToRedraw("_zoomOut")}),"keydown"),$(I=this.keycharm).call(I,"]",(function(){D.bindToRedraw("_zoomIn")}),"keydown"),$(C=this.keycharm).call(C,"pageup",(function(){D.bindToRedraw("_zoomIn")}),"keydown"),$(s=this.keycharm).call(s,"pagedown",(function(){D.bindToRedraw("_zoomOut")}),"keydown"),$(c=this.keycharm).call(c,"up",(function(){D.unbindFromRedraw("_moveUp")}),"keyup"),$(l=this.keycharm).call(l,"down",(function(){D.unbindFromRedraw("_moveDown")}),"keyup"),$(B=this.keycharm).call(B,"left",(function(){D.unbindFromRedraw("_moveLeft")}),"keyup"),$(Q=this.keycharm).call(Q,"right",(function(){D.unbindFromRedraw("_moveRight")}),"keyup"),$(u=this.keycharm).call(u,"=",(function(){D.unbindFromRedraw("_zoomIn")}),"keyup"),$(E=this.keycharm).call(E,"num+",(function(){D.unbindFromRedraw("_zoomIn")}),"keyup"),$(h=this.keycharm).call(h,"num-",(function(){D.unbindFromRedraw("_zoomOut")}),"keyup"),$(f=this.keycharm).call(f,"-",(function(){D.unbindFromRedraw("_zoomOut")}),"keyup"),$(d=this.keycharm).call(d,"[",(function(){D.unbindFromRedraw("_zoomOut")}),"keyup"),$(p=this.keycharm).call(p,"]",(function(){D.unbindFromRedraw("_zoomIn")}),"keyup"),$(y=this.keycharm).call(y,"pageup",(function(){D.unbindFromRedraw("_zoomIn")}),"keyup"),$(w=this.keycharm).call(w,"pagedown",(function(){D.unbindFromRedraw("_zoomOut")}),"keyup")))}}]),A}();Wg("div.vis-tooltip {\n position: absolute;\n visibility: hidden;\n padding: 5px;\n white-space: nowrap;\n\n font-family: verdana;\n font-size:14px;\n color:#000000;\n background-color: #f5f4ed;\n\n -moz-border-radius: 3px;\n -webkit-border-radius: 3px;\n border-radius: 3px;\n border: 1px solid #808074;\n\n box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.2);\n pointer-events: none;\n\n z-index: 5;\n}\n");var ll=function(){function A(e,t){Ma(this,A),this.container=e,this.overflowMethod=t||"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 Ga(A,[{key:"setPosition",value:function(A,e){this.x=Ji(A),this.y=Ji(e)}},{key:"setText",value:function(A){A instanceof Element?(this.frame.innerHTML="",this.frame.appendChild(A)):this.frame.innerHTML=A}},{key:"show",value:function(A){if(void 0===A&&(A=!0),!0===A){var e=this.frame.clientHeight,t=this.frame.clientWidth,i=this.frame.parentNode.clientHeight,r=this.frame.parentNode.clientWidth,n=0,g=0;if("flip"==this.overflowMethod){var o=!1,a=!0;this.y-e<this.padding&&(a=!1),this.x+t>r-this.padding&&(o=!0),n=o?this.x-t:this.x,g=a?this.y-e:this.y}else(g=this.y-e)+e+this.padding>i&&(g=i-e-this.padding),g<this.padding&&(g=this.padding),(n=this.x)+t+this.padding>r&&(n=r-t-this.padding),n<this.padding&&(n=this.padding);this.frame.style.left=n+"px",this.frame.style.top=g+"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)}}]),A}(),Bl=function(){function A(e,t,i){var r,n,g,o,a,I,C,s,c,l,B,Q,u;Ma(this,A),this.body=e,this.canvas=t,this.selectionHandler=i,this.navigationHandler=new cl(e,t),this.body.eventListeners.onTap=$(r=this.onTap).call(r,this),this.body.eventListeners.onTouch=$(n=this.onTouch).call(n,this),this.body.eventListeners.onDoubleTap=$(g=this.onDoubleTap).call(g,this),this.body.eventListeners.onHold=$(o=this.onHold).call(o,this),this.body.eventListeners.onDragStart=$(a=this.onDragStart).call(a,this),this.body.eventListeners.onDrag=$(I=this.onDrag).call(I,this),this.body.eventListeners.onDragEnd=$(C=this.onDragEnd).call(C,this),this.body.eventListeners.onMouseWheel=$(s=this.onMouseWheel).call(s,this),this.body.eventListeners.onPinch=$(c=this.onPinch).call(c,this),this.body.eventListeners.onMouseMove=$(l=this.onMouseMove).call(l,this),this.body.eventListeners.onRelease=$(B=this.onRelease).call(B,this),this.body.eventListeners.onContext=$(Q=this.onContext).call(Q,this),this.touchTime=0,this.drag={},this.pinch={},this.popup=void 0,this.popupObj=void 0,this.popupTimer=void 0,this.body.functions.getPointer=$(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},navigationButtons:!1,tooltipDelay:300,zoomView:!0,zoomSpeed:1},dA(this.options,this.defaultOptions),this.bindEventListeners()}return Ga(A,[{key:"bindEventListeners",value:function(){var A=this;this.body.emitter.on("destroy",(function(){clearTimeout(A.popupTimer),delete A.body.functions.getPointer}))}},{key:"setOptions",value:function(A){if(void 0!==A){Fn(["hideEdgesOnDrag","hideEdgesOnZoom","hideNodesOnDrag","keyboard","multiselect","selectable","selectConnectedEdges"],this.options,A),Zn(this.options,A,"keyboard"),A.tooltip&&(dA(this.options.tooltip,A.tooltip),A.tooltip.color&&(this.options.tooltip.color=Tn(A.tooltip.color)))}this.navigationHandler.setOptions(this.options)}},{key:"getPointer",value:function(A){return{x:A.x-(e=this.canvas.frame.canvas,e.getBoundingClientRect().left),y:A.y-_n(this.canvas.frame.canvas)};var e}},{key:"onTouch",value:function(A){(new Date).valueOf()-this.touchTime>50&&(this.drag.pointer=this.getPointer(A.center),this.drag.pinched=!1,this.pinch.scale=this.body.view.scale,this.touchTime=(new Date).valueOf())}},{key:"onTap",value:function(A){var e=this.getPointer(A.center),t=this.selectionHandler.options.multiselect&&(A.changedPointers[0].ctrlKey||A.changedPointers[0].metaKey);this.checkSelectionChanges(e,A,t),this.selectionHandler._generateClickEvent("click",A,e)}},{key:"onDoubleTap",value:function(A){var e=this.getPointer(A.center);this.selectionHandler._generateClickEvent("doubleClick",A,e)}},{key:"onHold",value:function(A){var e=this.getPointer(A.center),t=this.selectionHandler.options.multiselect;this.checkSelectionChanges(e,A,t),this.selectionHandler._generateClickEvent("click",A,e),this.selectionHandler._generateClickEvent("hold",A,e)}},{key:"onRelease",value:function(A){if((new Date).valueOf()-this.touchTime>10){var e=this.getPointer(A.center);this.selectionHandler._generateClickEvent("release",A,e),this.touchTime=(new Date).valueOf()}}},{key:"onContext",value:function(A){var e=this.getPointer({x:A.clientX,y:A.clientY});this.selectionHandler._generateClickEvent("oncontext",A,e)}},{key:"checkSelectionChanges",value:function(A,e){var t=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=this.selectionHandler.getSelection(),r=!1;r=!0===t?this.selectionHandler.selectAdditionalOnPoint(A):this.selectionHandler.selectOnPoint(A);var n=this.selectionHandler.getSelection(),g=this._determineDifference(i,n),o=this._determineDifference(n,i);g.edges.length>0&&(this.selectionHandler._generateClickEvent("deselectEdge",e,A,i),r=!0),g.nodes.length>0&&(this.selectionHandler._generateClickEvent("deselectNode",e,A,i),r=!0),o.nodes.length>0&&(this.selectionHandler._generateClickEvent("selectNode",e,A),r=!0),o.edges.length>0&&(this.selectionHandler._generateClickEvent("selectEdge",e,A),r=!0),!0===r&&this.selectionHandler._generateClickEvent("select",e,A)}},{key:"_determineDifference",value:function(A,e){var t=function(A,e){for(var t=[],i=0;i<A.length;i++){var r=A[i];-1===ur(e).call(e,r)&&t.push(r)}return t};return{nodes:t(A.nodes,e.nodes),edges:t(A.edges,e.edges)}}},{key:"onDragStart",value:function(A){if(!this.drag.dragging){void 0===this.drag.pointer&&this.onTouch(A);var e=this.selectionHandler.getNodeAt(this.drag.pointer);if(this.drag.dragging=!0,this.drag.selection=[],this.drag.translation=dA({},this.body.view.translation),this.drag.nodeId=void 0,A.srcEvent.shiftKey){this.body.selectionBox.show=!0;var t=this.getPointer(A.center);this.body.selectionBox.position.start={x:this.canvas._XconvertDOMtoCanvas(t.x),y:this.canvas._YconvertDOMtoCanvas(t.y)},this.body.selectionBox.position.end={x:this.canvas._XconvertDOMtoCanvas(t.x),y:this.canvas._YconvertDOMtoCanvas(t.y)}}if(void 0!==e&&!0===this.options.dragNodes){this.drag.nodeId=e.id,!1===e.isSelected()&&(this.selectionHandler.unselectAll(),this.selectionHandler.selectObject(e)),this.selectionHandler._generateClickEvent("dragStart",A,this.drag.pointer);var i=this.selectionHandler.selectionObj.nodes;for(var r in i)if(Object.prototype.hasOwnProperty.call(i,r)){var n=i[r],g={id:n.id,node:n,x:n.x,y:n.y,xFixed:n.options.fixed.x,yFixed:n.options.fixed.y};n.options.fixed.x=!0,n.options.fixed.y=!0,this.drag.selection.push(g)}}else this.selectionHandler._generateClickEvent("dragStart",A,this.drag.pointer,void 0,!0)}}},{key:"onDrag",value:function(A){var e=this;if(!0!==this.drag.pinched){this.body.emitter.emit("unlockNode");var t=this.getPointer(A.center),i=this.drag.selection;if(i&&i.length&&!0===this.options.dragNodes){this.selectionHandler._generateClickEvent("dragging",A,t);var r=t.x-this.drag.pointer.x,n=t.y-this.drag.pointer.y;Yi(i).call(i,(function(A){var t=A.node;!1===A.xFixed&&(t.x=e.canvas._XconvertDOMtoCanvas(e.canvas._XconvertCanvasToDOM(A.x)+r)),!1===A.yFixed&&(t.y=e.canvas._YconvertDOMtoCanvas(e.canvas._YconvertCanvasToDOM(A.y)+n))})),this.body.emitter.emit("startSimulation")}else{if(A.srcEvent.shiftKey){if(this.selectionHandler._generateClickEvent("dragging",A,t,void 0,!0),void 0===this.drag.pointer)return void this.onDragStart(A);this.body.selectionBox.position.end={x:this.canvas._XconvertDOMtoCanvas(t.x),y:this.canvas._YconvertDOMtoCanvas(t.y)},this.body.emitter.emit("_requestRedraw")}if(!0===this.options.dragView&&!A.srcEvent.shiftKey){if(this.selectionHandler._generateClickEvent("dragging",A,t,void 0,!0),void 0===this.drag.pointer)return void this.onDragStart(A);var g=t.x-this.drag.pointer.x,o=t.y-this.drag.pointer.y;this.body.view.translation={x:this.drag.translation.x+g,y:this.drag.translation.y+o},this.body.emitter.emit("_requestRedraw")}}}}},{key:"onDragEnd",value:function(A){var e=this;if(this.drag.dragging=!1,this.body.selectionBox.show){var t;this.body.selectionBox.show=!1;var i=this.body.selectionBox.position,r={minX:Math.min(i.start.x,i.end.x),minY:Math.min(i.start.y,i.end.y),maxX:Math.max(i.start.x,i.end.x),maxY:Math.max(i.start.y,i.end.y)},n=nr(t=this.body.nodeIndices).call(t,(function(A){var t=e.body.nodes[A];return t.x>=r.minX&&t.x<=r.maxX&&t.y>=r.minY&&t.y<=r.maxY}));Yi(n).call(n,(function(A){return e.selectionHandler.selectObject(e.body.nodes[A])})),this.selectionHandler._generateClickEvent("dragEnd",A,this.getPointer(A.center),void 0,!0),this.body.emitter.emit("_requestRedraw")}else{var g=this.drag.selection;g&&g.length?(Yi(g).call(g,(function(A){A.node.options.fixed.x=A.xFixed,A.node.options.fixed.y=A.yFixed})),this.selectionHandler._generateClickEvent("dragEnd",A,this.getPointer(A.center)),this.body.emitter.emit("startSimulation")):(this.selectionHandler._generateClickEvent("dragEnd",A,this.getPointer(A.center),void 0,!0),this.body.emitter.emit("_requestRedraw"))}}},{key:"onPinch",value:function(A){var e=this.getPointer(A.center);this.drag.pinched=!0,void 0===this.pinch.scale&&(this.pinch.scale=1);var t=this.pinch.scale*A.scale;this.zoom(t,e)}},{key:"zoom",value:function(A,e){if(!0===this.options.zoomView){var t=this.body.view.scale;A<1e-5&&(A=1e-5),A>10&&(A=10);var i=void 0;void 0!==this.drag&&!0===this.drag.dragging&&(i=this.canvas.DOMtoCanvas(this.drag.pointer));var r=this.body.view.translation,n=A/t,g=(1-n)*e.x+r.x*n,o=(1-n)*e.y+r.y*n;if(this.body.view.scale=A,this.body.view.translation={x:g,y:o},null!=i){var a=this.canvas.canvasToDOM(i);this.drag.pointer.x=a.x,this.drag.pointer.y=a.y}this.body.emitter.emit("_requestRedraw"),t<A?this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale,pointer:e}):this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale,pointer:e})}}},{key:"onMouseWheel",value:function(A){if(!0===this.options.zoomView){if(0!==A.deltaY){var e=this.body.view.scale;e*=1+(A.deltaY<0?1:-1)*(.1*this.options.zoomSpeed);var t=this.getPointer({x:A.clientX,y:A.clientY});this.zoom(e,t)}A.preventDefault()}}},{key:"onMouseMove",value:function(A){var e=this,t=this.getPointer({x:A.clientX,y:A.clientY}),i=!1;void 0!==this.popup&&(!1===this.popup.hidden&&this._checkHidePopup(t),!1===this.popup.hidden&&(i=!0,this.popup.setPosition(t.x+3,t.y-5),this.popup.show())),!1===this.options.keyboard.bindToWindow&&!0===this.options.keyboard.enabled&&this.canvas.frame.focus(),!1===i&&(void 0!==this.popupTimer&&(clearInterval(this.popupTimer),this.popupTimer=void 0),this.drag.dragging||(this.popupTimer=La((function(){return e._checkShowPopup(t)}),this.options.tooltipDelay))),!0===this.options.hover&&this.selectionHandler.hoverObject(A,t)}},{key:"_checkShowPopup",value:function(A){var e=this.canvas._XconvertDOMtoCanvas(A.x),t=this.canvas._YconvertDOMtoCanvas(A.y),i={left:e,top:t,right:e,bottom:t},r=void 0===this.popupObj?void 0:this.popupObj.id,n=!1,g="node";if(void 0===this.popupObj){for(var o,a=this.body.nodeIndices,I=this.body.nodes,C=[],s=0;s<a.length;s++)!0===(o=I[a[s]]).isOverlappingWith(i)&&(n=!0,void 0!==o.getTitle()&&C.push(a[s]));C.length>0&&(this.popupObj=I[C[C.length-1]],n=!0)}if(void 0===this.popupObj&&!1===n){for(var c,l=this.body.edgeIndices,B=this.body.edges,Q=[],u=0;u<l.length;u++)!0===(c=B[l[u]]).isOverlappingWith(i)&&!0===c.connected&&void 0!==c.getTitle()&&Q.push(l[u]);Q.length>0&&(this.popupObj=B[Q[Q.length-1]],g="edge")}void 0!==this.popupObj?this.popupObj.id!==r&&(void 0===this.popup&&(this.popup=new ll(this.canvas.frame)),this.popup.popupTargetType=g,this.popup.popupTargetId=this.popupObj.id,this.popup.setPosition(A.x+3,A.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(A){var e=this.selectionHandler._pointerToPositionObject(A),t=!1;if("node"===this.popup.popupTargetType){if(void 0!==this.body.nodes[this.popup.popupTargetId]&&!0===(t=this.body.nodes[this.popup.popupTargetId].isOverlappingWith(e))){var i=this.selectionHandler.getNodeAt(A);t=void 0!==i&&i.id===this.popup.popupTargetId}}else void 0===this.selectionHandler.getNodeAt(A)&&void 0!==this.body.edges[this.popup.popupTargetId]&&(t=this.body.edges[this.popup.popupTargetId].isOverlappingWith(e));!1===t&&(this.popupObj=void 0,this.popup.hide(),this.body.emitter.emit("hidePopup"))}}]),A}(),Ql=function(){function A(e,t){var i=this;Ma(this,A),this.body=e,this.canvas=t,this.selectionObj={nodes:[],edges:[]},this.hoverObj={nodes:{},edges:{}},this.options={},this.defaultOptions={multiselect:!1,selectable:!0,selectConnectedEdges:!0,hoverConnectedEdges:!0},dA(this.options,this.defaultOptions),this.body.emitter.on("_dataChanged",(function(){i.updateSelection()}))}return Ga(A,[{key:"setOptions",value:function(A){if(void 0!==A){Gn(["multiselect","hoverConnectedEdges","selectable","selectConnectedEdges"],this.options,A)}}},{key:"selectOnPoint",value:function(A){var e=!1;if(!0===this.options.selectable){var t=this.getNodeAt(A)||this.getEdgeAt(A);this.unselectAll(),void 0!==t&&(e=this.selectObject(t)),this.body.emitter.emit("_requestRedraw")}return e}},{key:"selectAdditionalOnPoint",value:function(A){var e=!1;if(!0===this.options.selectable){var t=this.getNodeAt(A)||this.getEdgeAt(A);void 0!==t&&(e=!0,!0===t.isSelected()?this.deselectObject(t):this.selectObject(t),this.body.emitter.emit("_requestRedraw"))}return e}},{key:"_initBaseEvent",value:function(A,e){var t={};return t.pointer={DOM:{x:e.x,y:e.y},canvas:this.canvas.DOMtoCanvas(e)},t.event=A,t}},{key:"_generateClickEvent",value:function(A,e,t,i){var r=arguments.length>4&&void 0!==arguments[4]&&arguments[4],n=this._initBaseEvent(e,t);if(!0===r)n.nodes=[],n.edges=[];else{var g=this.getSelection();n.nodes=g.nodes,n.edges=g.edges}void 0!==i&&(n.previousSelection=i),"click"==A&&(n.items=this.getClickedItems(t)),void 0!==e.controlEdge&&(n.controlEdge=e.controlEdge),this.body.emitter.emit(A,n)}},{key:"selectObject",value:function(A){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.options.selectConnectedEdges;return void 0!==A&&(A instanceof Vs&&!0===e&&this._selectConnectedEdges(A),A.select(),this._addToSelection(A),!0)}},{key:"deselectObject",value:function(A){!0===A.isSelected()&&(A.selected=!1,this._removeFromSelection(A))}},{key:"_getAllNodesOverlappingWith",value:function(A){for(var e=[],t=this.body.nodes,i=0;i<this.body.nodeIndices.length;i++){var r=this.body.nodeIndices[i];t[r].isOverlappingWith(A)&&e.push(r)}return e}},{key:"_pointerToPositionObject",value:function(A){var e=this.canvas.DOMtoCanvas(A);return{left:e.x-1,top:e.y+1,right:e.x+1,bottom:e.y-1}}},{key:"getNodeAt",value:function(A){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],t=this._pointerToPositionObject(A),i=this._getAllNodesOverlappingWith(t);return i.length>0?!0===e?this.body.nodes[i[i.length-1]]:i[i.length-1]:void 0}},{key:"_getEdgesOverlappingWith",value:function(A,e){for(var t=this.body.edges,i=0;i<this.body.edgeIndices.length;i++){var r=this.body.edgeIndices[i];t[r].isOverlappingWith(A)&&e.push(r)}}},{key:"_getAllEdgesOverlappingWith",value:function(A){var e=[];return this._getEdgesOverlappingWith(A,e),e}},{key:"getEdgeAt",value:function(A){for(var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],t=this.canvas.DOMtoCanvas(A),i=10,r=null,n=this.body.edges,g=0;g<this.body.edgeIndices.length;g++){var o=this.body.edgeIndices[g],a=n[o];if(a.connected){var I=a.from.x,C=a.from.y,s=a.to.x,c=a.to.y,l=a.edgeType.getDistanceToEdge(I,C,s,c,t.x,t.y);l<i&&(r=o,i=l)}}return null!==r?!0===e?this.body.edges[r]:r:void 0}},{key:"_addToSelection",value:function(A){A instanceof Vs?this.selectionObj.nodes[A.id]=A:this.selectionObj.edges[A.id]=A}},{key:"_addToHover",value:function(A){A instanceof Vs?this.hoverObj.nodes[A.id]=A:this.hoverObj.edges[A.id]=A}},{key:"_removeFromSelection",value:function(A){A instanceof Vs?(delete this.selectionObj.nodes[A.id],this._unselectConnectedEdges(A)):delete this.selectionObj.edges[A.id]}},{key:"unselectAll",value:function(){for(var A in this.selectionObj.nodes)Object.prototype.hasOwnProperty.call(this.selectionObj.nodes,A)&&this.selectionObj.nodes[A].unselect();for(var e in this.selectionObj.edges)Object.prototype.hasOwnProperty.call(this.selectionObj.edges,e)&&this.selectionObj.edges[e].unselect();this.selectionObj={nodes:{},edges:{}}}},{key:"_getSelectedNodeCount",value:function(){var A=0;for(var e in this.selectionObj.nodes)Object.prototype.hasOwnProperty.call(this.selectionObj.nodes,e)&&(A+=1);return A}},{key:"_getSelectedNode",value:function(){for(var A in this.selectionObj.nodes)if(Object.prototype.hasOwnProperty.call(this.selectionObj.nodes,A))return this.selectionObj.nodes[A]}},{key:"_getSelectedEdge",value:function(){for(var A in this.selectionObj.edges)if(Object.prototype.hasOwnProperty.call(this.selectionObj.edges,A))return this.selectionObj.edges[A]}},{key:"_getSelectedEdgeCount",value:function(){var A=0;for(var e in this.selectionObj.edges)Object.prototype.hasOwnProperty.call(this.selectionObj.edges,e)&&(A+=1);return A}},{key:"_getSelectedObjectCount",value:function(){var A=0;for(var e in this.selectionObj.nodes)Object.prototype.hasOwnProperty.call(this.selectionObj.nodes,e)&&(A+=1);for(var t in this.selectionObj.edges)Object.prototype.hasOwnProperty.call(this.selectionObj.edges,t)&&(A+=1);return A}},{key:"_selectionIsEmpty",value:function(){for(var A in this.selectionObj.nodes)if(Object.prototype.hasOwnProperty.call(this.selectionObj.nodes,A))return!1;for(var e in this.selectionObj.edges)if(Object.prototype.hasOwnProperty.call(this.selectionObj.edges,e))return!1;return!0}},{key:"_clusterInSelection",value:function(){for(var A in this.selectionObj.nodes)if(Object.prototype.hasOwnProperty.call(this.selectionObj.nodes,A)&&this.selectionObj.nodes[A].clusterSize>1)return!0;return!1}},{key:"_selectConnectedEdges",value:function(A){for(var e=0;e<A.edges.length;e++){var t=A.edges[e];t.select(),this._addToSelection(t)}}},{key:"_hoverConnectedEdges",value:function(A){for(var e=0;e<A.edges.length;e++){var t=A.edges[e];t.hover=!0,this._addToHover(t)}}},{key:"_unselectConnectedEdges",value:function(A){for(var e=0;e<A.edges.length;e++){var t=A.edges[e];t.unselect(),this._removeFromSelection(t)}}},{key:"emitBlurEvent",value:function(A,e,t){var i=this._initBaseEvent(A,e);!0===t.hover&&(t.hover=!1,t instanceof Vs?(i.node=t.id,this.body.emitter.emit("blurNode",i)):(i.edge=t.id,this.body.emitter.emit("blurEdge",i)))}},{key:"emitHoverEvent",value:function(A,e,t){var i=this._initBaseEvent(A,e),r=!1;return!1===t.hover&&(t.hover=!0,this._addToHover(t),r=!0,t instanceof Vs?(i.node=t.id,this.body.emitter.emit("hoverNode",i)):(i.edge=t.id,this.body.emitter.emit("hoverEdge",i))),r}},{key:"hoverObject",value:function(A,e){var t=this.getNodeAt(e);void 0===t&&(t=this.getEdgeAt(e));var i=!1;for(var r in this.hoverObj.nodes)Object.prototype.hasOwnProperty.call(this.hoverObj.nodes,r)&&(void 0===t||t instanceof Vs&&t.id!=r||t instanceof Uc)&&(this.emitBlurEvent(A,e,this.hoverObj.nodes[r]),delete this.hoverObj.nodes[r],i=!0);for(var n in this.hoverObj.edges)Object.prototype.hasOwnProperty.call(this.hoverObj.edges,n)&&(!0===i?(this.hoverObj.edges[n].hover=!1,delete this.hoverObj.edges[n]):(void 0===t||t instanceof Uc&&t.id!=n||t instanceof Vs&&!t.hover)&&(this.emitBlurEvent(A,e,this.hoverObj.edges[n]),delete this.hoverObj.edges[n],i=!0));if(void 0!==t){var g=qr(this.hoverObj.edges).length,o=qr(this.hoverObj.nodes).length;(i||t instanceof Uc&&0===g&&0===o||t instanceof Vs&&0===g&&0===o)&&(i=this.emitHoverEvent(A,e,t)),t instanceof Vs&&!0===this.options.hoverConnectedEdges&&this._hoverConnectedEdges(t)}!0===i&&this.body.emitter.emit("_requestRedraw")}},{key:"getSelection",value:function(){return{nodes:this.getSelectedNodes(),edges:this.getSelectedEdges()}}},{key:"getSelectedNodes",value:function(){var A=[];if(!0===this.options.selectable)for(var e in this.selectionObj.nodes)Object.prototype.hasOwnProperty.call(this.selectionObj.nodes,e)&&A.push(this.selectionObj.nodes[e].id);return A}},{key:"getSelectedEdges",value:function(){var A=[];if(!0===this.options.selectable)for(var e in this.selectionObj.edges)Object.prototype.hasOwnProperty.call(this.selectionObj.edges,e)&&A.push(this.selectionObj.edges[e].id);return A}},{key:"setSelection",value:function(A){var e,t,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!A||!A.nodes&&!A.edges)throw"Selection must be an object with nodes and/or edges properties";if((i.unselectAll||void 0===i.unselectAll)&&this.unselectAll(),A.nodes)for(e=0;e<A.nodes.length;e++){t=A.nodes[e];var r=this.body.nodes[t];if(!r)throw new RangeError('Node with id "'+t+'" not found');this.selectObject(r,i.highlightEdges)}if(A.edges)for(e=0;e<A.edges.length;e++){t=A.edges[e];var n=this.body.edges[t];if(!n)throw new RangeError('Edge with id "'+t+'" not found');this.selectObject(n)}this.body.emitter.emit("_requestRedraw")}},{key:"selectNodes",value:function(A){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(!A||void 0===A.length)throw"Selection must be an array with ids";this.setSelection({nodes:A},{highlightEdges:e})}},{key:"selectEdges",value:function(A){if(!A||void 0===A.length)throw"Selection must be an array with ids";this.setSelection({edges:A})}},{key:"updateSelection",value:function(){for(var A in this.selectionObj.nodes)Object.prototype.hasOwnProperty.call(this.selectionObj.nodes,A)&&(Object.prototype.hasOwnProperty.call(this.body.nodes,A)||delete this.selectionObj.nodes[A]);for(var e in this.selectionObj.edges)Object.prototype.hasOwnProperty.call(this.selectionObj.edges,e)&&(Object.prototype.hasOwnProperty.call(this.body.edges,e)||delete this.selectionObj.edges[e])}},{key:"getClickedItems",value:function(A){for(var e=this.canvas.DOMtoCanvas(A),t=[],i=this.body.nodeIndices,r=this.body.nodes,n=i.length-1;n>=0;n--){var g=r[i[n]].getItemsOnPoint(e);t.push.apply(t,g)}for(var o=this.body.edgeIndices,a=this.body.edges,I=o.length-1;I>=0;I--){var C=a[o[I]].getItemsOnPoint(e);t.push.apply(t,C)}return t}}]),A}(),ul=r((function(A,e){!function(A){A.__esModule=!0,A.sort=function(A,e,t,g){if(!Array.isArray(A))throw new TypeError("Can only sort arrays");e?"function"!=typeof e&&(g=t,t=e,e=i):e=i,t||(t=0),g||(g=A.length);var o=g-t;if(!(o<2)){var I=0;if(o<32)return I=r(A,t,g,e),void n(A,t,g,t+I,e);var C=new a(A,e),s=function(A){for(var e=0;A>=32;)e|=1&A,A>>=1;return A+e}(o);do{if((I=r(A,t,g,e))<s){var c=o;c>s&&(c=s),n(A,t,t+c,t+I,e),I=c}C.pushRun(t,I),C.mergeRuns(),o-=I,t+=I}while(0!==o);C.forceMergeRuns()}};var e=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9];function t(A){return A<1e5?A<100?A<10?0:1:A<1e4?A<1e3?2:3:4:A<1e7?A<1e6?5:6:A<1e9?A<1e8?7:8:9}function i(A,i){if(A===i)return 0;if(~~A===A&&~~i===i){if(0===A||0===i)return A<i?-1:1;if(A<0||i<0){if(i>=0)return-1;if(A>=0)return 1;A=-A,i=-i}var r=t(A),n=t(i),g=0;return r<n?(A*=e[n-r-1],i/=10,g=-1):r>n&&(i*=e[r-n-1],A/=10,g=1),A===i?g:A<i?-1:1}var o=String(A),a=String(i);return o===a?0:o<a?-1:1}function r(A,e,t,i){var r=e+1;if(r===t)return 1;if(i(A[r++],A[e])<0){for(;r<t&&i(A[r],A[r-1])<0;)r++;!function(A,e,t){for(t--;e<t;){var i=A[e];A[e++]=A[t],A[t--]=i}}(A,e,r)}else for(;r<t&&i(A[r],A[r-1])>=0;)r++;return r-e}function n(A,e,t,i,r){for(i===e&&i++;i<t;i++){for(var n=A[i],g=e,o=i;g<o;){var a=g+o>>>1;r(n,A[a])<0?o=a:g=a+1}var I=i-g;switch(I){case 3:A[g+3]=A[g+2];case 2:A[g+2]=A[g+1];case 1:A[g+1]=A[g];break;default:for(;I>0;)A[g+I]=A[g+I-1],I--}A[g]=n}}function g(A,e,t,i,r,n){var g=0,o=0,a=1;if(n(A,e[t+r])>0){for(o=i-r;a<o&&n(A,e[t+r+a])>0;)g=a,(a=1+(a<<1))<=0&&(a=o);a>o&&(a=o),g+=r,a+=r}else{for(o=r+1;a<o&&n(A,e[t+r-a])<=0;)g=a,(a=1+(a<<1))<=0&&(a=o);a>o&&(a=o);var I=g;g=r-a,a=r-I}for(g++;g<a;){var C=g+(a-g>>>1);n(A,e[t+C])>0?g=C+1:a=C}return a}function o(A,e,t,i,r,n){var g=0,o=0,a=1;if(n(A,e[t+r])<0){for(o=r+1;a<o&&n(A,e[t+r-a])<0;)g=a,(a=1+(a<<1))<=0&&(a=o);a>o&&(a=o);var I=g;g=r-a,a=r-I}else{for(o=i-r;a<o&&n(A,e[t+r+a])>=0;)g=a,(a=1+(a<<1))<=0&&(a=o);a>o&&(a=o),g+=r,a+=r}for(g++;g<a;){var C=g+(a-g>>>1);n(A,e[t+C])<0?a=C:g=C+1}return a}var a=function(){function A(e,t){!function(A,e){if(!(A instanceof e))throw new TypeError("Cannot call a class as a function")}(this,A),this.array=null,this.compare=null,this.minGallop=7,this.length=0,this.tmpStorageLength=256,this.stackLength=0,this.runStart=null,this.runLength=null,this.stackSize=0,this.array=e,this.compare=t,this.length=e.length,this.length<512&&(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 A.prototype.pushRun=function(A,e){this.runStart[this.stackSize]=A,this.runLength[this.stackSize]=e,this.stackSize+=1},A.prototype.mergeRuns=function(){for(;this.stackSize>1;){var A=this.stackSize-2;if(A>=1&&this.runLength[A-1]<=this.runLength[A]+this.runLength[A+1]||A>=2&&this.runLength[A-2]<=this.runLength[A]+this.runLength[A-1])this.runLength[A-1]<this.runLength[A+1]&&A--;else if(this.runLength[A]>this.runLength[A+1])break;this.mergeAt(A)}},A.prototype.forceMergeRuns=function(){for(;this.stackSize>1;){var A=this.stackSize-2;A>0&&this.runLength[A-1]<this.runLength[A+1]&&A--,this.mergeAt(A)}},A.prototype.mergeAt=function(A){var e=this.compare,t=this.array,i=this.runStart[A],r=this.runLength[A],n=this.runStart[A+1],a=this.runLength[A+1];this.runLength[A]=r+a,A===this.stackSize-3&&(this.runStart[A+1]=this.runStart[A+2],this.runLength[A+1]=this.runLength[A+2]),this.stackSize--;var I=o(t[n],t,i,r,0,e);i+=I,0!=(r-=I)&&0!==(a=g(t[i+r-1],t,n,a,a-1,e))&&(r<=a?this.mergeLow(i,r,n,a):this.mergeHigh(i,r,n,a))},A.prototype.mergeLow=function(A,e,t,i){var r=this.compare,n=this.array,a=this.tmp,I=0;for(I=0;I<e;I++)a[I]=n[A+I];var C=0,s=t,c=A;if(n[c++]=n[s++],0!=--i)if(1!==e){for(var l=this.minGallop;;){var B=0,Q=0,u=!1;do{if(r(n[s],a[C])<0){if(n[c++]=n[s++],Q++,B=0,0==--i){u=!0;break}}else if(n[c++]=a[C++],B++,Q=0,1==--e){u=!0;break}}while((B|Q)<l);if(u)break;do{if(0!==(B=o(n[s],a,C,e,0,r))){for(I=0;I<B;I++)n[c+I]=a[C+I];if(c+=B,C+=B,(e-=B)<=1){u=!0;break}}if(n[c++]=n[s++],0==--i){u=!0;break}if(0!==(Q=g(a[C],n,s,i,0,r))){for(I=0;I<Q;I++)n[c+I]=n[s+I];if(c+=Q,s+=Q,0==(i-=Q)){u=!0;break}}if(n[c++]=a[C++],1==--e){u=!0;break}l--}while(B>=7||Q>=7);if(u)break;l<0&&(l=0),l+=2}if(this.minGallop=l,l<1&&(this.minGallop=1),1===e){for(I=0;I<i;I++)n[c+I]=n[s+I];n[c+i]=a[C]}else{if(0===e)throw new Error("mergeLow preconditions were not respected");for(I=0;I<e;I++)n[c+I]=a[C+I]}}else{for(I=0;I<i;I++)n[c+I]=n[s+I];n[c+i]=a[C]}else for(I=0;I<e;I++)n[c+I]=a[C+I]},A.prototype.mergeHigh=function(A,e,t,i){var r=this.compare,n=this.array,a=this.tmp,I=0;for(I=0;I<i;I++)a[I]=n[t+I];var C=A+e-1,s=i-1,c=t+i-1,l=0,B=0;if(n[c--]=n[C--],0!=--e)if(1!==i){for(var Q=this.minGallop;;){var u=0,E=0,h=!1;do{if(r(a[s],n[C])<0){if(n[c--]=n[C--],u++,E=0,0==--e){h=!0;break}}else if(n[c--]=a[s--],E++,u=0,1==--i){h=!0;break}}while((u|E)<Q);if(h)break;do{if(0!=(u=e-o(a[s],n,A,e,e-1,r))){for(e-=u,B=1+(c-=u),l=1+(C-=u),I=u-1;I>=0;I--)n[B+I]=n[l+I];if(0===e){h=!0;break}}if(n[c--]=a[s--],1==--i){h=!0;break}if(0!=(E=i-g(n[C],a,0,i,i-1,r))){for(i-=E,B=1+(c-=E),l=1+(s-=E),I=0;I<E;I++)n[B+I]=a[l+I];if(i<=1){h=!0;break}}if(n[c--]=n[C--],0==--e){h=!0;break}Q--}while(u>=7||E>=7);if(h)break;Q<0&&(Q=0),Q+=2}if(this.minGallop=Q,Q<1&&(this.minGallop=1),1===i){for(B=1+(c-=e),l=1+(C-=e),I=e-1;I>=0;I--)n[B+I]=n[l+I];n[c]=a[s]}else{if(0===i)throw new Error("mergeHigh preconditions were not respected");for(l=c-(i-1),I=0;I<i;I++)n[l+I]=a[I]}}else{for(B=1+(c-=e),l=1+(C-=e),I=e-1;I>=0;I--)n[B+I]=n[l+I];n[c]=a[s]}else for(l=c-(i-1),I=0;I<i;I++)n[l+I]=a[I]},A}()}(e)}));function El(A){var e=function(){if("undefined"==typeof Reflect||!eI)return!1;if(eI.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(eI(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=bI(A);if(e){var r=bI(this).constructor;t=eI(i,arguments,r)}else t=i.apply(this,arguments);return vI(this,t)}}var hl=function(){function A(){Ma(this,A)}return Ga(A,[{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(A){return this.fake_use(A),this.abstract()}},{key:"setPosition",value:function(A,e){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;this.fake_use(A,e,t),this.abstract()}},{key:"getTreeSize",value:function(A){return this.fake_use(A),this.abstract()}},{key:"sort",value:function(A){this.fake_use(A),this.abstract()}},{key:"fix",value:function(A,e){this.fake_use(A,e),this.abstract()}},{key:"shift",value:function(A,e){this.fake_use(A,e),this.abstract()}}]),A}(),fl=function(A){DI(t,A);var e=El(t);function t(A){var i;return Ma(this,t),(i=e.call(this)).layout=A,i}return Ga(t,[{key:"curveType",value:function(){return"horizontal"}},{key:"getPosition",value:function(A){return A.x}},{key:"setPosition",value:function(A,e){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;void 0!==t&&this.layout.hierarchical.addToOrdering(A,t),A.x=e}},{key:"getTreeSize",value:function(A){var e=this.layout.hierarchical.getTreeSize(this.layout.body.nodes,A);return{min:e.min_x,max:e.max_x}}},{key:"sort",value:function(A){ul.sort(A,(function(A,e){return A.x-e.x}))}},{key:"fix",value:function(A,e){A.y=this.layout.options.hierarchical.levelSeparation*e,A.options.fixed.y=!0}},{key:"shift",value:function(A,e){this.layout.body.nodes[A].x+=e}}]),t}(hl),dl=function(A){DI(t,A);var e=El(t);function t(A){var i;return Ma(this,t),(i=e.call(this)).layout=A,i}return Ga(t,[{key:"curveType",value:function(){return"vertical"}},{key:"getPosition",value:function(A){return A.y}},{key:"setPosition",value:function(A,e){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;void 0!==t&&this.layout.hierarchical.addToOrdering(A,t),A.y=e}},{key:"getTreeSize",value:function(A){var e=this.layout.hierarchical.getTreeSize(this.layout.body.nodes,A);return{min:e.min_y,max:e.max_y}}},{key:"sort",value:function(A){ul.sort(A,(function(A,e){return A.y-e.y}))}},{key:"fix",value:function(A,e){A.x=this.layout.options.hierarchical.levelSeparation*e,A.options.fixed.x=!0}},{key:"shift",value:function(A,e){this.layout.body.nodes[A].y+=e}}]),t}(hl),pl=qe.every,yl=Di("every"),wl=ki("every");q({target:"Array",proto:!0,forced:!yl||!wl},{every:function(A){return pl(this,A,arguments.length>1?arguments[1]:void 0)}});var Dl=Z("Array").every,vl=Array.prototype,ml=function(A){var e=A.every;return A===vl||A instanceof Array&&e===vl.every?Dl:e};function bl(A,e){var t;if(void 0===cn||null==$t(A)){if(Wr(A)||(t=function(A,e){var t;if(!A)return;if("string"==typeof A)return kl(A,e);var i=rn(t=Object.prototype.toString.call(A)).call(t,8,-1);"Object"===i&&A.constructor&&(i=A.constructor.name);if("Map"===i||"Set"===i)return Ci(A);if("Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i))return kl(A,e)}(A))||e&&A&&"number"==typeof A.length){t&&(A=t);var i=0,r=function(){};return{s:r,n:function(){return i>=A.length?{done:!0}:{done:!1,value:A[i++]}},e:function(A){throw A},f:r}}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 n,g=!0,o=!1;return{s:function(){t=Wt(A)},n:function(){var A=t.next();return g=A.done,A},e:function(A){o=!0,n=A},f:function(){try{g||null==t.return||t.return()}finally{if(o)throw n}}}}function kl(A,e){(null==e||e>A.length)&&(e=A.length);for(var t=0,i=new Array(e);t<e;t++)i[t]=A[t];return i}function Nl(A,e){var t=new WI;return Yi(A).call(A,(function(A){var e;Yi(e=A.edges).call(e,(function(A){A.connected&&t.add(A)}))})),Yi(t).call(t,(function(A){var t=A.from.id,i=A.to.id;null==e[t]&&(e[t]=0),(null==e[i]||e[t]>=e[i])&&(e[i]=e[t]+1)})),e}function Ml(A,e,t,i,r){var n,g=i.size,o=t+"Id",a="to"===t?1:-1,I=bl(i);try{var C=function(){var I=Tr(n.value,2),C=I[0],s=I[1];if(!i.has(C)||!A(s))return"continue";r[C]=0;for(var c=[s],l=0,B=void 0,Q=function(){var A,n;if(!i.has(C))return"continue";var I=r[B.id]+a;if(Yi(A=nr(n=B.edges).call(n,(function(A){return A.connected&&A.to!==A.from&&A[t]!==B&&i.has(A.toId)&&i.has(A.fromId)}))).call(A,(function(A){var i=A[o],n=r[i];(null==n||e(I,n))&&(r[i]=I,c.push(A[t]))})),l>g)return{v:{v:Nl(i,r)}};++l};B=c.pop();){var u=Q();if("continue"!==u&&"object"===en(u))return u.v}};for(I.s();!(n=I.n()).done;){var s=C();if("continue"!==s&&"object"===en(s))return s.v}}catch(A){I.e(A)}finally{I.f()}return r}var Rl=function(){function A(){Ma(this,A),this.childrenReference={},this.parentReference={},this.trees={},this.distributionOrdering={},this.levels={},this.distributionIndex={},this.isTree=!1,this.treeIndex=-1}return Ga(A,[{key:"addRelation",value:function(A,e){void 0===this.childrenReference[A]&&(this.childrenReference[A]=[]),this.childrenReference[A].push(e),void 0===this.parentReference[e]&&(this.parentReference[e]=[]),this.parentReference[e].push(A)}},{key:"checkIfTree",value:function(){for(var A in this.parentReference)if(this.parentReference[A].length>1)return void(this.isTree=!1);this.isTree=!0}},{key:"numTrees",value:function(){return this.treeIndex+1}},{key:"setTreeIndex",value:function(A,e){void 0!==e&&void 0===this.trees[A.id]&&(this.trees[A.id]=e,this.treeIndex=Math.max(e,this.treeIndex))}},{key:"ensureLevel",value:function(A){void 0===this.levels[A]&&(this.levels[A]=0)}},{key:"getMaxLevel",value:function(A){var e=this,t={};return function A(i){if(void 0!==t[i])return t[i];var r=e.levels[i];if(e.childrenReference[i]){var n=e.childrenReference[i];if(n.length>0)for(var g=0;g<n.length;g++)r=Math.max(r,A(n[g]))}return t[i]=r,r}(A)}},{key:"levelDownstream",value:function(A,e){void 0===this.levels[e.id]&&(void 0===this.levels[A.id]&&(this.levels[A.id]=0),this.levels[e.id]=this.levels[A.id]+1)}},{key:"setMinLevelToZero",value:function(A){var e=1e9;for(var t in A)Object.prototype.hasOwnProperty.call(A,t)&&void 0!==this.levels[t]&&(e=Math.min(this.levels[t],e));for(var i in A)Object.prototype.hasOwnProperty.call(A,i)&&void 0!==this.levels[i]&&(this.levels[i]-=e)}},{key:"getTreeSize",value:function(A,e){var t=1e9,i=-1e9,r=1e9,n=-1e9;for(var g in this.trees)if(Object.prototype.hasOwnProperty.call(this.trees,g)&&this.trees[g]===e){var o=A[g];t=Math.min(o.x,t),i=Math.max(o.x,i),r=Math.min(o.y,r),n=Math.max(o.y,n)}return{min_x:t,max_x:i,min_y:r,max_y:n}}},{key:"hasSameParent",value:function(A,e){var t=this.parentReference[A.id],i=this.parentReference[e.id];if(void 0===t||void 0===i)return!1;for(var r=0;r<t.length;r++)for(var n=0;n<i.length;n++)if(t[r]==i[n])return!0;return!1}},{key:"inSameSubNetwork",value:function(A,e){return this.trees[A.id]===this.trees[e.id]}},{key:"getLevels",value:function(){return qr(this.distributionOrdering)}},{key:"addToOrdering",value:function(A,e){void 0===this.distributionOrdering[e]&&(this.distributionOrdering[e]=[]);var t=!1,i=this.distributionOrdering[e];for(var r in i)if(i[r]===A){t=!0;break}t||(this.distributionOrdering[e].push(A),this.distributionIndex[A.id]=this.distributionOrdering[e].length-1)}}]),A}(),Gl=function(){function A(e){Ma(this,A),this.body=e,this._resetRNG(Math.random()+":"+Hr()),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"}},dA(this.options,this.defaultOptions),this.bindEventListeners()}return Ga(A,[{key:"bindEventListeners",value:function(){var A=this;this.body.emitter.on("_dataChanged",(function(){A.setupHierarchicalLayout()})),this.body.emitter.on("_dataLoaded",(function(){A.layoutNetwork()})),this.body.emitter.on("_resetHierarchicalLayout",(function(){A.setupHierarchicalLayout()})),this.body.emitter.on("_adjustEdgesForHierarchicalLayout",(function(){if(!0===A.options.hierarchical.enabled){var e=A.direction.curveType();A.body.emitter.emit("_forceDisableDynamicCurves",e,!1)}}))}},{key:"setOptions",value:function(A,e){if(void 0!==A){var t=this.options.hierarchical,i=t.enabled;if(Gn(["randomSeed","improvedLayout","clusterThreshold"],this.options,A),Zn(this.options,A,"hierarchical"),void 0!==A.randomSeed&&this._resetRNG(A.randomSeed),!0===t.enabled)return!0===i&&this.body.emitter.emit("refresh",!0),"RL"===t.direction||"DU"===t.direction?t.levelSeparation>0&&(t.levelSeparation*=-1):t.levelSeparation<0&&(t.levelSeparation*=-1),this.setDirectionStrategy(),this.body.emitter.emit("_resetHierarchicalLayout"),this.adaptAllOptionsForHierarchicalLayout(e);if(!0===i)return this.body.emitter.emit("refresh"),xn(e,this.optionsBackup)}return e}},{key:"_resetRNG",value:function(A){this.initialRandomSeed=A,this._rng=dn(this.initialRandomSeed)}},{key:"adaptAllOptionsForHierarchicalLayout",value:function(A){if(!0===this.options.hierarchical.enabled){var e=this.optionsBackup.physics;void 0===A.physics||!0===A.physics?(A.physics={enabled:void 0===e.enabled||e.enabled,solver:"hierarchicalRepulsion"},e.enabled=void 0===e.enabled||e.enabled,e.solver=e.solver||"barnesHut"):"object"===en(A.physics)?(e.enabled=void 0===A.physics.enabled||A.physics.enabled,e.solver=A.physics.solver||"barnesHut",A.physics.solver="hierarchicalRepulsion"):!1!==A.physics&&(e.solver="barnesHut",A.physics={solver:"hierarchicalRepulsion"});var t=this.direction.curveType();if(void 0===A.edges)this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},A.edges={smooth:!1};else if(void 0===A.edges.smooth)this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},A.edges.smooth=!1;else if("boolean"==typeof A.edges.smooth)this.optionsBackup.edges={smooth:A.edges.smooth},A.edges.smooth={enabled:A.edges.smooth,type:t};else{var i=A.edges.smooth;void 0!==i.type&&"dynamic"!==i.type&&(t=i.type),this.optionsBackup.edges={smooth:{enabled:void 0===i.enabled||i.enabled,type:void 0===i.type?"dynamic":i.type,roundness:void 0===i.roundness?.5:i.roundness,forceDirection:void 0!==i.forceDirection&&i.forceDirection}},A.edges.smooth={enabled:void 0===i.enabled||i.enabled,type:t,roundness:void 0===i.roundness?.5:i.roundness,forceDirection:void 0!==i.forceDirection&&i.forceDirection}}this.body.emitter.emit("_forceDisableDynamicCurves",t)}return A}},{key:"positionInitially",value:function(A){if(!0!==this.options.hierarchical.enabled){this._resetRNG(this.initialRandomSeed);for(var e=A.length+50,t=0;t<A.length;t++){var i=A[t],r=2*Math.PI*this._rng();void 0===i.x&&(i.x=e*Math.cos(r)),void 0===i.y&&(i.y=e*Math.sin(r))}}}},{key:"layoutNetwork",value:function(){if(!0!==this.options.hierarchical.enabled&&!0===this.options.improvedLayout){for(var A=this.body.nodeIndices,e=0,t=0;t<A.length;t++){!0===this.body.nodes[A[t]].predefinedPosition&&(e+=1)}if(e<.5*A.length){var i=0,r=this.options.clusterThreshold,n={clusterNodeProperties:{shape:"ellipse",label:"",group:"",font:{multi:!1}},clusterEdgeProperties:{label:"",font:{multi:!1},smooth:{enabled:!1}}};if(A.length>r){for(var g=A.length;A.length>r&&i<=10;){i+=1;var o=A.length;if(i%3==0?this.body.modules.clustering.clusterBridges(n):this.body.modules.clustering.clusterOutliers(n),o==A.length&&i%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*g)})}i>10&&console.info("The clustering didn't succeed within the amount of interations allowed, progressing with partial result."),this.body.modules.kamadaKawai.solve(A,this.body.edgeIndices,!0),this._shiftToCenter();for(var a=0;a<A.length;a++){var I=this.body.nodes[A[a]];!1===I.predefinedPosition&&(I.x+=70*(.5-this._rng()),I.y+=70*(.5-this._rng()))}this._declusterAll(),this.body.emitter.emit("_repositionBezierNodes")}}}},{key:"_shiftToCenter",value:function(){for(var A=tl.getRangeCore(this.body.nodes,this.body.nodeIndices),e=tl.findCenter(A),t=0;t<this.body.nodeIndices.length;t++){var i=this.body.nodes[this.body.nodeIndices[t]];i.x-=e.x,i.y-=e.y}}},{key:"_declusterAll",value:function(){for(var A=!0;!0===A;){A=!1;for(var e=0;e<this.body.nodeIndices.length;e++)!0===this.body.nodes[this.body.nodeIndices[e]].isCluster&&(A=!0,this.body.modules.clustering.openCluster(this.body.nodeIndices[e],{},!1));!0===A&&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 A,e,t=!1,i=!1;for(e in this.lastNodeOnLevel={},this.hierarchical=new Rl,this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,e)&&(void 0!==(A=this.body.nodes[e]).options.level?(t=!0,this.hierarchical.levels[e]=A.options.level):i=!0);if(!0===i&&!0===t)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===i){var r=this.options.hierarchical.sortMethod;"hubsize"===r?this._determineLevelsByHubsize():"directed"===r?this._determineLevelsDirected():"custom"===r&&this._determineLevelsCustomCallback()}for(var n in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,n)&&this.hierarchical.ensureLevel(n);var g=this._getDistribution();this._generateMap(),this._placeNodesByHierarchy(g),this._condenseHierarchy(),this._shiftToCenter()}}},{key:"_condenseHierarchy",value:function(){var A=this,e=!1,t={},i=function(e,t){var i=A.hierarchical.trees;for(var r in i)Object.prototype.hasOwnProperty.call(i,r)&&i[r]===e&&A.direction.shift(r,t)},r=function(){for(var e=[],t=0;t<A.hierarchical.numTrees();t++)e.push(A.direction.getTreeSize(t));return e},n=function e(t,i){if(!i[t.id]&&(i[t.id]=!0,A.hierarchical.childrenReference[t.id])){var r=A.hierarchical.childrenReference[t.id];if(r.length>0)for(var n=0;n<r.length;n++)e(A.body.nodes[r[n]],i)}},g=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e9,i=1e9,r=1e9,n=1e9,g=-1e9;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var a=A.body.nodes[o],I=A.hierarchical.levels[a.id],C=A.direction.getPosition(a),s=A._getSpaceAroundNode(a,e),c=Tr(s,2),l=c[0],B=c[1];i=Math.min(l,i),r=Math.min(B,r),I<=t&&(n=Math.min(C,n),g=Math.max(C,g))}return[n,g,i,r]},o=function(e,t){var i=A.hierarchical.getMaxLevel(e.id),r=A.hierarchical.getMaxLevel(t.id);return Math.min(i,r)},a=function(e,t,i){for(var r=A.hierarchical,n=0;n<t.length;n++){var g=t[n],o=r.distributionOrdering[g];if(o.length>1)for(var a=0;a<o.length-1;a++){var I=o[a],C=o[a+1];r.hasSameParent(I,C)&&r.inSameSubNetwork(I,C)&&e(I,C,i)}}},I=function(t,i){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],a=A.direction.getPosition(t),I=A.direction.getPosition(i),C=Math.abs(I-a),s=A.options.hierarchical.nodeSpacing;if(C>s){var c={},l={};n(t,c),n(i,l);var B=o(t,i),Q=g(c,B),u=g(l,B),E=Q[1],h=u[0],f=u[2],d=Math.abs(E-h);if(d>s){var p=E-h+s;p<-f+s&&(p=-f+s),p<0&&(A._shiftBlock(i.id,p),e=!0,!0===r&&A._centerParent(i))}}},C=function(i,r){for(var o=r.id,a=r.edges,I=A.hierarchical.levels[r.id],C=A.options.hierarchical.levelSeparation*A.options.hierarchical.levelSeparation,s={},c=[],l=0;l<a.length;l++){var B=a[l];if(B.toId!=B.fromId){var Q=B.toId==o?B.from:B.to;s[a[l].id]=Q,A.hierarchical.levels[Q.id]<I&&c.push(B)}}var u=function(e,t){for(var i=0,r=0;r<t.length;r++)if(void 0!==s[t[r].id]){var n=A.direction.getPosition(s[t[r].id])-e;i+=n/Math.sqrt(n*n+C)}return i},E=function(e,t){for(var i=0,r=0;r<t.length;r++)if(void 0!==s[t[r].id]){var n=A.direction.getPosition(s[t[r].id])-e;i-=C*Math.pow(n*n+C,-1.5)}return i},h=function(e,t){for(var i=A.direction.getPosition(r),n={},g=0;g<e;g++){var o=u(i,t),a=E(i,t);if(void 0!==n[i-=Math.max(-40,Math.min(40,Math.round(o/a)))])break;n[i]=g}return i},f=h(i,c);!function(i){var o=A.direction.getPosition(r);if(void 0===t[r.id]){var a={};n(r,a),t[r.id]=a}var I=g(t[r.id]),C=I[2],s=I[3],c=i-o,l=0;c>0?l=Math.min(c,s-A.options.hierarchical.nodeSpacing):c<0&&(l=-Math.min(-c,C-A.options.hierarchical.nodeSpacing)),0!=l&&(A._shiftBlock(r.id,l),e=!0)}(f),function(t){var i=A.direction.getPosition(r),n=A._getSpaceAroundNode(r),g=Tr(n,2),o=g[0],a=g[1],I=t-i,C=i;I>0?C=Math.min(i+(a-A.options.hierarchical.nodeSpacing),t):I<0&&(C=Math.max(i-(o-A.options.hierarchical.nodeSpacing),t)),C!==i&&(A.direction.setPosition(r,C),e=!0)}(f=h(i,a))};!0===this.options.hierarchical.blockShifting&&(function(t){var i=A.hierarchical.getLevels();i=el(i).call(i);for(var r=0;r<t&&(e=!1,a(I,i,!0),!0===e);r++);}(5),function(){for(var e in A.body.nodes)Object.prototype.hasOwnProperty.call(A.body.nodes,e)&&A._centerParent(A.body.nodes[e])}()),!0===this.options.hierarchical.edgeMinimization&&function(t){var i=A.hierarchical.getLevels();i=el(i).call(i);for(var r=0;r<t;r++){e=!1;for(var n=0;n<i.length;n++)for(var g=i[n],o=A.hierarchical.distributionOrdering[g],a=0;a<o.length;a++)C(1e3,o[a]);if(!0!==e)break}}(20),!0===this.options.hierarchical.parentCentralization&&function(){var e=A.hierarchical.getLevels();e=el(e).call(e);for(var t=0;t<e.length;t++)for(var i=e[t],r=A.hierarchical.distributionOrdering[i],n=0;n<r.length;n++)A._centerParent(r[n])}(),function(){for(var e=r(),t=0,n=0;n<e.length-1;n++){t+=e[n].max-e[n+1].min+A.options.hierarchical.treeSpacing,i(n+1,t)}}()}},{key:"_getSpaceAroundNode",value:function(A,e){var t=!0;void 0===e&&(t=!1);var i=this.hierarchical.levels[A.id];if(void 0!==i){var r=this.hierarchical.distributionIndex[A.id],n=this.direction.getPosition(A),g=this.hierarchical.distributionOrdering[i],o=1e9,a=1e9;if(0!==r){var I=g[r-1];if(!0===t&&void 0===e[I.id]||!1===t)o=n-this.direction.getPosition(I)}if(r!=g.length-1){var C=g[r+1];if(!0===t&&void 0===e[C.id]||!1===t){var s=this.direction.getPosition(C);a=Math.min(a,s-n)}}return[o,a]}return[0,0]}},{key:"_centerParent",value:function(A){if(this.hierarchical.parentReference[A.id])for(var e=this.hierarchical.parentReference[A.id],t=0;t<e.length;t++){var i=e[t],r=this.body.nodes[i],n=this.hierarchical.childrenReference[i];if(void 0!==n){var g=this._getCenterPosition(n),o=this.direction.getPosition(r),a=this._getSpaceAroundNode(r),I=Tr(a,2),C=I[0],s=I[1],c=o-g;(c<0&&Math.abs(c)<s-this.options.hierarchical.nodeSpacing||c>0&&Math.abs(c)<C-this.options.hierarchical.nodeSpacing)&&this.direction.setPosition(r,g)}}}},{key:"_placeNodesByHierarchy",value:function(A){for(var e in this.positionedNodes={},A)if(Object.prototype.hasOwnProperty.call(A,e)){var t,i=qr(A[e]);i=this._indexArrayToNodes(i),SI(t=this.direction).call(t,i);for(var r=0,n=0;n<i.length;n++){var g=i[n];if(void 0===this.positionedNodes[g.id]){var o=this.options.hierarchical.nodeSpacing,a=o*r;r>0&&(a=this.direction.getPosition(i[n-1])+o),this.direction.setPosition(g,a,e),this._validatePositionAndContinue(g,e,a),r++}}}}},{key:"_placeBranchNodes",value:function(A,e){var t,i=this.hierarchical.childrenReference[A];if(void 0!==i){for(var r=[],n=0;n<i.length;n++)r.push(this.body.nodes[i[n]]);SI(t=this.direction).call(t,r);for(var g=0;g<r.length;g++){var o=r[g],a=this.hierarchical.levels[o.id];if(!(a>e&&void 0===this.positionedNodes[o.id]))return;var I=this.options.hierarchical.nodeSpacing,C=void 0;C=0===g?this.direction.getPosition(this.body.nodes[A]):this.direction.getPosition(r[g-1])+I,this.direction.setPosition(o,C,a),this._validatePositionAndContinue(o,a,C)}var s=this._getCenterPosition(r);this.direction.setPosition(this.body.nodes[A],s,e)}}},{key:"_validatePositionAndContinue",value:function(A,e,t){if(this.hierarchical.isTree){if(void 0!==this.lastNodeOnLevel[e]){var i=this.direction.getPosition(this.body.nodes[this.lastNodeOnLevel[e]]);if(t-i<this.options.hierarchical.nodeSpacing){var r=i+this.options.hierarchical.nodeSpacing-t,n=this._findCommonParent(this.lastNodeOnLevel[e],A.id);this._shiftBlock(n.withChild,r)}}this.lastNodeOnLevel[e]=A.id,this.positionedNodes[A.id]=!0,this._placeBranchNodes(A.id,e)}}},{key:"_indexArrayToNodes",value:function(A){for(var e=[],t=0;t<A.length;t++)e.push(this.body.nodes[A[t]]);return e}},{key:"_getDistribution",value:function(){var A,e,t={};for(A in this.body.nodes)if(Object.prototype.hasOwnProperty.call(this.body.nodes,A)){e=this.body.nodes[A];var i=void 0===this.hierarchical.levels[A]?0:this.hierarchical.levels[A];this.direction.fix(e,i),void 0===t[i]&&(t[i]={}),t[i][A]=e}return t}},{key:"_getActiveEdges",value:function(A){var e=this,t=[];return Un(A.edges,(function(A){var i;-1!==ur(i=e.body.edgeIndices).call(i,A.id)&&t.push(A)})),t}},{key:"_getHubSizes",value:function(){var A=this,e={};Un(this.body.nodeIndices,(function(t){var i=A.body.nodes[t],r=A._getActiveEdges(i).length;e[r]=!0}));var t=[];return Un(e,(function(A){t.push(Number(A))})),SI(ul).call(ul,t,(function(A,e){return e-A})),t}},{key:"_determineLevelsByHubsize",value:function(){for(var A=this,e=function(e,t){A.hierarchical.levelDownstream(e,t)},t=this._getHubSizes(),i=function(i){var r=t[i];if(0===r)return"break";Un(A.body.nodeIndices,(function(t){var i=A.body.nodes[t];r===A._getActiveEdges(i).length&&A._crawlNetwork(e,t)}))},r=0;r<t.length;++r){if("break"===i(r))break}}},{key:"_determineLevelsCustomCallback",value:function(){var A=this;this._crawlNetwork((function(e,t,i){var r=A.hierarchical.levels[e.id];void 0===r&&(r=A.hierarchical.levels[e.id]=1e5);var n=(tl.cloneOptions(e,"node"),tl.cloneOptions(t,"node"),void tl.cloneOptions(i,"edge"));A.hierarchical.levels[t.id]=r+n})),this.hierarchical.setMinLevelToZero(this.body.nodes)}},{key:"_determineLevelsDirected",value:function(){var A,e=this,t=lC(A=this.body.nodeIndices).call(A,(function(A,t){return A.set(t,e.body.nodes[t]),A}),new $I),i=this.hierarchical.levels;"roots"===this.options.hierarchical.shakeTowards?this.hierarchical.levels=function(A){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:li(null);return Ml((function(e){var t,i;return ml(t=nr(i=e.edges).call(i,(function(e){return A.has(e.toId)}))).call(t,(function(A){return A.from===e}))}),(function(A,e){return e<A}),"to",A,e)}(t,i):this.hierarchical.levels=function(A){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:li(null);return Ml((function(e){var t,i;return ml(t=nr(i=e.edges).call(i,(function(e){return A.has(e.toId)}))).call(t,(function(A){return A.to===e}))}),(function(A,e){return e>A}),"from",A,e)}(t,i),this.hierarchical.setMinLevelToZero(this.body.nodes)}},{key:"_generateMap",value:function(){var A=this;this._crawlNetwork((function(e,t){A.hierarchical.levels[t.id]>A.hierarchical.levels[e.id]&&A.hierarchical.addRelation(e.id,t.id)})),this.hierarchical.checkIfTree()}},{key:"_crawlNetwork",value:function(){var A=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:function(){},t=arguments.length>1?arguments[1]:void 0,i={},r=function t(r,n){if(void 0===i[r.id]){var g;A.hierarchical.setTreeIndex(r,n),i[r.id]=!0;for(var o=A._getActiveEdges(r),a=0;a<o.length;a++){var I=o[a];!0===I.connected&&(g=I.toId==r.id?I.from:I.to,r.id!=g.id&&(e(r,g,I),t(g,n)))}}};if(void 0===t)for(var n=0,g=0;g<this.body.nodeIndices.length;g++){var o=this.body.nodeIndices[g];if(void 0===i[o]){var a=this.body.nodes[o];r(a,n),n+=1}}else{var I=this.body.nodes[t];if(void 0===I)return void console.error("Node not found:",t);r(I)}}},{key:"_shiftBlock",value:function(A,e){var t=this,i={};!function A(r){if(!i[r]){i[r]=!0,t.direction.shift(r,e);var n=t.hierarchical.childrenReference[r];if(void 0!==n)for(var g=0;g<n.length;g++)A(n[g])}}(A)}},{key:"_findCommonParent",value:function(A,e){var t=this,i={};return function A(e,i){var r=t.hierarchical.parentReference[i];if(void 0!==r)for(var n=0;n<r.length;n++){var g=r[n];e[g]=!0,A(e,g)}}(i,A),function A(e,i){var r=t.hierarchical.parentReference[i];if(void 0!==r)for(var n=0;n<r.length;n++){var g=r[n];if(void 0!==e[g])return{foundParent:g,withChild:i};var o=A(e,g);if(null!==o.foundParent)return o}return{foundParent:null,withChild:i}}(i,e)}},{key:"setDirectionStrategy",value:function(){var A="UD"===this.options.hierarchical.direction||"DU"===this.options.hierarchical.direction;this.direction=A?new fl(this):new dl(this)}},{key:"_getCenterPosition",value:function(A){for(var e=1e9,t=-1e9,i=0;i<A.length;i++){var r=void 0;if(void 0!==A[i].id)r=A[i];else{var n=A[i];r=this.body.nodes[n]}var g=this.direction.getPosition(r);e=Math.min(e,g),t=Math.max(t,g)}return.5*(e+t)}}]),A}();Wg("div.vis-network div.vis-manipulation {\n box-sizing: content-box;\n\n border-width: 0;\n border-bottom: 1px;\n border-style:solid;\n border-color: #d6d9d8;\n background: #ffffff; /* Old browsers */\n background: -moz-linear-gradient(top, #ffffff 0%, #fcfcfc 48%, #fafafa 50%, #fcfcfc 100%); /* FF3.6+ */\n background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(48%,#fcfcfc), color-stop(50%,#fafafa), color-stop(100%,#fcfcfc)); /* Chrome,Safari4+ */\n background: -webkit-linear-gradient(top, #ffffff 0%,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%); /* Chrome10+,Safari5.1+ */\n background: -o-linear-gradient(top, #ffffff 0%,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%); /* Opera 11.10+ */\n background: -ms-linear-gradient(top, #ffffff 0%,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%); /* IE10+ */\n background: linear-gradient(to bottom, #ffffff 0%,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%); /* W3C */\n filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#fcfcfc',GradientType=0 ); /* IE6-9 */\n\n padding-top:4px;\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 28px;\n}\n\ndiv.vis-network div.vis-edit-mode {\n position:absolute;\n left: 0;\n top: 5px;\n height: 30px;\n}\n\n/* FIXME: shouldn't the vis-close button be a child of the vis-manipulation div? */\n\ndiv.vis-network div.vis-close {\n position:absolute;\n right: 0;\n top: 0;\n width: 30px;\n height: 30px;\n\n background-position: 20px 3px;\n background-repeat: no-repeat;\n 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');\n cursor: pointer;\n -webkit-touch-callout: none;\n -webkit-user-select: none;\n -khtml-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n\ndiv.vis-network div.vis-close:hover {\n opacity: 0.6;\n}\n\ndiv.vis-network div.vis-manipulation div.vis-button,\ndiv.vis-network div.vis-edit-mode div.vis-button {\n float:left;\n font-family: verdana;\n font-size: 12px;\n -moz-border-radius: 15px;\n border-radius: 15px;\n display:inline-block;\n background-position: 0px 0px;\n background-repeat:no-repeat;\n height:24px;\n margin-left: 10px;\n /*vertical-align:middle;*/\n cursor: pointer;\n padding: 0px 8px 0px 8px;\n -webkit-touch-callout: none;\n -webkit-user-select: none;\n -khtml-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n\ndiv.vis-network div.vis-manipulation div.vis-button:hover {\n box-shadow: 1px 1px 8px rgba(0, 0, 0, 0.20);\n}\n\ndiv.vis-network div.vis-manipulation div.vis-button:active {\n box-shadow: 1px 1px 8px rgba(0, 0, 0, 0.50);\n}\n\ndiv.vis-network div.vis-manipulation div.vis-button.vis-back {\n 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');\n}\n\ndiv.vis-network div.vis-manipulation div.vis-button.vis-none:hover {\n box-shadow: 1px 1px 8px rgba(0, 0, 0, 0.0);\n cursor: default;\n}\ndiv.vis-network div.vis-manipulation div.vis-button.vis-none:active {\n box-shadow: 1px 1px 8px rgba(0, 0, 0, 0.0);\n}\ndiv.vis-network div.vis-manipulation div.vis-button.vis-none {\n padding: 0;\n}\ndiv.vis-network div.vis-manipulation div.notification {\n margin: 2px;\n font-weight: bold;\n}\n\ndiv.vis-network div.vis-manipulation div.vis-button.vis-add {\n 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==');\n}\n\ndiv.vis-network div.vis-manipulation div.vis-button.vis-edit,\ndiv.vis-network div.vis-edit-mode div.vis-button.vis-edit {\n 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==');\n}\n\ndiv.vis-network div.vis-edit-mode div.vis-button.vis-edit.vis-edit-mode {\n background-color: #fcfcfc;\n border: 1px solid #cccccc;\n}\n\ndiv.vis-network div.vis-manipulation div.vis-button.vis-connect {\n 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==');\n}\n\ndiv.vis-network div.vis-manipulation div.vis-button.vis-delete {\n 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=');\n}\n/* top right bottom left */\ndiv.vis-network div.vis-manipulation div.vis-label,\ndiv.vis-network div.vis-edit-mode div.vis-label {\n margin: 0 0 0 23px;\n line-height: 25px;\n}\ndiv.vis-network div.vis-manipulation div.vis-separator-line {\n float:left;\n display:inline-block;\n width:1px;\n height:21px;\n background-color: #bdbdbd;\n margin: 0px 7px 0 15px; /*top right bottom left*/\n}\n\n/* TODO: is this redundant?\ndiv.network-navigation_wrapper {\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n}\n*/\n");var Fl=function(){function A(e,t,i,r){var n,g,o=this;Ma(this,A),this.body=e,this.canvas=t,this.selectionHandler=i,this.interactionHandler=r,this.editMode=!1,this.manipulationDiv=void 0,this.editModeDiv=void 0,this.closeDiv=void 0,this.manipulationHammers=[],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}},dA(this.options,this.defaultOptions),this.body.emitter.on("destroy",(function(){o._clean()})),this.body.emitter.on("_dataChanged",$(n=this._restore).call(n,this)),this.body.emitter.on("_resetData",$(g=this._restore).call(g,this))}return Ga(A,[{key:"_restore",value:function(){!1!==this.inMode&&(!0===this.options.initiallyActive?this.enableEditMode():this.disableEditMode())}},{key:"setOptions",value:function(A,e,t){void 0!==e&&(void 0!==e.locale?this.options.locale=e.locale:this.options.locale=t.locale,void 0!==e.locales?this.options.locales=e.locales:this.options.locales=t.locales),void 0!==A&&("boolean"==typeof A?this.options.enabled=A:(this.options.enabled=!0,xn(this.options,A)),!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 A,e;this.editMode=!0,this.manipulationDiv.style.display="block",this.closeDiv.style.display="block";var t=this.selectionHandler._getSelectedNodeCount(),i=this.selectionHandler._getSelectedEdgeCount(),r=t+i,n=this.options.locales[this.options.locale],g=!1;!1!==this.options.addNode&&(this._createAddNodeButton(n),g=!0),!1!==this.options.addEdge&&(!0===g?this._createSeperator(1):g=!0,this._createAddEdgeButton(n)),1===t&&"function"==typeof this.options.editNode?(!0===g?this._createSeperator(2):g=!0,this._createEditNodeButton(n)):1===i&&0===t&&!1!==this.options.editEdge&&(!0===g?this._createSeperator(3):g=!0,this._createEditEdgeButton(n)),0!==r&&(t>0&&!1!==this.options.deleteNode||0===t&&!1!==this.options.deleteEdge)&&(!0===g&&this._createSeperator(4),this._createDeleteButton(n)),this._bindHammerToDiv(this.closeDiv,$(A=this.toggleEditMode).call(A,this)),this._temporaryBindEvent("select",$(e=this.showManipulatorToolbar).call(e,this))}this.body.emitter.emit("_redraw")}},{key:"addNodeMode",value:function(){var A;if(!0!==this.editMode&&this.enableEditMode(),this._clean(),this.inMode="addNode",!0===this.guiEnabled){var e,t=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(t),this._createSeperator(),this._createDescription(t.addDescription||this.options.locales.en.addDescription),this._bindHammerToDiv(this.closeDiv,$(e=this.toggleEditMode).call(e,this))}this._temporaryBindEvent("click",$(A=this._performAddNode).call(A,this))}},{key:"editNode",value:function(){var A=this;!0!==this.editMode&&this.enableEditMode(),this._clean();var e=this.selectionHandler._getSelectedNode();if(void 0!==e){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!==e.isCluster){var t=xn({},e.options,!1);if(t.x=e.x,t.y=e.y,2!==this.options.editNode.length)throw new Error("The function for edit does not support two arguments (data, callback)");this.options.editNode(t,(function(e){null!=e&&"editNode"===A.inMode&&A.body.data.nodes.getDataSet().update(e),A.showManipulatorToolbar()}))}else alert(this.options.locales[this.options.locale].editClusterError||this.options.locales.en.editClusterError)}else this.showManipulatorToolbar()}},{key:"addEdgeMode",value:function(){var A,e,t,i,r;if(!0!==this.editMode&&this.enableEditMode(),this._clean(),this.inMode="addEdge",!0===this.guiEnabled){var n,g=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(g),this._createSeperator(),this._createDescription(g.edgeDescription||this.options.locales.en.edgeDescription),this._bindHammerToDiv(this.closeDiv,$(n=this.toggleEditMode).call(n,this))}this._temporaryBindUI("onTouch",$(A=this._handleConnect).call(A,this)),this._temporaryBindUI("onDragEnd",$(e=this._finishConnect).call(e,this)),this._temporaryBindUI("onDrag",$(t=this._dragControlNode).call(t,this)),this._temporaryBindUI("onRelease",$(i=this._finishConnect).call(i,this)),this._temporaryBindUI("onDragStart",$(r=this._dragStartEdge).call(r,this)),this._temporaryBindUI("onHold",(function(){}))}},{key:"editEdgeMode",value:function(){if(!0!==this.editMode&&this.enableEditMode(),this._clean(),this.inMode="editEdge","object"!==en(this.options.editEdge)||"function"!=typeof this.options.editEdge.editWithoutDrag||(this.edgeBeingEditedId=this.selectionHandler.getSelectedEdges()[0],void 0===this.edgeBeingEditedId)){if(!0===this.guiEnabled){var A,e=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(e),this._createSeperator(),this._createDescription(e.editEdgeDescription||this.options.locales.en.editEdgeDescription),this._bindHammerToDiv(this.closeDiv,$(A=this.toggleEditMode).call(A,this))}if(this.edgeBeingEditedId=this.selectionHandler.getSelectedEdges()[0],void 0!==this.edgeBeingEditedId){var t,i,r,n,g=this.body.edges[this.edgeBeingEditedId],o=this._getNewTargetNode(g.from.x,g.from.y),a=this._getNewTargetNode(g.to.x,g.to.y);this.temporaryIds.nodes.push(o.id),this.temporaryIds.nodes.push(a.id),this.body.nodes[o.id]=o,this.body.nodeIndices.push(o.id),this.body.nodes[a.id]=a,this.body.nodeIndices.push(a.id),this._temporaryBindUI("onTouch",$(t=this._controlNodeTouch).call(t,this)),this._temporaryBindUI("onTap",(function(){})),this._temporaryBindUI("onHold",(function(){})),this._temporaryBindUI("onDragStart",$(i=this._controlNodeDragStart).call(i,this)),this._temporaryBindUI("onDrag",$(r=this._controlNodeDrag).call(r,this)),this._temporaryBindUI("onDragEnd",$(n=this._controlNodeDragEnd).call(n,this)),this._temporaryBindUI("onMouseMove",(function(){})),this._temporaryBindEvent("beforeDrawing",(function(A){var e=g.edgeType.findBorderPositions(A);!1===o.selected&&(o.x=e.from.x,o.y=e.from.y),!1===a.selected&&(a.x=e.to.x,a.y=e.to.y)})),this.body.emitter.emit("_redraw")}else this.showManipulatorToolbar()}else{var I=this.body.edges[this.edgeBeingEditedId];this._performEditEdge(I.from.id,I.to.id)}}},{key:"deleteSelected",value:function(){var A=this;!0!==this.editMode&&this.enableEditMode(),this._clean(),this.inMode="delete";var e=this.selectionHandler.getSelectedNodes(),t=this.selectionHandler.getSelectedEdges(),i=void 0;if(e.length>0){for(var r=0;r<e.length;r++)if(!0===this.body.nodes[e[r]].isCluster)return void alert(this.options.locales[this.options.locale].deleteClusterError||this.options.locales.en.deleteClusterError);"function"==typeof this.options.deleteNode&&(i=this.options.deleteNode)}else t.length>0&&"function"==typeof this.options.deleteEdge&&(i=this.options.deleteEdge);if("function"==typeof i){var n={nodes:e,edges:t};if(2!==i.length)throw new Error("The function for delete does not support two arguments (data, callback)");i(n,(function(e){null!=e&&"delete"===A.inMode?(A.body.data.edges.getDataSet().remove(e.edges),A.body.data.nodes.getDataSet().remove(e.nodes),A.body.emitter.emit("startSimulation"),A.showManipulatorToolbar()):(A.body.emitter.emit("startSimulation"),A.showManipulatorToolbar())}))}else this.body.data.edges.getDataSet().remove(t),this.body.data.nodes.getDataSet().remove(e),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(){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("div"),this.closeDiv.className="vis-close",this.closeDiv.style.display=this.manipulationDiv.style.display,this.canvas.frame.appendChild(this.closeDiv))}},{key:"_getNewTargetNode",value:function(A,e){var t=xn({},this.options.controlNodeStyle);t.id="targetNode"+pC(),t.hidden=!1,t.physics=!1,t.x=A,t.y=e;var i=this.body.functions.createNode(t);return i.shape.boundingBox={left:A,right:A,top:e,bottom:e},i}},{key:"_createEditButton",value:function(){var A;this._clean(),this.manipulationDOM={},bn(this.editModeDiv);var e=this.options.locales[this.options.locale],t=this._createButton("editMode","vis-button vis-edit vis-edit-mode",e.edit||this.options.locales.en.edit);this.editModeDiv.appendChild(t),this._bindHammerToDiv(t,$(A=this.toggleEditMode).call(A,this))}},{key:"_clean",value:function(){this.inMode=!1,!0===this.guiEnabled&&(bn(this.editModeDiv),bn(this.manipulationDiv),this._cleanManipulatorHammers()),this._cleanupTemporaryNodesAndEdges(),this._unbindTemporaryUIs(),this._unbindTemporaryEvents(),this.body.emitter.emit("restorePhysics")}},{key:"_cleanManipulatorHammers",value:function(){if(0!=this.manipulationHammers.length){for(var A=0;A<this.manipulationHammers.length;A++)this.manipulationHammers[A].destroy();this.manipulationHammers=[]}}},{key:"_removeManipulationDOM",value:function(){this._clean(),bn(this.manipulationDiv),bn(this.editModeDiv),bn(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 A=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;this.manipulationDOM["seperatorLineDiv"+A]=document.createElement("div"),this.manipulationDOM["seperatorLineDiv"+A].className="vis-separator-line",this.manipulationDiv.appendChild(this.manipulationDOM["seperatorLineDiv"+A])}},{key:"_createAddNodeButton",value:function(A){var e,t=this._createButton("addNode","vis-button vis-add",A.addNode||this.options.locales.en.addNode);this.manipulationDiv.appendChild(t),this._bindHammerToDiv(t,$(e=this.addNodeMode).call(e,this))}},{key:"_createAddEdgeButton",value:function(A){var e,t=this._createButton("addEdge","vis-button vis-connect",A.addEdge||this.options.locales.en.addEdge);this.manipulationDiv.appendChild(t),this._bindHammerToDiv(t,$(e=this.addEdgeMode).call(e,this))}},{key:"_createEditNodeButton",value:function(A){var e,t=this._createButton("editNode","vis-button vis-edit",A.editNode||this.options.locales.en.editNode);this.manipulationDiv.appendChild(t),this._bindHammerToDiv(t,$(e=this.editNode).call(e,this))}},{key:"_createEditEdgeButton",value:function(A){var e,t=this._createButton("editEdge","vis-button vis-edit",A.editEdge||this.options.locales.en.editEdge);this.manipulationDiv.appendChild(t),this._bindHammerToDiv(t,$(e=this.editEdgeMode).call(e,this))}},{key:"_createDeleteButton",value:function(A){var e,t;t=this.options.rtl?"vis-button vis-delete-rtl":"vis-button vis-delete";var i=this._createButton("delete",t,A.del||this.options.locales.en.del);this.manipulationDiv.appendChild(i),this._bindHammerToDiv(i,$(e=this.deleteSelected).call(e,this))}},{key:"_createBackButton",value:function(A){var e,t=this._createButton("back","vis-button vis-back",A.back||this.options.locales.en.back);this.manipulationDiv.appendChild(t),this._bindHammerToDiv(t,$(e=this.showManipulatorToolbar).call(e,this))}},{key:"_createButton",value:function(A,e,t){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"vis-label";return this.manipulationDOM[A+"Div"]=document.createElement("div"),this.manipulationDOM[A+"Div"].className=e,this.manipulationDOM[A+"Label"]=document.createElement("div"),this.manipulationDOM[A+"Label"].className=i,this.manipulationDOM[A+"Label"].innerHTML=t,this.manipulationDOM[A+"Div"].appendChild(this.manipulationDOM[A+"Label"]),this.manipulationDOM[A+"Div"]}},{key:"_createDescription",value:function(A){this.manipulationDiv.appendChild(this._createButton("description","vis-button vis-none",A))}},{key:"_temporaryBindEvent",value:function(A,e){this.temporaryEventFunctions.push({event:A,boundFunction:e}),this.body.emitter.on(A,e)}},{key:"_temporaryBindUI",value:function(A,e){if(void 0===this.body.eventListeners[A])throw new Error("This UI function does not exist. Typo? You tried: "+A+" possible are: "+cI(qr(this.body.eventListeners)));this.temporaryUIFunctions[A]=this.body.eventListeners[A],this.body.eventListeners[A]=e}},{key:"_unbindTemporaryUIs",value:function(){for(var A in this.temporaryUIFunctions)Object.prototype.hasOwnProperty.call(this.temporaryUIFunctions,A)&&(this.body.eventListeners[A]=this.temporaryUIFunctions[A],delete this.temporaryUIFunctions[A]);this.temporaryUIFunctions={}}},{key:"_unbindTemporaryEvents",value:function(){for(var A=0;A<this.temporaryEventFunctions.length;A++){var e=this.temporaryEventFunctions[A].event,t=this.temporaryEventFunctions[A].boundFunction;this.body.emitter.off(e,t)}this.temporaryEventFunctions=[]}},{key:"_bindHammerToDiv",value:function(A,e){var t=new ba(A,{});al(t,e),this.manipulationHammers.push(t)}},{key:"_cleanupTemporaryNodesAndEdges",value:function(){for(var A=0;A<this.temporaryIds.edges.length;A++){var e;this.body.edges[this.temporaryIds.edges[A]].disconnect(),delete this.body.edges[this.temporaryIds.edges[A]];var t,i=ur(e=this.body.edgeIndices).call(e,this.temporaryIds.edges[A]);if(-1!==i)ng(t=this.body.edgeIndices).call(t,i,1)}for(var r=0;r<this.temporaryIds.nodes.length;r++){var n;delete this.body.nodes[this.temporaryIds.nodes[r]];var g,o=ur(n=this.body.nodeIndices).call(n,this.temporaryIds.nodes[r]);if(-1!==o)ng(g=this.body.nodeIndices).call(g,o,1)}this.temporaryIds={nodes:[],edges:[]}}},{key:"_controlNodeTouch",value:function(A){this.selectionHandler.unselectAll(),this.lastTouch=this.body.functions.getPointer(A.center),this.lastTouch.translation=dA({},this.body.view.translation)}},{key:"_controlNodeDragStart",value:function(A){var e=this.lastTouch,t=this.selectionHandler._pointerToPositionObject(e),i=this.body.nodes[this.temporaryIds.nodes[0]],r=this.body.nodes[this.temporaryIds.nodes[1]],n=this.body.edges[this.edgeBeingEditedId];this.selectedControlNode=void 0;var g=i.isOverlappingWith(t),o=r.isOverlappingWith(t);!0===g?(this.selectedControlNode=i,n.edgeType.from=i):!0===o&&(this.selectedControlNode=r,n.edgeType.to=r),void 0!==this.selectedControlNode&&this.selectionHandler.selectObject(this.selectedControlNode),this.body.emitter.emit("_redraw")}},{key:"_controlNodeDrag",value:function(A){this.body.emitter.emit("disablePhysics");var e=this.body.functions.getPointer(A.center),t=this.canvas.DOMtoCanvas(e);void 0!==this.selectedControlNode?(this.selectedControlNode.x=t.x,this.selectedControlNode.y=t.y):this.interactionHandler.onDrag(A),this.body.emitter.emit("_redraw")}},{key:"_controlNodeDragEnd",value:function(A){var e=this.body.functions.getPointer(A.center),t=this.selectionHandler._pointerToPositionObject(e),i=this.body.edges[this.edgeBeingEditedId];if(void 0!==this.selectedControlNode){this.selectionHandler.unselectAll();for(var r=this.selectionHandler._getAllNodesOverlappingWith(t),n=void 0,g=r.length-1;g>=0;g--)if(r[g]!==this.selectedControlNode.id){n=this.body.nodes[r[g]];break}if(void 0!==n&&void 0!==this.selectedControlNode)if(!0===n.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(n.id,i.to.id):this._performEditEdge(i.from.id,n.id)}else i.updateEdgeType(),this.body.emitter.emit("restorePhysics");this.body.emitter.emit("_redraw")}}},{key:"_handleConnect",value:function(A){if((new Date).valueOf()-this.touchTime>100){this.lastTouch=this.body.functions.getPointer(A.center),this.lastTouch.translation=dA({},this.body.view.translation),this.interactionHandler.drag.pointer=this.lastTouch,this.interactionHandler.drag.translation=this.lastTouch.translation;var e=this.lastTouch,t=this.selectionHandler.getNodeAt(e);if(void 0!==t)if(!0===t.isCluster)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{var i=this._getNewTargetNode(t.x,t.y);this.body.nodes[i.id]=i,this.body.nodeIndices.push(i.id);var r=this.body.functions.createEdge({id:"connectionEdge"+pC(),from:t.id,to:i.id,physics:!1,smooth:{enabled:!0,type:"continuous",roundness:.5}});this.body.edges[r.id]=r,this.body.edgeIndices.push(r.id),this.temporaryIds.nodes.push(i.id),this.temporaryIds.edges.push(r.id)}this.touchTime=(new Date).valueOf()}}},{key:"_dragControlNode",value:function(A){var e=this.body.functions.getPointer(A.center),t=this.selectionHandler._pointerToPositionObject(e),i=void 0;void 0!==this.temporaryIds.edges[0]&&(i=this.body.edges[this.temporaryIds.edges[0]].fromId);for(var r=this.selectionHandler._getAllNodesOverlappingWith(t),n=void 0,g=r.length-1;g>=0;g--){var o;if(-1===ur(o=this.temporaryIds.nodes).call(o,r[g])){n=this.body.nodes[r[g]];break}}if(A.controlEdge={from:i,to:n?n.id:void 0},this.selectionHandler._generateClickEvent("controlNodeDragging",A,e),void 0!==this.temporaryIds.nodes[0]){var a=this.body.nodes[this.temporaryIds.nodes[0]];a.x=this.canvas._XconvertDOMtoCanvas(e.x),a.y=this.canvas._YconvertDOMtoCanvas(e.y),this.body.emitter.emit("_redraw")}else this.interactionHandler.onDrag(A)}},{key:"_finishConnect",value:function(A){var e=this.body.functions.getPointer(A.center),t=this.selectionHandler._pointerToPositionObject(e),i=void 0;void 0!==this.temporaryIds.edges[0]&&(i=this.body.edges[this.temporaryIds.edges[0]].fromId);for(var r=this.selectionHandler._getAllNodesOverlappingWith(t),n=void 0,g=r.length-1;g>=0;g--){var o;if(-1===ur(o=this.temporaryIds.nodes).call(o,r[g])){n=this.body.nodes[r[g]];break}}this._cleanupTemporaryNodesAndEdges(),void 0!==n&&(!0===n.isCluster?alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError):void 0!==this.body.nodes[i]&&void 0!==this.body.nodes[n.id]&&this._performAddEdge(i,n.id)),A.controlEdge={from:i,to:n?n.id:void 0},this.selectionHandler._generateClickEvent("controlNodeDragEnd",A,e),this.body.emitter.emit("_redraw")}},{key:"_dragStartEdge",value:function(A){var e=this.lastTouch;this.selectionHandler._generateClickEvent("dragStart",A,e,void 0,!0)}},{key:"_performAddNode",value:function(A){var e=this,t={id:pC(),x:A.pointer.canvas.x,y:A.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(t,(function(A){null!=A&&"addNode"===e.inMode&&e.body.data.nodes.getDataSet().add(A),e.showManipulatorToolbar()}))}else this.body.data.nodes.getDataSet().add(t),this.showManipulatorToolbar()}},{key:"_performAddEdge",value:function(A,e){var t=this,i={from:A,to:e};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(i,(function(A){null!=A&&"addEdge"===t.inMode&&(t.body.data.edges.getDataSet().add(A),t.selectionHandler.unselectAll(),t.showManipulatorToolbar())}))}else this.body.data.edges.getDataSet().add(i),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}},{key:"_performEditEdge",value:function(A,e){var t=this,i={id:this.edgeBeingEditedId,from:A,to:e,label:this.body.data.edges.get(this.edgeBeingEditedId).label},r=this.options.editEdge;if("object"===en(r)&&(r=r.editWithoutDrag),"function"==typeof r){if(2!==r.length)throw new Error("The function for edit does not support two arguments (data, callback)");r(i,(function(A){null==A||"editEdge"!==t.inMode?(t.body.edges[i.id].updateEdgeType(),t.body.emitter.emit("_redraw"),t.showManipulatorToolbar()):(t.body.data.edges.getDataSet().update(A),t.selectionHandler.unselectAll(),t.showManipulatorToolbar())}))}else this.body.data.edges.getDataSet().update(i),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}}]),A}();Wg("div.vis-configuration {\n position:relative;\n display:block;\n float:left;\n font-size:12px;\n}\n\ndiv.vis-configuration-wrapper {\n display:block;\n width:700px;\n}\n\ndiv.vis-configuration-wrapper::after {\n clear: both;\n content: \"\";\n display: block;\n}\n\ndiv.vis-configuration.vis-config-option-container{\n display:block;\n width:495px;\n background-color: #ffffff;\n border:2px solid #f7f8fa;\n border-radius:4px;\n margin-top:20px;\n left:10px;\n padding-left:5px;\n}\n\ndiv.vis-configuration.vis-config-button{\n display:block;\n width:495px;\n height:25px;\n vertical-align: middle;\n line-height:25px;\n background-color: #f7f8fa;\n border:2px solid #ceced0;\n border-radius:4px;\n margin-top:20px;\n left:10px;\n padding-left:5px;\n cursor: pointer;\n margin-bottom:30px;\n}\n\ndiv.vis-configuration.vis-config-button.hover{\n background-color: #4588e6;\n border:2px solid #214373;\n color:#ffffff;\n}\n\ndiv.vis-configuration.vis-config-item{\n display:block;\n float:left;\n width:495px;\n height:25px;\n vertical-align: middle;\n line-height:25px;\n}\n\n\ndiv.vis-configuration.vis-config-item.vis-config-s2{\n left:10px;\n background-color: #f7f8fa;\n padding-left:5px;\n border-radius:3px;\n}\ndiv.vis-configuration.vis-config-item.vis-config-s3{\n left:20px;\n background-color: #e4e9f0;\n padding-left:5px;\n border-radius:3px;\n}\ndiv.vis-configuration.vis-config-item.vis-config-s4{\n left:30px;\n background-color: #cfd8e6;\n padding-left:5px;\n border-radius:3px;\n}\n\ndiv.vis-configuration.vis-config-header{\n font-size:18px;\n font-weight: bold;\n}\n\ndiv.vis-configuration.vis-config-label{\n width:120px;\n height:25px;\n line-height: 25px;\n}\n\ndiv.vis-configuration.vis-config-label.vis-config-s3{\n width:110px;\n}\ndiv.vis-configuration.vis-config-label.vis-config-s4{\n width:100px;\n}\n\ndiv.vis-configuration.vis-config-colorBlock{\n top:1px;\n width:30px;\n height:19px;\n border:1px solid #444444;\n border-radius:2px;\n padding:0px;\n margin:0px;\n cursor:pointer;\n}\n\ninput.vis-configuration.vis-config-checkbox {\n left:-5px;\n}\n\n\ninput.vis-configuration.vis-config-rangeinput{\n position:relative;\n top:-5px;\n width:60px;\n /*height:13px;*/\n padding:1px;\n margin:0;\n pointer-events:none;\n}\n\ninput.vis-configuration.vis-config-range{\n /*removes default webkit styles*/\n -webkit-appearance: none;\n\n /*fix for FF unable to apply focus style bug */\n border: 0px solid white;\n background-color:rgba(0,0,0,0);\n\n /*required for proper track sizing in FF*/\n width: 300px;\n height:20px;\n}\ninput.vis-configuration.vis-config-range::-webkit-slider-runnable-track {\n width: 300px;\n height: 5px;\n background: #dedede; /* Old browsers */\n background: -moz-linear-gradient(top, #dedede 0%, #c8c8c8 99%); /* FF3.6+ */\n background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#dedede), color-stop(99%,#c8c8c8)); /* Chrome,Safari4+ */\n background: -webkit-linear-gradient(top, #dedede 0%,#c8c8c8 99%); /* Chrome10+,Safari5.1+ */\n background: -o-linear-gradient(top, #dedede 0%, #c8c8c8 99%); /* Opera 11.10+ */\n background: -ms-linear-gradient(top, #dedede 0%,#c8c8c8 99%); /* IE10+ */\n background: linear-gradient(to bottom, #dedede 0%,#c8c8c8 99%); /* W3C */\n filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dedede', endColorstr='#c8c8c8',GradientType=0 ); /* IE6-9 */\n\n border: 1px solid #999999;\n box-shadow: #aaaaaa 0px 0px 3px 0px;\n border-radius: 3px;\n}\ninput.vis-configuration.vis-config-range::-webkit-slider-thumb {\n -webkit-appearance: none;\n border: 1px solid #14334b;\n height: 17px;\n width: 17px;\n border-radius: 50%;\n background: #3876c2; /* Old browsers */\n background: -moz-linear-gradient(top, #3876c2 0%, #385380 100%); /* FF3.6+ */\n background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#3876c2), color-stop(100%,#385380)); /* Chrome,Safari4+ */\n background: -webkit-linear-gradient(top, #3876c2 0%,#385380 100%); /* Chrome10+,Safari5.1+ */\n background: -o-linear-gradient(top, #3876c2 0%,#385380 100%); /* Opera 11.10+ */\n background: -ms-linear-gradient(top, #3876c2 0%,#385380 100%); /* IE10+ */\n background: linear-gradient(to bottom, #3876c2 0%,#385380 100%); /* W3C */\n filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#3876c2', endColorstr='#385380',GradientType=0 ); /* IE6-9 */\n box-shadow: #111927 0px 0px 1px 0px;\n margin-top: -7px;\n}\ninput.vis-configuration.vis-config-range:focus {\n outline: none;\n}\ninput.vis-configuration.vis-config-range:focus::-webkit-slider-runnable-track {\n background: #9d9d9d; /* Old browsers */\n background: -moz-linear-gradient(top, #9d9d9d 0%, #c8c8c8 99%); /* FF3.6+ */\n background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#9d9d9d), color-stop(99%,#c8c8c8)); /* Chrome,Safari4+ */\n background: -webkit-linear-gradient(top, #9d9d9d 0%,#c8c8c8 99%); /* Chrome10+,Safari5.1+ */\n background: -o-linear-gradient(top, #9d9d9d 0%,#c8c8c8 99%); /* Opera 11.10+ */\n background: -ms-linear-gradient(top, #9d9d9d 0%,#c8c8c8 99%); /* IE10+ */\n background: linear-gradient(to bottom, #9d9d9d 0%,#c8c8c8 99%); /* W3C */\n filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#9d9d9d', endColorstr='#c8c8c8',GradientType=0 ); /* IE6-9 */\n}\n\ninput.vis-configuration.vis-config-range::-moz-range-track {\n width: 300px;\n height: 10px;\n background: #dedede; /* Old browsers */\n background: -moz-linear-gradient(top, #dedede 0%, #c8c8c8 99%); /* FF3.6+ */\n background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#dedede), color-stop(99%,#c8c8c8)); /* Chrome,Safari4+ */\n background: -webkit-linear-gradient(top, #dedede 0%,#c8c8c8 99%); /* Chrome10+,Safari5.1+ */\n background: -o-linear-gradient(top, #dedede 0%, #c8c8c8 99%); /* Opera 11.10+ */\n background: -ms-linear-gradient(top, #dedede 0%,#c8c8c8 99%); /* IE10+ */\n background: linear-gradient(to bottom, #dedede 0%,#c8c8c8 99%); /* W3C */\n filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dedede', endColorstr='#c8c8c8',GradientType=0 ); /* IE6-9 */\n\n border: 1px solid #999999;\n box-shadow: #aaaaaa 0px 0px 3px 0px;\n border-radius: 3px;\n}\ninput.vis-configuration.vis-config-range::-moz-range-thumb {\n border: none;\n height: 16px;\n width: 16px;\n\n border-radius: 50%;\n background: #385380;\n}\n\n/*hide the outline behind the border*/\ninput.vis-configuration.vis-config-range:-moz-focusring{\n outline: 1px solid white;\n outline-offset: -1px;\n}\n\ninput.vis-configuration.vis-config-range::-ms-track {\n width: 300px;\n height: 5px;\n\n /*remove bg colour from the track, we'll use ms-fill-lower and ms-fill-upper instead */\n background: transparent;\n\n /*leave room for the larger thumb to overflow with a transparent border */\n border-color: transparent;\n border-width: 6px 0;\n\n /*remove default tick marks*/\n color: transparent;\n}\ninput.vis-configuration.vis-config-range::-ms-fill-lower {\n background: #777;\n border-radius: 10px;\n}\ninput.vis-configuration.vis-config-range::-ms-fill-upper {\n background: #ddd;\n border-radius: 10px;\n}\ninput.vis-configuration.vis-config-range::-ms-thumb {\n border: none;\n height: 16px;\n width: 16px;\n border-radius: 50%;\n background: #385380;\n}\ninput.vis-configuration.vis-config-range:focus::-ms-fill-lower {\n background: #888;\n}\ninput.vis-configuration.vis-config-range:focus::-ms-fill-upper {\n background: #ccc;\n}\n\n.vis-configuration-popup {\n position: absolute;\n background: rgba(57, 76, 89, 0.85);\n border: 2px solid #f2faff;\n line-height:30px;\n height:30px;\n width:150px;\n text-align:center;\n color: #ffffff;\n font-size:14px;\n border-radius:4px;\n -webkit-transition: opacity 0.3s ease-in-out;\n -moz-transition: opacity 0.3s ease-in-out;\n transition: opacity 0.3s ease-in-out;\n}\n.vis-configuration-popup:after, .vis-configuration-popup:before {\n left: 100%;\n top: 50%;\n border: solid transparent;\n content: \" \";\n height: 0;\n width: 0;\n position: absolute;\n pointer-events: none;\n}\n\n.vis-configuration-popup:after {\n border-color: rgba(136, 183, 213, 0);\n border-left-color: rgba(57, 76, 89, 0.85);\n border-width: 8px;\n margin-top: -8px;\n}\n.vis-configuration-popup:before {\n border-color: rgba(194, 225, 245, 0);\n border-left-color: #f2faff;\n border-width: 12px;\n margin-top: -12px;\n}");Wg("\ndiv.vis-color-picker {\n position:absolute;\n top: 0px;\n left: 30px;\n margin-top:-140px;\n margin-left:30px;\n width:310px;\n height:444px;\n z-index: 1;\n padding: 10px;\n border-radius:15px;\n background-color:#ffffff;\n display: none;\n box-shadow: rgba(0,0,0,0.5) 0px 0px 10px 0px;\n}\n\ndiv.vis-color-picker div.vis-arrow {\n position: absolute;\n top:147px;\n left:5px;\n}\n\ndiv.vis-color-picker div.vis-arrow::after,\ndiv.vis-color-picker div.vis-arrow::before {\n right: 100%;\n top: 50%;\n border: solid transparent;\n content: \" \";\n height: 0;\n width: 0;\n position: absolute;\n pointer-events: none;\n}\n\ndiv.vis-color-picker div.vis-arrow:after {\n border-color: rgba(255, 255, 255, 0);\n border-right-color: #ffffff;\n border-width: 30px;\n margin-top: -30px;\n}\n\ndiv.vis-color-picker div.vis-color {\n position:absolute;\n width: 289px;\n height: 289px;\n cursor: pointer;\n}\n\n\n\ndiv.vis-color-picker div.vis-brightness {\n position: absolute;\n top:313px;\n}\n\ndiv.vis-color-picker div.vis-opacity {\n position:absolute;\n top:350px;\n}\n\ndiv.vis-color-picker div.vis-selector {\n position:absolute;\n top:137px;\n left:137px;\n width:15px;\n height:15px;\n border-radius:15px;\n border:1px solid #ffffff;\n background: #4c4c4c; /* Old browsers */\n background: -moz-linear-gradient(top, #4c4c4c 0%, #595959 12%, #666666 25%, #474747 39%, #2c2c2c 50%, #000000 51%, #111111 60%, #2b2b2b 76%, #1c1c1c 91%, #131313 100%); /* FF3.6+ */\n background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#4c4c4c), color-stop(12%,#595959), color-stop(25%,#666666), color-stop(39%,#474747), color-stop(50%,#2c2c2c), color-stop(51%,#000000), color-stop(60%,#111111), color-stop(76%,#2b2b2b), color-stop(91%,#1c1c1c), color-stop(100%,#131313)); /* Chrome,Safari4+ */\n background: -webkit-linear-gradient(top, #4c4c4c 0%,#595959 12%,#666666 25%,#474747 39%,#2c2c2c 50%,#000000 51%,#111111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%); /* Chrome10+,Safari5.1+ */\n background: -o-linear-gradient(top, #4c4c4c 0%,#595959 12%,#666666 25%,#474747 39%,#2c2c2c 50%,#000000 51%,#111111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%); /* Opera 11.10+ */\n background: -ms-linear-gradient(top, #4c4c4c 0%,#595959 12%,#666666 25%,#474747 39%,#2c2c2c 50%,#000000 51%,#111111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%); /* IE10+ */\n background: linear-gradient(to bottom, #4c4c4c 0%,#595959 12%,#666666 25%,#474747 39%,#2c2c2c 50%,#000000 51%,#111111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%); /* W3C */\n filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4c4c4c', endColorstr='#131313',GradientType=0 ); /* IE6-9 */\n}\n\n\n\ndiv.vis-color-picker div.vis-new-color {\n position:absolute;\n width:140px;\n height:20px;\n border:1px solid rgba(0,0,0,0.1);\n border-radius:5px;\n top:380px;\n left:159px;\n text-align:right;\n padding-right:2px;\n font-size:10px;\n color:rgba(0,0,0,0.4);\n vertical-align:middle;\n line-height:20px;\n\n}\n\ndiv.vis-color-picker div.vis-initial-color {\n position:absolute;\n width:140px;\n height:20px;\n border:1px solid rgba(0,0,0,0.1);\n border-radius:5px;\n top:380px;\n left:10px;\n text-align:left;\n padding-left:2px;\n font-size:10px;\n color:rgba(0,0,0,0.4);\n vertical-align:middle;\n line-height:20px;\n}\n\ndiv.vis-color-picker div.vis-label {\n position:absolute;\n width:300px;\n left:10px;\n}\n\ndiv.vis-color-picker div.vis-label.vis-brightness {\n top:300px;\n}\n\ndiv.vis-color-picker div.vis-label.vis-opacity {\n top:338px;\n}\n\ndiv.vis-color-picker div.vis-button {\n position:absolute;\n width:68px;\n height:25px;\n border-radius:10px;\n vertical-align: middle;\n text-align:center;\n line-height: 25px;\n top:410px;\n border:2px solid #d9d9d9;\n background-color: #f7f7f7;\n cursor:pointer;\n}\n\ndiv.vis-color-picker div.vis-button.vis-cancel {\n /*border:2px solid #ff4e33;*/\n /*background-color: #ff7761;*/\n left:5px;\n}\ndiv.vis-color-picker div.vis-button.vis-load {\n /*border:2px solid #a153e6;*/\n /*background-color: #cb8dff;*/\n left:82px;\n}\ndiv.vis-color-picker div.vis-button.vis-apply {\n /*border:2px solid #4588e6;*/\n /*background-color: #82b6ff;*/\n left:159px;\n}\ndiv.vis-color-picker div.vis-button.vis-save {\n /*border:2px solid #45e655;*/\n /*background-color: #6dff7c;*/\n left:236px;\n}\n\n\ndiv.vis-color-picker input.vis-range {\n width: 290px;\n height:20px;\n}\n\n/* TODO: is this redundant?\ndiv.vis-color-picker input.vis-range-brightness {\n width: 289px !important;\n}\n\n\ndiv.vis-color-picker input.vis-saturation-range {\n width: 289px !important;\n}*/");var xl={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"},Sl=function(){function A(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;Ma(this,A),this.pixelRatio=e,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 Ga(A,[{key:"insertTo",value:function(A){void 0!==this.hammer&&(this.hammer.destroy(),this.hammer=void 0),this.container=A,this.container.appendChild(this.frame),this._bindHammer(),this._setSize()}},{key:"setUpdateCallback",value:function(A){if("function"!=typeof A)throw new Error("Function attempted to set as colorPicker update callback is not a function.");this.updateCallback=A}},{key:"setCloseCallback",value:function(A){if("function"!=typeof A)throw new Error("Function attempted to set as colorPicker closing callback is not a function.");this.closeCallback=A}},{key:"_isColorString",value:function(A){if("string"==typeof A)return xl[A]}},{key:"setColor",value:function(A){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("none"!==A){var t,i=this._isColorString(A);if(void 0!==i&&(A=i),!0===kn(A)){if(!0===Pn(A)){var r=A.substr(4).substr(0,A.length-5).split(",");t={r:r[0],g:r[1],b:r[2],a:1}}else if(!0===Vn(A)){var n=A.substr(5).substr(0,A.length-6).split(",");t={r:n[0],g:n[1],b:n[2],a:n[3]}}else if(!0===jn(A)){var g=Ln(A);t={r:g.r,g:g.g,b:g.b,a:1}}}else if(A instanceof Object&&void 0!==A.r&&void 0!==A.g&&void 0!==A.b){var o=void 0!==A.a?A.a:"1.0";t={r:A.r,g:A.g,b:A.b,a:o}}if(void 0===t)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: "+cI(A));this._setColor(t,e)}}},{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 A=this,e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];!0===e&&(this.previousColor=dA({},this.color)),!0===this.applied&&this.updateCallback(this.initialColor),this.frame.style.display="none",La((function(){void 0!==A.closeCallback&&(A.closeCallback(),A.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(A){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];!0===e&&(this.initialColor=dA({},A)),this.color=A;var t=Hn(A.r,A.g,A.b),i=2*Math.PI,r=this.r*t.s,n=this.centerCoordinates.x+r*Math.sin(i*t.h),g=this.centerCoordinates.y+r*Math.cos(i*t.h);this.colorPickerSelector.style.left=n-.5*this.colorPickerSelector.clientWidth+"px",this.colorPickerSelector.style.top=g-.5*this.colorPickerSelector.clientHeight+"px",this._updatePicker(A)}},{key:"_setOpacity",value:function(A){this.color.a=A/100,this._updatePicker(this.color)}},{key:"_setBrightness",value:function(A){var e=Hn(this.color.r,this.color.g,this.color.b);e.v=A/100;var t=On(e.h,e.s,e.v);t.a=this.color.a,this.color=t,this._updatePicker()}},{key:"_updatePicker",value:function(){var A=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.color,e=Hn(A.r,A.g,A.b),t=this.colorPickerCanvas.getContext("2d");void 0===this.pixelRation&&(this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1)),t.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var i=this.colorPickerCanvas.clientWidth,r=this.colorPickerCanvas.clientHeight;t.clearRect(0,0,i,r),t.putImageData(this.hueCircle,0,0),t.fillStyle="rgba(0,0,0,"+(1-e.v)+")",t.circle(this.centerCoordinates.x,this.centerCoordinates.y,this.r),ts(t).call(t),this.brightnessRange.value=100*e.v,this.opacityRange.value=100*A.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 A,e,t,i;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 r=this.colorPickerCanvas.getContext("2d");this.pixelRatio=(window.devicePixelRatio||1)/(r.webkitBackingStorePixelRatio||r.mozBackingStorePixelRatio||r.msBackingStorePixelRatio||r.oBackingStorePixelRatio||r.backingStorePixelRatio||1),this.colorPickerCanvas.getContext("2d").setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}else{var n=document.createElement("DIV");n.style.color="red",n.style.fontWeight="bold",n.style.padding="10px",n.innerHTML="Error: your browser does not support HTML canvas",this.colorPickerCanvas.appendChild(n)}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(A){}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(A){}this.brightnessRange.value="100",this.brightnessRange.className="vis-range",this.opacityDiv.appendChild(this.opacityRange),this.brightnessDiv.appendChild(this.brightnessRange);var g=this;this.opacityRange.onchange=function(){g._setOpacity(this.value)},this.opacityRange.oninput=function(){g._setOpacity(this.value)},this.brightnessRange.onchange=function(){g._setBrightness(this.value)},this.brightnessRange.oninput=function(){g._setBrightness(this.value)},this.brightnessLabel=document.createElement("div"),this.brightnessLabel.className="vis-label vis-brightness",this.brightnessLabel.innerHTML="brightness:",this.opacityLabel=document.createElement("div"),this.opacityLabel.className="vis-label vis-opacity",this.opacityLabel.innerHTML="opacity:",this.newColorDiv=document.createElement("div"),this.newColorDiv.className="vis-new-color",this.newColorDiv.innerHTML="new",this.initialColorDiv=document.createElement("div"),this.initialColorDiv.className="vis-initial-color",this.initialColorDiv.innerHTML="initial",this.cancelButton=document.createElement("div"),this.cancelButton.className="vis-button vis-cancel",this.cancelButton.innerHTML="cancel",this.cancelButton.onclick=$(A=this._hide).call(A,this,!1),this.applyButton=document.createElement("div"),this.applyButton.className="vis-button vis-apply",this.applyButton.innerHTML="apply",this.applyButton.onclick=$(e=this._apply).call(e,this),this.saveButton=document.createElement("div"),this.saveButton.className="vis-button vis-save",this.saveButton.innerHTML="save",this.saveButton.onclick=$(t=this._save).call(t,this),this.loadButton=document.createElement("div"),this.loadButton.className="vis-button vis-load",this.loadButton.innerHTML="load last",this.loadButton.onclick=$(i=this._loadLast).call(i,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 A=this;this.drag={},this.pinch={},this.hammer=new ba(this.colorPickerCanvas),this.hammer.get("pinch").set({enable:!0}),al(this.hammer,(function(e){A._moveSelector(e)})),this.hammer.on("tap",(function(e){A._moveSelector(e)})),this.hammer.on("panstart",(function(e){A._moveSelector(e)})),this.hammer.on("panmove",(function(e){A._moveSelector(e)})),this.hammer.on("panend",(function(e){A._moveSelector(e)}))}},{key:"_generateHueCircle",value:function(){if(!1===this.generated){var A=this.colorPickerCanvas.getContext("2d");void 0===this.pixelRation&&(this.pixelRatio=(window.devicePixelRatio||1)/(A.webkitBackingStorePixelRatio||A.mozBackingStorePixelRatio||A.msBackingStorePixelRatio||A.oBackingStorePixelRatio||A.backingStorePixelRatio||1)),A.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var e,t,i,r,n=this.colorPickerCanvas.clientWidth,g=this.colorPickerCanvas.clientHeight;A.clearRect(0,0,n,g),this.centerCoordinates={x:.5*n,y:.5*g},this.r=.49*n;var o,a=2*Math.PI/360,I=1/this.r;for(i=0;i<360;i++)for(r=0;r<this.r;r++)e=this.centerCoordinates.x+r*Math.sin(a*i),t=this.centerCoordinates.y+r*Math.cos(a*i),o=On(i*(1/360),r*I,1),A.fillStyle="rgb("+o.r+","+o.g+","+o.b+")",A.fillRect(e-.5,t-.5,2,2);A.strokeStyle="rgba(0,0,0,1)",A.circle(this.centerCoordinates.x,this.centerCoordinates.y,this.r),A.stroke(),this.hueCircle=A.getImageData(0,0,n,g)}this.generated=!0}},{key:"_moveSelector",value:function(A){var e=this.colorPickerDiv.getBoundingClientRect(),t=A.center.x-e.left,i=A.center.y-e.top,r=.5*this.colorPickerDiv.clientHeight,n=.5*this.colorPickerDiv.clientWidth,g=t-n,o=i-r,a=Math.atan2(g,o),I=.98*Math.min(Math.sqrt(g*g+o*o),n),C=Math.cos(a)*I+r,s=Math.sin(a)*I+n;this.colorPickerSelector.style.top=C-.5*this.colorPickerSelector.clientHeight+"px",this.colorPickerSelector.style.left=s-.5*this.colorPickerSelector.clientWidth+"px";var c=a/(2*Math.PI);c=c<0?c+1:c;var l=I/this.r,B=Hn(this.color.r,this.color.g,this.color.b);B.h=c,B.s=l;var Q=On(B.h,B.s,B.v);Q.a=this.color.a,this.color=Q,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+")"}}]),A}(),Yl=function(){function A(e,t,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:1;Ma(this,A),this.parent=e,this.changedOptions=[],this.container=t,this.allowCreation=!1,this.options={},this.initialized=!1,this.popupCounter=0,this.defaultOptions={enabled:!1,filter:!0,container:void 0,showButton:!0},dA(this.options,this.defaultOptions),this.configureOptions=i,this.moduleOptions={},this.domElements=[],this.popupDiv={},this.popupLimit=5,this.popupHistory={},this.colorPicker=new Sl(r),this.wrapper=void 0}return Ga(A,[{key:"setOptions",value:function(A){if(void 0!==A){this.popupHistory={},this._removePopup();var e=!0;if("string"==typeof A)this.options.filter=A;else if(A instanceof Array)this.options.filter=A.join();else if("object"===en(A)){if(null==A)throw new TypeError("options cannot be null");void 0!==A.container&&(this.options.container=A.container),void 0!==nr(A)&&(this.options.filter=nr(A)),void 0!==A.showButton&&(this.options.showButton=A.showButton),void 0!==A.enabled&&(e=A.enabled)}else"boolean"==typeof A?(this.options.filter=!0,e=A):"function"==typeof A&&(this.options.filter=A,e=!0);!1===nr(this.options)&&(e=!1),this.options.enabled=e}this._clean()}},{key:"setModuleOptions",value:function(A){this.moduleOptions=A,!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 A=nr(this.options),e=0,t=!1;for(var i in this.configureOptions)Object.prototype.hasOwnProperty.call(this.configureOptions,i)&&(this.allowCreation=!1,t=!1,"function"==typeof A?t=(t=A(i,[]))||this._handleObject(this.configureOptions[i],[i],!0):!0!==A&&-1===ur(A).call(A,i)||(t=!0),!1!==t&&(this.allowCreation=!0,e>0&&this._makeItem([]),this._makeHeader(i),this._handleObject(this.configureOptions[i],[i])),e++);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 A=0;A<this.domElements.length;A++)this.wrapper.appendChild(this.domElements[A]);this._showPopupIfNeeded()}},{key:"_clean",value:function(){for(var A=0;A<this.domElements.length;A++)this.wrapper.removeChild(this.domElements[A]);void 0!==this.wrapper&&(this.container.removeChild(this.wrapper),this.wrapper=void 0),this.domElements=[],this._removePopup()}},{key:"_getValue",value:function(A){for(var e=this.moduleOptions,t=0;t<A.length;t++){if(void 0===e[A[t]]){e=void 0;break}e=e[A[t]]}return e}},{key:"_makeItem",value:function(A){if(!0===this.allowCreation){var e=document.createElement("div");e.className="vis-configuration vis-config-item vis-config-s"+A.length;for(var t=arguments.length,i=new Array(t>1?t-1:0),r=1;r<t;r++)i[r-1]=arguments[r];return Yi(i).call(i,(function(A){e.appendChild(A)})),this.domElements.push(e),this.domElements.length}return 0}},{key:"_makeHeader",value:function(A){var e=document.createElement("div");e.className="vis-configuration vis-config-header",e.innerHTML=A,this._makeItem([],e)}},{key:"_makeLabel",value:function(A,e){var t=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=document.createElement("div");return i.className="vis-configuration vis-config-label vis-config-s"+e.length,i.innerHTML=!0===t?"<i><b>"+A+":</b></i>":A+":",i}},{key:"_makeDropdown",value:function(A,e,t){var i=document.createElement("select");i.className="vis-configuration vis-config-select";var r=0;void 0!==e&&-1!==ur(A).call(A,e)&&(r=ur(A).call(A,e));for(var n=0;n<A.length;n++){var g=document.createElement("option");g.value=A[n],n===r&&(g.selected="selected"),g.innerHTML=A[n],i.appendChild(g)}var o=this;i.onchange=function(){o._update(this.value,t)};var a=this._makeLabel(t[t.length-1],t);this._makeItem(t,a,i)}},{key:"_makeRange",value:function(A,e,t){var i=A[0],r=A[1],n=A[2],g=A[3],o=document.createElement("input");o.className="vis-configuration vis-config-range";try{o.type="range",o.min=r,o.max=n}catch(A){}o.step=g;var a="",I=0;if(void 0!==e){e<0&&1.2*e<r?(o.min=Math.ceil(1.2*e),I=o.min,a="range increased"):e/1.2<r&&(o.min=Math.ceil(e/1.2),I=o.min,a="range increased"),1.2*e>n&&1!==n&&(o.max=Math.ceil(1.2*e),I=o.max,a="range increased"),o.value=e}else o.value=i;var C=document.createElement("input");C.className="vis-configuration vis-config-rangeinput",C.value=o.value;var s=this;o.onchange=function(){C.value=this.value,s._update(Number(this.value),t)},o.oninput=function(){C.value=this.value};var c=this._makeLabel(t[t.length-1],t),l=this._makeItem(t,c,o,C);""!==a&&this.popupHistory[l]!==I&&(this.popupHistory[l]=I,this._setupPopup(a,l))}},{key:"_makeButton",value:function(){var A=this;if(!0===this.options.showButton){var e=document.createElement("div");e.className="vis-configuration vis-config-button",e.innerHTML="generate options",e.onclick=function(){A._printOptions()},e.onmouseover=function(){e.className="vis-configuration vis-config-button hover"},e.onmouseout=function(){e.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(e)}}},{key:"_setupPopup",value:function(A,e){var t=this;if(!0===this.initialized&&!0===this.allowCreation&&this.popupCounter<this.popupLimit){var i=document.createElement("div");i.id="vis-configuration-popup",i.className="vis-configuration-popup",i.innerHTML=A,i.onclick=function(){t._removePopup()},this.popupCounter+=1,this.popupDiv={html:i,index:e}}}},{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 A=this;if(void 0!==this.popupDiv.html){var e=this.domElements[this.popupDiv.index].getBoundingClientRect();this.popupDiv.html.style.left=e.left+"px",this.popupDiv.html.style.top=e.top-30+"px",document.body.appendChild(this.popupDiv.html),this.popupDiv.hideTimeout=La((function(){A.popupDiv.html.style.opacity=0}),1500),this.popupDiv.deleteTimeout=La((function(){A._removePopup()}),1800)}}}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment