1021 lines
1.1 MiB
1021 lines
1.1 MiB
import{q as Bn,ap as RX,i as PX,aq as xX,ah as Pte,p as oO,aj as $A,ac as xte,ar as $te,d as oI,as as Dte,e as Nte,o as Xt,w as $R,b as et,c as ar,z as wA,a as BO,t as $n,u as Pe,n as Wo,F as DA,v as NA,s as es,M as Mte,B as $X,at as qte,Y as Fte,aa as kte,f as Bte,au as zte,av as jte,a8 as Lte,D as Gte,aw as Wte,N as Vte,a1 as Zte,ax as IA}from"./index-DH8HZ7DP.js";/**
|
||
* vis-network
|
||
* https://visjs.github.io/vis-network/
|
||
*
|
||
* A dynamic, browser-based visualization library.
|
||
*
|
||
* @version 10.0.2
|
||
* @date 2025-09-15T17:48:13.838Z
|
||
*
|
||
* @copyright (c) 2011-2017 Almende B.V, http://almende.com
|
||
* @copyright (c) 2017-2019 visjs contributors, https://github.com/visjs
|
||
*
|
||
* @license
|
||
* vis.js is dual licensed under both
|
||
*
|
||
* 1. The Apache 2.0 License
|
||
* http://www.apache.org/licenses/LICENSE-2.0
|
||
*
|
||
* and
|
||
*
|
||
* 2. The MIT License
|
||
* http://opensource.org/licenses/MIT
|
||
*
|
||
* vis.js may be distributed under either license.
|
||
*/function ao(n,e){e===void 0&&(e={});var t=e.insertAt;if(!(!n||typeof document>"u")){var r=document.head||document.getElementsByTagName("head")[0],i=document.createElement("style");i.type="text/css",t==="top"&&r.firstChild?r.insertBefore(i,r.firstChild):r.appendChild(i),i.styleSheet?i.styleSheet.cssText=n:i.appendChild(document.createTextNode(n))}}var Hte=`div.vis-network div.vis-manipulation {
|
||
box-sizing: content-box;
|
||
|
||
border-width: 0;
|
||
border-bottom: 1px;
|
||
border-style: solid;
|
||
border-color: #d6d9d8;
|
||
background: #ffffff; /* Old browsers */
|
||
background: -moz-linear-gradient(
|
||
top,
|
||
#ffffff 0%,
|
||
#fcfcfc 48%,
|
||
#fafafa 50%,
|
||
#fcfcfc 100%
|
||
); /* FF3.6+ */
|
||
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+ */
|
||
background: -webkit-linear-gradient(
|
||
top,
|
||
#ffffff 0%,
|
||
#fcfcfc 48%,
|
||
#fafafa 50%,
|
||
#fcfcfc 100%
|
||
); /* Chrome10+,Safari5.1+ */
|
||
background: -o-linear-gradient(
|
||
top,
|
||
#ffffff 0%,
|
||
#fcfcfc 48%,
|
||
#fafafa 50%,
|
||
#fcfcfc 100%
|
||
); /* Opera 11.10+ */
|
||
background: -ms-linear-gradient(
|
||
top,
|
||
#ffffff 0%,
|
||
#fcfcfc 48%,
|
||
#fafafa 50%,
|
||
#fcfcfc 100%
|
||
); /* IE10+ */
|
||
background: linear-gradient(
|
||
to bottom,
|
||
#ffffff 0%,
|
||
#fcfcfc 48%,
|
||
#fafafa 50%,
|
||
#fcfcfc 100%
|
||
); /* W3C */
|
||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#fcfcfc',GradientType=0 ); /* IE6-9 */
|
||
|
||
padding-top: 4px;
|
||
position: absolute;
|
||
left: 0;
|
||
top: 0;
|
||
width: 100%;
|
||
height: 28px;
|
||
}
|
||
|
||
div.vis-network div.vis-edit-mode,
|
||
div.vis-network button.vis-edit-mode {
|
||
position: absolute;
|
||
left: 0;
|
||
top: 5px;
|
||
height: 30px;
|
||
}
|
||
|
||
/* FIXME: shouldn't the vis-close button be a child of the vis-manipulation div? */
|
||
|
||
div.vis-network button.vis-close {
|
||
position: absolute;
|
||
right: 0;
|
||
top: 0;
|
||
width: 30px;
|
||
height: 30px;
|
||
|
||
background-color: transparent;
|
||
background-position: 20px 3px;
|
||
background-repeat: no-repeat;
|
||
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');
|
||
border: none;
|
||
cursor: pointer;
|
||
-webkit-touch-callout: none;
|
||
-webkit-user-select: none;
|
||
-khtml-user-select: none;
|
||
-moz-user-select: none;
|
||
-ms-user-select: none;
|
||
user-select: none;
|
||
}
|
||
|
||
div.vis-network button.vis-close:hover {
|
||
opacity: 0.6;
|
||
}
|
||
|
||
div.vis-network div.vis-manipulation button.vis-button,
|
||
div.vis-network div.vis-edit-mode button.vis-button {
|
||
float: left;
|
||
font-family: verdana;
|
||
font-size: 12px;
|
||
border: none;
|
||
box-sizing: content-box;
|
||
-moz-border-radius: 15px;
|
||
border-radius: 15px;
|
||
background-color: transparent;
|
||
background-position: 0px 0px;
|
||
background-repeat: no-repeat;
|
||
height: 24px;
|
||
margin-left: 10px;
|
||
cursor: pointer;
|
||
padding: 0px 8px 0px 8px;
|
||
-webkit-touch-callout: none;
|
||
-webkit-user-select: none;
|
||
-khtml-user-select: none;
|
||
-moz-user-select: none;
|
||
-ms-user-select: none;
|
||
user-select: none;
|
||
}
|
||
|
||
div.vis-network div.vis-manipulation button.vis-button:hover {
|
||
box-shadow: 1px 1px 8px rgba(0, 0, 0, 0.2);
|
||
}
|
||
|
||
div.vis-network div.vis-manipulation button.vis-button:active {
|
||
box-shadow: 1px 1px 8px rgba(0, 0, 0, 0.5);
|
||
}
|
||
|
||
div.vis-network div.vis-manipulation button.vis-button.vis-back {
|
||
background-image: url('data:image/png;base64,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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNTowMTowOSswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTU6MDE6MDkrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOmI2YjQwMjVkLTAxNjQtMzU0OC1hOTdlLTQ4ZmYxMWM3NTYzMzwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDpmOWQ3OGY4ZC1lNzY0LTc1NDgtODZiNy1iNmQ1OGMzZDg2OTc8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTU6MDE6MDkrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOmI2YjQwMjVkLTAxNjQtMzU0OC1hOTdlLTQ4ZmYxMWM3NTYzMzwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNTowMTowOSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOmY5ZDc4ZjhkLWU3NjQtNzU0OC04NmI3LWI2ZDU4YzNkODY5Nzwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4jq1U/AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAVTSURBVHjanFVfTFNnFP+d77ve8qeVFbBrpcVgRrCRFikFByLxwSAaE32oRCHD6JMxxhhn8G2RxxH3MsOTbyYsmCAxPMmMMYtkIUYmK60OO0qAK23BFlNob0uh3x7WS5jLZPpLbm6+k/P9zrm5v9855PF4UFhYCABgjIExBgAgIqRSqRIi6gDQRkQ1RGTB3wgR0e8AHgH4Sa/XR/EBiAiJRAJ04cIF5Ofng4g2n0gkUkxENwF0c843LzHGQEQQQkCLExEA9ALotVgsUQAQQmgNQhJCbF5kjCEUCl0moj4t5na7fTU1NUpVVVXUYrEkASAcDhe8efOmxOfzWScmJqoBdBNR99LS0hWz2dynNSSEAF28eBGFhYVgjCEcDn9HRD1EhIMHD3o9Hs9kWVlZAh9BKBQqGB4edr58+dKZ+6JbJpOpBwBWV1fB6+rqIMsyIpHIFcZYL2MMra2tY5cuXRrfuXNnBtvAYDBk3G63oqpqZm5uzgrgSDKZjBoMhueZTAbc5XIhFouVEtFTxhiOHTs2dv78eS8+Efv374+oqpqZnZ21cs5PJJPJPlmWkyynnBuMMTQ0NHi7uro+mVyDx+Pxulwu71ZOlkqlSonoJhGhvb39s8k1nDx50ss5hyRJN9PpdKlERB2aWjSVaEilUvzBgwcORVEs5eXloXPnzk1sV8BkMiUdDofP7/dXZ7PZDilnIhw4cGBeS1pbW2P37t1zBwKBikQiUUREWFhYsHHO0d7evm0Ru90+/+rVq2rO+XGJiJxEhMrKyhgAjI6OWoeHh5tWVla+4JzDZrO9bW5unhwcHGzz+/32np4e+xaDbfoHAMxmc6ijo2O0oqIiJkkSNjY2HBIRmRljMJvNyWfPnln7+/tPMMZQXl6+0NbW9qK2tjYcj8floaEhqKpq+HCkbD3PzMwYBgYG0NXV9UuusFna2kEgELAQEQ4dOvSis7PzN41Ar9dnrl27NqCNkv/C3bt3zy4tLVmICJxzEBFJRBQmorLFxcWCqqqq0Pj4eO3Y2JhbUZTdra2tL2pra8OJRGLHnTt3zkqS9K+huHU4EhHMZnMoGo0W5OIh7nK5jjLGKq1W69vDhw8rRqMxMjc3t2t5eXnX5ORklc/nM+fl5SWnpqa+0uv1K/n5+Ws6nW5NluXNd15e3ppOp1uz2WyzZ86cGQ0Gg6ZAIFCZzWZ/lYjokRDiuN/vt7W0tMw3NTUpbrd78P79++5gMFgRiUTKHj58WMYYQ3V19etTp05tq6Lp6Wkb5xxCiEfc7XZPM8a6FxcXTfX19a/1en2Gcy5qamreNjY2/qGq6joRZe12+9Tp06e3JY/FYgWPHz8+mhvr3/CWlpbk+vp6PmOseWVlBS6XS9GSJUkSdrs93NDQ8Oe+ffvC/8fJIyMjddFo9Esi6pVleVjT2m0A8Hq9zqGhIefnjoknT544A4GAM/eDbxMReFNTE0pKSpKqqsaI6Pj8/LxVVdWM3W6PfCr5xMTE1zllXS0uLn6aSqXAGxsbodPpoNfrn6uqCs75EUVRrJFIZMfevXsXdTrdxseIE4mEPDIyUu/3++tynd8yGo29RIR0Og26fv06ioqKwBgD5xzv3r27zBjrIyJIkgSHwzFZWVmp7NmzJ1ZaWpoAgGg0WqgoSvHMzIw1GAw6tvjhitFo7NPW5fv370Hd3d0oKCgA53zTQMvLy+VCiKuSJH0rSdLmztZytIWv5RPRD0T0Y3Fx8dzWfby6ugopHo//w4mcc8iyPMc5v5FOp7/PZrOdQohWInIC2C2EgBBigYi8Qoifs9lsv06nWyIiaFxagXg8jr8GAGxuIe7LBeWhAAAAAElFTkSuQmCC');
|
||
}
|
||
|
||
div.vis-network div.vis-manipulation div.vis-none:hover {
|
||
box-shadow: 1px 1px 8px rgba(0, 0, 0, 0);
|
||
cursor: default;
|
||
}
|
||
div.vis-network div.vis-manipulation div.vis-none:active {
|
||
box-shadow: 1px 1px 8px rgba(0, 0, 0, 0);
|
||
}
|
||
div.vis-network div.vis-manipulation div.vis-none {
|
||
padding: 0px;
|
||
line-height: 23px;
|
||
}
|
||
div.vis-network div.vis-manipulation div.notification {
|
||
margin: 2px;
|
||
font-weight: bold;
|
||
}
|
||
|
||
div.vis-network div.vis-manipulation button.vis-button.vis-add {
|
||
background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNDo0MDoyOSswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTQ6NDA6MjkrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjVkNWIwNmQwLTVmMjAtOGE0NC1hMzIwLWZmMTEzMzQwNDc0YjwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo2OWVmYWE1NS01ZTI5LTIzNGUtYTUzMy0xNDkxYjM1NDNmYmE8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTQ6NDA6MjkrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjVkNWIwNmQwLTVmMjAtOGE0NC1hMzIwLWZmMTEzMzQwNDc0Yjwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNDo0MDoyOSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjY5ZWZhYTU1LTVlMjktMjM0ZS1hNTMzLTE0OTFiMzU0M2ZiYTwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz5WKqp9AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAYXSURBVHjafFZtUFTXGX7e9z27sveuMCwYV8ElrA7YSFYHtJUPkaaI0aRqG8wP00zUzljDINNSA/2ROtpO24SxnahlxjYd7SSjmUkymcxYlDhQPzHGisEVp8HwYWCVVVgEsrsuLnL74+5uqTF9Z+7cO/d8PO95zvO851BlZSV0XQcAMDOYGQBARDhX3JRmMDYZwLPMWAzGHACYIgwS46oBNBNwtOL8CwE8EkSEUCgE2rJlC2w2G4go8Zwo/bMDgnoG6gxLfAAAYvPDMCCszKTAMIAGAhrWnf15AAAMwwARIRKJgDZv3gy73Q4iAjPjxIr9VVOMRhbAYKB8zvrO0llrfEsdKwLZek6YAPSFvtSu3GtLawu0ZJ6625SHGBQB1T88t6MxvopgMAjaunUrdF0HM+P4yv27DMYeJmB1RqW3Jnf3tQX2p0L4P9EXuqEd7PmDp+XuMU9sRbvXnnt1TxxACgoKYLVacbzsQDUJGkSATe6qi28uPtzusM6Kxie6NHLGUX3lxVUNX9StPHnn4wy3njuUYcu6n2pNi66avcEXnByP/nv8aiaIyrqz2gO5A9+9FI1GIfn5+WhZdTAdjFMkwMvZOy7uWnTAOz3L4Yk71m3t69fdfTDoUGTBeHTUfiHQ6lo7Z2OXJvpDAChKe+aOCdKRKWxZ2+1qb3yyd3GYmRkQ7GQBVs99wfv6on3eR2k4PdTkDEbH7IuS8/svld/561PJS/pDk1/bzwx94pze7xc5v/H+YPY6r5BAkdrJzODTK46lE6PeYEJt7u+8j+OZwCBiEAgAoNgKJoEQf6PvNvdrXgtZoNhSf7q0KZ3B2AQmVMze0Jmt54S/DcDCVig2NcvEUGxJAE4Pl+YOr0iv6BRSIPAmBeBZAmHlE2sH4p1uhrq1s0MnnEQMBsf8wRASAICQQCCITN1X7/sOuc0kgOVp3/fPs2WHv+coG7gQOJUnLGsUCTxEjPzUohEA+NfIWUdtx0+efzA1kSSkIGyBAQNCKgHAEBAJ3u79U7kiAcWoem/gb5Fd33nrH3kp+SMWtuAB+GllMJxMjCx9QRgA3uiqL5kwHiTlpxb3smlfMDGYGPP1hcMAkJvs8ScpfdJspdj+MK6Pf+5+u29vyb4lR4+BGEziVESAkEpw6Av1OhUpHCz4qOXbzFWz4Ncdj/v/o08Lt92ODDgZDCEFJYoUGH4mzugP92puPTf0pD3H7wvfdFZdqSxnMtWjoGAAmG9fOLxjwesdjT2/XzIQ7ks3sycYMSEwGHNtWf5bkX5NkYCJBxUBXiGV0XHvosOt54Zey33j/K+8P33++vjnbiGJbbLE+J9SANAb6nJ2B79wcUwETAwQQ7fMjPzMvfP8ja87HUIKMOiaAqMZhrGmLdAy78eZrwwsTS0eObTs+IdtgVanxBUExqGbb5VzrIISGIoUXsmqbgEhJldCQWqRf27SvPAn/o8XmgLhZsUkR4ll37mhk3n94Z4OlzY/7NLcYZfm7o1z2zT4vsvUNSXqprBCkmiTFbPX90/fh8GIT2sf+zTPdDMf4dVnNg4z+E0ixsGeBs9jd5ViSgLHjCb/peaR+MD3d4/ZJg2llyuG2Vwy7QWAs8PNnn1f7vkGSGxAzE6mk+kxkx/p/4unffSCR0hAoL1EBCYiPNdWNcwkNQTCR7feWX6g+7f/A7I8rcw/U6UEe0Ndrhc/W7mtL9ztmqlSgstSS/zTJ28dalpOpkRryrwbhwBACgsLMWPGDOT4ll3qyeqAkJTdCF7P/CrUY/GkLL1rE+2hTbSH8+0Lb/WEuhzhyaA905blf9Vd/895WnZwLHrPevir/cvOB1oLYpTtLrm6oYGIMDExAaqtrUVKSgqYGSKCk0WHq5ikkWEWtNL0imv5qUW+RclLRjJsrhBAuH1/QL8R7HR4xy5nescuP23E6hOA6mLv+sb4uTw6Ogqqq6uDpmkQkcStorX4XRcM1FjZ+kvFFjCJKU1WpkNJJUqIMtX1RyLeX3JtQ0JRhmGYZ/L27duRnJycuFGISOJ9pqh5lrB6iYgqGOxRrOaa54DcZmKvkJxk8JHC9rKh+KVhOsD4+Dj+MwADIf8n5m4xGwAAAABJRU5ErkJggg==');
|
||
}
|
||
|
||
div.vis-network div.vis-manipulation button.vis-button.vis-edit,
|
||
div.vis-network div.vis-edit-mode button.vis-button.vis-edit {
|
||
background-image: url('data:image/png;base64,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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNVQxNDoxMjoyNSswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDVUMTQ6MTI6MjUrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjY5OTM3ZGZjLTJjNzQtYTU0YS05OTIzLTQyMmZhNDNkMjljNDwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDozOWNhNzE5ZC03YzNlLTUyNGEtYmY1NS03NGVmMmM1MzE0YTc8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDVUMTQ6MTI6MjUrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjY5OTM3ZGZjLTJjNzQtYTU0YS05OTIzLTQyMmZhNDNkMjljNDwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNVQxNDoxMjoyNSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjM5Y2E3MTlkLTdjM2UtNTI0YS1iZjU1LTc0ZWYyYzUzMTRhNzwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4ykninAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAYpSURBVHjafFZtTFvnFX7Oea+NudiY2Hwam4CBlgQwXdKREDKUoYg0jbRJ29RJ2VZ1mjRFUxSpA3VTfkzJfkQbS7spU6rtx5Z2UtppScjaHxvLuiatWi2jLEoMIUDCh23g2gbj7+tPuPvhOurawPl1dc99n+c55z33fV46ceIEZFkGADAziAgAQERoe/9ZK4GPM/AcgbsIXAcABCgMvkfAqAa89eDoJyF8LogIqqqChoaGYDAYHr8kItS8uc8iIH6iAa9IkAo5EAQX8pqmgUVBCBggYFgDhv0/GAsBgKZpICJkMhnQ4OAgZFkGEYGZUXmp+0cS+CKBwWA0DVRPOg5Zl2q6zaHyJlnVAMQXVTkwHrUqH0Xsvn+tdQAAMQDgpPLS2MViFY8rkGUZzIzaS/t/xqCzGggtz9e697zsnKhoLUtim4jOq/LE6x7X0nsh16dEZ5a/O3a2SCAOHjwInU6Hujd6ThJ4mCDQ+b2G232v7v6vwarPbQn8MGlMr+X0kpE3Wr5Zt5hL5HPhqYSdQIfKJ+yhxDPKWC6Xg+jt7UXD5b5KBt1kCHS85Ljd8/On3NupfnhFaZj4rWff1B98B1R/hnUmKd36bdtCNl4g0en4edNE/cXwLq8qMTMIPAQwmo/WuHvObA8+9c58k/dKtD0TyZWXN5YGA7ej7epKxspM//7SoNOdWc/Jyq2wiwhDzPxT8cP0jys3VMM7OmL0/77zn4Ydui3b8uiK0jD7RrA77c9Wd57cefPpF+2T6bWsFPWkaiPTCWvTsZpHFU+XrS+8G3AR08F6X+1FJvBxQQzHQOWk2SmrW4FPX/U2LVwPuDZj+fJKl2khPpeyAqA9rzR/YqwuiWXX8taN/CabGkrVuq9YJlkQQDjOAJ5jAhz9Vt9W4N5/rNp8I+vtMV/aZm4zLnUNNt0urdYnF68HWoJj4Wo1mLGUNRr8LEgDgNqeCh8xQIKOsgC7iAjVe83rT9zQa8uNM28u70kspessu8q8zq/V3NcZpVzb9+0zmVhOvvvrhaMVzrJg0zeq7xMVCCwdpnWSGBqjUyJwLTFgbvxie3w31uoWR1Y74r60rdxZqrR8q85t2W2MGCp12bm/KC3hyaSTiMhxuGrKcahqpbjOaDOoEhOEoFqJQCCJvqA85I6bfTdDjQlf2lbxVNlS6wt19yy7jRHZZlDnrinNj/6sHMhnNw2Ogco7O79e5fm/xQywRBBCEAuwn4gQ96bkYj4Vyuq9N1Z3Bj4Od5bs0MXt/dZZ21ctiqFan174q985P+Lfp+U1g7XDON/1ctP458WlVjLyJhOISZE0wM0S1QfuRC3lTjkJAKKEtNC9eIOhSh9xHLZOJRZTFuXDsEoStLkR/768ummsaJG9Pb9oe+9J+xaeSVokiQDSJphAo5uaBuWjiKP4QTqS1cUWU7ayesN66wu22frD1vmVW6GW6T8u9eVjGyZzs+w78Nqu0a2mbvVu1KEJQAgeZRL0liQYyx+GOmKeQpu0rMYsAJPNEFGD2dLodLIy6c9Ys7G8yeSUl3tf2/X3rcBVJSOv34l3sCBogi7z1LH/rBHjl4IJ93/ncQFAnjeImJD0Z8zuCwu9q3djDXqTlAKID5xv+9t2R8n8VcUFBljQ8Gyfe40BYBM4DwDLt8Kue79ZcFkbzfEdbUbv+oN4c9KTtsfm1MbYQqqh+2zrVZYKs/7Ef+byimt1POYiJhDhPBFBIiIEXhxfs7/dfYoIF+auBfYTE/pebx/V8hqBP2ODvD34yvuh/WCAmU75Bx6sIgaI/v5+6PV6JLqUsYr7dpDAoehs0h73pHTWrvKgThYbRSt9UmSjef3MpaUvBz4O72UmADgTOPJguGiZor+/HyUlJWBmJFz+D8xTtlUiOpbwpmrmrweeSXrT+g11k4SBN3RGKUcAVCVdFhyP1nreDbY//NPyEXUlU/Pp4XYycGT6V0Ux2WwWdO7cOZSWlkII8diX7SPPNgDaKdbxoNAxwATBAEkEEgSWCEQAqPAMwqvMdCEwMO0tVqZpWsGTT58+DaPR+PhGIYQAAAgh0P7B3ioW/B0iGiCGiwXbCuOHFSJys6AbYFye2T+xWhT3WYJEIoH/DQBMw3kes8OJPgAAAABJRU5ErkJggg==');
|
||
}
|
||
|
||
div.vis-network div.vis-edit-mode button.vis-button.vis-edit.vis-edit-mode {
|
||
background-color: #fcfcfc;
|
||
border: 1px solid #cccccc;
|
||
}
|
||
|
||
div.vis-network div.vis-manipulation button.vis-button.vis-connect {
|
||
background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNDozODo1NyswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTQ6Mzg6NTcrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjlmYjUwMDU0LWE3ODEtMWQ0OC05ZTllLTU2ZWQ5YzhlYjdjNjwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo3ZWRhMjI0MC0yYTQxLTNlNDQtYWM2My1iNzNiYTE5OWI3Y2E8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTQ6Mzg6NTcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjlmYjUwMDU0LWE3ODEtMWQ0OC05ZTllLTU2ZWQ5YzhlYjdjNjwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNDozODo1NyswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjdlZGEyMjQwLTJhNDEtM2U0NC1hYzYzLWI3M2JhMTk5YjdjYTwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4ubxs+AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAUtSURBVHjajJZ/bNT1Gcdfz/P53PV6B4W7VltLqdAaplIOiMOoyxxJCSs/Gv/yB4gzJroAosmmDklwkYWR0bQsdmkykoojTpcsWYLxD/lRZdMQkTHRtkLZRqG0tIVe7662vTu43n32x/VKZ/jh89cn38/zvN7P5/l88zwf2blzJz6fDwARQUSm1n8s31CM0/VAnbNmsUPuAsDpgEO+Bg4C7//iyv5hvmMiQiqVQpqamvB6vVNwEeG1JZtCBrYi/MrkAwDNgjhwAlbzICBLA0rDb0+/839C6XQaaWxspLCw8Dp86cbNmqVFJQddE6KzdjZ9D89g+B6fSyCOcyn1nxil+O9xKg5HqWFSHGXLjrP7W/ICqVQK2bNnDz6fDxFh65KNvxbHDhF4rJj2bXPo+IGfcW5h5xL4f99P+FCEMIAob75x9t0dAMlkElNXV4e1lteXbNqiQoMaeOFOjrdU868SD2luYyEP6dUh+sYmSHeOU6GO5Z8VLx5+NNZxIpPJ5AS2L3upROCoCvz8Lo7vnkf77cAHhpiz/zIL9vWz8L8p/NvupmM0Q7pjnAoLqz8tDrc8MnQqYVUVhVdF4LEg7b+rvDn8wDDlH0WoPpukLJImSBaMwjcJqmwWts2jPZLG/8kwYVFeVdXXZcFf4yVDc2cNKfBFmD9X+0ncCP58F48eG+Feo2CAUkvs4dl0V/uJvdXLiiV+ut++n7YLSfxPfMMG54ChzB3WIesVWB2i82bw1AR6fJR7C4VsfYiv6u/k3A9nEgP4zXke8DiYHyAOMK+QxPIgnZ9GqSHr1itQJ8DK2fTerDQ+S/bHRXQJaHSCwNIZ2Xh+7+S3VAmwNMBA/tuPZtErgKquUmdMWIFlRURvdamRNEXGwIWrlP47pTMzLiunxghGMwTLvcTWlHAp77s4QNSrYMQtss6ZMgWqCm5cHoDHO1nbk6K8zEN8+3zatv2Hn1b59EqJZdxmYUERg9P9KwpIiAOTdWUWBXuLzB/vZG3P1Un4PNp2d1MbmyD45TWCxuCsQm0x56bHGHFYEZwxok7toAA9Sfw3hCcoL/NOwi9QO5wmWO1j4JEgZxTkodmcWRGkf3pcX0r8xoAaBixKu4U5/xwndM+0tpAvS6mP+PZK2nb1UBvPEKwKMLDvPj4ESGc55lGy303sdJKQdZB2rkMdctAB/4gzN+/Q2ENNd4LyUi/xN+bTtquX2thk5nk4wI3gAF+OMNcA1nFQDfK+BY5GqbkwWabTY5QZhXWlnNx1ntrY1Rz87fuvw29m/Sn8J+PUGAFj5T19baA1IspuBZp7cx1x4SwG1cEf+lgRSROs8jGwb+Ht4QB/GSSsAhYano39LWIBxNEIbP14hPDuiyS2VtJuHXQlKKvxM/jiXDq/D/xPlwifGMkJZB2NIoKpr69nxeiZxLHicFSFVWfGqBidIP3LSjrWltD94CyufF/4kQgPuVz2Lz93+dDRa9eu5QQ8Hg8/iXee+Dy4CKMs7xqn4nwKz9IirhQqmVuB42m8ey+x7LMoD6iAON782eChhqmRuXfvXgKBAKqKqtI0/8nNKrQI4BVYXkzHgzPpC88gWuHL/caXrhLoGiN0apSKr0ZZRBZM7q2w5ZnLR1oAnHOMjY0hra2tFBQUYIyZmstvVT1Z6eDlAuEVq7merxmwueNPDXy9PvybjKP5mctHLk4/XTKZRJqbm/H7/VNw1VyEMYbW4FN3WNWnnchKoy5sHeVGBRX6VWi3ymFx7r11Ix8MTX/y5C2RSPC/AQB61erowbpqSwAAAABJRU5ErkJggg==');
|
||
}
|
||
|
||
div.vis-network div.vis-manipulation button.vis-button.vis-delete {
|
||
background-image: url('data:image/png;base64,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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNDo0MTowNCswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTQ6NDE6MDQrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjc3NDkzYmUxLTEyZGItOTg0NC1iNDYyLTg2NGVmNGIzMzM3MTwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDowNmE3NWYwMy04MDdhLWUzNGYtYjk1Zi1jZGU2MjM0Mzg4OGY8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTQ6NDE6MDQrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjc3NDkzYmUxLTEyZGItOTg0NC1iNDYyLTg2NGVmNGIzMzM3MTwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNDo0MTowNCswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjA2YTc1ZjAzLTgwN2EtZTM0Zi1iOTVmLWNkZTYyMzQzODg4Zjwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4aYJzYAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAYGSURBVHjalJZ7UJTnFcZ/73m/72PdJY1RbhoQp6lkXRAvmIYxdCUadLVOozPNtGObap1JsKipjiShbdoRbeKEiQHpQK3xj0xa03aamTbaTGyAYV1QGeqFi+JyiZFLAlmESBkWRmS3fyzslGkmnZ5/v/M873Oe75zzvqqoqAibzQaAiKCUAkApRdHIK/NFsx2NR91nOSILADDoJyzNaM4xxbtvPHh0iC+JiYkJ1OHDh4mJiUEpFSXPv/ziPC28TIiXDCOSrAClQDSEpsCwJPIhrEBRQpiSytXlQwDhcBilFPfu3UMVFxdjt9ujFTzfcLBADCoEEAFr1ZbrrNjch2vtEImPBgHob7fTcWE+bVXJNJ/NiFQlEGLvieXHKmYqGB8fRx05cgSbzYaIsPvywV8pKFaA7fGtLTzz61YWpo/xVTHQbufsq5lcez9zWuWhk5mvFwMEg0H0+vXrMU2Tn1wp3CtCiQ5DjGd3A/m/v8IDCZP8r4iNmyRrWx/j/5qktykZpXKzAjVDVxPzGqemptDr1q1jX3NRnIJarcDKK2hgR2ULXRfncv7UYv7xpovhnhiW5Mz+kefeSKO6LJ1A1xzEuk/Ojm4mRibpuZaMZW3OCtRUND60NmiICCIUShisx7a2sLMiQn4s77uEQgIabnqdfHIlgT1/qQeg8vs5dHhdCNB1wYn3RIiC995j26stjAbsNH+YiZJCESnS1Y/XxIXu8r4YIPv/VkVs3CTnTy2ms34xro1+sp9po6sxlTu34ultmsPVvy6is86FCHgO+DDs49zpjufBpCG+seYOC9OHaTidieicb9ouVAhKtouAseI710ma7pLuqwmgYfHqAFt+6WdLoQ/LBl11Lm7VudAa8vb72PCin9TlAWIsGGhLACD+kSAZnusYBii1XQAPYWDllt6ov2lrBkDBR2+6Ofuak2//3M+G/T4wAAPW7fPhKfRTVeqk9qQbFKRmDUTxS3N7QYGYmwzCkqklBGlPDEcTNv+sg9tNCbTXuvBWujE0bHrZj9JE1B/wU1Pm5PwJN6YBS9a2kVvQEcWnrh5GTFD3lxkYkqRMgYQlwVldUvDnen73LHTUuqitdKM0eAr9AFQfd1J/yo2aJn+2sn4Wdn5qEFODJskgBIjx5T0uCrQA08pnIjS9PERDjPnfOKXAMEBECUoGEIHBj+2zkt76UQ6dXheGAev3+cg74Kf6uJPqcicbfuond7cPy4SOiy7+tD9nFvZurx00KOk3CNEC+mE+vjSPBc7IWqgqTaPT60IMcO/xsXGa3HfKjRgRdbl7/KDg0jtubje6aHj7c7J3dgLQ2zoPwwQ91SooOQdAW1VKVMHty0kA5Bb48BycJn/LjWFGbLv4thvvb53kFvjJ+XEdWkPfjQVR/CcNKYgGMc8JWt5Fa2j+MIPPuyI2pa4IoHSkt6vLIuRaQ9q32khzt4GCxtNu6k46GeiIR2lIfDQQsafPzq1LGRGL9Gk9d+vrwewvfHPQOoexQVjxdB/auk/zmaUMdsfz6bVUtIalT7bxveP1ZHh6GPDPYeSzeD69kcpIfxymFWLNrka+ljhBTWkWwz2JiJT84YHnz2iPx0P20PkmRF5i6HYiwZFJsn/YzdezbzE3cQibY5xV266z6RfXohakb+xB9CjanCD9qTbW7Grk4WV38VZm0l6dhQiEw9taHSuDqrS0FIfDwXM3X9mHMsvRAk/sauDpQy38P+GtzOTGB9mEpkD0C2dS8n8zOjqK9ng8WJZFU+JTjasGvaCNXPpvJBPoMlm0OoDNMfWVxONfWNSUPUZ7TUQ56tCZlPwSgMnJSVRpaSmxsbFE1raw82ZxAZZRQUiBYUKGp5UlOX2krBzmoUVjiIKhHge9rfPo+Wcy3ZeXIYASgL1/X5RfMXMvj46OosrLy7HZbGitUUohIuzoem0RofALaOsghgWGjky0MiJTL8b0lOvI8hN1DKXKP0jd3TNTWDgcJhgMoo4ePYrD4Yi+KmaeLlprnrtXFo9h/AAlG1AqE8yFmBrC+jO0bgH9EVpO/1F2Dc5g//OAsbEx/j0Af+USsQynL1UAAAAASUVORK5CYII=');
|
||
}
|
||
/* top right bottom left */
|
||
div.vis-network div.vis-manipulation div.vis-label,
|
||
div.vis-network div.vis-edit-mode div.vis-label {
|
||
margin: 0 0 0 23px;
|
||
line-height: 25px;
|
||
}
|
||
div.vis-network div.vis-manipulation div.vis-separator-line {
|
||
float: left;
|
||
display: inline-block;
|
||
width: 1px;
|
||
height: 21px;
|
||
background-color: #bdbdbd;
|
||
margin: 0px 7px 0 15px; /*top right bottom left*/
|
||
}
|
||
|
||
/* TODO: is this redundant?
|
||
div.network-navigation_wrapper {
|
||
position: absolute;
|
||
left: 0;
|
||
top: 0;
|
||
width: 100%;
|
||
height: 100%;
|
||
}
|
||
*/
|
||
`;ao(Hte);var Ute=`div.vis-network div.vis-navigation div.vis-button {
|
||
width: 34px;
|
||
height: 34px;
|
||
-moz-border-radius: 17px;
|
||
border-radius: 17px;
|
||
position: absolute;
|
||
display: inline-block;
|
||
background-position: 2px 2px;
|
||
background-repeat: no-repeat;
|
||
cursor: pointer;
|
||
-webkit-touch-callout: none;
|
||
-webkit-user-select: none;
|
||
-khtml-user-select: none;
|
||
-moz-user-select: none;
|
||
-ms-user-select: none;
|
||
user-select: none;
|
||
}
|
||
|
||
div.vis-network div.vis-navigation div.vis-button:hover {
|
||
box-shadow: 0 0 3px 3px rgba(56, 207, 21, 0.3);
|
||
}
|
||
|
||
div.vis-network div.vis-navigation div.vis-button:active {
|
||
box-shadow: 0 0 1px 3px rgba(56, 207, 21, 0.95);
|
||
}
|
||
|
||
div.vis-network div.vis-navigation div.vis-button.vis-up {
|
||
background-image: url('data:image/png;base64,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');
|
||
bottom: 50px;
|
||
left: 55px;
|
||
}
|
||
div.vis-network div.vis-navigation div.vis-button.vis-down {
|
||
background-image: url('data:image/png;base64,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');
|
||
bottom: 10px;
|
||
left: 55px;
|
||
}
|
||
div.vis-network div.vis-navigation div.vis-button.vis-left {
|
||
background-image: url('data:image/png;base64,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');
|
||
bottom: 10px;
|
||
left: 15px;
|
||
}
|
||
div.vis-network div.vis-navigation div.vis-button.vis-right {
|
||
background-image: url('data:image/png;base64,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');
|
||
bottom: 10px;
|
||
left: 95px;
|
||
}
|
||
div.vis-network div.vis-navigation div.vis-button.vis-zoomIn {
|
||
background-image: url('data:image/png;base64,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/FRgAABiBJREFUeNqkV2tQlOcVfp7zvgvDRe66y8htXUBR1GoFI+BtFJvRtjPJBGeaH2a8DGmbttgSTWbSJEw6TWOsrbbpTIeJZGqaTipTa6LJZDTVUTYQdNAohoso6qLucnERN0Axcb/8+HaJUHDX9Pz6vnnPe57vXJ5zzkeEIwaYcwBL/VrW0TCKqZANINEvBhSk3w9eUmC9HzjcsfarOhBGKJN84GkVJHcetvqFu4SAIYELYlpm4LpQQMqoQQKVnzeO7EYV/A8NnHMAGwHWQJmAjtg895LkFa7FU1d258UvGLBGpI4AQM9dd2TrwNn4016n9bS3LqNzsD1VKPAbfhCyqflR31thAzv+La+QxotCoNi6pn1D1s9aVli/3xtOVk72fjT1XVf17E9uHZspFBD8zdk13pdCAjsOyG6KUSEEnrT/tPHluW+cw7eQ19q2z6/t2rsYJEjZ07S6d+ukwI5/yQ7RxnYC2DZnx8dbHNs6xxs85T2R9GprZcmVwYs2BYWsmBzP83m7nIVJS73jdfdd+7PjjUu/XWUCGTtPre7ZHjxTY3Kq8DoV8Ou5u49snPGrKxN58syZ9aVXBztsigoUBd+Xt2NbfZ8llaVvah+vOz9hcX+CJenWp7eOOYS6ePpTU1w39vk+AwCzFPdDQbFGFPCUY2v9hqxfXJ0shNeHLtsUFc6UequbVvdVkwLX0GXbZPpl6Zuu/ij9x/VCBU1dU7bfdFYAIDsSFRCgeOqa9hfy/nDhwfwTKOrRd0U95n0iqch9+cKS5JVtpMCdkllhAhugCHcRwAb7z1tCEp8CCXAWAJRoCFXIYnti+sYWTQ0tll0wQMk+hGUAkBOX714xbV1IyuhxHhIMC/iR5OV9M2JmuhU1Vh7PXiakrIUQhcnLXeHQxPT4GyAtFqgwgAPF5iIFWkeu1SSLCKAweXn3/ZR5rXV7SddQpy3YDoNems9qTI5hGCitm1MOAAx0aaFCerTd84zjBed3Egq9ADA/rqD7Q3ctQC4REDmkYHb8goGgsR2tz5V0DV+xUdQoqAQ81RybU4IgFWgACgpaLLCIBUo0bv63y/aXy6+WBHWz4/IHSIGAuVooiaRgWqD3AsDVoQ6bEgtOrfJUhwrf0WUtk+r8sL6wvHvk5ijVUiJSRrQZuURtfoGMuaCoRyfP/yMy0XykgAA0DPRTxNp31x2ZFuUYBgB7bK7HNdhpKz6WXq6oQCooKghMKhkgji77vBoA1jkXlAvVfRQjFMUcmxSkRWd6gpjeu32R2kxTvyhKh1DQeud8fFBh26zfOe0xuR4JgAbzywCoRSzfeDUKatJKUQK+CjKiHZ6nZ2xzBnU7B9vixTy7qCHSQEhJU3+DtdT6mAcAFiWUeP/xyPH3Jwrfo3XzysemRcEA8F5RY8h6aPE1WwMLQ4OQ/EBANHmdGWHlzZyxk3ayB0m771yGooYy+KE0l35x0iBxZehS6ie9R1PCMaDvCzWDXA4hZ283ptwcvp6qqDBnyao6AWEQrBQQ/7y+d3YoA+NBTAaElo973p8tVFCQyipW+c3pdNu7BwBOe+tm/eniK/kPFWowpMfvuKrzzw80zSKIkWsJe0bHYu163BNwMwDsv7G36ODNtzMnM5IWZfeQgscbisvLPl1aDhLTo7I8k+n/p+dw5pGeg0WKGiS31K6vvTdmA7nx9uDZ9A3xMUIpbvSezE6MSOmbNWXewHhD6dH23o7BlqQvvrwTK6KQFpXl2WyvcE6LTB2eCPSdrurvmcUnO/cVfPD6pMteyfGs3QKpUFQoS9tU/xPH8xe+Tdd693pN/pHug0Xmqntvz1uLDo9Z9v5nnrn+dvujrI1JMUJd3OY7n97ua46douOGpkdlDoUDeG7g1NS/u/5a0Og9scCsB+ysWXSoMuyFftWJvM0E31SBjmWPznHPjy+8NjdhYfeMmJl3EiNSRgCi/25fpGu4M671zjlrm685s2fEnUoQ5lrLLW8uPLj3oX9hqgxIw8n8X1LU7yMkItCHzREZrGQV6ONmy5TggHk247sL/1jFqof/hRn/AWfqC0pI+QHBIk3tICXRrFTpF8hlJaqefh6yFxQ6HwQYlK8HAKyt3WsWxl7fAAAAAElFTkSuQmCC');
|
||
bottom: 10px;
|
||
right: 15px;
|
||
}
|
||
div.vis-network div.vis-navigation div.vis-button.vis-zoomOut {
|
||
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/FRgAABV5JREFUeNq0l2tQVVUYht/3W/vACMr16IFRQDiAgChpgiikMqY1WjnN9KsfGOXYTOVgkvbDUsZuXrK0qZmGUSvNspjI8TZOmo6AGBoZYly8YB6Qw80DBwQ6jJ3dj30OZZmiwvtv77XW96y91l7v9y1iMNLBuCI84tZkIXU9gwqxAILdokNBOtzgJQWWuYEDFxfcLAGh3y0k79iaD4mfjOVu4WYhoItngBiR6RkuFJAyEJBA3m/lri3Ih/uewXFFyAG4A8oAWkcm2meEzrFNH53Vkhg4xWnxCXcBQGu/3bfGeTbwjKPUcsZRElnfUxcuFLh1Nwh5vurx7s8GDbZ+L+tI/U0hkGGZX5c9/pXqOZYn2gazK8Vth0fvsRUknbx+bIJQQPCts/Mda+4KthbJFoqeKwSejX6pfO2kjytxH1pfuyqlsGH7dJAgZWvFo23L/9muboF+JxtE0/OEwMqJG46uSHinFvepTPO8lhGaX+fPHSdjCKaPy/b3v7az58h/wHFFyIHCRirgjUlbfsiJWXEFD6iUoOkdQaaQ6z9dP2YVahljF4+yXdvZ/evf4G+hQk2sEAUsti4vWxa35gKGSBMDp3T23OxxVXdXRijKovSFzrerC6ELAMT6IhcCZIyeX7c68YPzGGLlxq89PyM0q5YU2M1RuQAg0EERbiaA7Ohl1RgmPTM2p1qjBk1Mm6GDErsfswAgLiDZPmfMwrbhAqeHzm6P8Z9gV9SQdTx2lpCyAEKkhc62YZiVEjTdRgo0zXeBRnImAaSFzm7xdjjtOBGyvmZVZkNvfZjXDhU14+BToFEDKRAQpAJ0HRTjP6XHpYUKEX7RzS9bV5c+FJTmAICUgNSWQ/ZCgJwhIOJIQVLgFKcXvKHm9cyGvithFDUAFQqECho1CBUIggYapAJ1QEFBExNMYoISDU1/NIR9cvndTG/c2IBkp2fC8ZpQgknBGI/3AsDvvRfDlJhwem5zwYMs7VNlaUtbXE1h3mezj9mlGSsXrBkzkFsGKGoDmedBJLfLjxQQgAYdHRSxtPfbfceNsPYBQPTI+GZbT31YxrGIpYoKpIKigkAgFOggNBrbQBBCBaEM2L+iGGmTgnF+Uc1epqO/3VejAoAOUZSLQkFN17lAb4eVCe+VRvvHN4sH6t1feqAmMUGoPHvvhdLzTjzfKoj0sza/GLOy1Bu3vqc20Pgl5YIGkVOEZFZ0nLLMszzdDADTgjIdX6Uf3zfUx6m6u8riKRhOCcmDAqLCURo53Oe4rrsyUlGD0nlIqubdKNZJXOm9FH6y7Yh5uKBnO8vNTX2N4YoKE2fMLREQOsE8AfFN4/ak4QIfbd2XJFRQkLx85ruN7NTp2AoAZxwlCR9dWJc81NDdtoLkc86KBIJwXQ3aOpCPqwuhR2SPbCBlUc2NyogQX3N7wqgU51BAf2w9EFXUtCtLqADqS76ev6/ilgrk2q6esxHZgf5CySh3FMcG+5jbE0ZNdj4odHdDwWPGcZNNO1MPbrxtzdW4s+tI5HPBwQTTzziKY3v/7HGlhmS23g90T+OO5L1Nu7MMw3Fv/Tx1f97/FnsAYPui8/D4nBB/oZZR230uoq67auQoLaB37Iio3sEAK52nR39p+zS13HFiilHeYtOOabdC71jQzz2R+ALBbcrjWNF+cfaUwLSrk4KmtsT4T+gK9jG7AKKjv93X1lcfUNNVaantropqddnDCcIoa7lk29S92+/5CpOvQ04VJ79KUe/7iI/Hh40U6c3PyuPjhmWKN8G8Fvnw1A/zmX/vV5h/T+CXstRMUp4kOFOjZiUlWBkFQYdALitRZXRzf3RqWumdgF79NQDBOa2V/iYSHAAAAABJRU5ErkJggg==');
|
||
bottom: 10px;
|
||
right: 55px;
|
||
}
|
||
div.vis-network div.vis-navigation div.vis-button.vis-zoomExtends {
|
||
background-image: url('data:image/png;base64,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');
|
||
bottom: 50px;
|
||
right: 15px;
|
||
}
|
||
`;ao(Ute);var Kte=`.vis-overlay {
|
||
position: absolute;
|
||
top: 0px;
|
||
right: 0px;
|
||
bottom: 0px;
|
||
left: 0px;
|
||
|
||
/* Must be displayed above for example selected Timeline items */
|
||
z-index: 10;
|
||
}
|
||
|
||
.vis-active {
|
||
box-shadow: 0 0 10px #86d5f8;
|
||
}
|
||
`;ao(Kte);var Yte=`/* override some bootstrap styles screwing up the timelines css */
|
||
|
||
.vis [class*="span"] {
|
||
min-height: 0;
|
||
width: auto;
|
||
}
|
||
`;ao(Yte);var Xte=`div.vis-color-picker {
|
||
position: absolute;
|
||
top: 0px;
|
||
left: 30px;
|
||
margin-top: -140px;
|
||
margin-left: 30px;
|
||
width: 310px;
|
||
height: 444px;
|
||
z-index: 1;
|
||
padding: 10px;
|
||
border-radius: 15px;
|
||
background-color: #ffffff;
|
||
display: none;
|
||
box-shadow: rgba(0, 0, 0, 0.5) 0px 0px 10px 0px;
|
||
}
|
||
|
||
div.vis-color-picker div.vis-arrow {
|
||
position: absolute;
|
||
top: 147px;
|
||
left: 5px;
|
||
}
|
||
|
||
div.vis-color-picker div.vis-arrow::after,
|
||
div.vis-color-picker div.vis-arrow::before {
|
||
right: 100%;
|
||
top: 50%;
|
||
border: solid transparent;
|
||
content: " ";
|
||
height: 0;
|
||
width: 0;
|
||
position: absolute;
|
||
pointer-events: none;
|
||
}
|
||
|
||
div.vis-color-picker div.vis-arrow:after {
|
||
border-color: rgba(255, 255, 255, 0);
|
||
border-right-color: #ffffff;
|
||
border-width: 30px;
|
||
margin-top: -30px;
|
||
}
|
||
|
||
div.vis-color-picker div.vis-color {
|
||
position: absolute;
|
||
width: 289px;
|
||
height: 289px;
|
||
cursor: pointer;
|
||
}
|
||
|
||
div.vis-color-picker div.vis-brightness {
|
||
position: absolute;
|
||
top: 313px;
|
||
}
|
||
|
||
div.vis-color-picker div.vis-opacity {
|
||
position: absolute;
|
||
top: 350px;
|
||
}
|
||
|
||
div.vis-color-picker div.vis-selector {
|
||
position: absolute;
|
||
top: 137px;
|
||
left: 137px;
|
||
width: 15px;
|
||
height: 15px;
|
||
border-radius: 15px;
|
||
border: 1px solid #ffffff;
|
||
background: #4c4c4c; /* Old browsers */
|
||
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+ */
|
||
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+ */
|
||
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+ */
|
||
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+ */
|
||
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+ */
|
||
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 */
|
||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4c4c4c', endColorstr='#131313',GradientType=0 ); /* IE6-9 */
|
||
}
|
||
|
||
div.vis-color-picker div.vis-new-color {
|
||
position: absolute;
|
||
width: 140px;
|
||
height: 20px;
|
||
border: 1px solid rgba(0, 0, 0, 0.1);
|
||
border-radius: 5px;
|
||
top: 380px;
|
||
left: 159px;
|
||
text-align: right;
|
||
padding-right: 2px;
|
||
font-size: 10px;
|
||
color: rgba(0, 0, 0, 0.4);
|
||
vertical-align: middle;
|
||
line-height: 20px;
|
||
}
|
||
|
||
div.vis-color-picker div.vis-initial-color {
|
||
position: absolute;
|
||
width: 140px;
|
||
height: 20px;
|
||
border: 1px solid rgba(0, 0, 0, 0.1);
|
||
border-radius: 5px;
|
||
top: 380px;
|
||
left: 10px;
|
||
text-align: left;
|
||
padding-left: 2px;
|
||
font-size: 10px;
|
||
color: rgba(0, 0, 0, 0.4);
|
||
vertical-align: middle;
|
||
line-height: 20px;
|
||
}
|
||
|
||
div.vis-color-picker div.vis-label {
|
||
position: absolute;
|
||
width: 300px;
|
||
left: 10px;
|
||
}
|
||
|
||
div.vis-color-picker div.vis-label.vis-brightness {
|
||
top: 300px;
|
||
}
|
||
|
||
div.vis-color-picker div.vis-label.vis-opacity {
|
||
top: 338px;
|
||
}
|
||
|
||
div.vis-color-picker div.vis-button {
|
||
position: absolute;
|
||
width: 68px;
|
||
height: 25px;
|
||
border-radius: 10px;
|
||
vertical-align: middle;
|
||
text-align: center;
|
||
line-height: 25px;
|
||
top: 410px;
|
||
border: 2px solid #d9d9d9;
|
||
background-color: #f7f7f7;
|
||
cursor: pointer;
|
||
}
|
||
|
||
div.vis-color-picker div.vis-button.vis-cancel {
|
||
/*border:2px solid #ff4e33;*/
|
||
/*background-color: #ff7761;*/
|
||
left: 5px;
|
||
}
|
||
div.vis-color-picker div.vis-button.vis-load {
|
||
/*border:2px solid #a153e6;*/
|
||
/*background-color: #cb8dff;*/
|
||
left: 82px;
|
||
}
|
||
div.vis-color-picker div.vis-button.vis-apply {
|
||
/*border:2px solid #4588e6;*/
|
||
/*background-color: #82b6ff;*/
|
||
left: 159px;
|
||
}
|
||
div.vis-color-picker div.vis-button.vis-save {
|
||
/*border:2px solid #45e655;*/
|
||
/*background-color: #6dff7c;*/
|
||
left: 236px;
|
||
}
|
||
|
||
div.vis-color-picker input.vis-range {
|
||
width: 290px;
|
||
height: 20px;
|
||
}
|
||
|
||
/* TODO: is this redundant?
|
||
div.vis-color-picker input.vis-range-brightness {
|
||
width: 289px !important;
|
||
}
|
||
|
||
|
||
div.vis-color-picker input.vis-saturation-range {
|
||
width: 289px !important;
|
||
}*/
|
||
`;ao(Xte);var Qte=`div.vis-configuration {
|
||
position: relative;
|
||
display: block;
|
||
float: left;
|
||
font-size: 12px;
|
||
}
|
||
|
||
div.vis-configuration-wrapper {
|
||
display: block;
|
||
width: 700px;
|
||
}
|
||
|
||
div.vis-configuration-wrapper::after {
|
||
clear: both;
|
||
content: "";
|
||
display: block;
|
||
}
|
||
|
||
div.vis-configuration.vis-config-option-container {
|
||
display: block;
|
||
width: 495px;
|
||
background-color: #ffffff;
|
||
border: 2px solid #f7f8fa;
|
||
border-radius: 4px;
|
||
margin-top: 20px;
|
||
left: 10px;
|
||
padding-left: 5px;
|
||
}
|
||
|
||
div.vis-configuration.vis-config-button {
|
||
display: block;
|
||
width: 495px;
|
||
height: 25px;
|
||
vertical-align: middle;
|
||
line-height: 25px;
|
||
background-color: #f7f8fa;
|
||
border: 2px solid #ceced0;
|
||
border-radius: 4px;
|
||
margin-top: 20px;
|
||
left: 10px;
|
||
padding-left: 5px;
|
||
cursor: pointer;
|
||
margin-bottom: 30px;
|
||
}
|
||
|
||
div.vis-configuration.vis-config-button.hover {
|
||
background-color: #4588e6;
|
||
border: 2px solid #214373;
|
||
color: #ffffff;
|
||
}
|
||
|
||
div.vis-configuration.vis-config-item {
|
||
display: block;
|
||
float: left;
|
||
width: 495px;
|
||
height: 25px;
|
||
vertical-align: middle;
|
||
line-height: 25px;
|
||
}
|
||
|
||
div.vis-configuration.vis-config-item.vis-config-s2 {
|
||
left: 10px;
|
||
background-color: #f7f8fa;
|
||
padding-left: 5px;
|
||
border-radius: 3px;
|
||
}
|
||
div.vis-configuration.vis-config-item.vis-config-s3 {
|
||
left: 20px;
|
||
background-color: #e4e9f0;
|
||
padding-left: 5px;
|
||
border-radius: 3px;
|
||
}
|
||
div.vis-configuration.vis-config-item.vis-config-s4 {
|
||
left: 30px;
|
||
background-color: #cfd8e6;
|
||
padding-left: 5px;
|
||
border-radius: 3px;
|
||
}
|
||
|
||
div.vis-configuration.vis-config-header {
|
||
font-size: 18px;
|
||
font-weight: bold;
|
||
}
|
||
|
||
div.vis-configuration.vis-config-label {
|
||
width: 120px;
|
||
height: 25px;
|
||
line-height: 25px;
|
||
}
|
||
|
||
div.vis-configuration.vis-config-label.vis-config-s3 {
|
||
width: 110px;
|
||
}
|
||
div.vis-configuration.vis-config-label.vis-config-s4 {
|
||
width: 100px;
|
||
}
|
||
|
||
div.vis-configuration.vis-config-colorBlock {
|
||
top: 1px;
|
||
width: 30px;
|
||
height: 19px;
|
||
border: 1px solid #444444;
|
||
border-radius: 2px;
|
||
padding: 0px;
|
||
margin: 0px;
|
||
cursor: pointer;
|
||
}
|
||
|
||
input.vis-configuration.vis-config-checkbox {
|
||
left: -5px;
|
||
}
|
||
|
||
input.vis-configuration.vis-config-rangeinput {
|
||
position: relative;
|
||
top: -5px;
|
||
width: 60px;
|
||
/*height:13px;*/
|
||
padding: 1px;
|
||
margin: 0;
|
||
pointer-events: none;
|
||
}
|
||
|
||
input.vis-configuration.vis-config-range {
|
||
/*removes default webkit styles*/
|
||
-webkit-appearance: none;
|
||
|
||
/*fix for FF unable to apply focus style bug */
|
||
border: 0px solid white;
|
||
background-color: rgba(0, 0, 0, 0);
|
||
|
||
/*required for proper track sizing in FF*/
|
||
width: 300px;
|
||
height: 20px;
|
||
}
|
||
input.vis-configuration.vis-config-range::-webkit-slider-runnable-track {
|
||
width: 300px;
|
||
height: 5px;
|
||
background: #dedede; /* Old browsers */
|
||
background: -moz-linear-gradient(top, #dedede 0%, #c8c8c8 99%); /* FF3.6+ */
|
||
background: -webkit-gradient(
|
||
linear,
|
||
left top,
|
||
left bottom,
|
||
color-stop(0%, #dedede),
|
||
color-stop(99%, #c8c8c8)
|
||
); /* Chrome,Safari4+ */
|
||
background: -webkit-linear-gradient(
|
||
top,
|
||
#dedede 0%,
|
||
#c8c8c8 99%
|
||
); /* Chrome10+,Safari5.1+ */
|
||
background: -o-linear-gradient(
|
||
top,
|
||
#dedede 0%,
|
||
#c8c8c8 99%
|
||
); /* Opera 11.10+ */
|
||
background: -ms-linear-gradient(top, #dedede 0%, #c8c8c8 99%); /* IE10+ */
|
||
background: linear-gradient(to bottom, #dedede 0%, #c8c8c8 99%); /* W3C */
|
||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dedede', endColorstr='#c8c8c8',GradientType=0 ); /* IE6-9 */
|
||
|
||
border: 1px solid #999999;
|
||
box-shadow: #aaaaaa 0px 0px 3px 0px;
|
||
border-radius: 3px;
|
||
}
|
||
input.vis-configuration.vis-config-range::-webkit-slider-thumb {
|
||
-webkit-appearance: none;
|
||
border: 1px solid #14334b;
|
||
height: 17px;
|
||
width: 17px;
|
||
border-radius: 50%;
|
||
background: #3876c2; /* Old browsers */
|
||
background: -moz-linear-gradient(top, #3876c2 0%, #385380 100%); /* FF3.6+ */
|
||
background: -webkit-gradient(
|
||
linear,
|
||
left top,
|
||
left bottom,
|
||
color-stop(0%, #3876c2),
|
||
color-stop(100%, #385380)
|
||
); /* Chrome,Safari4+ */
|
||
background: -webkit-linear-gradient(
|
||
top,
|
||
#3876c2 0%,
|
||
#385380 100%
|
||
); /* Chrome10+,Safari5.1+ */
|
||
background: -o-linear-gradient(
|
||
top,
|
||
#3876c2 0%,
|
||
#385380 100%
|
||
); /* Opera 11.10+ */
|
||
background: -ms-linear-gradient(top, #3876c2 0%, #385380 100%); /* IE10+ */
|
||
background: linear-gradient(to bottom, #3876c2 0%, #385380 100%); /* W3C */
|
||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#3876c2', endColorstr='#385380',GradientType=0 ); /* IE6-9 */
|
||
box-shadow: #111927 0px 0px 1px 0px;
|
||
margin-top: -7px;
|
||
}
|
||
input.vis-configuration.vis-config-range:focus {
|
||
outline: none;
|
||
}
|
||
input.vis-configuration.vis-config-range:focus::-webkit-slider-runnable-track {
|
||
background: #9d9d9d; /* Old browsers */
|
||
background: -moz-linear-gradient(top, #9d9d9d 0%, #c8c8c8 99%); /* FF3.6+ */
|
||
background: -webkit-gradient(
|
||
linear,
|
||
left top,
|
||
left bottom,
|
||
color-stop(0%, #9d9d9d),
|
||
color-stop(99%, #c8c8c8)
|
||
); /* Chrome,Safari4+ */
|
||
background: -webkit-linear-gradient(
|
||
top,
|
||
#9d9d9d 0%,
|
||
#c8c8c8 99%
|
||
); /* Chrome10+,Safari5.1+ */
|
||
background: -o-linear-gradient(
|
||
top,
|
||
#9d9d9d 0%,
|
||
#c8c8c8 99%
|
||
); /* Opera 11.10+ */
|
||
background: -ms-linear-gradient(top, #9d9d9d 0%, #c8c8c8 99%); /* IE10+ */
|
||
background: linear-gradient(to bottom, #9d9d9d 0%, #c8c8c8 99%); /* W3C */
|
||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#9d9d9d', endColorstr='#c8c8c8',GradientType=0 ); /* IE6-9 */
|
||
}
|
||
|
||
input.vis-configuration.vis-config-range::-moz-range-track {
|
||
width: 300px;
|
||
height: 10px;
|
||
background: #dedede; /* Old browsers */
|
||
background: -moz-linear-gradient(top, #dedede 0%, #c8c8c8 99%); /* FF3.6+ */
|
||
background: -webkit-gradient(
|
||
linear,
|
||
left top,
|
||
left bottom,
|
||
color-stop(0%, #dedede),
|
||
color-stop(99%, #c8c8c8)
|
||
); /* Chrome,Safari4+ */
|
||
background: -webkit-linear-gradient(
|
||
top,
|
||
#dedede 0%,
|
||
#c8c8c8 99%
|
||
); /* Chrome10+,Safari5.1+ */
|
||
background: -o-linear-gradient(
|
||
top,
|
||
#dedede 0%,
|
||
#c8c8c8 99%
|
||
); /* Opera 11.10+ */
|
||
background: -ms-linear-gradient(top, #dedede 0%, #c8c8c8 99%); /* IE10+ */
|
||
background: linear-gradient(to bottom, #dedede 0%, #c8c8c8 99%); /* W3C */
|
||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dedede', endColorstr='#c8c8c8',GradientType=0 ); /* IE6-9 */
|
||
|
||
border: 1px solid #999999;
|
||
box-shadow: #aaaaaa 0px 0px 3px 0px;
|
||
border-radius: 3px;
|
||
}
|
||
input.vis-configuration.vis-config-range::-moz-range-thumb {
|
||
border: none;
|
||
height: 16px;
|
||
width: 16px;
|
||
|
||
border-radius: 50%;
|
||
background: #385380;
|
||
}
|
||
|
||
/*hide the outline behind the border*/
|
||
input.vis-configuration.vis-config-range:-moz-focusring {
|
||
outline: 1px solid white;
|
||
outline-offset: -1px;
|
||
}
|
||
|
||
input.vis-configuration.vis-config-range::-ms-track {
|
||
width: 300px;
|
||
height: 5px;
|
||
|
||
/*remove bg colour from the track, we'll use ms-fill-lower and ms-fill-upper instead */
|
||
background: transparent;
|
||
|
||
/*leave room for the larger thumb to overflow with a transparent border */
|
||
border-color: transparent;
|
||
border-width: 6px 0;
|
||
|
||
/*remove default tick marks*/
|
||
color: transparent;
|
||
}
|
||
input.vis-configuration.vis-config-range::-ms-fill-lower {
|
||
background: #777;
|
||
border-radius: 10px;
|
||
}
|
||
input.vis-configuration.vis-config-range::-ms-fill-upper {
|
||
background: #ddd;
|
||
border-radius: 10px;
|
||
}
|
||
input.vis-configuration.vis-config-range::-ms-thumb {
|
||
border: none;
|
||
height: 16px;
|
||
width: 16px;
|
||
border-radius: 50%;
|
||
background: #385380;
|
||
}
|
||
input.vis-configuration.vis-config-range:focus::-ms-fill-lower {
|
||
background: #888;
|
||
}
|
||
input.vis-configuration.vis-config-range:focus::-ms-fill-upper {
|
||
background: #ccc;
|
||
}
|
||
|
||
.vis-configuration-popup {
|
||
position: absolute;
|
||
background: rgba(57, 76, 89, 0.85);
|
||
border: 2px solid #f2faff;
|
||
line-height: 30px;
|
||
height: 30px;
|
||
width: 150px;
|
||
text-align: center;
|
||
color: #ffffff;
|
||
font-size: 14px;
|
||
border-radius: 4px;
|
||
-webkit-transition: opacity 0.3s ease-in-out;
|
||
-moz-transition: opacity 0.3s ease-in-out;
|
||
transition: opacity 0.3s ease-in-out;
|
||
}
|
||
.vis-configuration-popup:after,
|
||
.vis-configuration-popup:before {
|
||
left: 100%;
|
||
top: 50%;
|
||
border: solid transparent;
|
||
content: " ";
|
||
height: 0;
|
||
width: 0;
|
||
position: absolute;
|
||
pointer-events: none;
|
||
}
|
||
|
||
.vis-configuration-popup:after {
|
||
border-color: rgba(136, 183, 213, 0);
|
||
border-left-color: rgba(57, 76, 89, 0.85);
|
||
border-width: 8px;
|
||
margin-top: -8px;
|
||
}
|
||
.vis-configuration-popup:before {
|
||
border-color: rgba(194, 225, 245, 0);
|
||
border-left-color: #f2faff;
|
||
border-width: 12px;
|
||
margin-top: -12px;
|
||
}
|
||
`;ao(Qte);var Jte=`div.vis-tooltip {
|
||
position: absolute;
|
||
visibility: hidden;
|
||
padding: 5px;
|
||
white-space: nowrap;
|
||
|
||
font-family: verdana;
|
||
font-size: 14px;
|
||
color: #000000;
|
||
background-color: #f5f4ed;
|
||
|
||
-moz-border-radius: 3px;
|
||
-webkit-border-radius: 3px;
|
||
border-radius: 3px;
|
||
border: 1px solid #808074;
|
||
|
||
box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.2);
|
||
pointer-events: none;
|
||
|
||
z-index: 5;
|
||
}
|
||
`;ao(Jte);var DR=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function ne(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}var NR={},va,MR;function Le(){if(MR)return va;MR=1;var n=function(e){return e&&e.Math===Math&&e};return va=n(typeof globalThis=="object"&&globalThis)||n(typeof window=="object"&&window)||n(typeof self=="object"&&self)||n(typeof DR=="object"&&DR)||n(typeof va=="object"&&va)||(function(){return this})()||Function("return this")(),va}var sC,qR;function ce(){return qR||(qR=1,sC=function(n){try{return!!n()}catch{return!0}}),sC}var aC,FR;function ag(){if(FR)return aC;FR=1;var n=ce();return aC=!n(function(){var e=(function(){}).bind();return typeof e!="function"||e.hasOwnProperty("prototype")}),aC}var gC,kR;function sI(){if(kR)return gC;kR=1;var n=ag(),e=Function.prototype,t=e.apply,r=e.call;return gC=typeof Reflect=="object"&&Reflect.apply||(n?r.bind(t):function(){return r.apply(t,arguments)}),gC}var AC,BR;function me(){if(BR)return AC;BR=1;var n=ag(),e=Function.prototype,t=e.call,r=n&&e.bind.bind(t,t);return AC=n?r:function(i){return function(){return t.apply(i,arguments)}},AC}var IC,zR;function Ai(){if(zR)return IC;zR=1;var n=me(),e=n({}.toString),t=n("".slice);return IC=function(r){return t(e(r),8,-1)},IC}var CC,jR;function zO(){if(jR)return CC;jR=1;var n=Ai(),e=me();return CC=function(t){if(n(t)==="Function")return e(t)},CC}var lC,LR;function yt(){if(LR)return lC;LR=1;var n=typeof document=="object"&&document.all;return lC=typeof n>"u"&&n!==void 0?function(e){return typeof e=="function"||e===n}:function(e){return typeof e=="function"},lC}var dC={},uC,GR;function nt(){if(GR)return uC;GR=1;var n=ce();return uC=!n(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!==7}),uC}var hC,WR;function rr(){if(WR)return hC;WR=1;var n=ag(),e=Function.prototype.call;return hC=n?e.bind(e):function(){return e.apply(e,arguments)},hC}var cC={},VR;function aI(){if(VR)return cC;VR=1;var n={}.propertyIsEnumerable,e=Object.getOwnPropertyDescriptor,t=e&&!n.call({1:2},1);return cC.f=t?function(i){var o=e(this,i);return!!o&&o.enumerable}:n,cC}var fC,ZR;function gg(){return ZR||(ZR=1,fC=function(n,e){return{enumerable:!(n&1),configurable:!(n&2),writable:!(n&4),value:e}}),fC}var pC,HR;function gI(){if(HR)return pC;HR=1;var n=me(),e=ce(),t=Ai(),r=Object,i=n("".split);return pC=e(function(){return!r("z").propertyIsEnumerable(0)})?function(o){return t(o)==="String"?i(o,""):r(o)}:r,pC}var vC,UR;function Os(){return UR||(UR=1,vC=function(n){return n==null}),vC}var mC,KR;function Ri(){if(KR)return mC;KR=1;var n=Os(),e=TypeError;return mC=function(t){if(n(t))throw new e("Can't call method on "+t);return t},mC}var yC,YR;function Vr(){if(YR)return yC;YR=1;var n=gI(),e=Ri();return yC=function(t){return n(e(t))},yC}var bC,XR;function bt(){if(XR)return bC;XR=1;var n=yt();return bC=function(e){return typeof e=="object"?e!==null:n(e)},bC}var wC,QR;function Ee(){return QR||(QR=1,wC={}),wC}var EC,JR;function gr(){if(JR)return EC;JR=1;var n=Ee(),e=Le(),t=yt(),r=function(i){return t(i)?i:void 0};return EC=function(i,o){return arguments.length<2?r(n[i])||r(e[i]):n[i]&&n[i][o]||e[i]&&e[i][o]},EC}var SC,eP;function Je(){if(eP)return SC;eP=1;var n=me();return SC=n({}.isPrototypeOf),SC}var _C,tP;function Ts(){if(tP)return _C;tP=1;var n=Le(),e=n.navigator,t=e&&e.userAgent;return _C=t?String(t):"",_C}var OC,rP;function Ag(){if(rP)return OC;rP=1;var n=Le(),e=Ts(),t=n.process,r=n.Deno,i=t&&t.versions||r&&r.version,o=i&&i.v8,s,a;return o&&(s=o.split("."),a=s[0]>0&&s[0]<4?1:+(s[0]+s[1])),!a&&e&&(s=e.match(/Edge\/(\d+)/),(!s||s[1]>=74)&&(s=e.match(/Chrome\/(\d+)/),s&&(a=+s[1]))),OC=a,OC}var TC,iP;function Rs(){if(iP)return TC;iP=1;var n=Ag(),e=ce(),t=Le(),r=t.String;return TC=!!Object.getOwnPropertySymbols&&!e(function(){var i=Symbol("symbol detection");return!r(i)||!(Object(i)instanceof Symbol)||!Symbol.sham&&n&&n<41}),TC}var RC,nP;function DX(){if(nP)return RC;nP=1;var n=Rs();return RC=n&&!Symbol.sham&&typeof Symbol.iterator=="symbol",RC}var PC,oP;function Ig(){if(oP)return PC;oP=1;var n=gr(),e=yt(),t=Je(),r=DX(),i=Object;return PC=r?function(o){return typeof o=="symbol"}:function(o){var s=n("Symbol");return e(s)&&t(s.prototype,i(o))},PC}var xC,sP;function Ps(){if(sP)return xC;sP=1;var n=String;return xC=function(e){try{return n(e)}catch{return"Object"}},xC}var $C,aP;function Pi(){if(aP)return $C;aP=1;var n=yt(),e=Ps(),t=TypeError;return $C=function(r){if(n(r))return r;throw new t(e(r)+" is not a function")},$C}var DC,gP;function jO(){if(gP)return DC;gP=1;var n=Pi(),e=Os();return DC=function(t,r){var i=t[r];return e(i)?void 0:n(i)},DC}var NC,AP;function ere(){if(AP)return NC;AP=1;var n=rr(),e=yt(),t=bt(),r=TypeError;return NC=function(i,o){var s,a;if(o==="string"&&e(s=i.toString)&&!t(a=n(s,i))||e(s=i.valueOf)&&!t(a=n(s,i))||o!=="string"&&e(s=i.toString)&&!t(a=n(s,i)))return a;throw new r("Can't convert object to primitive value")},NC}var MC={exports:{}},qC,IP;function xs(){return IP||(IP=1,qC=!0),qC}var FC,CP;function tre(){if(CP)return FC;CP=1;var n=Le(),e=Object.defineProperty;return FC=function(t,r){try{e(n,t,{value:r,configurable:!0,writable:!0})}catch{n[t]=r}return r},FC}var lP;function LO(){if(lP)return MC.exports;lP=1;var n=xs(),e=Le(),t=tre(),r="__core-js_shared__",i=MC.exports=e[r]||t(r,{});return(i.versions||(i.versions=[])).push({version:"3.44.0",mode:n?"pure":"global",copyright:"© 2014-2025 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.44.0/LICENSE",source:"https://github.com/zloirock/core-js"}),MC.exports}var kC,dP;function $s(){if(dP)return kC;dP=1;var n=LO();return kC=function(e,t){return n[e]||(n[e]=t||{})},kC}var BC,uP;function Ar(){if(uP)return BC;uP=1;var n=Ri(),e=Object;return BC=function(t){return e(n(t))},BC}var zC,hP;function ct(){if(hP)return zC;hP=1;var n=me(),e=Ar(),t=n({}.hasOwnProperty);return zC=Object.hasOwn||function(i,o){return t(e(i),o)},zC}var jC,cP;function AI(){if(cP)return jC;cP=1;var n=me(),e=0,t=Math.random(),r=n(1.1.toString);return jC=function(i){return"Symbol("+(i===void 0?"":i)+")_"+r(++e+t,36)},jC}var LC,fP;function Ct(){if(fP)return LC;fP=1;var n=Le(),e=$s(),t=ct(),r=AI(),i=Rs(),o=DX(),s=n.Symbol,a=e("wks"),g=o?s.for||s:s&&s.withoutSetter||r;return LC=function(A){return t(a,A)||(a[A]=i&&t(s,A)?s[A]:g("Symbol."+A)),a[A]},LC}var GC,pP;function NX(){if(pP)return GC;pP=1;var n=rr(),e=bt(),t=Ig(),r=jO(),i=ere(),o=Ct(),s=TypeError,a=o("toPrimitive");return GC=function(g,A){if(!e(g)||t(g))return g;var I=r(g,a),C;if(I){if(A===void 0&&(A="default"),C=n(I,g,A),!e(C)||t(C))return C;throw new s("Can't convert object to primitive value")}return A===void 0&&(A="number"),i(g,A)},GC}var WC,vP;function GO(){if(vP)return WC;vP=1;var n=NX(),e=Ig();return WC=function(t){var r=n(t,"string");return e(r)?r:r+""},WC}var VC,mP;function MX(){if(mP)return VC;mP=1;var n=Le(),e=bt(),t=n.document,r=e(t)&&e(t.createElement);return VC=function(i){return r?t.createElement(i):{}},VC}var ZC,yP;function qX(){if(yP)return ZC;yP=1;var n=nt(),e=ce(),t=MX();return ZC=!n&&!e(function(){return Object.defineProperty(t("div"),"a",{get:function(){return 7}}).a!==7}),ZC}var bP;function II(){if(bP)return dC;bP=1;var n=nt(),e=rr(),t=aI(),r=gg(),i=Vr(),o=GO(),s=ct(),a=qX(),g=Object.getOwnPropertyDescriptor;return dC.f=n?g:function(I,C){if(I=i(I),C=o(C),a)try{return g(I,C)}catch{}if(s(I,C))return r(!e(t.f,I,C),I[C])},dC}var HC,wP;function rre(){if(wP)return HC;wP=1;var n=ce(),e=yt(),t=/#|\.prototype\./,r=function(g,A){var I=o[i(g)];return I===a?!0:I===s?!1:e(A)?n(A):!!A},i=r.normalize=function(g){return String(g).replace(t,".").toLowerCase()},o=r.data={},s=r.NATIVE="N",a=r.POLYFILL="P";return HC=r,HC}var UC,EP;function CI(){if(EP)return UC;EP=1;var n=zO(),e=Pi(),t=ag(),r=n(n.bind);return UC=function(i,o){return e(i),o===void 0?i:t?r(i,o):function(){return i.apply(o,arguments)}},UC}var KC={},YC,SP;function FX(){if(SP)return YC;SP=1;var n=nt(),e=ce();return YC=n&&e(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!==42}),YC}var XC,_P;function Ii(){if(_P)return XC;_P=1;var n=bt(),e=String,t=TypeError;return XC=function(r){if(n(r))return r;throw new t(e(r)+" is not an object")},XC}var OP;function mr(){if(OP)return KC;OP=1;var n=nt(),e=qX(),t=FX(),r=Ii(),i=GO(),o=TypeError,s=Object.defineProperty,a=Object.getOwnPropertyDescriptor,g="enumerable",A="configurable",I="writable";return KC.f=n?t?function(l,d,u){if(r(l),d=i(d),r(u),typeof l=="function"&&d==="prototype"&&"value"in u&&I in u&&!u[I]){var h=a(l,d);h&&h[I]&&(l[d]=u.value,u={configurable:A in u?u[A]:h[A],enumerable:g in u?u[g]:h[g],writable:!1})}return s(l,d,u)}:s:function(l,d,u){if(r(l),d=i(d),r(u),e)try{return s(l,d,u)}catch{}if("get"in u||"set"in u)throw new o("Accessors not supported");return"value"in u&&(l[d]=u.value),l},KC}var QC,TP;function Ds(){if(TP)return QC;TP=1;var n=nt(),e=mr(),t=gg();return QC=n?function(r,i,o){return e.f(r,i,t(1,o))}:function(r,i,o){return r[i]=o,r},QC}var JC,RP;function ee(){if(RP)return JC;RP=1;var n=Le(),e=sI(),t=zO(),r=yt(),i=II().f,o=rre(),s=Ee(),a=CI(),g=Ds(),A=ct(),I=function(C){var l=function(d,u,h){if(this instanceof l){switch(arguments.length){case 0:return new C;case 1:return new C(d);case 2:return new C(d,u)}return new C(d,u,h)}return e(C,this,arguments)};return l.prototype=C.prototype,l};return JC=function(C,l){var d=C.target,u=C.global,h=C.stat,v=C.proto,f=u?n:h?n[d]:n[d]&&n[d].prototype,c=u?s:s[d]||g(s,d,{})[d],b=c.prototype,p,y,E,S,m,w,_,T,R;for(S in l)p=o(u?S:d+(h?".":"#")+S,C.forced),y=!p&&f&&A(f,S),w=c[S],y&&(C.dontCallGetSet?(R=i(f,S),_=R&&R.value):_=f[S]),m=y&&_?_:l[S],!(!p&&!v&&typeof w==typeof m)&&(C.bind&&y?T=a(m,n):C.wrap&&y?T=I(m):v&&r(m)?T=t(m):T=m,(C.sham||m&&m.sham||w&&w.sham)&&g(T,"sham",!0),g(c,S,T),v&&(E=d+"Prototype",A(s,E)||g(s,E,{}),g(s[E],S,m),C.real&&b&&(p||!b[S])&&g(b,S,m)))},JC}var el,PP;function ire(){if(PP)return el;PP=1;var n=Math.ceil,e=Math.floor;return el=Math.trunc||function(r){var i=+r;return(i>0?e:n)(i)},el}var tl,xP;function Ns(){if(xP)return tl;xP=1;var n=ire();return tl=function(e){var t=+e;return t!==t||t===0?0:n(t)},tl}var rl,$P;function lI(){if($P)return rl;$P=1;var n=Ns(),e=Math.max,t=Math.min;return rl=function(r,i){var o=n(r);return o<0?e(o+i,0):t(o,i)},rl}var il,DP;function kX(){if(DP)return il;DP=1;var n=Ns(),e=Math.min;return il=function(t){var r=n(t);return r>0?e(r,9007199254740991):0},il}var nl,NP;function xi(){if(NP)return nl;NP=1;var n=kX();return nl=function(e){return n(e.length)},nl}var ol,MP;function WO(){if(MP)return ol;MP=1;var n=Vr(),e=lI(),t=xi(),r=function(i){return function(o,s,a){var g=n(o),A=t(g);if(A===0)return!i&&-1;var I=e(a,A),C;if(i&&s!==s){for(;A>I;)if(C=g[I++],C!==C)return!0}else for(;A>I;I++)if((i||I in g)&&g[I]===s)return i||I||0;return!i&&-1}};return ol={includes:r(!0),indexOf:r(!1)},ol}var sl,qP;function Cg(){return qP||(qP=1,sl={}),sl}var al,FP;function BX(){if(FP)return al;FP=1;var n=me(),e=ct(),t=Vr(),r=WO().indexOf,i=Cg(),o=n([].push);return al=function(s,a){var g=t(s),A=0,I=[],C;for(C in g)!e(i,C)&&e(g,C)&&o(I,C);for(;a.length>A;)e(g,C=a[A++])&&(~r(I,C)||o(I,C));return I},al}var gl,kP;function VO(){return kP||(kP=1,gl=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]),gl}var Al,BP;function lg(){if(BP)return Al;BP=1;var n=BX(),e=VO();return Al=Object.keys||function(r){return n(r,e)},Al}var Il={},zP;function dI(){return zP||(zP=1,Il.f=Object.getOwnPropertySymbols),Il}var Cl,jP;function nre(){if(jP)return Cl;jP=1;var n=nt(),e=me(),t=rr(),r=ce(),i=lg(),o=dI(),s=aI(),a=Ar(),g=gI(),A=Object.assign,I=Object.defineProperty,C=e([].concat);return Cl=!A||r(function(){if(n&&A({b:1},A(I({},"a",{enumerable:!0,get:function(){I(this,"b",{value:3,enumerable:!1})}}),{b:2})).b!==1)return!0;var l={},d={},u=Symbol("assign detection"),h="abcdefghijklmnopqrst";return l[u]=7,h.split("").forEach(function(v){d[v]=v}),A({},l)[u]!==7||i(A({},d)).join("")!==h})?function(d,u){for(var h=a(d),v=arguments.length,f=1,c=o.f,b=s.f;v>f;)for(var p=g(arguments[f++]),y=c?C(i(p),c(p)):i(p),E=y.length,S=0,m;E>S;)m=y[S++],(!n||t(b,p,m))&&(h[m]=p[m]);return h}:A,Cl}var LP;function ore(){if(LP)return NR;LP=1;var n=ee(),e=nre();return n({target:"Object",stat:!0,arity:2,forced:Object.assign!==e},{assign:e}),NR}var ll,GP;function sre(){if(GP)return ll;GP=1,ore();var n=Ee();return ll=n.Object.assign,ll}var dl,WP;function are(){if(WP)return dl;WP=1;var n=sre();return dl=n,dl}var ul,VP;function gre(){return VP||(VP=1,ul=are()),ul}var Are=gre(),tt=ne(Are),ZP={},hl,HP;function Ms(){if(HP)return hl;HP=1;var n=me();return hl=n([].slice),hl}var cl,UP;function Ire(){if(UP)return cl;UP=1;var n=me(),e=Pi(),t=bt(),r=ct(),i=Ms(),o=ag(),s=Function,a=n([].concat),g=n([].join),A={},I=function(C,l,d){if(!r(A,l)){for(var u=[],h=0;h<l;h++)u[h]="a["+h+"]";A[l]=s("C,a","return new C("+g(u,",")+")")}return A[l](C,d)};return cl=o?s.bind:function(l){var d=e(this),u=d.prototype,h=i(arguments,1),v=function(){var c=a(h,i(arguments));return this instanceof v?I(d,c.length,c):d.apply(l,c)};return t(u)&&(v.prototype=u),v},cl}var KP;function Cre(){if(KP)return ZP;KP=1;var n=ee(),e=Ire();return n({target:"Function",proto:!0,forced:Function.bind!==e},{bind:e}),ZP}var fl,YP;function ft(){if(YP)return fl;YP=1;var n=Le(),e=Ee();return fl=function(t,r){var i=e[t+"Prototype"],o=i&&i[r];if(o)return o;var s=n[t],a=s&&s.prototype;return a&&a[r]},fl}var pl,XP;function lre(){if(XP)return pl;XP=1,Cre();var n=ft();return pl=n("Function","bind"),pl}var vl,QP;function dre(){if(QP)return vl;QP=1;var n=Je(),e=lre(),t=Function.prototype;return vl=function(r){var i=r.bind;return r===t||n(t,r)&&i===t.bind?e:i},vl}var ml,JP;function ure(){if(JP)return ml;JP=1;var n=dre();return ml=n,ml}var yl,e2;function hre(){return e2||(e2=1,yl=ure()),yl}var cre=hre(),z=ne(cre);function ZO(n,e,t,r){n.beginPath(),n.arc(e,t,r,0,2*Math.PI,!1),n.closePath()}function fre(n,e,t,r){n.beginPath(),n.rect(e-r,t-r,r*2,r*2),n.closePath()}function pre(n,e,t,r){n.beginPath(),r*=1.15,t+=.275*r;const i=r*2,o=i/2,s=Math.sqrt(3)/6*i,a=Math.sqrt(i*i-o*o);n.moveTo(e,t-(a-s)),n.lineTo(e+o,t+s),n.lineTo(e-o,t+s),n.lineTo(e,t-(a-s)),n.closePath()}function vre(n,e,t,r){n.beginPath(),r*=1.15,t-=.275*r;const i=r*2,o=i/2,s=Math.sqrt(3)/6*i,a=Math.sqrt(i*i-o*o);n.moveTo(e,t+(a-s)),n.lineTo(e+o,t-s),n.lineTo(e-o,t-s),n.lineTo(e,t+(a-s)),n.closePath()}function mre(n,e,t,r){n.beginPath(),r*=.82,t+=.1*r;for(let i=0;i<10;i++){const o=i%2===0?r*1.3:r*.5;n.lineTo(e+o*Math.sin(i*2*Math.PI/10),t-o*Math.cos(i*2*Math.PI/10))}n.closePath()}function yre(n,e,t,r){n.beginPath(),n.lineTo(e,t+r),n.lineTo(e+r,t),n.lineTo(e,t-r),n.lineTo(e-r,t),n.closePath()}function zX(n,e,t,r,i,o){const s=Math.PI/180;r-2*o<0&&(o=r/2),i-2*o<0&&(o=i/2),n.beginPath(),n.moveTo(e+o,t),n.lineTo(e+r-o,t),n.arc(e+r-o,t+o,o,s*270,s*360,!1),n.lineTo(e+r,t+i-o),n.arc(e+r-o,t+i-o,o,0,s*90,!1),n.lineTo(e+o,t+i),n.arc(e+o,t+i-o,o,s*90,s*180,!1),n.lineTo(e,t+o),n.arc(e+o,t+o,o,s*180,s*270,!1),n.closePath()}function sO(n,e,t,r,i){const o=.5522848,s=r/2*o,a=i/2*o,g=e+r,A=t+i,I=e+r/2,C=t+i/2;n.beginPath(),n.moveTo(e,C),n.bezierCurveTo(e,C-a,I-s,t,I,t),n.bezierCurveTo(I+s,t,g,C-a,g,C),n.bezierCurveTo(g,C+a,I+s,A,I,A),n.bezierCurveTo(I-s,A,e,C+a,e,C),n.closePath()}function jX(n,e,t,r,i){const o=.3333333333333333,s=r,a=i*o,g=.5522848,A=s/2*g,I=a/2*g,C=e+s,l=t+a,d=e+s/2,u=t+a/2,h=t+(i-a/2),v=t+i;n.beginPath(),n.moveTo(C,u),n.bezierCurveTo(C,u+I,d+A,l,d,l),n.bezierCurveTo(d-A,l,e,u+I,e,u),n.bezierCurveTo(e,u-I,d-A,t,d,t),n.bezierCurveTo(d+A,t,C,u-I,C,u),n.lineTo(C,h),n.bezierCurveTo(C,h+I,d+A,v,d,v),n.bezierCurveTo(d-A,v,e,h+I,e,h),n.lineTo(e,u)}function LX(n,e,t,r,i,o){n.beginPath(),n.moveTo(e,t);const s=o.length,a=r-e,g=i-t,A=g/a;let I=Math.sqrt(a*a+g*g),C=0,l=!0,d=0,u=+o[0];for(;I>=.1;)u=+o[C++%s],u>I&&(u=I),d=Math.sqrt(u*u/(1+A*A)),d=a<0?-d:d,e+=d,t+=A*d,l===!0?n.lineTo(e,t):n.moveTo(e,t),I-=u,l=!l}function bre(n,e,t,r){n.beginPath();const i=6,o=Math.PI*2/i;n.moveTo(e+r,t);for(let s=1;s<i;s++)n.lineTo(e+r*Math.cos(o*s),t+r*Math.sin(o*s));n.closePath()}const t2={circle:ZO,dashedLine:LX,database:jX,diamond:yre,ellipse:sO,ellipse_vis:sO,hexagon:bre,roundRect:zX,square:fre,star:mre,triangle:pre,triangleDown:vre};function wre(n){return Object.prototype.hasOwnProperty.call(t2,n)?t2[n]:function(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),i=1;i<t;i++)r[i-1]=arguments[i];CanvasRenderingContext2D.prototype[n].call(e,r)}}var bl={exports:{}},r2;function Ere(){return r2||(r2=1,(function(n){n.exports=e;function e(r){if(r)return t(r)}function t(r){for(var i in e.prototype)r[i]=e.prototype[i];return r}e.prototype.on=e.prototype.addEventListener=function(r,i){return this._callbacks=this._callbacks||{},(this._callbacks["$"+r]=this._callbacks["$"+r]||[]).push(i),this},e.prototype.once=function(r,i){function o(){this.off(r,o),i.apply(this,arguments)}return o.fn=i,this.on(r,o),this},e.prototype.off=e.prototype.removeListener=e.prototype.removeAllListeners=e.prototype.removeEventListener=function(r,i){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var o=this._callbacks["$"+r];if(!o)return this;if(arguments.length==1)return delete this._callbacks["$"+r],this;for(var s,a=0;a<o.length;a++)if(s=o[a],s===i||s.fn===i){o.splice(a,1);break}return o.length===0&&delete this._callbacks["$"+r],this},e.prototype.emit=function(r){this._callbacks=this._callbacks||{};for(var i=new Array(arguments.length-1),o=this._callbacks["$"+r],s=1;s<arguments.length;s++)i[s-1]=arguments[s];if(o){o=o.slice(0);for(var s=0,a=o.length;s<a;++s)o[s].apply(this,i)}return this},e.prototype.listeners=function(r){return this._callbacks=this._callbacks||{},this._callbacks["$"+r]||[]},e.prototype.hasListeners=function(r){return!!this.listeners(r).length}})(bl)),bl.exports}var Sre=Ere(),GX=ne(Sre),i2={},wl,n2;function go(){if(n2)return wl;n2=1;var n=Ai();return wl=Array.isArray||function(t){return n(t)==="Array"},wl}var El,o2;function WX(){if(o2)return El;o2=1;var n=TypeError,e=9007199254740991;return El=function(t){if(t>e)throw n("Maximum allowed index exceeded");return t},El}var Sl,s2;function uI(){if(s2)return Sl;s2=1;var n=nt(),e=mr(),t=gg();return Sl=function(r,i,o){n?e.f(r,i,t(0,o)):r[i]=o},Sl}var _l,a2;function HO(){if(a2)return _l;a2=1;var n=Ct(),e=n("toStringTag"),t={};return t[e]="z",_l=String(t)==="[object z]",_l}var Ol,g2;function fn(){if(g2)return Ol;g2=1;var n=HO(),e=yt(),t=Ai(),r=Ct(),i=r("toStringTag"),o=Object,s=t((function(){return arguments})())==="Arguments",a=function(g,A){try{return g[A]}catch{}};return Ol=n?t:function(g){var A,I,C;return g===void 0?"Undefined":g===null?"Null":typeof(I=a(A=o(g),i))=="string"?I:s?t(A):(C=t(A))==="Object"&&e(A.callee)?"Arguments":C},Ol}var Tl,A2;function _re(){if(A2)return Tl;A2=1;var n=me(),e=yt(),t=LO(),r=n(Function.toString);return e(t.inspectSource)||(t.inspectSource=function(i){return r(i)}),Tl=t.inspectSource,Tl}var Rl,I2;function VX(){if(I2)return Rl;I2=1;var n=me(),e=ce(),t=yt(),r=fn(),i=gr(),o=_re(),s=function(){},a=i("Reflect","construct"),g=/^\s*(?:class|function)\b/,A=n(g.exec),I=!g.test(s),C=function(u){if(!t(u))return!1;try{return a(s,[],u),!0}catch{return!1}},l=function(u){if(!t(u))return!1;switch(r(u)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return I||!!A(g,o(u))}catch{return!0}};return l.sham=!0,Rl=!a||e(function(){var d;return C(C.call)||!C(Object)||!C(function(){d=!0})||d})?l:C,Rl}var Pl,C2;function Ore(){if(C2)return Pl;C2=1;var n=go(),e=VX(),t=bt(),r=Ct(),i=r("species"),o=Array;return Pl=function(s){var a;return n(s)&&(a=s.constructor,e(a)&&(a===o||n(a.prototype))?a=void 0:t(a)&&(a=a[i],a===null&&(a=void 0))),a===void 0?o:a},Pl}var xl,l2;function UO(){if(l2)return xl;l2=1;var n=Ore();return xl=function(e,t){return new(n(e))(t===0?0:t)},xl}var $l,d2;function dg(){if(d2)return $l;d2=1;var n=ce(),e=Ct(),t=Ag(),r=e("species");return $l=function(i){return t>=51||!n(function(){var o=[],s=o.constructor={};return s[r]=function(){return{foo:1}},o[i](Boolean).foo!==1})},$l}var u2;function ZX(){if(u2)return i2;u2=1;var n=ee(),e=ce(),t=go(),r=bt(),i=Ar(),o=xi(),s=WX(),a=uI(),g=UO(),A=dg(),I=Ct(),C=Ag(),l=I("isConcatSpreadable"),d=C>=51||!e(function(){var v=[];return v[l]=!1,v.concat()[0]!==v}),u=function(v){if(!r(v))return!1;var f=v[l];return f!==void 0?!!f:t(v)},h=!d||!A("concat");return n({target:"Array",proto:!0,arity:1,forced:h},{concat:function(f){var c=i(this),b=g(c,0),p=0,y,E,S,m,w;for(y=-1,S=arguments.length;y<S;y++)if(w=y===-1?c:arguments[y],u(w))for(m=o(w),s(p+m),E=0;E<m;E++,p++)E in w&&a(b,p,w[E]);else s(p+1),a(b,p++,w);return b.length=p,b}}),i2}var h2={},c2={},Dl,f2;function yr(){if(f2)return Dl;f2=1;var n=fn(),e=String;return Dl=function(t){if(n(t)==="Symbol")throw new TypeError("Cannot convert a Symbol value to a string");return e(t)},Dl}var Nl={},p2;function KO(){if(p2)return Nl;p2=1;var n=nt(),e=FX(),t=mr(),r=Ii(),i=Vr(),o=lg();return Nl.f=n&&!e?Object.defineProperties:function(a,g){r(a);for(var A=i(g),I=o(g),C=I.length,l=0,d;C>l;)t.f(a,d=I[l++],A[d]);return a},Nl}var Ml,v2;function Tre(){if(v2)return Ml;v2=1;var n=gr();return Ml=n("document","documentElement"),Ml}var ql,m2;function hI(){if(m2)return ql;m2=1;var n=$s(),e=AI(),t=n("keys");return ql=function(r){return t[r]||(t[r]=e(r))},ql}var Fl,y2;function ug(){if(y2)return Fl;y2=1;var n=Ii(),e=KO(),t=VO(),r=Cg(),i=Tre(),o=MX(),s=hI(),a=">",g="<",A="prototype",I="script",C=s("IE_PROTO"),l=function(){},d=function(c){return g+I+a+c+g+"/"+I+a},u=function(c){c.write(d("")),c.close();var b=c.parentWindow.Object;return c=null,b},h=function(){var c=o("iframe"),b="java"+I+":",p;return c.style.display="none",i.appendChild(c),c.src=String(b),p=c.contentWindow.document,p.open(),p.write(d("document.F=Object")),p.close(),p.F},v,f=function(){try{v=new ActiveXObject("htmlfile")}catch{}f=typeof document<"u"?document.domain&&v?u(v):h():u(v);for(var c=t.length;c--;)delete f[A][t[c]];return f()};return r[C]=!0,Fl=Object.create||function(b,p){var y;return b!==null?(l[A]=n(b),y=new l,l[A]=null,y[C]=b):y=f(),p===void 0?y:e.f(y,p)},Fl}var kl={},b2;function cI(){if(b2)return kl;b2=1;var n=BX(),e=VO(),t=e.concat("length","prototype");return kl.f=Object.getOwnPropertyNames||function(i){return n(i,t)},kl}var Bl={},w2;function YO(){if(w2)return Bl;w2=1;var n=Ai(),e=Vr(),t=cI().f,r=Ms(),i=typeof window=="object"&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],o=function(s){try{return t(s)}catch{return r(i)}};return Bl.f=function(a){return i&&n(a)==="Window"?o(a):t(e(a))},Bl}var zl,E2;function hg(){if(E2)return zl;E2=1;var n=Ds();return zl=function(e,t,r,i){return i&&i.enumerable?e[t]=r:n(e,t,r),e},zl}var jl,S2;function XO(){if(S2)return jl;S2=1;var n=mr();return jl=function(e,t,r){return n.f(e,t,r)},jl}var Ll={},_2;function fI(){if(_2)return Ll;_2=1;var n=Ct();return Ll.f=n,Ll}var Gl,O2;function Ze(){if(O2)return Gl;O2=1;var n=Ee(),e=ct(),t=fI(),r=mr().f;return Gl=function(i){var o=n.Symbol||(n.Symbol={});e(o,i)||r(o,i,{value:t.f(i)})},Gl}var Wl,T2;function HX(){if(T2)return Wl;T2=1;var n=rr(),e=gr(),t=Ct(),r=hg();return Wl=function(){var i=e("Symbol"),o=i&&i.prototype,s=o&&o.valueOf,a=t("toPrimitive");o&&!o[a]&&r(o,a,function(g){return n(s,this)},{arity:1})},Wl}var Vl,R2;function Rre(){if(R2)return Vl;R2=1;var n=HO(),e=fn();return Vl=n?{}.toString:function(){return"[object "+e(this)+"]"},Vl}var Zl,P2;function Ao(){if(P2)return Zl;P2=1;var n=HO(),e=mr().f,t=Ds(),r=ct(),i=Rre(),o=Ct(),s=o("toStringTag");return Zl=function(a,g,A,I){var C=A?a:a&&a.prototype;C&&(r(C,s)||e(C,s,{configurable:!0,value:g}),I&&!n&&t(C,"toString",i))},Zl}var Hl,x2;function UX(){if(x2)return Hl;x2=1;var n=Le(),e=yt(),t=n.WeakMap;return Hl=e(t)&&/native code/.test(String(t)),Hl}var Ul,$2;function Io(){if($2)return Ul;$2=1;var n=UX(),e=Le(),t=bt(),r=Ds(),i=ct(),o=LO(),s=hI(),a=Cg(),g="Object already initialized",A=e.TypeError,I=e.WeakMap,C,l,d,u=function(c){return d(c)?l(c):C(c,{})},h=function(c){return function(b){var p;if(!t(b)||(p=l(b)).type!==c)throw new A("Incompatible receiver, "+c+" required");return p}};if(n||o.state){var v=o.state||(o.state=new I);v.get=v.get,v.has=v.has,v.set=v.set,C=function(c,b){if(v.has(c))throw new A(g);return b.facade=c,v.set(c,b),b},l=function(c){return v.get(c)||{}},d=function(c){return v.has(c)}}else{var f=s("state");a[f]=!0,C=function(c,b){if(i(c,f))throw new A(g);return b.facade=c,r(c,f,b),b},l=function(c){return i(c,f)?c[f]:{}},d=function(c){return i(c,f)}}return Ul={set:C,get:l,has:d,enforce:u,getterFor:h},Ul}var Kl,D2;function pn(){if(D2)return Kl;D2=1;var n=CI(),e=me(),t=gI(),r=Ar(),i=xi(),o=UO(),s=e([].push),a=function(g){var A=g===1,I=g===2,C=g===3,l=g===4,d=g===6,u=g===7,h=g===5||d;return function(v,f,c,b){for(var p=r(v),y=t(p),E=i(y),S=n(f,c),m=0,w=b||o,_=A?w(v,E):I||u?w(v,0):void 0,T,R;E>m;m++)if((h||m in y)&&(T=y[m],R=S(T,m,p),g))if(A)_[m]=R;else if(R)switch(g){case 3:return!0;case 5:return T;case 6:return m;case 2:s(_,T)}else switch(g){case 4:return!1;case 7:s(_,T)}return d?-1:C||l?l:_}};return Kl={forEach:a(0),map:a(1),filter:a(2),some:a(3),every:a(4),find:a(5),findIndex:a(6),filterReject:a(7)},Kl}var N2;function Pre(){if(N2)return c2;N2=1;var n=ee(),e=Le(),t=rr(),r=me(),i=xs(),o=nt(),s=Rs(),a=ce(),g=ct(),A=Je(),I=Ii(),C=Vr(),l=GO(),d=yr(),u=gg(),h=ug(),v=lg(),f=cI(),c=YO(),b=dI(),p=II(),y=mr(),E=KO(),S=aI(),m=hg(),w=XO(),_=$s(),T=hI(),R=Cg(),O=AI(),P=Ct(),x=fI(),V=Ze(),M=HX(),U=Ao(),K=Io(),oe=pn().forEach,L=T("hidden"),ae="Symbol",he="prototype",ve=K.set,Rt=K.getterFor(ae),le=Object[he],We=e.Symbol,Pt=We&&We[he],ua=e.RangeError,ha=e.TypeError,Tr=e.QObject,zi=p.f,Ve=y.f,ji=c.f,ca=S.f,Li=r([].push),Se=_("symbols"),xt=_("op-symbols"),fa=_("wks"),Rr=!Tr||!Tr[he]||!Tr[he].findChild,Gi=function(Z,N,q){var F=zi(le,N);F&&delete le[N],Ve(Z,N,q),F&&Z!==le&&Ve(le,N,F)},Pr=o&&a(function(){return h(Ve({},"a",{get:function(){return Ve(this,"a",{value:7}).a}})).a!==7})?Gi:Ve,xr=function(Z,N){var q=Se[Z]=h(Pt);return ve(q,{type:ae,tag:Z,description:N}),o||(q.description=N),q},Ut=function(N,q,F){N===le&&Ut(xt,q,F),I(N);var H=l(q);return I(F),g(Se,H)?(F.enumerable?(g(N,L)&&N[L][H]&&(N[L][H]=!1),F=h(F,{enumerable:u(0,!1)})):(g(N,L)||Ve(N,L,u(1,h(null))),N[L][H]=!0),Pr(N,H,F)):Ve(N,H,F)},$r=function(N,q){I(N);var F=C(q),H=v(F).concat(Zi(F));return oe(H,function(ge){(!o||t(Dr,F,ge))&&Ut(N,ge,F[ge])}),N},pa=function(N,q){return q===void 0?h(N):$r(h(N),q)},Dr=function(N){var q=l(N),F=t(ca,this,q);return this===le&&g(Se,q)&&!g(xt,q)?!1:F||!g(this,q)||!g(Se,q)||g(this,L)&&this[L][q]?F:!0},Wi=function(N,q){var F=C(N),H=l(q);if(!(F===le&&g(Se,H)&&!g(xt,H))){var ge=zi(F,H);return ge&&g(Se,H)&&!(g(F,L)&&F[L][H])&&(ge.enumerable=!0),ge}},Vi=function(N){var q=ji(C(N)),F=[];return oe(q,function(H){!g(Se,H)&&!g(R,H)&&Li(F,H)}),F},Zi=function(Z){var N=Z===le,q=ji(N?xt:C(Z)),F=[];return oe(q,function(H){g(Se,H)&&(!N||g(le,H))&&Li(F,Se[H])}),F};return s||(We=function(){if(A(Pt,this))throw new ha("Symbol is not a constructor");var N=!arguments.length||arguments[0]===void 0?void 0:d(arguments[0]),q=O(N),F=function(H){var ge=this===void 0?e:this;ge===le&&t(F,xt,H),g(ge,L)&&g(ge[L],q)&&(ge[L][q]=!1);var Hi=u(1,H);try{Pr(ge,q,Hi)}catch(Ui){if(!(Ui instanceof ua))throw Ui;Gi(ge,q,Hi)}};return o&&Rr&&Pr(le,q,{configurable:!0,set:F}),xr(q,N)},Pt=We[he],m(Pt,"toString",function(){return Rt(this).tag}),m(We,"withoutSetter",function(Z){return xr(O(Z),Z)}),S.f=Dr,y.f=Ut,E.f=$r,p.f=Wi,f.f=c.f=Vi,b.f=Zi,x.f=function(Z){return xr(P(Z),Z)},o&&(w(Pt,"description",{configurable:!0,get:function(){return Rt(this).description}}),i||m(le,"propertyIsEnumerable",Dr,{unsafe:!0}))),n({global:!0,constructor:!0,wrap:!0,forced:!s,sham:!s},{Symbol:We}),oe(v(fa),function(Z){V(Z)}),n({target:ae,stat:!0,forced:!s},{useSetter:function(){Rr=!0},useSimple:function(){Rr=!1}}),n({target:"Object",stat:!0,forced:!s,sham:!o},{create:pa,defineProperty:Ut,defineProperties:$r,getOwnPropertyDescriptor:Wi}),n({target:"Object",stat:!0,forced:!s},{getOwnPropertyNames:Vi}),M(),U(We,ae),R[L]=!0,c2}var M2={},Yl,q2;function KX(){if(q2)return Yl;q2=1;var n=Rs();return Yl=n&&!!Symbol.for&&!!Symbol.keyFor,Yl}var F2;function xre(){if(F2)return M2;F2=1;var n=ee(),e=gr(),t=ct(),r=yr(),i=$s(),o=KX(),s=i("string-to-symbol-registry"),a=i("symbol-to-string-registry");return n({target:"Symbol",stat:!0,forced:!o},{for:function(g){var A=r(g);if(t(s,A))return s[A];var I=e("Symbol")(A);return s[A]=I,a[I]=A,I}}),M2}var k2={},B2;function $re(){if(B2)return k2;B2=1;var n=ee(),e=ct(),t=Ig(),r=Ps(),i=$s(),o=KX(),s=i("symbol-to-string-registry");return n({target:"Symbol",stat:!0,forced:!o},{keyFor:function(g){if(!t(g))throw new TypeError(r(g)+" is not a symbol");if(e(s,g))return s[g]}}),k2}var z2={},Xl,j2;function Dre(){if(j2)return Xl;j2=1;var n=me(),e=go(),t=yt(),r=Ai(),i=yr(),o=n([].push);return Xl=function(s){if(t(s))return s;if(e(s)){for(var a=s.length,g=[],A=0;A<a;A++){var I=s[A];typeof I=="string"?o(g,I):(typeof I=="number"||r(I)==="Number"||r(I)==="String")&&o(g,i(I))}var C=g.length,l=!0;return function(d,u){if(l)return l=!1,u;if(e(this))return u;for(var h=0;h<C;h++)if(g[h]===d)return u}}},Xl}var L2;function YX(){if(L2)return z2;L2=1;var n=ee(),e=gr(),t=sI(),r=rr(),i=me(),o=ce(),s=yt(),a=Ig(),g=Ms(),A=Dre(),I=Rs(),C=String,l=e("JSON","stringify"),d=i(/./.exec),u=i("".charAt),h=i("".charCodeAt),v=i("".replace),f=i(1.1.toString),c=/[\uD800-\uDFFF]/g,b=/^[\uD800-\uDBFF]$/,p=/^[\uDC00-\uDFFF]$/,y=!I||o(function(){var w=e("Symbol")("stringify detection");return l([w])!=="[null]"||l({a:w})!=="{}"||l(Object(w))!=="{}"}),E=o(function(){return l("\uDF06\uD834")!=='"\\udf06\\ud834"'||l("\uDEAD")!=='"\\udead"'}),S=function(w,_){var T=g(arguments),R=A(_);if(!(!s(R)&&(w===void 0||a(w))))return T[1]=function(O,P){if(s(R)&&(P=r(R,this,C(O),P)),!a(P))return P},t(l,null,T)},m=function(w,_,T){var R=u(T,_-1),O=u(T,_+1);return d(b,w)&&!d(p,O)||d(p,w)&&!d(b,R)?"\\u"+f(h(w,0),16):w};return l&&n({target:"JSON",stat:!0,arity:3,forced:y||E},{stringify:function(_,T,R){var O=g(arguments),P=t(y?S:l,null,O);return E&&typeof P=="string"?v(P,c,m):P}}),z2}var G2={},W2;function Nre(){if(W2)return G2;W2=1;var n=ee(),e=Rs(),t=ce(),r=dI(),i=Ar(),o=!e||t(function(){r.f(1)});return n({target:"Object",stat:!0,forced:o},{getOwnPropertySymbols:function(a){var g=r.f;return g?g(i(a)):[]}}),G2}var V2;function XX(){return V2||(V2=1,Pre(),xre(),$re(),YX(),Nre()),h2}var Z2={},H2;function QX(){if(H2)return Z2;H2=1;var n=Ze();return n("asyncDispose"),Z2}var U2={},K2;function Mre(){if(K2)return U2;K2=1;var n=Ze();return n("asyncIterator"),U2}var Y2={},X2;function JX(){if(X2)return Y2;X2=1;var n=Ze();return n("dispose"),Y2}var Q2={},J2;function qre(){if(J2)return Q2;J2=1;var n=Ze();return n("hasInstance"),Q2}var ex={},tx;function Fre(){if(tx)return ex;tx=1;var n=Ze();return n("isConcatSpreadable"),ex}var rx={},ix;function eQ(){if(ix)return rx;ix=1;var n=Ze();return n("iterator"),rx}var nx={},ox;function kre(){if(ox)return nx;ox=1;var n=Ze();return n("match"),nx}var sx={},ax;function Bre(){if(ax)return sx;ax=1;var n=Ze();return n("matchAll"),sx}var gx={},Ax;function zre(){if(Ax)return gx;Ax=1;var n=Ze();return n("replace"),gx}var Ix={},Cx;function jre(){if(Cx)return Ix;Cx=1;var n=Ze();return n("search"),Ix}var lx={},dx;function Lre(){if(dx)return lx;dx=1;var n=Ze();return n("species"),lx}var ux={},hx;function Gre(){if(hx)return ux;hx=1;var n=Ze();return n("split"),ux}var cx={},fx;function tQ(){if(fx)return cx;fx=1;var n=Ze(),e=HX();return n("toPrimitive"),e(),cx}var px={},vx;function Wre(){if(vx)return px;vx=1;var n=gr(),e=Ze(),t=Ao();return e("toStringTag"),t(n("Symbol"),"Symbol"),px}var mx={},yx;function Vre(){if(yx)return mx;yx=1;var n=Ze();return n("unscopables"),mx}var bx={},wx;function Zre(){if(wx)return bx;wx=1;var n=Le(),e=Ao();return e(n.JSON,"JSON",!0),bx}var Ql,Ex;function Hre(){if(Ex)return Ql;Ex=1,ZX(),XX(),QX(),Mre(),JX(),qre(),Fre(),eQ(),kre(),Bre(),zre(),jre(),Lre(),Gre(),tQ(),Wre(),Vre(),Zre();var n=Ee();return Ql=n.Symbol,Ql}var Sx={},Jl,_x;function QO(){return _x||(_x=1,Jl=function(){}),Jl}var ed,Ox;function qs(){return Ox||(Ox=1,ed={}),ed}var td,Tx;function Ure(){if(Tx)return td;Tx=1;var n=nt(),e=ct(),t=Function.prototype,r=n&&Object.getOwnPropertyDescriptor,i=e(t,"name"),o=i&&(function(){}).name==="something",s=i&&(!n||n&&r(t,"name").configurable);return td={EXISTS:i,PROPER:o,CONFIGURABLE:s},td}var rd,Rx;function rQ(){if(Rx)return rd;Rx=1;var n=ce();return rd=!n(function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}),rd}var id,Px;function pI(){if(Px)return id;Px=1;var n=ct(),e=yt(),t=Ar(),r=hI(),i=rQ(),o=r("IE_PROTO"),s=Object,a=s.prototype;return id=i?s.getPrototypeOf:function(g){var A=t(g);if(n(A,o))return A[o];var I=A.constructor;return e(I)&&A instanceof I?I.prototype:A instanceof s?a:null},id}var nd,xx;function iQ(){if(xx)return nd;xx=1;var n=ce(),e=yt(),t=bt(),r=ug(),i=pI(),o=hg(),s=Ct(),a=xs(),g=s("iterator"),A=!1,I,C,l;[].keys&&(l=[].keys(),"next"in l?(C=i(i(l)),C!==Object.prototype&&(I=C)):A=!0);var d=!t(I)||n(function(){var u={};return I[g].call(u)!==u});return d?I={}:a&&(I=r(I)),e(I[g])||o(I,g,function(){return this}),nd={IteratorPrototype:I,BUGGY_SAFARI_ITERATORS:A},nd}var od,$x;function Kre(){if($x)return od;$x=1;var n=iQ().IteratorPrototype,e=ug(),t=gg(),r=Ao(),i=qs(),o=function(){return this};return od=function(s,a,g,A){var I=a+" Iterator";return s.prototype=e(n,{next:t(+!A,g)}),r(s,I,!1,!0),i[I]=o,s},od}var sd,Dx;function Yre(){if(Dx)return sd;Dx=1;var n=me(),e=Pi();return sd=function(t,r,i){try{return n(e(Object.getOwnPropertyDescriptor(t,r)[i]))}catch{}},sd}var ad,Nx;function Xre(){if(Nx)return ad;Nx=1;var n=bt();return ad=function(e){return n(e)||e===null},ad}var gd,Mx;function Qre(){if(Mx)return gd;Mx=1;var n=Xre(),e=String,t=TypeError;return gd=function(r){if(n(r))return r;throw new t("Can't set "+e(r)+" as a prototype")},gd}var Ad,qx;function Jre(){if(qx)return Ad;qx=1;var n=Yre(),e=bt(),t=Ri(),r=Qre();return Ad=Object.setPrototypeOf||("__proto__"in{}?(function(){var i=!1,o={},s;try{s=n(Object.prototype,"__proto__","set"),s(o,[]),i=o instanceof Array}catch{}return function(g,A){return t(g),r(A),e(g)&&(i?s(g,A):g.__proto__=A),g}})():void 0),Ad}var Id,Fx;function JO(){if(Fx)return Id;Fx=1;var n=ee(),e=rr(),t=xs(),r=Ure(),i=yt(),o=Kre(),s=pI(),a=Jre(),g=Ao(),A=Ds(),I=hg(),C=Ct(),l=qs(),d=iQ(),u=r.PROPER,h=r.CONFIGURABLE,v=d.IteratorPrototype,f=d.BUGGY_SAFARI_ITERATORS,c=C("iterator"),b="keys",p="values",y="entries",E=function(){return this};return Id=function(S,m,w,_,T,R,O){o(w,m,_);var P=function(ve){if(ve===T&&K)return K;if(!f&&ve&&ve in M)return M[ve];switch(ve){case b:return function(){return new w(this,ve)};case p:return function(){return new w(this,ve)};case y:return function(){return new w(this,ve)}}return function(){return new w(this)}},x=m+" Iterator",V=!1,M=S.prototype,U=M[c]||M["@@iterator"]||T&&M[T],K=!f&&U||P(T),oe=m==="Array"&&M.entries||U,L,ae,he;if(oe&&(L=s(oe.call(new S)),L!==Object.prototype&&L.next&&(!t&&s(L)!==v&&(a?a(L,v):i(L[c])||I(L,c,E)),g(L,x,!0,!0),t&&(l[x]=E))),u&&T===p&&U&&U.name!==p&&(!t&&h?A(M,"name",p):(V=!0,K=function(){return e(U,this)})),T)if(ae={values:P(p),keys:R?K:P(b),entries:P(y)},O)for(he in ae)(f||V||!(he in M))&&I(M,he,ae[he]);else n({target:m,proto:!0,forced:f||V},ae);return(!t||O)&&M[c]!==K&&I(M,c,K,{name:T}),l[m]=K,ae},Id}var Cd,kx;function eT(){return kx||(kx=1,Cd=function(n,e){return{value:n,done:e}}),Cd}var ld,Bx;function $i(){if(Bx)return ld;Bx=1;var n=Vr(),e=QO(),t=qs(),r=Io(),i=mr().f,o=JO(),s=eT(),a=xs(),g=nt(),A="Array Iterator",I=r.set,C=r.getterFor(A);ld=o(Array,"Array",function(d,u){I(this,{type:A,target:n(d),index:0,kind:u})},function(){var d=C(this),u=d.target,h=d.index++;if(!u||h>=u.length)return d.target=null,s(void 0,!0);switch(d.kind){case"keys":return s(h,!1);case"values":return s(u[h],!1)}return s([h,u[h]],!1)},"values");var l=t.Arguments=t.Array;if(e("keys"),e("values"),e("entries"),!a&&g&&l.name!=="values")try{i(l,"name",{value:"values"})}catch{}return ld}var dd,zx;function eie(){return zx||(zx=1,dd={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}),dd}var jx;function Di(){if(jx)return Sx;jx=1,$i();var n=eie(),e=Le(),t=Ao(),r=qs();for(var i in n)t(e[i],i),r[i]=r.Array;return Sx}var ud,Lx;function nQ(){if(Lx)return ud;Lx=1;var n=Hre();return Di(),ud=n,ud}var hd,Gx;function tie(){return Gx||(Gx=1,hd=nQ()),hd}var rie=tie(),iie=ne(rie),Wx={},Vx;function nie(){if(Vx)return Wx;Vx=1;var n=ee(),e=go(),t=VX(),r=bt(),i=lI(),o=xi(),s=Vr(),a=uI(),g=Ct(),A=dg(),I=Ms(),C=A("slice"),l=g("species"),d=Array,u=Math.max;return n({target:"Array",proto:!0,forced:!C},{slice:function(v,f){var c=s(this),b=o(c),p=i(v,b),y=i(f===void 0?b:f,b),E,S,m;if(e(c)&&(E=c.constructor,t(E)&&(E===d||e(E.prototype))?E=void 0:r(E)&&(E=E[l],E===null&&(E=void 0)),E===d||E===void 0))return I(c,p,y);for(S=new(E===void 0?d:E)(u(y-p,0)),m=0;p<y;p++,m++)p in c&&a(S,m,c[p]);return S.length=m,S}}),Wx}var cd,Zx;function oie(){if(Zx)return cd;Zx=1,nie();var n=ft();return cd=n("Array","slice"),cd}var fd,Hx;function sie(){if(Hx)return fd;Hx=1;var n=Je(),e=oie(),t=Array.prototype;return fd=function(r){var i=r.slice;return r===t||n(t,r)&&i===t.slice?e:i},fd}var pd,Ux;function aie(){if(Ux)return pd;Ux=1;var n=sie();return pd=n,pd}var vd,Kx;function gie(){return Kx||(Kx=1,vd=aie()),vd}var Aie=gie(),zr=ne(Aie),Yx={},md,Xx;function oQ(){if(Xx)return md;Xx=1;var n=gr(),e=me(),t=cI(),r=dI(),i=Ii(),o=e([].concat);return md=n("Reflect","ownKeys")||function(a){var g=t.f(i(a)),A=r.f;return A?o(g,A(a)):g},md}var Qx;function Iie(){if(Qx)return Yx;Qx=1;var n=ee(),e=oQ();return n({target:"Reflect",stat:!0},{ownKeys:e}),Yx}var yd,Jx;function Cie(){if(Jx)return yd;Jx=1,Iie();var n=Ee();return yd=n.Reflect.ownKeys,yd}var bd,e$;function lie(){if(e$)return bd;e$=1;var n=Cie();return bd=n,bd}var wd,t$;function die(){return t$||(t$=1,wd=lie()),wd}var uie=die(),hie=ne(uie),r$={},i$;function cie(){if(i$)return r$;i$=1;var n=ee(),e=go();return n({target:"Array",stat:!0},{isArray:e}),r$}var Ed,n$;function fie(){if(n$)return Ed;n$=1,cie();var n=Ee();return Ed=n.Array.isArray,Ed}var Sd,o$;function pie(){if(o$)return Sd;o$=1;var n=fie();return Sd=n,Sd}var _d,s$;function vie(){return s$||(s$=1,_d=pie()),_d}var mie=vie(),we=ne(mie),a$={},g$;function yie(){if(g$)return a$;g$=1;var n=ee(),e=pn().map,t=dg(),r=t("map");return n({target:"Array",proto:!0,forced:!r},{map:function(o){return e(this,o,arguments.length>1?arguments[1]:void 0)}}),a$}var Od,A$;function bie(){if(A$)return Od;A$=1,yie();var n=ft();return Od=n("Array","map"),Od}var Td,I$;function wie(){if(I$)return Td;I$=1;var n=Je(),e=bie(),t=Array.prototype;return Td=function(r){var i=r.map;return r===t||n(t,r)&&i===t.map?e:i},Td}var Rd,C$;function Eie(){if(C$)return Rd;C$=1;var n=wie();return Rd=n,Rd}var Pd,l$;function Sie(){return l$||(l$=1,Pd=Eie()),Pd}var _ie=Sie(),Mt=ne(_ie),d$={},u$;function Oie(){if(u$)return d$;u$=1;var n=ee(),e=Ar(),t=lg(),r=ce(),i=r(function(){t(1)});return n({target:"Object",stat:!0,forced:i},{keys:function(s){return t(e(s))}}),d$}var xd,h$;function Tie(){if(h$)return xd;h$=1,Oie();var n=Ee();return xd=n.Object.keys,xd}var $d,c$;function Rie(){if(c$)return $d;c$=1;var n=Tie();return $d=n,$d}var Dd,f$;function Pie(){return f$||(f$=1,Dd=Rie()),Dd}var xie=Pie(),Be=ne(xie),p$={},v$;function $ie(){if(v$)return p$;v$=1;var n=ee(),e=me(),t=Date,r=e(t.prototype.getTime);return n({target:"Date",stat:!0},{now:function(){return r(new t)}}),p$}var Nd,m$;function Die(){if(m$)return Nd;m$=1,$ie();var n=Ee();return Nd=n.Date.now,Nd}var Md,y$;function Nie(){if(y$)return Md;y$=1;var n=Die();return Md=n,Md}var qd,b$;function Mie(){return b$||(b$=1,qd=Nie()),qd}var qie=Mie(),MA=ne(qie),w$={},Fd,E$;function Fs(){if(E$)return Fd;E$=1;var n=ce();return Fd=function(e,t){var r=[][e];return!!r&&n(function(){r.call(null,t||function(){return 1},1)})},Fd}var kd,S$;function Fie(){if(S$)return kd;S$=1;var n=pn().forEach,e=Fs(),t=e("forEach");return kd=t?[].forEach:function(i){return n(this,i,arguments.length>1?arguments[1]:void 0)},kd}var _$;function kie(){if(_$)return w$;_$=1;var n=ee(),e=Fie();return n({target:"Array",proto:!0,forced:[].forEach!==e},{forEach:e}),w$}var Bd,O$;function Bie(){if(O$)return Bd;O$=1,kie();var n=ft();return Bd=n("Array","forEach"),Bd}var zd,T$;function zie(){if(T$)return zd;T$=1;var n=Bie();return zd=n,zd}var jd,R$;function jie(){if(R$)return jd;R$=1;var n=fn(),e=ct(),t=Je(),r=zie(),i=Array.prototype,o={DOMTokenList:!0,NodeList:!0};return jd=function(s){var a=s.forEach;return s===i||t(i,s)&&a===i.forEach||e(o,n(s))?r:a},jd}var Ld,P$;function Lie(){return P$||(P$=1,Ld=jie()),Ld}var Gie=Lie(),be=ne(Gie),x$={},$$;function Wie(){if($$)return x$;$$=1;var n=ee(),e=me(),t=go(),r=e([].reverse),i=[1,2];return n({target:"Array",proto:!0,forced:String(i)===String(i.reverse())},{reverse:function(){return t(this)&&(this.length=this.length),r(this)}}),x$}var Gd,D$;function Vie(){if(D$)return Gd;D$=1,Wie();var n=ft();return Gd=n("Array","reverse"),Gd}var Wd,N$;function Zie(){if(N$)return Wd;N$=1;var n=Je(),e=Vie(),t=Array.prototype;return Wd=function(r){var i=r.reverse;return r===t||n(t,r)&&i===t.reverse?e:i},Wd}var Vd,M$;function Hie(){if(M$)return Vd;M$=1;var n=Zie();return Vd=n,Vd}var Zd,q$;function Uie(){return q$||(q$=1,Zd=Hie()),Zd}var Kie=Uie(),zn=ne(Kie),F$={},Hd,k$;function Yie(){if(k$)return Hd;k$=1;var n=nt(),e=go(),t=TypeError,r=Object.getOwnPropertyDescriptor,i=n&&!(function(){if(this!==void 0)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(o){return o instanceof TypeError}})();return Hd=i?function(o,s){if(e(o)&&!r(o,"length").writable)throw new t("Cannot set read only .length");return o.length=s}:function(o,s){return o.length=s},Hd}var Ud,B$;function sQ(){if(B$)return Ud;B$=1;var n=Ps(),e=TypeError;return Ud=function(t,r){if(!delete t[r])throw new e("Cannot delete property "+n(r)+" of "+n(t))},Ud}var z$;function Xie(){if(z$)return F$;z$=1;var n=ee(),e=Ar(),t=lI(),r=Ns(),i=xi(),o=Yie(),s=WX(),a=UO(),g=uI(),A=sQ(),I=dg(),C=I("splice"),l=Math.max,d=Math.min;return n({target:"Array",proto:!0,forced:!C},{splice:function(h,v){var f=e(this),c=i(f),b=t(h,c),p=arguments.length,y,E,S,m,w,_;for(p===0?y=E=0:p===1?(y=0,E=c-b):(y=p-2,E=d(l(r(v),0),c-b)),s(c+y-E),S=a(f,E),m=0;m<E;m++)w=b+m,w in f&&g(S,m,f[w]);if(S.length=E,y<E){for(m=b;m<c-E;m++)w=m+E,_=m+y,w in f?f[_]=f[w]:A(f,_);for(m=c;m>c-E+y;m--)A(f,m-1)}else if(y>E)for(m=c-E;m>b;m--)w=m+E-1,_=m+y-1,w in f?f[_]=f[w]:A(f,_);for(m=0;m<y;m++)f[m+b]=arguments[m+2];return o(f,c-E+y),S}}),F$}var Kd,j$;function Qie(){if(j$)return Kd;j$=1,Xie();var n=ft();return Kd=n("Array","splice"),Kd}var Yd,L$;function Jie(){if(L$)return Yd;L$=1;var n=Je(),e=Qie(),t=Array.prototype;return Yd=function(r){var i=r.splice;return r===t||n(t,r)&&i===t.splice?e:i},Yd}var Xd,G$;function ene(){if(G$)return Xd;G$=1;var n=Jie();return Xd=n,Xd}var Qd,W$;function tne(){return W$||(W$=1,Qd=ene()),Qd}var rne=tne(),ti=ne(rne),V$={},Z$;function ine(){if(Z$)return V$;Z$=1;var n=ee(),e=WO().includes,t=ce(),r=QO(),i=t(function(){return!Array(1).includes()});return n({target:"Array",proto:!0,forced:i},{includes:function(s){return e(this,s,arguments.length>1?arguments[1]:void 0)}}),r("includes"),V$}var Jd,H$;function nne(){if(H$)return Jd;H$=1,ine();var n=ft();return Jd=n("Array","includes"),Jd}var U$={},eu,K$;function one(){if(K$)return eu;K$=1;var n=bt(),e=Ai(),t=Ct(),r=t("match");return eu=function(i){var o;return n(i)&&((o=i[r])!==void 0?!!o:e(i)==="RegExp")},eu}var tu,Y$;function sne(){if(Y$)return tu;Y$=1;var n=one(),e=TypeError;return tu=function(t){if(n(t))throw new e("The method doesn't accept regular expressions");return t},tu}var ru,X$;function ane(){if(X$)return ru;X$=1;var n=Ct(),e=n("match");return ru=function(t){var r=/./;try{"/./"[t](r)}catch{try{return r[e]=!1,"/./"[t](r)}catch{}}return!1},ru}var Q$;function gne(){if(Q$)return U$;Q$=1;var n=ee(),e=me(),t=sne(),r=Ri(),i=yr(),o=ane(),s=e("".indexOf);return n({target:"String",proto:!0,forced:!o("includes")},{includes:function(g){return!!~s(i(r(this)),i(t(g)),arguments.length>1?arguments[1]:void 0)}}),U$}var iu,J$;function Ane(){if(J$)return iu;J$=1,gne();var n=ft();return iu=n("String","includes"),iu}var nu,eD;function Ine(){if(eD)return nu;eD=1;var n=Je(),e=nne(),t=Ane(),r=Array.prototype,i=String.prototype;return nu=function(o){var s=o.includes;return o===r||n(r,o)&&s===r.includes?e:typeof o=="string"||o===i||n(i,o)&&s===i.includes?t:s},nu}var ou,tD;function Cne(){if(tD)return ou;tD=1;var n=Ine();return ou=n,ou}var su,rD;function lne(){return rD||(rD=1,su=Cne()),su}var dne=lne(),rn=ne(dne),iD={},nD;function une(){if(nD)return iD;nD=1;var n=ee(),e=ce(),t=Ar(),r=pI(),i=rQ(),o=e(function(){r(1)});return n({target:"Object",stat:!0,forced:o,sham:!i},{getPrototypeOf:function(a){return r(t(a))}}),iD}var au,oD;function hne(){if(oD)return au;oD=1,une();var n=Ee();return au=n.Object.getPrototypeOf,au}var gu,sD;function cne(){if(sD)return gu;sD=1;var n=hne();return gu=n,gu}var Au,aD;function fne(){return aD||(aD=1,Au=cne()),Au}var pne=fne(),gD=ne(pne),Iu,AD;function vne(){if(AD)return Iu;AD=1,ZX();var n=ft();return Iu=n("Array","concat"),Iu}var Cu,ID;function mne(){if(ID)return Cu;ID=1;var n=Je(),e=vne(),t=Array.prototype;return Cu=function(r){var i=r.concat;return r===t||n(t,r)&&i===t.concat?e:i},Cu}var lu,CD;function yne(){if(CD)return lu;CD=1;var n=mne();return lu=n,lu}var du,lD;function bne(){return lD||(lD=1,du=yne()),du}var wne=bne(),aQ=ne(wne),dD={},uD;function Ene(){if(uD)return dD;uD=1;var n=ee(),e=pn().filter,t=dg(),r=t("filter");return n({target:"Array",proto:!0,forced:!r},{filter:function(o){return e(this,o,arguments.length>1?arguments[1]:void 0)}}),dD}var uu,hD;function Sne(){if(hD)return uu;hD=1,Ene();var n=ft();return uu=n("Array","filter"),uu}var hu,cD;function _ne(){if(cD)return hu;cD=1;var n=Je(),e=Sne(),t=Array.prototype;return hu=function(r){var i=r.filter;return r===t||n(t,r)&&i===t.filter?e:i},hu}var cu,fD;function One(){if(fD)return cu;fD=1;var n=_ne();return cu=n,cu}var fu,pD;function Tne(){return pD||(pD=1,fu=One()),fu}var Rne=Tne(),st=ne(Rne),vD={},pu,mD;function Pne(){if(mD)return pu;mD=1;var n=nt(),e=ce(),t=me(),r=pI(),i=lg(),o=Vr(),s=aI().f,a=t(s),g=t([].push),A=n&&e(function(){var C=Object.create(null);return C[2]=2,!a(C,2)}),I=function(C){return function(l){for(var d=o(l),u=i(d),h=A&&r(d)===null,v=u.length,f=0,c=[],b;v>f;)b=u[f++],(!n||(h?b in d:a(d,b)))&&g(c,C?[b,d[b]]:d[b]);return c}};return pu={entries:I(!0),values:I(!1)},pu}var yD;function xne(){if(yD)return vD;yD=1;var n=ee(),e=Pne().values;return n({target:"Object",stat:!0},{values:function(r){return e(r)}}),vD}var vu,bD;function $ne(){if(bD)return vu;bD=1,xne();var n=Ee();return vu=n.Object.values,vu}var mu,wD;function Dne(){if(wD)return mu;wD=1;var n=$ne();return mu=n,mu}var yu,ED;function Nne(){return ED||(ED=1,yu=Dne()),yu}var Mne=Nne(),qne=ne(Mne),SD={},bu,_D;function tT(){return _D||(_D=1,bu=`
|
||
\v\f\r \u2028\u2029\uFEFF`),bu}var wu,OD;function gQ(){if(OD)return wu;OD=1;var n=me(),e=Ri(),t=yr(),r=tT(),i=n("".replace),o=RegExp("^["+r+"]+"),s=RegExp("(^|[^"+r+"])["+r+"]+$"),a=function(g){return function(A){var I=t(e(A));return g&1&&(I=i(I,o,"")),g&2&&(I=i(I,s,"$1")),I}};return wu={start:a(1),end:a(2),trim:a(3)},wu}var Eu,TD;function Fne(){if(TD)return Eu;TD=1;var n=Le(),e=ce(),t=me(),r=yr(),i=gQ().trim,o=tT(),s=n.parseInt,a=n.Symbol,g=a&&a.iterator,A=/^[+-]?0x/i,I=t(A.exec),C=s(o+"08")!==8||s(o+"0x16")!==22||g&&!e(function(){s(Object(g))});return Eu=C?function(d,u){var h=i(r(d));return s(h,u>>>0||(I(A,h)?16:10))}:s,Eu}var RD;function kne(){if(RD)return SD;RD=1;var n=ee(),e=Fne();return n({global:!0,forced:parseInt!==e},{parseInt:e}),SD}var Su,PD;function Bne(){if(PD)return Su;PD=1,kne();var n=Ee();return Su=n.parseInt,Su}var _u,xD;function zne(){if(xD)return _u;xD=1;var n=Bne();return _u=n,_u}var Ou,$D;function jne(){return $D||($D=1,Ou=zne()),Ou}var Lne=jne(),Fr=ne(Lne),DD={},ND;function Gne(){if(ND)return DD;ND=1;var n=ee(),e=zO(),t=WO().indexOf,r=Fs(),i=e([].indexOf),o=!!i&&1/i([1],1,-0)<0,s=o||!r("indexOf");return n({target:"Array",proto:!0,forced:s},{indexOf:function(g){var A=arguments.length>1?arguments[1]:void 0;return o?i(this,g,A)||0:t(this,g,A)}}),DD}var Tu,MD;function Wne(){if(MD)return Tu;MD=1,Gne();var n=ft();return Tu=n("Array","indexOf"),Tu}var Ru,qD;function Vne(){if(qD)return Ru;qD=1;var n=Je(),e=Wne(),t=Array.prototype;return Ru=function(r){var i=r.indexOf;return r===t||n(t,r)&&i===t.indexOf?e:i},Ru}var Pu,FD;function Zne(){if(FD)return Pu;FD=1;var n=Vne();return Pu=n,Pu}var xu,kD;function Hne(){return kD||(kD=1,xu=Zne()),xu}var Une=Hne(),_e=ne(Une),BD={},zD;function Kne(){if(zD)return BD;zD=1;var n=ee(),e=nt(),t=ug();return n({target:"Object",stat:!0,sham:!e},{create:t}),BD}var $u,jD;function Yne(){if(jD)return $u;jD=1,Kne();var n=Ee(),e=n.Object;return $u=function(r,i){return e.create(r,i)},$u}var Du,LD;function Xne(){if(LD)return Du;LD=1;var n=Yne();return Du=n,Du}var Nu,GD;function Qne(){return GD||(GD=1,Nu=Xne()),Nu}var Jne=Qne(),nn=ne(Jne),WD={},Mu,VD;function eoe(){if(VD)return Mu;VD=1;var n=Ns(),e=yr(),t=Ri(),r=RangeError;return Mu=function(o){var s=e(t(this)),a="",g=n(o);if(g<0||g===1/0)throw new r("Wrong number of repetitions");for(;g>0;(g>>>=1)&&(s+=s))g&1&&(a+=s);return a},Mu}var qu,ZD;function toe(){if(ZD)return qu;ZD=1;var n=me(),e=kX(),t=yr(),r=eoe(),i=Ri(),o=n(r),s=n("".slice),a=Math.ceil,g=function(A){return function(I,C,l){var d=t(i(I)),u=e(C),h=d.length,v=l===void 0?" ":t(l),f,c;return u<=h||v===""?d:(f=u-h,c=o(v,a(f/v.length)),c.length>f&&(c=s(c,0,f)),A?d+c:c+d)}};return qu={start:g(!1),end:g(!0)},qu}var Fu,HD;function roe(){if(HD)return Fu;HD=1;var n=me(),e=ce(),t=toe().start,r=RangeError,i=isFinite,o=Math.abs,s=Date.prototype,a=s.toISOString,g=n(s.getTime),A=n(s.getUTCDate),I=n(s.getUTCFullYear),C=n(s.getUTCHours),l=n(s.getUTCMilliseconds),d=n(s.getUTCMinutes),u=n(s.getUTCMonth),h=n(s.getUTCSeconds);return Fu=e(function(){return a.call(new Date(-5e13-1))!=="0385-07-25T07:06:39.999Z"})||!e(function(){a.call(new Date(NaN))})?function(){if(!i(g(this)))throw new r("Invalid time value");var f=this,c=I(f),b=l(f),p=c<0?"-":c>9999?"+":"";return p+t(o(c),p?6:4,0)+"-"+t(u(f)+1,2,0)+"-"+t(A(f),2,0)+"T"+t(C(f),2,0)+":"+t(d(f),2,0)+":"+t(h(f),2,0)+"."+t(b,3,0)+"Z"}:a,Fu}var UD;function ioe(){if(UD)return WD;UD=1;var n=ee(),e=rr(),t=Ar(),r=NX(),i=roe(),o=Ai(),s=ce(),a=s(function(){return new Date(NaN).toJSON()!==null||e(Date.prototype.toJSON,{toISOString:function(){return 1}})!==1});return n({target:"Date",proto:!0,forced:a},{toJSON:function(A){var I=t(this),C=r(I,"number");return typeof C=="number"&&!isFinite(C)?null:!("toISOString"in I)&&o(I)==="Date"?e(i,I):I.toISOString()}}),WD}var ku,KD;function noe(){if(KD)return ku;KD=1,ioe(),YX();var n=Ee(),e=sI();return n.JSON||(n.JSON={stringify:JSON.stringify}),ku=function(r,i,o){return e(n.JSON.stringify,null,arguments)},ku}var Bu,YD;function ooe(){if(YD)return Bu;YD=1;var n=noe();return Bu=n,Bu}var zu,XD;function soe(){return XD||(XD=1,zu=ooe()),zu}var aoe=soe(),ks=ne(aoe),QD={},JD={},ju,eN;function AQ(){if(eN)return ju;eN=1;var n=Le(),e=Ts(),t=Ai(),r=function(i){return e.slice(0,i.length)===i};return ju=(function(){return r("Bun/")?"BUN":r("Cloudflare-Workers")?"CLOUDFLARE":r("Deno/")?"DENO":r("Node.js/")?"NODE":n.Bun&&typeof Bun.version=="string"?"BUN":n.Deno&&typeof Deno.version=="object"?"DENO":t(n.process)==="process"?"NODE":n.window&&n.document?"BROWSER":"REST"})(),ju}var Lu,tN;function goe(){if(tN)return Lu;tN=1;var n=TypeError;return Lu=function(e,t){if(e<t)throw new n("Not enough arguments");return e},Lu}var Gu,rN;function IQ(){if(rN)return Gu;rN=1;var n=Le(),e=sI(),t=yt(),r=AQ(),i=Ts(),o=Ms(),s=goe(),a=n.Function,g=/MSIE .\./.test(i)||r==="BUN"&&(function(){var A=n.Bun.version.split(".");return A.length<3||A[0]==="0"&&(A[1]<3||A[1]==="3"&&A[2]==="0")})();return Gu=function(A,I){var C=I?2:1;return g?function(l,d){var u=s(arguments.length,1)>C,h=t(l)?l:a(l),v=u?o(arguments,C):[],f=u?function(){e(h,this,v)}:h;return I?A(f,d):A(f)}:A},Gu}var iN;function Aoe(){if(iN)return JD;iN=1;var n=ee(),e=Le(),t=IQ(),r=t(e.setInterval,!0);return n({global:!0,bind:!0,forced:e.setInterval!==r},{setInterval:r}),JD}var nN={},oN;function Ioe(){if(oN)return nN;oN=1;var n=ee(),e=Le(),t=IQ(),r=t(e.setTimeout,!0);return n({global:!0,bind:!0,forced:e.setTimeout!==r},{setTimeout:r}),nN}var sN;function CQ(){return sN||(sN=1,Aoe(),Ioe()),QD}var Wu,aN;function Coe(){if(aN)return Wu;aN=1,CQ();var n=Ee();return Wu=n.setTimeout,Wu}var Vu,gN;function loe(){return gN||(gN=1,Vu=Coe()),Vu}var doe=loe(),ri=ne(doe),AN={},Zu,IN;function uoe(){if(IN)return Zu;IN=1;var n=Ar(),e=lI(),t=xi();return Zu=function(i){for(var o=n(this),s=t(o),a=arguments.length,g=e(a>1?arguments[1]:void 0,s),A=a>2?arguments[2]:void 0,I=A===void 0?s:e(A,s);I>g;)o[g++]=i;return o},Zu}var CN;function hoe(){if(CN)return AN;CN=1;var n=ee(),e=uoe(),t=QO();return n({target:"Array",proto:!0},{fill:e}),t("fill"),AN}var Hu,lN;function coe(){if(lN)return Hu;lN=1,hoe();var n=ft();return Hu=n("Array","fill"),Hu}var Uu,dN;function foe(){if(dN)return Uu;dN=1;var n=Je(),e=coe(),t=Array.prototype;return Uu=function(r){var i=r.fill;return r===t||n(t,r)&&i===t.fill?e:i},Uu}var Ku,uN;function poe(){if(uN)return Ku;uN=1;var n=foe();return Ku=n,Ku}var Yu,hN;function voe(){return hN||(hN=1,Yu=poe()),Yu}var moe=voe(),cg=ne(moe);/*! 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 Lr(){return Lr=Object.assign||function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Lr.apply(this,arguments)}function br(n,e){n.prototype=Object.create(e.prototype),n.prototype.constructor=n,n.__proto__=e}function CA(n){if(n===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return n}var aO;typeof Object.assign!="function"?aO=function(e){if(e==null)throw new TypeError("Cannot convert undefined or null to object");for(var t=Object(e),r=1;r<arguments.length;r++){var i=arguments[r];if(i!=null)for(var o in i)i.hasOwnProperty(o)&&(t[o]=i[o])}return t}:aO=Object.assign;var Kn=aO,cN=["","webkit","Moz","MS","ms","o"],yoe=typeof document>"u"?{style:{}}:document.createElement("div"),boe="function",Vo=Math.round,Yn=Math.abs,rT=Date.now;function vI(n,e){for(var t,r,i=e[0].toUpperCase()+e.slice(1),o=0;o<cN.length;){if(t=cN[o],r=t?t+i:e,r in n)return r;o++}}var fi;typeof window>"u"?fi={}:fi=window;var lQ=vI(yoe.style,"touchAction"),dQ=lQ!==void 0;function woe(){if(!dQ)return!1;var n={},e=fi.CSS&&fi.CSS.supports;return["auto","manipulation","pan-y","pan-x","pan-x pan-y","none"].forEach(function(t){return n[t]=e?fi.CSS.supports("touch-action",t):!0}),n}var uQ="compute",hQ="auto",gO="manipulation",jn="none",Ga="pan-x",Wa="pan-y",lA=woe(),Eoe=/mobile|tablet|ip(ad|hone|od)|android/i,cQ="ontouchstart"in fi,Soe=vI(fi,"PointerEvent")!==void 0,_oe=cQ&&Eoe.test(navigator.userAgent),fg="touch",Ooe="pen",iT="mouse",Toe="kinect",Roe=25,Wt=1,Co=2,at=4,Jt=8,qA=1,pg=2,vg=4,mg=8,Is=16,ii=pg|vg,Ln=mg|Is,fQ=ii|Ln,pQ=["x","y"],FA=["clientX","clientY"];function pi(n,e,t){var r;if(n)if(n.forEach)n.forEach(e,t);else if(n.length!==void 0)for(r=0;r<n.length;)e.call(t,n[r],r,n),r++;else for(r in n)n.hasOwnProperty(r)&&e.call(t,n[r],r,n)}function mI(n,e){return typeof n===boe?n.apply(e&&e[0]||void 0,e):n}function Dn(n,e){return n.indexOf(e)>-1}function Poe(n){if(Dn(n,jn))return jn;var e=Dn(n,Ga),t=Dn(n,Wa);return e&&t?jn:e||t?e?Ga:Wa:Dn(n,gO)?gO:hQ}var vQ=(function(){function n(t,r){this.manager=t,this.set(r)}var e=n.prototype;return e.set=function(r){r===uQ&&(r=this.compute()),dQ&&this.manager.element.style&&lA[r]&&(this.manager.element.style[lQ]=r),this.actions=r.toLowerCase().trim()},e.update=function(){this.set(this.manager.options.touchAction)},e.compute=function(){var r=[];return pi(this.manager.recognizers,function(i){mI(i.options.enable,[i])&&(r=r.concat(i.getTouchAction()))}),Poe(r.join(" "))},e.preventDefaults=function(r){var i=r.srcEvent,o=r.offsetDirection;if(this.manager.session.prevented){i.preventDefault();return}var s=this.actions,a=Dn(s,jn)&&!lA[jn],g=Dn(s,Wa)&&!lA[Wa],A=Dn(s,Ga)&&!lA[Ga];if(a){var I=r.pointers.length===1,C=r.distance<2,l=r.deltaTime<250;if(I&&C&&l)return}if(!(A&&g)&&(a||g&&o&ii||A&&o&Ln))return this.preventSrc(i)},e.preventSrc=function(r){this.manager.session.prevented=!0,r.preventDefault()},n})();function nT(n,e){for(;n;){if(n===e)return!0;n=n.parentNode}return!1}function mQ(n){var e=n.length;if(e===1)return{x:Vo(n[0].clientX),y:Vo(n[0].clientY)};for(var t=0,r=0,i=0;i<e;)t+=n[i].clientX,r+=n[i].clientY,i++;return{x:Vo(t/e),y:Vo(r/e)}}function fN(n){for(var e=[],t=0;t<n.pointers.length;)e[t]={clientX:Vo(n.pointers[t].clientX),clientY:Vo(n.pointers[t].clientY)},t++;return{timeStamp:rT(),pointers:e,center:mQ(e),deltaX:n.deltaX,deltaY:n.deltaY}}function kA(n,e,t){t||(t=pQ);var r=e[t[0]]-n[t[0]],i=e[t[1]]-n[t[1]];return Math.sqrt(r*r+i*i)}function AO(n,e,t){t||(t=pQ);var r=e[t[0]]-n[t[0]],i=e[t[1]]-n[t[1]];return Math.atan2(i,r)*180/Math.PI}function yQ(n,e){return n===e?qA:Yn(n)>=Yn(e)?n<0?pg:vg:e<0?mg:Is}function xoe(n,e){var t=e.center,r=n.offsetDelta||{},i=n.prevDelta||{},o=n.prevInput||{};(e.eventType===Wt||o.eventType===at)&&(i=n.prevDelta={x:o.deltaX||0,y:o.deltaY||0},r=n.offsetDelta={x:t.x,y:t.y}),e.deltaX=i.x+(t.x-r.x),e.deltaY=i.y+(t.y-r.y)}function bQ(n,e,t){return{x:e/n||0,y:t/n||0}}function $oe(n,e){return kA(e[0],e[1],FA)/kA(n[0],n[1],FA)}function Doe(n,e){return AO(e[1],e[0],FA)+AO(n[1],n[0],FA)}function Noe(n,e){var t=n.lastInterval||e,r=e.timeStamp-t.timeStamp,i,o,s,a;if(e.eventType!==Jt&&(r>Roe||t.velocity===void 0)){var g=e.deltaX-t.deltaX,A=e.deltaY-t.deltaY,I=bQ(r,g,A);o=I.x,s=I.y,i=Yn(I.x)>Yn(I.y)?I.x:I.y,a=yQ(g,A),n.lastInterval=e}else i=t.velocity,o=t.velocityX,s=t.velocityY,a=t.direction;e.velocity=i,e.velocityX=o,e.velocityY=s,e.direction=a}function Moe(n,e){var t=n.session,r=e.pointers,i=r.length;t.firstInput||(t.firstInput=fN(e)),i>1&&!t.firstMultiple?t.firstMultiple=fN(e):i===1&&(t.firstMultiple=!1);var o=t.firstInput,s=t.firstMultiple,a=s?s.center:o.center,g=e.center=mQ(r);e.timeStamp=rT(),e.deltaTime=e.timeStamp-o.timeStamp,e.angle=AO(a,g),e.distance=kA(a,g),xoe(t,e),e.offsetDirection=yQ(e.deltaX,e.deltaY);var A=bQ(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=A.x,e.overallVelocityY=A.y,e.overallVelocity=Yn(A.x)>Yn(A.y)?A.x:A.y,e.scale=s?$oe(s.pointers,r):1,e.rotation=s?Doe(s.pointers,r):0,e.maxPointers=t.prevInput?e.pointers.length>t.prevInput.maxPointers?e.pointers.length:t.prevInput.maxPointers:e.pointers.length,Noe(t,e);var I=n.element,C=e.srcEvent,l;C.composedPath?l=C.composedPath()[0]:C.path?l=C.path[0]:l=C.target,nT(l,I)&&(I=l),e.target=I}function qoe(n,e,t){var r=t.pointers.length,i=t.changedPointers.length,o=e&Wt&&r-i===0,s=e&(at|Jt)&&r-i===0;t.isFirst=!!o,t.isFinal=!!s,o&&(n.session={}),t.eventType=e,Moe(n,t),n.emit("hammer.input",t),n.recognize(t),n.session.prevInput=t}function Va(n){return n.trim().split(/\s+/g)}function xa(n,e,t){pi(Va(e),function(r){n.addEventListener(r,t,!1)})}function $a(n,e,t){pi(Va(e),function(r){n.removeEventListener(r,t,!1)})}function pN(n){var e=n.ownerDocument||n;return e.defaultView||e.parentWindow||window}var Bs=(function(){function n(t,r){var i=this;this.manager=t,this.callback=r,this.element=t.element,this.target=t.options.inputTarget,this.domHandler=function(o){mI(t.options.enable,[t])&&i.handler(o)},this.init()}var e=n.prototype;return e.handler=function(){},e.init=function(){this.evEl&&xa(this.element,this.evEl,this.domHandler),this.evTarget&&xa(this.target,this.evTarget,this.domHandler),this.evWin&&xa(pN(this.element),this.evWin,this.domHandler)},e.destroy=function(){this.evEl&&$a(this.element,this.evEl,this.domHandler),this.evTarget&&$a(this.target,this.evTarget,this.domHandler),this.evWin&&$a(pN(this.element),this.evWin,this.domHandler)},n})();function Xn(n,e,t){if(n.indexOf&&!t)return n.indexOf(e);for(var r=0;r<n.length;){if(t&&n[r][t]==e||!t&&n[r]===e)return r;r++}return-1}var Foe={pointerdown:Wt,pointermove:Co,pointerup:at,pointercancel:Jt,pointerout:Jt},koe={2:fg,3:Ooe,4:iT,5:Toe},wQ="pointerdown",EQ="pointermove pointerup pointercancel";fi.MSPointerEvent&&!fi.PointerEvent&&(wQ="MSPointerDown",EQ="MSPointerMove MSPointerUp MSPointerCancel");var SQ=(function(n){br(e,n);function e(){var r,i=e.prototype;return i.evEl=wQ,i.evWin=EQ,r=n.apply(this,arguments)||this,r.store=r.manager.session.pointerEvents=[],r}var t=e.prototype;return t.handler=function(i){var o=this.store,s=!1,a=i.type.toLowerCase().replace("ms",""),g=Foe[a],A=koe[i.pointerType]||i.pointerType,I=A===fg,C=Xn(o,i.pointerId,"pointerId");g&Wt&&(i.button===0||I)?C<0&&(o.push(i),C=o.length-1):g&(at|Jt)&&(s=!0),!(C<0)&&(o[C]=i,this.callback(this.manager,g,{pointers:o,changedPointers:[i],pointerType:A,srcEvent:i}),s&&o.splice(C,1))},e})(Bs);function Za(n){return Array.prototype.slice.call(n,0)}function oT(n,e,t){for(var r=[],i=[],o=0;o<n.length;){var s=e?n[o][e]:n[o];Xn(i,s)<0&&r.push(n[o]),i[o]=s,o++}return t&&(e?r=r.sort(function(a,g){return a[e]>g[e]}):r=r.sort()),r}var Boe={touchstart:Wt,touchmove:Co,touchend:at,touchcancel:Jt},zoe="touchstart touchmove touchend touchcancel",sT=(function(n){br(e,n);function e(){var r;return e.prototype.evTarget=zoe,r=n.apply(this,arguments)||this,r.targetIds={},r}var t=e.prototype;return t.handler=function(i){var o=Boe[i.type],s=joe.call(this,i,o);s&&this.callback(this.manager,o,{pointers:s[0],changedPointers:s[1],pointerType:fg,srcEvent:i})},e})(Bs);function joe(n,e){var t=Za(n.touches),r=this.targetIds;if(e&(Wt|Co)&&t.length===1)return r[t[0].identifier]=!0,[t,t];var i,o,s=Za(n.changedTouches),a=[],g=this.target;if(o=t.filter(function(A){return nT(A.target,g)}),e===Wt)for(i=0;i<o.length;)r[o[i].identifier]=!0,i++;for(i=0;i<s.length;)r[s[i].identifier]&&a.push(s[i]),e&(at|Jt)&&delete r[s[i].identifier],i++;if(a.length)return[oT(o.concat(a),"identifier",!0),a]}var Loe={mousedown:Wt,mousemove:Co,mouseup:at},Goe="mousedown",Woe="mousemove mouseup",aT=(function(n){br(e,n);function e(){var r,i=e.prototype;return i.evEl=Goe,i.evWin=Woe,r=n.apply(this,arguments)||this,r.pressed=!1,r}var t=e.prototype;return t.handler=function(i){var o=Loe[i.type];o&Wt&&i.button===0&&(this.pressed=!0),o&Co&&i.which!==1&&(o=at),this.pressed&&(o&at&&(this.pressed=!1),this.callback(this.manager,o,{pointers:[i],changedPointers:[i],pointerType:iT,srcEvent:i}))},e})(Bs),Voe=2500,vN=25;function mN(n){var e=n.changedPointers,t=e[0];if(t.identifier===this.primaryTouch){var r={x:t.clientX,y:t.clientY},i=this.lastTouches;this.lastTouches.push(r);var o=function(){var a=i.indexOf(r);a>-1&&i.splice(a,1)};setTimeout(o,Voe)}}function Zoe(n,e){n&Wt?(this.primaryTouch=e.changedPointers[0].identifier,mN.call(this,e)):n&(at|Jt)&&mN.call(this,e)}function Hoe(n){for(var e=n.srcEvent.clientX,t=n.srcEvent.clientY,r=0;r<this.lastTouches.length;r++){var i=this.lastTouches[r],o=Math.abs(e-i.x),s=Math.abs(t-i.y);if(o<=vN&&s<=vN)return!0}return!1}var _Q=(function(){var n=(function(e){br(t,e);function t(i,o){var s;return s=e.call(this,i,o)||this,s.handler=function(a,g,A){var I=A.pointerType===fg,C=A.pointerType===iT;if(!(C&&A.sourceCapabilities&&A.sourceCapabilities.firesTouchEvents)){if(I)Zoe.call(CA(CA(s)),g,A);else if(C&&Hoe.call(CA(CA(s)),A))return;s.callback(a,g,A)}},s.touch=new sT(s.manager,s.handler),s.mouse=new aT(s.manager,s.handler),s.primaryTouch=null,s.lastTouches=[],s}var r=t.prototype;return r.destroy=function(){this.touch.destroy(),this.mouse.destroy()},t})(Bs);return n})();function Uoe(n){var e,t=n.options.inputClass;return t?e=t:Soe?e=SQ:_oe?e=sT:cQ?e=_Q:e=aT,new e(n,qoe)}function Zo(n,e,t){return Array.isArray(n)?(pi(n,t[e],t),!0):!1}var EA=1,fr=2,Cs=4,on=8,vi=on,Ha=16,Yr=32,Koe=1;function Yoe(){return Koe++}function dA(n,e){var t=e.manager;return t?t.get(n):n}function yN(n){return n&Ha?"cancel":n&on?"end":n&Cs?"move":n&fr?"start":""}var yg=(function(){function n(t){t===void 0&&(t={}),this.options=Lr({enable:!0},t),this.id=Yoe(),this.manager=null,this.state=EA,this.simultaneous={},this.requireFail=[]}var e=n.prototype;return e.set=function(r){return Kn(this.options,r),this.manager&&this.manager.touchAction.update(),this},e.recognizeWith=function(r){if(Zo(r,"recognizeWith",this))return this;var i=this.simultaneous;return r=dA(r,this),i[r.id]||(i[r.id]=r,r.recognizeWith(this)),this},e.dropRecognizeWith=function(r){return Zo(r,"dropRecognizeWith",this)?this:(r=dA(r,this),delete this.simultaneous[r.id],this)},e.requireFailure=function(r){if(Zo(r,"requireFailure",this))return this;var i=this.requireFail;return r=dA(r,this),Xn(i,r)===-1&&(i.push(r),r.requireFailure(this)),this},e.dropRequireFailure=function(r){if(Zo(r,"dropRequireFailure",this))return this;r=dA(r,this);var i=Xn(this.requireFail,r);return i>-1&&this.requireFail.splice(i,1),this},e.hasRequireFailures=function(){return this.requireFail.length>0},e.canRecognizeWith=function(r){return!!this.simultaneous[r.id]},e.emit=function(r){var i=this,o=this.state;function s(a){i.manager.emit(a,r)}o<on&&s(i.options.event+yN(o)),s(i.options.event),r.additionalEvent&&s(r.additionalEvent),o>=on&&s(i.options.event+yN(o))},e.tryEmit=function(r){if(this.canEmit())return this.emit(r);this.state=Yr},e.canEmit=function(){for(var r=0;r<this.requireFail.length;){if(!(this.requireFail[r].state&(Yr|EA)))return!1;r++}return!0},e.recognize=function(r){var i=Kn({},r);if(!mI(this.options.enable,[this,i])){this.reset(),this.state=Yr;return}this.state&(vi|Ha|Yr)&&(this.state=EA),this.state=this.process(i),this.state&(fr|Cs|on|Ha)&&this.tryEmit(i)},e.process=function(r){},e.getTouchAction=function(){},e.reset=function(){},n})(),IO=(function(n){br(e,n);function e(r){var i;return r===void 0&&(r={}),i=n.call(this,Lr({event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},r))||this,i.pTime=!1,i.pCenter=!1,i._timer=null,i._input=null,i.count=0,i}var t=e.prototype;return t.getTouchAction=function(){return[gO]},t.process=function(i){var o=this,s=this.options,a=i.pointers.length===s.pointers,g=i.distance<s.threshold,A=i.deltaTime<s.time;if(this.reset(),i.eventType&Wt&&this.count===0)return this.failTimeout();if(g&&A&&a){if(i.eventType!==at)return this.failTimeout();var I=this.pTime?i.timeStamp-this.pTime<s.interval:!0,C=!this.pCenter||kA(this.pCenter,i.center)<s.posThreshold;this.pTime=i.timeStamp,this.pCenter=i.center,!C||!I?this.count=1:this.count+=1,this._input=i;var l=this.count%s.taps;if(l===0)return this.hasRequireFailures()?(this._timer=setTimeout(function(){o.state=vi,o.tryEmit()},s.interval),fr):vi}return Yr},t.failTimeout=function(){var i=this;return this._timer=setTimeout(function(){i.state=Yr},this.options.interval),Yr},t.reset=function(){clearTimeout(this._timer)},t.emit=function(){this.state===vi&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))},e})(yg),ls=(function(n){br(e,n);function e(r){return r===void 0&&(r={}),n.call(this,Lr({pointers:1},r))||this}var t=e.prototype;return t.attrTest=function(i){var o=this.options.pointers;return o===0||i.pointers.length===o},t.process=function(i){var o=this.state,s=i.eventType,a=o&(fr|Cs),g=this.attrTest(i);return a&&(s&Jt||!g)?o|Ha:a||g?s&at?o|on:o&fr?o|Cs:fr:Yr},e})(yg);function OQ(n){return n===Is?"down":n===mg?"up":n===pg?"left":n===vg?"right":""}var gT=(function(n){br(e,n);function e(r){var i;return r===void 0&&(r={}),i=n.call(this,Lr({event:"pan",threshold:10,pointers:1,direction:fQ},r))||this,i.pX=null,i.pY=null,i}var t=e.prototype;return t.getTouchAction=function(){var i=this.options.direction,o=[];return i&ii&&o.push(Wa),i&Ln&&o.push(Ga),o},t.directionTest=function(i){var o=this.options,s=!0,a=i.distance,g=i.direction,A=i.deltaX,I=i.deltaY;return g&o.direction||(o.direction&ii?(g=A===0?qA:A<0?pg:vg,s=A!==this.pX,a=Math.abs(i.deltaX)):(g=I===0?qA:I<0?mg:Is,s=I!==this.pY,a=Math.abs(i.deltaY))),i.direction=g,s&&a>o.threshold&&g&o.direction},t.attrTest=function(i){return ls.prototype.attrTest.call(this,i)&&(this.state&fr||!(this.state&fr)&&this.directionTest(i))},t.emit=function(i){this.pX=i.deltaX,this.pY=i.deltaY;var o=OQ(i.direction);o&&(i.additionalEvent=this.options.event+o),n.prototype.emit.call(this,i)},e})(ls),TQ=(function(n){br(e,n);function e(r){return r===void 0&&(r={}),n.call(this,Lr({event:"swipe",threshold:10,velocity:.3,direction:ii|Ln,pointers:1},r))||this}var t=e.prototype;return t.getTouchAction=function(){return gT.prototype.getTouchAction.call(this)},t.attrTest=function(i){var o=this.options.direction,s;return o&(ii|Ln)?s=i.overallVelocity:o&ii?s=i.overallVelocityX:o&Ln&&(s=i.overallVelocityY),n.prototype.attrTest.call(this,i)&&o&i.offsetDirection&&i.distance>this.options.threshold&&i.maxPointers===this.options.pointers&&Yn(s)>this.options.velocity&&i.eventType&at},t.emit=function(i){var o=OQ(i.offsetDirection);o&&this.manager.emit(this.options.event+o,i),this.manager.emit(this.options.event,i)},e})(ls),RQ=(function(n){br(e,n);function e(r){return r===void 0&&(r={}),n.call(this,Lr({event:"pinch",threshold:0,pointers:2},r))||this}var t=e.prototype;return t.getTouchAction=function(){return[jn]},t.attrTest=function(i){return n.prototype.attrTest.call(this,i)&&(Math.abs(i.scale-1)>this.options.threshold||this.state&fr)},t.emit=function(i){if(i.scale!==1){var o=i.scale<1?"in":"out";i.additionalEvent=this.options.event+o}n.prototype.emit.call(this,i)},e})(ls),PQ=(function(n){br(e,n);function e(r){return r===void 0&&(r={}),n.call(this,Lr({event:"rotate",threshold:0,pointers:2},r))||this}var t=e.prototype;return t.getTouchAction=function(){return[jn]},t.attrTest=function(i){return n.prototype.attrTest.call(this,i)&&(Math.abs(i.rotation)>this.options.threshold||this.state&fr)},e})(ls),xQ=(function(n){br(e,n);function e(r){var i;return r===void 0&&(r={}),i=n.call(this,Lr({event:"press",pointers:1,time:251,threshold:9},r))||this,i._timer=null,i._input=null,i}var t=e.prototype;return t.getTouchAction=function(){return[hQ]},t.process=function(i){var o=this,s=this.options,a=i.pointers.length===s.pointers,g=i.distance<s.threshold,A=i.deltaTime>s.time;if(this._input=i,!g||!a||i.eventType&(at|Jt)&&!A)this.reset();else if(i.eventType&Wt)this.reset(),this._timer=setTimeout(function(){o.state=vi,o.tryEmit()},s.time);else if(i.eventType&at)return vi;return Yr},t.reset=function(){clearTimeout(this._timer)},t.emit=function(i){this.state===vi&&(i&&i.eventType&at?this.manager.emit(this.options.event+"up",i):(this._input.timeStamp=rT(),this.manager.emit(this.options.event,this._input)))},e})(yg),$Q={domEvents:!1,touchAction:uQ,enable:!0,inputTarget:null,inputClass:null,cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},bN=[[PQ,{enable:!1}],[RQ,{enable:!1},["rotate"]],[TQ,{direction:ii}],[gT,{direction:ii},["swipe"]],[IO],[IO,{event:"doubletap",taps:2},["tap"]],[xQ]],Xoe=1,wN=2;function EN(n,e){var t=n.element;if(t.style){var r;pi(n.options.cssProps,function(i,o){r=vI(t.style,o),e?(n.oldCssProps[r]=t.style[r],t.style[r]=i):t.style[r]=n.oldCssProps[r]||""}),e||(n.oldCssProps={})}}function Qoe(n,e){var t=document.createEvent("Event");t.initEvent(n,!0,!0),t.gesture=e,e.target.dispatchEvent(t)}var SN=(function(){function n(t,r){var i=this;this.options=Kn({},$Q,r||{}),this.options.inputTarget=this.options.inputTarget||t,this.handlers={},this.session={},this.recognizers=[],this.oldCssProps={},this.element=t,this.input=Uoe(this),this.touchAction=new vQ(this,this.options.touchAction),EN(this,!0),pi(this.options.recognizers,function(o){var s=i.add(new o[0](o[1]));o[2]&&s.recognizeWith(o[2]),o[3]&&s.requireFailure(o[3])},this)}var e=n.prototype;return e.set=function(r){return Kn(this.options,r),r.touchAction&&this.touchAction.update(),r.inputTarget&&(this.input.destroy(),this.input.target=r.inputTarget,this.input.init()),this},e.stop=function(r){this.session.stopped=r?wN:Xoe},e.recognize=function(r){var i=this.session;if(!i.stopped){this.touchAction.preventDefaults(r);var o,s=this.recognizers,a=i.curRecognizer;(!a||a&&a.state&vi)&&(i.curRecognizer=null,a=null);for(var g=0;g<s.length;)o=s[g],i.stopped!==wN&&(!a||o===a||o.canRecognizeWith(a))?o.recognize(r):o.reset(),!a&&o.state&(fr|Cs|on)&&(i.curRecognizer=o,a=o),g++}},e.get=function(r){if(r instanceof yg)return r;for(var i=this.recognizers,o=0;o<i.length;o++)if(i[o].options.event===r)return i[o];return null},e.add=function(r){if(Zo(r,"add",this))return this;var i=this.get(r.options.event);return i&&this.remove(i),this.recognizers.push(r),r.manager=this,this.touchAction.update(),r},e.remove=function(r){if(Zo(r,"remove",this))return this;var i=this.get(r);if(r){var o=this.recognizers,s=Xn(o,i);s!==-1&&(o.splice(s,1),this.touchAction.update())}return this},e.on=function(r,i){if(r===void 0||i===void 0)return this;var o=this.handlers;return pi(Va(r),function(s){o[s]=o[s]||[],o[s].push(i)}),this},e.off=function(r,i){if(r===void 0)return this;var o=this.handlers;return pi(Va(r),function(s){i?o[s]&&o[s].splice(Xn(o[s],i),1):delete o[s]}),this},e.emit=function(r,i){this.options.domEvents&&Qoe(r,i);var o=this.handlers[r]&&this.handlers[r].slice();if(!(!o||!o.length)){i.type=r,i.preventDefault=function(){i.srcEvent.preventDefault()};for(var s=0;s<o.length;)o[s](i),s++}},e.destroy=function(){this.element&&EN(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null},n})(),Joe={touchstart:Wt,touchmove:Co,touchend:at,touchcancel:Jt},ese="touchstart",tse="touchstart touchmove touchend touchcancel",rse=(function(n){br(e,n);function e(){var r,i=e.prototype;return i.evTarget=ese,i.evWin=tse,r=n.apply(this,arguments)||this,r.started=!1,r}var t=e.prototype;return t.handler=function(i){var o=Joe[i.type];if(o===Wt&&(this.started=!0),!!this.started){var s=ise.call(this,i,o);o&(at|Jt)&&s[0].length-s[1].length===0&&(this.started=!1),this.callback(this.manager,o,{pointers:s[0],changedPointers:s[1],pointerType:fg,srcEvent:i})}},e})(Bs);function ise(n,e){var t=Za(n.touches),r=Za(n.changedTouches);return e&(at|Jt)&&(t=oT(t.concat(r),"identifier",!0)),[t,r]}function DQ(n,e,t){var r="DEPRECATED METHOD: "+e+`
|
||
`+t+` AT
|
||
`;return function(){var i=new Error("get-stack-trace"),o=i&&i.stack?i.stack.replace(/^[^\(]+?[\n$]/gm,"").replace(/^\s+at\s+/gm,"").replace(/^Object.<anonymous>\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",s=window.console&&(window.console.warn||window.console.log);return s&&s.call(window.console,r,o),n.apply(this,arguments)}}var NQ=DQ(function(n,e,t){for(var r=Object.keys(e),i=0;i<r.length;)(!t||t&&n[r[i]]===void 0)&&(n[r[i]]=e[r[i]]),i++;return n},"extend","Use `assign`."),nse=DQ(function(n,e){return NQ(n,e,!0)},"merge","Use `assign`.");function ose(n,e,t){var r=e.prototype,i;i=n.prototype=Object.create(r),i.constructor=n,i._super=r,t&&Kn(i,t)}function _N(n,e){return function(){return n.apply(e,arguments)}}var MQ=(function(){var n=function(t,r){return r===void 0&&(r={}),new SN(t,Lr({recognizers:bN.concat()},r))};return n.VERSION="2.0.17-rc",n.DIRECTION_ALL=fQ,n.DIRECTION_DOWN=Is,n.DIRECTION_LEFT=pg,n.DIRECTION_RIGHT=vg,n.DIRECTION_UP=mg,n.DIRECTION_HORIZONTAL=ii,n.DIRECTION_VERTICAL=Ln,n.DIRECTION_NONE=qA,n.DIRECTION_DOWN=Is,n.INPUT_START=Wt,n.INPUT_MOVE=Co,n.INPUT_END=at,n.INPUT_CANCEL=Jt,n.STATE_POSSIBLE=EA,n.STATE_BEGAN=fr,n.STATE_CHANGED=Cs,n.STATE_ENDED=on,n.STATE_RECOGNIZED=vi,n.STATE_CANCELLED=Ha,n.STATE_FAILED=Yr,n.Manager=SN,n.Input=Bs,n.TouchAction=vQ,n.TouchInput=sT,n.MouseInput=aT,n.PointerEventInput=SQ,n.TouchMouseInput=_Q,n.SingleTouchInput=rse,n.Recognizer=yg,n.AttrRecognizer=ls,n.Tap=IO,n.Pan=gT,n.Swipe=TQ,n.Pinch=RQ,n.Rotate=PQ,n.Press=xQ,n.on=xa,n.off=$a,n.each=pi,n.merge=nse,n.extend=NQ,n.bindFn=_N,n.assign=Kn,n.inherit=ose,n.bindFn=_N,n.prefixed=vI,n.toArray=Za,n.inArray=Xn,n.uniqueArray=oT,n.splitStr=Va,n.boolOrFn=mI,n.hasParent=nT,n.addEventListeners=xa,n.removeEventListeners=$a,n.defaults=Kn({},$Q,{preset:bN}),n})();MQ.defaults;const qQ=iie("DELETE");function sse(n){for(var e=arguments.length,t=new Array(e>1?e-1:0),r=1;r<e;r++)t[r-1]=arguments[r];return FQ({},n,...t)}function FQ(){const n=BA(...arguments);return BQ(n),n}function BA(){for(var n=arguments.length,e=new Array(n),t=0;t<n;t++)e[t]=arguments[t];if(e.length<2)return e[0];if(e.length>2)return BA(FQ(e[0],e[1]),...zr(e).call(e,2));const r=e[0],i=e[1];if(r instanceof Date&&i instanceof Date)return r.setTime(i.getTime()),r;for(const o of hie(i))Object.prototype.propertyIsEnumerable.call(i,o)&&(i[o]===qQ?delete r[o]:r[o]!==null&&i[o]!==null&&typeof r[o]=="object"&&typeof i[o]=="object"&&!we(r[o])&&!we(i[o])?r[o]=BA(r[o],i[o]):r[o]=kQ(i[o]));return r}function kQ(n){return we(n)?Mt(n).call(n,e=>kQ(e)):typeof n=="object"&&n!==null?n instanceof Date?new Date(n.getTime()):BA({},n):n}function BQ(n){for(const e of Be(n))n[e]===qQ?delete n[e]:typeof n[e]=="object"&&n[e]!==null&&BQ(n[e])}function yI(){for(var n=arguments.length,e=new Array(n),t=0;t<n;t++)e[t]=arguments[t];return ase(e.length?e:[MA()])}function ase(n){let[e,t,r]=gse(n),i=1;const o=()=>{const s=2091639*e+i*23283064365386963e-26;return e=t,t=r,r=s-(i=s|0)};return o.uint32=()=>o()*4294967296,o.fract53=()=>o()+(o()*2097152|0)*11102230246251565e-32,o.algorithm="Alea",o.seed=n,o.version="0.9",o}function gse(){const n=Ase();let e=n(" "),t=n(" "),r=n(" ");for(let i=0;i<arguments.length;i++)e-=n(i<0||arguments.length<=i?void 0:arguments[i]),e<0&&(e+=1),t-=n(i<0||arguments.length<=i?void 0:arguments[i]),t<0&&(t+=1),r-=n(i<0||arguments.length<=i?void 0:arguments[i]),r<0&&(r+=1);return[e,t,r]}function Ase(){let n=4022871197;return function(e){const t=e.toString();for(let r=0;r<t.length;r++){n+=t.charCodeAt(r);let i=.02519603282416938*n;n=i>>>0,i-=n,i*=n,n=i>>>0,i-=n,n+=i*4294967296}return(n>>>0)*23283064365386963e-26}}function Ise(){const n=()=>{};return{on:n,off:n,destroy:n,emit:n,get(){return{set:n}}}}const AT=typeof window<"u"?window.Hammer||MQ:function(){return Ise()};function Xr(n){var e;this._cleanupQueue=[],this.active=!1,this._dom={container:n,overlay:document.createElement("div")},this._dom.overlay.classList.add("vis-overlay"),this._dom.container.appendChild(this._dom.overlay),this._cleanupQueue.push(()=>{this._dom.overlay.parentNode.removeChild(this._dom.overlay)});const t=AT(this._dom.overlay);t.on("tap",z(e=this._onTapOverlay).call(e,this)),this._cleanupQueue.push(()=>{t.destroy()});const r=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];be(r).call(r,i=>{t.on(i,o=>{o.srcEvent.stopPropagation()})}),document&&document.body&&(this._onClick=i=>{Cse(i.target,n)||this.deactivate()},document.body.addEventListener("click",this._onClick),this._cleanupQueue.push(()=>{document.body.removeEventListener("click",this._onClick)})),this._escListener=i=>{("key"in i?i.key==="Escape":i.keyCode===27)&&this.deactivate()}}GX(Xr.prototype);Xr.current=null;Xr.prototype.destroy=function(){this.deactivate();for(const t of zn(n=ti(e=this._cleanupQueue).call(e,0)).call(n)){var n,e;t()}};Xr.prototype.activate=function(){Xr.current&&Xr.current.deactivate(),Xr.current=this,this.active=!0,this._dom.overlay.style.display="none",this._dom.container.classList.add("vis-active"),this.emit("change"),this.emit("activate"),document.body.addEventListener("keydown",this._escListener)};Xr.prototype.deactivate=function(){this.active=!1,this._dom.overlay.style.display="block",this._dom.container.classList.remove("vis-active"),document.body.removeEventListener("keydown",this._escListener),this.emit("change"),this.emit("deactivate")};Xr.prototype._onTapOverlay=function(n){this.activate(),n.srcEvent.stopPropagation()};function Cse(n,e){for(;n;){if(n===e)return!0;n=n.parentNode}return!1}const lse=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i,dse=/^#?([a-f\d])([a-f\d])([a-f\d])$/i,use=/^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,hse=/^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 Ki(n){if(n)for(;n.hasChildNodes()===!0;){const e=n.firstChild;e&&(Ki(e),n.removeChild(e))}}function ts(n){return n instanceof String||typeof n=="string"}function ON(n){return typeof n=="object"&&n!==null}function Qn(n,e,t,r){let i=!1;r===!0&&(i=e[t]===null&&n[t]!==void 0),i?delete n[t]:n[t]=e[t]}function zQ(n,e){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;for(const r in n)if(e[r]!==void 0)if(e[r]===null||typeof e[r]!="object")Qn(n,e,r,t);else{const i=n[r],o=e[r];ON(i)&&ON(o)&&zQ(i,o,t)}}function zs(n,e,t){let r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(we(t))throw new TypeError("Arrays are not supported by deepExtend");for(let i=0;i<n.length;i++){const o=n[i];if(Object.prototype.hasOwnProperty.call(t,o))if(t[o]&&t[o].constructor===Object)e[o]===void 0&&(e[o]={}),e[o].constructor===Object?Me(e[o],t[o],!1,r):Qn(e,t,o,r);else{if(we(t[o]))throw new TypeError("Arrays are not supported by deepExtend");Qn(e,t,o,r)}}return e}function zA(n,e,t){let r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(we(t))throw new TypeError("Arrays are not supported by deepExtend");for(const i in t)if(Object.prototype.hasOwnProperty.call(t,i)&&!rn(n).call(n,i))if(t[i]&&t[i].constructor===Object)e[i]===void 0&&(e[i]={}),e[i].constructor===Object?Me(e[i],t[i]):Qn(e,t,i,r);else if(we(t[i])){e[i]=[];for(let o=0;o<t[i].length;o++)e[i].push(t[i][o])}else Qn(e,t,i,r);return e}function Me(n,e){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;for(const o in e)if(Object.prototype.hasOwnProperty.call(e,o)||t===!0)if(typeof e[o]=="object"&&e[o]!==null&&gD(e[o])===Object.prototype)n[o]===void 0?n[o]=Me({},e[o],t):typeof n[o]=="object"&&n[o]!==null&&gD(n[o])===Object.prototype?Me(n[o],e[o],t):Qn(n,e,o,r);else if(we(e[o])){var i;n[o]=zr(i=e[o]).call(i)}else Qn(n,e,o,r);return n}function jA(n,e){return[...n,e]}function cse(n){return zr(n).call(n)}function fse(n){return n.getBoundingClientRect().left}function pse(n){return n.getBoundingClientRect().top}function de(n,e){if(we(n)){const t=n.length;for(let r=0;r<t;r++)e(n[r],r,n)}else for(const t in n)Object.prototype.hasOwnProperty.call(n,t)&&e(n[t],t,n)}function IT(n){let e;switch(n.length){case 3:case 4:return e=dse.exec(n),e?{r:Fr(e[1]+e[1],16),g:Fr(e[2]+e[2],16),b:Fr(e[3]+e[3],16)}:null;case 6:case 7:return e=lse.exec(n),e?{r:Fr(e[1],16),g:Fr(e[2],16),b:Fr(e[3],16)}:null;default:return null}}function hr(n,e){if(rn(n).call(n,"rgba"))return n;if(rn(n).call(n,"rgb")){const t=n.substr(_e(n).call(n,"(")+1).replace(")","").split(",");return"rgba("+t[0]+","+t[1]+","+t[2]+","+e+")"}else{const t=IT(n);return t==null?n:"rgba("+t.r+","+t.g+","+t.b+","+e+")"}}function jQ(n,e,t){var r;return"#"+zr(r=((1<<24)+(n<<16)+(e<<8)+t).toString(16)).call(r,1)}function CO(n,e){if(ts(n)){let r=n;if(GQ(r)){var t;const i=Mt(t=r.substr(4).substr(0,r.length-5).split(",")).call(t,function(o){return Fr(o)});r=jQ(i[0],i[1],i[2])}if(LQ(r)===!0){const i=vse(r),o={h:i.h,s:i.s*.8,v:Math.min(1,i.v*1.02)},s={h:i.h,s:Math.min(1,i.s*1.25),v:i.v*.8},a=lO(s.h,s.s,s.v),g=lO(o.h,o.s,o.v);return{background:r,border:a,highlight:{background:g,border:a},hover:{background:g,border:a}}}else return{background:r,border:r,highlight:{background:r,border:r},hover:{background:r,border:r}}}else return{background:n.background||void 0,border:n.border||void 0,highlight:ts(n.highlight)?{border:n.highlight,background:n.highlight}:{background:n.highlight&&n.highlight.background||void 0,border:n.highlight&&n.highlight.border||void 0},hover:ts(n.hover)?{border:n.hover,background:n.hover}:{border:n.hover&&n.hover.border||void 0,background:n.hover&&n.hover.background||void 0}}}function _a(n,e,t){n=n/255,e=e/255,t=t/255;const r=Math.min(n,Math.min(e,t)),i=Math.max(n,Math.max(e,t));if(r===i)return{h:0,s:0,v:r};const o=n===r?e-t:t===r?n-e:t-n,a=60*((n===r?3:t===r?1:5)-o/(i-r))/360,g=(i-r)/i;return{h:a,s:g,v:i}}function SA(n,e,t){let r,i,o;const s=Math.floor(n*6),a=n*6-s,g=t*(1-e),A=t*(1-a*e),I=t*(1-(1-a)*e);switch(s%6){case 0:r=t,i=I,o=g;break;case 1:r=A,i=t,o=g;break;case 2:r=g,i=t,o=I;break;case 3:r=g,i=A,o=t;break;case 4:r=I,i=g,o=t;break;case 5:r=t,i=g,o=A;break}return{r:Math.floor(r*255),g:Math.floor(i*255),b:Math.floor(o*255)}}function lO(n,e,t){const r=SA(n,e,t);return jQ(r.r,r.g,r.b)}function vse(n){const e=IT(n);if(!e)throw new TypeError("'".concat(n,"' is not a valid color."));return _a(e.r,e.g,e.b)}function LQ(n){return/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(n)}function GQ(n){return use.test(n)}function mse(n){return hse.test(n)}function sn(n){if(n===null||typeof n!="object")return null;if(n instanceof Element)return n;const e=nn(n);for(const t in n)Object.prototype.hasOwnProperty.call(n,t)&&typeof n[t]=="object"&&(e[t]=sn(n[t]));return e}function dr(n,e,t){let r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};const i=function(d){return d!=null},o=function(d){return d!==null&&typeof d=="object"},s=function(d){for(const u in d)if(Object.prototype.hasOwnProperty.call(d,u))return!1;return!0};if(!o(n))throw new Error("Parameter mergeTarget must be an object");if(!o(e))throw new Error("Parameter options must be an object");if(!i(t))throw new Error("Parameter option must have a value");if(!o(r))throw new Error("Parameter globalOptions must be an object");const a=function(d,u,h){o(d[h])||(d[h]={});const v=u[h],f=d[h];for(const c in v)Object.prototype.hasOwnProperty.call(v,c)&&(f[c]=v[c])},g=e[t],I=o(r)&&!s(r)?r[t]:void 0,C=I?I.enabled:void 0;if(g===void 0)return;if(typeof g=="boolean"){o(n[t])||(n[t]={}),n[t].enabled=g;return}if(g===null&&!o(n[t]))if(i(I))n[t]=nn(I);else return;if(!o(g))return;let l=!0;g.enabled!==void 0?l=g.enabled:C!==void 0&&(l=I.enabled),a(n,e,t),n[t].enabled=l}const yse={linear(n){return n},easeInQuad(n){return n*n},easeOutQuad(n){return n*(2-n)},easeInOutQuad(n){return n<.5?2*n*n:-1+(4-2*n)*n},easeInCubic(n){return n*n*n},easeOutCubic(n){return--n*n*n+1},easeInOutCubic(n){return n<.5?4*n*n*n:(n-1)*(2*n-2)*(2*n-2)+1},easeInQuart(n){return n*n*n*n},easeOutQuart(n){return 1- --n*n*n*n},easeInOutQuart(n){return n<.5?8*n*n*n*n:1-8*--n*n*n*n},easeInQuint(n){return n*n*n*n*n},easeOutQuint(n){return 1+--n*n*n*n*n},easeInOutQuint(n){return n<.5?16*n*n*n*n*n:1+16*--n*n*n*n*n}};function Yi(n,e){let t;we(e)||(e=[e]);for(const r of n)if(r){t=r[e[0]];for(let i=1;i<e.length;i++)t&&(t=t[e[i]]);if(typeof t<"u")break}return t}const bse={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"};let wse=class{constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:1;this.pixelRatio=e,this.generated=!1,this.centerCoordinates={x:289/2,y:289/2},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=()=>{},this.closeCallback=()=>{},this._create()}insertTo(e){this.hammer!==void 0&&(this.hammer.destroy(),this.hammer=void 0),this.container=e,this.container.appendChild(this.frame),this._bindHammer(),this._setSize()}setUpdateCallback(e){if(typeof e=="function")this.updateCallback=e;else throw new Error("Function attempted to set as colorPicker update callback is not a function.")}setCloseCallback(e){if(typeof e=="function")this.closeCallback=e;else throw new Error("Function attempted to set as colorPicker closing callback is not a function.")}_isColorString(e){if(typeof e=="string")return bse[e]}setColor(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(e==="none")return;let r;const i=this._isColorString(e);if(i!==void 0&&(e=i),ts(e)===!0){if(GQ(e)===!0){const o=e.substr(4).substr(0,e.length-5).split(",");r={r:o[0],g:o[1],b:o[2],a:1}}else if(mse(e)===!0){const o=e.substr(5).substr(0,e.length-6).split(",");r={r:o[0],g:o[1],b:o[2],a:o[3]}}else if(LQ(e)===!0){const o=IT(e);r={r:o.r,g:o.g,b:o.b,a:1}}}else if(e instanceof Object&&e.r!==void 0&&e.g!==void 0&&e.b!==void 0){const o=e.a!==void 0?e.a:"1.0";r={r:e.r,g:e.g,b:e.b,a:o}}if(r===void 0)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: "+ks(e));this._setColor(r,t)}show(){this.closeCallback!==void 0&&(this.closeCallback(),this.closeCallback=void 0),this.applied=!1,this.frame.style.display="block",this._generateHueCircle()}_hide(){(arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0)===!0&&(this.previousColor=tt({},this.color)),this.applied===!0&&this.updateCallback(this.initialColor),this.frame.style.display="none",ri(()=>{this.closeCallback!==void 0&&(this.closeCallback(),this.closeCallback=void 0)},0)}_save(){this.updateCallback(this.color),this.applied=!1,this._hide()}_apply(){this.applied=!0,this.updateCallback(this.color),this._updatePicker(this.color)}_loadLast(){this.previousColor!==void 0?this.setColor(this.previousColor,!1):alert("There is no last color to load...")}_setColor(e){(arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0)===!0&&(this.initialColor=tt({},e)),this.color=e;const r=_a(e.r,e.g,e.b),i=2*Math.PI,o=this.r*r.s,s=this.centerCoordinates.x+o*Math.sin(i*r.h),a=this.centerCoordinates.y+o*Math.cos(i*r.h);this.colorPickerSelector.style.left=s-.5*this.colorPickerSelector.clientWidth+"px",this.colorPickerSelector.style.top=a-.5*this.colorPickerSelector.clientHeight+"px",this._updatePicker(e)}_setOpacity(e){this.color.a=e/100,this._updatePicker(this.color)}_setBrightness(e){const t=_a(this.color.r,this.color.g,this.color.b);t.v=e/100;const r=SA(t.h,t.s,t.v);r.a=this.color.a,this.color=r,this._updatePicker()}_updatePicker(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.color;const t=_a(e.r,e.g,e.b),r=this.colorPickerCanvas.getContext("2d");this.pixelRation===void 0&&(this.pixelRatio=(window.devicePixelRatio||1)/(r.webkitBackingStorePixelRatio||r.mozBackingStorePixelRatio||r.msBackingStorePixelRatio||r.oBackingStorePixelRatio||r.backingStorePixelRatio||1)),r.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);const i=this.colorPickerCanvas.clientWidth,o=this.colorPickerCanvas.clientHeight;r.clearRect(0,0,i,o),r.putImageData(this.hueCircle,0,0),r.fillStyle="rgba(0,0,0,"+(1-t.v)+")",r.circle(this.centerCoordinates.x,this.centerCoordinates.y,this.r),cg(r).call(r),this.brightnessRange.value=100*t.v,this.opacityRange.value=100*e.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+")"}_setSize(){this.colorPickerCanvas.style.width="100%",this.colorPickerCanvas.style.height="100%",this.colorPickerCanvas.width=289*this.pixelRatio,this.colorPickerCanvas.height=289*this.pixelRatio}_create(){var e,t,r,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){const s=this.colorPickerCanvas.getContext("2d");this.pixelRatio=(window.devicePixelRatio||1)/(s.webkitBackingStorePixelRatio||s.mozBackingStorePixelRatio||s.msBackingStorePixelRatio||s.oBackingStorePixelRatio||s.backingStorePixelRatio||1),this.colorPickerCanvas.getContext("2d").setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}else{const s=document.createElement("DIV");s.style.color="red",s.style.fontWeight="bold",s.style.padding="10px",s.innerText="Error: your browser does not support HTML canvas",this.colorPickerCanvas.appendChild(s)}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{}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{}this.brightnessRange.value="100",this.brightnessRange.className="vis-range",this.opacityDiv.appendChild(this.opacityRange),this.brightnessDiv.appendChild(this.brightnessRange);const o=this;this.opacityRange.onchange=function(){o._setOpacity(this.value)},this.opacityRange.oninput=function(){o._setOpacity(this.value)},this.brightnessRange.onchange=function(){o._setBrightness(this.value)},this.brightnessRange.oninput=function(){o._setBrightness(this.value)},this.brightnessLabel=document.createElement("div"),this.brightnessLabel.className="vis-label vis-brightness",this.brightnessLabel.innerText="brightness:",this.opacityLabel=document.createElement("div"),this.opacityLabel.className="vis-label vis-opacity",this.opacityLabel.innerText="opacity:",this.newColorDiv=document.createElement("div"),this.newColorDiv.className="vis-new-color",this.newColorDiv.innerText="new",this.initialColorDiv=document.createElement("div"),this.initialColorDiv.className="vis-initial-color",this.initialColorDiv.innerText="initial",this.cancelButton=document.createElement("div"),this.cancelButton.className="vis-button vis-cancel",this.cancelButton.innerText="cancel",this.cancelButton.onclick=z(e=this._hide).call(e,this,!1),this.applyButton=document.createElement("div"),this.applyButton.className="vis-button vis-apply",this.applyButton.innerText="apply",this.applyButton.onclick=z(t=this._apply).call(t,this),this.saveButton=document.createElement("div"),this.saveButton.className="vis-button vis-save",this.saveButton.innerText="save",this.saveButton.onclick=z(r=this._save).call(r,this),this.loadButton=document.createElement("div"),this.loadButton.className="vis-button vis-load",this.loadButton.innerText="load last",this.loadButton.onclick=z(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)}_bindHammer(){this.drag={},this.pinch={},this.hammer=new AT(this.colorPickerCanvas),this.hammer.get("pinch").set({enable:!0}),this.hammer.on("hammer.input",e=>{e.isFirst&&this._moveSelector(e)}),this.hammer.on("tap",e=>{this._moveSelector(e)}),this.hammer.on("panstart",e=>{this._moveSelector(e)}),this.hammer.on("panmove",e=>{this._moveSelector(e)}),this.hammer.on("panend",e=>{this._moveSelector(e)})}_generateHueCircle(){if(this.generated===!1){const e=this.colorPickerCanvas.getContext("2d");this.pixelRation===void 0&&(this.pixelRatio=(window.devicePixelRatio||1)/(e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1)),e.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);const t=this.colorPickerCanvas.clientWidth,r=this.colorPickerCanvas.clientHeight;e.clearRect(0,0,t,r);let i,o,s,a;this.centerCoordinates={x:t*.5,y:r*.5},this.r=.49*t;const g=2*Math.PI/360,A=1/360,I=1/this.r;let C;for(s=0;s<360;s++)for(a=0;a<this.r;a++)i=this.centerCoordinates.x+a*Math.sin(g*s),o=this.centerCoordinates.y+a*Math.cos(g*s),C=SA(s*A,a*I,1),e.fillStyle="rgb("+C.r+","+C.g+","+C.b+")",e.fillRect(i-.5,o-.5,2,2);e.strokeStyle="rgba(0,0,0,1)",e.circle(this.centerCoordinates.x,this.centerCoordinates.y,this.r),e.stroke(),this.hueCircle=e.getImageData(0,0,t,r)}this.generated=!0}_moveSelector(e){const t=this.colorPickerDiv.getBoundingClientRect(),r=e.center.x-t.left,i=e.center.y-t.top,o=.5*this.colorPickerDiv.clientHeight,s=.5*this.colorPickerDiv.clientWidth,a=r-s,g=i-o,A=Math.atan2(a,g),I=.98*Math.min(Math.sqrt(a*a+g*g),s),C=Math.cos(A)*I+o,l=Math.sin(A)*I+s;this.colorPickerSelector.style.top=C-.5*this.colorPickerSelector.clientHeight+"px",this.colorPickerSelector.style.left=l-.5*this.colorPickerSelector.clientWidth+"px";let d=A/(2*Math.PI);d=d<0?d+1:d;const u=I/this.r,h=_a(this.color.r,this.color.g,this.color.b);h.h=d,h.s=u;const v=SA(h.h,h.s,h.v);v.a=this.color.a,this.color=v,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+")"}};function dO(){for(var n=arguments.length,e=new Array(n),t=0;t<n;t++)e[t]=arguments[t];if(e.length<1)throw new TypeError("Invalid arguments.");if(e.length===1)return document.createTextNode(e[0]);{const r=document.createElement(e[0]);return r.appendChild(dO(...zr(e).call(e,1))),r}}let Ese=class{constructor(e,t,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1,o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:()=>!1;this.parent=e,this.changedOptions=[],this.container=t,this.allowCreation=!1,this.hideOption=o,this.options={},this.initialized=!1,this.popupCounter=0,this.defaultOptions={enabled:!1,filter:!0,container:void 0,showButton:!0},tt(this.options,this.defaultOptions),this.configureOptions=r,this.moduleOptions={},this.domElements=[],this.popupDiv={},this.popupLimit=5,this.popupHistory={},this.colorPicker=new wse(i),this.wrapper=void 0}setOptions(e){if(e!==void 0){this.popupHistory={},this._removePopup();let t=!0;if(typeof e=="string")this.options.filter=e;else if(we(e))this.options.filter=e.join();else if(typeof e=="object"){if(e==null)throw new TypeError("options cannot be null");e.container!==void 0&&(this.options.container=e.container),st(e)!==void 0&&(this.options.filter=st(e)),e.showButton!==void 0&&(this.options.showButton=e.showButton),e.enabled!==void 0&&(t=e.enabled)}else typeof e=="boolean"?(this.options.filter=!0,t=e):typeof e=="function"&&(this.options.filter=e,t=!0);st(this.options)===!1&&(t=!1),this.options.enabled=t}this._clean()}setModuleOptions(e){this.moduleOptions=e,this.options.enabled===!0&&(this._clean(),this.options.container!==void 0&&(this.container=this.options.container),this._create())}_create(){this._clean(),this.changedOptions=[];const e=st(this.options);let t=0,r=!1;for(const i in this.configureOptions)Object.prototype.hasOwnProperty.call(this.configureOptions,i)&&(this.allowCreation=!1,r=!1,typeof e=="function"?(r=e(i,[]),r=r||this._handleObject(this.configureOptions[i],[i],!0)):(e===!0||_e(e).call(e,i)!==-1)&&(r=!0),r!==!1&&(this.allowCreation=!0,t>0&&this._makeItem([]),this._makeHeader(i),this._handleObject(this.configureOptions[i],[i])),t++);this._makeButton(),this._push()}_push(){this.wrapper=document.createElement("div"),this.wrapper.className="vis-configuration-wrapper",this.container.appendChild(this.wrapper);for(let e=0;e<this.domElements.length;e++)this.wrapper.appendChild(this.domElements[e]);this._showPopupIfNeeded()}_clean(){for(let e=0;e<this.domElements.length;e++)this.wrapper.removeChild(this.domElements[e]);this.wrapper!==void 0&&(this.container.removeChild(this.wrapper),this.wrapper=void 0),this.domElements=[],this._removePopup()}_getValue(e){let t=this.moduleOptions;for(let r=0;r<e.length;r++)if(t[e[r]]!==void 0)t=t[e[r]];else{t=void 0;break}return t}_makeItem(e){if(this.allowCreation===!0){const o=document.createElement("div");o.className="vis-configuration vis-config-item vis-config-s"+e.length;for(var t=arguments.length,r=new Array(t>1?t-1:0),i=1;i<t;i++)r[i-1]=arguments[i];return be(r).call(r,s=>{o.appendChild(s)}),this.domElements.push(o),this.domElements.length}return 0}_makeHeader(e){const t=document.createElement("div");t.className="vis-configuration vis-config-header",t.innerText=e,this._makeItem([],t)}_makeLabel(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;const i=document.createElement("div");if(i.className="vis-configuration vis-config-label vis-config-s"+t.length,r===!0){for(;i.firstChild;)i.removeChild(i.firstChild);i.appendChild(dO("i","b",e))}else i.innerText=e+":";return i}_makeDropdown(e,t,r){const i=document.createElement("select");i.className="vis-configuration vis-config-select";let o=0;t!==void 0&&_e(e).call(e,t)!==-1&&(o=_e(e).call(e,t));for(let g=0;g<e.length;g++){const A=document.createElement("option");A.value=e[g],g===o&&(A.selected="selected"),A.innerText=e[g],i.appendChild(A)}const s=this;i.onchange=function(){s._update(this.value,r)};const a=this._makeLabel(r[r.length-1],r);this._makeItem(r,a,i)}_makeRange(e,t,r){const i=e[0],o=e[1],s=e[2],a=e[3],g=document.createElement("input");g.className="vis-configuration vis-config-range";try{g.type="range",g.min=o,g.max=s}catch{}g.step=a;let A="",I=0;t!==void 0?(t<0&&t*1.2<o?(g.min=Math.ceil(t*1.2),I=g.min,A="range increased"):t/1.2<o&&(g.min=Math.ceil(t/1.2),I=g.min,A="range increased"),t*1.2>s&&s!==1&&(g.max=Math.ceil(t*1.2),I=g.max,A="range increased"),g.value=t):g.value=i;const C=document.createElement("input");C.className="vis-configuration vis-config-rangeinput",C.value=g.value;const l=this;g.onchange=function(){C.value=this.value,l._update(Number(this.value),r)},g.oninput=function(){C.value=this.value};const d=this._makeLabel(r[r.length-1],r),u=this._makeItem(r,d,g,C);A!==""&&this.popupHistory[u]!==I&&(this.popupHistory[u]=I,this._setupPopup(A,u))}_makeButton(){if(this.options.showButton===!0){const e=document.createElement("div");e.className="vis-configuration vis-config-button",e.innerText="generate options",e.onclick=()=>{this._printOptions()},e.onmouseover=()=>{e.className="vis-configuration vis-config-button hover"},e.onmouseout=()=>{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)}}_setupPopup(e,t){if(this.initialized===!0&&this.allowCreation===!0&&this.popupCounter<this.popupLimit){const r=document.createElement("div");r.id="vis-configuration-popup",r.className="vis-configuration-popup",r.innerText=e,r.onclick=()=>{this._removePopup()},this.popupCounter+=1,this.popupDiv={html:r,index:t}}}_removePopup(){this.popupDiv.html!==void 0&&(this.popupDiv.html.parentNode.removeChild(this.popupDiv.html),clearTimeout(this.popupDiv.hideTimeout),clearTimeout(this.popupDiv.deleteTimeout),this.popupDiv={})}_showPopupIfNeeded(){if(this.popupDiv.html!==void 0){const t=this.domElements[this.popupDiv.index].getBoundingClientRect();this.popupDiv.html.style.left=t.left+"px",this.popupDiv.html.style.top=t.top-30+"px",document.body.appendChild(this.popupDiv.html),this.popupDiv.hideTimeout=ri(()=>{this.popupDiv.html.style.opacity=0},1500),this.popupDiv.deleteTimeout=ri(()=>{this._removePopup()},1800)}}_makeCheckbox(e,t,r){const i=document.createElement("input");i.type="checkbox",i.className="vis-configuration vis-config-checkbox",i.checked=e,t!==void 0&&(i.checked=t,t!==e&&(typeof e=="object"?t!==e.enabled&&this.changedOptions.push({path:r,value:t}):this.changedOptions.push({path:r,value:t})));const o=this;i.onchange=function(){o._update(this.checked,r)};const s=this._makeLabel(r[r.length-1],r);this._makeItem(r,s,i)}_makeTextInput(e,t,r){const i=document.createElement("input");i.type="text",i.className="vis-configuration vis-config-text",i.value=t,t!==e&&this.changedOptions.push({path:r,value:t});const o=this;i.onchange=function(){o._update(this.value,r)};const s=this._makeLabel(r[r.length-1],r);this._makeItem(r,s,i)}_makeColorField(e,t,r){const i=e[1],o=document.createElement("div");t=t===void 0?i:t,t!=="none"?(o.className="vis-configuration vis-config-colorBlock",o.style.backgroundColor=t):o.className="vis-configuration vis-config-colorBlock none",t=t===void 0?i:t,o.onclick=()=>{this._showColorPicker(t,o,r)};const s=this._makeLabel(r[r.length-1],r);this._makeItem(r,s,o)}_showColorPicker(e,t,r){t.onclick=function(){},this.colorPicker.insertTo(t),this.colorPicker.show(),this.colorPicker.setColor(e),this.colorPicker.setUpdateCallback(i=>{const o="rgba("+i.r+","+i.g+","+i.b+","+i.a+")";t.style.backgroundColor=o,this._update(o,r)}),this.colorPicker.setCloseCallback(()=>{t.onclick=()=>{this._showColorPicker(e,t,r)}})}_handleObject(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=!1;const o=st(this.options);let s=!1;for(const a in e)if(Object.prototype.hasOwnProperty.call(e,a)){i=!0;const g=e[a],A=jA(t,a);if(typeof o=="function"&&(i=o(a,t),i===!1&&!we(g)&&typeof g!="string"&&typeof g!="boolean"&&g instanceof Object&&(this.allowCreation=!1,i=this._handleObject(g,A,!0),this.allowCreation=r===!1)),i!==!1){s=!0;const I=this._getValue(A);if(we(g))this._handleArray(g,I,A);else if(typeof g=="string")this._makeTextInput(g,I,A);else if(typeof g=="boolean")this._makeCheckbox(g,I,A);else if(g instanceof Object){if(!this.hideOption(t,a,this.moduleOptions))if(g.enabled!==void 0){const C=jA(A,"enabled"),l=this._getValue(C);if(l===!0){const d=this._makeLabel(a,A,!0);this._makeItem(A,d),s=this._handleObject(g,A)||s}else this._makeCheckbox(g,l,A)}else{const C=this._makeLabel(a,A,!0);this._makeItem(A,C),s=this._handleObject(g,A)||s}}else console.error("dont know how to handle",g,a,A)}}return s}_handleArray(e,t,r){typeof e[0]=="string"&&e[0]==="color"?(this._makeColorField(e,t,r),e[1]!==t&&this.changedOptions.push({path:r,value:t})):typeof e[0]=="string"?(this._makeDropdown(e,t,r),e[0]!==t&&this.changedOptions.push({path:r,value:t})):typeof e[0]=="number"&&(this._makeRange(e,t,r),e[0]!==t&&this.changedOptions.push({path:r,value:Number(t)}))}_update(e,t){const r=this._constructOptions(e,t);this.parent.body&&this.parent.body.emitter&&this.parent.body.emitter.emit&&this.parent.body.emitter.emit("configChange",r),this.initialized=!0,this.parent.setOptions(r)}_constructOptions(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},i=r;e=e==="true"?!0:e,e=e==="false"?!1:e;for(let o=0;o<t.length;o++)t[o]!=="global"&&(i[t[o]]===void 0&&(i[t[o]]={}),o!==t.length-1?i=i[t[o]]:i[t[o]]=e);return r}_printOptions(){const e=this.getOptions();for(;this.optionsContainer.firstChild;)this.optionsContainer.removeChild(this.optionsContainer.firstChild);this.optionsContainer.appendChild(dO("pre","const options = "+ks(e,null,2)))}getOptions(){const e={};for(let t=0;t<this.changedOptions.length;t++)this._constructOptions(this.changedOptions[t].value,this.changedOptions[t].path,e);return e}},Sse=class{constructor(e,t){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)}setPosition(e,t){this.x=Fr(e),this.y=Fr(t)}setText(e){if(e instanceof Element){for(;this.frame.firstChild;)this.frame.removeChild(this.frame.firstChild);this.frame.appendChild(e)}else this.frame.innerText=e}show(e){if(e===void 0&&(e=!0),e===!0){const t=this.frame.clientHeight,r=this.frame.clientWidth,i=this.frame.parentNode.clientHeight,o=this.frame.parentNode.clientWidth;let s=0,a=0;if(this.overflowMethod=="flip"){let g=!1,A=!0;this.y-t<this.padding&&(A=!1),this.x+r>o-this.padding&&(g=!0),g?s=this.x-r:s=this.x,A?a=this.y-t:a=this.y}else a=this.y-t,a+t+this.padding>i&&(a=i-t-this.padding),a<this.padding&&(a=this.padding),s=this.x,s+r+this.padding>o&&(s=o-r-this.padding),s<this.padding&&(s=this.padding);this.frame.style.left=s+"px",this.frame.style.top=a+"px",this.frame.style.visibility="visible",this.hidden=!1}else this.hide()}hide(){this.hidden=!0,this.frame.style.left="0",this.frame.style.top="0",this.frame.style.visibility="hidden"}destroy(){this.frame.parentNode.removeChild(this.frame)}},ma=!1,TN;const uO="background: #FFeeee; color: #dd0000";let _se=class Ke{static validate(e,t,r){ma=!1,TN=t;let i=t;return r!==void 0&&(i=t[r]),Ke.parse(e,i,[]),ma}static parse(e,t,r){for(const i in e)Object.prototype.hasOwnProperty.call(e,i)&&Ke.check(i,e,t,r)}static check(e,t,r,i){if(r[e]===void 0&&r.__any__===void 0){Ke.getSuggestion(e,r,i);return}let o=e,s=!0;r[e]===void 0&&r.__any__!==void 0&&(o="__any__",s=Ke.getType(t[e])==="object");let a=r[o];s&&a.__type__!==void 0&&(a=a.__type__),Ke.checkFields(e,t,r,o,a,i)}static checkFields(e,t,r,i,o,s){const a=function(I){console.error("%c"+I+Ke.printLocation(s,e),uO)},g=Ke.getType(t[e]),A=o[g];A!==void 0?Ke.getType(A)==="array"&&_e(A).call(A,t[e])===-1?(a('Invalid option detected in "'+e+'". Allowed values are:'+Ke.print(A)+' not "'+t[e]+'". '),ma=!0):g==="object"&&i!=="__any__"&&(s=jA(s,e),Ke.parse(t[e],r[i],s)):o.any===void 0&&(a('Invalid type received for "'+e+'". Expected: '+Ke.print(Be(o))+". Received ["+g+'] "'+t[e]+'"'),ma=!0)}static getType(e){const t=typeof e;return t==="object"?e===null?"null":e instanceof Boolean?"boolean":e instanceof Number?"number":e instanceof String?"string":we(e)?"array":e instanceof Date?"date":e.nodeType!==void 0?"dom":e._isAMomentObject===!0?"moment":"object":t==="number"?"number":t==="boolean"?"boolean":t==="string"?"string":t===void 0?"undefined":t}static getSuggestion(e,t,r){const i=Ke.findInOptions(e,t,r,!1),o=Ke.findInOptions(e,TN,[],!0),s=8,a=4;let g;i.indexMatch!==void 0?g=" in "+Ke.printLocation(i.path,e,"")+'Perhaps it was incomplete? Did you mean: "'+i.indexMatch+`"?
|
||
|
||
`:o.distance<=a&&i.distance>o.distance?g=" in "+Ke.printLocation(i.path,e,"")+"Perhaps it was misplaced? Matching option found at: "+Ke.printLocation(o.path,o.closestMatch,""):i.distance<=s?g='. Did you mean "'+i.closestMatch+'"?'+Ke.printLocation(i.path,e):g=". Did you mean one of these: "+Ke.print(Be(t))+Ke.printLocation(r,e),console.error('%cUnknown option detected: "'+e+'"'+g,uO),ma=!0}static findInOptions(e,t,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,o=1e9,s="",a=[];const g=e.toLowerCase();let A;for(const C in t){let l;if(t[C].__type__!==void 0&&i===!0){const d=Ke.findInOptions(e,t[C],jA(r,C));o>d.distance&&(s=d.closestMatch,a=d.path,o=d.distance,A=d.indexMatch)}else{var I;_e(I=C.toLowerCase()).call(I,g)!==-1&&(A=C),l=Ke.levenshteinDistance(e,C),o>l&&(s=C,a=cse(r),o=l)}}return{closestMatch:s,path:a,distance:o,indexMatch:A}}static printLocation(e,t){let i=`
|
||
|
||
`+(arguments.length>2&&arguments[2]!==void 0?arguments[2]:`Problem value found at:
|
||
`)+`options = {
|
||
`;for(let o=0;o<e.length;o++){for(let s=0;s<o+1;s++)i+=" ";i+=e[o]+`: {
|
||
`}for(let o=0;o<e.length+1;o++)i+=" ";i+=t+`
|
||
`;for(let o=0;o<e.length+1;o++){for(let s=0;s<e.length-o;s++)i+=" ";i+=`}
|
||
`}return i+`
|
||
|
||
`}static print(e){return ks(e).replace(/(")|(\[)|(\])|(,"__type__")/g,"").replace(/(,)/g,", ")}static levenshteinDistance(e,t){if(e.length===0)return t.length;if(t.length===0)return e.length;const r=[];let i;for(i=0;i<=t.length;i++)r[i]=[i];let o;for(o=0;o<=e.length;o++)r[0][o]=o;for(i=1;i<=t.length;i++)for(o=1;o<=e.length;o++)t.charAt(i-1)==e.charAt(o-1)?r[i][o]=r[i-1][o-1]:r[i][o]=Math.min(r[i-1][o-1]+1,Math.min(r[i][o-1]+1,r[i-1][o]+1));return r[t.length][e.length]}};const Ose=Xr,Tse=Ese,rs=AT,Rse=Sse,WQ=uO,Pse=_se;function xse(n){return en=n,Mse()}var VQ={fontsize:"font.size",fontcolor:"font.color",labelfontcolor:"font.color",fontname:"font.face",color:["color.border","color.background"],fillcolor:"color.background",tooltip:"title",labeltooltip:"title"},CT=nn(VQ);CT.color="color.color";CT.style="dashes";var kt={NULL:0,DELIMITER:1,IDENTIFIER:2,UNKNOWN:3},RN={"{":!0,"}":!0,"[":!0,"]":!0,";":!0,"=":!0,",":!0,"->":!0,"--":!0},en="",ds=0,Ie="",re="",Kt=kt.NULL;function $se(){ds=0,Ie=en.charAt(0)}function vt(){ds++,Ie=en.charAt(ds)}function ko(){return en.charAt(ds+1)}function PN(n){var e=n.charCodeAt(0);return e<47?e===35||e===46:e<59?e>47:e<91?e>64:e<96?e===95:e<123?e>96:!1}function dn(n,e){if(n||(n={}),e)for(var t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);return n}function Dse(n,e,t){for(var r=e.split("."),i=n;r.length;){var o=r.shift();r.length?(i[o]||(i[o]={}),i=i[o]):i[o]=t}}function ZQ(n,e){for(var t,r,i=null,o=[n],s=n;s.parent;)o.push(s.parent),s=s.parent;if(s.nodes){for(t=0,r=s.nodes.length;t<r;t++)if(e.id===s.nodes[t].id){i=s.nodes[t];break}}for(i||(i={id:e.id},n.node&&(i.attr=dn(i.attr,n.node))),t=o.length-1;t>=0;t--){var a,g=o[t];g.nodes||(g.nodes=[]),_e(a=g.nodes).call(a,i)===-1&&g.nodes.push(i)}e.attr&&(i.attr=dn(i.attr,e.attr))}function Nse(n,e){if(n.edges||(n.edges=[]),n.edges.push(e),n.edge){var t=dn({},n.edge);e.attr=dn(t,e.attr)}}function HQ(n,e,t,r,i){var o={from:e,to:t,type:r};return n.edge&&(o.attr=dn({},n.edge)),o.attr=dn(o.attr||{},i),i!=null&&i.hasOwnProperty("arrows")&&i.arrows!=null&&(o.arrows={to:{enabled:!0,type:i.arrows.type}},i.arrows=null),o}function Fe(){for(Kt=kt.NULL,re="";Ie===" "||Ie===" "||Ie===`
|
||
`||Ie==="\r";)vt();do{var n=!1;if(Ie==="#"){for(var e=ds-1;en.charAt(e)===" "||en.charAt(e)===" ";)e--;if(en.charAt(e)===`
|
||
`||en.charAt(e)===""){for(;Ie!=""&&Ie!=`
|
||
`;)vt();n=!0}}if(Ie==="/"&&ko()==="/"){for(;Ie!=""&&Ie!=`
|
||
`;)vt();n=!0}if(Ie==="/"&&ko()==="*"){for(;Ie!="";)if(Ie==="*"&&ko()==="/"){vt(),vt();break}else vt();n=!0}for(;Ie===" "||Ie===" "||Ie===`
|
||
`||Ie==="\r";)vt()}while(n);if(Ie===""){Kt=kt.DELIMITER;return}var t=Ie+ko();if(RN[t]){Kt=kt.DELIMITER,re=t,vt(),vt();return}if(RN[Ie]){Kt=kt.DELIMITER,re=Ie,vt();return}if(PN(Ie)||Ie==="-"){for(re+=Ie,vt();PN(Ie);)re+=Ie,vt();re==="false"?re=!1:re==="true"?re=!0:isNaN(Number(re))||(re=Number(re)),Kt=kt.IDENTIFIER;return}if(Ie==='"'){for(vt();Ie!=""&&(Ie!='"'||Ie==='"'&&ko()==='"');)Ie==='"'?(re+=Ie,vt()):Ie==="\\"&&ko()==="n"?(re+=`
|
||
`,vt()):re+=Ie,vt();if(Ie!='"')throw Bt('End of string " expected');vt(),Kt=kt.IDENTIFIER;return}for(Kt=kt.UNKNOWN;Ie!="";)re+=Ie,vt();throw new SyntaxError('Syntax error in part "'+XQ(re,30)+'"')}function Mse(){var n={};if($se(),Fe(),re==="strict"&&(n.strict=!0,Fe()),(re==="graph"||re==="digraph")&&(n.type=re,Fe()),Kt===kt.IDENTIFIER&&(n.id=re,Fe()),re!="{")throw Bt("Angle bracket { expected");if(Fe(),UQ(n),re!="}")throw Bt("Angle bracket } expected");if(Fe(),re!=="")throw Bt("End of file expected");return Fe(),delete n.node,delete n.edge,delete n.graph,n}function UQ(n){for(;re!==""&&re!="}";)qse(n),re===";"&&Fe()}function qse(n){var e=KQ(n);if(e){YQ(n,e);return}var t=Fse(n);if(!t){if(Kt!=kt.IDENTIFIER)throw Bt("Identifier expected");var r=re;if(Fe(),re==="="){if(Fe(),Kt!=kt.IDENTIFIER)throw Bt("Identifier expected");n[r]=re,Fe()}else kse(n,r)}}function KQ(n){var e=null;if(re==="subgraph"&&(e={},e.type="subgraph",Fe(),Kt===kt.IDENTIFIER&&(e.id=re,Fe())),re==="{"){if(Fe(),e||(e={}),e.parent=n,e.node=n.node,e.edge=n.edge,e.graph=n.graph,UQ(e),re!="}")throw Bt("Angle bracket } expected");Fe(),delete e.node,delete e.edge,delete e.graph,delete e.parent,n.subgraphs||(n.subgraphs=[]),n.subgraphs.push(e)}return e}function Fse(n){return re==="node"?(Fe(),n.node=Da(),"node"):re==="edge"?(Fe(),n.edge=Da(),"edge"):re==="graph"?(Fe(),n.graph=Da(),"graph"):null}function kse(n,e){var t={id:e},r=Da();r&&(t.attr=r),ZQ(n,t),YQ(n,e)}function YQ(n,e){for(;re==="->"||re==="--";){var t,r=re;Fe();var i=KQ(n);if(i)t=i;else{if(Kt!=kt.IDENTIFIER)throw Bt("Identifier or subgraph expected");t=re,ZQ(n,{id:t}),Fe()}var o=Da(),s=HQ(n,e,t,r,o);Nse(n,s),e=t}}function Da(){for(var n,e=null,t={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"},i=new Array,o=new Array;re==="[";){for(Fe(),e={};re!==""&&re!="]";){if(Kt!=kt.IDENTIFIER)throw Bt("Attribute name expected");var s=re;if(Fe(),re!="=")throw Bt("Equal sign = expected");if(Fe(),Kt!=kt.IDENTIFIER)throw Bt("Attribute value expected");var a=re;s==="style"&&(a=t[a]);var g;s==="arrowhead"&&(g=r[a],s="arrows",a={to:{enabled:!0,type:g}}),s==="arrowtail"&&(g=r[a],s="arrows",a={from:{enabled:!0,type:g}}),i.push({attr:e,name:s,value:a}),o.push(s),Fe(),re==","&&Fe()}if(re!="]")throw Bt("Bracket ] expected");Fe()}if(rn(o).call(o,"dir")){var A={};for(A.arrows={},n=0;n<i.length;n++)if(i[n].name==="arrows")if(i[n].value.to!=null)A.arrows.to=n;else if(i[n].value.from!=null)A.arrows.from=n;else throw Bt("Invalid value of arrows");else i[n].name==="dir"&&(A.dir=n);var I=i[A.dir].value;if(!rn(o).call(o,"arrows"))if(I==="both")i.push({attr:i[A.dir].attr,name:"arrows",value:{to:{enabled:!0}}}),A.arrows.to=i.length-1,i.push({attr:i[A.dir].attr,name:"arrows",value:{from:{enabled:!0}}}),A.arrows.from=i.length-1;else if(I==="forward")i.push({attr:i[A.dir].attr,name:"arrows",value:{to:{enabled:!0}}}),A.arrows.to=i.length-1;else if(I==="back")i.push({attr:i[A.dir].attr,name:"arrows",value:{from:{enabled:!0}}}),A.arrows.from=i.length-1;else if(I==="none")i.push({attr:i[A.dir].attr,name:"arrows",value:""}),A.arrows.to=i.length-1;else throw Bt('Invalid dir type "'+I+'"');var C,l;if(I==="both")A.arrows.to&&A.arrows.from?(l=i[A.arrows.to].value.to.type,C=i[A.arrows.from].value.from.type,i[A.arrows.to]={attr:i[A.arrows.to].attr,name:i[A.arrows.to].name,value:{to:{enabled:!0,type:l},from:{enabled:!0,type:C}}},ti(i).call(i,A.arrows.from,1)):A.arrows.to?(l=i[A.arrows.to].value.to.type,C="arrow",i[A.arrows.to]={attr:i[A.arrows.to].attr,name:i[A.arrows.to].name,value:{to:{enabled:!0,type:l},from:{enabled:!0,type:C}}}):A.arrows.from&&(l="arrow",C=i[A.arrows.from].value.from.type,i[A.arrows.from]={attr:i[A.arrows.from].attr,name:i[A.arrows.from].name,value:{to:{enabled:!0,type:l},from:{enabled:!0,type:C}}});else if(I==="back")A.arrows.to&&A.arrows.from?(l="",C=i[A.arrows.from].value.from.type,i[A.arrows.from]={attr:i[A.arrows.from].attr,name:i[A.arrows.from].name,value:{to:{enabled:!0,type:l},from:{enabled:!0,type:C}}}):A.arrows.to?(l="",C="arrow",A.arrows.from=A.arrows.to,i[A.arrows.from]={attr:i[A.arrows.from].attr,name:i[A.arrows.from].name,value:{to:{enabled:!0,type:l},from:{enabled:!0,type:C}}}):A.arrows.from&&(l="",C=i[A.arrows.from].value.from.type,i[A.arrows.to]={attr:i[A.arrows.from].attr,name:i[A.arrows.from].name,value:{to:{enabled:!0,type:l},from:{enabled:!0,type:C}}}),i[A.arrows.from]={attr:i[A.arrows.from].attr,name:i[A.arrows.from].name,value:{from:{enabled:!0,type:i[A.arrows.from].value.from.type}}};else if(I==="none"){var d;A.arrows.to?d=A.arrows.to:d=A.arrows.from,i[d]={attr:i[d].attr,name:i[d].name,value:""}}else if(I==="forward")A.arrows.to&&A.arrows.from?(l=i[A.arrows.to].value.to.type,C="",i[A.arrows.to]={attr:i[A.arrows.to].attr,name:i[A.arrows.to].name,value:{to:{enabled:!0,type:l},from:{enabled:!0,type:C}}}):A.arrows.to?(l=i[A.arrows.to].value.to.type,C="",i[A.arrows.to]={attr:i[A.arrows.to].attr,name:i[A.arrows.to].name,value:{to:{enabled:!0,type:l},from:{enabled:!0,type:C}}}):A.arrows.from&&(l="arrow",C="",A.arrows.to=A.arrows.from,i[A.arrows.to]={attr:i[A.arrows.to].attr,name:i[A.arrows.to].name,value:{to:{enabled:!0,type:l},from:{enabled:!0,type:C}}}),i[A.arrows.to]={attr:i[A.arrows.to].attr,name:i[A.arrows.to].name,value:{to:{enabled:!0,type:i[A.arrows.to].value.to.type}}};else throw Bt('Invalid dir type "'+I+'"');ti(i).call(i,A.dir,1)}var u;if(rn(o).call(o,"penwidth")){var h=[];for(u=i.length,n=0;n<u;n++)i[n].name!=="width"&&(i[n].name==="penwidth"&&(i[n].name="width"),h.push(i[n]));i=h}for(u=i.length,n=0;n<u;n++)Dse(i[n].attr,i[n].name,i[n].value);return e}function Bt(n){return new SyntaxError(n+', got "'+XQ(re,30)+'" (char '+ds+")")}function XQ(n,e){return n.length<=e?n:n.substr(0,27)+"..."}function Bse(n,e,t){we(n)?be(n).call(n,function(r){we(e)?be(e).call(e,function(i){t(r,i)}):t(r,e)}):we(e)?be(e).call(e,function(r){t(n,r)}):t(n,e)}function Xu(n,e,t){for(var r=e.split("."),i=r.pop(),o=n,s=0;s<r.length;s++){var a=r[s];a in o||(o[a]={}),o=o[a]}return o[i]=t,n}function xN(n,e){var t={};for(var r in n)if(n.hasOwnProperty(r)){var i=e[r];we(i)?be(i).call(i,function(o){Xu(t,o,n[r])}):typeof i=="string"?Xu(t,i,n[r]):Xu(t,r,n[r])}return t}function zse(n){var e=xse(n),t={nodes:[],edges:[],options:{}};if(e.nodes){var r;be(r=e.nodes).call(r,function(s){var a={id:s.id,label:String(s.label||s.id)};dn(a,xN(s.attr,VQ)),a.image&&(a.shape="image"),t.nodes.push(a)})}if(e.edges){var i,o=function(s){var a={from:s.from,to:s.to};return dn(a,xN(s.attr,CT)),a.arrows==null&&s.type==="->"&&(a.arrows="to"),a};be(i=e.edges).call(i,function(s){var a,g;if(s.from instanceof Object?a=s.from.nodes:a={id:s.from},s.to instanceof Object?g=s.to.nodes:g={id:s.to},s.from instanceof Object&&s.from.edges){var A;be(A=s.from.edges).call(A,function(C){var l=o(C);t.edges.push(l)})}if(Bse(a,g,function(C,l){var d=HQ(t,C.id,l.id,s.type,s.attr),u=o(d);t.edges.push(u)}),s.to instanceof Object&&s.to.edges){var I;be(I=s.to.edges).call(I,function(C){var l=o(C);t.edges.push(l)})}})}return e.attr&&(t.options=e.attr),t}function jse(n,e){var t;const r={edges:{inheritColor:!1},nodes:{fixed:!1,parseColor:!1}};e!=null&&(e.fixed!=null&&(r.nodes.fixed=e.fixed),e.parseColor!=null&&(r.nodes.parseColor=e.parseColor),e.inheritColor!=null&&(r.edges.inheritColor=e.inheritColor));const i=n.edges,o=Mt(i).call(i,a=>{const g={from:a.source,id:a.id,to:a.target};return a.attributes!=null&&(g.attributes=a.attributes),a.label!=null&&(g.label=a.label),a.attributes!=null&&a.attributes.title!=null&&(g.title=a.attributes.title),a.type==="Directed"&&(g.arrows="to"),a.color&&r.edges.inheritColor===!1&&(g.color=a.color),g});return{nodes:Mt(t=n.nodes).call(t,a=>{const g={id:a.id,fixed:r.nodes.fixed&&a.x!=null&&a.y!=null};return a.attributes!=null&&(g.attributes=a.attributes),a.label!=null&&(g.label=a.label),a.size!=null&&(g.size=a.size),a.attributes!=null&&a.attributes.title!=null&&(g.title=a.attributes.title),a.title!=null&&(g.title=a.title),a.x!=null&&(g.x=a.x),a.y!=null&&(g.y=a.y),a.color!=null&&(r.nodes.parseColor===!0?g.color=a.color:g.color={background:a.color,border:a.color,highlight:{background:a.color,border:a.color},hover:{background:a.color,border:a.color}}),g}),edges:o}}const Lse={addDescription:"Click in an empty space to place a new node.",addEdge:"Add Edge",addNode:"Add Node",back:"Back",close:"Close",createEdgeError:"Cannot link edges to a cluster.",del:"Delete selected",deleteClusterError:"Clusters cannot be deleted.",edgeDescription:"Click on a node and drag the edge to another node to connect them.",edit:"Edit",editClusterError:"Clusters cannot be edited.",editEdge:"Edit Edge",editEdgeDescription:"Click on the control points and drag them to a node to connect to it.",editNode:"Edit Node"},Gse={addDescription:"Klicke auf eine freie Stelle, um einen neuen Knoten zu plazieren.",addEdge:"Kante hinzufügen",addNode:"Knoten hinzufügen",back:"Zurück",close:"Schließen",createEdgeError:"Es ist nicht möglich, Kanten mit Clustern zu verbinden.",del:"Lösche Auswahl",deleteClusterError:"Cluster können nicht gelöscht werden.",edgeDescription:"Klicke auf einen Knoten und ziehe die Kante zu einem anderen Knoten, um diese zu verbinden.",edit:"Editieren",editClusterError:"Cluster können nicht editiert werden.",editEdge:"Kante editieren",editEdgeDescription:"Klicke auf die Verbindungspunkte und ziehe diese auf einen Knoten, um sie zu verbinden.",editNode:"Knoten editieren"},Wse={addDescription:"Haga clic en un lugar vacío para colocar un nuevo nodo.",addEdge:"Añadir arista",addNode:"Añadir nodo",back:"Atrás",close:"Cerrar",createEdgeError:"No se puede conectar una arista a un grupo.",del:"Eliminar selección",deleteClusterError:"No es posible eliminar grupos.",edgeDescription:"Haga clic en un nodo y arrastre la arista hacia otro nodo para conectarlos.",edit:"Editar",editClusterError:"No es posible editar grupos.",editEdge:"Editar arista",editEdgeDescription:"Haga clic en un punto de control y arrastrelo a un nodo para conectarlo.",editNode:"Editar nodo"},Vse={addDescription:"Clicca per aggiungere un nuovo nodo",addEdge:"Aggiungi un vertice",addNode:"Aggiungi un nodo",back:"Indietro",close:"Chiudere",createEdgeError:"Non si possono collegare vertici ad un cluster",del:"Cancella la selezione",deleteClusterError:"I cluster non possono essere cancellati",edgeDescription:"Clicca su un nodo e trascinalo ad un altro nodo per connetterli.",edit:"Modifica",editClusterError:"I clusters non possono essere modificati.",editEdge:"Modifica il vertice",editEdgeDescription:"Clicca sui Punti di controllo e trascinali ad un nodo per connetterli.",editNode:"Modifica il nodo"},Zse={addDescription:"Klik op een leeg gebied om een nieuwe node te maken.",addEdge:"Link toevoegen",addNode:"Node toevoegen",back:"Terug",close:"Sluiten",createEdgeError:"Kan geen link maken naar een cluster.",del:"Selectie verwijderen",deleteClusterError:"Clusters kunnen niet worden verwijderd.",edgeDescription:"Klik op een node en sleep de link naar een andere node om ze te verbinden.",edit:"Wijzigen",editClusterError:"Clusters kunnen niet worden aangepast.",editEdge:"Link wijzigen",editEdgeDescription:"Klik op de verbindingspunten en sleep ze naar een node om daarmee te verbinden.",editNode:"Node wijzigen"},Hse={addDescription:"Clique em um espaço em branco para adicionar um novo nó",addEdge:"Adicionar aresta",addNode:"Adicionar nó",back:"Voltar",close:"Fechar",createEdgeError:"Não foi possível linkar arestas a um cluster.",del:"Remover selecionado",deleteClusterError:"Clusters não puderam ser removidos.",edgeDescription:"Clique em um nó e arraste a aresta até outro nó para conectá-los",edit:"Editar",editClusterError:"Clusters não puderam ser editados.",editEdge:"Editar aresta",editEdgeDescription:"Clique nos pontos de controle e os arraste para um nó para conectá-los",editNode:"Editar nó"},Use={addDescription:"Кликните в свободное место, чтобы добавить новый узел.",addEdge:"Добавить ребро",addNode:"Добавить узел",back:"Назад",close:"Закрывать",createEdgeError:"Невозможно соединить ребра в кластер.",del:"Удалить выбранное",deleteClusterError:"Кластеры не могут быть удалены",edgeDescription:"Кликните на узел и протяните ребро к другому узлу, чтобы соединить их.",edit:"Редактировать",editClusterError:"Кластеры недоступны для редактирования.",editEdge:"Редактировать ребро",editEdgeDescription:"Кликните на контрольные точки и перетащите их в узел, чтобы подключиться к нему.",editNode:"Редактировать узел"},Kse={addDescription:"单击空白处放置新节点。",addEdge:"添加连接线",addNode:"添加节点",back:"返回",close:"關閉",createEdgeError:"无法将连接线连接到群集。",del:"删除选定",deleteClusterError:"无法删除群集。",edgeDescription:"单击某个节点并将该连接线拖动到另一个节点以连接它们。",edit:"编辑",editClusterError:"无法编辑群集。",editEdge:"编辑连接线",editEdgeDescription:"单击控制节点并将它们拖到节点上连接。",editNode:"编辑节点"},Yse={addDescription:"Kлікніть на вільне місце, щоб додати новий вузол.",addEdge:"Додати край",addNode:"Додати вузол",back:"Назад",close:"Закрити",createEdgeError:"Не можливо об'єднати краї в групу.",del:"Видалити обране",deleteClusterError:"Групи не можуть бути видалені.",edgeDescription:"Клікніть на вузол і перетягніть край до іншого вузла, щоб їх з'єднати.",edit:"Редагувати",editClusterError:"Групи недоступні для редагування.",editEdge:"Редагувати край",editEdgeDescription:"Клікніть на контрольні точки і перетягніть їх у вузол, щоб підключитися до нього.",editNode:"Редагувати вузол"},Xse={addDescription:"Cliquez dans un endroit vide pour placer un nœud.",addEdge:"Ajouter un lien",addNode:"Ajouter un nœud",back:"Retour",close:"Fermer",createEdgeError:"Impossible de créer un lien vers un cluster.",del:"Effacer la sélection",deleteClusterError:"Les clusters ne peuvent pas être effacés.",edgeDescription:"Cliquez sur un nœud et glissez le lien vers un autre nœud pour les connecter.",edit:"Éditer",editClusterError:"Les clusters ne peuvent pas être édités.",editEdge:"Éditer le lien",editEdgeDescription:"Cliquez sur les points de contrôle et glissez-les pour connecter un nœud.",editNode:"Éditer le nœud"},Qse={addDescription:"Kluknutím do prázdného prostoru můžete přidat nový vrchol.",addEdge:"Přidat hranu",addNode:"Přidat vrchol",back:"Zpět",close:"Zavřít",createEdgeError:"Nelze připojit hranu ke shluku.",del:"Smazat výběr",deleteClusterError:"Nelze mazat shluky.",edgeDescription:"Přetažením z jednoho vrcholu do druhého můžete spojit tyto vrcholy novou hranou.",edit:"Upravit",editClusterError:"Nelze upravovat shluky.",editEdge:"Upravit hranu",editEdgeDescription:"Přetažením kontrolního vrcholu hrany ji můžete připojit k jinému vrcholu.",editNode:"Upravit vrchol"};var Jse=Object.freeze({__proto__:null,cn:Kse,cs:Qse,de:Gse,en:Lse,es:Wse,fr:Xse,it:Vse,nl:Zse,pt:Hse,ru:Use,uk:Yse});function eae(n,e){try{const[r,i]=e.split(/[-_ /]/,2),o=r!=null?r.toLowerCase():null,s=i!=null?i.toUpperCase():null;if(o&&s){const a=o+"-"+s;if(Object.prototype.hasOwnProperty.call(n,a))return a;var t;console.warn(aQ(t="Unknown variant ".concat(s," of language ")).call(t,o,"."))}if(o){const a=o;if(Object.prototype.hasOwnProperty.call(n,a))return a;console.warn("Unknown language ".concat(o))}return console.warn("Unknown locale ".concat(e,", falling back to English.")),"en"}catch(r){return console.error(r),console.warn("Unexpected error while normalizing locale ".concat(e,", falling back to English.")),"en"}}let tae=class{constructor(){this.NUM_ITERATIONS=4,this.image=new Image,this.canvas=document.createElement("canvas")}init(){if(this.initialized())return;this.src=this.image.src;const e=this.image.width,t=this.image.height;this.width=e,this.height=t;const r=Math.floor(t/2),i=Math.floor(t/4),o=Math.floor(t/8),s=Math.floor(t/16),a=Math.floor(e/2),g=Math.floor(e/4),A=Math.floor(e/8),I=Math.floor(e/16);this.canvas.width=3*g,this.canvas.height=r,this.coordinates=[[0,0,a,r],[a,0,g,i],[a,i,A,o],[5*A,i,I,s]],this._fillMipMap()}initialized(){return this.coordinates!==void 0}_fillMipMap(){const e=this.canvas.getContext("2d"),t=this.coordinates[0];e.drawImage(this.image,t[0],t[1],t[2],t[3]);for(let r=1;r<this.NUM_ITERATIONS;r++){const i=this.coordinates[r-1],o=this.coordinates[r];e.drawImage(this.canvas,i[0],i[1],i[2],i[3],o[0],o[1],o[2],o[3])}}drawImageAtPosition(e,t,r,i,o,s){if(this.initialized())if(t>2){t*=.5;let a=0;for(;t>2&&a<this.NUM_ITERATIONS;)t*=.5,a+=1;a>=this.NUM_ITERATIONS&&(a=this.NUM_ITERATIONS-1);const g=this.coordinates[a];e.drawImage(this.canvas,g[0],g[1],g[2],g[3],r,i,o,s)}else e.drawImage(this.image,r,i,o,s)}},rae=class{constructor(e){this.images={},this.imageBroken={},this.callback=e}_tryloadBrokenUrl(e,t,r){if(!(e===void 0||r===void 0)){if(t===void 0){console.warn("No broken url image defined");return}r.image.onerror=()=>{console.error("Could not load brokenImage:",t)},r.image.src=t}}_redrawWithImage(e){this.callback&&this.callback(e)}load(e,t){const r=this.images[e];if(r)return r;const i=new tae;return this.images[e]=i,i.image.onload=()=>{this._fixImageCoordinates(i.image),i.init(),this._redrawWithImage(i)},i.image.onerror=()=>{console.error("Could not load image:",e),this._tryloadBrokenUrl(e,t,i)},i.image.src=e,i}_fixImageCoordinates(e){e.width===0&&(document.body.appendChild(e),e.width=e.offsetWidth,e.height=e.offsetHeight,document.body.removeChild(e))}};var $N={},DN={},Qu={exports:{}},Ju,NN;function iae(){if(NN)return Ju;NN=1;var n=ce();return Ju=n(function(){if(typeof ArrayBuffer=="function"){var e=new ArrayBuffer(8);Object.isExtensible(e)&&Object.defineProperty(e,"a",{value:8})}}),Ju}var eh,MN;function nae(){if(MN)return eh;MN=1;var n=ce(),e=bt(),t=Ai(),r=iae(),i=Object.isExtensible,o=n(function(){});return eh=o||r?function(a){return!e(a)||r&&t(a)==="ArrayBuffer"?!1:i?i(a):!0}:i,eh}var th,qN;function QQ(){if(qN)return th;qN=1;var n=ce();return th=!n(function(){return Object.isExtensible(Object.preventExtensions({}))}),th}var FN;function bI(){if(FN)return Qu.exports;FN=1;var n=ee(),e=me(),t=Cg(),r=bt(),i=ct(),o=mr().f,s=cI(),a=YO(),g=nae(),A=AI(),I=QQ(),C=!1,l=A("meta"),d=0,u=function(p){o(p,l,{value:{objectID:"O"+d++,weakData:{}}})},h=function(p,y){if(!r(p))return typeof p=="symbol"?p:(typeof p=="string"?"S":"P")+p;if(!i(p,l)){if(!g(p))return"F";if(!y)return"E";u(p)}return p[l].objectID},v=function(p,y){if(!i(p,l)){if(!g(p))return!0;if(!y)return!1;u(p)}return p[l].weakData},f=function(p){return I&&C&&g(p)&&!i(p,l)&&u(p),p},c=function(){b.enable=function(){},C=!0;var p=s.f,y=e([].splice),E={};E[l]=1,p(E).length&&(s.f=function(S){for(var m=p(S),w=0,_=m.length;w<_;w++)if(m[w]===l){y(m,w,1);break}return m},n({target:"Object",stat:!0,forced:!0},{getOwnPropertyNames:a.f}))},b=Qu.exports={enable:c,fastKey:h,getWeakData:v,onFreeze:f};return t[l]=!0,Qu.exports}var rh,kN;function oae(){if(kN)return rh;kN=1;var n=Ct(),e=qs(),t=n("iterator"),r=Array.prototype;return rh=function(i){return i!==void 0&&(e.Array===i||r[t]===i)},rh}var ih,BN;function JQ(){if(BN)return ih;BN=1;var n=fn(),e=jO(),t=Os(),r=qs(),i=Ct(),o=i("iterator");return ih=function(s){if(!t(s))return e(s,o)||e(s,"@@iterator")||r[n(s)]},ih}var nh,zN;function e7(){if(zN)return nh;zN=1;var n=rr(),e=Pi(),t=Ii(),r=Ps(),i=JQ(),o=TypeError;return nh=function(s,a){var g=arguments.length<2?i(s):a;if(e(g))return t(n(g,s));throw new o(r(s)+" is not iterable")},nh}var oh,jN;function lT(){if(jN)return oh;jN=1;var n=rr(),e=Ii(),t=jO();return oh=function(r,i,o){var s,a;e(r);try{if(s=t(r,"return"),!s){if(i==="throw")throw o;return o}s=n(s,r)}catch(g){a=!0,s=g}if(i==="throw")throw o;if(a)throw s;return e(s),o},oh}var sh,LN;function wI(){if(LN)return sh;LN=1;var n=CI(),e=rr(),t=Ii(),r=Ps(),i=oae(),o=xi(),s=Je(),a=e7(),g=JQ(),A=lT(),I=TypeError,C=function(d,u){this.stopped=d,this.result=u},l=C.prototype;return sh=function(d,u,h){var v=h&&h.that,f=!!(h&&h.AS_ENTRIES),c=!!(h&&h.IS_RECORD),b=!!(h&&h.IS_ITERATOR),p=!!(h&&h.INTERRUPTED),y=n(u,v),E,S,m,w,_,T,R,O=function(x){return E&&A(E,"normal"),new C(!0,x)},P=function(x){return f?(t(x),p?y(x[0],x[1],O):y(x[0],x[1])):p?y(x,O):y(x)};if(c)E=d.iterator;else if(b)E=d;else{if(S=g(d),!S)throw new I(r(d)+" is not iterable");if(i(S)){for(m=0,w=o(d);w>m;m++)if(_=P(d[m]),_&&s(l,_))return _;return new C(!1)}E=a(d,S)}for(T=c?d.next:E.next;!(R=e(T,E)).done;){try{_=P(R.value)}catch(x){A(E,"throw",x)}if(typeof _=="object"&&_&&s(l,_))return _}return new C(!1)},sh}var ah,GN;function dT(){if(GN)return ah;GN=1;var n=Je(),e=TypeError;return ah=function(t,r){if(n(r,t))return t;throw new e("Incorrect invocation")},ah}var gh,WN;function uT(){if(WN)return gh;WN=1;var n=ee(),e=Le(),t=bI(),r=ce(),i=Ds(),o=wI(),s=dT(),a=yt(),g=bt(),A=Os(),I=Ao(),C=mr().f,l=pn().forEach,d=nt(),u=Io(),h=u.set,v=u.getterFor;return gh=function(f,c,b){var p=f.indexOf("Map")!==-1,y=f.indexOf("Weak")!==-1,E=p?"set":"add",S=e[f],m=S&&S.prototype,w={},_;if(!d||!a(S)||!(y||m.forEach&&!r(function(){new S().entries().next()})))_=b.getConstructor(c,f,p,E),t.enable();else{_=c(function(O,P){h(s(O,T),{type:f,collection:new S}),A(P)||o(P,O[E],{that:O,AS_ENTRIES:p})});var T=_.prototype,R=v(f);l(["add","clear","delete","forEach","get","has","set","keys","values","entries"],function(O){var P=O==="add"||O==="set";O in m&&!(y&&O==="clear")&&i(T,O,function(x,V){var M=R(this).collection;if(!P&&y&&!g(x))return O==="get"?void 0:!1;var U=M[O](x===0?0:x,V);return P?this:U})}),y||C(T,"size",{configurable:!0,get:function(){return R(this).collection.size}})}return I(_,f,!1,!0),w[f]=_,n({global:!0,forced:!0},w),y||b.setStrong(_,f,p),_},gh}var Ah,VN;function hT(){if(VN)return Ah;VN=1;var n=hg();return Ah=function(e,t,r){for(var i in t)r&&r.unsafe&&e[i]?e[i]=t[i]:n(e,i,t[i],r);return e},Ah}var Ih,ZN;function sae(){if(ZN)return Ih;ZN=1;var n=gr(),e=XO(),t=Ct(),r=nt(),i=t("species");return Ih=function(o){var s=n(o);r&&s&&!s[i]&&e(s,i,{configurable:!0,get:function(){return this}})},Ih}var Ch,HN;function t7(){if(HN)return Ch;HN=1;var n=ug(),e=XO(),t=hT(),r=CI(),i=dT(),o=Os(),s=wI(),a=JO(),g=eT(),A=sae(),I=nt(),C=bI().fastKey,l=Io(),d=l.set,u=l.getterFor;return Ch={getConstructor:function(h,v,f,c){var b=h(function(m,w){i(m,p),d(m,{type:v,index:n(null),first:null,last:null,size:0}),I||(m.size=0),o(w)||s(w,m[c],{that:m,AS_ENTRIES:f})}),p=b.prototype,y=u(v),E=function(m,w,_){var T=y(m),R=S(m,w),O,P;return R?R.value=_:(T.last=R={index:P=C(w,!0),key:w,value:_,previous:O=T.last,next:null,removed:!1},T.first||(T.first=R),O&&(O.next=R),I?T.size++:m.size++,P!=="F"&&(T.index[P]=R)),m},S=function(m,w){var _=y(m),T=C(w),R;if(T!=="F")return _.index[T];for(R=_.first;R;R=R.next)if(R.key===w)return R};return t(p,{clear:function(){for(var w=this,_=y(w),T=_.first;T;)T.removed=!0,T.previous&&(T.previous=T.previous.next=null),T=T.next;_.first=_.last=null,_.index=n(null),I?_.size=0:w.size=0},delete:function(m){var w=this,_=y(w),T=S(w,m);if(T){var R=T.next,O=T.previous;delete _.index[T.index],T.removed=!0,O&&(O.next=R),R&&(R.previous=O),_.first===T&&(_.first=R),_.last===T&&(_.last=O),I?_.size--:w.size--}return!!T},forEach:function(w){for(var _=y(this),T=r(w,arguments.length>1?arguments[1]:void 0),R;R=R?R.next:_.first;)for(T(R.value,R.key,this);R&&R.removed;)R=R.previous},has:function(w){return!!S(this,w)}}),t(p,f?{get:function(w){var _=S(this,w);return _&&_.value},set:function(w,_){return E(this,w===0?0:w,_)}}:{add:function(w){return E(this,w=w===0?0:w,w)}}),I&&e(p,"size",{configurable:!0,get:function(){return y(this).size}}),b},setStrong:function(h,v,f){var c=v+" Iterator",b=u(v),p=u(c);a(h,v,function(y,E){d(this,{type:c,target:y,state:b(y),kind:E,last:null})},function(){for(var y=p(this),E=y.kind,S=y.last;S&&S.removed;)S=S.previous;return!y.target||!(y.last=S=S?S.next:y.state.first)?(y.target=null,g(void 0,!0)):g(E==="keys"?S.key:E==="values"?S.value:[S.key,S.value],!1)},f?"entries":"values",!f,!0),A(v)}},Ch}var UN;function aae(){if(UN)return DN;UN=1;var n=uT(),e=t7();return n("Map",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},e),DN}var KN;function gae(){return KN||(KN=1,aae()),$N}var YN={},lh,XN;function r7(){return XN||(XN=1,lh=function(n,e){return e===1?function(t,r){return t[n](r)}:function(t,r,i){return t[n](r,i)}}),lh}var dh,QN;function Aae(){if(QN)return dh;QN=1;var n=gr(),e=r7(),t=n("Map");return dh={Map:t,set:e("set",2),get:e("get",1),has:e("has",1),remove:e("delete",1),proto:t.prototype},dh}var JN;function Iae(){if(JN)return YN;JN=1;var n=ee(),e=me(),t=Pi(),r=Ri(),i=wI(),o=Aae(),s=xs(),a=ce(),g=o.Map,A=o.has,I=o.get,C=o.set,l=e([].push),d=s||a(function(){return g.groupBy("ab",function(u){return u}).get("a").length!==1});return n({target:"Map",stat:!0,forced:s||d},{groupBy:function(h,v){r(h),t(v);var f=new g,c=0;return i(h,function(b){var p=v(b,c++);A(f,p)?l(I(f,p),b):C(f,p,[b])}),f}}),YN}var eM={},uh,tM;function Cae(){if(tM)return uh;tM=1;var n=me(),e=Ns(),t=yr(),r=Ri(),i=n("".charAt),o=n("".charCodeAt),s=n("".slice),a=function(g){return function(A,I){var C=t(r(A)),l=e(I),d=C.length,u,h;return l<0||l>=d?g?"":void 0:(u=o(C,l),u<55296||u>56319||l+1===d||(h=o(C,l+1))<56320||h>57343?g?i(C,l):u:g?s(C,l,l+2):(u-55296<<10)+(h-56320)+65536)}};return uh={codeAt:a(!1),charAt:a(!0)},uh}var rM;function EI(){if(rM)return eM;rM=1;var n=Cae().charAt,e=yr(),t=Io(),r=JO(),i=eT(),o="String Iterator",s=t.set,a=t.getterFor(o);return r(String,"String",function(g){s(this,{type:o,string:e(g),index:0})},function(){var A=a(this),I=A.string,C=A.index,l;return C>=I.length?i(void 0,!0):(l=n(I,C),A.index+=l.length,i(l,!1))}),eM}var hh,iM;function lae(){if(iM)return hh;iM=1,$i(),gae(),Iae(),EI();var n=Ee();return hh=n.Map,hh}var ch,nM;function dae(){if(nM)return ch;nM=1;var n=lae();return Di(),ch=n,ch}var fh,oM;function uae(){return oM||(oM=1,fh=dae()),fh}var hae=uae(),bg=ne(hae);let cae=class{constructor(){this.clear(),this._defaultIndex=0,this._groupIndex=0,this._defaultGroups=[{border:"#2B7CE9",background:"#97C2FC",highlight:{border:"#2B7CE9",background:"#D2E5FF"},hover:{border:"#2B7CE9",background:"#D2E5FF"}},{border:"#FFA500",background:"#FFFF00",highlight:{border:"#FFA500",background:"#FFFFA3"},hover:{border:"#FFA500",background:"#FFFFA3"}},{border:"#FA0A10",background:"#FB7E81",highlight:{border:"#FA0A10",background:"#FFAFB1"},hover:{border:"#FA0A10",background:"#FFAFB1"}},{border:"#41A906",background:"#7BE141",highlight:{border:"#41A906",background:"#A1EC76"},hover:{border:"#41A906",background:"#A1EC76"}},{border:"#E129F0",background:"#EB7DF4",highlight:{border:"#E129F0",background:"#F0B3F5"},hover:{border:"#E129F0",background:"#F0B3F5"}},{border:"#7C29F0",background:"#AD85E4",highlight:{border:"#7C29F0",background:"#D3BDF0"},hover:{border:"#7C29F0",background:"#D3BDF0"}},{border:"#C37F00",background:"#FFA807",highlight:{border:"#C37F00",background:"#FFCA66"},hover:{border:"#C37F00",background:"#FFCA66"}},{border:"#4220FB",background:"#6E6EFD",highlight:{border:"#4220FB",background:"#9B9BFD"},hover:{border:"#4220FB",background:"#9B9BFD"}},{border:"#FD5A77",background:"#FFC0CB",highlight:{border:"#FD5A77",background:"#FFD1D9"},hover:{border:"#FD5A77",background:"#FFD1D9"}},{border:"#4AD63A",background:"#C2FABC",highlight:{border:"#4AD63A",background:"#E6FFE3"},hover:{border:"#4AD63A",background:"#E6FFE3"}},{border:"#990000",background:"#EE0000",highlight:{border:"#BB0000",background:"#FF3333"},hover:{border:"#BB0000",background:"#FF3333"}},{border:"#FF6000",background:"#FF6000",highlight:{border:"#FF6000",background:"#FF6000"},hover:{border:"#FF6000",background:"#FF6000"}},{border:"#97C2FC",background:"#2B7CE9",highlight:{border:"#D2E5FF",background:"#2B7CE9"},hover:{border:"#D2E5FF",background:"#2B7CE9"}},{border:"#399605",background:"#255C03",highlight:{border:"#399605",background:"#255C03"},hover:{border:"#399605",background:"#255C03"}},{border:"#B70054",background:"#FF007E",highlight:{border:"#B70054",background:"#FF007E"},hover:{border:"#B70054",background:"#FF007E"}},{border:"#AD85E4",background:"#7C29F0",highlight:{border:"#D3BDF0",background:"#7C29F0"},hover:{border:"#D3BDF0",background:"#7C29F0"}},{border:"#4557FA",background:"#000EA1",highlight:{border:"#6E6EFD",background:"#000EA1"},hover:{border:"#6E6EFD",background:"#000EA1"}},{border:"#FFC0CB",background:"#FD5A77",highlight:{border:"#FFD1D9",background:"#FD5A77"},hover:{border:"#FFD1D9",background:"#FD5A77"}},{border:"#C2FABC",background:"#74D66A",highlight:{border:"#E6FFE3",background:"#74D66A"},hover:{border:"#E6FFE3",background:"#74D66A"}},{border:"#EE0000",background:"#990000",highlight:{border:"#FF3333",background:"#BB0000"},hover:{border:"#FF3333",background:"#BB0000"}}],this.options={},this.defaultOptions={useDefaultGroups:!0},tt(this.options,this.defaultOptions)}setOptions(e){const t=["useDefaultGroups"];if(e!==void 0){for(const r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&_e(t).call(t,r)===-1){const i=e[r];this.add(r,i)}}}clear(){this._groups=new bg,this._groupNames=[]}get(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=this._groups.get(e);if(r===void 0&&t)if(this.options.useDefaultGroups===!1&&this._groupNames.length>0){const i=this._groupIndex%this._groupNames.length;++this._groupIndex,r={},r.color=this._groups.get(this._groupNames[i]),this._groups.set(e,r)}else{const i=this._defaultIndex%this._defaultGroups.length;this._defaultIndex++,r={},r.color=this._defaultGroups[i],this._groups.set(e,r)}return r}add(e,t){return this._groups.has(e)||this._groupNames.push(e),this._groups.set(e,t),t}};var sM={},aM;function fae(){if(aM)return sM;aM=1;var n=ee();return n({target:"Number",stat:!0},{isNaN:function(t){return t!==t}}),sM}var ph,gM;function pae(){if(gM)return ph;gM=1,fae();var n=Ee();return ph=n.Number.isNaN,ph}var vh,AM;function vae(){if(AM)return vh;AM=1;var n=pae();return vh=n,vh}var mh,IM;function mae(){return IM||(IM=1,mh=vae()),mh}var yae=mae(),hO=ne(yae),CM={},yh,lM;function bae(){if(lM)return yh;lM=1;var n=Le(),e=n.isFinite;return yh=Number.isFinite||function(r){return typeof r=="number"&&e(r)},yh}var dM;function wae(){if(dM)return CM;dM=1;var n=ee(),e=bae();return n({target:"Number",stat:!0},{isFinite:e}),CM}var bh,uM;function Eae(){if(uM)return bh;uM=1,wae();var n=Ee();return bh=n.Number.isFinite,bh}var wh,hM;function Sae(){if(hM)return wh;hM=1;var n=Eae();return wh=n,wh}var Eh,cM;function _ae(){return cM||(cM=1,Eh=Sae()),Eh}var Oae=_ae(),Nn=ne(Oae),fM={},pM;function Tae(){if(pM)return fM;pM=1;var n=ee(),e=pn().some,t=Fs(),r=t("some");return n({target:"Array",proto:!0,forced:!r},{some:function(o){return e(this,o,arguments.length>1?arguments[1]:void 0)}}),fM}var Sh,vM;function Rae(){if(vM)return Sh;vM=1,Tae();var n=ft();return Sh=n("Array","some"),Sh}var _h,mM;function Pae(){if(mM)return _h;mM=1;var n=Je(),e=Rae(),t=Array.prototype;return _h=function(r){var i=r.some;return r===t||n(t,r)&&i===t.some?e:i},_h}var Oh,yM;function xae(){if(yM)return Oh;yM=1;var n=Pae();return Oh=n,Oh}var Th,bM;function $ae(){return bM||(bM=1,Th=xae()),Th}var Dae=$ae(),i7=ne(Dae),Rh,wM;function Nae(){if(wM)return Rh;wM=1,XX();var n=Ee();return Rh=n.Object.getOwnPropertySymbols,Rh}var Ph,EM;function Mae(){if(EM)return Ph;EM=1;var n=Nae();return Ph=n,Ph}var xh,SM;function qae(){return SM||(SM=1,xh=Mae()),xh}var Fae=qae(),ai=ne(Fae),$h={exports:{}},_M={},OM;function kae(){if(OM)return _M;OM=1;var n=ee(),e=ce(),t=Vr(),r=II().f,i=nt(),o=!i||e(function(){r(1)});return n({target:"Object",stat:!0,forced:o,sham:!i},{getOwnPropertyDescriptor:function(a,g){return r(t(a),g)}}),_M}var TM;function Bae(){if(TM)return $h.exports;TM=1,kae();var n=Ee(),e=n.Object,t=$h.exports=function(i,o){return e.getOwnPropertyDescriptor(i,o)};return e.getOwnPropertyDescriptor.sham&&(t.sham=!0),$h.exports}var Dh,RM;function zae(){if(RM)return Dh;RM=1;var n=Bae();return Dh=n,Dh}var Nh,PM;function jae(){return PM||(PM=1,Nh=zae()),Nh}var Lae=jae(),Ci=ne(Lae),xM={},$M;function Gae(){if($M)return xM;$M=1;var n=ee(),e=nt(),t=oQ(),r=Vr(),i=II(),o=uI();return n({target:"Object",stat:!0,sham:!e},{getOwnPropertyDescriptors:function(a){for(var g=r(a),A=i.f,I=t(g),C={},l=0,d,u;I.length>l;)u=A(g,d=I[l++]),u!==void 0&&o(C,d,u);return C}}),xM}var Mh,DM;function Wae(){if(DM)return Mh;DM=1,Gae();var n=Ee();return Mh=n.Object.getOwnPropertyDescriptors,Mh}var qh,NM;function Vae(){if(NM)return qh;NM=1;var n=Wae();return qh=n,qh}var Fh,MM;function Zae(){return MM||(MM=1,Fh=Vae()),Fh}var Hae=Zae(),gi=ne(Hae),kh={exports:{}},qM={},FM;function Uae(){if(FM)return qM;FM=1;var n=ee(),e=nt(),t=KO().f;return n({target:"Object",stat:!0,forced:Object.defineProperties!==t,sham:!e},{defineProperties:t}),qM}var kM;function Kae(){if(kM)return kh.exports;kM=1,Uae();var n=Ee(),e=n.Object,t=kh.exports=function(i,o){return e.defineProperties(i,o)};return e.defineProperties.sham&&(t.sham=!0),kh.exports}var Bh,BM;function Yae(){if(BM)return Bh;BM=1;var n=Kae();return Bh=n,Bh}var zh,zM;function Xae(){return zM||(zM=1,zh=Yae()),zh}var Qae=Xae(),wg=ne(Qae),jh={exports:{}},jM={},LM;function Jae(){if(LM)return jM;LM=1;var n=ee(),e=nt(),t=mr().f;return n({target:"Object",stat:!0,forced:Object.defineProperty!==t,sham:!e},{defineProperty:t}),jM}var GM;function ege(){if(GM)return jh.exports;GM=1,Jae();var n=Ee(),e=n.Object,t=jh.exports=function(i,o,s){return e.defineProperty(i,o,s)};return e.defineProperty.sham&&(t.sham=!0),jh.exports}var Lh,WM;function n7(){if(WM)return Lh;WM=1;var n=ege();return Lh=n,Lh}var Gh,VM;function tge(){if(VM)return Gh;VM=1;var n=n7();return Gh=n,Gh}var Wh,ZM;function rge(){if(ZM)return Wh;ZM=1;var n=tge();return Wh=n,Wh}var Vh,HM;function ige(){return HM||(HM=1,Vh=rge()),Vh}var nge=ige(),oge=ne(nge),UM={},KM;function sge(){if(KM)return UM;KM=1;var n=Ct(),e=mr().f,t=n("metadata"),r=Function.prototype;return r[t]===void 0&&e(r,t,{value:null}),UM}var YM={},XM;function age(){return XM||(XM=1,QX()),YM}var QM={},JM;function gge(){return JM||(JM=1,JX()),QM}var eq={},tq;function Age(){if(tq)return eq;tq=1;var n=Ze();return n("metadata"),eq}var Zh,rq;function Ige(){if(rq)return Zh;rq=1;var n=nQ();return sge(),age(),gge(),Age(),Zh=n,Zh}var iq={},Hh,nq;function o7(){if(nq)return Hh;nq=1;var n=gr(),e=me(),t=n("Symbol"),r=t.keyFor,i=e(t.prototype.valueOf);return Hh=t.isRegisteredSymbol||function(s){try{return r(i(s))!==void 0}catch{return!1}},Hh}var oq;function Cge(){if(oq)return iq;oq=1;var n=ee(),e=o7();return n({target:"Symbol",stat:!0},{isRegisteredSymbol:e}),iq}var sq={},Uh,aq;function s7(){if(aq)return Uh;aq=1;for(var n=$s(),e=gr(),t=me(),r=Ig(),i=Ct(),o=e("Symbol"),s=o.isWellKnownSymbol,a=e("Object","getOwnPropertyNames"),g=t(o.prototype.valueOf),A=n("wks"),I=0,C=a(o),l=C.length;I<l;I++)try{var d=C[I];r(o[d])&&i(d)}catch{}return Uh=function(h){if(s&&s(h))return!0;try{for(var v=g(h),f=0,c=a(A),b=c.length;f<b;f++)if(A[c[f]]==v)return!0}catch{}return!1},Uh}var gq;function lge(){if(gq)return sq;gq=1;var n=ee(),e=s7();return n({target:"Symbol",stat:!0,forced:!0},{isWellKnownSymbol:e}),sq}var Aq={},Iq;function dge(){if(Iq)return Aq;Iq=1;var n=Ze();return n("customMatcher"),Aq}var Cq={},lq;function uge(){if(lq)return Cq;lq=1;var n=Ze();return n("observable"),Cq}var dq={},uq;function hge(){if(uq)return dq;uq=1;var n=ee(),e=o7();return n({target:"Symbol",stat:!0,name:"isRegisteredSymbol"},{isRegistered:e}),dq}var hq={},cq;function cge(){if(cq)return hq;cq=1;var n=ee(),e=s7();return n({target:"Symbol",stat:!0,name:"isWellKnownSymbol",forced:!0},{isWellKnown:e}),hq}var fq={},pq;function fge(){if(pq)return fq;pq=1;var n=Ze();return n("matcher"),fq}var vq={},mq;function pge(){if(mq)return vq;mq=1;var n=Ze();return n("metadataKey"),vq}var yq={},bq;function vge(){if(bq)return yq;bq=1;var n=Ze();return n("patternMatch"),yq}var wq={},Eq;function mge(){if(Eq)return wq;Eq=1;var n=Ze();return n("replaceAll"),wq}var Kh,Sq;function yge(){if(Sq)return Kh;Sq=1;var n=Ige();return Cge(),lge(),dge(),uge(),hge(),cge(),fge(),pge(),vge(),mge(),Kh=n,Kh}var Yh,_q;function bge(){return _q||(_q=1,Yh=yge()),Yh}var wge=bge(),uA=ne(wge),Xh,Oq;function Ege(){if(Oq)return Xh;Oq=1,$i(),EI(),eQ();var n=fI();return Xh=n.f("iterator"),Xh}var Qh,Tq;function a7(){if(Tq)return Qh;Tq=1;var n=Ege();return Di(),Qh=n,Qh}var Jh,Rq;function Sge(){if(Rq)return Jh;Rq=1;var n=a7();return Jh=n,Jh}var ec,Pq;function _ge(){if(Pq)return ec;Pq=1;var n=Sge();return ec=n,ec}var tc,xq;function Oge(){return xq||(xq=1,tc=_ge()),tc}var Tge=Oge(),Rge=ne(Tge);function Ua(n){"@babel/helpers - typeof";return Ua=typeof uA=="function"&&typeof Rge=="symbol"?function(e){return typeof e}:function(e){return e&&typeof uA=="function"&&e.constructor===uA&&e!==uA.prototype?"symbol":typeof e},Ua(n)}var rc,$q;function Pge(){if($q)return rc;$q=1,tQ();var n=fI();return rc=n.f("toPrimitive"),rc}var ic,Dq;function xge(){if(Dq)return ic;Dq=1;var n=Pge();return ic=n,ic}var nc,Nq;function $ge(){if(Nq)return nc;Nq=1;var n=xge();return nc=n,nc}var oc,Mq;function Dge(){if(Mq)return oc;Mq=1;var n=$ge();return oc=n,oc}var sc,qq;function Nge(){return qq||(qq=1,sc=Dge()),sc}var Mge=Nge(),qge=ne(Mge);function Fge(n,e){if(Ua(n)!="object"||!n)return n;var t=n[qge];if(t!==void 0){var r=t.call(n,e);if(Ua(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function kge(n){var e=Fge(n,"string");return Ua(e)=="symbol"?e:e+""}function ze(n,e,t){return(e=kge(e))in n?oge(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}var Fq={},ac,kq;function Bge(){if(kq)return ac;kq=1;var n=Pi(),e=Ar(),t=gI(),r=xi(),i=TypeError,o="Reduce of empty array with no initial value",s=function(a){return function(g,A,I,C){var l=e(g),d=t(l),u=r(l);if(n(A),u===0&&I<2)throw new i(o);var h=a?u-1:0,v=a?-1:1;if(I<2)for(;;){if(h in d){C=d[h],h+=v;break}if(h+=v,a?h<0:u<=h)throw new i(o)}for(;a?h>=0:u>h;h+=v)h in d&&(C=A(C,d[h],h,l));return C}};return ac={left:s(!1),right:s(!0)},ac}var gc,Bq;function zge(){if(Bq)return gc;Bq=1;var n=AQ();return gc=n==="NODE",gc}var zq;function jge(){if(zq)return Fq;zq=1;var n=ee(),e=Bge().left,t=Fs(),r=Ag(),i=zge(),o=!i&&r>79&&r<83,s=o||!t("reduce");return n({target:"Array",proto:!0,forced:s},{reduce:function(g){var A=arguments.length;return e(this,g,A,A>1?arguments[1]:void 0)}}),Fq}var Ac,jq;function Lge(){if(jq)return Ac;jq=1,jge();var n=ft();return Ac=n("Array","reduce"),Ac}var Ic,Lq;function Gge(){if(Lq)return Ic;Lq=1;var n=Je(),e=Lge(),t=Array.prototype;return Ic=function(r){var i=r.reduce;return r===t||n(t,r)&&i===t.reduce?e:i},Ic}var Cc,Gq;function Wge(){if(Gq)return Cc;Gq=1;var n=Gge();return Cc=n,Cc}var lc,Wq;function Vge(){return Wq||(Wq=1,lc=Wge()),lc}var Zge=Vge(),cT=ne(Zge),dc,Vq;function Hge(){return Vq||(Vq=1,dc=a7()),dc}var Uge=Hge(),Ho=ne(Uge),Zq={},Hq={},Uq;function Kge(){if(Uq)return Hq;Uq=1;var n=uT(),e=t7();return n("Set",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},e),Hq}var Kq;function Yge(){return Kq||(Kq=1,Kge()),Zq}var Yq={},uc,Xq;function lo(){if(Xq)return uc;Xq=1;var n=Ps(),e=TypeError;return uc=function(t){if(typeof t=="object"&&"size"in t&&"has"in t&&"add"in t&&"delete"in t&&"keys"in t)return t;throw new e(n(t)+" is not a set")},uc}var hc,Qq;function uo(){if(Qq)return hc;Qq=1;var n=gr(),e=r7(),t=n("Set"),r=t.prototype;return hc={Set:t,add:e("add",1),has:e("has",1),remove:e("delete",1),proto:r},hc}var cc,Jq;function ho(){if(Jq)return cc;Jq=1;var n=rr();return cc=function(e,t,r){for(var i=r?e:e.iterator,o=e.next,s,a;!(s=n(o,i)).done;)if(a=t(s.value),a!==void 0)return a},cc}var fc,eF;function Eg(){if(eF)return fc;eF=1;var n=ho();return fc=function(e,t,r){return r?n(e.keys(),t,!0):e.forEach(t)},fc}var pc,tF;function fT(){if(tF)return pc;tF=1;var n=uo(),e=Eg(),t=n.Set,r=n.add;return pc=function(i){var o=new t;return e(i,function(s){r(o,s)}),o},pc}var vc,rF;function Sg(){return rF||(rF=1,vc=function(n){return n.size}),vc}var mc,iF;function Xge(){return iF||(iF=1,mc=function(n){return{iterator:n,next:n.next,done:!1}}),mc}var yc,nF;function co(){if(nF)return yc;nF=1;var n=Pi(),e=Ii(),t=rr(),r=Ns(),i=Xge(),o="Invalid size",s=RangeError,a=TypeError,g=Math.max,A=function(I,C){this.set=I,this.size=g(C,0),this.has=n(I.has),this.keys=n(I.keys)};return A.prototype={getIterator:function(){return i(e(t(this.keys,this.set)))},includes:function(I){return t(this.has,this.set,I)}},yc=function(I){e(I);var C=+I.size;if(C!==C)throw new a(o);var l=r(C);if(l<0)throw new s(o);return new A(I,l)},yc}var bc,oF;function Qge(){if(oF)return bc;oF=1;var n=lo(),e=uo(),t=fT(),r=Sg(),i=co(),o=Eg(),s=ho(),a=e.has,g=e.remove;return bc=function(I){var C=n(this),l=i(I),d=t(C);return r(C)<=l.size?o(C,function(u){l.includes(u)&&g(d,u)}):s(l.getIterator(),function(u){a(d,u)&&g(d,u)}),d},bc}var wc,sF;function fo(){return sF||(sF=1,wc=function(){return!1}),wc}var aF;function Jge(){if(aF)return Yq;aF=1;var n=ee(),e=Qge(),t=ce(),r=fo(),i=!r("difference",function(s){return s.size===0}),o=i||t(function(){var s={size:1,has:function(){return!0},keys:function(){var g=0;return{next:function(){var A=g++>1;return a.has(1)&&a.clear(),{done:A,value:2}}}}},a=new Set([1,2,3,4]);return a.difference(s).size!==3});return n({target:"Set",proto:!0,real:!0,forced:o},{difference:e}),Yq}var gF={},Ec,AF;function eAe(){if(AF)return Ec;AF=1;var n=lo(),e=uo(),t=Sg(),r=co(),i=Eg(),o=ho(),s=e.Set,a=e.add,g=e.has;return Ec=function(I){var C=n(this),l=r(I),d=new s;return t(C)>l.size?o(l.getIterator(),function(u){g(C,u)&&a(d,u)}):i(C,function(u){l.includes(u)&&a(d,u)}),d},Ec}var IF;function tAe(){if(IF)return gF;IF=1;var n=ee(),e=ce(),t=eAe(),r=fo(),i=!r("intersection",function(o){return o.size===2&&o.has(1)&&o.has(2)})||e(function(){return String(Array.from(new Set([1,2,3]).intersection(new Set([3,2]))))!=="3,2"});return n({target:"Set",proto:!0,real:!0,forced:i},{intersection:t}),gF}var CF={},Sc,lF;function rAe(){if(lF)return Sc;lF=1;var n=lo(),e=uo().has,t=Sg(),r=co(),i=Eg(),o=ho(),s=lT();return Sc=function(g){var A=n(this),I=r(g);if(t(A)<=I.size)return i(A,function(l){if(I.includes(l))return!1},!0)!==!1;var C=I.getIterator();return o(C,function(l){if(e(A,l))return s(C,"normal",!1)})!==!1},Sc}var dF;function iAe(){if(dF)return CF;dF=1;var n=ee(),e=rAe(),t=fo(),r=!t("isDisjointFrom",function(i){return!i});return n({target:"Set",proto:!0,real:!0,forced:r},{isDisjointFrom:e}),CF}var uF={},_c,hF;function nAe(){if(hF)return _c;hF=1;var n=lo(),e=Sg(),t=Eg(),r=co();return _c=function(o){var s=n(this),a=r(o);return e(s)>a.size?!1:t(s,function(g){if(!a.includes(g))return!1},!0)!==!1},_c}var cF;function oAe(){if(cF)return uF;cF=1;var n=ee(),e=nAe(),t=fo(),r=!t("isSubsetOf",function(i){return i});return n({target:"Set",proto:!0,real:!0,forced:r},{isSubsetOf:e}),uF}var fF={},Oc,pF;function sAe(){if(pF)return Oc;pF=1;var n=lo(),e=uo().has,t=Sg(),r=co(),i=ho(),o=lT();return Oc=function(a){var g=n(this),A=r(a);if(t(g)<A.size)return!1;var I=A.getIterator();return i(I,function(C){if(!e(g,C))return o(I,"normal",!1)})!==!1},Oc}var vF;function aAe(){if(vF)return fF;vF=1;var n=ee(),e=sAe(),t=fo(),r=!t("isSupersetOf",function(i){return!i});return n({target:"Set",proto:!0,real:!0,forced:r},{isSupersetOf:e}),fF}var mF={},Tc,yF;function gAe(){if(yF)return Tc;yF=1;var n=lo(),e=uo(),t=fT(),r=co(),i=ho(),o=e.add,s=e.has,a=e.remove;return Tc=function(A){var I=n(this),C=r(A).getIterator(),l=t(I);return i(C,function(d){s(I,d)?a(l,d):o(l,d)}),l},Tc}var Rc,bF;function g7(){return bF||(bF=1,Rc=function(n){try{var e=new Set,t={size:0,has:function(){return!0},keys:function(){return Object.defineProperty({},"next",{get:function(){return e.clear(),e.add(4),function(){return{done:!0}}}})}},r=e[n](t);return r.size===1&&r.values().next().value===4}catch{return!1}}),Rc}var wF;function AAe(){if(wF)return mF;wF=1;var n=ee(),e=gAe(),t=g7(),r=fo(),i=!r("symmetricDifference")||!t("symmetricDifference");return n({target:"Set",proto:!0,real:!0,forced:i},{symmetricDifference:e}),mF}var EF={},Pc,SF;function IAe(){if(SF)return Pc;SF=1;var n=lo(),e=uo().add,t=fT(),r=co(),i=ho();return Pc=function(s){var a=n(this),g=r(s).getIterator(),A=t(a);return i(g,function(I){e(A,I)}),A},Pc}var _F;function CAe(){if(_F)return EF;_F=1;var n=ee(),e=IAe(),t=g7(),r=fo(),i=!r("union")||!t("union");return n({target:"Set",proto:!0,real:!0,forced:i},{union:e}),EF}var xc,OF;function lAe(){if(OF)return xc;OF=1,$i(),Yge(),Jge(),tAe(),iAe(),oAe(),aAe(),AAe(),CAe(),EI();var n=Ee();return xc=n.Set,xc}var $c,TF;function dAe(){if(TF)return $c;TF=1;var n=lAe();return Di(),$c=n,$c}var Dc,RF;function uAe(){return RF||(RF=1,Dc=dAe()),Dc}var hAe=uAe(),jr=ne(hAe),Nc,PF;function cAe(){if(PF)return Nc;PF=1,$i(),EI();var n=e7();return Nc=n,Nc}var Mc,xF;function fAe(){if(xF)return Mc;xF=1;var n=cAe();return Di(),Mc=n,Mc}var qc,$F;function pAe(){if($F)return qc;$F=1;var n=fAe();return qc=n,qc}var Fc,DF;function vAe(){if(DF)return Fc;DF=1;var n=pAe();return Fc=n,Fc}var kc,NF;function mAe(){return NF||(NF=1,kc=vAe()),kc}var Bc,MF;function yAe(){return MF||(MF=1,Bc=mAe()),Bc}var bAe=yAe(),zc=ne(bAe),qF={},jc,FF;function wAe(){if(FF)return jc;FF=1;var n=Ms(),e=Math.floor,t=function(r,i){var o=r.length;if(o<8)for(var s=1,a,g;s<o;){for(g=s,a=r[s];g&&i(r[g-1],a)>0;)r[g]=r[--g];g!==s++&&(r[g]=a)}else for(var A=e(o/2),I=t(n(r,0,A),i),C=t(n(r,A),i),l=I.length,d=C.length,u=0,h=0;u<l||h<d;)r[u+h]=u<l&&h<d?i(I[u],C[h])<=0?I[u++]:C[h++]:u<l?I[u++]:C[h++];return r};return jc=t,jc}var Lc,kF;function EAe(){if(kF)return Lc;kF=1;var n=Ts(),e=n.match(/firefox\/(\d+)/i);return Lc=!!e&&+e[1],Lc}var Gc,BF;function SAe(){if(BF)return Gc;BF=1;var n=Ts();return Gc=/MSIE|Trident/.test(n),Gc}var Wc,zF;function _Ae(){if(zF)return Wc;zF=1;var n=Ts(),e=n.match(/AppleWebKit\/(\d+)\./);return Wc=!!e&&+e[1],Wc}var jF;function OAe(){if(jF)return qF;jF=1;var n=ee(),e=me(),t=Pi(),r=Ar(),i=xi(),o=sQ(),s=yr(),a=ce(),g=wAe(),A=Fs(),I=EAe(),C=SAe(),l=Ag(),d=_Ae(),u=[],h=e(u.sort),v=e(u.push),f=a(function(){u.sort(void 0)}),c=a(function(){u.sort(null)}),b=A("sort"),p=!a(function(){if(l)return l<70;if(!(I&&I>3)){if(C)return!0;if(d)return d<603;var S="",m,w,_,T;for(m=65;m<76;m++){switch(w=String.fromCharCode(m),m){case 66:case 69:case 70:case 72:_=3;break;case 68:case 71:_=4;break;default:_=2}for(T=0;T<47;T++)u.push({k:w+T,v:_})}for(u.sort(function(R,O){return O.v-R.v}),T=0;T<u.length;T++)w=u[T].k.charAt(0),S.charAt(S.length-1)!==w&&(S+=w);return S!=="DGBEFHACIJK"}}),y=f||!c||!b||!p,E=function(S){return function(m,w){return w===void 0?-1:m===void 0?1:S!==void 0?+S(m,w)||0:s(m)>s(w)?1:-1}};return n({target:"Array",proto:!0,forced:y},{sort:function(m){m!==void 0&&t(m);var w=r(this);if(p)return m===void 0?h(w):h(w,m);var _=[],T=i(w),R,O;for(O=0;O<T;O++)O in w&&v(_,w[O]);for(g(_,E(m)),R=i(_),O=0;O<R;)w[O]=_[O++];for(;O<T;)o(w,O++);return w}}),qF}var Vc,LF;function TAe(){if(LF)return Vc;LF=1,OAe();var n=ft();return Vc=n("Array","sort"),Vc}var Zc,GF;function RAe(){if(GF)return Zc;GF=1;var n=Je(),e=TAe(),t=Array.prototype;return Zc=function(r){var i=r.sort;return r===t||n(t,r)&&i===t.sort?e:i},Zc}var Hc,WF;function PAe(){if(WF)return Hc;WF=1;var n=RAe();return Hc=n,Hc}var Uc,VF;function xAe(){return VF||(VF=1,Uc=PAe()),Uc}var $Ae=xAe(),mi=ne($Ae),Kc,ZF;function DAe(){if(ZF)return Kc;ZF=1,$i();var n=ft();return Kc=n("Array","keys"),Kc}var Yc,HF;function NAe(){if(HF)return Yc;HF=1;var n=DAe();return Yc=n,Yc}var Xc,UF;function MAe(){if(UF)return Xc;UF=1,Di();var n=fn(),e=ct(),t=Je(),r=NAe(),i=Array.prototype,o={DOMTokenList:!0,NodeList:!0};return Xc=function(s){var a=s.keys;return s===i||t(i,s)&&a===i.keys||e(o,n(s))?r:a},Xc}var Qc,KF;function qAe(){return KF||(KF=1,Qc=MAe()),Qc}var FAe=qAe(),Bo=ne(FAe),Jc,YF;function kAe(){if(YF)return Jc;YF=1,$i();var n=ft();return Jc=n("Array","values"),Jc}var ef,XF;function BAe(){if(XF)return ef;XF=1;var n=kAe();return ef=n,ef}var tf,QF;function zAe(){if(QF)return tf;QF=1,Di();var n=fn(),e=ct(),t=Je(),r=BAe(),i=Array.prototype,o={DOMTokenList:!0,NodeList:!0};return tf=function(s){var a=s.values;return s===i||t(i,s)&&a===i.values||e(o,n(s))?r:a},tf}var rf,JF;function jAe(){return JF||(JF=1,rf=zAe()),rf}var LAe=jAe(),LA=ne(LAe),nf,ek;function GAe(){if(ek)return nf;ek=1,$i();var n=ft();return nf=n("Array","entries"),nf}var of,tk;function WAe(){if(tk)return of;tk=1;var n=GAe();return of=n,of}var sf,rk;function VAe(){if(rk)return sf;rk=1,Di();var n=fn(),e=ct(),t=Je(),r=WAe(),i=Array.prototype,o={DOMTokenList:!0,NodeList:!0};return sf=function(s){var a=s.entries;return s===i||t(i,s)&&a===i.entries||e(o,n(s))?r:a},sf}var af,ik;function ZAe(){return ik||(ik=1,af=VAe()),af}var HAe=ZAe(),UAe=ne(HAe),gf,nk;function KAe(){return nk||(nk=1,gf=n7()),gf}var YAe=KAe(),_g=ne(YAe);const $t=[];for(let n=0;n<256;++n)$t.push((n+256).toString(16).slice(1));function XAe(n,e=0){return($t[n[e+0]]+$t[n[e+1]]+$t[n[e+2]]+$t[n[e+3]]+"-"+$t[n[e+4]]+$t[n[e+5]]+"-"+$t[n[e+6]]+$t[n[e+7]]+"-"+$t[n[e+8]]+$t[n[e+9]]+"-"+$t[n[e+10]]+$t[n[e+11]]+$t[n[e+12]]+$t[n[e+13]]+$t[n[e+14]]+$t[n[e+15]]).toLowerCase()}let Af;const QAe=new Uint8Array(16);function JAe(){if(!Af){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");Af=crypto.getRandomValues.bind(crypto)}return Af(QAe)}const eIe=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto);var ok={randomUUID:eIe};function tIe(n,e,t){n=n||{};const r=n.random??n.rng?.()??JAe();if(r.length<16)throw new Error("Random bytes length must be >= 16");return r[6]=r[6]&15|64,r[8]=r[8]&63|128,XAe(r)}function is(n,e,t){return ok.randomUUID&&!n?ok.randomUUID():tIe(n)}function sk(n,e){var t=Be(n);if(ai){var r=ai(n);e&&(r=st(r).call(r,function(i){return Ci(n,i).enumerable})),t.push.apply(t,r)}return t}function ak(n){for(var e=1;e<arguments.length;e++){var t,r,i=arguments[e]!=null?arguments[e]:{};e%2?be(t=sk(Object(i),!0)).call(t,function(o){ze(n,o,i[o])}):gi?wg(n,gi(i)):be(r=sk(Object(i))).call(r,function(o){_g(n,o,Ci(i,o))})}return n}function gk(n){return typeof n=="string"||typeof n=="number"}let rIe=class A7{constructor(e){ze(this,"delay",void 0),ze(this,"max",void 0),ze(this,"_queue",[]),ze(this,"_timeout",null),ze(this,"_extended",null),this.delay=null,this.max=1/0,this.setOptions(e)}setOptions(e){e&&typeof e.delay<"u"&&(this.delay=e.delay),e&&typeof e.max<"u"&&(this.max=e.max),this._flushIfNeeded()}static extend(e,t){const r=new A7(t);if(e.flush!==void 0)throw new Error("Target object already has a property flush");e.flush=()=>{r.flush()};const i=[{name:"flush",original:void 0}];if(t&&t.replace)for(let o=0;o<t.replace.length;o++){const s=t.replace[o];i.push({name:s,original:e[s]}),r.replace(e,s)}return r._extended={object:e,methods:i},r}destroy(){if(this.flush(),this._extended){const e=this._extended.object,t=this._extended.methods;for(let r=0;r<t.length;r++){const i=t[r];i.original?e[i.name]=i.original:delete e[i.name]}this._extended=null}}replace(e,t){const r=this,i=e[t];if(!i)throw new Error("Method "+t+" undefined");e[t]=function(){for(var o=arguments.length,s=new Array(o),a=0;a<o;a++)s[a]=arguments[a];r.queue({args:s,fn:i,context:this})}}queue(e){typeof e=="function"?this._queue.push({fn:e}):this._queue.push(e),this._flushIfNeeded()}_flushIfNeeded(){this._queue.length>this.max&&this.flush(),this._timeout!=null&&(clearTimeout(this._timeout),this._timeout=null),this.queue.length>0&&typeof this.delay=="number"&&(this._timeout=ri(()=>{this.flush()},this.delay))}flush(){var e,t;be(e=ti(t=this._queue).call(t,0)).call(e,r=>{r.fn.apply(r.context||r.fn,r.args||[])})}},iIe=class cO{constructor(){ze(this,"_subscribers",{"*":[],add:[],remove:[],update:[]}),ze(this,"subscribe",cO.prototype.on),ze(this,"unsubscribe",cO.prototype.off)}_trigger(e,t,r){var i;if(e==="*")throw new Error("Cannot trigger event *");be(i=[...this._subscribers[e],...this._subscribers["*"]]).call(i,o=>{o(e,t,r??null)})}on(e,t){typeof t=="function"&&this._subscribers[e].push(t)}off(e,t){var r;this._subscribers[e]=st(r=this._subscribers[e]).call(r,i=>i!==t)}},Ak=class Oa{constructor(e){ze(this,"_pairs",void 0),this._pairs=e}*[Ho](){for(const[e,t]of this._pairs)yield[e,t]}*entries(){for(const[e,t]of this._pairs)yield[e,t]}*keys(){for(const[e]of this._pairs)yield e}*values(){for(const[,e]of this._pairs)yield e}toIdArray(){var e;return Mt(e=[...this._pairs]).call(e,t=>t[0])}toItemArray(){var e;return Mt(e=[...this._pairs]).call(e,t=>t[1])}toEntryArray(){return[...this._pairs]}toObjectMap(){const e=nn(null);for(const[t,r]of this._pairs)e[t]=r;return e}toMap(){return new bg(this._pairs)}toIdSet(){return new jr(this.toIdArray())}toItemSet(){return new jr(this.toItemArray())}cache(){return new Oa([...this._pairs])}distinct(e){const t=new jr;for(const[r,i]of this._pairs)t.add(e(i,r));return t}filter(e){const t=this._pairs;return new Oa({*[Ho](){for(const[r,i]of t)e(i,r)&&(yield[r,i])}})}forEach(e){for(const[t,r]of this._pairs)e(r,t)}map(e){const t=this._pairs;return new Oa({*[Ho](){for(const[r,i]of t)yield[r,e(i,r)]}})}max(e){const t=zc(this._pairs);let r=t.next();if(r.done)return null;let i=r.value[1],o=e(r.value[1],r.value[0]);for(;!(r=t.next()).done;){const[s,a]=r.value,g=e(a,s);g>o&&(o=g,i=a)}return i}min(e){const t=zc(this._pairs);let r=t.next();if(r.done)return null;let i=r.value[1],o=e(r.value[1],r.value[0]);for(;!(r=t.next()).done;){const[s,a]=r.value,g=e(a,s);g<o&&(o=g,i=a)}return i}reduce(e,t){for(const[r,i]of this._pairs)t=e(t,i,r);return t}sort(e){return new Oa({[Ho]:()=>{var t;return zc(mi(t=[...this._pairs]).call(t,(r,i)=>{let[o,s]=r,[a,g]=i;return e(s,g,o,a)}))}})}};function nIe(n,e){return n[e]==null&&(n[e]=is()),n}let us=class extends iIe{get idProp(){return this._idProp}constructor(e,t){super(),ze(this,"flush",void 0),ze(this,"length",void 0),ze(this,"_options",void 0),ze(this,"_data",void 0),ze(this,"_idProp",void 0),ze(this,"_queue",null),e&&!we(e)&&(t=e,e=[]),this._options=t||{},this._data=new bg,this.length=0,this._idProp=this._options.fieldId||"id",e&&e.length&&this.add(e),this.setOptions(t)}setOptions(e){e&&e.queue!==void 0&&(e.queue===!1?this._queue&&(this._queue.destroy(),this._queue=null):(this._queue||(this._queue=rIe.extend(this,{replace:["add","update","remove"]})),e.queue&&typeof e.queue=="object"&&this._queue.setOptions(e.queue)))}add(e,t){const r=[];let i;if(we(e)){const o=Mt(e).call(e,s=>s[this._idProp]);if(i7(o).call(o,s=>this._data.has(s)))throw new Error("A duplicate id was found in the parameter array.");for(let s=0,a=e.length;s<a;s++)i=this._addItem(e[s]),r.push(i)}else if(e&&typeof e=="object")i=this._addItem(e),r.push(i);else throw new Error("Unknown dataType");return r.length&&this._trigger("add",{items:r},t),r}update(e,t){const r=[],i=[],o=[],s=[],a=this._idProp,g=A=>{const I=A[a];if(I!=null&&this._data.has(I)){const C=A,l=tt({},this._data.get(I)),d=this._updateItem(C);i.push(d),s.push(C),o.push(l)}else{const C=this._addItem(A);r.push(C)}};if(we(e))for(let A=0,I=e.length;A<I;A++)e[A]&&typeof e[A]=="object"?g(e[A]):console.warn("Ignoring input item, which is not an object at index "+A);else if(e&&typeof e=="object")g(e);else throw new Error("Unknown dataType");if(r.length&&this._trigger("add",{items:r},t),i.length){const A={items:i,oldData:o,data:s};this._trigger("update",A,t)}return aQ(r).call(r,i)}updateOnly(e,t){var r;we(e)||(e=[e]);const i=Mt(r=Mt(e).call(e,o=>{const s=this._data.get(o[this._idProp]);if(s==null)throw new Error("Updating non-existent items is not allowed.");return{oldData:s,update:o}})).call(r,o=>{let{oldData:s,update:a}=o;const g=s[this._idProp],A=sse(s,a);return this._data.set(g,A),{id:g,oldData:s,updatedData:A}});if(i.length){const o={items:Mt(i).call(i,s=>s.id),oldData:Mt(i).call(i,s=>s.oldData),data:Mt(i).call(i,s=>s.updatedData)};return this._trigger("update",o,t),o.items}else return[]}get(e,t){let r,i,o;gk(e)?(r=e,o=t):we(e)?(i=e,o=t):o=e;const s=o&&o.returnType==="Object"?"Object":"Array",a=o&&st(o),g=[];let A,I,C;if(r!=null)A=this._data.get(r),A&&a&&!a(A)&&(A=void 0);else if(i!=null)for(let d=0,u=i.length;d<u;d++)A=this._data.get(i[d]),A!=null&&(!a||a(A))&&g.push(A);else{var l;I=[...Bo(l=this._data).call(l)];for(let d=0,u=I.length;d<u;d++)C=I[d],A=this._data.get(C),A!=null&&(!a||a(A))&&g.push(A)}if(o&&o.order&&r==null&&this._sort(g,o.order),o&&o.fields){const d=o.fields;if(r!=null&&A!=null)A=this._filterFields(A,d);else for(let u=0,h=g.length;u<h;u++)g[u]=this._filterFields(g[u],d)}if(s=="Object"){const d={};for(let u=0,h=g.length;u<h;u++){const v=g[u],f=v[this._idProp];d[f]=v}return d}else return r!=null?A??null:g}getIds(e){const t=this._data,r=e&&st(e),i=e&&e.order,o=[...Bo(t).call(t)],s=[];if(r)if(i){const a=[];for(let g=0,A=o.length;g<A;g++){const I=o[g],C=this._data.get(I);C!=null&&r(C)&&a.push(C)}this._sort(a,i);for(let g=0,A=a.length;g<A;g++)s.push(a[g][this._idProp])}else for(let a=0,g=o.length;a<g;a++){const A=o[a],I=this._data.get(A);I!=null&&r(I)&&s.push(I[this._idProp])}else if(i){const a=[];for(let g=0,A=o.length;g<A;g++){const I=o[g];a.push(t.get(I))}this._sort(a,i);for(let g=0,A=a.length;g<A;g++)s.push(a[g][this._idProp])}else for(let a=0,g=o.length;a<g;a++){const A=o[a],I=t.get(A);I!=null&&s.push(I[this._idProp])}return s}getDataSet(){return this}forEach(e,t){const r=t&&st(t),i=this._data,o=[...Bo(i).call(i)];if(t&&t.order){const s=this.get(t);for(let a=0,g=s.length;a<g;a++){const A=s[a],I=A[this._idProp];e(A,I)}}else for(let s=0,a=o.length;s<a;s++){const g=o[s],A=this._data.get(g);A!=null&&(!r||r(A))&&e(A,g)}}map(e,t){const r=t&&st(t),i=[],o=this._data,s=[...Bo(o).call(o)];for(let a=0,g=s.length;a<g;a++){const A=s[a],I=this._data.get(A);I!=null&&(!r||r(I))&&i.push(e(I,A))}return t&&t.order&&this._sort(i,t.order),i}_filterFields(e,t){var r;return e&&cT(r=we(t)?t:Be(t)).call(r,(i,o)=>(i[o]=e[o],i),{})}_sort(e,t){if(typeof t=="string"){const r=t;mi(e).call(e,(i,o)=>{const s=i[r],a=o[r];return s>a?1:s<a?-1:0})}else if(typeof t=="function")mi(e).call(e,t);else throw new TypeError("Order must be a function or a string")}remove(e,t){const r=[],i=[],o=we(e)?e:[e];for(let s=0,a=o.length;s<a;s++){const g=this._remove(o[s]);if(g){const A=g[this._idProp];A!=null&&(r.push(A),i.push(g))}}return r.length&&this._trigger("remove",{items:r,oldData:i},t),r}_remove(e){let t;if(gk(e)?t=e:e&&typeof e=="object"&&(t=e[this._idProp]),t!=null&&this._data.has(t)){const r=this._data.get(t)||null;return this._data.delete(t),--this.length,r}return null}clear(e){var t;const r=[...Bo(t=this._data).call(t)],i=[];for(let o=0,s=r.length;o<s;o++)i.push(this._data.get(r[o]));return this._data.clear(),this.length=0,this._trigger("remove",{items:r,oldData:i},e),r}max(e){let t=null,r=null;for(const o of LA(i=this._data).call(i)){var i;const s=o[e];typeof s=="number"&&(r==null||s>r)&&(t=o,r=s)}return t||null}min(e){let t=null,r=null;for(const o of LA(i=this._data).call(i)){var i;const s=o[e];typeof s=="number"&&(r==null||s<r)&&(t=o,r=s)}return t||null}distinct(e){const t=this._data,r=[...Bo(t).call(t)],i=[];let o=0;for(let s=0,a=r.length;s<a;s++){const g=r[s],I=t.get(g)[e];let C=!1;for(let l=0;l<o;l++)if(i[l]==I){C=!0;break}!C&&I!==void 0&&(i[o]=I,o++)}return i}_addItem(e){const t=nIe(e,this._idProp),r=t[this._idProp];if(this._data.has(r))throw new Error("Cannot add item: item with id "+r+" already exists");return this._data.set(r,t),++this.length,r}_updateItem(e){const t=e[this._idProp];if(t==null)throw new Error("Cannot update item: item has no id (item: "+ks(e)+")");const r=this._data.get(t);if(!r)throw new Error("Cannot update item: no item with id "+t+" found");return this._data.set(t,ak(ak({},r),e)),t}stream(e){if(e){const r=this._data;return new Ak({*[Ho](){for(const i of e){const o=r.get(i);o!=null&&(yield[i,o])}}})}else{var t;return new Ak({[Ho]:z(t=UAe(this._data)).call(t,this._data)})}}};function oIe(n,e){return typeof e=="object"&&e!==null&&n===e.idProp&&typeof e.add=="function"&&typeof e.clear=="function"&&typeof e.distinct=="function"&&typeof be(e)=="function"&&typeof e.get=="function"&&typeof e.getDataSet=="function"&&typeof e.getIds=="function"&&typeof e.length=="number"&&typeof Mt(e)=="function"&&typeof e.max=="function"&&typeof e.min=="function"&&typeof e.off=="function"&&typeof e.on=="function"&&typeof e.remove=="function"&&typeof e.setOptions=="function"&&typeof e.stream=="function"&&typeof e.update=="function"&&typeof e.updateOnly=="function"}function I7(n,e){return typeof e=="object"&&e!==null&&n===e.idProp&&typeof be(e)=="function"&&typeof e.get=="function"&&typeof e.getDataSet=="function"&&typeof e.getIds=="function"&&typeof e.length=="number"&&typeof Mt(e)=="function"&&typeof e.off=="function"&&typeof e.on=="function"&&typeof e.stream=="function"&&oIe(n,e.getDataSet())}var Ik={},If,Ck;function sIe(){if(Ck)return If;Ck=1;var n=Le(),e=ce(),t=me(),r=yr(),i=gQ().trim,o=tT(),s=t("".charAt),a=n.parseFloat,g=n.Symbol,A=g&&g.iterator,I=1/a(o+"-0")!==-1/0||A&&!e(function(){a(Object(A))});return If=I?function(l){var d=i(r(l)),u=a(d);return u===0&&s(d,0)==="-"?-0:u}:a,If}var lk;function aIe(){if(lk)return Ik;lk=1;var n=ee(),e=sIe();return n({global:!0,forced:parseFloat!==e},{parseFloat:e}),Ik}var Cf,dk;function gIe(){if(dk)return Cf;dk=1,aIe();var n=Ee();return Cf=n.parseFloat,Cf}var lf,uk;function AIe(){if(uk)return lf;uk=1;var n=gIe();return lf=n,lf}var df,hk;function IIe(){return hk||(hk=1,df=AIe()),df}var CIe=IIe(),C7=ne(CIe),ck={},fk;function lIe(){if(fk)return ck;fk=1;var n=ee(),e=ce(),t=YO().f,r=e(function(){return!Object.getOwnPropertyNames(1)});return n({target:"Object",stat:!0,forced:r},{getOwnPropertyNames:t}),ck}var uf,pk;function dIe(){if(pk)return uf;pk=1,lIe();var n=Ee(),e=n.Object;return uf=function(r){return e.getOwnPropertyNames(r)},uf}var hf,vk;function uIe(){if(vk)return hf;vk=1;var n=dIe();return hf=n,hf}var cf,mk;function hIe(){return mk||(mk=1,cf=uIe()),cf}var cIe=hIe(),fIe=ne(cIe);function pT(n,e){const t=["node","edge","label"];let r=!0;const i=Yi(e,"chosen");if(typeof i=="boolean")r=i;else if(typeof i=="object"){if(_e(t).call(t,n)===-1)throw new Error("choosify: subOption '"+n+"' should be one of '"+t.join("', '")+"'");const o=Yi(e,["chosen",n]);(typeof o=="boolean"||typeof o=="function")&&(r=o)}return r}function fO(n,e,t){if(n.width<=0||n.height<=0)return!1;if(t!==void 0){const o={x:e.x-t.x,y:e.y-t.y};if(t.angle!==0){const s=-t.angle;e={x:Math.cos(s)*o.x-Math.sin(s)*o.y,y:Math.sin(s)*o.x+Math.cos(s)*o.y}}else e=o}const r=n.x+n.width,i=n.y+n.width;return n.left<e.x&&r>e.x&&n.top<e.y&&i>e.y}function GA(n){return typeof n=="string"&&n!==""}function l7(n,e,t,r){let i=r.x,o=r.y;if(typeof r.distanceToBorder=="function"){const s=r.distanceToBorder(n,e),a=Math.sin(e)*s,g=Math.cos(e)*s;g===s?(i+=s,o=r.y):a===s?(i=r.x,o-=s):(i+=g,o-=a)}else r.shape.width>r.shape.height?(i=r.x+r.shape.width*.5,o=r.y-t):(i=r.x+t,o=r.y-r.shape.height*.5);return{x:i,y:o}}let pIe=class{constructor(e){this.measureText=e,this.current=0,this.width=0,this.height=0,this.lines=[]}_add(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"normal";this.lines[e]===void 0&&(this.lines[e]={width:0,height:0,blocks:[]});let i=t;(t===void 0||t==="")&&(i=" ");const o=this.measureText(i,r),s=tt({},LA(o));s.text=t,s.width=o.width,s.mod=r,(t===void 0||t==="")&&(s.width=0),this.lines[e].blocks.push(s),this.lines[e].width+=s.width}curWidth(){const e=this.lines[this.current];return e===void 0?0:e.width}append(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"normal";this._add(this.current,e,t)}newLine(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"normal";this._add(this.current,e,t),this.current++}determineLineHeights(){for(let e=0;e<this.lines.length;e++){const t=this.lines[e];let r=0;if(t.blocks!==void 0)for(let i=0;i<t.blocks.length;i++){const o=t.blocks[i];r<o.height&&(r=o.height)}t.height=r}}determineLabelSize(){let e=0,t=0;for(let r=0;r<this.lines.length;r++){const i=this.lines[r];i.width>e&&(e=i.width),t+=i.height}this.width=e,this.height=t}removeEmptyBlocks(){const e=[];for(let t=0;t<this.lines.length;t++){const r=this.lines[t];if(r.blocks.length===0||t===this.lines.length-1&&r.width===0)continue;const i={};tt(i,r),i.blocks=[];let o;const s=[];for(let a=0;a<r.blocks.length;a++){const g=r.blocks[a];g.width!==0?s.push(g):o===void 0&&(o=g)}s.length===0&&o!==void 0&&s.push(o),i.blocks=s,e.push(i)}return e}finalize(){this.determineLineHeights(),this.determineLabelSize();const e=this.removeEmptyBlocks();return{width:this.width,height:this.height,lines:e}}};const vIe={"<b>":/<b>/,"<i>":/<i>/,"<code>":/<code>/,"</b>":/<\/b>/,"</i>":/<\/i>/,"</code>":/<\/code>/,"*":/\*/,_:/_/,"`":/`/,afterBold:/[^*]/,afterItal:/[^_]/,afterMono:/[^`]/};let yk=class{constructor(e){this.text=e,this.bold=!1,this.ital=!1,this.mono=!1,this.spacing=!1,this.position=0,this.buffer="",this.modStack=[],this.blocks=[]}mod(){return this.modStack.length===0?"normal":this.modStack[0]}modName(){if(this.modStack.length===0)return"normal";if(this.modStack[0]==="mono")return"mono";if(this.bold&&this.ital)return"boldital";if(this.bold)return"bold";if(this.ital)return"ital"}emitBlock(){this.spacing&&(this.add(" "),this.spacing=!1),this.buffer.length>0&&(this.blocks.push({text:this.buffer,mod:this.modName()}),this.buffer="")}add(e){e===" "&&(this.spacing=!0),this.spacing&&(this.buffer+=" ",this.spacing=!1),e!=" "&&(this.buffer+=e)}parseWS(e){return/[ \t]/.test(e)?(this.mono?this.add(e):this.spacing=!0,!0):!1}setTag(e){this.emitBlock(),this[e]=!0,this.modStack.unshift(e)}unsetTag(e){this.emitBlock(),this[e]=!1,this.modStack.shift()}parseStartTag(e,t){return!this.mono&&!this[e]&&this.match(t)?(this.setTag(e),!0):!1}match(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;const[r,i]=this.prepareRegExp(e),o=r.test(this.text.substr(this.position,i));return o&&t&&(this.position+=i-1),o}parseEndTag(e,t,r){let i=this.mod()===e;return e==="mono"?i=i&&this.mono:i=i&&!this.mono,i&&this.match(t)?(r!==void 0?(this.position===this.text.length-1||this.match(r,!1))&&this.unsetTag(e):this.unsetTag(e),!0):!1}replace(e,t){return this.match(e)?(this.add(t),this.position+=length-1,!0):!1}prepareRegExp(e){let t,r;if(e instanceof RegExp)r=e,t=1;else{const i=vIe[e];i!==void 0?r=i:r=new RegExp(e),t=e.length}return[r,t]}},mIe=class{constructor(e,t,r,i){this.ctx=e,this.parent=t,this.selected=r,this.hover=i;const o=(s,a)=>{if(s===void 0)return 0;const g=this.parent.getFormattingValues(e,r,i,a);let A=0;return s!==""&&(A=this.ctx.measureText(s).width),{width:A,values:g}};this.lines=new pIe(o)}process(e){if(!GA(e))return this.lines.finalize();const t=this.parent.fontOptions;e=e.replace(/\r\n/g,`
|
||
`),e=e.replace(/\r/g,`
|
||
`);const r=String(e).split(`
|
||
`),i=r.length;if(t.multi)for(let o=0;o<i;o++){const s=this.splitBlocks(r[o],t.multi);if(s!==void 0){if(s.length===0){this.lines.newLine("");continue}if(t.maxWdt>0)for(let a=0;a<s.length;a++){const g=s[a].mod,A=s[a].text;this.splitStringIntoLines(A,g,!0)}else for(let a=0;a<s.length;a++){const g=s[a].mod,A=s[a].text;this.lines.append(A,g)}this.lines.newLine()}}else if(t.maxWdt>0)for(let o=0;o<i;o++)this.splitStringIntoLines(r[o]);else for(let o=0;o<i;o++)this.lines.newLine(r[o]);return this.lines.finalize()}decodeMarkupSystem(e){let t="none";return e==="markdown"||e==="md"?t="markdown":(e===!0||e==="html")&&(t="html"),t}splitHtmlBlocks(e){const t=new yk(e),r=i=>/&/.test(i)?(t.replace(t.text,"<","<")||t.replace(t.text,"&","&")||t.add("&"),!0):!1;for(;t.position<t.text.length;){const i=t.text.charAt(t.position);t.parseWS(i)||/</.test(i)&&(t.parseStartTag("bold","<b>")||t.parseStartTag("ital","<i>")||t.parseStartTag("mono","<code>")||t.parseEndTag("bold","</b>")||t.parseEndTag("ital","</i>")||t.parseEndTag("mono","</code>"))||r(i)||t.add(i),t.position++}return t.emitBlock(),t.blocks}splitMarkdownBlocks(e){const t=new yk(e);let r=!0;const i=o=>/\\/.test(o)?(t.position<this.text.length+1&&(t.position++,o=this.text.charAt(t.position),/ \t/.test(o)?t.spacing=!0:(t.add(o),r=!1)),!0):!1;for(;t.position<t.text.length;){const o=t.text.charAt(t.position);t.parseWS(o)||i(o)||(r||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(o),r=!1),t.position++}return t.emitBlock(),t.blocks}splitBlocks(e,t){const r=this.decodeMarkupSystem(t);if(r==="none")return[{text:e,mod:"normal"}];if(r==="markdown")return this.splitMarkdownBlocks(e);if(r==="html")return this.splitHtmlBlocks(e)}overMaxWidth(e){const t=this.ctx.measureText(e).width;return this.lines.curWidth()+t>this.parent.fontOptions.maxWdt}getLongestFit(e){let t="",r=0;for(;r<e.length;){const o=t+(t===""?"":" ")+e[r];if(this.overMaxWidth(o))break;t=o,r++}return r}getLongestFitWord(e){let t=0;for(;t<e.length&&!this.overMaxWidth(zr(e).call(e,0,t));)t++;return t}splitStringIntoLines(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"normal",r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.parent.getFormattingValues(this.ctx,this.selected,this.hover,t),e=e.replace(/^( +)/g,"$1\r"),e=e.replace(/([^\r][^ ]*)( +)/g,"$1\r$2\r");let i=e.split("\r");for(;i.length>0;){let o=this.getLongestFit(i);if(o===0){const s=i[0],a=this.getLongestFitWord(s);this.lines.newLine(zr(s).call(s,0,a),t),i[0]=zr(s).call(s,a)}else{let s=o;i[o-1]===" "?o--:i[s]===" "&&s++;const a=zr(i).call(i,0,o).join("");o==i.length&&r?this.lines.append(a,t):this.lines.newLine(a,t),i=zr(i).call(i,s)}}}};const ya=["bold","ital","boldital","mono"];let d7=class _A{constructor(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;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=r}setOptions(e){if(this.elementOptions=e,this.initFontOptions(e.font),GA(e.label)?this.labelDirty=!0:e.label=void 0,e.font!==void 0&&e.font!==null){if(typeof e.font=="string")this.baseSize=this.fontOptions.size;else if(typeof e.font=="object"){const t=e.font.size;t!==void 0&&(this.baseSize=t)}}}initFontOptions(e){if(de(ya,t=>{this.fontOptions[t]={}}),_A.parseFontString(this.fontOptions,e)){this.fontOptions.vadjust=0;return}de(e,(t,r)=>{t!=null&&typeof t!="object"&&(this.fontOptions[r]=t)})}static parseFontString(e,t){if(!t||typeof t!="string")return!1;const r=t.split(" ");return e.size=+r[0].replace("px",""),e.face=r[1],e.color=r[2],!0}constrain(e){const t={constrainWidth:!1,maxWdt:-1,minWdt:-1,constrainHeight:!1,minHgt:-1,valign:"middle"},r=Yi(e,"widthConstraint");if(typeof r=="number")t.maxWdt=Number(r),t.minWdt=Number(r);else if(typeof r=="object"){const o=Yi(e,["widthConstraint","maximum"]);typeof o=="number"&&(t.maxWdt=Number(o));const s=Yi(e,["widthConstraint","minimum"]);typeof s=="number"&&(t.minWdt=Number(s))}const i=Yi(e,"heightConstraint");if(typeof i=="number")t.minHgt=Number(i);else if(typeof i=="object"){const o=Yi(e,["heightConstraint","minimum"]);typeof o=="number"&&(t.minHgt=Number(o));const s=Yi(e,["heightConstraint","valign"]);typeof s=="string"&&(s==="top"||s==="bottom")&&(t.valign=s)}return t}update(e,t){this.setOptions(e,!0),this.propagateFonts(t),Me(this.fontOptions,this.constrain(t)),this.fontOptions.chooser=pT("label",t)}adjustSizes(e){const t=e?e.right+e.left:0;this.fontOptions.constrainWidth&&(this.fontOptions.maxWdt-=t,this.fontOptions.minWdt-=t);const r=e?e.top+e.bottom:0;this.fontOptions.constrainHeight&&(this.fontOptions.minHgt-=r)}addFontOptionsToPile(e,t){for(let r=0;r<t.length;++r)this.addFontToPile(e,t[r])}addFontToPile(e,t){if(t===void 0||t.font===void 0||t.font===null)return;const r=t.font;e.push(r)}getBasicOptions(e){const t={};for(let r=0;r<e.length;++r){let i=e[r];const o={};_A.parseFontString(o,i)&&(i=o),de(i,(s,a)=>{s!==void 0&&(Object.prototype.hasOwnProperty.call(t,a)||(_e(ya).call(ya,a)!==-1?t[a]={}:t[a]=s))})}return t}getFontOption(e,t,r){let i;for(let o=0;o<e.length;++o){const s=e[o];if(Object.prototype.hasOwnProperty.call(s,t)){if(i=s[t],i==null)continue;const a={};if(_A.parseFontString(a,i)&&(i=a),Object.prototype.hasOwnProperty.call(i,r))return i[r]}}if(Object.prototype.hasOwnProperty.call(this.fontOptions,r))return this.fontOptions[r];throw new Error("Did not find value for multi-font for property: '"+r+"'")}getFontOptions(e,t){const r={},i=["color","size","face","mod","vadjust"];for(let o=0;o<i.length;++o){const s=i[o];r[s]=this.getFontOption(e,t,s)}return r}propagateFonts(e){const t=[];this.addFontOptionsToPile(t,e),this.fontOptions=this.getBasicOptions(t);for(let r=0;r<ya.length;++r){const i=ya[r],o=this.fontOptions[i],s=this.getFontOptions(t,i);de(s,(a,g)=>{o[g]=a}),o.size=Number(o.size),o.vadjust=Number(o.vadjust)}}draw(e,t,r,i,o){let s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:"middle";if(this.elementOptions.label===void 0)return;let a=this.fontOptions.size*this.body.view.scale;this.elementOptions.label&&a<this.elementOptions.scaling.label.drawThreshold-1||(a>=this.elementOptions.scaling.label.maxVisible&&(a=Number(this.elementOptions.scaling.label.maxVisible)/this.body.view.scale),this.calculateLabelSize(e,i,o,t,r,s),this._drawBackground(e),this._drawText(e,t,this.size.yLine,s,a))}_drawBackground(e){if(this.fontOptions.background!==void 0&&this.fontOptions.background!=="none"){e.fillStyle=this.fontOptions.background;const t=this.getSize();e.fillRect(t.left,t.top,t.width,t.height)}}_drawText(e,t,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"middle",o=arguments.length>4?arguments[4]:void 0;[t,r]=this._setAlignment(e,t,r,i),e.textAlign="left",t=t-this.size.width/2,this.fontOptions.valign&&this.size.height>this.size.labelHeight&&(this.fontOptions.valign==="top"&&(r-=(this.size.height-this.size.labelHeight)/2),this.fontOptions.valign==="bottom"&&(r+=(this.size.height-this.size.labelHeight)/2));for(let s=0;s<this.lineCount;s++){const a=this.lines[s];if(a&&a.blocks){let g=0;this.isEdgeLabel||this.fontOptions.align==="center"?g+=(this.size.width-a.width)/2:this.fontOptions.align==="right"&&(g+=this.size.width-a.width);for(let A=0;A<a.blocks.length;A++){const I=a.blocks[A];e.font=I.font;const[C,l]=this._getColor(I.color,o,I.strokeColor);I.strokeWidth>0&&(e.lineWidth=I.strokeWidth,e.strokeStyle=l,e.lineJoin="round"),e.fillStyle=C,I.strokeWidth>0&&e.strokeText(I.text,t+g,r+I.vadjust),e.fillText(I.text,t+g,r+I.vadjust),g+=I.width}r+=a.height}}}_setAlignment(e,t,r,i){if(this.isEdgeLabel&&this.fontOptions.align!=="horizontal"&&this.pointToSelf===!1){t=0,r=0;const o=2;this.fontOptions.align==="top"?(e.textBaseline="alphabetic",r-=2*o):this.fontOptions.align==="bottom"?(e.textBaseline="hanging",r+=2*o):e.textBaseline="middle"}else e.textBaseline=i;return[t,r]}_getColor(e,t,r){let i=e||"#000000",o=r||"#ffffff";if(t<=this.elementOptions.scaling.label.drawThreshold){const s=Math.max(0,Math.min(1,1-(this.elementOptions.scaling.label.drawThreshold-t)));i=hr(i,s),o=hr(o,s)}return[i,o]}getTextSize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;return this._processLabel(e,t,r),{width:this.size.width,height:this.size.height,lineCount:this.lineCount}}getSize(){let t=this.size.left,r=this.size.top-.5*2;if(this.isEdgeLabel){const o=-this.size.width*.5;switch(this.fontOptions.align){case"middle":t=o,r=-this.size.height*.5;break;case"top":t=o,r=-(this.size.height+2);break;case"bottom":t=o,r=2;break}}return{left:t,top:r,width:this.size.width,height:this.size.height}}calculateLabelSize(e,t,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:"middle";this._processLabel(e,t,r),this.size.left=i-this.size.width*.5,this.size.top=o-this.size.height*.5,this.size.yLine=o+(1-this.lineCount)*.5*this.fontOptions.size,s==="hanging"&&(this.size.top+=.5*this.fontOptions.size,this.size.top+=4,this.size.yLine+=4)}getFormattingValues(e,t,r,i){const o=function(g,A,I){return A==="normal"?I==="mod"?"":g[I]:g[A][I]!==void 0?g[A][I]:g[I]},s={color:o(this.fontOptions,i,"color"),size:o(this.fontOptions,i,"size"),face:o(this.fontOptions,i,"face"),mod:o(this.fontOptions,i,"mod"),vadjust:o(this.fontOptions,i,"vadjust"),strokeWidth:this.fontOptions.strokeWidth,strokeColor:this.fontOptions.strokeColor};(t||r)&&(i==="normal"&&this.fontOptions.chooser===!0&&this.elementOptions.labelHighlightBold?s.mod="bold":typeof this.fontOptions.chooser=="function"&&this.fontOptions.chooser(s,this.elementOptions.id,t,r));let a="";return s.mod!==void 0&&s.mod!==""&&(a+=s.mod+" "),a+=s.size+"px "+s.face,e.font=a.replace(/"/g,""),s.font=e.font,s.height=s.size,s}differentState(e,t){return e!==this.selectedState||t!==this.hoverState}_processLabelText(e,t,r,i){return new mIe(e,this,t,r).process(i)}_processLabel(e,t,r){if(this.labelDirty===!1&&!this.differentState(t,r))return;const i=this._processLabelText(e,t,r,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=t,this.hoverState=r,this.labelDirty=!1}visible(){return!(this.size.width===0||this.size.height===0||this.elementOptions.label===void 0||this.fontOptions.size*this.body.view.scale<this.elementOptions.scaling.label.drawThreshold-1)}},po=class{constructor(e,t,r){this.body=t,this.labelModule=r,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}}setOptions(e){this.options=e}_setMargins(e){this.margin={},this.options.margin&&(typeof this.options.margin=="object"?(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)),e.adjustSizes(this.margin)}_distanceToBorder(e,t){const r=this.options.borderWidth;return e&&this.resize(e),Math.min(Math.abs(this.width/2/Math.cos(t)),Math.abs(this.height/2/Math.sin(t)))+r}enableShadow(e,t){t.shadow&&(e.shadowColor=t.shadowColor,e.shadowBlur=t.shadowSize,e.shadowOffsetX=t.shadowX,e.shadowOffsetY=t.shadowY)}disableShadow(e,t){t.shadow&&(e.shadowColor="rgba(0,0,0,0)",e.shadowBlur=0,e.shadowOffsetX=0,e.shadowOffsetY=0)}enableBorderDashes(e,t){if(t.borderDashes!==!1)if(e.setLineDash!==void 0){let r=t.borderDashes;r===!0&&(r=[5,15]),e.setLineDash(r)}else console.warn("setLineDash is not supported in this browser. The dashed borders cannot be used."),this.options.shapeProperties.borderDashes=!1,t.borderDashes=!1}disableBorderDashes(e,t){t.borderDashes!==!1&&(e.setLineDash!==void 0?e.setLineDash([0]):(console.warn("setLineDash is not supported in this browser. The dashed borders cannot be used."),this.options.shapeProperties.borderDashes=!1,t.borderDashes=!1))}needsRefresh(e,t){return this.refreshNeeded===!0?(this.refreshNeeded=!1,!0):this.width===void 0||this.labelModule.differentState(e,t)}initContextForDraw(e,t){const r=t.borderWidth/this.body.view.scale;e.lineWidth=Math.min(this.width,r),e.strokeStyle=t.borderColor,e.fillStyle=t.color}performStroke(e,t){const r=t.borderWidth/this.body.view.scale;e.save(),r>0&&(this.enableBorderDashes(e,t),e.stroke(),this.disableBorderDashes(e,t)),e.restore()}performFill(e,t){e.save(),e.fillStyle=t.color,this.enableShadow(e,t),cg(e).call(e),this.disableShadow(e,t),e.restore(),this.performStroke(e,t)}_addBoundingBoxMargin(e){this.boundingBox.left-=e,this.boundingBox.top-=e,this.boundingBox.bottom+=e,this.boundingBox.right+=e}_updateBoundingBox(e,t,r,i,o){r!==void 0&&this.resize(r,i,o),this.left=e-this.width/2,this.top=t-this.height/2,this.boundingBox.left=this.left,this.boundingBox.top=this.top,this.boundingBox.bottom=this.top+this.height,this.boundingBox.right=this.left+this.width}updateBoundingBox(e,t,r,i,o){this._updateBoundingBox(e,t,r,i,o)}getDimensionsFromLabel(e,t,r){this.textSize=this.labelModule.getTextSize(e,t,r);let i=this.textSize.width,o=this.textSize.height;const s=14;return i===0&&(i=s,o=s),{width:i,height:o}}},yIe=class extends po{constructor(e,t,r){super(e,t,r),this._setMargins(r)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover;if(this.needsRefresh(t,r)){const i=this.getDimensionsFromLabel(e,t,r);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}}draw(e,t,r,i,o,s){this.resize(e,i,o),this.left=t-this.width/2,this.top=r-this.height/2,this.initContextForDraw(e,s),zX(e,this.left,this.top,this.width,this.height,s.borderRadius),this.performFill(e,s),this.updateBoundingBox(t,r,e,i,o),this.labelModule.draw(e,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,i,o)}updateBoundingBox(e,t,r,i,o){this._updateBoundingBox(e,t,r,i,o);const s=this.options.shapeProperties.borderRadius;this._addBoundingBoxMargin(s)}distanceToBorder(e,t){e&&this.resize(e);const r=this.options.borderWidth;return Math.min(Math.abs(this.width/2/Math.cos(t)),Math.abs(this.height/2/Math.sin(t)))+r}},vT=class extends po{constructor(e,t,r){super(e,t,r),this.labelOffset=0,this.selected=!1}setOptions(e,t,r){this.options=e,t===void 0&&r===void 0||this.setImages(t,r)}setImages(e,t){t&&this.selected?(this.imageObj=t,this.imageObjAlt=e):(this.imageObj=e,this.imageObjAlt=t)}switchImages(e){const t=e&&!this.selected||!e&&this.selected;if(this.selected=e,this.imageObjAlt!==void 0&&t){const r=this.imageObj;this.imageObj=this.imageObjAlt,this.imageObjAlt=r}}_getImagePadding(){const e={top:0,right:0,bottom:0,left:0};if(this.options.imagePadding){const t=this.options.imagePadding;typeof t=="object"?(e.top=t.top,e.right=t.right,e.bottom=t.bottom,e.left=t.left):(e.top=t,e.right=t,e.bottom=t,e.left=t)}return e}_resizeImage(){let e,t;if(this.options.shapeProperties.useImageSize===!1){let r=1,i=1;this.imageObj.width&&this.imageObj.height&&(this.imageObj.width>this.imageObj.height?r=this.imageObj.width/this.imageObj.height:i=this.imageObj.height/this.imageObj.width),e=this.options.size*2*r,t=this.options.size*2*i}else{const r=this._getImagePadding();e=this.imageObj.width+r.left+r.right,t=this.imageObj.height+r.top+r.bottom}this.width=e,this.height=t,this.radius=.5*this.width}_drawRawCircle(e,t,r,i){this.initContextForDraw(e,i),ZO(e,t,r,i.size),this.performFill(e,i)}_drawImageAtPosition(e,t){if(this.imageObj.width!=0){e.globalAlpha=t.opacity!==void 0?t.opacity:1,this.enableShadow(e,t);let r=1;this.options.shapeProperties.interpolation===!0&&(r=this.imageObj.width/this.width/this.body.view.scale);const i=this._getImagePadding(),o=this.left+i.left,s=this.top+i.top,a=this.width-i.left-i.right,g=this.height-i.top-i.bottom;this.imageObj.drawImageAtPosition(e,r,o,s,a,g),this.disableShadow(e,t)}}_drawImageLabel(e,t,r,i,o){let s=0;if(this.height!==void 0){s=this.height*.5;const g=this.labelModule.getTextSize(e,i,o);g.lineCount>=1&&(s+=g.height/2)}const a=r+s;this.options.label&&(this.labelOffset=s),this.labelModule.draw(e,t,a,i,o,"hanging")}},bIe=class extends vT{constructor(e,t,r){super(e,t,r),this._setMargins(r)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover;if(this.needsRefresh(t,r)){const i=this.getDimensionsFromLabel(e,t,r),o=Math.max(i.width+this.margin.right+this.margin.left,i.height+this.margin.top+this.margin.bottom);this.options.size=o/2,this.width=o,this.height=o,this.radius=this.width/2}}draw(e,t,r,i,o,s){this.resize(e,i,o),this.left=t-this.width/2,this.top=r-this.height/2,this._drawRawCircle(e,t,r,s),this.updateBoundingBox(t,r),this.labelModule.draw(e,this.left+this.textSize.width/2+this.margin.left,r,i,o)}updateBoundingBox(e,t){this.boundingBox.top=t-this.options.size,this.boundingBox.left=e-this.options.size,this.boundingBox.right=e+this.options.size,this.boundingBox.bottom=t+this.options.size}distanceToBorder(e){return e&&this.resize(e),this.width*.5}},wIe=class extends vT{constructor(e,t,r,i,o){super(e,t,r),this.setImages(i,o)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover;if(this.imageObj.src===void 0||this.imageObj.width===void 0||this.imageObj.height===void 0){const o=this.options.size*2;this.width=o,this.height=o,this.radius=.5*this.width;return}this.needsRefresh(t,r)&&this._resizeImage()}draw(e,t,r,i,o,s){this.switchImages(i),this.resize();let a=t,g=r;this.options.shapeProperties.coordinateOrigin==="top-left"?(this.left=t,this.top=r,a+=this.width/2,g+=this.height/2):(this.left=t-this.width/2,this.top=r-this.height/2),this._drawRawCircle(e,a,g,s),e.save(),e.clip(),this._drawImageAtPosition(e,s),e.restore(),this._drawImageLabel(e,a,g,i,o),this.updateBoundingBox(t,r)}updateBoundingBox(e,t){this.options.shapeProperties.coordinateOrigin==="top-left"?(this.boundingBox.top=t,this.boundingBox.left=e,this.boundingBox.right=e+this.options.size*2,this.boundingBox.bottom=t+this.options.size*2):(this.boundingBox.top=t-this.options.size,this.boundingBox.left=e-this.options.size,this.boundingBox.right=e+this.options.size,this.boundingBox.bottom=t+this.options.size),this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset)}distanceToBorder(e){return e&&this.resize(e),this.width*.5}},vn=class extends po{constructor(e,t,r){super(e,t,r)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{size:this.options.size};if(this.needsRefresh(t,r)){var o,s;this.labelModule.getTextSize(e,t,r);const a=2*i.size;this.width=(o=this.customSizeWidth)!==null&&o!==void 0?o:a,this.height=(s=this.customSizeHeight)!==null&&s!==void 0?s:a,this.radius=.5*this.width}}_drawShape(e,t,r,i,o,s,a,g){return this.resize(e,s,a,g),this.left=i-this.width/2,this.top=o-this.height/2,this.initContextForDraw(e,g),wre(t)(e,i,o,g.size),this.performFill(e,g),this.options.icon!==void 0&&this.options.icon.code!==void 0&&(e.font=(s?"bold ":"")+this.height/2+"px "+(this.options.icon.face||"FontAwesome"),e.fillStyle=this.options.icon.color||"black",e.textAlign="center",e.textBaseline="middle",e.fillText(this.options.icon.code,i,o)),{drawExternalLabel:()=>{if(this.options.label!==void 0){this.labelModule.calculateLabelSize(e,s,a,i,o,"hanging");const A=o+.5*this.height+.5*this.labelModule.size.height;this.labelModule.draw(e,i,A,s,a,"hanging")}this.updateBoundingBox(i,o)}}}updateBoundingBox(e,t){this.boundingBox.top=t-this.options.size,this.boundingBox.left=e-this.options.size,this.boundingBox.right=e+this.options.size,this.boundingBox.bottom=t+this.options.size,this.options.label!==void 0&&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))}};function bk(n,e){var t=Be(n);if(ai){var r=ai(n);e&&(r=st(r).call(r,function(i){return Ci(n,i).enumerable})),t.push.apply(t,r)}return t}function EIe(n){for(var e=1;e<arguments.length;e++){var t,r,i=arguments[e]!=null?arguments[e]:{};e%2?be(t=bk(Object(i),!0)).call(t,function(o){ze(n,o,i[o])}):gi?wg(n,gi(i)):be(r=bk(Object(i))).call(r,function(o){_g(n,o,Ci(i,o))})}return n}let SIe=class extends vn{constructor(e,t,r,i){super(e,t,r,i),this.ctxRenderer=i}draw(e,t,r,i,o,s){this.resize(e,i,o,s),this.left=t-this.width/2,this.top=r-this.height/2,e.save();const a=this.ctxRenderer({ctx:e,id:this.options.id,x:t,y:r,state:{selected:i,hover:o},style:EIe({},s),label:this.options.label});if(a.drawNode!=null&&a.drawNode(),e.restore(),a.drawExternalLabel){const g=a.drawExternalLabel;a.drawExternalLabel=()=>{e.save(),g(),e.restore()}}return a.nodeDimensions&&(this.customSizeWidth=a.nodeDimensions.width,this.customSizeHeight=a.nodeDimensions.height),a}distanceToBorder(e,t){return this._distanceToBorder(e,t)}},_Ie=class extends po{constructor(e,t,r){super(e,t,r),this._setMargins(r)}resize(e,t,r){if(this.needsRefresh(t,r)){const o=this.getDimensionsFromLabel(e,t,r).width+this.margin.right+this.margin.left;this.width=o,this.height=o,this.radius=this.width/2}}draw(e,t,r,i,o,s){this.resize(e,i,o),this.left=t-this.width/2,this.top=r-this.height/2,this.initContextForDraw(e,s),jX(e,t-this.width/2,r-this.height/2,this.width,this.height),this.performFill(e,s),this.updateBoundingBox(t,r,e,i,o),this.labelModule.draw(e,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,i,o)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}},OIe=class extends vn{constructor(e,t,r){super(e,t,r)}draw(e,t,r,i,o,s){return this._drawShape(e,"diamond",4,t,r,i,o,s)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}},TIe=class extends vn{constructor(e,t,r){super(e,t,r)}draw(e,t,r,i,o,s){return this._drawShape(e,"circle",2,t,r,i,o,s)}distanceToBorder(e){return e&&this.resize(e),this.options.size}},wk=class extends po{constructor(e,t,r){super(e,t,r)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover;if(this.needsRefresh(t,r)){const i=this.getDimensionsFromLabel(e,t,r);this.height=i.height*2,this.width=i.width+i.height,this.radius=.5*this.width}}draw(e,t,r,i,o,s){this.resize(e,i,o),this.left=t-this.width*.5,this.top=r-this.height*.5,this.initContextForDraw(e,s),sO(e,this.left,this.top,this.width,this.height),this.performFill(e,s),this.updateBoundingBox(t,r,e,i,o),this.labelModule.draw(e,t,r,i,o)}distanceToBorder(e,t){e&&this.resize(e);const r=this.width*.5,i=this.height*.5,o=Math.sin(t)*r,s=Math.cos(t)*i;return r*i/Math.sqrt(o*o+s*s)}},RIe=class extends po{constructor(e,t,r){super(e,t,r),this._setMargins(r)}resize(e,t,r){this.needsRefresh(t,r)&&(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)}draw(e,t,r,i,o,s){return this.resize(e,i,o),this.options.icon.size=this.options.icon.size||50,this.left=t-this.width/2,this.top=r-this.height/2,this._icon(e,t,r,i,o,s),{drawExternalLabel:()=>{this.options.label!==void 0&&this.labelModule.draw(e,this.left+this.iconSize.width/2+this.margin.left,r+this.height/2+5,i),this.updateBoundingBox(t,r)}}}updateBoundingBox(e,t){this.boundingBox.top=t-this.options.icon.size*.5,this.boundingBox.left=e-this.options.icon.size*.5,this.boundingBox.right=e+this.options.icon.size*.5,this.boundingBox.bottom=t+this.options.icon.size*.5,this.options.label!==void 0&&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))}_icon(e,t,r,i,o,s){const a=Number(this.options.icon.size);this.options.icon.code!==void 0?(e.font=[this.options.icon.weight!=null?this.options.icon.weight:i?"bold":"",(this.options.icon.weight!=null&&i?5:0)+a+"px",this.options.icon.face].join(" "),e.fillStyle=this.options.icon.color||"black",e.textAlign="center",e.textBaseline="middle",this.enableShadow(e,s),e.fillText(this.options.icon.code,t,r),this.disableShadow(e,s)):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.")}distanceToBorder(e,t){return this._distanceToBorder(e,t)}},PIe=class extends vT{constructor(e,t,r,i,o){super(e,t,r),this.setImages(i,o)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover;if(this.imageObj.src===void 0||this.imageObj.width===void 0||this.imageObj.height===void 0){const o=this.options.size*2;this.width=o,this.height=o;return}this.needsRefresh(t,r)&&this._resizeImage()}draw(e,t,r,i,o,s){e.save(),this.switchImages(i),this.resize();let a=t,g=r;if(this.options.shapeProperties.coordinateOrigin==="top-left"?(this.left=t,this.top=r,a+=this.width/2,g+=this.height/2):(this.left=t-this.width/2,this.top=r-this.height/2),this.options.shapeProperties.useBorderWithImage===!0){const A=this.options.borderWidth,I=this.options.borderWidthSelected||2*this.options.borderWidth,C=(i?I:A)/this.body.view.scale;e.lineWidth=Math.min(this.width,C),e.beginPath();let l=i?this.options.color.highlight.border:o?this.options.color.hover.border:this.options.color.border,d=i?this.options.color.highlight.background:o?this.options.color.hover.background:this.options.color.background;s.opacity!==void 0&&(l=hr(l,s.opacity),d=hr(d,s.opacity)),e.strokeStyle=l,e.fillStyle=d,e.rect(this.left-.5*e.lineWidth,this.top-.5*e.lineWidth,this.width+e.lineWidth,this.height+e.lineWidth),cg(e).call(e),this.performStroke(e,s),e.closePath()}this._drawImageAtPosition(e,s),this._drawImageLabel(e,a,g,i,o),this.updateBoundingBox(t,r),e.restore()}updateBoundingBox(e,t){this.resize(),this.options.shapeProperties.coordinateOrigin==="top-left"?(this.left=e,this.top=t):(this.left=e-this.width/2,this.top=t-this.height/2),this.boundingBox.left=this.left,this.boundingBox.top=this.top,this.boundingBox.bottom=this.top+this.height,this.boundingBox.right=this.left+this.width,this.options.label!==void 0&&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))}distanceToBorder(e,t){return this._distanceToBorder(e,t)}},xIe=class extends vn{constructor(e,t,r){super(e,t,r)}draw(e,t,r,i,o,s){return this._drawShape(e,"square",2,t,r,i,o,s)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}},$Ie=class extends vn{constructor(e,t,r){super(e,t,r)}draw(e,t,r,i,o,s){return this._drawShape(e,"hexagon",4,t,r,i,o,s)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}},DIe=class extends vn{constructor(e,t,r){super(e,t,r)}draw(e,t,r,i,o,s){return this._drawShape(e,"star",4,t,r,i,o,s)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}},NIe=class extends po{constructor(e,t,r){super(e,t,r),this._setMargins(r)}resize(e,t,r){this.needsRefresh(t,r)&&(this.textSize=this.labelModule.getTextSize(e,t,r),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)}draw(e,t,r,i,o,s){this.resize(e,i,o),this.left=t-this.width/2,this.top=r-this.height/2,this.enableShadow(e,s),this.labelModule.draw(e,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,i,o),this.disableShadow(e,s),this.updateBoundingBox(t,r,e,i,o)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}},MIe=class extends vn{constructor(e,t,r){super(e,t,r)}draw(e,t,r,i,o,s){return this._drawShape(e,"triangle",3,t,r,i,o,s)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}},qIe=class extends vn{constructor(e,t,r){super(e,t,r)}draw(e,t,r,i,o,s){return this._drawShape(e,"triangleDown",3,t,r,i,o,s)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}};function Ek(n,e){var t=Be(n);if(ai){var r=ai(n);e&&(r=st(r).call(r,function(i){return Ci(n,i).enumerable})),t.push.apply(t,r)}return t}function Sk(n){for(var e=1;e<arguments.length;e++){var t,r,i=arguments[e]!=null?arguments[e]:{};e%2?be(t=Ek(Object(i),!0)).call(t,function(o){ze(n,o,i[o])}):gi?wg(n,gi(i)):be(r=Ek(Object(i))).call(r,function(o){_g(n,o,Ci(i,o))})}return n}let sr=class qr{constructor(e,t,r,i,o,s){this.options=sn(o),this.globalOptions=o,this.defaultOptions=s,this.body=t,this.edges=[],this.id=void 0,this.imagelist=r,this.grouplist=i,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 d7(this.body,this.options,!1),this.setOptions(e)}attachEdge(e){var t;_e(t=this.edges).call(t,e)===-1&&this.edges.push(e)}detachEdge(e){var t;const r=_e(t=this.edges).call(t,e);if(r!=-1){var i;ti(i=this.edges).call(i,r,1)}}setOptions(e){const t=this.options.shape;if(!e)return;if(typeof e.color<"u"&&(this._localColor=e.color),e.id!==void 0&&(this.id=e.id),this.id===void 0)throw new Error("Node must have an id");qr.checkMass(e,this.id),e.x!==void 0&&(e.x===null?(this.x=void 0,this.predefinedPosition=!1):(this.x=Fr(e.x),this.predefinedPosition=!0)),e.y!==void 0&&(e.y===null?(this.y=void 0,this.predefinedPosition=!1):(this.y=Fr(e.y),this.predefinedPosition=!0)),e.size!==void 0&&(this.baseSize=e.size),e.value!==void 0&&(e.value=C7(e.value)),qr.parseOptions(this.options,e,!0,this.globalOptions,this.grouplist);const r=[e,this.options,this.defaultOptions];return this.chooser=pT("node",r),this._load_images(),this.updateLabelModule(e),e.opacity!==void 0&&qr.checkOpacity(e.opacity)&&(this.options.opacity=e.opacity),this.updateShape(t),e.hidden!==void 0||e.physics!==void 0}_load_images(){if((this.options.shape==="circularImage"||this.options.shape==="image")&&this.options.image===void 0)throw new Error("Option image must be defined for node type '"+this.options.shape+"'");if(this.options.image!==void 0){if(this.imagelist===void 0)throw new Error("Internal Error: No images provided");if(typeof this.options.image=="string")this.imageObj=this.imagelist.load(this.options.image,this.options.brokenImage,this.id);else{if(this.options.image.unselected===void 0)throw new Error("No unselected image provided");this.imageObj=this.imagelist.load(this.options.image.unselected,this.options.brokenImage,this.id),this.options.image.selected!==void 0?this.imageObjAlt=this.imagelist.load(this.options.image.selected,this.options.brokenImage,this.id):this.imageObjAlt=void 0}}}static checkOpacity(e){return 0<=e&&e<=1}static checkCoordinateOrigin(e){return e===void 0||e==="center"||e==="top-left"}static updateGroupOptions(e,t,r){var i;if(r===void 0)return;const o=e.group;if(t!==void 0&&t.group!==void 0&&o!==t.group)throw new Error("updateGroupOptions: group values in options don't match.");if(!(typeof o=="number"||typeof o=="string"&&o!=""))return;const a=r.get(o);a.opacity!==void 0&&t.opacity===void 0&&(qr.checkOpacity(a.opacity)||(console.error("Invalid option for node opacity. Value must be between 0 and 1, found: "+a.opacity),a.opacity=void 0));const g=st(i=fIe(t)).call(i,A=>t[A]!=null);g.push("font"),zA(g,e,a),e.color=CO(e.color)}static parseOptions(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},o=arguments.length>4?arguments[4]:void 0;if(zA(["color","fixed","shadow"],e,t,r),qr.checkMass(t),e.opacity!==void 0&&(qr.checkOpacity(e.opacity)||(console.error("Invalid option for node opacity. Value must be between 0 and 1, found: "+e.opacity),e.opacity=void 0)),t.opacity!==void 0&&(qr.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&&!qr.checkCoordinateOrigin(t.shapeProperties.coordinateOrigin)&&console.error("Invalid option for node coordinateOrigin, found: "+t.shapeProperties.coordinateOrigin),dr(e,t,"shadow",i),t.color!==void 0&&t.color!==null){const a=CO(t.color);zQ(e.color,a)}else r===!0&&t.color===null&&(e.color=sn(i.color));t.fixed!==void 0&&t.fixed!==null&&(typeof t.fixed=="boolean"?(e.fixed.x=t.fixed,e.fixed.y=t.fixed):(t.fixed.x!==void 0&&typeof t.fixed.x=="boolean"&&(e.fixed.x=t.fixed.x),t.fixed.y!==void 0&&typeof t.fixed.y=="boolean"&&(e.fixed.y=t.fixed.y))),r===!0&&t.font===null&&(e.font=sn(i.font)),qr.updateGroupOptions(e,t,o),t.scaling!==void 0&&dr(e.scaling,t.scaling,"label",i.scaling)}getFormattingValues(){const e={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?this.chooser===!0?this.selected?(this.options.borderWidthSelected!=null?e.borderWidth=this.options.borderWidthSelected:e.borderWidth*=2,e.color=this.options.color.highlight.background,e.borderColor=this.options.color.highlight.border,e.shadow=this.options.shadow.enabled):this.hover&&(e.color=this.options.color.hover.background,e.borderColor=this.options.color.hover.border,e.shadow=this.options.shadow.enabled):typeof this.chooser=="function"&&(this.chooser(e,this.options.id,this.selected,this.hover),e.shadow===!1&&(e.shadowColor!==this.options.shadow.color||e.shadowSize!==this.options.shadow.size||e.shadowX!==this.options.shadow.x||e.shadowY!==this.options.shadow.y)&&(e.shadow=!0)):e.shadow=this.options.shadow.enabled,this.options.opacity!==void 0){const t=this.options.opacity;e.borderColor=hr(e.borderColor,t),e.color=hr(e.color,t),e.shadowColor=hr(e.shadowColor,t)}return e}updateLabelModule(e){(this.options.label===void 0||this.options.label===null)&&(this.options.label=""),qr.updateGroupOptions(this.options,Sk(Sk({},e),{},{color:e&&e.color||this._localColor||void 0}),this.grouplist);const t=this.grouplist.get(this.options.group,!1),r=[e,this.options,t,this.globalOptions,this.defaultOptions];this.labelModule.update(this.options,r),this.labelModule.baseSize!==void 0&&(this.baseFontSize=this.labelModule.baseSize)}updateShape(e){if(e===this.options.shape&&this.shape)this.shape.setOptions(this.options,this.imageObj,this.imageObjAlt);else switch(this.options.shape){case"box":this.shape=new yIe(this.options,this.body,this.labelModule);break;case"circle":this.shape=new bIe(this.options,this.body,this.labelModule);break;case"circularImage":this.shape=new wIe(this.options,this.body,this.labelModule,this.imageObj,this.imageObjAlt);break;case"custom":this.shape=new SIe(this.options,this.body,this.labelModule,this.options.ctxRenderer);break;case"database":this.shape=new _Ie(this.options,this.body,this.labelModule);break;case"diamond":this.shape=new OIe(this.options,this.body,this.labelModule);break;case"dot":this.shape=new TIe(this.options,this.body,this.labelModule);break;case"ellipse":this.shape=new wk(this.options,this.body,this.labelModule);break;case"icon":this.shape=new RIe(this.options,this.body,this.labelModule);break;case"image":this.shape=new PIe(this.options,this.body,this.labelModule,this.imageObj,this.imageObjAlt);break;case"square":this.shape=new xIe(this.options,this.body,this.labelModule);break;case"hexagon":this.shape=new $Ie(this.options,this.body,this.labelModule);break;case"star":this.shape=new DIe(this.options,this.body,this.labelModule);break;case"text":this.shape=new NIe(this.options,this.body,this.labelModule);break;case"triangle":this.shape=new MIe(this.options,this.body,this.labelModule);break;case"triangleDown":this.shape=new qIe(this.options,this.body,this.labelModule);break;default:this.shape=new wk(this.options,this.body,this.labelModule);break}this.needsRefresh()}select(){this.selected=!0,this.needsRefresh()}unselect(){this.selected=!1,this.needsRefresh()}needsRefresh(){this.shape.refreshNeeded=!0}getTitle(){return this.options.title}distanceToBorder(e,t){return this.shape.distanceToBorder(e,t)}isFixed(){return this.options.fixed.x&&this.options.fixed.y}isSelected(){return this.selected}getValue(){return this.options.value}getLabelSize(){return this.labelModule.size()}setValueRange(e,t,r){if(this.options.value!==void 0){const i=this.options.scaling.customScalingFunction(e,t,r,this.options.value),o=this.options.scaling.max-this.options.scaling.min;if(this.options.scaling.label.enabled===!0){const s=this.options.scaling.label.max-this.options.scaling.label.min;this.options.font.size=this.options.scaling.label.min+i*s}this.options.size=this.options.scaling.min+i*o}else this.options.size=this.baseSize,this.options.font.size=this.baseFontSize;this.updateLabelModule()}draw(e){const t=this.getFormattingValues();return this.shape.draw(e,this.x,this.y,this.selected,this.hover,t)||{}}updateBoundingBox(e){this.shape.updateBoundingBox(this.x,this.y,e)}resize(e){const t=this.getFormattingValues();this.shape.resize(e,this.selected,this.hover,t)}getItemsOnPoint(e){const t=[];return this.labelModule.visible()&&fO(this.labelModule.getSize(),e)&&t.push({nodeId:this.id,labelId:0}),fO(this.shape.boundingBox,e)&&t.push({nodeId:this.id}),t}isOverlappingWith(e){return this.shape.left<e.right&&this.shape.left+this.shape.width>e.left&&this.shape.top<e.bottom&&this.shape.top+this.shape.height>e.top}isBoundingBoxOverlappingWith(e){return this.shape.boundingBox.left<e.right&&this.shape.boundingBox.right>e.left&&this.shape.boundingBox.top<e.bottom&&this.shape.boundingBox.bottom>e.top}static checkMass(e,t){if(e.mass!==void 0&&e.mass<=0){let r="";t!==void 0&&(r=" in node id: "+t),console.error("%cNegative or zero mass disallowed"+r+", setting mass to 1.",WQ),e.mass=1}}},FIe=class{constructor(e,t,r,i){var o;if(this.body=e,this.images=t,this.groups=r,this.layoutEngine=i,this.body.functions.createNode=z(o=this.create).call(o,this),this.nodesListeners={add:(s,a)=>{this.add(a.items)},update:(s,a)=>{this.update(a.items,a.data,a.oldData)},remove:(s,a)=>{this.remove(a.items)}},this.defaultOptions={borderWidth:1,borderWidthSelected:void 0,brokenImage:void 0,color:{border:"#2B7CE9",background:"#97C2FC",highlight:{border:"#2B7CE9",background:"#D2E5FF"},hover:{border:"#2B7CE9",background:"#D2E5FF"}},opacity:void 0,fixed:{x:!1,y:!1},font:{color:"#343434",size:14,face:"arial",background:"none",strokeWidth:0,strokeColor:"#ffffff",align:"center",vadjust:0,multi:!1,bold:{mod:"bold"},boldital:{mod:"bold italic"},ital:{mod:"italic"},mono:{mod:"",size:15,face:"monospace",vadjust:2}},group:void 0,hidden:!1,icon:{face:"FontAwesome",code:void 0,size:50,color:"#2B7CE9"},image:void 0,imagePadding:{top:0,right:0,bottom:0,left:0},label:void 0,labelHighlightBold:!0,level:void 0,margin:{top:5,right:5,bottom:5,left:5},mass:1,physics:!0,scaling:{min:10,max:30,label:{enabled:!1,min:14,max:30,maxVisible:30,drawThreshold:5},customScalingFunction:function(s,a,g,A){if(a===s)return .5;{const I=1/(a-s);return Math.max(0,(A-s)*I)}}},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=sn(this.defaultOptions),this.bindEventListeners()}bindEventListeners(){var e,t;this.body.emitter.on("refreshNodes",z(e=this.refresh).call(e,this)),this.body.emitter.on("refresh",z(t=this.refresh).call(t,this)),this.body.emitter.on("destroy",()=>{de(this.nodesListeners,(r,i)=>{this.body.data.nodes&&this.body.data.nodes.off(i,r)}),delete this.body.functions.createNode,delete this.nodesListeners.add,delete this.nodesListeners.update,delete this.nodesListeners.remove,delete this.nodesListeners})}setOptions(e){if(e!==void 0){if(sr.parseOptions(this.options,e),e.opacity!==void 0&&(hO(e.opacity)||!Nn(e.opacity)||e.opacity<0||e.opacity>1?console.error("Invalid option for node opacity. Value must be between 0 and 1, found: "+e.opacity):this.options.opacity=e.opacity),e.shape!==void 0)for(const t in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,t)&&this.body.nodes[t].updateShape();if(typeof e.font<"u"||typeof e.widthConstraint<"u"||typeof e.heightConstraint<"u")for(const t of Be(this.body.nodes))this.body.nodes[t].updateLabelModule(),this.body.nodes[t].needsRefresh();if(e.size!==void 0)for(const t in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,t)&&this.body.nodes[t].needsRefresh();(e.hidden!==void 0||e.physics!==void 0)&&this.body.emitter.emit("_dataChanged")}}setData(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;const r=this.body.data.nodes;if(I7("id",e))this.body.data.nodes=e;else if(we(e))this.body.data.nodes=new us,this.body.data.nodes.add(e);else if(!e)this.body.data.nodes=new us;else throw new TypeError("Array or DataSet expected");if(r&&de(this.nodesListeners,function(i,o){r.off(o,i)}),this.body.nodes={},this.body.data.nodes){const i=this;de(this.nodesListeners,function(s,a){i.body.data.nodes.on(a,s)});const o=this.body.data.nodes.getIds();this.add(o,!0)}t===!1&&this.body.emitter.emit("_dataChanged")}add(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r;const i=[];for(let o=0;o<e.length;o++){r=e[o];const s=this.body.data.nodes.get(r),a=this.create(s);i.push(a),this.body.nodes[r]=a}this.layoutEngine.positionInitially(i),t===!1&&this.body.emitter.emit("_dataChanged")}update(e,t,r){const i=this.body.nodes;let o=!1;for(let s=0;s<e.length;s++){const a=e[s];let g=i[a];const A=t[s];g!==void 0?g.setOptions(A)&&(o=!0):(o=!0,g=this.create(A),i[a]=g)}!o&&r!==void 0&&(o=i7(t).call(t,function(s,a){const g=r[a];return g&&g.level!==s.level})),o===!0?this.body.emitter.emit("_dataChanged"):this.body.emitter.emit("_dataUpdated")}remove(e){const t=this.body.nodes;for(let r=0;r<e.length;r++){const i=e[r];delete t[i]}this.body.emitter.emit("_dataChanged")}create(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:sr;return new t(e,this.body,this.images,this.groups,this.options,this.defaultOptions)}refresh(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;de(this.body.nodes,(t,r)=>{const i=this.body.data.nodes.get(r);i!==void 0&&(e===!0&&t.setOptions({x:null,y:null}),t.setOptions({fixed:!1}),t.setOptions(i))})}getPositions(e){const t={};if(e!==void 0){if(we(e)===!0){for(let r=0;r<e.length;r++)if(this.body.nodes[e[r]]!==void 0){const i=this.body.nodes[e[r]];t[e[r]]={x:Math.round(i.x),y:Math.round(i.y)}}}else if(this.body.nodes[e]!==void 0){const r=this.body.nodes[e];t[e]={x:Math.round(r.x),y:Math.round(r.y)}}}else for(let r=0;r<this.body.nodeIndices.length;r++){const i=this.body.nodes[this.body.nodeIndices[r]];t[this.body.nodeIndices[r]]={x:Math.round(i.x),y:Math.round(i.y)}}return t}getPosition(e){if(e==null)throw new TypeError("No id was specified for getPosition method.");if(this.body.nodes[e]==null)throw new ReferenceError("NodeId provided for getPosition does not exist. Provided: ".concat(e));return{x:Math.round(this.body.nodes[e].x),y:Math.round(this.body.nodes[e].y)}}storePositions(){const e=[],t=this.body.data.nodes.getDataSet();for(const r of t.get()){const i=r.id,o=this.body.nodes[i],s=Math.round(o.x),a=Math.round(o.y);(r.x!==s||r.y!==a)&&e.push({id:i,x:s,y:a})}t.update(e)}getBoundingBox(e){if(this.body.nodes[e]!==void 0)return this.body.nodes[e].shape.boundingBox}getConnectedNodes(e,t){const r=[];if(this.body.nodes[e]!==void 0){const i=this.body.nodes[e],o={};for(let s=0;s<i.edges.length;s++){const a=i.edges[s];t!=="to"&&a.toId==i.id?o[a.fromId]===void 0&&(r.push(a.fromId),o[a.fromId]=!0):t!=="from"&&a.fromId==i.id&&o[a.toId]===void 0&&(r.push(a.toId),o[a.toId]=!0)}}return r}getConnectedEdges(e){const t=[];if(this.body.nodes[e]!==void 0){const r=this.body.nodes[e];for(let i=0;i<r.edges.length;i++)t.push(r.edges[i].id)}else console.error("NodeId provided for getConnectedEdges does not exist. Provided: ",e);return t}moveNode(e,t,r){this.body.nodes[e]!==void 0?(this.body.nodes[e].x=Number(t),this.body.nodes[e].y=Number(r),ri(()=>{this.body.emitter.emit("startSimulation")},0)):console.error("Node id supplied to moveNode does not exist. Provided: ",e)}};var _k={},Ok;function kIe(){if(Ok)return _k;Ok=1;var n=ee(),e=Math.hypot,t=Math.abs,r=Math.sqrt,i=!!e&&e(1/0,NaN)!==1/0;return n({target:"Math",stat:!0,arity:2,forced:i},{hypot:function(s,a){for(var g=0,A=0,I=arguments.length,C=0,l,d;A<I;)l=t(arguments[A++]),C<l?(d=C/l,g=g*d*d+1,C=l):l>0?(d=l/C,g+=d*d):g+=l;return C===1/0?1/0:C*r(g)}}),_k}var ff,Tk;function BIe(){if(Tk)return ff;Tk=1,kIe();var n=Ee();return ff=n.Math.hypot,ff}var pf,Rk;function zIe(){if(Rk)return pf;Rk=1;var n=BIe();return pf=n,pf}var vf,Pk;function jIe(){return Pk||(Pk=1,vf=zIe()),vf}var LIe=jIe(),GIe=ne(LIe);let rt=class{static transform(e,t){we(e)||(e=[e]);const r=t.point.x,i=t.point.y,o=t.angle,s=t.length;for(let a=0;a<e.length;++a){const g=e[a],A=g.x*Math.cos(o)-g.y*Math.sin(o),I=g.x*Math.sin(o)+g.y*Math.cos(o);g.x=r+s*A,g.y=i+s*I}}static drawPath(e,t){e.beginPath(),e.moveTo(t[0].x,t[0].y);for(let r=1;r<t.length;++r)e.lineTo(t[r].x,t[r].y);e.closePath()}},WIe=class extends rt{static draw(e,t){if(t.image){e.save(),e.translate(t.point.x,t.point.y),e.rotate(Math.PI/2+t.angle);const r=t.imageWidth!=null?t.imageWidth:t.image.width,i=t.imageHeight!=null?t.imageHeight:t.image.height;t.image.drawImageAtPosition(e,1,-r/2,0,r,i),e.restore()}return!1}},VIe=class extends rt{static draw(e,t){const r=[{x:0,y:0},{x:-1,y:.3},{x:-.9,y:0},{x:-1,y:-.3}];return rt.transform(r,t),rt.drawPath(e,r),!0}},ZIe=class{static draw(e,t){const r=[{x:-1,y:0},{x:0,y:.3},{x:-.4,y:0},{x:0,y:-.3}];return rt.transform(r,t),rt.drawPath(e,r),!0}},HIe=class{static draw(e,t){const r={x:-.4,y:0};rt.transform(r,t),e.strokeStyle=e.fillStyle,e.fillStyle="rgba(0, 0, 0, 0)";const i=Math.PI,o=t.angle-i/2,s=t.angle+i/2;return e.beginPath(),e.arc(r.x,r.y,t.length*.4,o,s,!1),e.stroke(),!0}},UIe=class{static draw(e,t){const r={x:-.3,y:0};rt.transform(r,t),e.strokeStyle=e.fillStyle,e.fillStyle="rgba(0, 0, 0, 0)";const i=Math.PI,o=t.angle+i/2,s=t.angle+3*i/2;return e.beginPath(),e.arc(r.x,r.y,t.length*.4,o,s,!1),e.stroke(),!0}},KIe=class{static draw(e,t){const r=[{x:.02,y:0},{x:-1,y:.3},{x:-1,y:-.3}];return rt.transform(r,t),rt.drawPath(e,r),!0}},YIe=class{static draw(e,t){const r=[{x:0,y:.3},{x:0,y:-.3},{x:-1,y:0}];return rt.transform(r,t),rt.drawPath(e,r),!0}},XIe=class{static draw(e,t){const r={x:-.4,y:0};return rt.transform(r,t),ZO(e,r.x,r.y,t.length*.4),!0}},QIe=class{static draw(e,t){const r=[{x:0,y:.5},{x:0,y:-.5},{x:-.15,y:-.5},{x:-.15,y:.5}];return rt.transform(r,t),rt.drawPath(e,r),!0}},JIe=class{static draw(e,t){const r=[{x:0,y:.3},{x:0,y:-.3},{x:-.6,y:-.3},{x:-.6,y:.3}];return rt.transform(r,t),rt.drawPath(e,r),!0}},eCe=class{static draw(e,t){const r=[{x:0,y:0},{x:-.5,y:-.3},{x:-1,y:0},{x:-.5,y:.3}];return rt.transform(r,t),rt.drawPath(e,r),!0}},tCe=class{static draw(e,t){const r=[{x:-1,y:.3},{x:-.5,y:0},{x:-1,y:-.3},{x:0,y:0}];return rt.transform(r,t),rt.drawPath(e,r),!0}},u7=class{static draw(e,t){let r;switch(t.type&&(r=t.type.toLowerCase()),r){case"image":return WIe.draw(e,t);case"circle":return XIe.draw(e,t);case"box":return JIe.draw(e,t);case"crow":return ZIe.draw(e,t);case"curve":return HIe.draw(e,t);case"diamond":return eCe.draw(e,t);case"inv_curve":return UIe.draw(e,t);case"triangle":return KIe.draw(e,t);case"inv_triangle":return YIe.draw(e,t);case"bar":return QIe.draw(e,t);case"vee":return tCe.draw(e,t);case"arrow":default:return VIe.draw(e,t)}}};function xk(n,e){var t=Be(n);if(ai){var r=ai(n);e&&(r=st(r).call(r,function(i){return Ci(n,i).enumerable})),t.push.apply(t,r)}return t}function $k(n){for(var e=1;e<arguments.length;e++){var t,r,i=arguments[e]!=null?arguments[e]:{};e%2?be(t=xk(Object(i),!0)).call(t,function(o){ze(n,o,i[o])}):gi?wg(n,gi(i)):be(r=xk(Object(i))).call(r,function(o){_g(n,o,Ci(i,o))})}return n}let h7=class{constructor(e,t,r){ze(this,"color",{}),ze(this,"colorDirty",!0),ze(this,"hoverWidth",1.5),ze(this,"selectionWidth",2),this._body=t,this._labelModule=r,this.setOptions(e),this.fromPoint=this.from,this.toPoint=this.to}connect(){this.from=this._body.nodes[this.options.from],this.to=this._body.nodes[this.options.to]}cleanup(){return!1}setOptions(e){this.options=e,this.from=this._body.nodes[this.options.from],this.to=this._body.nodes[this.options.to],this.id=this.options.id}drawLine(e,t,r,i){let o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.getViaNode();e.strokeStyle=this.getColor(e,t),e.lineWidth=t.width,t.dashes!==!1?this._drawDashedLine(e,t,o):this._drawLine(e,t,o)}_drawLine(e,t,r,i,o){if(this.from!=this.to)this._line(e,t,r,i,o);else{const[s,a,g]=this._getCircleData(e);this._circle(e,t,s,a,g)}}_drawDashedLine(e,t,r,i,o){e.lineCap="round";const s=we(t.dashes)?t.dashes:[5,5];if(e.setLineDash!==void 0){if(e.save(),e.setLineDash(s),e.lineDashOffset=0,this.from!=this.to)this._line(e,t,r);else{const[a,g,A]=this._getCircleData(e);this._circle(e,t,a,g,A)}e.setLineDash([0]),e.lineDashOffset=0,e.restore()}else{if(this.from!=this.to)LX(e,this.from.x,this.from.y,this.to.x,this.to.y,s);else{const[a,g,A]=this._getCircleData(e);this._circle(e,t,a,g,A)}this.enableShadow(e,t),e.stroke(),this.disableShadow(e,t)}}findBorderPosition(e,t,r){return this.from!=this.to?this._findBorderPosition(e,t,r):this._findBorderPositionCircle(e,t,r)}findBorderPositions(e){if(this.from!=this.to)return{from:this._findBorderPosition(this.from,e),to:this._findBorderPosition(this.to,e)};{var t;const[r,i]=zr(t=this._getCircleData(e)).call(t,0,2);return{from:this._findBorderPositionCircle(this.from,e,{x:r,y:i,low:.25,high:.6,direction:-1}),to:this._findBorderPositionCircle(this.from,e,{x:r,y:i,low:.6,high:.8,direction:1})}}}_getCircleData(e){const t=this.options.selfReference.size;e!==void 0&&this.from.shape.width===void 0&&this.from.shape.resize(e);const r=l7(e,this.options.selfReference.angle,t,this.from);return[r.x,r.y,t]}_pointOnCircle(e,t,r,i){const o=i*2*Math.PI;return{x:e+r*Math.cos(o),y:t-r*Math.sin(o)}}_findBorderPositionCircle(e,t,r){const i=r.x,o=r.y;let s=r.low,a=r.high;const g=r.direction,A=10,I=this.options.selfReference.size,C=.05;let l,d=(s+a)*.5,u=0;this.options.arrowStrikethrough===!0&&(g===-1?u=this.options.endPointOffset.from:g===1&&(u=this.options.endPointOffset.to));let h=0;do{d=(s+a)*.5,l=this._pointOnCircle(i,o,I,d);const v=Math.atan2(e.y-l.y,e.x-l.x),f=e.distanceToBorder(t,v)+u,c=Math.sqrt(Math.pow(l.x-e.x,2)+Math.pow(l.y-e.y,2)),b=f-c;if(Math.abs(b)<C)break;b>0?g>0?s=d:a=d:g>0?a=d:s=d,++h}while(s<=a&&h<A);return $k($k({},l),{},{t:d})}getLineWidth(e,t){return e===!0?Math.max(this.selectionWidth,.3/this._body.view.scale):t===!0?Math.max(this.hoverWidth,.3/this._body.view.scale):Math.max(this.options.width,.3/this._body.view.scale)}getColor(e,t){if(t.inheritsColor!==!1){if(t.inheritsColor==="both"&&this.from.id!==this.to.id){const r=e.createLinearGradient(this.from.x,this.from.y,this.to.x,this.to.y);let i=this.from.options.color.highlight.border,o=this.to.options.color.highlight.border;return this.from.selected===!1&&this.to.selected===!1?(i=hr(this.from.options.color.border,t.opacity),o=hr(this.to.options.color.border,t.opacity)):this.from.selected===!0&&this.to.selected===!1?o=this.to.options.color.border:this.from.selected===!1&&this.to.selected===!0&&(i=this.from.options.color.border),r.addColorStop(0,i),r.addColorStop(1,o),r}return t.inheritsColor==="to"?hr(this.to.options.color.border,t.opacity):hr(this.from.options.color.border,t.opacity)}else return hr(t.color,t.opacity)}_circle(e,t,r,i,o){this.enableShadow(e,t);let s=0,a=Math.PI*2;if(!this.options.selfReference.renderBehindTheNode){const g=this.options.selfReference.angle,A=this.options.selfReference.angle+Math.PI,I=this._findBorderPositionCircle(this.from,e,{x:r,y:i,low:g,high:A,direction:-1}),C=this._findBorderPositionCircle(this.from,e,{x:r,y:i,low:g,high:A,direction:1});s=Math.atan2(I.y-i,I.x-r),a=Math.atan2(C.y-i,C.x-r)}e.beginPath(),e.arc(r,i,o,s,a,!1),e.stroke(),this.disableShadow(e,t)}getDistanceToEdge(e,t,r,i,o,s){if(this.from!=this.to)return this._getDistanceToEdge(e,t,r,i,o,s);{const[a,g,A]=this._getCircleData(void 0),I=a-o,C=g-s;return Math.abs(Math.sqrt(I*I+C*C)-A)}}_getDistanceToLine(e,t,r,i,o,s){const a=r-e,g=i-t,A=a*a+g*g;let I=((o-e)*a+(s-t)*g)/A;I>1?I=1:I<0&&(I=0);const C=e+I*a,l=t+I*g,d=C-o,u=l-s;return Math.sqrt(d*d+u*u)}getArrowData(e,t,r,i,o,s){let a,g,A,I,C,l,d;const u=s.width;t==="from"?(A=this.from,I=this.to,C=s.fromArrowScale<0,l=Math.abs(s.fromArrowScale),d=s.fromArrowType):t==="to"?(A=this.to,I=this.from,C=s.toArrowScale<0,l=Math.abs(s.toArrowScale),d=s.toArrowType):(A=this.to,I=this.from,C=s.middleArrowScale<0,l=Math.abs(s.middleArrowScale),d=s.middleArrowType);const h=15*l+3*u;if(A!=I){const b=GIe(A.x-I.x,A.y-I.y),p=h/b;if(t!=="middle")if(this.options.smooth.enabled===!0){const y=this._findBorderPosition(A,e,{via:r}),E=this.getPoint(y.t+p*(t==="from"?1:-1),r);a=Math.atan2(y.y-E.y,y.x-E.x),g=y}else a=Math.atan2(A.y-I.y,A.x-I.x),g=this._findBorderPosition(A,e);else{const y=(C?-p:p)/2,E=this.getPoint(.5+y,r),S=this.getPoint(.5-y,r);a=Math.atan2(E.y-S.y,E.x-S.x),g=this.getPoint(.5,r)}}else{const[b,p,y]=this._getCircleData(e);if(t==="from"){const E=this.options.selfReference.angle,S=this.options.selfReference.angle+Math.PI,m=this._findBorderPositionCircle(this.from,e,{x:b,y:p,low:E,high:S,direction:-1});a=m.t*-2*Math.PI+1.5*Math.PI+.1*Math.PI,g=m}else if(t==="to"){const E=this.options.selfReference.angle,S=this.options.selfReference.angle+Math.PI,m=this._findBorderPositionCircle(this.from,e,{x:b,y:p,low:E,high:S,direction:1});a=m.t*-2*Math.PI+1.5*Math.PI-1.1*Math.PI,g=m}else{const E=this.options.selfReference.angle/(2*Math.PI);g=this._pointOnCircle(b,p,y,E),a=E*-2*Math.PI+1.5*Math.PI+.1*Math.PI}}const v=g.x-h*.9*Math.cos(a),f=g.y-h*.9*Math.sin(a);return{point:g,core:{x:v,y:f},angle:a,length:h,type:d}}drawArrowHead(e,t,r,i,o){e.strokeStyle=this.getColor(e,t),e.fillStyle=e.strokeStyle,e.lineWidth=t.width,u7.draw(e,o)&&(this.enableShadow(e,t),cg(e).call(e),this.disableShadow(e,t))}enableShadow(e,t){t.shadow===!0&&(e.shadowColor=t.shadowColor,e.shadowBlur=t.shadowSize,e.shadowOffsetX=t.shadowX,e.shadowOffsetY=t.shadowY)}disableShadow(e,t){t.shadow===!0&&(e.shadowColor="rgba(0,0,0,0)",e.shadowBlur=0,e.shadowOffsetX=0,e.shadowOffsetY=0)}drawBackground(e,t){if(t.background!==!1){const r={strokeStyle:e.strokeStyle,lineWidth:e.lineWidth,dashes:e.dashes};e.strokeStyle=t.backgroundColor,e.lineWidth=t.backgroundSize,this.setStrokeDashed(e,t.backgroundDashes),e.stroke(),e.strokeStyle=r.strokeStyle,e.lineWidth=r.lineWidth,e.dashes=r.dashes,this.setStrokeDashed(e,t.dashes)}}setStrokeDashed(e,t){if(t!==!1)if(e.setLineDash!==void 0){const r=we(t)?t:[5,5];e.setLineDash(r)}else console.warn("setLineDash is not supported in this browser. The dashed stroke cannot be used.");else e.setLineDash!==void 0?e.setLineDash([]):console.warn("setLineDash is not supported in this browser. The dashed stroke cannot be used.")}};function Dk(n,e){var t=Be(n);if(ai){var r=ai(n);e&&(r=st(r).call(r,function(i){return Ci(n,i).enumerable})),t.push.apply(t,r)}return t}function Nk(n){for(var e=1;e<arguments.length;e++){var t,r,i=arguments[e]!=null?arguments[e]:{};e%2?be(t=Dk(Object(i),!0)).call(t,function(o){ze(n,o,i[o])}):gi?wg(n,gi(i)):be(r=Dk(Object(i))).call(r,function(o){_g(n,o,Ci(i,o))})}return n}let mT=class extends h7{constructor(e,t,r){super(e,t,r)}_findBorderPositionBezier(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this._getViaCoordinates();const i=10,o=.2;let s=!1,a=1,g=0,A=this.to,I,C,l=this.options.endPointOffset?this.options.endPointOffset.to:0;e.id===this.from.id&&(A=this.from,s=!0,l=this.options.endPointOffset?this.options.endPointOffset.from:0),this.options.arrowStrikethrough===!1&&(l=0);let d=0;do{C=(g+a)*.5,I=this.getPoint(C,r);const u=Math.atan2(A.y-I.y,A.x-I.x),h=A.distanceToBorder(t,u)+l,v=Math.sqrt(Math.pow(I.x-A.x,2)+Math.pow(I.y-A.y,2)),f=h-v;if(Math.abs(f)<o)break;f<0?s===!1?g=C:a=C:s===!1?a=C:g=C,++d}while(g<=a&&d<i);return Nk(Nk({},I),{},{t:C})}_getDistanceToBezierEdge(e,t,r,i,o,s,a){let g=1e9,A,I,C,l,d,u=e,h=t;for(I=1;I<10;I++)C=.1*I,l=Math.pow(1-C,2)*e+2*C*(1-C)*a.x+Math.pow(C,2)*r,d=Math.pow(1-C,2)*t+2*C*(1-C)*a.y+Math.pow(C,2)*i,I>0&&(A=this._getDistanceToLine(u,h,l,d,o,s),g=A<g?A:g),u=l,h=d;return g}_bezierCurve(e,t,r,i){e.beginPath(),e.moveTo(this.fromPoint.x,this.fromPoint.y),r!=null&&r.x!=null?i!=null&&i.x!=null?e.bezierCurveTo(r.x,r.y,i.x,i.y,this.toPoint.x,this.toPoint.y):e.quadraticCurveTo(r.x,r.y,this.toPoint.x,this.toPoint.y):e.lineTo(this.toPoint.x,this.toPoint.y),this.drawBackground(e,t),this.enableShadow(e,t),e.stroke(),this.disableShadow(e,t)}getViaNode(){return this._getViaCoordinates()}},Mk=class extends mT{constructor(e,t,r){super(e,t,r),ze(this,"via",this.via),this._boundFunction=()=>{this.positionBezierNode()},this._body.emitter.on("_repositionBezierNodes",this._boundFunction)}setOptions(e){super.setOptions(e);let t=!1;this.options.physics!==e.physics&&(t=!0),this.options=e,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(),t===!0&&(this.via.setOptions({physics:this.options.physics}),this.positionBezierNode())}connect(){this.from=this._body.nodes[this.options.from],this.to=this._body.nodes[this.options.to],this.from===void 0||this.to===void 0||this.options.physics===!1?this.via.setOptions({physics:!1}):this.from.id===this.to.id?this.via.setOptions({physics:!1}):this.via.setOptions({physics:!0})}cleanup(){return this._body.emitter.off("_repositionBezierNodes",this._boundFunction),this.via!==void 0?(delete this._body.nodes[this.via.id],this.via=void 0,!0):!1}setupSupportNode(){if(this.via===void 0){const e="edgeId:"+this.id,t=this._body.functions.createNode({id:e,shape:"circle",physics:!0,hidden:!0});this._body.nodes[e]=t,this.via=t,this.via.parentEdgeId=this.id,this.positionBezierNode()}}positionBezierNode(){this.via!==void 0&&this.from!==void 0&&this.to!==void 0?(this.via.x=.5*(this.from.x+this.to.x),this.via.y=.5*(this.from.y+this.to.y)):this.via!==void 0&&(this.via.x=0,this.via.y=0)}_line(e,t,r){this._bezierCurve(e,t,r)}_getViaCoordinates(){return this.via}getViaNode(){return this.via}getPoint(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.via;if(this.from===this.to){const[r,i,o]=this._getCircleData(),s=2*Math.PI*(1-e);return{x:r+o*Math.sin(s),y:i+o-o*(1-Math.cos(s))}}else return{x:Math.pow(1-e,2)*this.fromPoint.x+2*e*(1-e)*t.x+Math.pow(e,2)*this.toPoint.x,y:Math.pow(1-e,2)*this.fromPoint.y+2*e*(1-e)*t.y+Math.pow(e,2)*this.toPoint.y}}_findBorderPosition(e,t){return this._findBorderPositionBezier(e,t,this.via)}_getDistanceToEdge(e,t,r,i,o,s){return this._getDistanceToBezierEdge(e,t,r,i,o,s,this.via)}},qk=class extends mT{constructor(e,t,r){super(e,t,r)}_line(e,t,r){this._bezierCurve(e,t,r)}getViaNode(){return this._getViaCoordinates()}_getViaCoordinates(){const e=this.options.smooth.roundness,t=this.options.smooth.type;let r=Math.abs(this.from.x-this.to.x),i=Math.abs(this.from.y-this.to.y);if(t==="discrete"||t==="diagonalCross"){let o,s;r<=i?o=s=e*i:o=s=e*r,this.from.x>this.to.x&&(o=-o),this.from.y>=this.to.y&&(s=-s);let a=this.from.x+o,g=this.from.y+s;return t==="discrete"&&(r<=i?a=r<e*i?this.from.x:a:g=i<e*r?this.from.y:g),{x:a,y:g}}else if(t==="straightCross"){let o=(1-e)*r,s=(1-e)*i;return r<=i?(o=0,this.from.y<this.to.y&&(s=-s)):(this.from.x<this.to.x&&(o=-o),s=0),{x:this.to.x+o,y:this.to.y+s}}else if(t==="horizontal"){let o=(1-e)*r;return this.from.x<this.to.x&&(o=-o),{x:this.to.x+o,y:this.from.y}}else if(t==="vertical"){let o=(1-e)*i;return this.from.y<this.to.y&&(o=-o),{x:this.from.x,y:this.to.y+o}}else if(t==="curvedCW"){r=this.to.x-this.from.x,i=this.from.y-this.to.y;const o=Math.sqrt(r*r+i*i),s=Math.PI,g=(Math.atan2(i,r)+(e*.5+.5)*s)%(2*s);return{x:this.from.x+(e*.5+.5)*o*Math.sin(g),y:this.from.y+(e*.5+.5)*o*Math.cos(g)}}else if(t==="curvedCCW"){r=this.to.x-this.from.x,i=this.from.y-this.to.y;const o=Math.sqrt(r*r+i*i),s=Math.PI,g=(Math.atan2(i,r)+(-e*.5+.5)*s)%(2*s);return{x:this.from.x+(e*.5+.5)*o*Math.sin(g),y:this.from.y+(e*.5+.5)*o*Math.cos(g)}}else{let o,s;r<=i?o=s=e*i:o=s=e*r,this.from.x>this.to.x&&(o=-o),this.from.y>=this.to.y&&(s=-s);let a=this.from.x+o,g=this.from.y+s;return r<=i?this.from.x<=this.to.x?a=this.to.x<a?this.to.x:a:a=this.to.x>a?this.to.x:a:this.from.y>=this.to.y?g=this.to.y>g?this.to.y:g:g=this.to.y<g?this.to.y:g,{x:a,y:g}}}_findBorderPosition(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return this._findBorderPositionBezier(e,t,r.via)}_getDistanceToEdge(e,t,r,i,o,s){let a=arguments.length>6&&arguments[6]!==void 0?arguments[6]:this._getViaCoordinates();return this._getDistanceToBezierEdge(e,t,r,i,o,s,a)}getPoint(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this._getViaCoordinates();const r=e,i=Math.pow(1-r,2)*this.fromPoint.x+2*r*(1-r)*t.x+Math.pow(r,2)*this.toPoint.x,o=Math.pow(1-r,2)*this.fromPoint.y+2*r*(1-r)*t.y+Math.pow(r,2)*this.toPoint.y;return{x:i,y:o}}},rCe=class extends mT{constructor(e,t,r){super(e,t,r)}_getDistanceToBezierEdge2(e,t,r,i,o,s,a,g){let A=1e9,I=e,C=t;const l=[0,0,0,0];for(let d=1;d<10;d++){const u=.1*d;l[0]=Math.pow(1-u,3),l[1]=3*u*Math.pow(1-u,2),l[2]=3*Math.pow(u,2)*(1-u),l[3]=Math.pow(u,3);const h=l[0]*e+l[1]*a.x+l[2]*g.x+l[3]*r,v=l[0]*t+l[1]*a.y+l[2]*g.y+l[3]*i;if(d>0){const f=this._getDistanceToLine(I,C,h,v,o,s);A=f<A?f:A}I=h,C=v}return A}},Fk=class extends rCe{constructor(e,t,r){super(e,t,r)}_line(e,t,r){const i=r[0],o=r[1];this._bezierCurve(e,t,i,o)}_getViaCoordinates(){const e=this.from.x-this.to.x,t=this.from.y-this.to.y;let r,i,o,s;const a=this.options.smooth.roundness;return(Math.abs(e)>Math.abs(t)||this.options.smooth.forceDirection===!0||this.options.smooth.forceDirection==="horizontal")&&this.options.smooth.forceDirection!=="vertical"?(i=this.from.y,s=this.to.y,r=this.from.x-a*e,o=this.to.x+a*e):(i=this.from.y-a*t,s=this.to.y+a*t,r=this.from.x,o=this.to.x),[{x:r,y:i},{x:o,y:s}]}getViaNode(){return this._getViaCoordinates()}_findBorderPosition(e,t){return this._findBorderPositionBezier(e,t)}_getDistanceToEdge(e,t,r,i,o,s){let[a,g]=arguments.length>6&&arguments[6]!==void 0?arguments[6]:this._getViaCoordinates();return this._getDistanceToBezierEdge2(e,t,r,i,o,s,a,g)}getPoint(e){let[t,r]=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this._getViaCoordinates();const i=e,o=[Math.pow(1-i,3),3*i*Math.pow(1-i,2),3*Math.pow(i,2)*(1-i),Math.pow(i,3)],s=o[0]*this.fromPoint.x+o[1]*t.x+o[2]*r.x+o[3]*this.toPoint.x,a=o[0]*this.fromPoint.y+o[1]*t.y+o[2]*r.y+o[3]*this.toPoint.y;return{x:s,y:a}}},kk=class extends h7{constructor(e,t,r){super(e,t,r)}_line(e,t){e.beginPath(),e.moveTo(this.fromPoint.x,this.fromPoint.y),e.lineTo(this.toPoint.x,this.toPoint.y),this.enableShadow(e,t),e.stroke(),this.disableShadow(e,t)}getViaNode(){}getPoint(e){return{x:(1-e)*this.fromPoint.x+e*this.toPoint.x,y:(1-e)*this.fromPoint.y+e*this.toPoint.y}}_findBorderPosition(e,t){let r=this.to,i=this.from;e.id===this.from.id&&(r=this.from,i=this.to);const o=Math.atan2(r.y-i.y,r.x-i.x),s=r.x-i.x,a=r.y-i.y,g=Math.sqrt(s*s+a*a),A=e.distanceToBorder(t,o),I=(g-A)/g;return{x:(1-I)*i.x+I*r.x,y:(1-I)*i.y+I*r.y,t:0}}_getDistanceToEdge(e,t,r,i,o,s){return this._getDistanceToLine(e,t,r,i,o,s)}},ns=class c7{constructor(e,t,r,i,o){if(t===void 0)throw new Error("No body provided");this.options=sn(i),this.globalOptions=i,this.defaultOptions=o,this.body=t,this.imagelist=r,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 d7(this.body,this.options,!0),this.setOptions(e)}setOptions(e){if(!e)return;let t=typeof e.physics<"u"&&this.options.physics!==e.physics||typeof e.hidden<"u"&&(this.options.hidden||!1)!==(e.hidden||!1)||typeof e.from<"u"&&this.options.from!==e.from||typeof e.to<"u"&&this.options.to!==e.to;c7.parseOptions(this.options,e,!0,this.globalOptions),e.id!==void 0&&(this.id=e.id),e.from!==void 0&&(this.fromId=e.from),e.to!==void 0&&(this.toId=e.to),e.title!==void 0&&(this.title=e.title),e.value!==void 0&&(e.value=C7(e.value));const r=[e,this.options,this.defaultOptions];return this.chooser=pT("edge",r),this.updateLabelModule(e),t=this.updateEdgeType()||t,this._setInteractionWidths(),this.connect(),t}static parseOptions(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;if(zs(["endPointOffset","arrowStrikethrough","id","from","hidden","hoverWidth","labelHighlightBold","length","line","opacity","physics","scaling","selectionWidth","selfReferenceSize","selfReference","to","title","value","width","font","chosen","widthConstraint"],e,t,r),t.endPointOffset!==void 0&&t.endPointOffset.from!==void 0&&(Nn(t.endPointOffset.from)?e.endPointOffset.from=t.endPointOffset.from:(e.endPointOffset.from=i.endPointOffset.from!==void 0?i.endPointOffset.from:0,console.error("endPointOffset.from is not a valid number"))),t.endPointOffset!==void 0&&t.endPointOffset.to!==void 0&&(Nn(t.endPointOffset.to)?e.endPointOffset.to=t.endPointOffset.to:(e.endPointOffset.to=i.endPointOffset.to!==void 0?i.endPointOffset.to:0,console.error("endPointOffset.to is not a valid number"))),GA(t.label)?e.label=t.label:GA(e.label)||(e.label=void 0),dr(e,t,"smooth",i),dr(e,t,"shadow",i),dr(e,t,"background",i),t.dashes!==void 0&&t.dashes!==null?e.dashes=t.dashes:r===!0&&t.dashes===null&&(e.dashes=nn(i.dashes)),t.scaling!==void 0&&t.scaling!==null?(t.scaling.min!==void 0&&(e.scaling.min=t.scaling.min),t.scaling.max!==void 0&&(e.scaling.max=t.scaling.max),dr(e.scaling,t.scaling,"label",i.scaling)):r===!0&&t.scaling===null&&(e.scaling=nn(i.scaling)),t.arrows!==void 0&&t.arrows!==null)if(typeof t.arrows=="string"){const a=t.arrows.toLowerCase();e.arrows.to.enabled=_e(a).call(a,"to")!=-1,e.arrows.middle.enabled=_e(a).call(a,"middle")!=-1,e.arrows.from.enabled=_e(a).call(a,"from")!=-1}else if(typeof t.arrows=="object")dr(e.arrows,t.arrows,"to",i.arrows),dr(e.arrows,t.arrows,"middle",i.arrows),dr(e.arrows,t.arrows,"from",i.arrows);else throw new Error("The arrow newOptions can only be an object or a string. Refer to the documentation. You used:"+ks(t.arrows));else r===!0&&t.arrows===null&&(e.arrows=nn(i.arrows));if(t.color!==void 0&&t.color!==null){const a=ts(t.color)?{color:t.color,highlight:t.color,hover:t.color,inherit:!1,opacity:1}:t.color,g=e.color;if(o)Me(g,i.color,!1,r);else for(const A in g)Object.prototype.hasOwnProperty.call(g,A)&&delete g[A];if(ts(g))g.color=g,g.highlight=g,g.hover=g,g.inherit=!1,a.opacity===void 0&&(g.opacity=1);else{let A=!1;a.color!==void 0&&(g.color=a.color,A=!0),a.highlight!==void 0&&(g.highlight=a.highlight,A=!0),a.hover!==void 0&&(g.hover=a.hover,A=!0),a.inherit!==void 0&&(g.inherit=a.inherit),a.opacity!==void 0&&(g.opacity=Math.min(1,Math.max(0,a.opacity))),A===!0?g.inherit=!1:g.inherit===void 0&&(g.inherit="from")}}else r===!0&&t.color===null&&(e.color=sn(i.color));r===!0&&t.font===null&&(e.font=sn(i.font)),Object.prototype.hasOwnProperty.call(t,"selfReferenceSize")&&(console.warn("The selfReferenceSize property has been deprecated. Please use selfReference property instead. The selfReference can be set like thise selfReference:{size:30, angle:Math.PI / 4}"),e.selfReference.size=t.selfReferenceSize)}getFormattingValues(){const e=this.options.arrows.to===!0||this.options.arrows.to.enabled===!0,t=this.options.arrows.from===!0||this.options.arrows.from.enabled===!0,r=this.options.arrows.middle===!0||this.options.arrows.middle.enabled===!0,i=this.options.color.inherit,o={toArrow:e,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:r,middleArrowScale:this.options.arrows.middle.scaleFactor,middleArrowType:this.options.arrows.middle.type,middleArrowSrc:this.options.arrows.middle.src,middleArrowImageWidth:this.options.arrows.middle.imageWidth,middleArrowImageHeight:this.options.arrows.middle.imageHeight,fromArrow:t,fromArrowScale:this.options.arrows.from.scaleFactor,fromArrowType:this.options.arrows.from.type,fromArrowSrc:this.options.arrows.from.src,fromArrowImageWidth:this.options.arrows.from.imageWidth,fromArrowImageHeight:this.options.arrows.from.imageHeight,arrowStrikethrough:this.options.arrowStrikethrough,color: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(this.chooser===!0){if(this.selected){const s=this.options.selectionWidth;typeof s=="function"?o.width=s(o.width):typeof s=="number"&&(o.width+=s),o.width=Math.max(o.width,.3/this.body.view.scale),o.color=this.options.color.highlight,o.shadow=this.options.shadow.enabled}else if(this.hover){const s=this.options.hoverWidth;typeof s=="function"?o.width=s(o.width):typeof s=="number"&&(o.width+=s),o.width=Math.max(o.width,.3/this.body.view.scale),o.color=this.options.color.hover,o.shadow=this.options.shadow.enabled}}else typeof this.chooser=="function"&&(this.chooser(o,this.options.id,this.selected,this.hover),o.color!==void 0&&(o.inheritsColor=!1),o.shadow===!1&&(o.shadowColor!==this.options.shadow.color||o.shadowSize!==this.options.shadow.size||o.shadowX!==this.options.shadow.x||o.shadowY!==this.options.shadow.y)&&(o.shadow=!0));else o.shadow=this.options.shadow.enabled,o.width=Math.max(o.width,.3/this.body.view.scale);return o}updateLabelModule(e){const t=[e,this.options,this.globalOptions,this.defaultOptions];this.labelModule.update(this.options,t),this.labelModule.baseSize!==void 0&&(this.baseFontSize=this.labelModule.baseSize)}updateEdgeType(){const e=this.options.smooth;let t=!1,r=!0;return this.edgeType!==void 0&&((this.edgeType instanceof Mk&&e.enabled===!0&&e.type==="dynamic"||this.edgeType instanceof Fk&&e.enabled===!0&&e.type==="cubicBezier"||this.edgeType instanceof qk&&e.enabled===!0&&e.type!=="dynamic"&&e.type!=="cubicBezier"||this.edgeType instanceof kk&&e.type.enabled===!1)&&(r=!1),r===!0&&(t=this.cleanup())),r===!0?e.enabled===!0?e.type==="dynamic"?(t=!0,this.edgeType=new Mk(this.options,this.body,this.labelModule)):e.type==="cubicBezier"?this.edgeType=new Fk(this.options,this.body,this.labelModule):this.edgeType=new qk(this.options,this.body,this.labelModule):this.edgeType=new kk(this.options,this.body,this.labelModule):this.edgeType.setOptions(this.options),t}connect(){this.disconnect(),this.from=this.body.nodes[this.fromId]||void 0,this.to=this.body.nodes[this.toId]||void 0,this.connected=this.from!==void 0&&this.to!==void 0,this.connected===!0?(this.from.attachEdge(this),this.to.attachEdge(this)):(this.from&&this.from.detachEdge(this),this.to&&this.to.detachEdge(this)),this.edgeType.connect()}disconnect(){this.from&&(this.from.detachEdge(this),this.from=void 0),this.to&&(this.to.detachEdge(this),this.to=void 0),this.connected=!1}getTitle(){return this.title}isSelected(){return this.selected}getValue(){return this.options.value}setValueRange(e,t,r){if(this.options.value!==void 0){const i=this.options.scaling.customScalingFunction(e,t,r,this.options.value),o=this.options.scaling.max-this.options.scaling.min;if(this.options.scaling.label.enabled===!0){const s=this.options.scaling.label.max-this.options.scaling.label.min;this.options.font.size=this.options.scaling.label.min+i*s}this.options.width=this.options.scaling.min+i*o}else this.options.width=this.baseWidth,this.options.font.size=this.baseFontSize;this._setInteractionWidths(),this.updateLabelModule()}_setInteractionWidths(){typeof this.options.hoverWidth=="function"?this.edgeType.hoverWidth=this.options.hoverWidth(this.options.width):this.edgeType.hoverWidth=this.options.hoverWidth+this.options.width,typeof this.options.selectionWidth=="function"?this.edgeType.selectionWidth=this.options.selectionWidth(this.options.width):this.edgeType.selectionWidth=this.options.selectionWidth+this.options.width}draw(e){const t=this.getFormattingValues();if(t.hidden)return;const r=this.edgeType.getViaNode();this.edgeType.drawLine(e,t,this.selected,this.hover,r),this.drawLabel(e,r)}drawArrows(e){const t=this.getFormattingValues();if(t.hidden)return;const r=this.edgeType.getViaNode(),i={};this.edgeType.fromPoint=this.edgeType.from,this.edgeType.toPoint=this.edgeType.to,t.fromArrow&&(i.from=this.edgeType.getArrowData(e,"from",r,this.selected,this.hover,t),t.arrowStrikethrough===!1&&(this.edgeType.fromPoint=i.from.core),t.fromArrowSrc&&(i.from.image=this.imagelist.load(t.fromArrowSrc)),t.fromArrowImageWidth&&(i.from.imageWidth=t.fromArrowImageWidth),t.fromArrowImageHeight&&(i.from.imageHeight=t.fromArrowImageHeight)),t.toArrow&&(i.to=this.edgeType.getArrowData(e,"to",r,this.selected,this.hover,t),t.arrowStrikethrough===!1&&(this.edgeType.toPoint=i.to.core),t.toArrowSrc&&(i.to.image=this.imagelist.load(t.toArrowSrc)),t.toArrowImageWidth&&(i.to.imageWidth=t.toArrowImageWidth),t.toArrowImageHeight&&(i.to.imageHeight=t.toArrowImageHeight)),t.middleArrow&&(i.middle=this.edgeType.getArrowData(e,"middle",r,this.selected,this.hover,t),t.middleArrowSrc&&(i.middle.image=this.imagelist.load(t.middleArrowSrc)),t.middleArrowImageWidth&&(i.middle.imageWidth=t.middleArrowImageWidth),t.middleArrowImageHeight&&(i.middle.imageHeight=t.middleArrowImageHeight)),t.fromArrow&&this.edgeType.drawArrowHead(e,t,this.selected,this.hover,i.from),t.middleArrow&&this.edgeType.drawArrowHead(e,t,this.selected,this.hover,i.middle),t.toArrow&&this.edgeType.drawArrowHead(e,t,this.selected,this.hover,i.to)}drawLabel(e,t){if(this.options.label!==void 0){const r=this.from,i=this.to;this.labelModule.differentState(this.selected,this.hover)&&this.labelModule.getTextSize(e,this.selected,this.hover);let o;if(r.id!=i.id){this.labelModule.pointToSelf=!1,o=this.edgeType.getPoint(.5,t),e.save();const s=this._getRotation(e);s.angle!=0&&(e.translate(s.x,s.y),e.rotate(s.angle)),this.labelModule.draw(e,o.x,o.y,this.selected,this.hover),e.restore()}else{this.labelModule.pointToSelf=!0;const s=l7(e,this.options.selfReference.angle,this.options.selfReference.size,r);o=this._pointOnCircle(s.x,s.y,this.options.selfReference.size,this.options.selfReference.angle),this.labelModule.draw(e,o.x,o.y,this.selected,this.hover)}}}getItemsOnPoint(e){const t=[];if(this.labelModule.visible()){const i=this._getRotation();fO(this.labelModule.getSize(),e,i)&&t.push({edgeId:this.id,labelId:0})}const r={left:e.x,top:e.y};return this.isOverlappingWith(r)&&t.push({edgeId:this.id}),t}isOverlappingWith(e){if(this.connected){const r=this.from.x,i=this.from.y,o=this.to.x,s=this.to.y,a=e.left,g=e.top;return this.edgeType.getDistanceToEdge(r,i,o,s,a,g)<10}else return!1}_getRotation(e){const t=this.edgeType.getViaNode(),r=this.edgeType.getPoint(.5,t);e!==void 0&&this.labelModule.calculateLabelSize(e,this.selected,this.hover,r.x,r.y);const i={x:r.x,y:this.labelModule.size.yLine,angle:0};if(!this.labelModule.visible()||this.options.font.align==="horizontal")return i;const o=this.from.y-this.to.y,s=this.from.x-this.to.x;let a=Math.atan2(o,s);return(a<-1&&s<0||a>0&&s<0)&&(a+=Math.PI),i.angle=a,i}_pointOnCircle(e,t,r,i){return{x:e+r*Math.cos(i),y:t-r*Math.sin(i)}}select(){this.selected=!0}unselect(){this.selected=!1}cleanup(){return this.edgeType.cleanup()}remove(){this.cleanup(),this.disconnect(),delete this.body.edges[this.id]}endPointsValid(){return this.body.nodes[this.fromId]!==void 0&&this.body.nodes[this.toId]!==void 0}},iCe=class{constructor(e,t,r){var i;this.body=e,this.images=t,this.groups=r,this.body.functions.createEdge=z(i=this.create).call(i,this),this.edgesListeners={add:(o,s)=>{this.add(s.items)},update:(o,s)=>{this.update(s.items)},remove:(o,s)=>{this.remove(s.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(o,s,a,g){if(s===o)return .5;{const A=1/(s-o);return Math.max(0,(g-o)*A)}}},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},Me(this.options,this.defaultOptions),this.bindEventListeners()}bindEventListeners(){var e=this,t,r;this.body.emitter.on("_forceDisableDynamicCurves",function(i){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;i==="dynamic"&&(i="continuous");let s=!1;for(const a in e.body.edges)if(Object.prototype.hasOwnProperty.call(e.body.edges,a)){const g=e.body.edges[a],A=e.body.data.edges.get(a);if(A!=null){const I=A.smooth;I!==void 0&&I.enabled===!0&&I.type==="dynamic"&&(i===void 0?g.setOptions({smooth:!1}):g.setOptions({smooth:{type:i}}),s=!0)}}o===!0&&s===!0&&e.body.emitter.emit("_dataChanged")}),this.body.emitter.on("_dataUpdated",()=>{this.reconnectEdges()}),this.body.emitter.on("refreshEdges",z(t=this.refresh).call(t,this)),this.body.emitter.on("refresh",z(r=this.refresh).call(r,this)),this.body.emitter.on("destroy",()=>{de(this.edgesListeners,(i,o)=>{this.body.data.edges&&this.body.data.edges.off(o,i)}),delete this.body.functions.createEdge,delete this.edgesListeners.add,delete this.edgesListeners.update,delete this.edgesListeners.remove,delete this.edgesListeners})}setOptions(e){if(e!==void 0){ns.parseOptions(this.options,e,!0,this.defaultOptions,!0);let t=!1;if(e.smooth!==void 0)for(const r in this.body.edges)Object.prototype.hasOwnProperty.call(this.body.edges,r)&&(t=this.body.edges[r].updateEdgeType()||t);if(e.font!==void 0)for(const r in this.body.edges)Object.prototype.hasOwnProperty.call(this.body.edges,r)&&this.body.edges[r].updateLabelModule();(e.hidden!==void 0||e.physics!==void 0||t===!0)&&this.body.emitter.emit("_dataChanged")}}setData(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;const r=this.body.data.edges;if(I7("id",e))this.body.data.edges=e;else if(we(e))this.body.data.edges=new us,this.body.data.edges.add(e);else if(!e)this.body.data.edges=new us;else throw new TypeError("Array or DataSet expected");if(r&&de(this.edgesListeners,(i,o)=>{r.off(o,i)}),this.body.edges={},this.body.data.edges){de(this.edgesListeners,(o,s)=>{this.body.data.edges.on(s,o)});const i=this.body.data.edges.getIds();this.add(i,!0)}this.body.emitter.emit("_adjustEdgesForHierarchicalLayout"),t===!1&&this.body.emitter.emit("_dataChanged")}add(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;const r=this.body.edges,i=this.body.data.edges;for(let o=0;o<e.length;o++){const s=e[o],a=r[s];a&&a.disconnect();const g=i.get(s,{showInternalIds:!0});r[s]=this.create(g)}this.body.emitter.emit("_adjustEdgesForHierarchicalLayout"),t===!1&&this.body.emitter.emit("_dataChanged")}update(e){const t=this.body.edges,r=this.body.data.edges;let i=!1;for(let o=0;o<e.length;o++){const s=e[o],a=r.get(s),g=t[s];g!==void 0?(g.disconnect(),i=g.setOptions(a)||i,g.connect()):(this.body.edges[s]=this.create(a),i=!0)}i===!0?(this.body.emitter.emit("_adjustEdgesForHierarchicalLayout"),this.body.emitter.emit("_dataChanged")):this.body.emitter.emit("_dataUpdated")}remove(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(e.length===0)return;const r=this.body.edges;de(e,i=>{const o=r[i];o!==void 0&&o.remove()}),t&&this.body.emitter.emit("_dataChanged")}refresh(){de(this.body.edges,(e,t)=>{const r=this.body.data.edges.get(t);r!==void 0&&e.setOptions(r)})}create(e){return new ns(e,this.body,this.images,this.options,this.defaultOptions)}reconnectEdges(){let e;const t=this.body.nodes,r=this.body.edges;for(e in t)Object.prototype.hasOwnProperty.call(t,e)&&(t[e].edges=[]);for(e in r)if(Object.prototype.hasOwnProperty.call(r,e)){const i=r[e];i.from=null,i.to=null,i.connect()}}getConnectedNodes(e){const t=[];if(this.body.edges[e]!==void 0){const r=this.body.edges[e];r.fromId!==void 0&&t.push(r.fromId),r.toId!==void 0&&t.push(r.toId)}return t}_updateState(){this._addMissingEdges(),this._removeInvalidEdges()}_removeInvalidEdges(){const e=[];de(this.body.edges,(t,r)=>{const i=this.body.nodes[t.toId],o=this.body.nodes[t.fromId];i!==void 0&&i.isCluster===!0||o!==void 0&&o.isCluster===!0||(i===void 0||o===void 0)&&e.push(r)}),this.remove(e,!1)}_addMissingEdges(){const e=this.body.data.edges;if(e==null)return;const t=this.body.edges,r=[];be(e).call(e,(i,o)=>{t[o]===void 0&&r.push(o)}),this.add(r,!0)}},f7=class{constructor(e,t,r){this.body=e,this.physicsBody=t,this.barnesHutTree,this.setOptions(r),this._rng=yI("BARNES HUT SOLVER")}setOptions(e){this.options=e,this.thetaInversed=1/this.options.theta,this.overlapAvoidanceFactor=1-Math.max(0,Math.min(1,this.options.avoidOverlap))}solve(){if(this.options.gravitationalConstant!==0&&this.physicsBody.physicsNodeIndices.length>0){let e;const t=this.body.nodes,r=this.physicsBody.physicsNodeIndices,i=r.length,o=this._formBarnesHutTree(t,r);this.barnesHutTree=o;for(let s=0;s<i;s++)e=t[r[s]],e.options.mass>0&&this._getForceContributions(o.root,e)}}_getForceContributions(e,t){this._getForceContribution(e.children.NW,t),this._getForceContribution(e.children.NE,t),this._getForceContribution(e.children.SW,t),this._getForceContribution(e.children.SE,t)}_getForceContribution(e,t){if(e.childrenCount>0){const r=e.centerOfMass.x-t.x,i=e.centerOfMass.y-t.y,o=Math.sqrt(r*r+i*i);o*e.calcSize>this.thetaInversed?this._calculateForces(o,r,i,t,e):e.childrenCount===4?this._getForceContributions(e,t):e.children.data.id!=t.id&&this._calculateForces(o,r,i,t,e)}}_calculateForces(e,t,r,i,o){e===0&&(e=.1,t=e),this.overlapAvoidanceFactor<1&&i.shape.radius&&(e=Math.max(.1+this.overlapAvoidanceFactor*i.shape.radius,e-i.shape.radius));const s=this.options.gravitationalConstant*o.mass*i.options.mass/Math.pow(e,3),a=t*s,g=r*s;this.physicsBody.forces[i.id].x+=a,this.physicsBody.forces[i.id].y+=g}_formBarnesHutTree(e,t){let r;const i=t.length;let o=e[t[0]].x,s=e[t[0]].y,a=e[t[0]].x,g=e[t[0]].y;for(let v=1;v<i;v++){const f=e[t[v]],c=f.x,b=f.y;f.options.mass>0&&(c<o&&(o=c),c>a&&(a=c),b<s&&(s=b),b>g&&(g=b))}const A=Math.abs(a-o)-Math.abs(g-s);A>0?(s-=.5*A,g+=.5*A):(o+=.5*A,a-=.5*A);const C=Math.max(1e-5,Math.abs(a-o)),l=.5*C,d=.5*(o+a),u=.5*(s+g),h={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:d-l,maxX:d+l,minY:u-l,maxY:u+l},size:C,calcSize:1/C,children:{data:null},maxWidth:0,level:0,childrenCount:4}};this._splitBranch(h.root);for(let v=0;v<i;v++)r=e[t[v]],r.options.mass>0&&this._placeInTree(h.root,r);return h}_updateBranchMass(e,t){const r=e.centerOfMass,i=e.mass+t.options.mass,o=1/i;r.x=r.x*e.mass+t.x*t.options.mass,r.x*=o,r.y=r.y*e.mass+t.y*t.options.mass,r.y*=o,e.mass=i;const s=Math.max(Math.max(t.height,t.radius),t.width);e.maxWidth=e.maxWidth<s?s:e.maxWidth}_placeInTree(e,t,r){(r!=!0||r===void 0)&&this._updateBranchMass(e,t);const i=e.children.NW.range;let o;i.maxX>t.x?i.maxY>t.y?o="NW":o="SW":i.maxY>t.y?o="NE":o="SE",this._placeInRegion(e,t,o)}_placeInRegion(e,t,r){const i=e.children[r];switch(i.childrenCount){case 0:i.children.data=t,i.childrenCount=1,this._updateBranchMass(i,t);break;case 1:i.children.data.x===t.x&&i.children.data.y===t.y?(t.x+=this._rng(),t.y+=this._rng()):(this._splitBranch(i),this._placeInTree(i,t));break;case 4:this._placeInTree(i,t);break}}_splitBranch(e){let t=null;e.childrenCount===1&&(t=e.children.data,e.mass=0,e.centerOfMass.x=0,e.centerOfMass.y=0),e.childrenCount=4,e.children.data=null,this._insertRegion(e,"NW"),this._insertRegion(e,"NE"),this._insertRegion(e,"SW"),this._insertRegion(e,"SE"),t!=null&&this._placeInTree(e,t)}_insertRegion(e,t){let r,i,o,s;const a=.5*e.size;switch(t){case"NW":r=e.range.minX,i=e.range.minX+a,o=e.range.minY,s=e.range.minY+a;break;case"NE":r=e.range.minX+a,i=e.range.maxX,o=e.range.minY,s=e.range.minY+a;break;case"SW":r=e.range.minX,i=e.range.minX+a,o=e.range.minY+a,s=e.range.maxY;break;case"SE":r=e.range.minX+a,i=e.range.maxX,o=e.range.minY+a,s=e.range.maxY;break}e.children[t]={centerOfMass:{x:0,y:0},mass:0,range:{minX:r,maxX:i,minY:o,maxY:s},size:.5*e.size,calcSize:2*e.calcSize,children:{data:null},maxWidth:0,level:e.level+1,childrenCount:0}}_debug(e,t){this.barnesHutTree!==void 0&&(e.lineWidth=1,this._drawBranch(this.barnesHutTree.root,e,t))}_drawBranch(e,t,r){r===void 0&&(r="#FF0000"),e.childrenCount===4&&(this._drawBranch(e.children.NW,t),this._drawBranch(e.children.NE,t),this._drawBranch(e.children.SE,t),this._drawBranch(e.children.SW,t)),t.strokeStyle=r,t.beginPath(),t.moveTo(e.range.minX,e.range.minY),t.lineTo(e.range.maxX,e.range.minY),t.stroke(),t.beginPath(),t.moveTo(e.range.maxX,e.range.minY),t.lineTo(e.range.maxX,e.range.maxY),t.stroke(),t.beginPath(),t.moveTo(e.range.maxX,e.range.maxY),t.lineTo(e.range.minX,e.range.maxY),t.stroke(),t.beginPath(),t.moveTo(e.range.minX,e.range.maxY),t.lineTo(e.range.minX,e.range.minY),t.stroke()}},nCe=class{constructor(e,t,r){this._rng=yI("REPULSION SOLVER"),this.body=e,this.physicsBody=t,this.setOptions(r)}setOptions(e){this.options=e}solve(){let e,t,r,i,o,s,a,g;const A=this.body.nodes,I=this.physicsBody.physicsNodeIndices,C=this.physicsBody.forces,l=this.options.nodeDistance,d=-2/3/l,u=4/3;for(let h=0;h<I.length-1;h++){a=A[I[h]];for(let v=h+1;v<I.length;v++)g=A[I[v]],e=g.x-a.x,t=g.y-a.y,r=Math.sqrt(e*e+t*t),r===0&&(r=.1*this._rng(),e=r),r<2*l&&(r<.5*l?s=1:s=d*r+u,s=s/r,i=e*s,o=t*s,C[a.id].x-=i,C[a.id].y-=o,C[g.id].x+=i,C[g.id].y+=o)}}},oCe=class{constructor(e,t,r){this.body=e,this.physicsBody=t,this.setOptions(r)}setOptions(e){this.options=e,this.overlapAvoidanceFactor=Math.max(0,Math.min(1,this.options.avoidOverlap||0))}solve(){const e=this.body.nodes,t=this.physicsBody.physicsNodeIndices,r=this.physicsBody.forces,i=this.options.nodeDistance;for(let o=0;o<t.length-1;o++){const s=e[t[o]];for(let a=o+1;a<t.length;a++){const g=e[t[a]];if(s.level===g.level){const A=i+this.overlapAvoidanceFactor*((s.shape.radius||0)/2+(g.shape.radius||0)/2),I=g.x-s.x,C=g.y-s.y,l=Math.sqrt(I*I+C*C),d=.05;let u;l<A?u=-Math.pow(d*l,2)+Math.pow(d*A,2):u=0,l!==0&&(u=u/l);const h=I*u,v=C*u;r[s.id].x-=h,r[s.id].y-=v,r[g.id].x+=h,r[g.id].y+=v}}}}},mf=class{constructor(e,t,r){this.body=e,this.physicsBody=t,this.setOptions(r)}setOptions(e){this.options=e}solve(){let e,t;const r=this.physicsBody.physicsEdgeIndices,i=this.body.edges;let o,s,a;for(let g=0;g<r.length;g++)t=i[r[g]],t.connected===!0&&t.toId!==t.fromId&&this.body.nodes[t.toId]!==void 0&&this.body.nodes[t.fromId]!==void 0&&(t.edgeType.via!==void 0?(e=t.options.length===void 0?this.options.springLength:t.options.length,o=t.to,s=t.edgeType.via,a=t.from,this._calculateSpringForce(o,s,.5*e),this._calculateSpringForce(s,a,.5*e)):(e=t.options.length===void 0?this.options.springLength*1.5:t.options.length,this._calculateSpringForce(t.from,t.to,e)))}_calculateSpringForce(e,t,r){const i=e.x-t.x,o=e.y-t.y,s=Math.max(Math.sqrt(i*i+o*o),.01),a=this.options.springConstant*(r-s)/s,g=i*a,A=o*a;this.physicsBody.forces[e.id]!==void 0&&(this.physicsBody.forces[e.id].x+=g,this.physicsBody.forces[e.id].y+=A),this.physicsBody.forces[t.id]!==void 0&&(this.physicsBody.forces[t.id].x-=g,this.physicsBody.forces[t.id].y-=A)}},sCe=class{constructor(e,t,r){this.body=e,this.physicsBody=t,this.setOptions(r)}setOptions(e){this.options=e}solve(){let e,t,r,i,o,s,a,g;const A=this.body.edges,I=.5,C=this.physicsBody.physicsEdgeIndices,l=this.physicsBody.physicsNodeIndices,d=this.physicsBody.forces;for(let p=0;p<l.length;p++){const y=l[p];d[y].springFx=0,d[y].springFy=0}for(let p=0;p<C.length;p++)t=A[C[p]],t.connected===!0&&(e=t.options.length===void 0?this.options.springLength:t.options.length,r=t.from.x-t.to.x,i=t.from.y-t.to.y,g=Math.sqrt(r*r+i*i),g=g===0?.01:g,a=this.options.springConstant*(e-g)/g,o=r*a,s=i*a,t.to.level!=t.from.level?(d[t.toId]!==void 0&&(d[t.toId].springFx-=o,d[t.toId].springFy-=s),d[t.fromId]!==void 0&&(d[t.fromId].springFx+=o,d[t.fromId].springFy+=s)):(d[t.toId]!==void 0&&(d[t.toId].x-=I*o,d[t.toId].y-=I*s),d[t.fromId]!==void 0&&(d[t.fromId].x+=I*o,d[t.fromId].y+=I*s)));a=1;let u,h;for(let p=0;p<l.length;p++){const y=l[p];u=Math.min(a,Math.max(-a,d[y].springFx)),h=Math.min(a,Math.max(-a,d[y].springFy)),d[y].x+=u,d[y].y+=h}let v=0,f=0;for(let p=0;p<l.length;p++){const y=l[p];v+=d[y].x,f+=d[y].y}const c=v/l.length,b=f/l.length;for(let p=0;p<l.length;p++){const y=l[p];d[y].x-=c,d[y].y-=b}}},OA=class{constructor(e,t,r){this.body=e,this.physicsBody=t,this.setOptions(r)}setOptions(e){this.options=e}solve(){let e,t,r,i;const o=this.body.nodes,s=this.physicsBody.physicsNodeIndices,a=this.physicsBody.forces;for(let g=0;g<s.length;g++){const A=s[g];i=o[A],e=-i.x,t=-i.y,r=Math.sqrt(e*e+t*t),this._calculateForces(r,e,t,a,i)}}_calculateForces(e,t,r,i,o){const s=e===0?0:this.options.centralGravity/e;i[o.id].x=t*s,i[o.id].y=r*s}},aCe=class extends f7{constructor(e,t,r){super(e,t,r),this._rng=yI("FORCE ATLAS 2 BASED REPULSION SOLVER")}_calculateForces(e,t,r,i,o){e===0&&(e=.1*this._rng(),t=e),this.overlapAvoidanceFactor<1&&i.shape.radius&&(e=Math.max(.1+this.overlapAvoidanceFactor*i.shape.radius,e-i.shape.radius));const s=i.edges.length+1,a=this.options.gravitationalConstant*o.mass*i.options.mass*s/Math.pow(e,2),g=t*a,A=r*a;this.physicsBody.forces[i.id].x+=g,this.physicsBody.forces[i.id].y+=A}},gCe=class extends OA{constructor(e,t,r){super(e,t,r)}_calculateForces(e,t,r,i,o){if(e>0){const s=o.edges.length+1,a=this.options.centralGravity*s*o.options.mass;i[o.id].x=t*a,i[o.id].y=r*a}}},ACe=class{constructor(e){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}},tt(this.options,this.defaultOptions),this.timestep=.5,this.layoutFailed=!1,this.bindEventListeners()}bindEventListeners(){this.body.emitter.on("initPhysics",()=>{this.initPhysics()}),this.body.emitter.on("_layoutFailed",()=>{this.layoutFailed=!0}),this.body.emitter.on("resetPhysics",()=>{this.stopSimulation(),this.ready=!1}),this.body.emitter.on("disablePhysics",()=>{this.physicsEnabled=!1,this.stopSimulation()}),this.body.emitter.on("restorePhysics",()=>{this.setOptions(this.options),this.ready===!0&&this.startSimulation()}),this.body.emitter.on("startSimulation",()=>{this.ready===!0&&this.startSimulation()}),this.body.emitter.on("stopSimulation",()=>{this.stopSimulation()}),this.body.emitter.on("destroy",()=>{this.stopSimulation(!1),this.body.emitter.off()}),this.body.emitter.on("_dataChanged",()=>{this.updatePhysicsData()})}setOptions(e){if(e!==void 0)if(e===!1)this.options.enabled=!1,this.physicsEnabled=!1,this.stopSimulation();else if(e===!0)this.options.enabled=!0,this.physicsEnabled=!0,this.startSimulation();else{this.physicsEnabled=!0,zA(["stabilization"],this.options,e),dr(this.options,e,"stabilization"),e.enabled===void 0&&(this.options.enabled=!0),this.options.enabled===!1&&(this.physicsEnabled=!1,this.stopSimulation());const t=this.options.wind;t&&((typeof t.x!="number"||hO(t.x))&&(t.x=0),(typeof t.y!="number"||hO(t.y))&&(t.y=0)),this.timestep=this.options.timestep}this.init()}init(){let e;this.options.solver==="forceAtlas2Based"?(e=this.options.forceAtlas2Based,this.nodesSolver=new aCe(this.body,this.physicsBody,e),this.edgesSolver=new mf(this.body,this.physicsBody,e),this.gravitySolver=new gCe(this.body,this.physicsBody,e)):this.options.solver==="repulsion"?(e=this.options.repulsion,this.nodesSolver=new nCe(this.body,this.physicsBody,e),this.edgesSolver=new mf(this.body,this.physicsBody,e),this.gravitySolver=new OA(this.body,this.physicsBody,e)):this.options.solver==="hierarchicalRepulsion"?(e=this.options.hierarchicalRepulsion,this.nodesSolver=new oCe(this.body,this.physicsBody,e),this.edgesSolver=new sCe(this.body,this.physicsBody,e),this.gravitySolver=new OA(this.body,this.physicsBody,e)):(e=this.options.barnesHut,this.nodesSolver=new f7(this.body,this.physicsBody,e),this.edgesSolver=new mf(this.body,this.physicsBody,e),this.gravitySolver=new OA(this.body,this.physicsBody,e)),this.modelOptions=e}initPhysics(){this.physicsEnabled===!0&&this.options.enabled===!0?this.options.stabilization.enabled===!0?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"))}startSimulation(){if(this.physicsEnabled===!0&&this.options.enabled===!0){if(this.stabilized=!1,this.adaptiveTimestep=!1,this.body.emitter.emit("_resizeNodes"),this.viewFunction===void 0){var e;this.viewFunction=z(e=this.simulationStep).call(e,this),this.body.emitter.on("initRedraw",this.viewFunction),this.body.emitter.emit("_startRendering")}}else this.body.emitter.emit("_redraw")}stopSimulation(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;this.stabilized=!0,e===!0&&this._emitStabilized(),this.viewFunction!==void 0&&(this.body.emitter.off("initRedraw",this.viewFunction),this.viewFunction=void 0,e===!0&&this.body.emitter.emit("_stopRendering"))}simulationStep(){const e=MA();this.physicsTick(),(MA()-e<.4*this.simulationInterval||this.runDoubleSpeed===!0)&&this.stabilized===!1&&(this.physicsTick(),this.runDoubleSpeed=!0),this.stabilized===!0&&this.stopSimulation()}_emitStabilized(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.stabilizationIterations;(this.stabilizationIterations>1||this.startedStabilization===!0)&&ri(()=>{this.body.emitter.emit("stabilized",{iterations:e}),this.startedStabilization=!1,this.stabilizationIterations=0},0)}physicsStep(){this.gravitySolver.solve(),this.nodesSolver.solve(),this.edgesSolver.solve(),this.moveNodes()}adjustTimeStep(){this._evaluateStepQuality()===!0?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))}physicsTick(){this._startStabilizing(),this.stabilized!==!0&&(this.adaptiveTimestep===!0&&this.adaptiveTimestepEnabled===!0?(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):(this.timestep=this.options.timestep,this.physicsStep()),this.stabilized===!0&&this.revert(),this.stabilizationIterations++)}updatePhysicsData(){this.physicsBody.forces={},this.physicsBody.physicsNodeIndices=[],this.physicsBody.physicsEdgeIndices=[];const e=this.body.nodes,t=this.body.edges;for(const r in e)Object.prototype.hasOwnProperty.call(e,r)&&e[r].options.physics===!0&&this.physicsBody.physicsNodeIndices.push(e[r].id);for(const r in t)Object.prototype.hasOwnProperty.call(t,r)&&t[r].options.physics===!0&&this.physicsBody.physicsEdgeIndices.push(t[r].id);for(let r=0;r<this.physicsBody.physicsNodeIndices.length;r++){const i=this.physicsBody.physicsNodeIndices[r];this.physicsBody.forces[i]={x:0,y:0},this.physicsBody.velocities[i]===void 0&&(this.physicsBody.velocities[i]={x:0,y:0})}for(const r in this.physicsBody.velocities)e[r]===void 0&&delete this.physicsBody.velocities[r]}revert(){const e=Be(this.previousStates),t=this.body.nodes,r=this.physicsBody.velocities;this.referenceState={};for(let i=0;i<e.length;i++){const o=e[i];t[o]!==void 0?t[o].options.physics===!0&&(this.referenceState[o]={positions:{x:t[o].x,y:t[o].y}},r[o].x=this.previousStates[o].vx,r[o].y=this.previousStates[o].vy,t[o].x=this.previousStates[o].x,t[o].y=this.previousStates[o].y):delete this.previousStates[o]}}_evaluateStepQuality(){let e,t,r;const i=this.body.nodes,o=this.referenceState,s=.3;for(const a in this.referenceState)if(Object.prototype.hasOwnProperty.call(this.referenceState,a)&&i[a]!==void 0&&(e=i[a].x-o[a].positions.x,t=i[a].y-o[a].positions.y,r=Math.sqrt(Math.pow(e,2)+Math.pow(t,2)),r>s))return!1;return!0}moveNodes(){const e=this.physicsBody.physicsNodeIndices;let t=0,r=0;const i=5;for(let o=0;o<e.length;o++){const s=e[o],a=this._performStep(s);t=Math.max(t,a),r+=a}this.adaptiveTimestepEnabled=r/e.length<i,this.stabilized=t<this.options.minVelocity}calculateComponentVelocity(e,t,r){const i=this.modelOptions.damping*e,o=(t-i)/r;e+=o*this.timestep;const s=this.options.maxVelocity||1e9;return Math.abs(e)>s&&(e=e>0?s:-s),e}_performStep(e){const t=this.body.nodes[e],r=this.physicsBody.forces[e];this.options.wind&&(r.x+=this.options.wind.x,r.y+=this.options.wind.y);const i=this.physicsBody.velocities[e];return this.previousStates[e]={x:t.x,y:t.y,vx:i.x,vy:i.y},t.options.fixed.x===!1?(i.x=this.calculateComponentVelocity(i.x,r.x,t.options.mass),t.x+=i.x*this.timestep):(r.x=0,i.x=0),t.options.fixed.y===!1?(i.y=this.calculateComponentVelocity(i.y,r.y,t.options.mass),t.y+=i.y*this.timestep):(r.y=0,i.y=0),Math.sqrt(Math.pow(i.x,2)+Math.pow(i.y,2))}_freezeNodes(){const e=this.body.nodes;for(const t in e)if(Object.prototype.hasOwnProperty.call(e,t)&&e[t].x&&e[t].y){const r=e[t].options.fixed;this.freezeCache[t]={x:r.x,y:r.y},r.x=!0,r.y=!0}}_restoreFrozenNodes(){const e=this.body.nodes;for(const t in e)Object.prototype.hasOwnProperty.call(e,t)&&this.freezeCache[t]!==void 0&&(e[t].options.fixed.x=this.freezeCache[t].x,e[t].options.fixed.y=this.freezeCache[t].y);this.freezeCache={}}stabilize(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.options.stabilization.iterations;if(typeof e!="number"&&(e=this.options.stabilization.iterations,console.error("The stabilize method needs a numeric amount of iterations. Switching to default: ",e)),this.physicsBody.physicsNodeIndices.length===0){this.ready=!0;return}this.adaptiveTimestep=this.options.adaptiveTimestep,this.body.emitter.emit("_resizeNodes"),this.stopSimulation(),this.stabilized=!1,this.body.emitter.emit("_blockRedraw"),this.targetIterations=e,this.options.stabilization.onlyDynamicEdges===!0&&this._freezeNodes(),this.stabilizationIterations=0,ri(()=>this._stabilizationBatch(),0)}_startStabilizing(){return this.startedStabilization===!0?!1:(this.body.emitter.emit("startStabilizing"),this.startedStabilization=!0,!0)}_stabilizationBatch(){const e=()=>this.stabilized===!1&&this.stabilizationIterations<this.targetIterations,t=()=>{this.body.emitter.emit("stabilizationProgress",{iterations:this.stabilizationIterations,total:this.targetIterations})};this._startStabilizing()&&t();let r=0;for(;e()&&r<this.options.stabilization.updateInterval;)this.physicsTick(),r++;if(t(),e()){var i;ri(z(i=this._stabilizationBatch).call(i,this),0)}else this._finalizeStabilization()}_finalizeStabilization(){this.body.emitter.emit("_allowRedraw"),this.options.stabilization.fit===!0&&this.body.emitter.emit("fit"),this.options.stabilization.onlyDynamicEdges===!0&&this._restoreFrozenNodes(),this.body.emitter.emit("stabilizationIterationsDone"),this.body.emitter.emit("_requestRedraw"),this.stabilized===!0?this._emitStabilized():this.startSimulation(),this.ready=!0}_drawForces(e){for(let t=0;t<this.physicsBody.physicsNodeIndices.length;t++){const r=this.physicsBody.physicsNodeIndices[t],i=this.body.nodes[r],o=this.physicsBody.forces[r],s=20,a=.03,g=Math.sqrt(Math.pow(o.x,2)+Math.pow(o.x,2)),A=Math.min(Math.max(5,g),15),I=3*A,C=lO((180-Math.min(1,Math.max(0,a*g))*180)/360,1,1),l={x:i.x+s*o.x,y:i.y+s*o.y};e.lineWidth=A,e.strokeStyle=C,e.beginPath(),e.moveTo(i.x,i.y),e.lineTo(l.x,l.y),e.stroke();const d=Math.atan2(o.y,o.x);e.fillStyle=C,u7.draw(e,{type:"arrow",point:l,angle:d,length:I}),cg(e).call(e)}}},Lt=class{constructor(){}static getRange(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=1e9,i=-1e9,o=1e9,s=-1e9,a;if(t.length>0)for(let g=0;g<t.length;g++)a=e[t[g]],o>a.shape.boundingBox.left&&(o=a.shape.boundingBox.left),s<a.shape.boundingBox.right&&(s=a.shape.boundingBox.right),r>a.shape.boundingBox.top&&(r=a.shape.boundingBox.top),i<a.shape.boundingBox.bottom&&(i=a.shape.boundingBox.bottom);return o===1e9&&s===-1e9&&r===1e9&&i===-1e9&&(r=0,i=0,o=0,s=0),{minX:o,maxX:s,minY:r,maxY:i}}static getRangeCore(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=1e9,i=-1e9,o=1e9,s=-1e9,a;if(t.length>0)for(let g=0;g<t.length;g++)a=e[t[g]],o>a.x&&(o=a.x),s<a.x&&(s=a.x),r>a.y&&(r=a.y),i<a.y&&(i=a.y);return o===1e9&&s===-1e9&&r===1e9&&i===-1e9&&(r=0,i=0,o=0,s=0),{minX:o,maxX:s,minY:r,maxY:i}}static findCenter(e){return{x:.5*(e.maxX+e.minX),y:.5*(e.maxY+e.minY)}}static cloneOptions(e,t){const r={};return t===void 0||t==="node"?(Me(r,e.options,!0),r.x=e.x,r.y=e.y,r.amountOfConnections=e.edges.length):Me(r,e.options,!0),r}},ICe=class extends sr{constructor(e,t,r,i,o,s){super(e,t,r,i,o,s),this.isCluster=!0,this.containedNodes={},this.containedEdges={}}_openChildCluster(e){const t=this.body.nodes[e];if(this.containedNodes[e]===void 0)throw new Error("node with id: "+e+" not in current cluster");if(!t.isCluster)throw new Error("node with id: "+e+" is not a cluster");delete this.containedNodes[e],de(t.edges,r=>{delete this.containedEdges[r.id]}),de(t.containedNodes,(r,i)=>{this.containedNodes[i]=r}),t.containedNodes={},de(t.containedEdges,(r,i)=>{this.containedEdges[i]=r}),t.containedEdges={},de(t.edges,r=>{de(this.edges,i=>{var o,s;const a=_e(o=i.clusteringEdgeReplacingIds).call(o,r.id);a!==-1&&(de(r.clusteringEdgeReplacingIds,g=>{i.clusteringEdgeReplacingIds.push(g),this.body.edges[g].edgeReplacedById=i.id}),ti(s=i.clusteringEdgeReplacingIds).call(s,a,1))})}),t.edges=[]}},CCe=class{constructor(e){this.body=e,this.clusteredNodes={},this.clusteredEdges={},this.options={},this.defaultOptions={},tt(this.options,this.defaultOptions),this.body.emitter.on("_resetData",()=>{this.clusteredNodes={},this.clusteredEdges={}})}clusterByHubsize(e,t){e===void 0?e=this._getHubSize():typeof e=="object"&&(t=this._checkOptions(e),e=this._getHubSize());const r=[];for(let i=0;i<this.body.nodeIndices.length;i++){const o=this.body.nodes[this.body.nodeIndices[i]];o.edges.length>=e&&r.push(o.id)}for(let i=0;i<r.length;i++)this.clusterByConnection(r[i],t,!0);this.body.emitter.emit("_dataChanged")}cluster(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(e.joinCondition===void 0)throw new Error("Cannot call clusterByNodeData without a joinCondition function in the options.");e=this._checkOptions(e);const r={},i={};de(this.body.nodes,(o,s)=>{o.options&&e.joinCondition(o.options)===!0&&(r[s]=o,de(o.edges,a=>{this.clusteredEdges[a.id]===void 0&&(i[a.id]=a)}))}),this._cluster(r,i,e,t)}clusterByEdgeCount(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;t=this._checkOptions(t);const i=[],o={};let s,a,g;for(let A=0;A<this.body.nodeIndices.length;A++){const I={},C={},l=this.body.nodeIndices[A],d=this.body.nodes[l];if(o[l]===void 0){g=0,a=[];for(let u=0;u<d.edges.length;u++)s=d.edges[u],this.clusteredEdges[s.id]===void 0&&(s.toId!==s.fromId&&g++,a.push(s));if(g===e){const u=function(v){if(t.joinCondition===void 0||t.joinCondition===null)return!0;const f=Lt.cloneOptions(v);return t.joinCondition(f)};let h=!0;for(let v=0;v<a.length;v++){s=a[v];const f=this._getConnectedId(s,l);if(u(d))C[s.id]=s,I[l]=d,I[f]=this.body.nodes[f],o[l]=!0;else{h=!1;break}}if(Be(I).length>0&&Be(C).length>0&&h===!0){const f=function(){for(let c=0;c<i.length;++c)for(const b in I)if(i[c].nodes[b]!==void 0)return i[c]}();if(f!==void 0){for(const c in I)f.nodes[c]===void 0&&(f.nodes[c]=I[c]);for(const c in C)f.edges[c]===void 0&&(f.edges[c]=C[c])}else i.push({nodes:I,edges:C})}}}}for(let A=0;A<i.length;A++)this._cluster(i[A].nodes,i[A].edges,t,!1);r===!0&&this.body.emitter.emit("_dataChanged")}clusterOutliers(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;this.clusterByEdgeCount(1,e,t)}clusterBridges(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;this.clusterByEdgeCount(2,e,t)}clusterByConnection(e,t){var r;let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(e===void 0)throw new Error("No nodeId supplied to clusterByConnection!");if(this.body.nodes[e]===void 0)throw new Error("The nodeId given to clusterByConnection does not exist!");const o=this.body.nodes[e];t=this._checkOptions(t,o),t.clusterNodeProperties.x===void 0&&(t.clusterNodeProperties.x=o.x),t.clusterNodeProperties.y===void 0&&(t.clusterNodeProperties.y=o.y),t.clusterNodeProperties.fixed===void 0&&(t.clusterNodeProperties.fixed={},t.clusterNodeProperties.fixed.x=o.options.fixed.x,t.clusterNodeProperties.fixed.y=o.options.fixed.y);const s={},a={},g=o.id,A=Lt.cloneOptions(o);s[g]=o;for(let C=0;C<o.edges.length;C++){const l=o.edges[C];if(this.clusteredEdges[l.id]===void 0){const d=this._getConnectedId(l,g);if(this.clusteredNodes[d]===void 0)if(d!==g)if(t.joinCondition===void 0)a[l.id]=l,s[d]=this.body.nodes[d];else{const u=Lt.cloneOptions(this.body.nodes[d]);t.joinCondition(A,u)===!0&&(a[l.id]=l,s[d]=this.body.nodes[d])}else a[l.id]=l}}const I=Mt(r=Be(s)).call(r,function(C){return s[C].id});for(const C in s){if(!Object.prototype.hasOwnProperty.call(s,C))continue;const l=s[C];for(let d=0;d<l.edges.length;d++){const u=l.edges[d];_e(I).call(I,this._getConnectedId(u,l.id))>-1&&(a[u.id]=u)}}this._cluster(s,a,t,i)}_createClusterEdges(e,t,r,i){let o,s,a,g,A,I;const C=Be(e),l=[];for(let h=0;h<C.length;h++){s=C[h],a=e[s];for(let v=0;v<a.edges.length;v++)o=a.edges[v],this.clusteredEdges[o.id]===void 0&&(o.toId==o.fromId?t[o.id]=o:o.toId==s?(g=r.id,A=o.fromId,I=A):(g=o.toId,A=r.id,I=g),e[I]===void 0&&l.push({edge:o,fromId:A,toId:g}))}const d=[],u=function(h){for(let v=0;v<d.length;v++){const f=d[v],c=h.fromId===f.fromId&&h.toId===f.toId,b=h.fromId===f.toId&&h.toId===f.fromId;if(c||b)return f}return null};for(let h=0;h<l.length;h++){const v=l[h],f=v.edge;let c=u(v);c===null?(c=this._createClusteredEdge(v.fromId,v.toId,f,i),d.push(c)):c.clusteringEdgeReplacingIds.push(f.id),this.body.edges[f.id].edgeReplacedById=c.id,this._backupEdgeOptions(f),f.setOptions({physics:!1})}}_checkOptions(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return e.clusterEdgeProperties===void 0&&(e.clusterEdgeProperties={}),e.clusterNodeProperties===void 0&&(e.clusterNodeProperties={}),e}_cluster(e,t,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;const o=[];for(const I in e)Object.prototype.hasOwnProperty.call(e,I)&&this.clusteredNodes[I]!==void 0&&o.push(I);for(let I=0;I<o.length;++I)delete e[o[I]];if(Be(e).length==0||Be(e).length==1&&r.clusterNodeProperties.allowSingleNodeCluster!=!0)return;let s=Me({},r.clusterNodeProperties);if(r.processProperties!==void 0){const I=[];for(const l in e)if(Object.prototype.hasOwnProperty.call(e,l)){const d=Lt.cloneOptions(e[l]);I.push(d)}const C=[];for(const l in t)if(Object.prototype.hasOwnProperty.call(t,l)&&l.substr(0,12)!=="clusterEdge:"){const d=Lt.cloneOptions(t[l],"edge");C.push(d)}if(s=r.processProperties(s,I,C),!s)throw new Error("The processProperties function does not return properties!")}s.id===void 0&&(s.id="cluster:"+is());const a=s.id;s.label===void 0&&(s.label="cluster");let g;s.x===void 0&&(g=this._getClusterPosition(e),s.x=g.x),s.y===void 0&&(g===void 0&&(g=this._getClusterPosition(e)),s.y=g.y),s.id=a;const A=this.body.functions.createNode(s,ICe);A.containedNodes=e,A.containedEdges=t,A.clusterEdgeProperties=r.clusterEdgeProperties,this.body.nodes[s.id]=A,this._clusterEdges(e,t,s,r.clusterEdgeProperties),s.id=void 0,i===!0&&this.body.emitter.emit("_dataChanged")}_backupEdgeOptions(e){this.clusteredEdges[e.id]===void 0&&(this.clusteredEdges[e.id]={physics:e.options.physics})}_restoreEdge(e){const t=this.clusteredEdges[e.id];t!==void 0&&(e.setOptions({physics:t.physics}),delete this.clusteredEdges[e.id])}isCluster(e){return this.body.nodes[e]!==void 0?this.body.nodes[e].isCluster===!0:(console.error("Node does not exist."),!1)}_getClusterPosition(e){const t=Be(e);let r=e[t[0]].x,i=e[t[0]].x,o=e[t[0]].y,s=e[t[0]].y,a;for(let g=1;g<t.length;g++)a=e[t[g]],r=a.x<r?a.x:r,i=a.x>i?a.x:i,o=a.y<o?a.y:o,s=a.y>s?a.y:s;return{x:.5*(r+i),y:.5*(o+s)}}openCluster(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(e===void 0)throw new Error("No clusterNodeId supplied to openCluster.");const i=this.body.nodes[e];if(i===void 0)throw new Error("The clusterNodeId supplied to openCluster does not exist.");if(i.isCluster!==!0||i.containedNodes===void 0||i.containedEdges===void 0)throw new Error("The node:"+e+" is not a valid cluster.");const o=this.findNode(e),s=_e(o).call(o,e)-1;if(s>=0){const I=o[s];this.body.nodes[I]._openChildCluster(e),delete this.body.nodes[e],r===!0&&this.body.emitter.emit("_dataChanged");return}const a=i.containedNodes,g=i.containedEdges;if(t!==void 0&&t.releaseFunction!==void 0&&typeof t.releaseFunction=="function"){const I={},C={x:i.x,y:i.y};for(const d in a)if(Object.prototype.hasOwnProperty.call(a,d)){const u=this.body.nodes[d];I[d]={x:u.x,y:u.y}}const l=t.releaseFunction(C,I);for(const d in a)if(Object.prototype.hasOwnProperty.call(a,d)){const u=this.body.nodes[d];l[d]!==void 0&&(u.x=l[d].x===void 0?i.x:l[d].x,u.y=l[d].y===void 0?i.y:l[d].y)}}else de(a,function(I){I.options.fixed.x===!1&&(I.x=i.x),I.options.fixed.y===!1&&(I.y=i.y)});for(const I in a)if(Object.prototype.hasOwnProperty.call(a,I)){const C=this.body.nodes[I];C.vx=i.vx,C.vy=i.vy,C.setOptions({physics:!0}),delete this.clusteredNodes[I]}const A=[];for(let I=0;I<i.edges.length;I++)A.push(i.edges[I]);for(let I=0;I<A.length;I++){const C=A[I],l=this._getConnectedId(C,e),d=this.clusteredNodes[l];for(let u=0;u<C.clusteringEdgeReplacingIds.length;u++){const h=C.clusteringEdgeReplacingIds[u],v=this.body.edges[h];if(v!==void 0)if(d!==void 0){const f=this.body.nodes[d.clusterId];f.containedEdges[v.id]=v,delete g[v.id];let c=v.fromId,b=v.toId;v.toId==l?b=d.clusterId:c=d.clusterId,this._createClusteredEdge(c,b,v,f.clusterEdgeProperties,{hidden:!1,physics:!0})}else this._restoreEdge(v)}C.remove()}for(const I in g)Object.prototype.hasOwnProperty.call(g,I)&&this._restoreEdge(g[I]);delete this.body.nodes[e],r===!0&&this.body.emitter.emit("_dataChanged")}getNodesInCluster(e){const t=[];if(this.isCluster(e)===!0){const r=this.body.nodes[e].containedNodes;for(const i in r)Object.prototype.hasOwnProperty.call(r,i)&&t.push(this.body.nodes[i].id)}return t}findNode(e){const t=[];let i=0,o;for(;this.clusteredNodes[e]!==void 0&&i<100;){if(o=this.body.nodes[e],o===void 0)return[];t.push(o.id),e=this.clusteredNodes[e].clusterId,i++}return o=this.body.nodes[e],o===void 0?[]:(t.push(o.id),zn(t).call(t),t)}updateClusteredNode(e,t){if(e===void 0)throw new Error("No clusteredNodeId supplied to updateClusteredNode.");if(t===void 0)throw new Error("No newOptions supplied to updateClusteredNode.");if(this.body.nodes[e]===void 0)throw new Error("The clusteredNodeId supplied to updateClusteredNode does not exist.");this.body.nodes[e].setOptions(t),this.body.emitter.emit("_dataChanged")}updateEdge(e,t){if(e===void 0)throw new Error("No startEdgeId supplied to updateEdge.");if(t===void 0)throw new Error("No newOptions supplied to updateEdge.");if(this.body.edges[e]===void 0)throw new Error("The startEdgeId supplied to updateEdge does not exist.");const r=this.getClusteredEdges(e);for(let i=0;i<r.length;i++)this.body.edges[r[i]].setOptions(t);this.body.emitter.emit("_dataChanged")}getClusteredEdges(e){const t=[];let i=0;for(;e!==void 0&&this.body.edges[e]!==void 0&&i<100;)t.push(this.body.edges[e].id),e=this.body.edges[e].edgeReplacedById,i++;return zn(t).call(t),t}getBaseEdge(e){return this.getBaseEdges(e)[0]}getBaseEdges(e){const t=[e],r=[],i=[],o=100;let s=0;for(;t.length>0&&s<o;){const a=t.pop();if(a===void 0)continue;const g=this.body.edges[a];if(g===void 0)continue;s++;const A=g.clusteringEdgeReplacingIds;if(A===void 0)i.push(a);else for(let I=0;I<A.length;++I){const C=A[I];_e(t).call(t,A)!==-1||_e(r).call(r,A)!==-1||t.push(C)}r.push(a)}return i}_getConnectedId(e,t){return e.toId!=t?e.toId:(e.fromId!=t,e.fromId)}_getHubSize(){let e=0,t=0,r=0,i=0;for(let g=0;g<this.body.nodeIndices.length;g++){const A=this.body.nodes[this.body.nodeIndices[g]];A.edges.length>i&&(i=A.edges.length),e+=A.edges.length,t+=Math.pow(A.edges.length,2),r+=1}e=e/r,t=t/r;const o=t-Math.pow(e,2),s=Math.sqrt(o);let a=Math.floor(e+2*s);return a>i&&(a=i),a}_createClusteredEdge(e,t,r,i,o){const s=Lt.cloneOptions(r,"edge");Me(s,i),s.from=e,s.to=t,s.id="clusterEdge:"+is(),o!==void 0&&Me(s,o);const a=this.body.functions.createEdge(s);return a.clusteringEdgeReplacingIds=[r.id],a.connect(),this.body.edges[a.id]=a,a}_clusterEdges(e,t,r,i){if(t instanceof ns){const o=t,s={};s[o.id]=o,t=s}if(e instanceof sr){const o=e,s={};s[o.id]=o,e=s}if(r==null)throw new Error("_clusterEdges: parameter clusterNode required");i===void 0&&(i=r.clusterEdgeProperties),this._createClusterEdges(e,t,r,i);for(const o in t)if(Object.prototype.hasOwnProperty.call(t,o)&&this.body.edges[o]!==void 0){const s=this.body.edges[o];this._backupEdgeOptions(s),s.setOptions({physics:!1})}for(const o in e)Object.prototype.hasOwnProperty.call(e,o)&&(this.clusteredNodes[o]={clusterId:r.id,node:this.body.nodes[o]},this.body.nodes[o].setOptions({physics:!1}))}_getClusterNodeForNode(e){if(e===void 0)return;const t=this.clusteredNodes[e];if(t===void 0)return;const r=t.clusterId;if(r!==void 0)return this.body.nodes[r]}_filter(e,t){const r=[];return de(e,i=>{t(i)&&r.push(i)}),r}_updateState(){let e;const t=[],r={},i=g=>{de(this.body.nodes,A=>{A.isCluster===!0&&g(A)})};for(e in this.clusteredNodes){if(!Object.prototype.hasOwnProperty.call(this.clusteredNodes,e))continue;this.body.nodes[e]===void 0&&t.push(e)}i(function(g){for(let A=0;A<t.length;A++)delete g.containedNodes[t[A]]});for(let g=0;g<t.length;g++)delete this.clusteredNodes[t[g]];de(this.clusteredEdges,g=>{const A=this.body.edges[g];(A===void 0||!A.endPointsValid())&&(r[g]=g)}),i(function(g){de(g.containedEdges,(A,I)=>{!A.endPointsValid()&&!r[I]&&(r[I]=I)})}),de(this.body.edges,(g,A)=>{let I=!0;const C=g.clusteringEdgeReplacingIds;if(C!==void 0){let l=0;de(C,d=>{const u=this.body.edges[d];u!==void 0&&u.endPointsValid()&&(l+=1)}),I=l>0}(!g.endPointsValid()||!I)&&(r[A]=A)}),i(g=>{de(r,A=>{delete g.containedEdges[A],de(g.edges,(I,C)=>{if(I.id===A){g.edges[C]=null;return}I.clusteringEdgeReplacingIds=this._filter(I.clusteringEdgeReplacingIds,function(l){return!r[l]})}),g.edges=this._filter(g.edges,function(I){return I!==null})})}),de(r,g=>{delete this.clusteredEdges[g]}),de(r,g=>{delete this.body.edges[g]});const o=Be(this.body.edges);de(o,g=>{const A=this.body.edges[g],I=this._isClusteredNode(A.fromId)||this._isClusteredNode(A.toId);if(I!==this._isClusteredEdge(A.id))if(I){const C=this._getClusterNodeForNode(A.fromId);C!==void 0&&this._clusterEdges(this.body.nodes[A.fromId],A,C);const l=this._getClusterNodeForNode(A.toId);l!==void 0&&this._clusterEdges(this.body.nodes[A.toId],A,l)}else delete this._clusterEdges[g],this._restoreEdge(A)});let s=!1,a=!0;for(;a;){const g=[];i(function(A){const I=Be(A.containedNodes).length,C=A.options.allowSingleNodeCluster===!0;(C&&I<1||!C&&I<2)&&g.push(A.id)});for(let A=0;A<g.length;++A)this.openCluster(g[A],{},!1);a=g.length>0,s=s||a}s&&this._updateState()}_isClusteredNode(e){return this.clusteredNodes[e]!==void 0}_isClusteredEdge(e){return this.clusteredEdges[e]!==void 0}},lCe=class{constructor(e,t){this.body=e,this.canvas=t,this.redrawRequested=!1,this.requestAnimationFrameRequestId=void 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},tt(this.options,this.defaultOptions),this.bindEventListeners()}bindEventListeners(){var e;this.body.emitter.on("dragStart",()=>{this.dragging=!0}),this.body.emitter.on("dragEnd",()=>{this.dragging=!1}),this.body.emitter.on("zoom",()=>{this.zooming=!0,window.clearTimeout(this.zoomTimeoutId),this.zoomTimeoutId=ri(()=>{var t;this.zooming=!1,z(t=this._requestRedraw).call(t,this)()},250)}),this.body.emitter.on("_resizeNodes",()=>{this._resizeNodes()}),this.body.emitter.on("_redraw",()=>{this.renderingActive===!1&&this._redraw()}),this.body.emitter.on("_blockRedraw",()=>{this.allowRedraw=!1}),this.body.emitter.on("_allowRedraw",()=>{this.allowRedraw=!0,this.redrawRequested=!1}),this.body.emitter.on("_requestRedraw",z(e=this._requestRedraw).call(e,this)),this.body.emitter.on("_startRendering",()=>{this.renderRequests+=1,this.renderingActive=!0,this._startRendering()}),this.body.emitter.on("_stopRendering",()=>{this.renderRequests-=1,this.renderingActive=this.renderRequests>0,this.requestAnimationFrameRequestId=void 0}),this.body.emitter.on("destroy",()=>{this.renderRequests=0,this.allowRedraw=!1,this.renderingActive=!1,window.cancelAnimationFrame(this.requestAnimationFrameRequestId),this.body.emitter.off()})}setOptions(e){e!==void 0&&zs(["hideEdgesOnDrag","hideEdgesOnZoom","hideNodesOnDrag"],this.options,e)}_startRendering(){if(this.renderingActive===!0&&this.requestAnimationFrameRequestId===void 0){var e;this.requestAnimationFrameRequestId=window.requestAnimationFrame(z(e=this._renderStep).call(e,this),this.simulationInterval)}}_renderStep(){this.renderingActive===!0&&(this.requestAnimationFrameRequestId=void 0,this._startRendering(),this._redraw())}redraw(){this.body.emitter.emit("setSize"),this._redraw()}_requestRedraw(){this.redrawRequested!==!0&&this.renderingActive===!1&&this.allowRedraw===!0&&(this.redrawRequested=!0,window.requestAnimationFrame(()=>{this._redraw(!1)}))}_redraw(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;if(this.allowRedraw===!0){this.body.emitter.emit("initRedraw"),this.redrawRequested=!1;const t={drawExternalLabels:null};(this.canvas.frame.canvas.width===0||this.canvas.frame.canvas.height===0)&&this.canvas.setSize(),this.canvas.setTransform();const r=this.canvas.getContext(),i=this.canvas.frame.canvas.clientWidth,o=this.canvas.frame.canvas.clientHeight;if(r.clearRect(0,0,i,o),this.canvas.frame.clientWidth===0)return;if(r.save(),r.translate(this.body.view.translation.x,this.body.view.translation.y),r.scale(this.body.view.scale,this.body.view.scale),r.beginPath(),this.body.emitter.emit("beforeDrawing",r),r.closePath(),e===!1&&(this.dragging===!1||this.dragging===!0&&this.options.hideEdgesOnDrag===!1)&&(this.zooming===!1||this.zooming===!0&&this.options.hideEdgesOnZoom===!1)&&this._drawEdges(r),this.dragging===!1||this.dragging===!0&&this.options.hideNodesOnDrag===!1){const{drawExternalLabels:s}=this._drawNodes(r,e);t.drawExternalLabels=s}e===!1&&(this.dragging===!1||this.dragging===!0&&this.options.hideEdgesOnDrag===!1)&&(this.zooming===!1||this.zooming===!0&&this.options.hideEdgesOnZoom===!1)&&this._drawArrows(r),t.drawExternalLabels!=null&&t.drawExternalLabels(),e===!1&&this._drawSelectionBox(r),r.beginPath(),this.body.emitter.emit("afterDrawing",r),r.closePath(),r.restore(),e===!0&&r.clearRect(0,0,i,o)}}_resizeNodes(){this.canvas.setTransform();const e=this.canvas.getContext();e.save(),e.translate(this.body.view.translation.x,this.body.view.translation.y),e.scale(this.body.view.scale,this.body.view.scale);const t=this.body.nodes;let r;for(const i in t)Object.prototype.hasOwnProperty.call(t,i)&&(r=t[i],r.resize(e),r.updateBoundingBox(e,r.selected));e.restore()}_drawNodes(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;const r=this.body.nodes,i=this.body.nodeIndices;let o;const s=[],a=[],g=20,A=this.canvas.DOMtoCanvas({x:-g,y:-g}),I=this.canvas.DOMtoCanvas({x:this.canvas.frame.canvas.clientWidth+g,y:this.canvas.frame.canvas.clientHeight+g}),C={top:A.y,left:A.x,bottom:I.y,right:I.x},l=[];for(let v=0;v<i.length;v++)if(o=r[i[v]],o.hover)a.push(i[v]);else if(o.isSelected())s.push(i[v]);else if(t===!0){const f=o.draw(e);f.drawExternalLabel!=null&&l.push(f.drawExternalLabel)}else if(o.isBoundingBoxOverlappingWith(C)===!0){const f=o.draw(e);f.drawExternalLabel!=null&&l.push(f.drawExternalLabel)}else o.updateBoundingBox(e,o.selected);let d;const u=s.length,h=a.length;for(d=0;d<u;d++){o=r[s[d]];const v=o.draw(e);v.drawExternalLabel!=null&&l.push(v.drawExternalLabel)}for(d=0;d<h;d++){o=r[a[d]];const v=o.draw(e);v.drawExternalLabel!=null&&l.push(v.drawExternalLabel)}return{drawExternalLabels:()=>{for(const v of l)v()}}}_drawEdges(e){const t=this.body.edges,r=this.body.edgeIndices;for(let i=0;i<r.length;i++){const o=t[r[i]];o.connected===!0&&o.draw(e)}}_drawArrows(e){const t=this.body.edges,r=this.body.edgeIndices;for(let i=0;i<r.length;i++){const o=t[r[i]];o.connected===!0&&o.drawArrows(e)}}_drawSelectionBox(e){if(this.body.selectionBox.show){e.beginPath();const t=this.body.selectionBox.position.end.x-this.body.selectionBox.position.start.x,r=this.body.selectionBox.position.end.y-this.body.selectionBox.position.start.y;e.rect(this.body.selectionBox.position.start.x,this.body.selectionBox.position.start.y,t,r),e.fillStyle="rgba(151, 194, 252, 0.2)",e.fillRect(this.body.selectionBox.position.start.x,this.body.selectionBox.position.start.y,t,r),e.strokeStyle="rgba(151, 194, 252, 1)",e.stroke()}else e.closePath()}};var yf,Bk;function dCe(){if(Bk)return yf;Bk=1,CQ();var n=Ee();return yf=n.setInterval,yf}var bf,zk;function uCe(){return zk||(zk=1,bf=dCe()),bf}var hCe=uCe(),cCe=ne(hCe);function WA(n,e){e.inputHandler=function(t){t.isFirst&&e(t)},n.on("hammer.input",e.inputHandler)}function p7(n,e){return e.inputHandler=function(t){t.isFinal&&e(t)},n.on("hammer.input",e.inputHandler)}let fCe=class{constructor(e){this.body=e,this.pixelRatio=1,this.cameraState={},this.initialized=!1,this.canvasViewCenter={},this._cleanupCallbacks=[],this.options={},this.defaultOptions={autoResize:!0,height:"100%",width:"100%"},tt(this.options,this.defaultOptions),this.bindEventListeners()}bindEventListeners(){var e;this.body.emitter.once("resize",t=>{t.width!==0&&(this.body.view.translation.x=t.width*.5),t.height!==0&&(this.body.view.translation.y=t.height*.5)}),this.body.emitter.on("setSize",z(e=this.setSize).call(e,this)),this.body.emitter.on("destroy",()=>{this.hammerFrame.destroy(),this.hammer.destroy(),this._cleanUp()})}setOptions(e){if(e!==void 0&&zs(["width","height","autoResize"],this.options,e),this._cleanUp(),this.options.autoResize===!0){var t;if(window.ResizeObserver){const i=new ResizeObserver(()=>{this.setSize()===!0&&this.body.emitter.emit("_requestRedraw")}),{frame:o}=this;i.observe(o),this._cleanupCallbacks.push(()=>{i.unobserve(o)})}else{const i=cCe(()=>{this.setSize()===!0&&this.body.emitter.emit("_requestRedraw")},1e3);this._cleanupCallbacks.push(()=>{clearInterval(i)})}const r=z(t=this._onResize).call(t,this);window.addEventListener("resize",r),this._cleanupCallbacks.push(()=>{window.removeEventListener("resize",r)})}}_cleanUp(){var e,t,r;be(e=zn(t=ti(r=this._cleanupCallbacks).call(r,0)).call(t)).call(e,i=>{try{i()}catch(o){console.error(o)}})}_onResize(){this.setSize(),this.body.emitter.emit("_redraw")}_getCameraState(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.pixelRatio;this.initialized===!0&&(this.cameraState.previousWidth=this.frame.canvas.width/e,this.cameraState.previousHeight=this.frame.canvas.height/e,this.cameraState.scale=this.body.view.scale,this.cameraState.position=this.DOMtoCanvas({x:.5*this.frame.canvas.width/e,y:.5*this.frame.canvas.height/e}))}_setCameraState(){if(this.cameraState.scale!==void 0&&this.frame.canvas.clientWidth!==0&&this.frame.canvas.clientHeight!==0&&this.pixelRatio!==0&&this.cameraState.previousWidth>0&&this.cameraState.previousHeight>0){const e=this.frame.canvas.width/this.pixelRatio/this.cameraState.previousWidth,t=this.frame.canvas.height/this.pixelRatio/this.cameraState.previousHeight;let r=this.cameraState.scale;e!=1&&t!=1?r=this.cameraState.scale*.5*(e+t):e!=1?r=this.cameraState.scale*e:t!=1&&(r=this.cameraState.scale*t),this.body.view.scale=r;const i=this.DOMtoCanvas({x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight}),o={x:i.x-this.cameraState.position.x,y:i.y-this.cameraState.position.y};this.body.view.translation.x+=o.x*this.body.view.scale,this.body.view.translation.y+=o.y*this.body.view.scale}}_prepareValue(e){if(typeof e=="number")return e+"px";if(typeof e=="string"){if(_e(e).call(e,"%")!==-1||_e(e).call(e,"px")!==-1)return e;if(_e(e).call(e,"%")===-1)return e+"px"}throw new Error("Could not use the value supplied for width or height:"+e)}_create(){for(;this.body.container.hasChildNodes();)this.body.container.removeChild(this.body.container.firstChild);if(this.frame=document.createElement("div"),this.frame.className="vis-network",this.frame.style.position="relative",this.frame.style.overflow="hidden",this.frame.tabIndex=0,this.frame.canvas=document.createElement("canvas"),this.frame.canvas.style.position="relative",this.frame.appendChild(this.frame.canvas),this.frame.canvas.getContext)this._setPixelRatio(),this.setTransform();else{const e=document.createElement("DIV");e.style.color="red",e.style.fontWeight="bold",e.style.padding="10px",e.innerText="Error: your browser does not support HTML canvas",this.frame.canvas.appendChild(e)}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()}_bindHammer(){this.hammer!==void 0&&this.hammer.destroy(),this.drag={},this.pinch={},this.hammer=new rs(this.frame.canvas),this.hammer.get("pinch").set({enable:!0}),this.hammer.get("pan").set({threshold:5,direction:rs.DIRECTION_ALL}),WA(this.hammer,e=>{this.body.eventListeners.onTouch(e)}),this.hammer.on("tap",e=>{this.body.eventListeners.onTap(e)}),this.hammer.on("doubletap",e=>{this.body.eventListeners.onDoubleTap(e)}),this.hammer.on("press",e=>{this.body.eventListeners.onHold(e)}),this.hammer.on("panstart",e=>{this.body.eventListeners.onDragStart(e)}),this.hammer.on("panmove",e=>{this.body.eventListeners.onDrag(e)}),this.hammer.on("panend",e=>{this.body.eventListeners.onDragEnd(e)}),this.hammer.on("pinch",e=>{this.body.eventListeners.onPinch(e)}),this.frame.canvas.addEventListener("wheel",e=>{this.body.eventListeners.onMouseWheel(e)}),this.frame.canvas.addEventListener("mousemove",e=>{this.body.eventListeners.onMouseMove(e)}),this.frame.canvas.addEventListener("contextmenu",e=>{this.body.eventListeners.onContext(e)}),this.hammerFrame=new rs(this.frame),p7(this.hammerFrame,e=>{this.body.eventListeners.onRelease(e)})}setSize(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.options.width,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.options.height;e=this._prepareValue(e),t=this._prepareValue(t);let r=!1;const i=this.frame.canvas.width,o=this.frame.canvas.height,s=this.pixelRatio;if(this._setPixelRatio(),e!=this.options.width||t!=this.options.height||this.frame.style.width!=e||this.frame.style.height!=t)this._getCameraState(s),this.frame.style.width=e,this.frame.style.height=t,this.frame.canvas.style.width="100%",this.frame.canvas.style.height="100%",this.frame.canvas.width=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),this.frame.canvas.height=Math.round(this.frame.canvas.clientHeight*this.pixelRatio),this.options.width=e,this.options.height=t,this.canvasViewCenter={x:.5*this.frame.clientWidth,y:.5*this.frame.clientHeight},r=!0;else{const a=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),g=Math.round(this.frame.canvas.clientHeight*this.pixelRatio);(this.frame.canvas.width!==a||this.frame.canvas.height!==g)&&this._getCameraState(s),this.frame.canvas.width!==a&&(this.frame.canvas.width=a,r=!0),this.frame.canvas.height!==g&&(this.frame.canvas.height=g,r=!0)}return r===!0&&(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(o/this.pixelRatio)}),this._setCameraState()),this.initialized=!0,r}getContext(){return this.frame.canvas.getContext("2d")}_determinePixelRatio(){const e=this.getContext();if(e===void 0)throw new Error("Could not get canvax context");let t=1;typeof window<"u"&&(t=window.devicePixelRatio||1);const r=e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1;return t/r}_setPixelRatio(){this.pixelRatio=this._determinePixelRatio()}setTransform(){const e=this.getContext();if(e===void 0)throw new Error("Could not get canvax context");e.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}_XconvertDOMtoCanvas(e){return(e-this.body.view.translation.x)/this.body.view.scale}_XconvertCanvasToDOM(e){return e*this.body.view.scale+this.body.view.translation.x}_YconvertDOMtoCanvas(e){return(e-this.body.view.translation.y)/this.body.view.scale}_YconvertCanvasToDOM(e){return e*this.body.view.scale+this.body.view.translation.y}canvasToDOM(e){return{x:this._XconvertCanvasToDOM(e.x),y:this._YconvertCanvasToDOM(e.y)}}DOMtoCanvas(e){return{x:this._XconvertDOMtoCanvas(e.x),y:this._YconvertDOMtoCanvas(e.y)}}};function pCe(n,e){const t=tt({nodes:e,minZoomLevel:Number.MIN_VALUE,maxZoomLevel:1},n??{});if(!we(t.nodes))throw new TypeError("Nodes has to be an array of ids.");if(t.nodes.length===0&&(t.nodes=e),!(typeof t.minZoomLevel=="number"&&t.minZoomLevel>0))throw new TypeError("Min zoom level has to be a number higher than zero.");if(!(typeof t.maxZoomLevel=="number"&&t.minZoomLevel<=t.maxZoomLevel))throw new TypeError("Max zoom level has to be a number higher than min zoom level.");return t}let vCe=class{constructor(e,t){var r,i;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",z(r=this.fit).call(r,this)),this.body.emitter.on("animationFinished",()=>{this.body.emitter.emit("_stopRendering")}),this.body.emitter.on("unlockNode",z(i=this.releaseNode).call(i,this))}setOptions(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.options=e}fit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;e=pCe(e,this.body.nodeIndices);const r=this.canvas.frame.canvas.clientWidth,i=this.canvas.frame.canvas.clientHeight;let o,s;if(r===0||i===0)s=1,o=Lt.getRange(this.body.nodes,e.nodes);else if(t===!0){let A=0;for(const l in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,l)&&this.body.nodes[l].predefinedPosition===!0&&(A+=1);if(A>.5*this.body.nodeIndices.length){this.fit(e,!1);return}o=Lt.getRange(this.body.nodes,e.nodes),s=12.662/(this.body.nodeIndices.length+7.4147)+.0964822;const C=Math.min(r/600,i/600);s*=C}else{this.body.emitter.emit("_resizeNodes"),o=Lt.getRange(this.body.nodes,e.nodes);const A=Math.abs(o.maxX-o.minX)*1.1,I=Math.abs(o.maxY-o.minY)*1.1,C=r/A,l=i/I;s=C<=l?C:l}s>e.maxZoomLevel?s=e.maxZoomLevel:s<e.minZoomLevel&&(s=e.minZoomLevel);const g={position:Lt.findCenter(o),scale:s,animation:e.animation};this.moveTo(g)}focus(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(this.body.nodes[e]!==void 0){const r={x:this.body.nodes[e].x,y:this.body.nodes[e].y};t.position=r,t.lockedOnNode=e,this.moveTo(t)}else console.error("Node: "+e+" cannot be found.")}moveTo(e){if(e===void 0){e={};return}if(e.offset!=null){if(e.offset.x!=null){if(e.offset.x=+e.offset.x,!Nn(e.offset.x))throw new TypeError('The option "offset.x" has to be a finite number.')}else e.offset.x=0;if(e.offset.y!=null){if(e.offset.y=+e.offset.y,!Nn(e.offset.y))throw new TypeError('The option "offset.y" has to be a finite number.')}else e.offset.x=0}else e.offset={x:0,y:0};if(e.position!=null){if(e.position.x!=null){if(e.position.x=+e.position.x,!Nn(e.position.x))throw new TypeError('The option "position.x" has to be a finite number.')}else e.position.x=0;if(e.position.y!=null){if(e.position.y=+e.position.y,!Nn(e.position.y))throw new TypeError('The option "position.y" has to be a finite number.')}else e.position.x=0}else e.position=this.getViewPosition();if(e.scale!=null){if(e.scale=+e.scale,!(e.scale>0))throw new TypeError('The option "scale" has to be a number greater than zero.')}else e.scale=this.body.view.scale;e.animation===void 0&&(e.animation={duration:0}),e.animation===!1&&(e.animation={duration:0}),e.animation===!0&&(e.animation={}),e.animation.duration===void 0&&(e.animation.duration=1e3),e.animation.easingFunction===void 0&&(e.animation.easingFunction="easeInOutQuad"),this.animateView(e)}animateView(e){if(e===void 0)return;this.animationEasingFunction=e.animation.easingFunction,this.releaseNode(),e.locked===!0&&(this.lockedOnNodeId=e.lockedOnNode,this.lockedOnNodeOffset=e.offset),this.easingTime!=0&&this._transitionRedraw(!0),this.sourceScale=this.body.view.scale,this.sourceTranslation=this.body.view.translation,this.targetScale=e.scale,this.body.view.scale=this.targetScale;const t=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),r={x:t.x-e.position.x,y:t.y-e.position.y};if(this.targetTranslation={x:this.sourceTranslation.x+r.x*this.targetScale+e.offset.x,y:this.sourceTranslation.y+r.y*this.targetScale+e.offset.y},e.animation.duration===0)if(this.lockedOnNodeId!=null){var i;this.viewFunction=z(i=this._lockedRedraw).call(i,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{var o;this.animationSpeed=1/(60*e.animation.duration*.001)||1/60,this.animationEasingFunction=e.animation.easingFunction,this.viewFunction=z(o=this._transitionRedraw).call(o,this),this.body.emitter.on("initRedraw",this.viewFunction),this.body.emitter.emit("_startRendering")}}_lockedRedraw(){const e={x:this.body.nodes[this.lockedOnNodeId].x,y:this.body.nodes[this.lockedOnNodeId].y},t=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),r={x:t.x-e.x,y:t.y-e.y},i=this.body.view.translation,o={x:i.x+r.x*this.body.view.scale+this.lockedOnNodeOffset.x,y:i.y+r.y*this.body.view.scale+this.lockedOnNodeOffset.y};this.body.view.translation=o}releaseNode(){this.lockedOnNodeId!==void 0&&this.viewFunction!==void 0&&(this.body.emitter.off("initRedraw",this.viewFunction),this.lockedOnNodeId=void 0,this.lockedOnNodeOffset=void 0)}_transitionRedraw(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;this.easingTime+=this.animationSpeed,this.easingTime=e===!0?1:this.easingTime;const t=yse[this.animationEasingFunction](this.easingTime);if(this.body.view.scale=this.sourceScale+(this.targetScale-this.sourceScale)*t,this.body.view.translation={x:this.sourceTranslation.x+(this.targetTranslation.x-this.sourceTranslation.x)*t,y:this.sourceTranslation.y+(this.targetTranslation.y-this.sourceTranslation.y)*t},this.easingTime>=1){if(this.body.emitter.off("initRedraw",this.viewFunction),this.easingTime=0,this.lockedOnNodeId!=null){var r;this.viewFunction=z(r=this._lockedRedraw).call(r,this),this.body.emitter.on("initRedraw",this.viewFunction)}this.body.emitter.emit("animationFinished")}}getScale(){return this.body.view.scale}getViewPosition(){return this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight})}};function jk(n){var e=n&&n.preventDefault||!1,t=n&&n.container||window,r={},i={keydown:{},keyup:{}},o={},s;for(s=97;s<=122;s++)o[String.fromCharCode(s)]={code:65+(s-97),shift:!1};for(s=65;s<=90;s++)o[String.fromCharCode(s)]={code:s,shift:!0};for(s=0;s<=9;s++)o[""+s]={code:48+s,shift:!1};for(s=1;s<=12;s++)o["F"+s]={code:111+s,shift:!1};for(s=0;s<=9;s++)o["num"+s]={code:96+s,shift:!1};o["num*"]={code:106,shift:!1},o["num+"]={code:107,shift:!1},o["num-"]={code:109,shift:!1},o["num/"]={code:111,shift:!1},o["num."]={code:110,shift:!1},o.left={code:37,shift:!1},o.up={code:38,shift:!1},o.right={code:39,shift:!1},o.down={code:40,shift:!1},o.space={code:32,shift:!1},o.enter={code:13,shift:!1},o.shift={code:16,shift:void 0},o.esc={code:27,shift:!1},o.backspace={code:8,shift:!1},o.tab={code:9,shift:!1},o.ctrl={code:17,shift:!1},o.alt={code:18,shift:!1},o.delete={code:46,shift:!1},o.pageup={code:33,shift:!1},o.pagedown={code:34,shift:!1},o["="]={code:187,shift:!1},o["-"]={code:189,shift:!1},o["]"]={code:221,shift:!1},o["["]={code:219,shift:!1};var a=function(I){A(I,"keydown")},g=function(I){A(I,"keyup")},A=function(I,C){if(i[C][I.keyCode]!==void 0){for(var l=i[C][I.keyCode],d=0;d<l.length;d++)(l[d].shift===void 0||l[d].shift==!0&&I.shiftKey==!0||l[d].shift==!1&&I.shiftKey==!1)&&l[d].fn(I);e==!0&&I.preventDefault()}};return r.bind=function(I,C,l){if(l===void 0&&(l="keydown"),o[I]===void 0)throw new Error("unsupported key: "+I);i[l][o[I].code]===void 0&&(i[l][o[I].code]=[]),i[l][o[I].code].push({fn:C,shift:o[I].shift})},r.bindAll=function(I,C){C===void 0&&(C="keydown");for(var l in o)o.hasOwnProperty(l)&&r.bind(l,I,C)},r.getKey=function(I){for(var C in o)if(o.hasOwnProperty(C)){if(I.shiftKey==!0&&o[C].shift==!0&&I.keyCode==o[C].code)return C;if(I.shiftKey==!1&&o[C].shift==!1&&I.keyCode==o[C].code)return C;if(I.keyCode==o[C].code&&C=="shift")return C}return"unknown key, currently not supported"},r.unbind=function(I,C,l){if(l===void 0&&(l="keydown"),o[I]===void 0)throw new Error("unsupported key: "+I);if(C!==void 0){var d=[],u=i[l][o[I].code];if(u!==void 0)for(var h=0;h<u.length;h++)u[h].fn==C&&u[h].shift==o[I].shift||d.push(i[l][o[I].code][h]);i[l][o[I].code]=d}else i[l][o[I].code]=[]},r.reset=function(){i={keydown:{},keyup:{}}},r.destroy=function(){i={keydown:{},keyup:{}},t.removeEventListener("keydown",a,!0),t.removeEventListener("keyup",g,!0)},t.addEventListener("keydown",a,!0),t.addEventListener("keyup",g,!0),r}let mCe=class{constructor(e,t){this.body=e,this.canvas=t,this.iconsCreated=!1,this.navigationHammers=[],this.boundFunctions={},this.touchTime=0,this.activated=!1,this.body.emitter.on("activate",()=>{this.activated=!0,this.configureKeyboardBindings()}),this.body.emitter.on("deactivate",()=>{this.activated=!1,this.configureKeyboardBindings()}),this.body.emitter.on("destroy",()=>{this.keycharm!==void 0&&this.keycharm.destroy()}),this.options={}}setOptions(e){e!==void 0&&(this.options=e,this.create())}create(){this.options.navigationButtons===!0?this.iconsCreated===!1&&this.loadNavigationElements():this.iconsCreated===!0&&this.cleanNavigation(),this.configureKeyboardBindings()}cleanNavigation(){if(this.navigationHammers.length!=0){for(let e=0;e<this.navigationHammers.length;e++)this.navigationHammers[e].destroy();this.navigationHammers=[]}this.navigationDOM&&this.navigationDOM.wrapper&&this.navigationDOM.wrapper.parentNode&&this.navigationDOM.wrapper.parentNode.removeChild(this.navigationDOM.wrapper),this.iconsCreated=!1}loadNavigationElements(){this.cleanNavigation(),this.navigationDOM={};const 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(let s=0;s<e.length;s++){this.navigationDOM[e[s]]=document.createElement("div"),this.navigationDOM[e[s]].className="vis-button vis-"+e[s],this.navigationDOM.wrapper.appendChild(this.navigationDOM[e[s]]);const a=new rs(this.navigationDOM[e[s]]);if(t[s]==="_fit"){var r;WA(a,z(r=this._fit).call(r,this))}else{var i;WA(a,z(i=this.bindToRedraw).call(i,this,t[s]))}this.navigationHammers.push(a)}const o=new rs(this.canvas.frame);p7(o,()=>{this._stopMovement()}),this.navigationHammers.push(o),this.iconsCreated=!0}bindToRedraw(e){if(this.boundFunctions[e]===void 0){var t;this.boundFunctions[e]=z(t=this[e]).call(t,this),this.body.emitter.on("initRedraw",this.boundFunctions[e]),this.body.emitter.emit("_startRendering")}}unbindFromRedraw(e){this.boundFunctions[e]!==void 0&&(this.body.emitter.off("initRedraw",this.boundFunctions[e]),this.body.emitter.emit("_stopRendering"),delete this.boundFunctions[e])}_fit(){new Date().valueOf()-this.touchTime>700&&(this.body.emitter.emit("fit",{duration:700}),this.touchTime=new Date().valueOf())}_stopMovement(){for(const e in this.boundFunctions)Object.prototype.hasOwnProperty.call(this.boundFunctions,e)&&(this.body.emitter.off("initRedraw",this.boundFunctions[e]),this.body.emitter.emit("_stopRendering"));this.boundFunctions={}}_moveUp(){this.body.view.translation.y+=this.options.keyboard.speed.y}_moveDown(){this.body.view.translation.y-=this.options.keyboard.speed.y}_moveLeft(){this.body.view.translation.x+=this.options.keyboard.speed.x}_moveRight(){this.body.view.translation.x-=this.options.keyboard.speed.x}_zoomIn(){const e=this.body.view.scale,t=this.body.view.scale*(1+this.options.keyboard.speed.zoom),r=this.body.view.translation,i=t/e,o=(1-i)*this.canvas.canvasViewCenter.x+r.x*i,s=(1-i)*this.canvas.canvasViewCenter.y+r.y*i;this.body.view.scale=t,this.body.view.translation={x:o,y:s},this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale,pointer:null})}_zoomOut(){const e=this.body.view.scale,t=this.body.view.scale/(1+this.options.keyboard.speed.zoom),r=this.body.view.translation,i=t/e,o=(1-i)*this.canvas.canvasViewCenter.x+r.x*i,s=(1-i)*this.canvas.canvasViewCenter.y+r.y*i;this.body.view.scale=t,this.body.view.translation={x:o,y:s},this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale,pointer:null})}configureKeyboardBindings(){if(this.keycharm!==void 0&&this.keycharm.destroy(),this.options.keyboard.enabled===!0&&(this.options.keyboard.bindToWindow===!0?this.keycharm=jk({container:window,preventDefault:!0}):this.keycharm=jk({container:this.canvas.frame,preventDefault:!0}),this.keycharm.reset(),this.activated===!0)){var e,t,r,i,o,s,a,g,A,I,C,l,d,u,h,v,f,c,b,p,y,E,S,m;z(e=this.keycharm).call(e,"up",()=>{this.bindToRedraw("_moveUp")},"keydown"),z(t=this.keycharm).call(t,"down",()=>{this.bindToRedraw("_moveDown")},"keydown"),z(r=this.keycharm).call(r,"left",()=>{this.bindToRedraw("_moveLeft")},"keydown"),z(i=this.keycharm).call(i,"right",()=>{this.bindToRedraw("_moveRight")},"keydown"),z(o=this.keycharm).call(o,"=",()=>{this.bindToRedraw("_zoomIn")},"keydown"),z(s=this.keycharm).call(s,"num+",()=>{this.bindToRedraw("_zoomIn")},"keydown"),z(a=this.keycharm).call(a,"num-",()=>{this.bindToRedraw("_zoomOut")},"keydown"),z(g=this.keycharm).call(g,"-",()=>{this.bindToRedraw("_zoomOut")},"keydown"),z(A=this.keycharm).call(A,"[",()=>{this.bindToRedraw("_zoomOut")},"keydown"),z(I=this.keycharm).call(I,"]",()=>{this.bindToRedraw("_zoomIn")},"keydown"),z(C=this.keycharm).call(C,"pageup",()=>{this.bindToRedraw("_zoomIn")},"keydown"),z(l=this.keycharm).call(l,"pagedown",()=>{this.bindToRedraw("_zoomOut")},"keydown"),z(d=this.keycharm).call(d,"up",()=>{this.unbindFromRedraw("_moveUp")},"keyup"),z(u=this.keycharm).call(u,"down",()=>{this.unbindFromRedraw("_moveDown")},"keyup"),z(h=this.keycharm).call(h,"left",()=>{this.unbindFromRedraw("_moveLeft")},"keyup"),z(v=this.keycharm).call(v,"right",()=>{this.unbindFromRedraw("_moveRight")},"keyup"),z(f=this.keycharm).call(f,"=",()=>{this.unbindFromRedraw("_zoomIn")},"keyup"),z(c=this.keycharm).call(c,"num+",()=>{this.unbindFromRedraw("_zoomIn")},"keyup"),z(b=this.keycharm).call(b,"num-",()=>{this.unbindFromRedraw("_zoomOut")},"keyup"),z(p=this.keycharm).call(p,"-",()=>{this.unbindFromRedraw("_zoomOut")},"keyup"),z(y=this.keycharm).call(y,"[",()=>{this.unbindFromRedraw("_zoomOut")},"keyup"),z(E=this.keycharm).call(E,"]",()=>{this.unbindFromRedraw("_zoomIn")},"keyup"),z(S=this.keycharm).call(S,"pageup",()=>{this.unbindFromRedraw("_zoomIn")},"keyup"),z(m=this.keycharm).call(m,"pagedown",()=>{this.unbindFromRedraw("_zoomOut")},"keyup")}}},yCe=class{constructor(e,t,r){var i,o,s,a,g,A,I,C,l,d,u,h,v;this.body=e,this.canvas=t,this.selectionHandler=r,this.navigationHandler=new mCe(e,t),this.body.eventListeners.onTap=z(i=this.onTap).call(i,this),this.body.eventListeners.onTouch=z(o=this.onTouch).call(o,this),this.body.eventListeners.onDoubleTap=z(s=this.onDoubleTap).call(s,this),this.body.eventListeners.onHold=z(a=this.onHold).call(a,this),this.body.eventListeners.onDragStart=z(g=this.onDragStart).call(g,this),this.body.eventListeners.onDrag=z(A=this.onDrag).call(A,this),this.body.eventListeners.onDragEnd=z(I=this.onDragEnd).call(I,this),this.body.eventListeners.onMouseWheel=z(C=this.onMouseWheel).call(C,this),this.body.eventListeners.onPinch=z(l=this.onPinch).call(l,this),this.body.eventListeners.onMouseMove=z(d=this.onMouseMove).call(d,this),this.body.eventListeners.onRelease=z(u=this.onRelease).call(u,this),this.body.eventListeners.onContext=z(h=this.onContext).call(h,this),this.touchTime=0,this.drag={},this.pinch={},this.popup=void 0,this.popupObj=void 0,this.popupTimer=void 0,this.body.functions.getPointer=z(v=this.getPointer).call(v,this),this.options={},this.defaultOptions={dragNodes:!0,dragView:!0,hover:!1,keyboard:{enabled:!1,speed:{x:10,y:10,zoom:.02},bindToWindow:!0,autoFocus:!0},navigationButtons:!1,tooltipDelay:300,zoomView:!0,zoomSpeed:1},tt(this.options,this.defaultOptions),this.bindEventListeners()}bindEventListeners(){this.body.emitter.on("destroy",()=>{clearTimeout(this.popupTimer),delete this.body.functions.getPointer})}setOptions(e){e!==void 0&&(zA(["hideEdgesOnDrag","hideEdgesOnZoom","hideNodesOnDrag","keyboard","multiselect","selectable","selectConnectedEdges"],this.options,e),dr(this.options,e,"keyboard"),e.tooltip&&(tt(this.options.tooltip,e.tooltip),e.tooltip.color&&(this.options.tooltip.color=CO(e.tooltip.color)))),this.navigationHandler.setOptions(this.options)}getPointer(e){return{x:e.x-fse(this.canvas.frame.canvas),y:e.y-pse(this.canvas.frame.canvas)}}onTouch(e){new Date().valueOf()-this.touchTime>50&&(this.drag.pointer=this.getPointer(e.center),this.drag.pinched=!1,this.pinch.scale=this.body.view.scale,this.touchTime=new Date().valueOf())}onTap(e){const t=this.getPointer(e.center),r=this.selectionHandler.options.multiselect&&(e.changedPointers[0].ctrlKey||e.changedPointers[0].metaKey);this.checkSelectionChanges(t,r),this.selectionHandler.commitAndEmit(t,e),this.selectionHandler.generateClickEvent("click",e,t)}onDoubleTap(e){const t=this.getPointer(e.center);this.selectionHandler.generateClickEvent("doubleClick",e,t)}onHold(e){const t=this.getPointer(e.center),r=this.selectionHandler.options.multiselect;this.checkSelectionChanges(t,r),this.selectionHandler.commitAndEmit(t,e),this.selectionHandler.generateClickEvent("click",e,t),this.selectionHandler.generateClickEvent("hold",e,t)}onRelease(e){if(new Date().valueOf()-this.touchTime>10){const t=this.getPointer(e.center);this.selectionHandler.generateClickEvent("release",e,t),this.touchTime=new Date().valueOf()}}onContext(e){const t=this.getPointer({x:e.clientX,y:e.clientY});this.selectionHandler.generateClickEvent("oncontext",e,t)}checkSelectionChanges(e){(arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1)===!0?this.selectionHandler.selectAdditionalOnPoint(e):this.selectionHandler.selectOnPoint(e)}_determineDifference(e,t){const r=function(i,o){const s=[];for(let a=0;a<i.length;a++){const g=i[a];_e(o).call(o,g)===-1&&s.push(g)}return s};return{nodes:r(e.nodes,t.nodes),edges:r(e.edges,t.edges)}}onDragStart(e){if(this.drag.dragging)return;this.drag.pointer===void 0&&this.onTouch(e);const t=this.selectionHandler.getNodeAt(this.drag.pointer);if(this.drag.dragging=!0,this.drag.selection=[],this.drag.translation=tt({},this.body.view.translation),this.drag.nodeId=void 0,e.srcEvent.shiftKey){this.body.selectionBox.show=!0;const r=this.getPointer(e.center);this.body.selectionBox.position.start={x:this.canvas._XconvertDOMtoCanvas(r.x),y:this.canvas._YconvertDOMtoCanvas(r.y)},this.body.selectionBox.position.end={x:this.canvas._XconvertDOMtoCanvas(r.x),y:this.canvas._YconvertDOMtoCanvas(r.y)}}else if(t!==void 0&&this.options.dragNodes===!0){this.drag.nodeId=t.id,t.isSelected()===!1&&this.selectionHandler.setSelection({nodes:[t.id]}),this.selectionHandler.generateClickEvent("dragStart",e,this.drag.pointer);for(const r of this.selectionHandler.getSelectedNodes()){const i={id:r.id,node:r,x:r.x,y:r.y,xFixed:r.options.fixed.x,yFixed:r.options.fixed.y};r.options.fixed.x=!0,r.options.fixed.y=!0,this.drag.selection.push(i)}}else this.selectionHandler.generateClickEvent("dragStart",e,this.drag.pointer,void 0,!0)}onDrag(e){if(this.drag.pinched===!0)return;this.body.emitter.emit("unlockNode");const t=this.getPointer(e.center),r=this.drag.selection;if(r&&r.length&&this.options.dragNodes===!0){this.selectionHandler.generateClickEvent("dragging",e,t);const i=t.x-this.drag.pointer.x,o=t.y-this.drag.pointer.y;be(r).call(r,s=>{const a=s.node;s.xFixed===!1&&(a.x=this.canvas._XconvertDOMtoCanvas(this.canvas._XconvertCanvasToDOM(s.x)+i)),s.yFixed===!1&&(a.y=this.canvas._YconvertDOMtoCanvas(this.canvas._YconvertCanvasToDOM(s.y)+o))}),this.body.emitter.emit("startSimulation")}else{if(e.srcEvent.shiftKey){if(this.selectionHandler.generateClickEvent("dragging",e,t,void 0,!0),this.drag.pointer===void 0){this.onDragStart(e);return}this.body.selectionBox.position.end={x:this.canvas._XconvertDOMtoCanvas(t.x),y:this.canvas._YconvertDOMtoCanvas(t.y)},this.body.emitter.emit("_requestRedraw")}if(this.options.dragView===!0&&!e.srcEvent.shiftKey){if(this.selectionHandler.generateClickEvent("dragging",e,t,void 0,!0),this.drag.pointer===void 0){this.onDragStart(e);return}const i=t.x-this.drag.pointer.x,o=t.y-this.drag.pointer.y;this.body.view.translation={x:this.drag.translation.x+i,y:this.drag.translation.y+o},this.body.emitter.emit("_requestRedraw")}}}onDragEnd(e){if(this.drag.dragging=!1,this.body.selectionBox.show){var t;this.body.selectionBox.show=!1;const r=this.body.selectionBox.position,i={minX:Math.min(r.start.x,r.end.x),minY:Math.min(r.start.y,r.end.y),maxX:Math.max(r.start.x,r.end.x),maxY:Math.max(r.start.y,r.end.y)},o=st(t=this.body.nodeIndices).call(t,a=>{const g=this.body.nodes[a];return g.x>=i.minX&&g.x<=i.maxX&&g.y>=i.minY&&g.y<=i.maxY});be(o).call(o,a=>this.selectionHandler.selectObject(this.body.nodes[a]));const s=this.getPointer(e.center);this.selectionHandler.commitAndEmit(s,e),this.selectionHandler.generateClickEvent("dragEnd",e,this.getPointer(e.center),void 0,!0),this.body.emitter.emit("_requestRedraw")}else{const r=this.drag.selection;r&&r.length?(be(r).call(r,function(i){i.node.options.fixed.x=i.xFixed,i.node.options.fixed.y=i.yFixed}),this.selectionHandler.generateClickEvent("dragEnd",e,this.getPointer(e.center)),this.body.emitter.emit("startSimulation")):(this.selectionHandler.generateClickEvent("dragEnd",e,this.getPointer(e.center),void 0,!0),this.body.emitter.emit("_requestRedraw"))}}onPinch(e){const t=this.getPointer(e.center);this.drag.pinched=!0,this.pinch.scale===void 0&&(this.pinch.scale=1);const r=this.pinch.scale*e.scale;this.zoom(r,t)}zoom(e,t){if(this.options.zoomView===!0){const r=this.body.view.scale;e<1e-5&&(e=1e-5),e>10&&(e=10);let i;this.drag!==void 0&&this.drag.dragging===!0&&(i=this.canvas.DOMtoCanvas(this.drag.pointer));const o=this.body.view.translation,s=e/r,a=(1-s)*t.x+o.x*s,g=(1-s)*t.y+o.y*s;if(this.body.view.scale=e,this.body.view.translation={x:a,y:g},i!=null){const A=this.canvas.canvasToDOM(i);this.drag.pointer.x=A.x,this.drag.pointer.y=A.y}this.body.emitter.emit("_requestRedraw"),r<e?this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale,pointer:t}):this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale,pointer:t})}}onMouseWheel(e){if(this.options.zoomView===!0){if(e.deltaY!==0){let t=this.body.view.scale;t*=1+(e.deltaY<0?1:-1)*(this.options.zoomSpeed*.1);const r=this.getPointer({x:e.clientX,y:e.clientY});this.zoom(t,r)}e.preventDefault()}}onMouseMove(e){const t=this.getPointer({x:e.clientX,y:e.clientY});let r=!1;this.popup!==void 0&&(this.popup.hidden===!1&&this._checkHidePopup(t),this.popup.hidden===!1&&(r=!0,this.popup.setPosition(t.x+3,t.y-5),this.popup.show())),this.options.keyboard.autoFocus&&this.options.keyboard.bindToWindow===!1&&this.options.keyboard.enabled===!0&&this.canvas.frame.focus(),r===!1&&(this.popupTimer!==void 0&&(clearInterval(this.popupTimer),this.popupTimer=void 0),this.drag.dragging||(this.popupTimer=ri(()=>this._checkShowPopup(t),this.options.tooltipDelay))),this.options.hover===!0&&this.selectionHandler.hoverObject(e,t)}_checkShowPopup(e){const t=this.canvas._XconvertDOMtoCanvas(e.x),r=this.canvas._YconvertDOMtoCanvas(e.y),i={left:t,top:r,right:t,bottom:r},o=this.popupObj===void 0?void 0:this.popupObj.id;let s=!1,a="node";if(this.popupObj===void 0){const g=this.body.nodeIndices,A=this.body.nodes;let I;const C=[];for(let l=0;l<g.length;l++)I=A[g[l]],I.isOverlappingWith(i)===!0&&(s=!0,I.getTitle()!==void 0&&C.push(g[l]));C.length>0&&(this.popupObj=A[C[C.length-1]],s=!0)}if(this.popupObj===void 0&&s===!1){const g=this.body.edgeIndices,A=this.body.edges;let I;const C=[];for(let l=0;l<g.length;l++)I=A[g[l]],I.isOverlappingWith(i)===!0&&I.connected===!0&&I.getTitle()!==void 0&&C.push(g[l]);C.length>0&&(this.popupObj=A[C[C.length-1]],a="edge")}this.popupObj!==void 0?this.popupObj.id!==o&&(this.popup===void 0&&(this.popup=new Rse(this.canvas.frame)),this.popup.popupTargetType=a,this.popup.popupTargetId=this.popupObj.id,this.popup.setPosition(e.x+3,e.y-5),this.popup.setText(this.popupObj.getTitle()),this.popup.show(),this.body.emitter.emit("showPopup",this.popupObj.id)):this.popup!==void 0&&(this.popup.hide(),this.body.emitter.emit("hidePopup"))}_checkHidePopup(e){const t=this.selectionHandler._pointerToPositionObject(e);let r=!1;if(this.popup.popupTargetType==="node"){if(this.body.nodes[this.popup.popupTargetId]!==void 0&&(r=this.body.nodes[this.popup.popupTargetId].isOverlappingWith(t),r===!0)){const i=this.selectionHandler.getNodeAt(e);r=i===void 0?!1:i.id===this.popup.popupTargetId}}else this.selectionHandler.getNodeAt(e)===void 0&&this.body.edges[this.popup.popupTargetId]!==void 0&&(r=this.body.edges[this.popup.popupTargetId].isOverlappingWith(t));r===!1&&(this.popupObj=void 0,this.popup.hide(),this.body.emitter.emit("hidePopup"))}};var Lk={},Gk={},wf,Wk;function bCe(){if(Wk)return wf;Wk=1;var n=me(),e=hT(),t=bI().getWeakData,r=dT(),i=Ii(),o=Os(),s=bt(),a=wI(),g=pn(),A=ct(),I=Io(),C=I.set,l=I.getterFor,d=g.find,u=g.findIndex,h=n([].splice),v=0,f=function(p){return p.frozen||(p.frozen=new c)},c=function(){this.entries=[]},b=function(p,y){return d(p.entries,function(E){return E[0]===y})};return c.prototype={get:function(p){var y=b(this,p);if(y)return y[1]},has:function(p){return!!b(this,p)},set:function(p,y){var E=b(this,p);E?E[1]=y:this.entries.push([p,y])},delete:function(p){var y=u(this.entries,function(E){return E[0]===p});return~y&&h(this.entries,y,1),!!~y}},wf={getConstructor:function(p,y,E,S){var m=p(function(R,O){r(R,w),C(R,{type:y,id:v++,frozen:null}),o(O)||a(O,R[S],{that:R,AS_ENTRIES:E})}),w=m.prototype,_=l(y),T=function(R,O,P){var x=_(R),V=t(i(O),!0);return V===!0?f(x).set(O,P):V[x.id]=P,R};return e(w,{delete:function(R){var O=_(this);if(!s(R))return!1;var P=t(R);return P===!0?f(O).delete(R):P&&A(P,O.id)&&delete P[O.id]},has:function(O){var P=_(this);if(!s(O))return!1;var x=t(O);return x===!0?f(P).has(O):x&&A(x,P.id)}}),e(w,E?{get:function(O){var P=_(this);if(s(O)){var x=t(O);if(x===!0)return f(P).get(O);if(x)return x[P.id]}},set:function(O,P){return T(this,O,P)}}:{add:function(O){return T(this,O,!0)}}),m}},wf}var Vk;function wCe(){if(Vk)return Gk;Vk=1;var n=QQ(),e=Le(),t=me(),r=hT(),i=bI(),o=uT(),s=bCe(),a=bt(),g=Io().enforce,A=ce(),I=UX(),C=Object,l=Array.isArray,d=C.isExtensible,u=C.isFrozen,h=C.isSealed,v=C.freeze,f=C.seal,c=!e.ActiveXObject&&"ActiveXObject"in e,b,p=function(R){return function(){return R(this,arguments.length?arguments[0]:void 0)}},y=o("WeakMap",p,s),E=y.prototype,S=t(E.set),m=function(){return n&&A(function(){var R=v([]);return S(new y,R,1),!u(R)})};if(I)if(c){b=s.getConstructor(p,"WeakMap",!0),i.enable();var w=t(E.delete),_=t(E.has),T=t(E.get);r(E,{delete:function(R){if(a(R)&&!d(R)){var O=g(this);return O.frozen||(O.frozen=new b),w(this,R)||O.frozen.delete(R)}return w(this,R)},has:function(O){if(a(O)&&!d(O)){var P=g(this);return P.frozen||(P.frozen=new b),_(this,O)||P.frozen.has(O)}return _(this,O)},get:function(O){if(a(O)&&!d(O)){var P=g(this);return P.frozen||(P.frozen=new b),_(this,O)?T(this,O):P.frozen.get(O)}return T(this,O)},set:function(O,P){if(a(O)&&!d(O)){var x=g(this);x.frozen||(x.frozen=new b),_(this,O)?S(this,O,P):x.frozen.set(O,P)}else S(this,O,P);return this}})}else m()&&r(E,{set:function(O,P){var x;return l(O)&&(u(O)?x=v:h(O)&&(x=f)),S(this,O,P),x&&x(O),this}});return Gk}var Zk;function ECe(){return Zk||(Zk=1,wCe()),Lk}var Ef,Hk;function SCe(){if(Hk)return Ef;Hk=1,$i(),ECe();var n=Ee();return Ef=n.WeakMap,Ef}var Sf,Uk;function _Ce(){if(Uk)return Sf;Uk=1;var n=SCe();return Di(),Sf=n,Sf}var _f,Kk;function OCe(){return Kk||(Kk=1,_f=_Ce()),_f}var TCe=OCe(),Og=ne(TCe);function Na(n,e,t){RCe(n,e),e.set(n,t)}function RCe(n,e){if(e.has(n))throw new TypeError("Cannot initialize the same private elements twice on an object")}function pO(n,e,t){return n.set(v7(n,e),t),t}function De(n,e){return n.get(v7(n,e))}function v7(n,e,t){if(typeof n=="function"?n===e:n.has(e))return arguments.length<3?e:t;throw new TypeError("Private element is not present on this object")}function Yk(n,e){const t=new jr;for(const r of e)n.has(r)||t.add(r);return t}var zo=new Og,Nr=new Og;let Xk=class{constructor(){Na(this,zo,new jr),Na(this,Nr,new jr)}get size(){return De(Nr,this).size}add(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];for(const i of t)De(Nr,this).add(i)}delete(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];for(const i of t)De(Nr,this).delete(i)}clear(){De(Nr,this).clear()}getSelection(){return[...De(Nr,this)]}getChanges(){return{added:[...Yk(De(zo,this),De(Nr,this))],deleted:[...Yk(De(Nr,this),De(zo,this))],previous:[...new jr(De(zo,this))],current:[...new jr(De(Nr,this))]}}commit(){const e=this.getChanges();pO(zo,this,De(Nr,this)),pO(Nr,this,new jr(De(zo,this)));for(const t of e.added)t.select();for(const t of e.deleted)t.unselect();return e}};var Tn=new Og,Rn=new Og,Of=new Og;let PCe=class{constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:()=>{};Na(this,Tn,new Xk),Na(this,Rn,new Xk),Na(this,Of,void 0),pO(Of,this,e)}get sizeNodes(){return De(Tn,this).size}get sizeEdges(){return De(Rn,this).size}getNodes(){return De(Tn,this).getSelection()}getEdges(){return De(Rn,this).getSelection()}addNodes(){De(Tn,this).add(...arguments)}addEdges(){De(Rn,this).add(...arguments)}deleteNodes(e){De(Tn,this).delete(e)}deleteEdges(e){De(Rn,this).delete(e)}clear(){De(Tn,this).clear(),De(Rn,this).clear()}commit(){const e={nodes:De(Tn,this).commit(),edges:De(Rn,this).commit()};for(var t=arguments.length,r=new Array(t),i=0;i<t;i++)r[i]=arguments[i];return De(Of,this).call(this,e,...r),e}},xCe=class{constructor(e,t){this.body=e,this.canvas=t,this._selectionAccumulator=new PCe,this.hoverObj={nodes:{},edges:{}},this.options={},this.defaultOptions={multiselect:!1,selectable:!0,selectConnectedEdges:!0,hoverConnectedEdges:!0},tt(this.options,this.defaultOptions),this.body.emitter.on("_dataChanged",()=>{this.updateSelection()})}setOptions(e){e!==void 0&&zs(["multiselect","hoverConnectedEdges","selectable","selectConnectedEdges"],this.options,e)}selectOnPoint(e){let t=!1;if(this.options.selectable===!0){const r=this.getNodeAt(e)||this.getEdgeAt(e);this.unselectAll(),r!==void 0&&(t=this.selectObject(r)),this.body.emitter.emit("_requestRedraw")}return t}selectAdditionalOnPoint(e){let t=!1;if(this.options.selectable===!0){const r=this.getNodeAt(e)||this.getEdgeAt(e);r!==void 0&&(t=!0,r.isSelected()===!0?this.deselectObject(r):this.selectObject(r),this.body.emitter.emit("_requestRedraw"))}return t}_initBaseEvent(e,t){const r={};return r.pointer={DOM:{x:t.x,y:t.y},canvas:this.canvas.DOMtoCanvas(t)},r.event=e,r}generateClickEvent(e,t,r,i){let o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;const s=this._initBaseEvent(t,r);if(o===!0)s.nodes=[],s.edges=[];else{const a=this.getSelection();s.nodes=a.nodes,s.edges=a.edges}i!==void 0&&(s.previousSelection=i),e=="click"&&(s.items=this.getClickedItems(r)),t.controlEdge!==void 0&&(s.controlEdge=t.controlEdge),this.body.emitter.emit(e,s)}selectObject(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.options.selectConnectedEdges;return e!==void 0?(e instanceof sr?(t===!0&&this._selectionAccumulator.addEdges(...e.edges),this._selectionAccumulator.addNodes(e)):this._selectionAccumulator.addEdges(e),!0):!1}deselectObject(e){e.isSelected()===!0&&(e.selected=!1,this._removeFromSelection(e))}_getAllNodesOverlappingWith(e){const t=[],r=this.body.nodes;for(let i=0;i<this.body.nodeIndices.length;i++){const o=this.body.nodeIndices[i];r[o].isOverlappingWith(e)&&t.push(o)}return t}_pointerToPositionObject(e){const t=this.canvas.DOMtoCanvas(e);return{left:t.x-1,top:t.y+1,right:t.x+1,bottom:t.y-1}}getNodeAt(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;const r=this._pointerToPositionObject(e),i=this._getAllNodesOverlappingWith(r);if(i.length>0)return t===!0?this.body.nodes[i[i.length-1]]:i[i.length-1]}_getEdgesOverlappingWith(e,t){const r=this.body.edges;for(let i=0;i<this.body.edgeIndices.length;i++){const o=this.body.edgeIndices[i];r[o].isOverlappingWith(e)&&t.push(o)}}_getAllEdgesOverlappingWith(e){const t=[];return this._getEdgesOverlappingWith(e,t),t}getEdgeAt(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;const r=this.canvas.DOMtoCanvas(e);let i=10,o=null;const s=this.body.edges;for(let a=0;a<this.body.edgeIndices.length;a++){const g=this.body.edgeIndices[a],A=s[g];if(A.connected){const I=A.from.x,C=A.from.y,l=A.to.x,d=A.to.y,u=A.edgeType.getDistanceToEdge(I,C,l,d,r.x,r.y);u<i&&(o=g,i=u)}}if(o!==null)return t===!0?this.body.edges[o]:o}_addToHover(e){e instanceof sr?this.hoverObj.nodes[e.id]=e:this.hoverObj.edges[e.id]=e}_removeFromSelection(e){e instanceof sr?(this._selectionAccumulator.deleteNodes(e),this._selectionAccumulator.deleteEdges(...e.edges)):this._selectionAccumulator.deleteEdges(e)}unselectAll(){this._selectionAccumulator.clear()}getSelectedNodeCount(){return this._selectionAccumulator.sizeNodes}getSelectedEdgeCount(){return this._selectionAccumulator.sizeEdges}_hoverConnectedEdges(e){for(let t=0;t<e.edges.length;t++){const r=e.edges[t];r.hover=!0,this._addToHover(r)}}emitBlurEvent(e,t,r){const i=this._initBaseEvent(e,t);r.hover===!0&&(r.hover=!1,r instanceof sr?(i.node=r.id,this.body.emitter.emit("blurNode",i)):(i.edge=r.id,this.body.emitter.emit("blurEdge",i)))}emitHoverEvent(e,t,r){const i=this._initBaseEvent(e,t);let o=!1;return r.hover===!1&&(r.hover=!0,this._addToHover(r),o=!0,r instanceof sr?(i.node=r.id,this.body.emitter.emit("hoverNode",i)):(i.edge=r.id,this.body.emitter.emit("hoverEdge",i))),o}hoverObject(e,t){let r=this.getNodeAt(t);r===void 0&&(r=this.getEdgeAt(t));let i=!1;for(const o in this.hoverObj.nodes)Object.prototype.hasOwnProperty.call(this.hoverObj.nodes,o)&&(r===void 0||r instanceof sr&&r.id!=o||r instanceof ns)&&(this.emitBlurEvent(e,t,this.hoverObj.nodes[o]),delete this.hoverObj.nodes[o],i=!0);for(const o in this.hoverObj.edges)Object.prototype.hasOwnProperty.call(this.hoverObj.edges,o)&&(i===!0?(this.hoverObj.edges[o].hover=!1,delete this.hoverObj.edges[o]):(r===void 0||r instanceof ns&&r.id!=o||r instanceof sr&&!r.hover)&&(this.emitBlurEvent(e,t,this.hoverObj.edges[o]),delete this.hoverObj.edges[o],i=!0));if(r!==void 0){const o=Be(this.hoverObj.edges).length,s=Be(this.hoverObj.nodes).length,a=r instanceof ns&&o===0&&s===0,g=r instanceof sr&&o===0&&s===0;(i||a||g)&&(i=this.emitHoverEvent(e,t,r)),r instanceof sr&&this.options.hoverConnectedEdges===!0&&this._hoverConnectedEdges(r)}i===!0&&this.body.emitter.emit("_requestRedraw")}commitWithoutEmitting(){this._selectionAccumulator.commit()}commitAndEmit(e,t){let r=!1;const i=this._selectionAccumulator.commit(),o={nodes:i.nodes.previous,edges:i.edges.previous};i.edges.deleted.length>0&&(this.generateClickEvent("deselectEdge",t,e,o),r=!0),i.nodes.deleted.length>0&&(this.generateClickEvent("deselectNode",t,e,o),r=!0),i.nodes.added.length>0&&(this.generateClickEvent("selectNode",t,e),r=!0),i.edges.added.length>0&&(this.generateClickEvent("selectEdge",t,e),r=!0),r===!0&&this.generateClickEvent("select",t,e)}getSelection(){return{nodes:this.getSelectedNodeIds(),edges:this.getSelectedEdgeIds()}}getSelectedNodes(){return this._selectionAccumulator.getNodes()}getSelectedEdges(){return this._selectionAccumulator.getEdges()}getSelectedNodeIds(){var e;return Mt(e=this._selectionAccumulator.getNodes()).call(e,t=>t.id)}getSelectedEdgeIds(){var e;return Mt(e=this._selectionAccumulator.getEdges()).call(e,t=>t.id)}setSelection(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!e||!e.nodes&&!e.edges)throw new TypeError("Selection must be an object with nodes and/or edges properties");if((t.unselectAll||t.unselectAll===void 0)&&this.unselectAll(),e.nodes)for(const r of e.nodes){const i=this.body.nodes[r];if(!i)throw new RangeError('Node with id "'+r+'" not found');this.selectObject(i,t.highlightEdges)}if(e.edges)for(const r of e.edges){const i=this.body.edges[r];if(!i)throw new RangeError('Edge with id "'+r+'" not found');this.selectObject(i)}this.body.emitter.emit("_requestRedraw"),this._selectionAccumulator.commit()}selectNodes(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(!e||e.length===void 0)throw"Selection must be an array with ids";this.setSelection({nodes:e},{highlightEdges:t})}selectEdges(e){if(!e||e.length===void 0)throw"Selection must be an array with ids";this.setSelection({edges:e})}updateSelection(){for(const e in this._selectionAccumulator.getNodes())Object.prototype.hasOwnProperty.call(this.body.nodes,e.id)||this._selectionAccumulator.deleteNodes(e);for(const e in this._selectionAccumulator.getEdges())Object.prototype.hasOwnProperty.call(this.body.edges,e.id)||this._selectionAccumulator.deleteEdges(e)}getClickedItems(e){const t=this.canvas.DOMtoCanvas(e),r=[],i=this.body.nodeIndices,o=this.body.nodes;for(let g=i.length-1;g>=0;g--){const I=o[i[g]].getItemsOnPoint(t);r.push.apply(r,I)}const s=this.body.edgeIndices,a=this.body.edges;for(let g=s.length-1;g>=0;g--){const I=a[s[g]].getItemsOnPoint(t);r.push.apply(r,I)}return r}},m7=class{abstract(){throw new Error("Can't instantiate abstract class!")}fake_use(){}curveType(){return this.abstract()}getPosition(e){return this.fake_use(e),this.abstract()}setPosition(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:void 0;this.fake_use(e,t,r),this.abstract()}getTreeSize(e){return this.fake_use(e),this.abstract()}sort(e){this.fake_use(e),this.abstract()}fix(e,t){this.fake_use(e,t),this.abstract()}shift(e,t){this.fake_use(e,t),this.abstract()}},$Ce=class extends m7{constructor(e){super(),this.layout=e}curveType(){return"horizontal"}getPosition(e){return e.x}setPosition(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:void 0;r!==void 0&&this.layout.hierarchical.addToOrdering(e,r),e.x=t}getTreeSize(e){const t=this.layout.hierarchical.getTreeSize(this.layout.body.nodes,e);return{min:t.min_x,max:t.max_x}}sort(e){mi(e).call(e,function(t,r){return t.x-r.x})}fix(e,t){e.y=this.layout.options.hierarchical.levelSeparation*t,e.options.fixed.y=!0}shift(e,t){this.layout.body.nodes[e].x+=t}},DCe=class extends m7{constructor(e){super(),this.layout=e}curveType(){return"vertical"}getPosition(e){return e.y}setPosition(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:void 0;r!==void 0&&this.layout.hierarchical.addToOrdering(e,r),e.y=t}getTreeSize(e){const t=this.layout.hierarchical.getTreeSize(this.layout.body.nodes,e);return{min:t.min_y,max:t.max_y}}sort(e){mi(e).call(e,function(t,r){return t.y-r.y})}fix(e,t){e.x=this.layout.options.hierarchical.levelSeparation*t,e.options.fixed.x=!0}shift(e,t){this.layout.body.nodes[e].y+=t}};var Qk={},Jk;function NCe(){if(Jk)return Qk;Jk=1;var n=ee(),e=pn().every,t=Fs(),r=t("every");return n({target:"Array",proto:!0,forced:!r},{every:function(o){return e(this,o,arguments.length>1?arguments[1]:void 0)}}),Qk}var Tf,eB;function MCe(){if(eB)return Tf;eB=1,NCe();var n=ft();return Tf=n("Array","every"),Tf}var Rf,tB;function qCe(){if(tB)return Rf;tB=1;var n=Je(),e=MCe(),t=Array.prototype;return Rf=function(r){var i=r.every;return r===t||n(t,r)&&i===t.every?e:i},Rf}var Pf,rB;function FCe(){if(rB)return Pf;rB=1;var n=qCe();return Pf=n,Pf}var xf,iB;function kCe(){return iB||(iB=1,xf=FCe()),xf}var BCe=kCe(),y7=ne(BCe);function zCe(n,e){const t=new jr;return be(n).call(n,r=>{var i;be(i=r.edges).call(i,o=>{o.connected&&t.add(o)})}),be(t).call(t,r=>{const i=r.from.id,o=r.to.id;e[i]==null&&(e[i]=0),(e[o]==null||e[i]>=e[o])&&(e[o]=e[i]+1)}),e}function jCe(n){return b7(e=>{var t,r;return y7(t=st(r=e.edges).call(r,i=>n.has(i.toId))).call(t,i=>i.to===e)},(e,t)=>t>e,"from",n)}function LCe(n){return b7(e=>{var t,r;return y7(t=st(r=e.edges).call(r,i=>n.has(i.toId))).call(t,i=>i.from===e)},(e,t)=>t<e,"to",n)}function b7(n,e,t,r){var i;const o=nn(null),s=cT(i=[...LA(r).call(r)]).call(i,(C,l)=>C+1+l.edges.length,0),a=t+"Id",g=t==="to"?1:-1;for(const[C,l]of r){if(!r.has(C)||!n(l))continue;o[C]=0;const d=[l];let u=0,h;for(;h=d.pop();){var A,I;if(!r.has(C))continue;const v=o[h.id]+g;if(be(A=st(I=h.edges).call(I,f=>f.connected&&f.to!==f.from&&f[t]!==h&&r.has(f.toId)&&r.has(f.fromId))).call(A,f=>{const c=f[a],b=o[c];(b==null||e(v,b))&&(o[c]=v,d.push(f[t]))}),u>s)return zCe(r,o);++u}}return o}let GCe=class{constructor(){this.childrenReference={},this.parentReference={},this.trees={},this.distributionOrdering={},this.levels={},this.distributionIndex={},this.isTree=!1,this.treeIndex=-1}addRelation(e,t){this.childrenReference[e]===void 0&&(this.childrenReference[e]=[]),this.childrenReference[e].push(t),this.parentReference[t]===void 0&&(this.parentReference[t]=[]),this.parentReference[t].push(e)}checkIfTree(){for(const e in this.parentReference)if(this.parentReference[e].length>1){this.isTree=!1;return}this.isTree=!0}numTrees(){return this.treeIndex+1}setTreeIndex(e,t){t!==void 0&&this.trees[e.id]===void 0&&(this.trees[e.id]=t,this.treeIndex=Math.max(t,this.treeIndex))}ensureLevel(e){this.levels[e]===void 0&&(this.levels[e]=0)}getMaxLevel(e){const t={},r=i=>{if(t[i]!==void 0)return t[i];let o=this.levels[i];if(this.childrenReference[i]){const s=this.childrenReference[i];if(s.length>0)for(let a=0;a<s.length;a++)o=Math.max(o,r(s[a]))}return t[i]=o,o};return r(e)}levelDownstream(e,t){this.levels[t.id]===void 0&&(this.levels[e.id]===void 0&&(this.levels[e.id]=0),this.levels[t.id]=this.levels[e.id]+1)}setMinLevelToZero(){var e;const t=new bg;let r=0;const i=mi(e=[...new jr(qne(this.levels))]).call(e,(o,s)=>o-s);for(const o of i)t.set(o,r++);for(const o in this.levels)Object.prototype.hasOwnProperty.call(this.levels,o)&&(this.levels[o]=t.get(this.levels[o]))}getTreeSize(e,t){let r=1e9,i=-1e9,o=1e9,s=-1e9;for(const a in this.trees)if(Object.prototype.hasOwnProperty.call(this.trees,a)&&this.trees[a]===t){const g=e[a];r=Math.min(g.x,r),i=Math.max(g.x,i),o=Math.min(g.y,o),s=Math.max(g.y,s)}return{min_x:r,max_x:i,min_y:o,max_y:s}}hasSameParent(e,t){const r=this.parentReference[e.id],i=this.parentReference[t.id];if(r===void 0||i===void 0)return!1;for(let o=0;o<r.length;o++)for(let s=0;s<i.length;s++)if(r[o]==i[s])return!0;return!1}inSameSubNetwork(e,t){return this.trees[e.id]===this.trees[t.id]}getLevels(){return Be(this.distributionOrdering)}addToOrdering(e,t){this.distributionOrdering[t]===void 0&&(this.distributionOrdering[t]=[]);let r=!1;const i=this.distributionOrdering[t];for(const o in i)if(i[o]===e){r=!0;break}r||(this.distributionOrdering[t].push(e),this.distributionIndex[e.id]=this.distributionOrdering[t].length-1)}},WCe=class{constructor(e){this.body=e,this._resetRNG(Math.random()+":"+MA()),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"}},tt(this.options,this.defaultOptions),this.bindEventListeners()}bindEventListeners(){this.body.emitter.on("_dataChanged",()=>{this.setupHierarchicalLayout()}),this.body.emitter.on("_dataLoaded",()=>{this.layoutNetwork()}),this.body.emitter.on("_resetHierarchicalLayout",()=>{this.setupHierarchicalLayout()}),this.body.emitter.on("_adjustEdgesForHierarchicalLayout",()=>{if(this.options.hierarchical.enabled!==!0)return;const e=this.direction.curveType();this.body.emitter.emit("_forceDisableDynamicCurves",e,!1)})}setOptions(e,t){if(e!==void 0){const r=this.options.hierarchical,i=r.enabled;if(zs(["randomSeed","improvedLayout","clusterThreshold"],this.options,e),dr(this.options,e,"hierarchical"),e.randomSeed!==void 0&&this._resetRNG(e.randomSeed),r.enabled===!0)return i===!0&&this.body.emitter.emit("refresh",!0),r.direction==="RL"||r.direction==="DU"?r.levelSeparation>0&&(r.levelSeparation*=-1):r.levelSeparation<0&&(r.levelSeparation*=-1),this.setDirectionStrategy(),this.body.emitter.emit("_resetHierarchicalLayout"),this.adaptAllOptionsForHierarchicalLayout(t);if(i===!0)return this.body.emitter.emit("refresh"),Me(t,this.optionsBackup)}return t}_resetRNG(e){this.initialRandomSeed=e,this._rng=yI(this.initialRandomSeed)}adaptAllOptionsForHierarchicalLayout(e){if(this.options.hierarchical.enabled===!0){const t=this.optionsBackup.physics;e.physics===void 0||e.physics===!0?(e.physics={enabled:t.enabled===void 0?!0:t.enabled,solver:"hierarchicalRepulsion"},t.enabled=t.enabled===void 0?!0:t.enabled,t.solver=t.solver||"barnesHut"):typeof e.physics=="object"?(t.enabled=e.physics.enabled===void 0?!0:e.physics.enabled,t.solver=e.physics.solver||"barnesHut",e.physics.solver="hierarchicalRepulsion"):e.physics!==!1&&(t.solver="barnesHut",e.physics={solver:"hierarchicalRepulsion"});let r=this.direction.curveType();if(e.edges===void 0)this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},e.edges={smooth:!1};else if(e.edges.smooth===void 0)this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},e.edges.smooth=!1;else if(typeof e.edges.smooth=="boolean")this.optionsBackup.edges={smooth:e.edges.smooth},e.edges.smooth={enabled:e.edges.smooth,type:r};else{const i=e.edges.smooth;i.type!==void 0&&i.type!=="dynamic"&&(r=i.type),this.optionsBackup.edges={smooth:{enabled:i.enabled===void 0?!0:i.enabled,type:i.type===void 0?"dynamic":i.type,roundness:i.roundness===void 0?.5:i.roundness,forceDirection:i.forceDirection===void 0?!1:i.forceDirection}},e.edges.smooth={enabled:i.enabled===void 0?!0:i.enabled,type:r,roundness:i.roundness===void 0?.5:i.roundness,forceDirection:i.forceDirection===void 0?!1:i.forceDirection}}this.body.emitter.emit("_forceDisableDynamicCurves",r)}return e}positionInitially(e){if(this.options.hierarchical.enabled!==!0){this._resetRNG(this.initialRandomSeed);const t=e.length+50;for(let r=0;r<e.length;r++){const i=e[r],o=2*Math.PI*this._rng();i.x===void 0&&(i.x=t*Math.cos(o)),i.y===void 0&&(i.y=t*Math.sin(o))}}}layoutNetwork(){if(this.options.hierarchical.enabled!==!0&&this.options.improvedLayout===!0){const e=this.body.nodeIndices;let t=0;for(let r=0;r<e.length;r++)this.body.nodes[e[r]].predefinedPosition===!0&&(t+=1);if(t<.5*e.length){let i=0;const o=this.options.clusterThreshold,s={clusterNodeProperties:{shape:"ellipse",label:"",group:"",font:{multi:!1}},clusterEdgeProperties:{label:"",font:{multi:!1},smooth:{enabled:!1}}};if(e.length>o){const g=e.length;for(;e.length>o&&i<=10;){i+=1;const A=e.length;i%3===0?this.body.modules.clustering.clusterBridges(s):this.body.modules.clustering.clusterOutliers(s);const I=e.length;if(A==I&&i%3!==0){this._declusterAll(),this.body.emitter.emit("_layoutFailed"),console.info("This network could not be positioned by this version of the improved layout algorithm. Please disable improvedLayout for better performance.");return}}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(e,this.body.edgeIndices,!0),this._shiftToCenter();const a=70;for(let g=0;g<e.length;g++){const A=this.body.nodes[e[g]];A.predefinedPosition===!1&&(A.x+=(.5-this._rng())*a,A.y+=(.5-this._rng())*a)}this._declusterAll(),this.body.emitter.emit("_repositionBezierNodes")}}}_shiftToCenter(){const e=Lt.getRangeCore(this.body.nodes,this.body.nodeIndices),t=Lt.findCenter(e);for(let r=0;r<this.body.nodeIndices.length;r++){const i=this.body.nodes[this.body.nodeIndices[r]];i.x-=t.x,i.y-=t.y}}_declusterAll(){let e=!0;for(;e===!0;){e=!1;for(let t=0;t<this.body.nodeIndices.length;t++)this.body.nodes[this.body.nodeIndices[t]].isCluster===!0&&(e=!0,this.body.modules.clustering.openCluster(this.body.nodeIndices[t],{},!1));e===!0&&this.body.emitter.emit("_dataChanged")}}getSeed(){return this.initialRandomSeed}setupHierarchicalLayout(){if(this.options.hierarchical.enabled===!0&&this.body.nodeIndices.length>0){let e,t,r=!1,i=!1;this.lastNodeOnLevel={},this.hierarchical=new GCe;for(t in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,t)&&(e=this.body.nodes[t],e.options.level!==void 0?(r=!0,this.hierarchical.levels[t]=e.options.level):i=!0);if(i===!0&&r===!0)throw new Error("To use the hierarchical layout, nodes require either no predefined levels or levels have to be defined for all nodes.");{if(i===!0){const s=this.options.hierarchical.sortMethod;s==="hubsize"?this._determineLevelsByHubsize():s==="directed"?this._determineLevelsDirected():s==="custom"&&this._determineLevelsCustomCallback()}for(const s in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,s)&&this.hierarchical.ensureLevel(s);const o=this._getDistribution();this._generateMap(),this._placeNodesByHierarchy(o),this._condenseHierarchy(),this._shiftToCenter()}}}_condenseHierarchy(){var e=this;let t=!1;const r={},i=()=>{const f=s();let c=0;for(let b=0;b<f.length-1;b++){const p=f[b].max-f[b+1].min;c+=p+this.options.hierarchical.treeSpacing,o(b+1,c)}},o=(f,c)=>{const b=this.hierarchical.trees;for(const p in b)Object.prototype.hasOwnProperty.call(b,p)&&b[p]===f&&this.direction.shift(p,c)},s=()=>{const f=[];for(let c=0;c<this.hierarchical.numTrees();c++)f.push(this.direction.getTreeSize(c));return f},a=(f,c)=>{if(!c[f.id]&&(c[f.id]=!0,this.hierarchical.childrenReference[f.id])){const b=this.hierarchical.childrenReference[f.id];if(b.length>0)for(let p=0;p<b.length;p++)a(this.body.nodes[b[p]],c)}},g=function(f){let c=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1e9,b=1e9,p=1e9,y=1e9,E=-1e9;for(const S in f)if(Object.prototype.hasOwnProperty.call(f,S)){const m=e.body.nodes[S],w=e.hierarchical.levels[m.id],_=e.direction.getPosition(m),[T,R]=e._getSpaceAroundNode(m,f);b=Math.min(T,b),p=Math.min(R,p),w<=c&&(y=Math.min(_,y),E=Math.max(_,E))}return[y,E,b,p]},A=(f,c)=>{const b=this.hierarchical.getMaxLevel(f.id),p=this.hierarchical.getMaxLevel(c.id);return Math.min(b,p)},I=(f,c,b)=>{const p=this.hierarchical;for(let y=0;y<c.length;y++){const E=c[y],S=p.distributionOrdering[E];if(S.length>1)for(let m=0;m<S.length-1;m++){const w=S[m],_=S[m+1];p.hasSameParent(w,_)&&p.inSameSubNetwork(w,_)&&f(w,_,b)}}},C=function(f,c){let b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;const p=e.direction.getPosition(f),y=e.direction.getPosition(c),E=Math.abs(y-p),S=e.options.hierarchical.nodeSpacing;if(E>S){const m={},w={};a(f,m),a(c,w);const _=A(f,c),T=g(m,_),R=g(w,_),O=T[1],P=R[0],x=R[2];if(Math.abs(O-P)>S){let M=O-P+S;M<-x+S&&(M=-x+S),M<0&&(e._shiftBlock(c.id,M),t=!0,b===!0&&e._centerParent(c))}}},l=(f,c)=>{const b=c.id,p=c.edges,y=this.hierarchical.levels[c.id],E=this.options.hierarchical.levelSeparation*this.options.hierarchical.levelSeparation,S={},m=[];for(let x=0;x<p.length;x++){const V=p[x];if(V.toId!=V.fromId){const M=V.toId==b?V.from:V.to;S[p[x].id]=M,this.hierarchical.levels[M.id]<y&&m.push(V)}}const w=(x,V)=>{let M=0;for(let U=0;U<V.length;U++)if(S[V[U].id]!==void 0){const K=this.direction.getPosition(S[V[U].id])-x;M+=K/Math.sqrt(K*K+E)}return M},_=(x,V)=>{let M=0;for(let U=0;U<V.length;U++)if(S[V[U].id]!==void 0){const K=this.direction.getPosition(S[V[U].id])-x;M-=E*Math.pow(K*K+E,-1.5)}return M},T=(x,V)=>{let M=this.direction.getPosition(c);const U={};for(let K=0;K<x;K++){const oe=w(M,V),L=_(M,V),ae=40,he=Math.max(-ae,Math.min(ae,Math.round(oe/L)));if(M=M-he,U[M]!==void 0)break;U[M]=K}return M},R=x=>{const V=this.direction.getPosition(c);if(r[c.id]===void 0){const ae={};a(c,ae),r[c.id]=ae}const M=g(r[c.id]),U=M[2],K=M[3],oe=x-V;let L=0;oe>0?L=Math.min(oe,K-this.options.hierarchical.nodeSpacing):oe<0&&(L=-Math.min(-oe,U-this.options.hierarchical.nodeSpacing)),L!=0&&(this._shiftBlock(c.id,L),t=!0)},O=x=>{const V=this.direction.getPosition(c),[M,U]=this._getSpaceAroundNode(c),K=x-V;let oe=V;K>0?oe=Math.min(V+(U-this.options.hierarchical.nodeSpacing),x):K<0&&(oe=Math.max(V-(M-this.options.hierarchical.nodeSpacing),x)),oe!==V&&(this.direction.setPosition(c,oe),t=!0)};let P=T(f,m);R(P),P=T(f,p),O(P)},d=f=>{let c=this.hierarchical.getLevels();c=zn(c).call(c);for(let b=0;b<f;b++){t=!1;for(let p=0;p<c.length;p++){const y=c[p],E=this.hierarchical.distributionOrdering[y];for(let S=0;S<E.length;S++)l(1e3,E[S])}if(t!==!0)break}},u=f=>{let c=this.hierarchical.getLevels();c=zn(c).call(c);for(let b=0;b<f&&(t=!1,I(C,c,!0),t===!0);b++);},h=()=>{for(const f in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,f)&&this._centerParent(this.body.nodes[f])},v=()=>{let f=this.hierarchical.getLevels();f=zn(f).call(f);for(let c=0;c<f.length;c++){const b=f[c],p=this.hierarchical.distributionOrdering[b];for(let y=0;y<p.length;y++)this._centerParent(p[y])}};this.options.hierarchical.blockShifting===!0&&(u(5),h()),this.options.hierarchical.edgeMinimization===!0&&d(20),this.options.hierarchical.parentCentralization===!0&&v(),i()}_getSpaceAroundNode(e,t){let r=!0;t===void 0&&(r=!1);const i=this.hierarchical.levels[e.id];if(i!==void 0){const o=this.hierarchical.distributionIndex[e.id],s=this.direction.getPosition(e),a=this.hierarchical.distributionOrdering[i];let g=1e9,A=1e9;if(o!==0){const I=a[o-1];if(r===!0&&t[I.id]===void 0||r===!1){const C=this.direction.getPosition(I);g=s-C}}if(o!=a.length-1){const I=a[o+1];if(r===!0&&t[I.id]===void 0||r===!1){const C=this.direction.getPosition(I);A=Math.min(A,C-s)}}return[g,A]}else return[0,0]}_centerParent(e){if(this.hierarchical.parentReference[e.id]){const t=this.hierarchical.parentReference[e.id];for(let r=0;r<t.length;r++){const i=t[r],o=this.body.nodes[i],s=this.hierarchical.childrenReference[i];if(s!==void 0){const a=this._getCenterPosition(s),g=this.direction.getPosition(o),[A,I]=this._getSpaceAroundNode(o),C=g-a;(C<0&&Math.abs(C)<I-this.options.hierarchical.nodeSpacing||C>0&&Math.abs(C)<A-this.options.hierarchical.nodeSpacing)&&this.direction.setPosition(o,a)}}}}_placeNodesByHierarchy(e){this.positionedNodes={};for(const r in e)if(Object.prototype.hasOwnProperty.call(e,r)){var t;let i=Be(e[r]);i=this._indexArrayToNodes(i),mi(t=this.direction).call(t,i);let o=0;for(let s=0;s<i.length;s++){const a=i[s];if(this.positionedNodes[a.id]===void 0){const g=this.options.hierarchical.nodeSpacing;let A=g*o;o>0&&(A=this.direction.getPosition(i[s-1])+g),this.direction.setPosition(a,A,r),this._validatePositionAndContinue(a,r,A),o++}}}}_placeBranchNodes(e,t){var r;const i=this.hierarchical.childrenReference[e];if(i===void 0)return;const o=[];for(let a=0;a<i.length;a++)o.push(this.body.nodes[i[a]]);mi(r=this.direction).call(r,o);for(let a=0;a<o.length;a++){const g=o[a],A=this.hierarchical.levels[g.id];if(A>t&&this.positionedNodes[g.id]===void 0){const I=this.options.hierarchical.nodeSpacing;let C;a===0?C=this.direction.getPosition(this.body.nodes[e]):C=this.direction.getPosition(o[a-1])+I,this.direction.setPosition(g,C,A),this._validatePositionAndContinue(g,A,C)}else return}const s=this._getCenterPosition(o);this.direction.setPosition(this.body.nodes[e],s,t)}_validatePositionAndContinue(e,t,r){if(this.hierarchical.isTree){if(this.lastNodeOnLevel[t]!==void 0){const i=this.direction.getPosition(this.body.nodes[this.lastNodeOnLevel[t]]);if(r-i<this.options.hierarchical.nodeSpacing){const o=i+this.options.hierarchical.nodeSpacing-r,s=this._findCommonParent(this.lastNodeOnLevel[t],e.id);this._shiftBlock(s.withChild,o)}}this.lastNodeOnLevel[t]=e.id,this.positionedNodes[e.id]=!0,this._placeBranchNodes(e.id,t)}}_indexArrayToNodes(e){const t=[];for(let r=0;r<e.length;r++)t.push(this.body.nodes[e[r]]);return t}_getDistribution(){const e={};let t,r;for(t in this.body.nodes)if(Object.prototype.hasOwnProperty.call(this.body.nodes,t)){r=this.body.nodes[t];const i=this.hierarchical.levels[t]===void 0?0:this.hierarchical.levels[t];this.direction.fix(r,i),e[i]===void 0&&(e[i]={}),e[i][t]=r}return e}_getActiveEdges(e){const t=[];return de(e.edges,r=>{var i;_e(i=this.body.edgeIndices).call(i,r.id)!==-1&&t.push(r)}),t}_getHubSizes(){const e={},t=this.body.nodeIndices;de(t,i=>{const o=this.body.nodes[i],s=this._getActiveEdges(o).length;e[s]=!0});const r=[];return de(e,i=>{r.push(Number(i))}),mi(r).call(r,function(i,o){return o-i}),r}_determineLevelsByHubsize(){const e=(r,i)=>{this.hierarchical.levelDownstream(r,i)},t=this._getHubSizes();for(let r=0;r<t.length;++r){const i=t[r];if(i===0)break;de(this.body.nodeIndices,o=>{const s=this.body.nodes[o];i===this._getActiveEdges(s).length&&this._crawlNetwork(e,o)})}}_determineLevelsCustomCallback(){const t=function(i,o,s){},r=(i,o,s)=>{let a=this.hierarchical.levels[i.id];a===void 0&&(a=this.hierarchical.levels[i.id]=1e5);const g=t(Lt.cloneOptions(i,"node"),Lt.cloneOptions(o,"node"),Lt.cloneOptions(s,"edge"));this.hierarchical.levels[o.id]=a+g};this._crawlNetwork(r),this.hierarchical.setMinLevelToZero()}_determineLevelsDirected(){var e;const t=cT(e=this.body.nodeIndices).call(e,(r,i)=>(r.set(i,this.body.nodes[i]),r),new bg);this.options.hierarchical.shakeTowards==="roots"?this.hierarchical.levels=LCe(t):this.hierarchical.levels=jCe(t),this.hierarchical.setMinLevelToZero()}_generateMap(){const e=(t,r)=>{this.hierarchical.levels[r.id]>this.hierarchical.levels[t.id]&&this.hierarchical.addRelation(t.id,r.id)};this._crawlNetwork(e),this.hierarchical.checkIfTree()}_crawlNetwork(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(){},t=arguments.length>1?arguments[1]:void 0;const r={},i=(o,s)=>{if(r[o.id]===void 0){this.hierarchical.setTreeIndex(o,s),r[o.id]=!0;let a;const g=this._getActiveEdges(o);for(let A=0;A<g.length;A++){const I=g[A];I.connected===!0&&(I.toId==o.id?a=I.from:a=I.to,o.id!=a.id&&(e(o,a,I),i(a,s)))}}};if(t===void 0){let o=0;for(let s=0;s<this.body.nodeIndices.length;s++){const a=this.body.nodeIndices[s];if(r[a]===void 0){const g=this.body.nodes[a];i(g,o),o+=1}}}else{const o=this.body.nodes[t];if(o===void 0){console.error("Node not found:",t);return}i(o)}}_shiftBlock(e,t){const r={},i=o=>{if(r[o])return;r[o]=!0,this.direction.shift(o,t);const s=this.hierarchical.childrenReference[o];if(s!==void 0)for(let a=0;a<s.length;a++)i(s[a])};i(e)}_findCommonParent(e,t){const r={},i=(s,a)=>{const g=this.hierarchical.parentReference[a];if(g!==void 0)for(let A=0;A<g.length;A++){const I=g[A];s[I]=!0,i(s,I)}},o=(s,a)=>{const g=this.hierarchical.parentReference[a];if(g!==void 0)for(let A=0;A<g.length;A++){const I=g[A];if(s[I]!==void 0)return{foundParent:I,withChild:a};const C=o(s,I);if(C.foundParent!==null)return C}return{foundParent:null,withChild:a}};return i(r,e),o(r,t)}setDirectionStrategy(){this.options.hierarchical.direction==="UD"||this.options.hierarchical.direction==="DU"?this.direction=new $Ce(this):this.direction=new DCe(this)}_getCenterPosition(e){let t=1e9,r=-1e9;for(let i=0;i<e.length;i++){let o;if(e[i].id!==void 0)o=e[i];else{const a=e[i];o=this.body.nodes[a]}const s=this.direction.getPosition(o);t=Math.min(t,s),r=Math.max(r,s)}return .5*(t+r)}},VCe=class{constructor(e,t,r,i){var o,s;this.body=e,this.canvas=t,this.selectionHandler=r,this.interactionHandler=i,this.editMode=!1,this.manipulationDiv=void 0,this.editModeDiv=void 0,this.closeDiv=void 0,this._domEventListenerCleanupQueue=[],this.temporaryUIFunctions={},this.temporaryEventFunctions=[],this.touchTime=0,this.temporaryIds={nodes:[],edges:[]},this.guiEnabled=!1,this.inMode=!1,this.selectedControlNode=void 0,this.options={},this.defaultOptions={enabled:!1,initiallyActive:!1,addNode:!0,addEdge:!0,editNode:void 0,editEdge:!0,deleteNode:!0,deleteEdge:!0,controlNodeStyle:{shape:"dot",size:6,color:{background:"#ff0000",border:"#3c3c3c",highlight:{background:"#07f968",border:"#3c3c3c"}},borderWidth:2,borderWidthSelected:2}},tt(this.options,this.defaultOptions),this.body.emitter.on("destroy",()=>{this._clean()}),this.body.emitter.on("_dataChanged",z(o=this._restore).call(o,this)),this.body.emitter.on("_resetData",z(s=this._restore).call(s,this))}_restore(){this.inMode!==!1&&(this.options.initiallyActive===!0?this.enableEditMode():this.disableEditMode())}setOptions(e,t,r){t!==void 0&&(t.locale!==void 0?this.options.locale=t.locale:this.options.locale=r.locale,t.locales!==void 0?this.options.locales=t.locales:this.options.locales=r.locales),e!==void 0&&(typeof e=="boolean"?this.options.enabled=e:(this.options.enabled=!0,Me(this.options,e)),this.options.initiallyActive===!0&&(this.editMode=!0),this._setup())}toggleEditMode(){this.editMode===!0?this.disableEditMode():this.enableEditMode()}enableEditMode(){this.editMode=!0,this._clean(),this.guiEnabled===!0&&(this.manipulationDiv.style.display="block",this.closeDiv.style.display="block",this.editModeDiv.style.display="none",this.showManipulatorToolbar())}disableEditMode(){this.editMode=!1,this._clean(),this.guiEnabled===!0&&(this.manipulationDiv.style.display="none",this.closeDiv.style.display="none",this.editModeDiv.style.display="block",this._createEditButton())}showManipulatorToolbar(){if(this._clean(),this.manipulationDOM={},this.guiEnabled===!0){var e,t;this.editMode=!0,this.manipulationDiv.style.display="block",this.closeDiv.style.display="block";const r=this.selectionHandler.getSelectedNodeCount(),i=this.selectionHandler.getSelectedEdgeCount(),o=r+i,s=this.options.locales[this.options.locale];let a=!1;this.options.addNode!==!1&&(this._createAddNodeButton(s),a=!0),this.options.addEdge!==!1&&(a===!0?this._createSeperator(1):a=!0,this._createAddEdgeButton(s)),r===1&&typeof this.options.editNode=="function"?(a===!0?this._createSeperator(2):a=!0,this._createEditNodeButton(s)):i===1&&r===0&&this.options.editEdge!==!1&&(a===!0?this._createSeperator(3):a=!0,this._createEditEdgeButton(s)),o!==0&&(r>0&&this.options.deleteNode!==!1?(a===!0&&this._createSeperator(4),this._createDeleteButton(s)):r===0&&this.options.deleteEdge!==!1&&(a===!0&&this._createSeperator(4),this._createDeleteButton(s))),this._bindElementEvents(this.closeDiv,z(e=this.toggleEditMode).call(e,this)),this._temporaryBindEvent("select",z(t=this.showManipulatorToolbar).call(t,this))}this.body.emitter.emit("_redraw")}addNodeMode(){var e;if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="addNode",this.guiEnabled===!0){var t;const r=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(r),this._createSeperator(),this._createDescription(r.addDescription||this.options.locales.en.addDescription),this._bindElementEvents(this.closeDiv,z(t=this.toggleEditMode).call(t,this))}this._temporaryBindEvent("click",z(e=this._performAddNode).call(e,this))}editNode(){this.editMode!==!0&&this.enableEditMode(),this._clean();const e=this.selectionHandler.getSelectedNodes()[0];if(e!==void 0)if(this.inMode="editNode",typeof this.options.editNode=="function")if(e.isCluster!==!0){const t=Me({},e.options,!1);if(t.x=e.x,t.y=e.y,this.options.editNode.length===2)this.options.editNode(t,r=>{r!=null&&this.inMode==="editNode"&&this.body.data.nodes.getDataSet().update(r),this.showManipulatorToolbar()});else throw new Error("The function for edit does not support two arguments (data, callback)")}else alert(this.options.locales[this.options.locale].editClusterError||this.options.locales.en.editClusterError);else throw new Error("No function has been configured to handle the editing of nodes.");else this.showManipulatorToolbar()}addEdgeMode(){var e,t,r,i,o;if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="addEdge",this.guiEnabled===!0){var s;const a=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(a),this._createSeperator(),this._createDescription(a.edgeDescription||this.options.locales.en.edgeDescription),this._bindElementEvents(this.closeDiv,z(s=this.toggleEditMode).call(s,this))}this._temporaryBindUI("onTouch",z(e=this._handleConnect).call(e,this)),this._temporaryBindUI("onDragEnd",z(t=this._finishConnect).call(t,this)),this._temporaryBindUI("onDrag",z(r=this._dragControlNode).call(r,this)),this._temporaryBindUI("onRelease",z(i=this._finishConnect).call(i,this)),this._temporaryBindUI("onDragStart",z(o=this._dragStartEdge).call(o,this)),this._temporaryBindUI("onHold",()=>{})}editEdgeMode(){if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="editEdge",typeof this.options.editEdge=="object"&&typeof this.options.editEdge.editWithoutDrag=="function"&&(this.edgeBeingEditedId=this.selectionHandler.getSelectedEdgeIds()[0],this.edgeBeingEditedId!==void 0)){const s=this.body.edges[this.edgeBeingEditedId];this._performEditEdge(s.from.id,s.to.id);return}if(this.guiEnabled===!0){var e;const s=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(s),this._createSeperator(),this._createDescription(s.editEdgeDescription||this.options.locales.en.editEdgeDescription),this._bindElementEvents(this.closeDiv,z(e=this.toggleEditMode).call(e,this))}if(this.edgeBeingEditedId=this.selectionHandler.getSelectedEdgeIds()[0],this.edgeBeingEditedId!==void 0){var t,r,i,o;const s=this.body.edges[this.edgeBeingEditedId],a=this._getNewTargetNode(s.from.x,s.from.y),g=this._getNewTargetNode(s.to.x,s.to.y);this.temporaryIds.nodes.push(a.id),this.temporaryIds.nodes.push(g.id),this.body.nodes[a.id]=a,this.body.nodeIndices.push(a.id),this.body.nodes[g.id]=g,this.body.nodeIndices.push(g.id),this._temporaryBindUI("onTouch",z(t=this._controlNodeTouch).call(t,this)),this._temporaryBindUI("onTap",()=>{}),this._temporaryBindUI("onHold",()=>{}),this._temporaryBindUI("onDragStart",z(r=this._controlNodeDragStart).call(r,this)),this._temporaryBindUI("onDrag",z(i=this._controlNodeDrag).call(i,this)),this._temporaryBindUI("onDragEnd",z(o=this._controlNodeDragEnd).call(o,this)),this._temporaryBindUI("onMouseMove",()=>{}),this._temporaryBindEvent("beforeDrawing",A=>{const I=s.edgeType.findBorderPositions(A);a.selected===!1&&(a.x=I.from.x,a.y=I.from.y),g.selected===!1&&(g.x=I.to.x,g.y=I.to.y)}),this.body.emitter.emit("_redraw")}else this.showManipulatorToolbar()}deleteSelected(){this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="delete";const e=this.selectionHandler.getSelectedNodeIds(),t=this.selectionHandler.getSelectedEdgeIds();let r;if(e.length>0){for(let i=0;i<e.length;i++)if(this.body.nodes[e[i]].isCluster===!0){alert(this.options.locales[this.options.locale].deleteClusterError||this.options.locales.en.deleteClusterError);return}typeof this.options.deleteNode=="function"&&(r=this.options.deleteNode)}else t.length>0&&typeof this.options.deleteEdge=="function"&&(r=this.options.deleteEdge);if(typeof r=="function"){const i={nodes:e,edges:t};if(r.length===2)r(i,o=>{o!=null&&this.inMode==="delete"?(this.body.data.edges.getDataSet().remove(o.edges),this.body.data.nodes.getDataSet().remove(o.nodes),this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar()):(this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar())});else throw new Error("The function for delete does not support two arguments (data, callback)")}else this.body.data.edges.getDataSet().remove(t),this.body.data.nodes.getDataSet().remove(e),this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar()}_setup(){this.options.enabled===!0?(this.guiEnabled=!0,this._createWrappers(),this.editMode===!1?this._createEditButton():this.showManipulatorToolbar()):(this._removeManipulationDOM(),this.guiEnabled=!1)}_createWrappers(){if(this.manipulationDiv===void 0&&(this.manipulationDiv=document.createElement("div"),this.manipulationDiv.className="vis-manipulation",this.editMode===!0?this.manipulationDiv.style.display="block":this.manipulationDiv.style.display="none",this.canvas.frame.appendChild(this.manipulationDiv)),this.editModeDiv===void 0&&(this.editModeDiv=document.createElement("div"),this.editModeDiv.className="vis-edit-mode",this.editMode===!0?this.editModeDiv.style.display="none":this.editModeDiv.style.display="block",this.canvas.frame.appendChild(this.editModeDiv)),this.closeDiv===void 0){var e,t;this.closeDiv=document.createElement("button"),this.closeDiv.className="vis-close",this.closeDiv.setAttribute("aria-label",(e=(t=this.options.locales[this.options.locale])===null||t===void 0?void 0:t.close)!==null&&e!==void 0?e:this.options.locales.en.close),this.closeDiv.style.display=this.manipulationDiv.style.display,this.canvas.frame.appendChild(this.closeDiv)}}_getNewTargetNode(e,t){const r=Me({},this.options.controlNodeStyle);r.id="targetNode"+is(),r.hidden=!1,r.physics=!1,r.x=e,r.y=t;const i=this.body.functions.createNode(r);return i.shape.boundingBox={left:e,right:e,top:t,bottom:t},i}_createEditButton(){var e;this._clean(),this.manipulationDOM={},Ki(this.editModeDiv);const t=this.options.locales[this.options.locale],r=this._createButton("editMode","vis-edit vis-edit-mode",t.edit||this.options.locales.en.edit);this.editModeDiv.appendChild(r),this._bindElementEvents(r,z(e=this.toggleEditMode).call(e,this))}_clean(){this.inMode=!1,this.guiEnabled===!0&&(Ki(this.editModeDiv),Ki(this.manipulationDiv),this._cleanupDOMEventListeners()),this._cleanupTemporaryNodesAndEdges(),this._unbindTemporaryUIs(),this._unbindTemporaryEvents(),this.body.emitter.emit("restorePhysics")}_cleanupDOMEventListeners(){for(const t of ti(e=this._domEventListenerCleanupQueue).call(e,0)){var e;t()}}_removeManipulationDOM(){this._clean(),Ki(this.manipulationDiv),Ki(this.editModeDiv),Ki(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}_createSeperator(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:1;this.manipulationDOM["seperatorLineDiv"+e]=document.createElement("div"),this.manipulationDOM["seperatorLineDiv"+e].className="vis-separator-line",this.manipulationDiv.appendChild(this.manipulationDOM["seperatorLineDiv"+e])}_createAddNodeButton(e){var t;const r=this._createButton("addNode","vis-add",e.addNode||this.options.locales.en.addNode);this.manipulationDiv.appendChild(r),this._bindElementEvents(r,z(t=this.addNodeMode).call(t,this))}_createAddEdgeButton(e){var t;const r=this._createButton("addEdge","vis-connect",e.addEdge||this.options.locales.en.addEdge);this.manipulationDiv.appendChild(r),this._bindElementEvents(r,z(t=this.addEdgeMode).call(t,this))}_createEditNodeButton(e){var t;const r=this._createButton("editNode","vis-edit",e.editNode||this.options.locales.en.editNode);this.manipulationDiv.appendChild(r),this._bindElementEvents(r,z(t=this.editNode).call(t,this))}_createEditEdgeButton(e){var t;const r=this._createButton("editEdge","vis-edit",e.editEdge||this.options.locales.en.editEdge);this.manipulationDiv.appendChild(r),this._bindElementEvents(r,z(t=this.editEdgeMode).call(t,this))}_createDeleteButton(e){var t;let r;this.options.rtl?r="vis-delete-rtl":r="vis-delete";const i=this._createButton("delete",r,e.del||this.options.locales.en.del);this.manipulationDiv.appendChild(i),this._bindElementEvents(i,z(t=this.deleteSelected).call(t,this))}_createBackButton(e){var t;const r=this._createButton("back","vis-back",e.back||this.options.locales.en.back);this.manipulationDiv.appendChild(r),this._bindElementEvents(r,z(t=this.showManipulatorToolbar).call(t,this))}_createButton(e,t,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"vis-label";return this.manipulationDOM[e+"Div"]=document.createElement("button"),this.manipulationDOM[e+"Div"].className="vis-button "+t,this.manipulationDOM[e+"Label"]=document.createElement("div"),this.manipulationDOM[e+"Label"].className=i,this.manipulationDOM[e+"Label"].innerText=r,this.manipulationDOM[e+"Div"].appendChild(this.manipulationDOM[e+"Label"]),this.manipulationDOM[e+"Div"]}_createDescription(e){this.manipulationDOM.descriptionLabel=document.createElement("div"),this.manipulationDOM.descriptionLabel.className="vis-none",this.manipulationDOM.descriptionLabel.innerText=e,this.manipulationDiv.appendChild(this.manipulationDOM.descriptionLabel)}_temporaryBindEvent(e,t){this.temporaryEventFunctions.push({event:e,boundFunction:t}),this.body.emitter.on(e,t)}_temporaryBindUI(e,t){if(this.body.eventListeners[e]!==void 0)this.temporaryUIFunctions[e]=this.body.eventListeners[e],this.body.eventListeners[e]=t;else throw new Error("This UI function does not exist. Typo? You tried: "+e+" possible are: "+ks(Be(this.body.eventListeners)))}_unbindTemporaryUIs(){for(const e in this.temporaryUIFunctions)Object.prototype.hasOwnProperty.call(this.temporaryUIFunctions,e)&&(this.body.eventListeners[e]=this.temporaryUIFunctions[e],delete this.temporaryUIFunctions[e]);this.temporaryUIFunctions={}}_unbindTemporaryEvents(){for(let e=0;e<this.temporaryEventFunctions.length;e++){const t=this.temporaryEventFunctions[e].event,r=this.temporaryEventFunctions[e].boundFunction;this.body.emitter.off(t,r)}this.temporaryEventFunctions=[]}_bindElementEvents(e,t){const r=new rs(e,{});WA(r,t),this._domEventListenerCleanupQueue.push(()=>{r.destroy()});const i=o=>{let{keyCode:s,key:a}=o;(a==="Enter"||a===" "||s===13||s===32)&&t()};e.addEventListener("keyup",i,!1),this._domEventListenerCleanupQueue.push(()=>{e.removeEventListener("keyup",i,!1)})}_cleanupTemporaryNodesAndEdges(){for(let o=0;o<this.temporaryIds.edges.length;o++){var e;this.body.edges[this.temporaryIds.edges[o]].disconnect(),delete this.body.edges[this.temporaryIds.edges[o]];const s=_e(e=this.body.edgeIndices).call(e,this.temporaryIds.edges[o]);if(s!==-1){var t;ti(t=this.body.edgeIndices).call(t,s,1)}}for(let o=0;o<this.temporaryIds.nodes.length;o++){var r;delete this.body.nodes[this.temporaryIds.nodes[o]];const s=_e(r=this.body.nodeIndices).call(r,this.temporaryIds.nodes[o]);if(s!==-1){var i;ti(i=this.body.nodeIndices).call(i,s,1)}}this.temporaryIds={nodes:[],edges:[]}}_controlNodeTouch(e){this.selectionHandler.unselectAll(),this.lastTouch=this.body.functions.getPointer(e.center),this.lastTouch.translation=tt({},this.body.view.translation)}_controlNodeDragStart(){const e=this.lastTouch,t=this.selectionHandler._pointerToPositionObject(e),r=this.body.nodes[this.temporaryIds.nodes[0]],i=this.body.nodes[this.temporaryIds.nodes[1]],o=this.body.edges[this.edgeBeingEditedId];this.selectedControlNode=void 0;const s=r.isOverlappingWith(t),a=i.isOverlappingWith(t);s===!0?(this.selectedControlNode=r,o.edgeType.from=r):a===!0&&(this.selectedControlNode=i,o.edgeType.to=i),this.selectedControlNode!==void 0&&this.selectionHandler.selectObject(this.selectedControlNode),this.body.emitter.emit("_redraw")}_controlNodeDrag(e){this.body.emitter.emit("disablePhysics");const t=this.body.functions.getPointer(e.center),r=this.canvas.DOMtoCanvas(t);this.selectedControlNode!==void 0?(this.selectedControlNode.x=r.x,this.selectedControlNode.y=r.y):this.interactionHandler.onDrag(e),this.body.emitter.emit("_redraw")}_controlNodeDragEnd(e){const t=this.body.functions.getPointer(e.center),r=this.selectionHandler._pointerToPositionObject(t),i=this.body.edges[this.edgeBeingEditedId];if(this.selectedControlNode===void 0)return;this.selectionHandler.unselectAll();const o=this.selectionHandler._getAllNodesOverlappingWith(r);let s;for(let a=o.length-1;a>=0;a--)if(o[a]!==this.selectedControlNode.id){s=this.body.nodes[o[a]];break}if(s!==void 0&&this.selectedControlNode!==void 0)if(s.isCluster===!0)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{const a=this.body.nodes[this.temporaryIds.nodes[0]];this.selectedControlNode.id===a.id?this._performEditEdge(s.id,i.to.id):this._performEditEdge(i.from.id,s.id)}else i.updateEdgeType(),this.body.emitter.emit("restorePhysics");this.body.emitter.emit("_redraw")}_handleConnect(e){if(new Date().valueOf()-this.touchTime>100){this.lastTouch=this.body.functions.getPointer(e.center),this.lastTouch.translation=tt({},this.body.view.translation),this.interactionHandler.drag.pointer=this.lastTouch,this.interactionHandler.drag.translation=this.lastTouch.translation;const t=this.lastTouch,r=this.selectionHandler.getNodeAt(t);if(r!==void 0)if(r.isCluster===!0)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{const i=this._getNewTargetNode(r.x,r.y);this.body.nodes[i.id]=i,this.body.nodeIndices.push(i.id);const o=this.body.functions.createEdge({id:"connectionEdge"+is(),from:r.id,to:i.id,physics:!1,smooth:{enabled:!0,type:"continuous",roundness:.5}});this.body.edges[o.id]=o,this.body.edgeIndices.push(o.id),this.temporaryIds.nodes.push(i.id),this.temporaryIds.edges.push(o.id)}this.touchTime=new Date().valueOf()}}_dragControlNode(e){const t=this.body.functions.getPointer(e.center),r=this.selectionHandler._pointerToPositionObject(t);let i;this.temporaryIds.edges[0]!==void 0&&(i=this.body.edges[this.temporaryIds.edges[0]].fromId);const o=this.selectionHandler._getAllNodesOverlappingWith(r);let s;for(let g=o.length-1;g>=0;g--){var a;if(_e(a=this.temporaryIds.nodes).call(a,o[g])===-1){s=this.body.nodes[o[g]];break}}if(e.controlEdge={from:i,to:s?s.id:void 0},this.selectionHandler.generateClickEvent("controlNodeDragging",e,t),this.temporaryIds.nodes[0]!==void 0){const g=this.body.nodes[this.temporaryIds.nodes[0]];g.x=this.canvas._XconvertDOMtoCanvas(t.x),g.y=this.canvas._YconvertDOMtoCanvas(t.y),this.body.emitter.emit("_redraw")}else this.interactionHandler.onDrag(e)}_finishConnect(e){const t=this.body.functions.getPointer(e.center),r=this.selectionHandler._pointerToPositionObject(t);let i;this.temporaryIds.edges[0]!==void 0&&(i=this.body.edges[this.temporaryIds.edges[0]].fromId);const o=this.selectionHandler._getAllNodesOverlappingWith(r);let s;for(let g=o.length-1;g>=0;g--){var a;if(_e(a=this.temporaryIds.nodes).call(a,o[g])===-1){s=this.body.nodes[o[g]];break}}this._cleanupTemporaryNodesAndEdges(),s!==void 0&&(s.isCluster===!0?alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError):this.body.nodes[i]!==void 0&&this.body.nodes[s.id]!==void 0&&this._performAddEdge(i,s.id)),e.controlEdge={from:i,to:s?s.id:void 0},this.selectionHandler.generateClickEvent("controlNodeDragEnd",e,t),this.body.emitter.emit("_redraw")}_dragStartEdge(e){const t=this.lastTouch;this.selectionHandler.generateClickEvent("dragStart",e,t,void 0,!0)}_performAddNode(e){const t={id:is(),x:e.pointer.canvas.x,y:e.pointer.canvas.y,label:"new"};if(typeof this.options.addNode=="function")if(this.options.addNode.length===2)this.options.addNode(t,r=>{r!=null&&this.inMode==="addNode"&&this.body.data.nodes.getDataSet().add(r),this.showManipulatorToolbar()});else throw this.showManipulatorToolbar(),new Error("The function for add does not support two arguments (data,callback)");else this.body.data.nodes.getDataSet().add(t),this.showManipulatorToolbar()}_performAddEdge(e,t){const r={from:e,to:t};if(typeof this.options.addEdge=="function")if(this.options.addEdge.length===2)this.options.addEdge(r,i=>{i!=null&&this.inMode==="addEdge"&&(this.body.data.edges.getDataSet().add(i),this.selectionHandler.unselectAll(),this.showManipulatorToolbar())});else throw new Error("The function for connect does not support two arguments (data,callback)");else this.body.data.edges.getDataSet().add(r),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}_performEditEdge(e,t){const r={id:this.edgeBeingEditedId,from:e,to:t,label:this.body.data.edges.get(this.edgeBeingEditedId).label};let i=this.options.editEdge;if(typeof i=="object"&&(i=i.editWithoutDrag),typeof i=="function")if(i.length===2)i(r,o=>{o==null||this.inMode!=="editEdge"?(this.body.edges[r.id].updateEdgeType(),this.body.emitter.emit("_redraw"),this.showManipulatorToolbar()):(this.body.data.edges.getDataSet().update(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar())});else throw new Error("The function for edit does not support two arguments (data, callback)");else this.body.data.edges.getDataSet().update(r),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}};const G="string",k="boolean",$="number",Ta="array",Q="object",w7="dom",ZCe="any",$f=["arrow","bar","box","circle","crow","curve","diamond","image","inv_curve","inv_triangle","triangle","vee"],Df={borderWidth:{number:$},borderWidthSelected:{number:$,undefined:"undefined"},brokenImage:{string:G,undefined:"undefined"},chosen:{label:{boolean:k,function:"function"},node:{boolean:k,function:"function"},__type__:{object:Q,boolean:k}},color:{border:{string:G},background:{string:G},highlight:{border:{string:G},background:{string:G},__type__:{object:Q,string:G}},hover:{border:{string:G},background:{string:G},__type__:{object:Q,string:G}},__type__:{object:Q,string:G}},opacity:{number:$,undefined:"undefined"},fixed:{x:{boolean:k},y:{boolean:k},__type__:{object:Q,boolean:k}},font:{align:{string:G},color:{string:G},size:{number:$},face:{string:G},background:{string:G},strokeWidth:{number:$},strokeColor:{string:G},vadjust:{number:$},multi:{boolean:k,string:G},bold:{color:{string:G},size:{number:$},face:{string:G},mod:{string:G},vadjust:{number:$},__type__:{object:Q,string:G}},boldital:{color:{string:G},size:{number:$},face:{string:G},mod:{string:G},vadjust:{number:$},__type__:{object:Q,string:G}},ital:{color:{string:G},size:{number:$},face:{string:G},mod:{string:G},vadjust:{number:$},__type__:{object:Q,string:G}},mono:{color:{string:G},size:{number:$},face:{string:G},mod:{string:G},vadjust:{number:$},__type__:{object:Q,string:G}},__type__:{object:Q,string:G}},group:{string:G,number:$,undefined:"undefined"},heightConstraint:{minimum:{number:$},valign:{string:G},__type__:{object:Q,boolean:k,number:$}},hidden:{boolean:k},icon:{face:{string:G},code:{string:G},size:{number:$},color:{string:G},weight:{string:G,number:$},__type__:{object:Q}},id:{string:G,number:$},image:{selected:{string:G,undefined:"undefined"},unselected:{string:G,undefined:"undefined"},__type__:{object:Q,string:G}},imagePadding:{top:{number:$},right:{number:$},bottom:{number:$},left:{number:$},__type__:{object:Q,number:$}},label:{string:G,undefined:"undefined"},labelHighlightBold:{boolean:k},level:{number:$,undefined:"undefined"},margin:{top:{number:$},right:{number:$},bottom:{number:$},left:{number:$},__type__:{object:Q,number:$}},mass:{number:$},physics:{boolean:k},scaling:{min:{number:$},max:{number:$},label:{enabled:{boolean:k},min:{number:$},max:{number:$},maxVisible:{number:$},drawThreshold:{number:$},__type__:{object:Q,boolean:k}},customScalingFunction:{function:"function"},__type__:{object:Q}},shadow:{enabled:{boolean:k},color:{string:G},size:{number:$},x:{number:$},y:{number:$},__type__:{object:Q,boolean:k}},shape:{string:["custom","ellipse","circle","database","box","text","image","circularImage","diamond","dot","star","triangle","triangleDown","square","icon","hexagon"]},ctxRenderer:{function:"function"},shapeProperties:{borderDashes:{boolean:k,array:Ta},borderRadius:{number:$},interpolation:{boolean:k},useImageSize:{boolean:k},useBorderWithImage:{boolean:k},coordinateOrigin:{string:["center","top-left"]},__type__:{object:Q}},size:{number:$},title:{string:G,dom:w7,undefined:"undefined"},value:{number:$,undefined:"undefined"},widthConstraint:{minimum:{number:$},maximum:{number:$},__type__:{object:Q,boolean:k,number:$}},x:{number:$},y:{number:$},__type__:{object:Q}},HCe={configure:{enabled:{boolean:k},filter:{boolean:k,string:G,array:Ta,function:"function"},container:{dom:w7},showButton:{boolean:k},__type__:{object:Q,boolean:k,string:G,array:Ta,function:"function"}},edges:{arrows:{to:{enabled:{boolean:k},scaleFactor:{number:$},type:{string:$f},imageHeight:{number:$},imageWidth:{number:$},src:{string:G},__type__:{object:Q,boolean:k}},middle:{enabled:{boolean:k},scaleFactor:{number:$},type:{string:$f},imageWidth:{number:$},imageHeight:{number:$},src:{string:G},__type__:{object:Q,boolean:k}},from:{enabled:{boolean:k},scaleFactor:{number:$},type:{string:$f},imageWidth:{number:$},imageHeight:{number:$},src:{string:G},__type__:{object:Q,boolean:k}},__type__:{string:["from","to","middle"],object:Q}},endPointOffset:{from:{number:$},to:{number:$},__type__:{object:Q,number:$}},arrowStrikethrough:{boolean:k},background:{enabled:{boolean:k},color:{string:G},size:{number:$},dashes:{boolean:k,array:Ta},__type__:{object:Q,boolean:k}},chosen:{label:{boolean:k,function:"function"},edge:{boolean:k,function:"function"},__type__:{object:Q,boolean:k}},color:{color:{string:G},highlight:{string:G},hover:{string:G},inherit:{string:["from","to","both"],boolean:k},opacity:{number:$},__type__:{object:Q,string:G}},dashes:{boolean:k,array:Ta},font:{color:{string:G},size:{number:$},face:{string:G},background:{string:G},strokeWidth:{number:$},strokeColor:{string:G},align:{string:["horizontal","top","middle","bottom"]},vadjust:{number:$},multi:{boolean:k,string:G},bold:{color:{string:G},size:{number:$},face:{string:G},mod:{string:G},vadjust:{number:$},__type__:{object:Q,string:G}},boldital:{color:{string:G},size:{number:$},face:{string:G},mod:{string:G},vadjust:{number:$},__type__:{object:Q,string:G}},ital:{color:{string:G},size:{number:$},face:{string:G},mod:{string:G},vadjust:{number:$},__type__:{object:Q,string:G}},mono:{color:{string:G},size:{number:$},face:{string:G},mod:{string:G},vadjust:{number:$},__type__:{object:Q,string:G}},__type__:{object:Q,string:G}},hidden:{boolean:k},hoverWidth:{function:"function",number:$},label:{string:G,undefined:"undefined"},labelHighlightBold:{boolean:k},length:{number:$,undefined:"undefined"},physics:{boolean:k},scaling:{min:{number:$},max:{number:$},label:{enabled:{boolean:k},min:{number:$},max:{number:$},maxVisible:{number:$},drawThreshold:{number:$},__type__:{object:Q,boolean:k}},customScalingFunction:{function:"function"},__type__:{object:Q}},selectionWidth:{function:"function",number:$},selfReferenceSize:{number:$},selfReference:{size:{number:$},angle:{number:$},renderBehindTheNode:{boolean:k},__type__:{object:Q}},shadow:{enabled:{boolean:k},color:{string:G},size:{number:$},x:{number:$},y:{number:$},__type__:{object:Q,boolean:k}},smooth:{enabled:{boolean:k},type:{string:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW","cubicBezier"]},roundness:{number:$},forceDirection:{string:["horizontal","vertical","none"],boolean:k},__type__:{object:Q,boolean:k}},title:{string:G,undefined:"undefined"},width:{number:$},widthConstraint:{maximum:{number:$},__type__:{object:Q,boolean:k,number:$}},value:{number:$,undefined:"undefined"},__type__:{object:Q}},groups:{useDefaultGroups:{boolean:k},__any__:Df,__type__:{object:Q}},interaction:{dragNodes:{boolean:k},dragView:{boolean:k},hideEdgesOnDrag:{boolean:k},hideEdgesOnZoom:{boolean:k},hideNodesOnDrag:{boolean:k},hover:{boolean:k},keyboard:{enabled:{boolean:k},speed:{x:{number:$},y:{number:$},zoom:{number:$},__type__:{object:Q}},bindToWindow:{boolean:k},autoFocus:{boolean:k},__type__:{object:Q,boolean:k}},multiselect:{boolean:k},navigationButtons:{boolean:k},selectable:{boolean:k},selectConnectedEdges:{boolean:k},hoverConnectedEdges:{boolean:k},tooltipDelay:{number:$},zoomView:{boolean:k},zoomSpeed:{number:$},__type__:{object:Q}},layout:{randomSeed:{undefined:"undefined",number:$,string:G},improvedLayout:{boolean:k},clusterThreshold:{number:$},hierarchical:{enabled:{boolean:k},levelSeparation:{number:$},nodeSpacing:{number:$},treeSpacing:{number:$},blockShifting:{boolean:k},edgeMinimization:{boolean:k},parentCentralization:{boolean:k},direction:{string:["UD","DU","LR","RL"]},sortMethod:{string:["hubsize","directed"]},shakeTowards:{string:["leaves","roots"]},__type__:{object:Q,boolean:k}},__type__:{object:Q}},manipulation:{enabled:{boolean:k},initiallyActive:{boolean:k},addNode:{boolean:k,function:"function"},addEdge:{boolean:k,function:"function"},editNode:{function:"function"},editEdge:{editWithoutDrag:{function:"function"},__type__:{object:Q,boolean:k,function:"function"}},deleteNode:{boolean:k,function:"function"},deleteEdge:{boolean:k,function:"function"},controlNodeStyle:Df,__type__:{object:Q,boolean:k}},nodes:Df,physics:{enabled:{boolean:k},barnesHut:{theta:{number:$},gravitationalConstant:{number:$},centralGravity:{number:$},springLength:{number:$},springConstant:{number:$},damping:{number:$},avoidOverlap:{number:$},__type__:{object:Q}},forceAtlas2Based:{theta:{number:$},gravitationalConstant:{number:$},centralGravity:{number:$},springLength:{number:$},springConstant:{number:$},damping:{number:$},avoidOverlap:{number:$},__type__:{object:Q}},repulsion:{centralGravity:{number:$},springLength:{number:$},springConstant:{number:$},nodeDistance:{number:$},damping:{number:$},__type__:{object:Q}},hierarchicalRepulsion:{centralGravity:{number:$},springLength:{number:$},springConstant:{number:$},nodeDistance:{number:$},damping:{number:$},avoidOverlap:{number:$},__type__:{object:Q}},maxVelocity:{number:$},minVelocity:{number:$},solver:{string:["barnesHut","repulsion","hierarchicalRepulsion","forceAtlas2Based"]},stabilization:{enabled:{boolean:k},iterations:{number:$},updateInterval:{number:$},onlyDynamicEdges:{boolean:k},fit:{boolean:k},__type__:{object:Q,boolean:k}},timestep:{number:$},adaptiveTimestep:{boolean:k},wind:{x:{number:$},y:{number:$},__type__:{object:Q}},__type__:{object:Q,boolean:k}},autoResize:{boolean:k},clickToUse:{boolean:k},locale:{string:G},locales:{__any__:{any:ZCe},__type__:{object:Q}},height:{string:G},width:{string:G},__type__:{object:Q}},E7={nodes:{borderWidth:[1,0,10,1],borderWidthSelected:[2,0,10,1],color:{border:["color","#2B7CE9"],background:["color","#97C2FC"],highlight:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]},hover:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]}},opacity:[0,0,1,.1],fixed:{x:!1,y:!1},font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[0,0,50,1],strokeColor:["color","#ffffff"]},hidden:!1,labelHighlightBold:!0,physics:!0,scaling:{min:[10,0,200,1],max:[30,0,200,1],label:{enabled:!1,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},shape:["ellipse","box","circle","database","diamond","dot","square","star","text","triangle","triangleDown","hexagon"],shapeProperties:{borderDashes:!1,borderRadius:[6,0,20,1],interpolation:!0,useImageSize:!1},size:[25,0,200,1]},edges:{arrows:{to:{enabled:!1,scaleFactor:[1,0,3,.05],type:"arrow"},middle:{enabled:!1,scaleFactor:[1,0,3,.05],type:"arrow"},from:{enabled:!1,scaleFactor:[1,0,3,.05],type:"arrow"}},endPointOffset:{from:[0,-10,10,1],to:[0,-10,10,1]},arrowStrikethrough:!0,color:{color:["color","#848484"],highlight:["color","#848484"],hover:["color","#848484"],inherit:["from","to","both",!0,!1],opacity:[1,0,1,.05]},dashes:!1,font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[2,0,50,1],strokeColor:["color","#ffffff"],align:["horizontal","top","middle","bottom"]},hidden:!1,hoverWidth:[1.5,0,5,.1],labelHighlightBold:!0,physics:!0,scaling:{min:[1,0,100,1],max:[15,0,100,1],label:{enabled:!0,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},selectionWidth:[1.5,0,5,.1],selfReferenceSize:[20,0,200,1],selfReference:{size:[20,0,200,1],angle:[Math.PI/2,-6*Math.PI,6*Math.PI,Math.PI/8],renderBehindTheNode:!0},shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},smooth:{enabled:!0,type:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW","cubicBezier"],forceDirection:["horizontal","vertical","none"],roundness:[.5,0,1,.05]},width:[1,0,30,1]},layout:{hierarchical:{enabled:!1,levelSeparation:[150,20,500,5],nodeSpacing:[100,20,500,5],treeSpacing:[200,20,500,5],blockShifting:!0,edgeMinimization:!0,parentCentralization:!0,direction:["UD","DU","LR","RL"],sortMethod:["hubsize","directed"],shakeTowards:["leaves","roots"]}},interaction:{dragNodes:!0,dragView:!0,hideEdgesOnDrag:!1,hideEdgesOnZoom:!1,hideNodesOnDrag:!1,hover:!1,keyboard:{enabled:!1,speed:{x:[10,0,40,1],y:[10,0,40,1],zoom:[.02,0,.1,.005]},bindToWindow:!0,autoFocus:!0},multiselect:!1,navigationButtons:!1,selectable:!0,selectConnectedEdges:!0,hoverConnectedEdges:!0,tooltipDelay:[300,0,1e3,25],zoomView:!0,zoomSpeed:[1,.1,2,.1]},manipulation:{enabled:!1,initiallyActive:!1},physics:{enabled:!0,barnesHut:{theta:[.5,.1,1,.05],gravitationalConstant:[-2e3,-3e4,0,50],centralGravity:[.3,0,10,.05],springLength:[95,0,500,5],springConstant:[.04,0,1.2,.005],damping:[.09,0,1,.01],avoidOverlap:[0,0,1,.01]},forceAtlas2Based:{theta:[.5,.1,1,.05],gravitationalConstant:[-50,-500,0,1],centralGravity:[.01,0,1,.005],springLength:[95,0,500,5],springConstant:[.08,0,1.2,.005],damping:[.4,0,1,.01],avoidOverlap:[0,0,1,.01]},repulsion:{centralGravity:[.2,0,10,.05],springLength:[200,0,500,5],springConstant:[.05,0,1.2,.005],nodeDistance:[100,0,500,5],damping:[.09,0,1,.01]},hierarchicalRepulsion:{centralGravity:[.2,0,10,.05],springLength:[100,0,500,5],springConstant:[.01,0,1.2,.005],nodeDistance:[120,0,500,5],damping:[.09,0,1,.01],avoidOverlap:[0,0,1,.01]},maxVelocity:[50,0,150,1],minVelocity:[.1,.01,.5,.01],solver:["barnesHut","forceAtlas2Based","repulsion","hierarchicalRepulsion"],timestep:[.5,.01,1,.01],wind:{x:[0,-10,10,.1],y:[0,-10,10,.1]}}},UCe=(n,e,t)=>{var r;return!!(rn(n).call(n,"physics")&&rn(r=E7.physics.solver).call(r,e)&&t.physics.solver!==e&&e!=="wind")};let KCe=class{constructor(){}getDistances(e,t,r){const i={},o=e.edges;for(let a=0;a<t.length;a++){const g=t[a],A={};i[g]=A;for(let I=0;I<t.length;I++)A[t[I]]=a==I?0:1e9}for(let a=0;a<r.length;a++){const g=o[r[a]];g.connected===!0&&i[g.fromId]!==void 0&&i[g.toId]!==void 0&&(i[g.fromId][g.toId]=1,i[g.toId][g.fromId]=1)}const s=t.length;for(let a=0;a<s;a++){const g=t[a],A=i[g];for(let I=0;I<s-1;I++){const C=t[I],l=i[C];for(let d=I+1;d<s;d++){const u=t[d],h=i[u],v=Math.min(l[u],l[g]+A[u]);l[u]=v,h[C]=v}}}return i}},YCe=class{constructor(e,t,r){this.body=e,this.springLength=t,this.springConstant=r,this.distanceSolver=new KCe}setOptions(e){e&&(e.springLength&&(this.springLength=e.springLength),e.springConstant&&(this.springConstant=e.springConstant))}solve(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;const i=this.distanceSolver.getDistances(this.body,e,t);this._createL_matrix(i),this._createK_matrix(i),this._createE_matrix();const o=.01,s=1;let a=0;const g=Math.max(1e3,Math.min(10*this.body.nodeIndices.length,6e3)),A=5;let I=1e9,C=0,l=0,d=0,u=0,h=0;for(;I>o&&a<g;)for(a+=1,[C,I,l,d]=this._getHighestEnergyNode(r),u=I,h=0;u>s&&h<A;)h+=1,this._moveNode(C,l,d),[u,l,d]=this._getEnergy(C)}_getHighestEnergyNode(e){const t=this.body.nodeIndices,r=this.body.nodes;let i=0,o=t[0],s=0,a=0;for(let g=0;g<t.length;g++){const A=t[g];if(r[A].predefinedPosition!==!0||r[A].isCluster===!0&&e===!0||r[A].options.fixed.x!==!0||r[A].options.fixed.y!==!0){const[I,C,l]=this._getEnergy(A);i<I&&(i=I,o=A,s=C,a=l)}}return[o,i,s,a]}_getEnergy(e){const[t,r]=this.E_sums[e];return[Math.sqrt(t**2+r**2),t,r]}_moveNode(e,t,r){const i=this.body.nodeIndices,o=this.body.nodes;let s=0,a=0,g=0;const A=o[e].x,I=o[e].y,C=this.K_matrix[e],l=this.L_matrix[e];for(let p=0;p<i.length;p++){const y=i[p];if(y!==e){const E=o[y].x,S=o[y].y,m=C[y],w=l[y],_=1/((A-E)**2+(I-S)**2)**1.5;s+=m*(1-w*(I-S)**2*_),a+=m*(w*(A-E)*(I-S)*_),g+=m*(1-w*(A-E)**2*_)}}const d=s,u=a,h=t,v=g,f=r,c=(h/d+f/u)/(u/d-v/u),b=-(u*c+h)/d;o[e].x+=b,o[e].y+=c,this._updateE_matrix(e)}_createL_matrix(e){const t=this.body.nodeIndices,r=this.springLength;this.L_matrix=[];for(let i=0;i<t.length;i++){this.L_matrix[t[i]]={};for(let o=0;o<t.length;o++)this.L_matrix[t[i]][t[o]]=r*e[t[i]][t[o]]}}_createK_matrix(e){const t=this.body.nodeIndices,r=this.springConstant;this.K_matrix=[];for(let i=0;i<t.length;i++){this.K_matrix[t[i]]={};for(let o=0;o<t.length;o++)this.K_matrix[t[i]][t[o]]=r*e[t[i]][t[o]]**-2}}_createE_matrix(){const e=this.body.nodeIndices,t=this.body.nodes;this.E_matrix={},this.E_sums={};for(let r=0;r<e.length;r++)this.E_matrix[e[r]]=[];for(let r=0;r<e.length;r++){const i=e[r],o=t[i].x,s=t[i].y;let a=0,g=0;for(let A=r;A<e.length;A++){const I=e[A];if(I!==i){const C=t[I].x,l=t[I].y,d=1/Math.sqrt((o-C)**2+(s-l)**2);this.E_matrix[i][A]=[this.K_matrix[i][I]*(o-C-this.L_matrix[i][I]*(o-C)*d),this.K_matrix[i][I]*(s-l-this.L_matrix[i][I]*(s-l)*d)],this.E_matrix[I][r]=this.E_matrix[i][A],a+=this.E_matrix[i][A][0],g+=this.E_matrix[i][A][1]}}this.E_sums[i]=[a,g]}}_updateE_matrix(e){const t=this.body.nodeIndices,r=this.body.nodes,i=this.E_matrix[e],o=this.K_matrix[e],s=this.L_matrix[e],a=r[e].x,g=r[e].y;let A=0,I=0;for(let C=0;C<t.length;C++){const l=t[C];if(l!==e){const d=i[C],u=d[0],h=d[1],v=r[l].x,f=r[l].y,c=1/Math.sqrt((a-v)**2+(g-f)**2),b=o[l]*(a-v-s[l]*(a-v)*c),p=o[l]*(g-f-s[l]*(g-f)*c);i[C]=[b,p],A+=b,I+=p;const y=this.E_sums[l];y[0]+=b-u,y[1]+=p-h}}this.E_sums[e]=[A,I]}};function X(n,e,t){var r,i,o,s;if(!(this instanceof X))throw new SyntaxError("Constructor must be called with the new operator");this.options={},this.defaultOptions={locale:"en",locales:Jse,clickToUse:!1},tt(this.options,this.defaultOptions),this.body={container:n,nodes:{},nodeIndices:[],edges:{},edgeIndices:[],emitter:{on:z(r=this.on).call(r,this),off:z(i=this.off).call(i,this),emit:z(o=this.emit).call(o,this),once:z(s=this.once).call(s,this)},eventListeners:{onTap:function(){},onTouch:function(){},onDoubleTap:function(){},onHold:function(){},onDragStart:function(){},onDrag:function(){},onDragEnd:function(){},onMouseWheel:function(){},onPinch:function(){},onMouseMove:function(){},onRelease:function(){},onContext:function(){}},data:{nodes:null,edges:null},functions:{createNode:function(){},createEdge:function(){},getPointer:function(){}},modules:{},view:{scale:1,translation:{x:0,y:0}},selectionBox:{show:!1,position:{start:{x:0,y:0},end:{x:0,y:0}}}},this.bindEventListeners(),this.images=new rae(()=>this.body.emitter.emit("_requestRedraw")),this.groups=new cae,this.canvas=new fCe(this.body),this.selectionHandler=new xCe(this.body,this.canvas),this.interactionHandler=new yCe(this.body,this.canvas,this.selectionHandler),this.view=new vCe(this.body,this.canvas),this.renderer=new lCe(this.body,this.canvas),this.physics=new ACe(this.body),this.layoutEngine=new WCe(this.body),this.clustering=new CCe(this.body),this.manipulation=new VCe(this.body,this.canvas,this.selectionHandler,this.interactionHandler),this.nodesHandler=new FIe(this.body,this.images,this.groups,this.layoutEngine),this.edgesHandler=new iCe(this.body,this.images,this.groups),this.body.modules.kamadaKawai=new YCe(this.body,150,.05),this.body.modules.clustering=this.clustering,this.canvas._create(),this.setOptions(t),this.setData(e)}GX(X.prototype);X.prototype.setOptions=function(n){if(n===null&&(n=void 0),n!==void 0){if(Pse.validate(n,HCe)===!0&&console.error("%cErrors have been found in the supplied options object.",WQ),zs(["locale","locales","clickToUse"],this.options,n),n.locale!==void 0&&(n.locale=eae(n.locales||this.options.locales,n.locale)),n=this.layoutEngine.setOptions(n.layout,n),this.canvas.setOptions(n),this.groups.setOptions(n.groups),this.nodesHandler.setOptions(n.nodes),this.edgesHandler.setOptions(n.edges),this.physics.setOptions(n.physics),this.manipulation.setOptions(n.manipulation,n,this.options),this.interactionHandler.setOptions(n.interaction),this.renderer.setOptions(n.interaction),this.selectionHandler.setOptions(n.interaction),n.groups!==void 0&&this.body.emitter.emit("refreshNodes"),"configure"in n&&(this.configurator||(this.configurator=new Tse(this,this.body.container,E7,this.canvas.pixelRatio,UCe)),this.configurator.setOptions(n.configure)),this.configurator&&this.configurator.options.enabled===!0){const r={nodes:{},edges:{},layout:{},interaction:{},manipulation:{},physics:{},global:{}};Me(r.nodes,this.nodesHandler.options),Me(r.edges,this.edgesHandler.options),Me(r.layout,this.layoutEngine.options),Me(r.interaction,this.selectionHandler.options),Me(r.interaction,this.renderer.options),Me(r.interaction,this.interactionHandler.options),Me(r.manipulation,this.manipulation.options),Me(r.physics,this.physics.options),Me(r.global,this.canvas.options),Me(r.global,this.options),this.configurator.setModuleOptions(r)}n.clickToUse!==void 0?n.clickToUse===!0?this.activator===void 0&&(this.activator=new Ose(this.canvas.frame),this.activator.on("change",()=>{this.body.emitter.emit("activate")})):(this.activator!==void 0&&(this.activator.destroy(),delete this.activator),this.body.emitter.emit("activate")):this.body.emitter.emit("activate"),this.canvas.setSize(),this.body.emitter.emit("startSimulation")}};X.prototype._updateVisibleIndices=function(){const n=this.body.nodes,e=this.body.edges;this.body.nodeIndices=[],this.body.edgeIndices=[];for(const t in n)Object.prototype.hasOwnProperty.call(n,t)&&!this.clustering._isClusteredNode(t)&&n[t].options.hidden===!1&&this.body.nodeIndices.push(n[t].id);for(const t in e)if(Object.prototype.hasOwnProperty.call(e,t)){const r=e[t],i=n[r.fromId],o=n[r.toId],s=i!==void 0&&o!==void 0;!this.clustering._isClusteredEdge(t)&&r.options.hidden===!1&&s&&i.options.hidden===!1&&o.options.hidden===!1&&this.body.edgeIndices.push(r.id)}};X.prototype.bindEventListeners=function(){this.body.emitter.on("_dataChanged",()=>{this.edgesHandler._updateState(),this.body.emitter.emit("_dataUpdated")}),this.body.emitter.on("_dataUpdated",()=>{this.clustering._updateState(),this._updateVisibleIndices(),this._updateValueRange(this.body.nodes),this._updateValueRange(this.body.edges),this.body.emitter.emit("startSimulation"),this.body.emitter.emit("_requestRedraw")})};X.prototype.setData=function(n){if(this.body.emitter.emit("resetPhysics"),this.body.emitter.emit("_resetData"),this.selectionHandler.unselectAll(),n&&n.dot&&(n.nodes||n.edges))throw new SyntaxError('Data must contain either parameter "dot" or parameter pair "nodes" and "edges", but not both.');if(this.setOptions(n&&n.options),n&&n.dot){console.warn("The dot property has been deprecated. Please use the static convertDot method to convert DOT into vis.network format and use the normal data format with nodes and edges. This converter is used like this: var data = vis.network.convertDot(dotString);");const e=zse(n.dot);this.setData(e);return}else if(n&&n.gephi){console.warn("The gephi property has been deprecated. Please use the static convertGephi method to convert gephi into vis.network format and use the normal data format with nodes and edges. This converter is used like this: var data = vis.network.convertGephi(gephiJson);");const e=jse(n.gephi);this.setData(e);return}else this.nodesHandler.setData(n&&n.nodes,!0),this.edgesHandler.setData(n&&n.edges,!0);this.body.emitter.emit("_dataChanged"),this.body.emitter.emit("_dataLoaded"),this.body.emitter.emit("initPhysics")};X.prototype.destroy=function(){this.body.emitter.emit("destroy"),this.body.emitter.off(),this.off(),delete this.groups,delete this.canvas,delete this.selectionHandler,delete this.interactionHandler,delete this.view,delete this.renderer,delete this.physics,delete this.layoutEngine,delete this.clustering,delete this.manipulation,delete this.nodesHandler,delete this.edgesHandler,delete this.configurator,delete this.images;for(const n in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,n)&&delete this.body.nodes[n];for(const n in this.body.edges)Object.prototype.hasOwnProperty.call(this.body.edges,n)&&delete this.body.edges[n];Ki(this.body.container)};X.prototype._updateValueRange=function(n){let e,t,r,i=0;for(e in n)if(Object.prototype.hasOwnProperty.call(n,e)){const o=n[e].getValue();o!==void 0&&(t=t===void 0?o:Math.min(o,t),r=r===void 0?o:Math.max(o,r),i+=o)}if(t!==void 0&&r!==void 0)for(e in n)Object.prototype.hasOwnProperty.call(n,e)&&n[e].setValueRange(t,r,i)};X.prototype.isActive=function(){return!this.activator||this.activator.active};X.prototype.setSize=function(){return this.canvas.setSize.apply(this.canvas,arguments)};X.prototype.canvasToDOM=function(){return this.canvas.canvasToDOM.apply(this.canvas,arguments)};X.prototype.DOMtoCanvas=function(){return this.canvas.DOMtoCanvas.apply(this.canvas,arguments)};X.prototype.findNode=function(){return this.clustering.findNode.apply(this.clustering,arguments)};X.prototype.isCluster=function(){return this.clustering.isCluster.apply(this.clustering,arguments)};X.prototype.openCluster=function(){return this.clustering.openCluster.apply(this.clustering,arguments)};X.prototype.cluster=function(){return this.clustering.cluster.apply(this.clustering,arguments)};X.prototype.getNodesInCluster=function(){return this.clustering.getNodesInCluster.apply(this.clustering,arguments)};X.prototype.clusterByConnection=function(){return this.clustering.clusterByConnection.apply(this.clustering,arguments)};X.prototype.clusterByHubsize=function(){return this.clustering.clusterByHubsize.apply(this.clustering,arguments)};X.prototype.updateClusteredNode=function(){return this.clustering.updateClusteredNode.apply(this.clustering,arguments)};X.prototype.getClusteredEdges=function(){return this.clustering.getClusteredEdges.apply(this.clustering,arguments)};X.prototype.getBaseEdge=function(){return this.clustering.getBaseEdge.apply(this.clustering,arguments)};X.prototype.getBaseEdges=function(){return this.clustering.getBaseEdges.apply(this.clustering,arguments)};X.prototype.updateEdge=function(){return this.clustering.updateEdge.apply(this.clustering,arguments)};X.prototype.clusterOutliers=function(){return this.clustering.clusterOutliers.apply(this.clustering,arguments)};X.prototype.getSeed=function(){return this.layoutEngine.getSeed.apply(this.layoutEngine,arguments)};X.prototype.enableEditMode=function(){return this.manipulation.enableEditMode.apply(this.manipulation,arguments)};X.prototype.disableEditMode=function(){return this.manipulation.disableEditMode.apply(this.manipulation,arguments)};X.prototype.addNodeMode=function(){return this.manipulation.addNodeMode.apply(this.manipulation,arguments)};X.prototype.editNode=function(){return this.manipulation.editNode.apply(this.manipulation,arguments)};X.prototype.editNodeMode=function(){return console.warn("Deprecated: Please use editNode instead of editNodeMode."),this.manipulation.editNode.apply(this.manipulation,arguments)};X.prototype.addEdgeMode=function(){return this.manipulation.addEdgeMode.apply(this.manipulation,arguments)};X.prototype.editEdgeMode=function(){return this.manipulation.editEdgeMode.apply(this.manipulation,arguments)};X.prototype.deleteSelected=function(){return this.manipulation.deleteSelected.apply(this.manipulation,arguments)};X.prototype.getPositions=function(){return this.nodesHandler.getPositions.apply(this.nodesHandler,arguments)};X.prototype.getPosition=function(){return this.nodesHandler.getPosition.apply(this.nodesHandler,arguments)};X.prototype.storePositions=function(){return this.nodesHandler.storePositions.apply(this.nodesHandler,arguments)};X.prototype.moveNode=function(){return this.nodesHandler.moveNode.apply(this.nodesHandler,arguments)};X.prototype.getBoundingBox=function(){return this.nodesHandler.getBoundingBox.apply(this.nodesHandler,arguments)};X.prototype.getConnectedNodes=function(n){return this.body.nodes[n]!==void 0?this.nodesHandler.getConnectedNodes.apply(this.nodesHandler,arguments):this.edgesHandler.getConnectedNodes.apply(this.edgesHandler,arguments)};X.prototype.getConnectedEdges=function(){return this.nodesHandler.getConnectedEdges.apply(this.nodesHandler,arguments)};X.prototype.startSimulation=function(){return this.physics.startSimulation.apply(this.physics,arguments)};X.prototype.stopSimulation=function(){return this.physics.stopSimulation.apply(this.physics,arguments)};X.prototype.stabilize=function(){return this.physics.stabilize.apply(this.physics,arguments)};X.prototype.getSelection=function(){return this.selectionHandler.getSelection.apply(this.selectionHandler,arguments)};X.prototype.setSelection=function(){return this.selectionHandler.setSelection.apply(this.selectionHandler,arguments)};X.prototype.getSelectedNodes=function(){return this.selectionHandler.getSelectedNodeIds.apply(this.selectionHandler,arguments)};X.prototype.getSelectedEdges=function(){return this.selectionHandler.getSelectedEdgeIds.apply(this.selectionHandler,arguments)};X.prototype.getNodeAt=function(){const n=this.selectionHandler.getNodeAt.apply(this.selectionHandler,arguments);return n!==void 0&&n.id!==void 0?n.id:n};X.prototype.getEdgeAt=function(){const n=this.selectionHandler.getEdgeAt.apply(this.selectionHandler,arguments);return n!==void 0&&n.id!==void 0?n.id:n};X.prototype.selectNodes=function(){return this.selectionHandler.selectNodes.apply(this.selectionHandler,arguments)};X.prototype.selectEdges=function(){return this.selectionHandler.selectEdges.apply(this.selectionHandler,arguments)};X.prototype.unselectAll=function(){this.selectionHandler.unselectAll.apply(this.selectionHandler,arguments),this.selectionHandler.commitWithoutEmitting.apply(this.selectionHandler),this.redraw()};X.prototype.redraw=function(){return this.renderer.redraw.apply(this.renderer,arguments)};X.prototype.getScale=function(){return this.view.getScale.apply(this.view,arguments)};X.prototype.getViewPosition=function(){return this.view.getViewPosition.apply(this.view,arguments)};X.prototype.fit=function(){return this.view.fit.apply(this.view,arguments)};X.prototype.moveTo=function(){return this.view.moveTo.apply(this.view,arguments)};X.prototype.focus=function(){return this.view.focus.apply(this.view,arguments)};X.prototype.releaseNode=function(){return this.view.releaseNode.apply(this.view,arguments)};X.prototype.getOptionsFromConfigurator=function(){let n={};return this.configurator&&(n=this.configurator.getOptions.apply(this.configurator)),n};const S7={vue:{color:"#42b883"},ts:{color:"#3B86CB"},js:{color:"#d6cb2d"},json:{color:"#cf8f30"},css:{color:"#e6659a"},html:{color:"#e34c26"},jsx:{color:"#54B9D1"},tsx:{color:"#4FC7FF"},other:{color:"#B86542"}},XCe=["vue","other"];function QCe(){const[n,e]=RX(!0);return{fileTypeData:Object.entries(S7).map(([t,r])=>({key:t,color:r.color,capitalize:XCe.includes(t)})),fileTypeShow:n,toggleFileType:e}}const{isDark:JCe}=Pte(),nB=PX(()=>({nodes:{shape:"dot",size:16,font:{color:JCe.value?"#fff":"#000",multi:"html"}},interaction:{hover:!0},physics:{maxVelocity:146,solver:"forceAtlas2Based",timestep:.35,stabilization:{enabled:!0,iterations:200}},groups:S7})),Ma=PX({get:()=>oO.value.graphSettings,set:n=>{oO.value.graphSettings=n}});$A(Ma,()=>{ET()},{deep:!0});const yT=Bn("");xte(yT,()=>{ET()},{debounce:350});const bT=Bn(""),hs=new us([]),cs=new us([]),wT=xX([]),_7=new Map,ni=new Map,os=new Map,ele=n=>n.reduce((e,t)=>(e.some(r=>r.id===t.id)||e.push(t),e),[]),O7=n=>n.reduce((e,t)=>(e.some(r=>r.from===t.from&&r.to===t.to)||e.push(t),e),[]);function tle(){wT.value=[],_7.clear(),hs.clear(),cs.clear(),ni.clear(),os.clear()}function fs(n){const e=n.id.includes("node_modules");return!(!Ma.value.node_modules&&e||!Ma.value.virtual&&n.virtual&&!e||!Ma.value.lib&&!n.id.includes(bT.value)&&!n.virtual)}function T7(n){const e=os.get(n);return e?e.some(t=>fs(t.mod)):!0}const rle=/(?:.*\/){3}([^/]+$)/;function ET(){hs.clear(),cs.clear(),sle();const n=[],e=[],t=[],r=gle();(r?r.slice():wT.value.slice()).forEach(({node:s,edges:a,mod:g})=>{fs(g)&&T7(g.id)&&(n.push(s),e.push({id:g.id.match(rle)?.[0]??g.id,fullId:g.id,node:s,edges:a,deps:g.deps}),t.push(...a))});const o=yT.value;if(o.trim().length){const s=e.filter(({id:a})=>a.includes(o));if(t.length=0,n.length=0,s.length){const{node:a,edges:g}=ile(s);n.push(...a),t.push(...g)}}hs.add(ele(n)),cs.add(O7(t))}function ile(n){const e=new Map,t=new Map;return n.forEach(r=>{r=$te(r),r.node.font||(r.node.font={color:"#F19B4A"}),r.node.label=`<b>${r.node.label}</b>`,e.set(r.fullId,r.node),r.deps.forEach(i=>{const o=ni.get(i);o&&fs(o.mod)&&(e.set(o.mod.id,o.node),t.set(`${r.fullId}-${o.mod.id}`,vO(o.mod.id,r.fullId)),o.edges.forEach(s=>t.set(`${s.from}-${s.to}`,s)))})}),{node:Array.from(e.values()),edges:Array.from(t.values())}}function vO(n,e){return{from:n,to:e,arrows:{to:{enabled:!0,scaleFactor:.8}}}}function ST(n){return n.replace(/\?.*$/,"").replace(/#.*$/,"").replace(/\/{2,}/g,"/")}function R7(n){return n.includes("vue&type=style")}function mO(n){return n.replace(bT.value,"")}function oB(n){return 15+Math.min(n/2,8)}function sB(n,e){const t=[];return n.forEach(r=>{R7(r)||(r=ST(r),!t.includes(r)&&(t.push(r),e?.(r)))}),t}function nle(n,e){if(!n)return;bT.value=e,hs.clear(),cs.clear();const t=[],r=[];n.forEach(i=>{if(R7(i.id))return;if(i.id=ST(i.id),r.some(C=>C.id===i.id)){const C=ni.get(i.id);C.node.size=oB(C.edges.length+i.deps.length);const l=[],u=sB(i.deps,h=>{l.push(vO(i.id,h))}).filter(h=>!C.mod.deps.includes(h));if(!u.length)return;C.mod.deps.push(...u),t.push(...l);return}const o=i.id,a=o.split("/").at(-1)??"",g=mO(o),A={mod:i,info:{displayName:a,displayPath:g},node:{id:i.id,label:a,group:o.match(/\.(\w+)$/)?.[1]||"unknown",size:oB(i.deps.length),shape:i.id.includes("/node_modules/")?"hexagon":i.virtual?"diamond":"dot"},edges:[]},I=sB(i.deps,C=>{A.edges.push(vO(i.id,C)),os.has(C)||os.set(C,[]);const l=os.get(C),d=mO(o);l.find(h=>h.path===o&&h.displayPath===d&&h.mod.id===i.id)||l.push({path:o,displayPath:d,mod:i})});i.deps=I,wT.value.push(A),_7.set(i.id,A),ni.set(i.id,A),fs(i)&&T7(i.id)&&(r.push(A.node),t.push(...A.edges))}),hs.add(r.slice()),cs.add(O7(t))}const P7=Bn(),[ole,yO]=RX(!1);function sle(){yO(!1)}function ale(n){const e=ni.get(n);if(!e)return;const t=e.mod.deps.reduce((o,s)=>{const a=ni.get(s);return a&&fs(a.mod)&&o.push({path:s,displayPath:mO(ST(s))}),o},[]),i=(os.get(e.mod.id)||[]).reduce((o,s)=>{const a=ni.get(s.path);return a&&fs(a.mod)&&o.push({path:s.path,displayPath:s.displayPath}),o},[]);P7.value={name:e.info.displayName,displayPath:e.info.displayPath,path:e.mod.id,deps:t,refs:i}}const ps=Bn("");$A(ps,()=>{ET()});function gle(){const n=ps.value;return ps.value=n,!n||!ni.get(n)?null:x7(n)}function x7(n,e=0){const t=ni.get(n);if(e+=1,!t||e>20)return[];const r=[t];return t.mod.deps.forEach(i=>{const o=ni.get(i);o&&r.push(...x7(o.mod.id,e))}),r.reduce((i,o)=>(i.some(s=>s.mod.id===o.mod.id)||i.push(o),i),[])}const Ale={class:"w-300px","h-full":"","of-auto":""},Ile={"text-md":"","h-80px":"","border-b":"","border-base":"",p3:"",flex:"~ col gap1"},Cle={"text-lg":"",flex:"~ gap2 items-center"},lle={key:0,"i-material-symbols-check-small":"","text-primary-500":""},dle=["title"],ule={pb2:"","text-gray-500":""},hle={"text-primary-500":""},cle={flex:"~ col gap2 items-start"},fle=["onClick"],ple={p3:""},aB=1500,vle=oI({__name:"GraphDrawer",props:{top:{}},setup(n){const e=P7,t=ole,r=ps,i=Fte(),o=C=>{if(i.vitePluginDetected.value&&kte.value){Bte(C);return}A(C)},{copy:s,isSupported:a,copied:g}=Dte({copiedDuring:aB});function A(C){s(C),zte({message:"Copied to clipboard",type:"success",duration:aB})}const I=[["refs","references"],["deps","dependencies"]];return(C,l)=>(Xt(),Nte(Pe(qte),{modelValue:Pe(t),"onUpdate:modelValue":l[3]||(l[3]=d=>$X(t)?t.value=d:null),top:n.top,"close-outside":!1,permanent:!0,"content-blur":!0,position:"absolute","mount-to":".graph-body"},{default:$R(()=>[et("div",Ale,[et("div",Ile,[et("span",Cle,[wA($n(Pe(e)?.name)+" ",1),Pe(g)?(Xt(),ar("span",lle)):Pe(e)?(Xt(),ar("span",{key:1,hover:"op-100","i-carbon-copy":"","cursor-pointer":"","text-sm":"","op-50":"",class:Wo({"text-gray-200":!Pe(a)}),onClick:l[0]||(l[0]=d=>A(Pe(e).name))},null,2)):BO("",!0)]),et("button",{hover:"underline",truncate:"","text-left":"","text-gray-500":"",title:Pe(e)?.displayPath,onClick:l[1]||(l[1]=d=>o(Pe(e).path))},$n(Pe(e)?.displayPath),9,dle)]),(Xt(),ar(DA,null,NA(I,([d,u])=>et("div",{key:d,"max-h-60":"","of-auto":"","border-b":"","border-base":"",p3:"","text-sm":""},[et("div",ule,[et("span",hle,$n(Pe(e)?.[d].length),1),wA(" "+$n(u),1)]),et("div",cle,[(Xt(!0),ar(DA,null,NA(Pe(e)?.[d],h=>(Xt(),ar("button",{key:h.path,dark:"text-gray-200","of-hidden":"",truncate:"","ws-nowrap":"","pr-3":"","text-gray-800":"",hover:"underline",onClick:v=>o(h.path)},$n(h.displayPath),9,fle))),128))])])),64)),et("div",ple,[es(Pe(Mte),{type:"primary",onClick:l[2]||(l[2]=d=>r.value=Pe(e).path)},{default:$R(()=>[...l[4]||(l[4]=[wA(" Filter to this module ",-1)])]),_:1})])])]),_:1},8,["modelValue","top"]))}}),mle=oI({__name:"GraphFileType",setup(n){const{fileTypeData:e,fileTypeShow:t,toggleFileType:r}=QCe();return(i,o)=>(Xt(),ar("div",{absolute:"","bottom-0":"",grid:"","grid-cols-3":"","w-260px":"","gap-2":"","b-1":"","b-l-0":"","border-base":"","rounded-tr-lg":"","glass-effect":"",px4:"",py2:"","text-sm":"","transition-transform":"","duration-300":"",class:Wo(["group",{"translate-x-[calc(-100%+30px)] translate-y-[calc(100%-30px)]":!Pe(t)}])},[et("div",{class:Wo(["group",{"rounded-bl-lg opacity-0 group-hover:opacity-100":Pe(t)}]),absolute:"","right-0":"",h30px:"",w30px:"","cursor-pointer":"","rounded-tr-lg":"","bg-primary-500":"","text-white":"","transition-opacity":"",flex:"~ justify-center items-center",onClick:o[0]||(o[0]=()=>Pe(r)())},[et("div",{"transition-transform":"",class:Wo([Pe(t)?"i-material-symbols-arrow-downward-alt rotate-45 hover:translate-x--10% hover:translate-y-10%":"i-mdi-file-outline"])},null,2)],2),(Xt(!0),ar(DA,null,NA(Pe(e),s=>(Xt(),ar("div",{key:s.key,flex:"","items-center":"","gap-2":""},[et("div",{h12px:"",w12px:"","rounded-full":"",style:jte({backgroundColor:s.color})},null,4),et("span",{class:Wo([s.capitalize?"capitalize":"uppercase"])},$n(s.key),3)]))),128))],2))}}),yle={flex:"~ items-center gap-4 nowrap",class:"[&_>*]:flex-[0_0_auto]",absolute:"","left-0":"","top-0":"","z-10":"","navbar-base":"","w-full":"","overflow-x-auto":"","glass-effect":"",px4:"","text-sm":""},ble=oI({__name:"GraphNavbar",setup(n){const e=yT,t=Ma,r=[["node_modules"],["virtual","virtual module"],["lib","library module"]],i=ps;return(o,s)=>(Xt(),ar("div",yle,[es(Pe(Lte),{modelValue:Pe(e),"onUpdate:modelValue":s[0]||(s[0]=a=>$X(e)?e.value=a:null),placeholder:"Search modules..."},null,8,["modelValue"]),(Xt(),ar(DA,null,NA(r,a=>et("div",{key:a[0],flex:"~ gap-2 items-center"},[es(Pe(Gte),{modelValue:Pe(t)[a[0]],"onUpdate:modelValue":g=>Pe(t)[a[0]]=g},null,8,["modelValue","onUpdate:modelValue"]),et("span",{class:Wo({"text-gray-400 dark:text-gray-600":!Pe(t)[a[0]]})},"Show "+$n(a[1]??a[0]),3)])),64)),s[3]||(s[3]=et("div",{"flex-auto":""},null,-1)),Pe(i)?(Xt(),ar("button",{key:0,"rounded-full":"","bg-gray:20":"",py1:"",pl3:"",pr2:"","text-xs":"",op50:"","hover:op100":"",onClick:s[1]||(s[1]=a=>i.value="")},[...s[2]||(s[2]=[wA(" Clear filter ",-1),et("div",{"i-carbon-close":"",mb2px:""},null,-1)])])):BO("",!0)]))}});/**
|
||
* vis-data
|
||
* http://visjs.org/
|
||
*
|
||
* Manage unstructured data using DataSet. Add, update, and remove data, and listen for changes in the data.
|
||
*
|
||
* @version 8.0.3
|
||
* @date 2025-09-10T16:22:00.613Z
|
||
*
|
||
* @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 gB=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function fe(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}var Nf={exports:{}},AB={},ba,IB;function lt(){if(IB)return ba;IB=1;var n=function(e){return e&&e.Math===Math&&e};return ba=n(typeof globalThis=="object"&&globalThis)||n(typeof window=="object"&&window)||n(typeof self=="object"&&self)||n(typeof gB=="object"&&gB)||n(typeof ba=="object"&&ba)||(function(){return this})()||Function("return this")(),ba}var Mf,CB;function Te(){return CB||(CB=1,Mf=function(n){try{return!!n()}catch{return!0}}),Mf}var qf,lB;function Tg(){if(lB)return qf;lB=1;var n=Te();return qf=!n(function(){var e=(function(){}).bind();return typeof e!="function"||e.hasOwnProperty("prototype")}),qf}var Ff,dB;function SI(){if(dB)return Ff;dB=1;var n=Tg(),e=Function.prototype,t=e.apply,r=e.call;return Ff=typeof Reflect=="object"&&Reflect.apply||(n?r.bind(t):function(){return r.apply(t,arguments)}),Ff}var kf,uB;function $e(){if(uB)return kf;uB=1;var n=Tg(),e=Function.prototype,t=e.call,r=n&&e.bind.bind(t,t);return kf=n?r:function(i){return function(){return t.apply(i,arguments)}},kf}var Bf,hB;function Ni(){if(hB)return Bf;hB=1;var n=$e(),e=n({}.toString),t=n("".slice);return Bf=function(r){return t(e(r),8,-1)},Bf}var zf,cB;function $7(){if(cB)return zf;cB=1;var n=Ni(),e=$e();return zf=function(t){if(n(t)==="Function")return e(t)},zf}var jf,fB;function wt(){if(fB)return jf;fB=1;var n=typeof document=="object"&&document.all;return jf=typeof n>"u"&&n!==void 0?function(e){return typeof e=="function"||e===n}:function(e){return typeof e=="function"},jf}var Lf={},Gf,pB;function dt(){if(pB)return Gf;pB=1;var n=Te();return Gf=!n(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!==7}),Gf}var Wf,vB;function ir(){if(vB)return Wf;vB=1;var n=Tg(),e=Function.prototype.call;return Wf=n?e.bind(e):function(){return e.apply(e,arguments)},Wf}var Vf={},mB;function _T(){if(mB)return Vf;mB=1;var n={}.propertyIsEnumerable,e=Object.getOwnPropertyDescriptor,t=e&&!n.call({1:2},1);return Vf.f=t?function(i){var o=e(this,i);return!!o&&o.enumerable}:n,Vf}var Zf,yB;function Rg(){return yB||(yB=1,Zf=function(n,e){return{enumerable:!(n&1),configurable:!(n&2),writable:!(n&4),value:e}}),Zf}var Hf,bB;function _I(){if(bB)return Hf;bB=1;var n=$e(),e=Te(),t=Ni(),r=Object,i=n("".split);return Hf=e(function(){return!r("z").propertyIsEnumerable(0)})?function(o){return t(o)==="String"?i(o,""):r(o)}:r,Hf}var Uf,wB;function Pg(){return wB||(wB=1,Uf=function(n){return n==null}),Uf}var Kf,EB;function vo(){if(EB)return Kf;EB=1;var n=Pg(),e=TypeError;return Kf=function(t){if(n(t))throw new e("Can't call method on "+t);return t},Kf}var Yf,SB;function li(){if(SB)return Yf;SB=1;var n=_I(),e=vo();return Yf=function(t){return n(e(t))},Yf}var Xf,_B;function Ht(){if(_B)return Xf;_B=1;var n=wt();return Xf=function(e){return typeof e=="object"?e!==null:n(e)},Xf}var Qf,OB;function pt(){return OB||(OB=1,Qf={}),Qf}var Jf,TB;function Ir(){if(TB)return Jf;TB=1;var n=pt(),e=lt(),t=wt(),r=function(i){return t(i)?i:void 0};return Jf=function(i,o){return arguments.length<2?r(n[i])||r(e[i]):n[i]&&n[i][o]||e[i]&&e[i][o]},Jf}var ep,RB;function Et(){if(RB)return ep;RB=1;var n=$e();return ep=n({}.isPrototypeOf),ep}var tp,PB;function js(){if(PB)return tp;PB=1;var n=lt(),e=n.navigator,t=e&&e.userAgent;return tp=t?String(t):"",tp}var rp,xB;function xg(){if(xB)return rp;xB=1;var n=lt(),e=js(),t=n.process,r=n.Deno,i=t&&t.versions||r&&r.version,o=i&&i.v8,s,a;return o&&(s=o.split("."),a=s[0]>0&&s[0]<4?1:+(s[0]+s[1])),!a&&e&&(s=e.match(/Edge\/(\d+)/),(!s||s[1]>=74)&&(s=e.match(/Chrome\/(\d+)/),s&&(a=+s[1]))),rp=a,rp}var ip,$B;function Ls(){if($B)return ip;$B=1;var n=xg(),e=Te(),t=lt(),r=t.String;return ip=!!Object.getOwnPropertySymbols&&!e(function(){var i=Symbol("symbol detection");return!r(i)||!(Object(i)instanceof Symbol)||!Symbol.sham&&n&&n<41}),ip}var np,DB;function D7(){if(DB)return np;DB=1;var n=Ls();return np=n&&!Symbol.sham&&typeof Symbol.iterator=="symbol",np}var op,NB;function $g(){if(NB)return op;NB=1;var n=Ir(),e=wt(),t=Et(),r=D7(),i=Object;return op=r?function(o){return typeof o=="symbol"}:function(o){var s=n("Symbol");return e(s)&&t(s.prototype,i(o))},op}var sp,MB;function Gs(){if(MB)return sp;MB=1;var n=String;return sp=function(e){try{return n(e)}catch{return"Object"}},sp}var ap,qB;function Mi(){if(qB)return ap;qB=1;var n=wt(),e=Gs(),t=TypeError;return ap=function(r){if(n(r))return r;throw new t(e(r)+" is not a function")},ap}var gp,FB;function OT(){if(FB)return gp;FB=1;var n=Mi(),e=Pg();return gp=function(t,r){var i=t[r];return e(i)?void 0:n(i)},gp}var Ap,kB;function wle(){if(kB)return Ap;kB=1;var n=ir(),e=wt(),t=Ht(),r=TypeError;return Ap=function(i,o){var s,a;if(o==="string"&&e(s=i.toString)&&!t(a=n(s,i))||e(s=i.valueOf)&&!t(a=n(s,i))||o!=="string"&&e(s=i.toString)&&!t(a=n(s,i)))return a;throw new r("Can't convert object to primitive value")},Ap}var Ip={exports:{}},Cp,BB;function Ws(){return BB||(BB=1,Cp=!0),Cp}var lp,zB;function Ele(){if(zB)return lp;zB=1;var n=lt(),e=Object.defineProperty;return lp=function(t,r){try{e(n,t,{value:r,configurable:!0,writable:!0})}catch{n[t]=r}return r},lp}var jB;function TT(){if(jB)return Ip.exports;jB=1;var n=Ws(),e=lt(),t=Ele(),r="__core-js_shared__",i=Ip.exports=e[r]||t(r,{});return(i.versions||(i.versions=[])).push({version:"3.44.0",mode:n?"pure":"global",copyright:"© 2014-2025 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.44.0/LICENSE",source:"https://github.com/zloirock/core-js"}),Ip.exports}var dp,LB;function Vs(){if(LB)return dp;LB=1;var n=TT();return dp=function(e,t){return n[e]||(n[e]=t||{})},dp}var up,GB;function Zr(){if(GB)return up;GB=1;var n=vo(),e=Object;return up=function(t){return e(n(t))},up}var hp,WB;function St(){if(WB)return hp;WB=1;var n=$e(),e=Zr(),t=n({}.hasOwnProperty);return hp=Object.hasOwn||function(i,o){return t(e(i),o)},hp}var cp,VB;function OI(){if(VB)return cp;VB=1;var n=$e(),e=0,t=Math.random(),r=n(1.1.toString);return cp=function(i){return"Symbol("+(i===void 0?"":i)+")_"+r(++e+t,36)},cp}var fp,ZB;function _t(){if(ZB)return fp;ZB=1;var n=lt(),e=Vs(),t=St(),r=OI(),i=Ls(),o=D7(),s=n.Symbol,a=e("wks"),g=o?s.for||s:s&&s.withoutSetter||r;return fp=function(A){return t(a,A)||(a[A]=i&&t(s,A)?s[A]:g("Symbol."+A)),a[A]},fp}var pp,HB;function N7(){if(HB)return pp;HB=1;var n=ir(),e=Ht(),t=$g(),r=OT(),i=wle(),o=_t(),s=TypeError,a=o("toPrimitive");return pp=function(g,A){if(!e(g)||t(g))return g;var I=r(g,a),C;if(I){if(A===void 0&&(A="default"),C=n(I,g,A),!e(C)||t(C))return C;throw new s("Can't convert object to primitive value")}return A===void 0&&(A="number"),i(g,A)},pp}var vp,UB;function RT(){if(UB)return vp;UB=1;var n=N7(),e=$g();return vp=function(t){var r=n(t,"string");return e(r)?r:r+""},vp}var mp,KB;function M7(){if(KB)return mp;KB=1;var n=lt(),e=Ht(),t=n.document,r=e(t)&&e(t.createElement);return mp=function(i){return r?t.createElement(i):{}},mp}var yp,YB;function q7(){if(YB)return yp;YB=1;var n=dt(),e=Te(),t=M7();return yp=!n&&!e(function(){return Object.defineProperty(t("div"),"a",{get:function(){return 7}}).a!==7}),yp}var XB;function TI(){if(XB)return Lf;XB=1;var n=dt(),e=ir(),t=_T(),r=Rg(),i=li(),o=RT(),s=St(),a=q7(),g=Object.getOwnPropertyDescriptor;return Lf.f=n?g:function(I,C){if(I=i(I),C=o(C),a)try{return g(I,C)}catch{}if(s(I,C))return r(!e(t.f,I,C),I[C])},Lf}var bp,QB;function Sle(){if(QB)return bp;QB=1;var n=Te(),e=wt(),t=/#|\.prototype\./,r=function(g,A){var I=o[i(g)];return I===a?!0:I===s?!1:e(A)?n(A):!!A},i=r.normalize=function(g){return String(g).replace(t,".").toLowerCase()},o=r.data={},s=r.NATIVE="N",a=r.POLYFILL="P";return bp=r,bp}var wp,JB;function RI(){if(JB)return wp;JB=1;var n=$7(),e=Mi(),t=Tg(),r=n(n.bind);return wp=function(i,o){return e(i),o===void 0?i:t?r(i,o):function(){return i.apply(o,arguments)}},wp}var Ep={},Sp,ez;function F7(){if(ez)return Sp;ez=1;var n=dt(),e=Te();return Sp=n&&e(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!==42}),Sp}var _p,tz;function qi(){if(tz)return _p;tz=1;var n=Ht(),e=String,t=TypeError;return _p=function(r){if(n(r))return r;throw new t(e(r)+" is not an object")},_p}var rz;function wr(){if(rz)return Ep;rz=1;var n=dt(),e=q7(),t=F7(),r=qi(),i=RT(),o=TypeError,s=Object.defineProperty,a=Object.getOwnPropertyDescriptor,g="enumerable",A="configurable",I="writable";return Ep.f=n?t?function(l,d,u){if(r(l),d=i(d),r(u),typeof l=="function"&&d==="prototype"&&"value"in u&&I in u&&!u[I]){var h=a(l,d);h&&h[I]&&(l[d]=u.value,u={configurable:A in u?u[A]:h[A],enumerable:g in u?u[g]:h[g],writable:!1})}return s(l,d,u)}:s:function(l,d,u){if(r(l),d=i(d),r(u),e)try{return s(l,d,u)}catch{}if("get"in u||"set"in u)throw new o("Accessors not supported");return"value"in u&&(l[d]=u.value),l},Ep}var Op,iz;function Zs(){if(iz)return Op;iz=1;var n=dt(),e=wr(),t=Rg();return Op=n?function(r,i,o){return e.f(r,i,t(1,o))}:function(r,i,o){return r[i]=o,r},Op}var Tp,nz;function Ae(){if(nz)return Tp;nz=1;var n=lt(),e=SI(),t=$7(),r=wt(),i=TI().f,o=Sle(),s=pt(),a=RI(),g=Zs(),A=St(),I=function(C){var l=function(d,u,h){if(this instanceof l){switch(arguments.length){case 0:return new C;case 1:return new C(d);case 2:return new C(d,u)}return new C(d,u,h)}return e(C,this,arguments)};return l.prototype=C.prototype,l};return Tp=function(C,l){var d=C.target,u=C.global,h=C.stat,v=C.proto,f=u?n:h?n[d]:n[d]&&n[d].prototype,c=u?s:s[d]||g(s,d,{})[d],b=c.prototype,p,y,E,S,m,w,_,T,R;for(S in l)p=o(u?S:d+(h?".":"#")+S,C.forced),y=!p&&f&&A(f,S),w=c[S],y&&(C.dontCallGetSet?(R=i(f,S),_=R&&R.value):_=f[S]),m=y&&_?_:l[S],!(!p&&!v&&typeof w==typeof m)&&(C.bind&&y?T=a(m,n):C.wrap&&y?T=I(m):v&&r(m)?T=t(m):T=m,(C.sham||m&&m.sham||w&&w.sham)&&g(T,"sham",!0),g(c,S,T),v&&(E=d+"Prototype",A(s,E)||g(s,E,{}),g(s[E],S,m),C.real&&b&&(p||!b[S])&&g(b,S,m)))},Tp}var oz;function _le(){if(oz)return AB;oz=1;var n=Ae(),e=dt(),t=wr().f;return n({target:"Object",stat:!0,forced:Object.defineProperty!==t,sham:!e},{defineProperty:t}),AB}var sz;function Ole(){if(sz)return Nf.exports;sz=1,_le();var n=pt(),e=n.Object,t=Nf.exports=function(i,o,s){return e.defineProperty(i,o,s)};return e.defineProperty.sham&&(t.sham=!0),Nf.exports}var Rp,az;function k7(){if(az)return Rp;az=1;var n=Ole();return Rp=n,Rp}var Pp,gz;function Tle(){if(gz)return Pp;gz=1;var n=k7();return Pp=n,Pp}var xp,Az;function Rle(){if(Az)return xp;Az=1;var n=Tle();return xp=n,xp}var $p,Iz;function Ple(){return Iz||(Iz=1,$p=Rle()),$p}var xle=Ple(),$le=fe(xle),Cz={},Dp,lz;function mo(){if(lz)return Dp;lz=1;var n=Ni();return Dp=Array.isArray||function(t){return n(t)==="Array"},Dp}var Np,dz;function Dle(){if(dz)return Np;dz=1;var n=Math.ceil,e=Math.floor;return Np=Math.trunc||function(r){var i=+r;return(i>0?e:n)(i)},Np}var Mp,uz;function Hs(){if(uz)return Mp;uz=1;var n=Dle();return Mp=function(e){var t=+e;return t!==t||t===0?0:n(t)},Mp}var qp,hz;function B7(){if(hz)return qp;hz=1;var n=Hs(),e=Math.min;return qp=function(t){var r=n(t);return r>0?e(r,9007199254740991):0},qp}var Fp,cz;function mn(){if(cz)return Fp;cz=1;var n=B7();return Fp=function(e){return n(e.length)},Fp}var kp,fz;function z7(){if(fz)return kp;fz=1;var n=TypeError,e=9007199254740991;return kp=function(t){if(t>e)throw n("Maximum allowed index exceeded");return t},kp}var Bp,pz;function PI(){if(pz)return Bp;pz=1;var n=dt(),e=wr(),t=Rg();return Bp=function(r,i,o){n?e.f(r,i,t(0,o)):r[i]=o},Bp}var zp,vz;function PT(){if(vz)return zp;vz=1;var n=_t(),e=n("toStringTag"),t={};return t[e]="z",zp=String(t)==="[object z]",zp}var jp,mz;function yn(){if(mz)return jp;mz=1;var n=PT(),e=wt(),t=Ni(),r=_t(),i=r("toStringTag"),o=Object,s=t((function(){return arguments})())==="Arguments",a=function(g,A){try{return g[A]}catch{}};return jp=n?t:function(g){var A,I,C;return g===void 0?"Undefined":g===null?"Null":typeof(I=a(A=o(g),i))=="string"?I:s?t(A):(C=t(A))==="Object"&&e(A.callee)?"Arguments":C},jp}var Lp,yz;function Nle(){if(yz)return Lp;yz=1;var n=$e(),e=wt(),t=TT(),r=n(Function.toString);return e(t.inspectSource)||(t.inspectSource=function(i){return r(i)}),Lp=t.inspectSource,Lp}var Gp,bz;function j7(){if(bz)return Gp;bz=1;var n=$e(),e=Te(),t=wt(),r=yn(),i=Ir(),o=Nle(),s=function(){},a=i("Reflect","construct"),g=/^\s*(?:class|function)\b/,A=n(g.exec),I=!g.test(s),C=function(u){if(!t(u))return!1;try{return a(s,[],u),!0}catch{return!1}},l=function(u){if(!t(u))return!1;switch(r(u)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return I||!!A(g,o(u))}catch{return!0}};return l.sham=!0,Gp=!a||e(function(){var d;return C(C.call)||!C(Object)||!C(function(){d=!0})||d})?l:C,Gp}var Wp,wz;function Mle(){if(wz)return Wp;wz=1;var n=mo(),e=j7(),t=Ht(),r=_t(),i=r("species"),o=Array;return Wp=function(s){var a;return n(s)&&(a=s.constructor,e(a)&&(a===o||n(a.prototype))?a=void 0:t(a)&&(a=a[i],a===null&&(a=void 0))),a===void 0?o:a},Wp}var Vp,Ez;function xT(){if(Ez)return Vp;Ez=1;var n=Mle();return Vp=function(e,t){return new(n(e))(t===0?0:t)},Vp}var Zp,Sz;function Dg(){if(Sz)return Zp;Sz=1;var n=Te(),e=_t(),t=xg(),r=e("species");return Zp=function(i){return t>=51||!n(function(){var o=[],s=o.constructor={};return s[r]=function(){return{foo:1}},o[i](Boolean).foo!==1})},Zp}var _z;function L7(){if(_z)return Cz;_z=1;var n=Ae(),e=Te(),t=mo(),r=Ht(),i=Zr(),o=mn(),s=z7(),a=PI(),g=xT(),A=Dg(),I=_t(),C=xg(),l=I("isConcatSpreadable"),d=C>=51||!e(function(){var v=[];return v[l]=!1,v.concat()[0]!==v}),u=function(v){if(!r(v))return!1;var f=v[l];return f!==void 0?!!f:t(v)},h=!d||!A("concat");return n({target:"Array",proto:!0,arity:1,forced:h},{concat:function(f){var c=i(this),b=g(c,0),p=0,y,E,S,m,w;for(y=-1,S=arguments.length;y<S;y++)if(w=y===-1?c:arguments[y],u(w))for(m=o(w),s(p+m),E=0;E<m;E++,p++)E in w&&a(b,p,w[E]);else s(p+1),a(b,p++,w);return b.length=p,b}}),Cz}var Oz={},Tz={},Hp,Rz;function bn(){if(Rz)return Hp;Rz=1;var n=yn(),e=String;return Hp=function(t){if(n(t)==="Symbol")throw new TypeError("Cannot convert a Symbol value to a string");return e(t)},Hp}var Up={},Kp,Pz;function $T(){if(Pz)return Kp;Pz=1;var n=Hs(),e=Math.max,t=Math.min;return Kp=function(r,i){var o=n(r);return o<0?e(o+i,0):t(o,i)},Kp}var Yp,xz;function qle(){if(xz)return Yp;xz=1;var n=li(),e=$T(),t=mn(),r=function(i){return function(o,s,a){var g=n(o),A=t(g);if(A===0)return!i&&-1;var I=e(a,A),C;if(i&&s!==s){for(;A>I;)if(C=g[I++],C!==C)return!0}else for(;A>I;I++)if((i||I in g)&&g[I]===s)return i||I||0;return!i&&-1}};return Yp={includes:r(!0),indexOf:r(!1)},Yp}var Xp,$z;function Ng(){return $z||($z=1,Xp={}),Xp}var Qp,Dz;function G7(){if(Dz)return Qp;Dz=1;var n=$e(),e=St(),t=li(),r=qle().indexOf,i=Ng(),o=n([].push);return Qp=function(s,a){var g=t(s),A=0,I=[],C;for(C in g)!e(i,C)&&e(g,C)&&o(I,C);for(;a.length>A;)e(g,C=a[A++])&&(~r(I,C)||o(I,C));return I},Qp}var Jp,Nz;function DT(){return Nz||(Nz=1,Jp=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]),Jp}var ev,Mz;function xI(){if(Mz)return ev;Mz=1;var n=G7(),e=DT();return ev=Object.keys||function(r){return n(r,e)},ev}var qz;function NT(){if(qz)return Up;qz=1;var n=dt(),e=F7(),t=wr(),r=qi(),i=li(),o=xI();return Up.f=n&&!e?Object.defineProperties:function(a,g){r(a);for(var A=i(g),I=o(g),C=I.length,l=0,d;C>l;)t.f(a,d=I[l++],A[d]);return a},Up}var tv,Fz;function Fle(){if(Fz)return tv;Fz=1;var n=Ir();return tv=n("document","documentElement"),tv}var rv,kz;function $I(){if(kz)return rv;kz=1;var n=Vs(),e=OI(),t=n("keys");return rv=function(r){return t[r]||(t[r]=e(r))},rv}var iv,Bz;function Mg(){if(Bz)return iv;Bz=1;var n=qi(),e=NT(),t=DT(),r=Ng(),i=Fle(),o=M7(),s=$I(),a=">",g="<",A="prototype",I="script",C=s("IE_PROTO"),l=function(){},d=function(c){return g+I+a+c+g+"/"+I+a},u=function(c){c.write(d("")),c.close();var b=c.parentWindow.Object;return c=null,b},h=function(){var c=o("iframe"),b="java"+I+":",p;return c.style.display="none",i.appendChild(c),c.src=String(b),p=c.contentWindow.document,p.open(),p.write(d("document.F=Object")),p.close(),p.F},v,f=function(){try{v=new ActiveXObject("htmlfile")}catch{}f=typeof document<"u"?document.domain&&v?u(v):h():u(v);for(var c=t.length;c--;)delete f[A][t[c]];return f()};return r[C]=!0,iv=Object.create||function(b,p){var y;return b!==null?(l[A]=n(b),y=new l,l[A]=null,y[C]=b):y=f(),p===void 0?y:e.f(y,p)},iv}var nv={},zz;function DI(){if(zz)return nv;zz=1;var n=G7(),e=DT(),t=e.concat("length","prototype");return nv.f=Object.getOwnPropertyNames||function(i){return n(i,t)},nv}var ov={},sv,jz;function Us(){if(jz)return sv;jz=1;var n=$e();return sv=n([].slice),sv}var Lz;function W7(){if(Lz)return ov;Lz=1;var n=Ni(),e=li(),t=DI().f,r=Us(),i=typeof window=="object"&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],o=function(s){try{return t(s)}catch{return r(i)}};return ov.f=function(a){return i&&n(a)==="Window"?o(a):t(e(a))},ov}var av={},Gz;function NI(){return Gz||(Gz=1,av.f=Object.getOwnPropertySymbols),av}var gv,Wz;function qg(){if(Wz)return gv;Wz=1;var n=Zs();return gv=function(e,t,r,i){return i&&i.enumerable?e[t]=r:n(e,t,r),e},gv}var Av,Vz;function MT(){if(Vz)return Av;Vz=1;var n=wr();return Av=function(e,t,r){return n.f(e,t,r)},Av}var Iv={},Zz;function MI(){if(Zz)return Iv;Zz=1;var n=_t();return Iv.f=n,Iv}var Cv,Hz;function He(){if(Hz)return Cv;Hz=1;var n=pt(),e=St(),t=MI(),r=wr().f;return Cv=function(i){var o=n.Symbol||(n.Symbol={});e(o,i)||r(o,i,{value:t.f(i)})},Cv}var lv,Uz;function V7(){if(Uz)return lv;Uz=1;var n=ir(),e=Ir(),t=_t(),r=qg();return lv=function(){var i=e("Symbol"),o=i&&i.prototype,s=o&&o.valueOf,a=t("toPrimitive");o&&!o[a]&&r(o,a,function(g){return n(s,this)},{arity:1})},lv}var dv,Kz;function kle(){if(Kz)return dv;Kz=1;var n=PT(),e=yn();return dv=n?{}.toString:function(){return"[object "+e(this)+"]"},dv}var uv,Yz;function yo(){if(Yz)return uv;Yz=1;var n=PT(),e=wr().f,t=Zs(),r=St(),i=kle(),o=_t(),s=o("toStringTag");return uv=function(a,g,A,I){var C=A?a:a&&a.prototype;C&&(r(C,s)||e(C,s,{configurable:!0,value:g}),I&&!n&&t(C,"toString",i))},uv}var hv,Xz;function Ble(){if(Xz)return hv;Xz=1;var n=lt(),e=wt(),t=n.WeakMap;return hv=e(t)&&/native code/.test(String(t)),hv}var cv,Qz;function Fg(){if(Qz)return cv;Qz=1;var n=Ble(),e=lt(),t=Ht(),r=Zs(),i=St(),o=TT(),s=$I(),a=Ng(),g="Object already initialized",A=e.TypeError,I=e.WeakMap,C,l,d,u=function(c){return d(c)?l(c):C(c,{})},h=function(c){return function(b){var p;if(!t(b)||(p=l(b)).type!==c)throw new A("Incompatible receiver, "+c+" required");return p}};if(n||o.state){var v=o.state||(o.state=new I);v.get=v.get,v.has=v.has,v.set=v.set,C=function(c,b){if(v.has(c))throw new A(g);return b.facade=c,v.set(c,b),b},l=function(c){return v.get(c)||{}},d=function(c){return v.has(c)}}else{var f=s("state");a[f]=!0,C=function(c,b){if(i(c,f))throw new A(g);return b.facade=c,r(c,f,b),b},l=function(c){return i(c,f)?c[f]:{}},d=function(c){return i(c,f)}}return cv={set:C,get:l,has:d,enforce:u,getterFor:h},cv}var fv,Jz;function Ks(){if(Jz)return fv;Jz=1;var n=RI(),e=$e(),t=_I(),r=Zr(),i=mn(),o=xT(),s=e([].push),a=function(g){var A=g===1,I=g===2,C=g===3,l=g===4,d=g===6,u=g===7,h=g===5||d;return function(v,f,c,b){for(var p=r(v),y=t(p),E=i(y),S=n(f,c),m=0,w=b||o,_=A?w(v,E):I||u?w(v,0):void 0,T,R;E>m;m++)if((h||m in y)&&(T=y[m],R=S(T,m,p),g))if(A)_[m]=R;else if(R)switch(g){case 3:return!0;case 5:return T;case 6:return m;case 2:s(_,T)}else switch(g){case 4:return!1;case 7:s(_,T)}return d?-1:C||l?l:_}};return fv={forEach:a(0),map:a(1),filter:a(2),some:a(3),every:a(4),find:a(5),findIndex:a(6),filterReject:a(7)},fv}var ej;function zle(){if(ej)return Tz;ej=1;var n=Ae(),e=lt(),t=ir(),r=$e(),i=Ws(),o=dt(),s=Ls(),a=Te(),g=St(),A=Et(),I=qi(),C=li(),l=RT(),d=bn(),u=Rg(),h=Mg(),v=xI(),f=DI(),c=W7(),b=NI(),p=TI(),y=wr(),E=NT(),S=_T(),m=qg(),w=MT(),_=Vs(),T=$I(),R=Ng(),O=OI(),P=_t(),x=MI(),V=He(),M=V7(),U=yo(),K=Fg(),oe=Ks().forEach,L=T("hidden"),ae="Symbol",he="prototype",ve=K.set,Rt=K.getterFor(ae),le=Object[he],We=e.Symbol,Pt=We&&We[he],ua=e.RangeError,ha=e.TypeError,Tr=e.QObject,zi=p.f,Ve=y.f,ji=c.f,ca=S.f,Li=r([].push),Se=_("symbols"),xt=_("op-symbols"),fa=_("wks"),Rr=!Tr||!Tr[he]||!Tr[he].findChild,Gi=function(Z,N,q){var F=zi(le,N);F&&delete le[N],Ve(Z,N,q),F&&Z!==le&&Ve(le,N,F)},Pr=o&&a(function(){return h(Ve({},"a",{get:function(){return Ve(this,"a",{value:7}).a}})).a!==7})?Gi:Ve,xr=function(Z,N){var q=Se[Z]=h(Pt);return ve(q,{type:ae,tag:Z,description:N}),o||(q.description=N),q},Ut=function(N,q,F){N===le&&Ut(xt,q,F),I(N);var H=l(q);return I(F),g(Se,H)?(F.enumerable?(g(N,L)&&N[L][H]&&(N[L][H]=!1),F=h(F,{enumerable:u(0,!1)})):(g(N,L)||Ve(N,L,u(1,h(null))),N[L][H]=!0),Pr(N,H,F)):Ve(N,H,F)},$r=function(N,q){I(N);var F=C(q),H=v(F).concat(Zi(F));return oe(H,function(ge){(!o||t(Dr,F,ge))&&Ut(N,ge,F[ge])}),N},pa=function(N,q){return q===void 0?h(N):$r(h(N),q)},Dr=function(N){var q=l(N),F=t(ca,this,q);return this===le&&g(Se,q)&&!g(xt,q)?!1:F||!g(this,q)||!g(Se,q)||g(this,L)&&this[L][q]?F:!0},Wi=function(N,q){var F=C(N),H=l(q);if(!(F===le&&g(Se,H)&&!g(xt,H))){var ge=zi(F,H);return ge&&g(Se,H)&&!(g(F,L)&&F[L][H])&&(ge.enumerable=!0),ge}},Vi=function(N){var q=ji(C(N)),F=[];return oe(q,function(H){!g(Se,H)&&!g(R,H)&&Li(F,H)}),F},Zi=function(Z){var N=Z===le,q=ji(N?xt:C(Z)),F=[];return oe(q,function(H){g(Se,H)&&(!N||g(le,H))&&Li(F,Se[H])}),F};return s||(We=function(){if(A(Pt,this))throw new ha("Symbol is not a constructor");var N=!arguments.length||arguments[0]===void 0?void 0:d(arguments[0]),q=O(N),F=function(H){var ge=this===void 0?e:this;ge===le&&t(F,xt,H),g(ge,L)&&g(ge[L],q)&&(ge[L][q]=!1);var Hi=u(1,H);try{Pr(ge,q,Hi)}catch(Ui){if(!(Ui instanceof ua))throw Ui;Gi(ge,q,Hi)}};return o&&Rr&&Pr(le,q,{configurable:!0,set:F}),xr(q,N)},Pt=We[he],m(Pt,"toString",function(){return Rt(this).tag}),m(We,"withoutSetter",function(Z){return xr(O(Z),Z)}),S.f=Dr,y.f=Ut,E.f=$r,p.f=Wi,f.f=c.f=Vi,b.f=Zi,x.f=function(Z){return xr(P(Z),Z)},o&&(w(Pt,"description",{configurable:!0,get:function(){return Rt(this).description}}),i||m(le,"propertyIsEnumerable",Dr,{unsafe:!0}))),n({global:!0,constructor:!0,wrap:!0,forced:!s,sham:!s},{Symbol:We}),oe(v(fa),function(Z){V(Z)}),n({target:ae,stat:!0,forced:!s},{useSetter:function(){Rr=!0},useSimple:function(){Rr=!1}}),n({target:"Object",stat:!0,forced:!s,sham:!o},{create:pa,defineProperty:Ut,defineProperties:$r,getOwnPropertyDescriptor:Wi}),n({target:"Object",stat:!0,forced:!s},{getOwnPropertyNames:Vi}),M(),U(We,ae),R[L]=!0,Tz}var tj={},pv,rj;function Z7(){if(rj)return pv;rj=1;var n=Ls();return pv=n&&!!Symbol.for&&!!Symbol.keyFor,pv}var ij;function jle(){if(ij)return tj;ij=1;var n=Ae(),e=Ir(),t=St(),r=bn(),i=Vs(),o=Z7(),s=i("string-to-symbol-registry"),a=i("symbol-to-string-registry");return n({target:"Symbol",stat:!0,forced:!o},{for:function(g){var A=r(g);if(t(s,A))return s[A];var I=e("Symbol")(A);return s[A]=I,a[I]=A,I}}),tj}var nj={},oj;function Lle(){if(oj)return nj;oj=1;var n=Ae(),e=St(),t=$g(),r=Gs(),i=Vs(),o=Z7(),s=i("symbol-to-string-registry");return n({target:"Symbol",stat:!0,forced:!o},{keyFor:function(g){if(!t(g))throw new TypeError(r(g)+" is not a symbol");if(e(s,g))return s[g]}}),nj}var sj={},vv,aj;function Gle(){if(aj)return vv;aj=1;var n=$e(),e=mo(),t=wt(),r=Ni(),i=bn(),o=n([].push);return vv=function(s){if(t(s))return s;if(e(s)){for(var a=s.length,g=[],A=0;A<a;A++){var I=s[A];typeof I=="string"?o(g,I):(typeof I=="number"||r(I)==="Number"||r(I)==="String")&&o(g,i(I))}var C=g.length,l=!0;return function(d,u){if(l)return l=!1,u;if(e(this))return u;for(var h=0;h<C;h++)if(g[h]===d)return u}}},vv}var gj;function H7(){if(gj)return sj;gj=1;var n=Ae(),e=Ir(),t=SI(),r=ir(),i=$e(),o=Te(),s=wt(),a=$g(),g=Us(),A=Gle(),I=Ls(),C=String,l=e("JSON","stringify"),d=i(/./.exec),u=i("".charAt),h=i("".charCodeAt),v=i("".replace),f=i(1.1.toString),c=/[\uD800-\uDFFF]/g,b=/^[\uD800-\uDBFF]$/,p=/^[\uDC00-\uDFFF]$/,y=!I||o(function(){var w=e("Symbol")("stringify detection");return l([w])!=="[null]"||l({a:w})!=="{}"||l(Object(w))!=="{}"}),E=o(function(){return l("\uDF06\uD834")!=='"\\udf06\\ud834"'||l("\uDEAD")!=='"\\udead"'}),S=function(w,_){var T=g(arguments),R=A(_);if(!(!s(R)&&(w===void 0||a(w))))return T[1]=function(O,P){if(s(R)&&(P=r(R,this,C(O),P)),!a(P))return P},t(l,null,T)},m=function(w,_,T){var R=u(T,_-1),O=u(T,_+1);return d(b,w)&&!d(p,O)||d(p,w)&&!d(b,R)?"\\u"+f(h(w,0),16):w};return l&&n({target:"JSON",stat:!0,arity:3,forced:y||E},{stringify:function(_,T,R){var O=g(arguments),P=t(y?S:l,null,O);return E&&typeof P=="string"?v(P,c,m):P}}),sj}var Aj={},Ij;function Wle(){if(Ij)return Aj;Ij=1;var n=Ae(),e=Ls(),t=Te(),r=NI(),i=Zr(),o=!e||t(function(){r.f(1)});return n({target:"Object",stat:!0,forced:o},{getOwnPropertySymbols:function(a){var g=r.f;return g?g(i(a)):[]}}),Aj}var Cj;function U7(){return Cj||(Cj=1,zle(),jle(),Lle(),H7(),Wle()),Oz}var lj={},dj;function K7(){if(dj)return lj;dj=1;var n=He();return n("asyncDispose"),lj}var uj={},hj;function Vle(){if(hj)return uj;hj=1;var n=He();return n("asyncIterator"),uj}var cj={},fj;function Y7(){if(fj)return cj;fj=1;var n=He();return n("dispose"),cj}var pj={},vj;function Zle(){if(vj)return pj;vj=1;var n=He();return n("hasInstance"),pj}var mj={},yj;function Hle(){if(yj)return mj;yj=1;var n=He();return n("isConcatSpreadable"),mj}var bj={},wj;function X7(){if(wj)return bj;wj=1;var n=He();return n("iterator"),bj}var Ej={},Sj;function Ule(){if(Sj)return Ej;Sj=1;var n=He();return n("match"),Ej}var _j={},Oj;function Kle(){if(Oj)return _j;Oj=1;var n=He();return n("matchAll"),_j}var Tj={},Rj;function Yle(){if(Rj)return Tj;Rj=1;var n=He();return n("replace"),Tj}var Pj={},xj;function Xle(){if(xj)return Pj;xj=1;var n=He();return n("search"),Pj}var $j={},Dj;function Qle(){if(Dj)return $j;Dj=1;var n=He();return n("species"),$j}var Nj={},Mj;function Jle(){if(Mj)return Nj;Mj=1;var n=He();return n("split"),Nj}var qj={},Fj;function Q7(){if(Fj)return qj;Fj=1;var n=He(),e=V7();return n("toPrimitive"),e(),qj}var kj={},Bj;function ede(){if(Bj)return kj;Bj=1;var n=Ir(),e=He(),t=yo();return e("toStringTag"),t(n("Symbol"),"Symbol"),kj}var zj={},jj;function tde(){if(jj)return zj;jj=1;var n=He();return n("unscopables"),zj}var Lj={},Gj;function rde(){if(Gj)return Lj;Gj=1;var n=lt(),e=yo();return e(n.JSON,"JSON",!0),Lj}var mv,Wj;function ide(){if(Wj)return mv;Wj=1,L7(),U7(),K7(),Vle(),Y7(),Zle(),Hle(),X7(),Ule(),Kle(),Yle(),Xle(),Qle(),Jle(),Q7(),ede(),tde(),rde();var n=pt();return mv=n.Symbol,mv}var Vj={},yv,Zj;function nde(){return Zj||(Zj=1,yv=function(){}),yv}var bv,Hj;function Ys(){return Hj||(Hj=1,bv={}),bv}var wv,Uj;function ode(){if(Uj)return wv;Uj=1;var n=dt(),e=St(),t=Function.prototype,r=n&&Object.getOwnPropertyDescriptor,i=e(t,"name"),o=i&&(function(){}).name==="something",s=i&&(!n||n&&r(t,"name").configurable);return wv={EXISTS:i,PROPER:o,CONFIGURABLE:s},wv}var Ev,Kj;function sde(){if(Kj)return Ev;Kj=1;var n=Te();return Ev=!n(function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}),Ev}var Sv,Yj;function J7(){if(Yj)return Sv;Yj=1;var n=St(),e=wt(),t=Zr(),r=$I(),i=sde(),o=r("IE_PROTO"),s=Object,a=s.prototype;return Sv=i?s.getPrototypeOf:function(g){var A=t(g);if(n(A,o))return A[o];var I=A.constructor;return e(I)&&A instanceof I?I.prototype:A instanceof s?a:null},Sv}var _v,Xj;function eJ(){if(Xj)return _v;Xj=1;var n=Te(),e=wt(),t=Ht(),r=Mg(),i=J7(),o=qg(),s=_t(),a=Ws(),g=s("iterator"),A=!1,I,C,l;[].keys&&(l=[].keys(),"next"in l?(C=i(i(l)),C!==Object.prototype&&(I=C)):A=!0);var d=!t(I)||n(function(){var u={};return I[g].call(u)!==u});return d?I={}:a&&(I=r(I)),e(I[g])||o(I,g,function(){return this}),_v={IteratorPrototype:I,BUGGY_SAFARI_ITERATORS:A},_v}var Ov,Qj;function ade(){if(Qj)return Ov;Qj=1;var n=eJ().IteratorPrototype,e=Mg(),t=Rg(),r=yo(),i=Ys(),o=function(){return this};return Ov=function(s,a,g,A){var I=a+" Iterator";return s.prototype=e(n,{next:t(+!A,g)}),r(s,I,!1,!0),i[I]=o,s},Ov}var Tv,Jj;function gde(){if(Jj)return Tv;Jj=1;var n=$e(),e=Mi();return Tv=function(t,r,i){try{return n(e(Object.getOwnPropertyDescriptor(t,r)[i]))}catch{}},Tv}var Rv,eL;function Ade(){if(eL)return Rv;eL=1;var n=Ht();return Rv=function(e){return n(e)||e===null},Rv}var Pv,tL;function Ide(){if(tL)return Pv;tL=1;var n=Ade(),e=String,t=TypeError;return Pv=function(r){if(n(r))return r;throw new t("Can't set "+e(r)+" as a prototype")},Pv}var xv,rL;function Cde(){if(rL)return xv;rL=1;var n=gde(),e=Ht(),t=vo(),r=Ide();return xv=Object.setPrototypeOf||("__proto__"in{}?(function(){var i=!1,o={},s;try{s=n(Object.prototype,"__proto__","set"),s(o,[]),i=o instanceof Array}catch{}return function(g,A){return t(g),r(A),e(g)&&(i?s(g,A):g.__proto__=A),g}})():void 0),xv}var $v,iL;function qT(){if(iL)return $v;iL=1;var n=Ae(),e=ir(),t=Ws(),r=ode(),i=wt(),o=ade(),s=J7(),a=Cde(),g=yo(),A=Zs(),I=qg(),C=_t(),l=Ys(),d=eJ(),u=r.PROPER,h=r.CONFIGURABLE,v=d.IteratorPrototype,f=d.BUGGY_SAFARI_ITERATORS,c=C("iterator"),b="keys",p="values",y="entries",E=function(){return this};return $v=function(S,m,w,_,T,R,O){o(w,m,_);var P=function(ve){if(ve===T&&K)return K;if(!f&&ve&&ve in M)return M[ve];switch(ve){case b:return function(){return new w(this,ve)};case p:return function(){return new w(this,ve)};case y:return function(){return new w(this,ve)}}return function(){return new w(this)}},x=m+" Iterator",V=!1,M=S.prototype,U=M[c]||M["@@iterator"]||T&&M[T],K=!f&&U||P(T),oe=m==="Array"&&M.entries||U,L,ae,he;if(oe&&(L=s(oe.call(new S)),L!==Object.prototype&&L.next&&(!t&&s(L)!==v&&(a?a(L,v):i(L[c])||I(L,c,E)),g(L,x,!0,!0),t&&(l[x]=E))),u&&T===p&&U&&U.name!==p&&(!t&&h?A(M,"name",p):(V=!0,K=function(){return e(U,this)})),T)if(ae={values:P(p),keys:R?K:P(b),entries:P(y)},O)for(he in ae)(f||V||!(he in M))&&I(M,he,ae[he]);else n({target:m,proto:!0,forced:f||V},ae);return(!t||O)&&M[c]!==K&&I(M,c,K,{name:T}),l[m]=K,ae},$v}var Dv,nL;function FT(){return nL||(nL=1,Dv=function(n,e){return{value:n,done:e}}),Dv}var Nv,oL;function wn(){if(oL)return Nv;oL=1;var n=li(),e=nde(),t=Ys(),r=Fg(),i=wr().f,o=qT(),s=FT(),a=Ws(),g=dt(),A="Array Iterator",I=r.set,C=r.getterFor(A);Nv=o(Array,"Array",function(d,u){I(this,{type:A,target:n(d),index:0,kind:u})},function(){var d=C(this),u=d.target,h=d.index++;if(!u||h>=u.length)return d.target=null,s(void 0,!0);switch(d.kind){case"keys":return s(h,!1);case"values":return s(u[h],!1)}return s([h,u[h]],!1)},"values");var l=t.Arguments=t.Array;if(e("keys"),e("values"),e("entries"),!a&&g&&l.name!=="values")try{i(l,"name",{value:"values"})}catch{}return Nv}var Mv,sL;function lde(){return sL||(sL=1,Mv={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}),Mv}var aL;function En(){if(aL)return Vj;aL=1,wn();var n=lde(),e=lt(),t=yo(),r=Ys();for(var i in n)t(e[i],i),r[i]=r.Array;return Vj}var qv,gL;function tJ(){if(gL)return qv;gL=1;var n=ide();return En(),qv=n,qv}var AL={},IL;function dde(){if(IL)return AL;IL=1;var n=_t(),e=wr().f,t=n("metadata"),r=Function.prototype;return r[t]===void 0&&e(r,t,{value:null}),AL}var CL={},lL;function ude(){return lL||(lL=1,K7()),CL}var dL={},uL;function hde(){return uL||(uL=1,Y7()),dL}var hL={},cL;function cde(){if(cL)return hL;cL=1;var n=He();return n("metadata"),hL}var Fv,fL;function fde(){if(fL)return Fv;fL=1;var n=tJ();return dde(),ude(),hde(),cde(),Fv=n,Fv}var pL={},kv,vL;function rJ(){if(vL)return kv;vL=1;var n=Ir(),e=$e(),t=n("Symbol"),r=t.keyFor,i=e(t.prototype.valueOf);return kv=t.isRegisteredSymbol||function(s){try{return r(i(s))!==void 0}catch{return!1}},kv}var mL;function pde(){if(mL)return pL;mL=1;var n=Ae(),e=rJ();return n({target:"Symbol",stat:!0},{isRegisteredSymbol:e}),pL}var yL={},Bv,bL;function iJ(){if(bL)return Bv;bL=1;for(var n=Vs(),e=Ir(),t=$e(),r=$g(),i=_t(),o=e("Symbol"),s=o.isWellKnownSymbol,a=e("Object","getOwnPropertyNames"),g=t(o.prototype.valueOf),A=n("wks"),I=0,C=a(o),l=C.length;I<l;I++)try{var d=C[I];r(o[d])&&i(d)}catch{}return Bv=function(h){if(s&&s(h))return!0;try{for(var v=g(h),f=0,c=a(A),b=c.length;f<b;f++)if(A[c[f]]==v)return!0}catch{}return!1},Bv}var wL;function vde(){if(wL)return yL;wL=1;var n=Ae(),e=iJ();return n({target:"Symbol",stat:!0,forced:!0},{isWellKnownSymbol:e}),yL}var EL={},SL;function mde(){if(SL)return EL;SL=1;var n=He();return n("customMatcher"),EL}var _L={},OL;function yde(){if(OL)return _L;OL=1;var n=He();return n("observable"),_L}var TL={},RL;function bde(){if(RL)return TL;RL=1;var n=Ae(),e=rJ();return n({target:"Symbol",stat:!0,name:"isRegisteredSymbol"},{isRegistered:e}),TL}var PL={},xL;function wde(){if(xL)return PL;xL=1;var n=Ae(),e=iJ();return n({target:"Symbol",stat:!0,name:"isWellKnownSymbol",forced:!0},{isWellKnown:e}),PL}var $L={},DL;function Ede(){if(DL)return $L;DL=1;var n=He();return n("matcher"),$L}var NL={},ML;function Sde(){if(ML)return NL;ML=1;var n=He();return n("metadataKey"),NL}var qL={},FL;function _de(){if(FL)return qL;FL=1;var n=He();return n("patternMatch"),qL}var kL={},BL;function Ode(){if(BL)return kL;BL=1;var n=He();return n("replaceAll"),kL}var zv,zL;function Tde(){if(zL)return zv;zL=1;var n=fde();return pde(),vde(),mde(),yde(),bde(),wde(),Ede(),Sde(),_de(),Ode(),zv=n,zv}var jv,jL;function Rde(){return jL||(jL=1,jv=Tde()),jv}var Pde=Rde(),hA=fe(Pde),LL={},Lv,GL;function xde(){if(GL)return Lv;GL=1;var n=$e(),e=Hs(),t=bn(),r=vo(),i=n("".charAt),o=n("".charCodeAt),s=n("".slice),a=function(g){return function(A,I){var C=t(r(A)),l=e(I),d=C.length,u,h;return l<0||l>=d?g?"":void 0:(u=o(C,l),u<55296||u>56319||l+1===d||(h=o(C,l+1))<56320||h>57343?g?i(C,l):u:g?s(C,l,l+2):(u-55296<<10)+(h-56320)+65536)}};return Lv={codeAt:a(!1),charAt:a(!0)},Lv}var WL;function qI(){if(WL)return LL;WL=1;var n=xde().charAt,e=bn(),t=Fg(),r=qT(),i=FT(),o="String Iterator",s=t.set,a=t.getterFor(o);return r(String,"String",function(g){s(this,{type:o,string:e(g),index:0})},function(){var A=a(this),I=A.string,C=A.index,l;return C>=I.length?i(void 0,!0):(l=n(I,C),A.index+=l.length,i(l,!1))}),LL}var Gv,VL;function $de(){if(VL)return Gv;VL=1,wn(),qI(),X7();var n=MI();return Gv=n.f("iterator"),Gv}var Wv,ZL;function nJ(){if(ZL)return Wv;ZL=1;var n=$de();return En(),Wv=n,Wv}var Vv,HL;function Dde(){if(HL)return Vv;HL=1;var n=nJ();return Vv=n,Vv}var Zv,UL;function Nde(){if(UL)return Zv;UL=1;var n=Dde();return Zv=n,Zv}var Hv,KL;function Mde(){return KL||(KL=1,Hv=Nde()),Hv}var qde=Mde(),Fde=fe(qde);function Ka(n){"@babel/helpers - typeof";return Ka=typeof hA=="function"&&typeof Fde=="symbol"?function(e){return typeof e}:function(e){return e&&typeof hA=="function"&&e.constructor===hA&&e!==hA.prototype?"symbol":typeof e},Ka(n)}var Uv,YL;function kde(){if(YL)return Uv;YL=1,Q7();var n=MI();return Uv=n.f("toPrimitive"),Uv}var Kv,XL;function Bde(){if(XL)return Kv;XL=1;var n=kde();return Kv=n,Kv}var Yv,QL;function zde(){if(QL)return Yv;QL=1;var n=Bde();return Yv=n,Yv}var Xv,JL;function jde(){if(JL)return Xv;JL=1;var n=zde();return Xv=n,Xv}var Qv,e5;function Lde(){return e5||(e5=1,Qv=jde()),Qv}var Gde=Lde(),Wde=fe(Gde);function Vde(n,e){if(Ka(n)!="object"||!n)return n;var t=n[Wde];if(t!==void 0){var r=t.call(n,e);if(Ka(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Zde(n){var e=Vde(n,"string");return Ka(e)=="symbol"?e:e+""}function an(n,e,t){return(e=Zde(e))in n?$le(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}var t5={},Jv,r5;function Hde(){if(r5)return Jv;r5=1;var n=$e(),e=Mi(),t=Ht(),r=St(),i=Us(),o=Tg(),s=Function,a=n([].concat),g=n([].join),A={},I=function(C,l,d){if(!r(A,l)){for(var u=[],h=0;h<l;h++)u[h]="a["+h+"]";A[l]=s("C,a","return new C("+g(u,",")+")")}return A[l](C,d)};return Jv=o?s.bind:function(l){var d=e(this),u=d.prototype,h=i(arguments,1),v=function(){var c=a(h,i(arguments));return this instanceof v?I(d,c.length,c):d.apply(l,c)};return t(u)&&(v.prototype=u),v},Jv}var i5;function Ude(){if(i5)return t5;i5=1;var n=Ae(),e=Hde();return n({target:"Function",proto:!0,forced:Function.bind!==e},{bind:e}),t5}var em,n5;function nr(){if(n5)return em;n5=1;var n=lt(),e=pt();return em=function(t,r){var i=e[t+"Prototype"],o=i&&i[r];if(o)return o;var s=n[t],a=s&&s.prototype;return a&&a[r]},em}var tm,o5;function Kde(){if(o5)return tm;o5=1,Ude();var n=nr();return tm=n("Function","bind"),tm}var rm,s5;function Yde(){if(s5)return rm;s5=1;var n=Et(),e=Kde(),t=Function.prototype;return rm=function(r){var i=r.bind;return r===t||n(t,r)&&i===t.bind?e:i},rm}var im,a5;function Xde(){if(a5)return im;a5=1;var n=Yde();return im=n,im}var nm,g5;function Qde(){return g5||(g5=1,nm=Xde()),nm}var Jde=Qde(),oJ=fe(Jde),A5={},om,I5;function eue(){if(I5)return om;I5=1;var n=Mi(),e=Zr(),t=_I(),r=mn(),i=TypeError,o="Reduce of empty array with no initial value",s=function(a){return function(g,A,I,C){var l=e(g),d=t(l),u=r(l);if(n(A),u===0&&I<2)throw new i(o);var h=a?u-1:0,v=a?-1:1;if(I<2)for(;;){if(h in d){C=d[h],h+=v;break}if(h+=v,a?h<0:u<=h)throw new i(o)}for(;a?h>=0:u>h;h+=v)h in d&&(C=A(C,d[h],h,l));return C}};return om={left:s(!1),right:s(!0)},om}var sm,C5;function FI(){if(C5)return sm;C5=1;var n=Te();return sm=function(e,t){var r=[][e];return!!r&&n(function(){r.call(null,t||function(){return 1},1)})},sm}var am,l5;function sJ(){if(l5)return am;l5=1;var n=lt(),e=js(),t=Ni(),r=function(i){return e.slice(0,i.length)===i};return am=(function(){return r("Bun/")?"BUN":r("Cloudflare-Workers")?"CLOUDFLARE":r("Deno/")?"DENO":r("Node.js/")?"NODE":n.Bun&&typeof Bun.version=="string"?"BUN":n.Deno&&typeof Deno.version=="object"?"DENO":t(n.process)==="process"?"NODE":n.window&&n.document?"BROWSER":"REST"})(),am}var gm,d5;function tue(){if(d5)return gm;d5=1;var n=sJ();return gm=n==="NODE",gm}var u5;function rue(){if(u5)return A5;u5=1;var n=Ae(),e=eue().left,t=FI(),r=xg(),i=tue(),o=!i&&r>79&&r<83,s=o||!t("reduce");return n({target:"Array",proto:!0,forced:s},{reduce:function(g){var A=arguments.length;return e(this,g,A,A>1?arguments[1]:void 0)}}),A5}var Am,h5;function iue(){if(h5)return Am;h5=1,rue();var n=nr();return Am=n("Array","reduce"),Am}var Im,c5;function nue(){if(c5)return Im;c5=1;var n=Et(),e=iue(),t=Array.prototype;return Im=function(r){var i=r.reduce;return r===t||n(t,r)&&i===t.reduce?e:i},Im}var Cm,f5;function oue(){if(f5)return Cm;f5=1;var n=nue();return Cm=n,Cm}var lm,p5;function sue(){return p5||(p5=1,lm=oue()),lm}var aue=sue(),gue=fe(aue),v5={},m5;function Aue(){if(m5)return v5;m5=1;var n=Ae(),e=Ks().filter,t=Dg(),r=t("filter");return n({target:"Array",proto:!0,forced:!r},{filter:function(o){return e(this,o,arguments.length>1?arguments[1]:void 0)}}),v5}var dm,y5;function Iue(){if(y5)return dm;y5=1,Aue();var n=nr();return dm=n("Array","filter"),dm}var um,b5;function Cue(){if(b5)return um;b5=1;var n=Et(),e=Iue(),t=Array.prototype;return um=function(r){var i=r.filter;return r===t||n(t,r)&&i===t.filter?e:i},um}var hm,w5;function lue(){if(w5)return hm;w5=1;var n=Cue();return hm=n,hm}var cm,E5;function due(){return E5||(E5=1,cm=lue()),cm}var uue=due(),Uo=fe(uue),S5={},_5;function hue(){if(_5)return S5;_5=1;var n=Ae(),e=Ks().map,t=Dg(),r=t("map");return n({target:"Array",proto:!0,forced:!r},{map:function(o){return e(this,o,arguments.length>1?arguments[1]:void 0)}}),S5}var fm,O5;function cue(){if(O5)return fm;O5=1,hue();var n=nr();return fm=n("Array","map"),fm}var pm,T5;function fue(){if(T5)return pm;T5=1;var n=Et(),e=cue(),t=Array.prototype;return pm=function(r){var i=r.map;return r===t||n(t,r)&&i===t.map?e:i},pm}var vm,R5;function pue(){if(R5)return vm;R5=1;var n=fue();return vm=n,vm}var mm,P5;function vue(){return P5||(P5=1,mm=pue()),mm}var mue=vue(),kr=fe(mue),ym,x5;function yue(){return x5||(x5=1,ym=tJ()),ym}var bue=yue(),wue=fe(bue),$5={},D5;function Eue(){if(D5)return $5;D5=1;var n=Ae(),e=mo(),t=j7(),r=Ht(),i=$T(),o=mn(),s=li(),a=PI(),g=_t(),A=Dg(),I=Us(),C=A("slice"),l=g("species"),d=Array,u=Math.max;return n({target:"Array",proto:!0,forced:!C},{slice:function(v,f){var c=s(this),b=o(c),p=i(v,b),y=i(f===void 0?b:f,b),E,S,m;if(e(c)&&(E=c.constructor,t(E)&&(E===d||e(E.prototype))?E=void 0:r(E)&&(E=E[l],E===null&&(E=void 0)),E===d||E===void 0))return I(c,p,y);for(S=new(E===void 0?d:E)(u(y-p,0)),m=0;p<y;p++,m++)p in c&&a(S,m,c[p]);return S.length=m,S}}),$5}var bm,N5;function Sue(){if(N5)return bm;N5=1,Eue();var n=nr();return bm=n("Array","slice"),bm}var wm,M5;function _ue(){if(M5)return wm;M5=1;var n=Et(),e=Sue(),t=Array.prototype;return wm=function(r){var i=r.slice;return r===t||n(t,r)&&i===t.slice?e:i},wm}var Em,q5;function Oue(){if(q5)return Em;q5=1;var n=_ue();return Em=n,Em}var Sm,F5;function Tue(){return F5||(F5=1,Sm=Oue()),Sm}var Rue=Tue(),Pue=fe(Rue),k5={},_m,B5;function aJ(){if(B5)return _m;B5=1;var n=Ir(),e=$e(),t=DI(),r=NI(),i=qi(),o=e([].concat);return _m=n("Reflect","ownKeys")||function(a){var g=t.f(i(a)),A=r.f;return A?o(g,A(a)):g},_m}var z5;function xue(){if(z5)return k5;z5=1;var n=Ae(),e=aJ();return n({target:"Reflect",stat:!0},{ownKeys:e}),k5}var Om,j5;function $ue(){if(j5)return Om;j5=1,xue();var n=pt();return Om=n.Reflect.ownKeys,Om}var Tm,L5;function Due(){if(L5)return Tm;L5=1;var n=$ue();return Tm=n,Tm}var Rm,G5;function Nue(){return G5||(G5=1,Rm=Due()),Rm}var Mue=Nue(),que=fe(Mue),W5={},V5;function Fue(){if(V5)return W5;V5=1;var n=Ae(),e=mo();return n({target:"Array",stat:!0},{isArray:e}),W5}var Pm,Z5;function kue(){if(Z5)return Pm;Z5=1,Fue();var n=pt();return Pm=n.Array.isArray,Pm}var xm,H5;function Bue(){if(H5)return xm;H5=1;var n=kue();return xm=n,xm}var $m,U5;function zue(){return U5||(U5=1,$m=Bue()),$m}var jue=zue(),Ur=fe(jue),K5={},Y5;function Lue(){if(Y5)return K5;Y5=1;var n=Ae(),e=Zr(),t=xI(),r=Te(),i=r(function(){t(1)});return n({target:"Object",stat:!0,forced:i},{keys:function(s){return t(e(s))}}),K5}var Dm,X5;function Gue(){if(X5)return Dm;X5=1,Lue();var n=pt();return Dm=n.Object.keys,Dm}var Nm,Q5;function Wue(){if(Q5)return Nm;Q5=1;var n=Gue();return Nm=n,Nm}var Mm,J5;function Vue(){return J5||(J5=1,Mm=Wue()),Mm}var Zue=Vue(),kT=fe(Zue),e3={},qm,t3;function Hue(){if(t3)return qm;t3=1;var n=Ks().forEach,e=FI(),t=e("forEach");return qm=t?[].forEach:function(i){return n(this,i,arguments.length>1?arguments[1]:void 0)},qm}var r3;function Uue(){if(r3)return e3;r3=1;var n=Ae(),e=Hue();return n({target:"Array",proto:!0,forced:[].forEach!==e},{forEach:e}),e3}var Fm,i3;function Kue(){if(i3)return Fm;i3=1,Uue();var n=nr();return Fm=n("Array","forEach"),Fm}var km,n3;function Yue(){if(n3)return km;n3=1;var n=Kue();return km=n,km}var Bm,o3;function Xue(){if(o3)return Bm;o3=1;var n=yn(),e=St(),t=Et(),r=Yue(),i=Array.prototype,o={DOMTokenList:!0,NodeList:!0};return Bm=function(s){var a=s.forEach;return s===i||t(i,s)&&a===i.forEach||e(o,n(s))?r:a},Bm}var zm,s3;function Que(){return s3||(s3=1,zm=Xue()),zm}var Jue=Que(),Jn=fe(Jue),a3={},g3;function ehe(){if(g3)return a3;g3=1;var n=Ae(),e=$e(),t=mo(),r=e([].reverse),i=[1,2];return n({target:"Array",proto:!0,forced:String(i)===String(i.reverse())},{reverse:function(){return t(this)&&(this.length=this.length),r(this)}}),a3}var jm,A3;function the(){if(A3)return jm;A3=1,ehe();var n=nr();return jm=n("Array","reverse"),jm}var Lm,I3;function rhe(){if(I3)return Lm;I3=1;var n=Et(),e=the(),t=Array.prototype;return Lm=function(r){var i=r.reverse;return r===t||n(t,r)&&i===t.reverse?e:i},Lm}var Gm,C3;function ihe(){if(C3)return Gm;C3=1;var n=rhe();return Gm=n,Gm}var Wm,l3;function nhe(){return l3||(l3=1,Wm=ihe()),Wm}var ohe=nhe(),she=fe(ohe),d3={},Vm,u3;function ahe(){if(u3)return Vm;u3=1;var n=dt(),e=mo(),t=TypeError,r=Object.getOwnPropertyDescriptor,i=n&&!(function(){if(this!==void 0)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(o){return o instanceof TypeError}})();return Vm=i?function(o,s){if(e(o)&&!r(o,"length").writable)throw new t("Cannot set read only .length");return o.length=s}:function(o,s){return o.length=s},Vm}var Zm,h3;function gJ(){if(h3)return Zm;h3=1;var n=Gs(),e=TypeError;return Zm=function(t,r){if(!delete t[r])throw new e("Cannot delete property "+n(r)+" of "+n(t))},Zm}var c3;function ghe(){if(c3)return d3;c3=1;var n=Ae(),e=Zr(),t=$T(),r=Hs(),i=mn(),o=ahe(),s=z7(),a=xT(),g=PI(),A=gJ(),I=Dg(),C=I("splice"),l=Math.max,d=Math.min;return n({target:"Array",proto:!0,forced:!C},{splice:function(h,v){var f=e(this),c=i(f),b=t(h,c),p=arguments.length,y,E,S,m,w,_;for(p===0?y=E=0:p===1?(y=0,E=c-b):(y=p-2,E=d(l(r(v),0),c-b)),s(c+y-E),S=a(f,E),m=0;m<E;m++)w=b+m,w in f&&g(S,m,f[w]);if(S.length=E,y<E){for(m=b;m<c-E;m++)w=m+E,_=m+y,w in f?f[_]=f[w]:A(f,_);for(m=c;m>c-E+y;m--)A(f,m-1)}else if(y>E)for(m=c-E;m>b;m--)w=m+E-1,_=m+y-1,w in f?f[_]=f[w]:A(f,_);for(m=0;m<y;m++)f[m+b]=arguments[m+2];return o(f,c-E+y),S}}),d3}var Hm,f3;function Ahe(){if(f3)return Hm;f3=1,ghe();var n=nr();return Hm=n("Array","splice"),Hm}var Um,p3;function Ihe(){if(p3)return Um;p3=1;var n=Et(),e=Ahe(),t=Array.prototype;return Um=function(r){var i=r.splice;return r===t||n(t,r)&&i===t.splice?e:i},Um}var Km,v3;function Che(){if(v3)return Km;v3=1;var n=Ihe();return Km=n,Km}var Ym,m3;function lhe(){return m3||(m3=1,Ym=Che()),Ym}var dhe=lhe(),AJ=fe(dhe),y3={},Xm,b3;function uhe(){if(b3)return Xm;b3=1;var n=dt(),e=$e(),t=ir(),r=Te(),i=xI(),o=NI(),s=_T(),a=Zr(),g=_I(),A=Object.assign,I=Object.defineProperty,C=e([].concat);return Xm=!A||r(function(){if(n&&A({b:1},A(I({},"a",{enumerable:!0,get:function(){I(this,"b",{value:3,enumerable:!1})}}),{b:2})).b!==1)return!0;var l={},d={},u=Symbol("assign detection"),h="abcdefghijklmnopqrst";return l[u]=7,h.split("").forEach(function(v){d[v]=v}),A({},l)[u]!==7||i(A({},d)).join("")!==h})?function(d,u){for(var h=a(d),v=arguments.length,f=1,c=o.f,b=s.f;v>f;)for(var p=g(arguments[f++]),y=c?C(i(p),c(p)):i(p),E=y.length,S=0,m;E>S;)m=y[S++],(!n||t(b,p,m))&&(h[m]=p[m]);return h}:A,Xm}var w3;function hhe(){if(w3)return y3;w3=1;var n=Ae(),e=uhe();return n({target:"Object",stat:!0,arity:2,forced:Object.assign!==e},{assign:e}),y3}var Qm,E3;function che(){if(E3)return Qm;E3=1,hhe();var n=pt();return Qm=n.Object.assign,Qm}var Jm,S3;function fhe(){if(S3)return Jm;S3=1;var n=che();return Jm=n,Jm}var ey,_3;function phe(){return _3||(_3=1,ey=fhe()),ey}var vhe=phe(),mhe=fe(vhe),ty,O3;function yhe(){if(O3)return ty;O3=1,L7();var n=nr();return ty=n("Array","concat"),ty}var ry,T3;function bhe(){if(T3)return ry;T3=1;var n=Et(),e=yhe(),t=Array.prototype;return ry=function(r){var i=r.concat;return r===t||n(t,r)&&i===t.concat?e:i},ry}var iy,R3;function whe(){if(R3)return iy;R3=1;var n=bhe();return iy=n,iy}var ny,P3;function Ehe(){return P3||(P3=1,ny=whe()),ny}var She=Ehe(),_he=fe(She),x3={},$3;function Ohe(){if($3)return x3;$3=1;var n=Ae(),e=dt(),t=Mg();return n({target:"Object",stat:!0,sham:!e},{create:t}),x3}var oy,D3;function The(){if(D3)return oy;D3=1,Ohe();var n=pt(),e=n.Object;return oy=function(r,i){return e.create(r,i)},oy}var sy,N3;function Rhe(){if(N3)return sy;N3=1;var n=The();return sy=n,sy}var ay,M3;function Phe(){return M3||(M3=1,ay=Rhe()),ay}var xhe=Phe(),$he=fe(xhe),q3={},gy,F3;function Dhe(){if(F3)return gy;F3=1;var n=Hs(),e=bn(),t=vo(),r=RangeError;return gy=function(o){var s=e(t(this)),a="",g=n(o);if(g<0||g===1/0)throw new r("Wrong number of repetitions");for(;g>0;(g>>>=1)&&(s+=s))g&1&&(a+=s);return a},gy}var Ay,k3;function Nhe(){if(k3)return Ay;k3=1;var n=$e(),e=B7(),t=bn(),r=Dhe(),i=vo(),o=n(r),s=n("".slice),a=Math.ceil,g=function(A){return function(I,C,l){var d=t(i(I)),u=e(C),h=d.length,v=l===void 0?" ":t(l),f,c;return u<=h||v===""?d:(f=u-h,c=o(v,a(f/v.length)),c.length>f&&(c=s(c,0,f)),A?d+c:c+d)}};return Ay={start:g(!1),end:g(!0)},Ay}var Iy,B3;function Mhe(){if(B3)return Iy;B3=1;var n=$e(),e=Te(),t=Nhe().start,r=RangeError,i=isFinite,o=Math.abs,s=Date.prototype,a=s.toISOString,g=n(s.getTime),A=n(s.getUTCDate),I=n(s.getUTCFullYear),C=n(s.getUTCHours),l=n(s.getUTCMilliseconds),d=n(s.getUTCMinutes),u=n(s.getUTCMonth),h=n(s.getUTCSeconds);return Iy=e(function(){return a.call(new Date(-5e13-1))!=="0385-07-25T07:06:39.999Z"})||!e(function(){a.call(new Date(NaN))})?function(){if(!i(g(this)))throw new r("Invalid time value");var f=this,c=I(f),b=l(f),p=c<0?"-":c>9999?"+":"";return p+t(o(c),p?6:4,0)+"-"+t(u(f)+1,2,0)+"-"+t(A(f),2,0)+"T"+t(C(f),2,0)+":"+t(d(f),2,0)+":"+t(h(f),2,0)+"."+t(b,3,0)+"Z"}:a,Iy}var z3;function qhe(){if(z3)return q3;z3=1;var n=Ae(),e=ir(),t=Zr(),r=N7(),i=Mhe(),o=Ni(),s=Te(),a=s(function(){return new Date(NaN).toJSON()!==null||e(Date.prototype.toJSON,{toISOString:function(){return 1}})!==1});return n({target:"Date",proto:!0,forced:a},{toJSON:function(A){var I=t(this),C=r(I,"number");return typeof C=="number"&&!isFinite(C)?null:!("toISOString"in I)&&o(I)==="Date"?e(i,I):I.toISOString()}}),q3}var Cy,j3;function Fhe(){if(j3)return Cy;j3=1,qhe(),H7();var n=pt(),e=SI();return n.JSON||(n.JSON={stringify:JSON.stringify}),Cy=function(r,i,o){return e(n.JSON.stringify,null,arguments)},Cy}var ly,L3;function khe(){if(L3)return ly;L3=1;var n=Fhe();return ly=n,ly}var dy,G3;function Bhe(){return G3||(G3=1,dy=khe()),dy}var zhe=Bhe(),jhe=fe(zhe),W3={},V3={},uy,Z3;function Lhe(){if(Z3)return uy;Z3=1;var n=TypeError;return uy=function(e,t){if(e<t)throw new n("Not enough arguments");return e},uy}var hy,H3;function IJ(){if(H3)return hy;H3=1;var n=lt(),e=SI(),t=wt(),r=sJ(),i=js(),o=Us(),s=Lhe(),a=n.Function,g=/MSIE .\./.test(i)||r==="BUN"&&(function(){var A=n.Bun.version.split(".");return A.length<3||A[0]==="0"&&(A[1]<3||A[1]==="3"&&A[2]==="0")})();return hy=function(A,I){var C=I?2:1;return g?function(l,d){var u=s(arguments.length,1)>C,h=t(l)?l:a(l),v=u?o(arguments,C):[],f=u?function(){e(h,this,v)}:h;return I?A(f,d):A(f)}:A},hy}var U3;function Ghe(){if(U3)return V3;U3=1;var n=Ae(),e=lt(),t=IJ(),r=t(e.setInterval,!0);return n({global:!0,bind:!0,forced:e.setInterval!==r},{setInterval:r}),V3}var K3={},Y3;function Whe(){if(Y3)return K3;Y3=1;var n=Ae(),e=lt(),t=IJ(),r=t(e.setTimeout,!0);return n({global:!0,bind:!0,forced:e.setTimeout!==r},{setTimeout:r}),K3}var X3;function Vhe(){return X3||(X3=1,Ghe(),Whe()),W3}var cy,Q3;function Zhe(){if(Q3)return cy;Q3=1,Vhe();var n=pt();return cy=n.setTimeout,cy}var fy,J3;function Hhe(){return J3||(J3=1,fy=Zhe()),fy}var Uhe=Hhe(),Khe=fe(Uhe),py={exports:{}},eG;function Yhe(){return eG||(eG=1,(function(n){function e(r){if(r)return t(r);this._callbacks=new Map}function t(r){return Object.assign(r,e.prototype),r._callbacks=new Map,r}e.prototype.on=function(r,i){const o=this._callbacks.get(r)??[];return o.push(i),this._callbacks.set(r,o),this},e.prototype.once=function(r,i){const o=(...s)=>{this.off(r,o),i.apply(this,s)};return o.fn=i,this.on(r,o),this},e.prototype.off=function(r,i){if(r===void 0&&i===void 0)return this._callbacks.clear(),this;if(i===void 0)return this._callbacks.delete(r),this;const o=this._callbacks.get(r);if(o){for(const[s,a]of o.entries())if(a===i||a.fn===i){o.splice(s,1);break}o.length===0?this._callbacks.delete(r):this._callbacks.set(r,o)}return this},e.prototype.emit=function(r,...i){const o=this._callbacks.get(r);if(o){const s=[...o];for(const a of s)a.apply(this,i)}return this},e.prototype.listeners=function(r){return this._callbacks.get(r)??[]},e.prototype.listenerCount=function(r){if(r)return this.listeners(r).length;let i=0;for(const o of this._callbacks.values())i+=o.length;return i},e.prototype.hasListeners=function(r){return this.listenerCount(r)>0},e.prototype.addEventListener=e.prototype.on,e.prototype.removeListener=e.prototype.off,e.prototype.removeEventListener=e.prototype.off,e.prototype.removeAllListeners=e.prototype.off,n.exports=e})(py)),py.exports}var Xhe=Yhe(),Qhe=fe(Xhe);/*! 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 Gr(){return Gr=Object.assign||function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Gr.apply(this,arguments)}function Er(n,e){n.prototype=Object.create(e.prototype),n.prototype.constructor=n,n.__proto__=e}function cA(n){if(n===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return n}var bO;typeof Object.assign!="function"?bO=function(e){if(e==null)throw new TypeError("Cannot convert undefined or null to object");for(var t=Object(e),r=1;r<arguments.length;r++){var i=arguments[r];if(i!=null)for(var o in i)i.hasOwnProperty(o)&&(t[o]=i[o])}return t}:bO=Object.assign;var eo=bO,tG=["","webkit","Moz","MS","ms","o"],Jhe=typeof document>"u"?{style:{}}:document.createElement("div"),ece="function",Ko=Math.round,to=Math.abs,BT=Date.now;function kI(n,e){for(var t,r,i=e[0].toUpperCase()+e.slice(1),o=0;o<tG.length;){if(t=tG[o],r=t?t+i:e,r in n)return r;o++}}var yi;typeof window>"u"?yi={}:yi=window;var CJ=kI(Jhe.style,"touchAction"),lJ=CJ!==void 0;function tce(){if(!lJ)return!1;var n={},e=yi.CSS&&yi.CSS.supports;return["auto","manipulation","pan-y","pan-x","pan-x pan-y","none"].forEach(function(t){return n[t]=e?yi.CSS.supports("touch-action",t):!0}),n}var dJ="compute",uJ="auto",wO="manipulation",Gn="none",Ya="pan-x",Xa="pan-y",fA=tce(),rce=/mobile|tablet|ip(ad|hone|od)|android/i,hJ="ontouchstart"in yi,ice=kI(yi,"PointerEvent")!==void 0,nce=hJ&&rce.test(navigator.userAgent),kg="touch",oce="pen",zT="mouse",sce="kinect",ace=25,Vt=1,bo=2,gt=4,er=8,VA=1,Bg=2,zg=4,jg=8,vs=16,oi=Bg|zg,Wn=jg|vs,cJ=oi|Wn,fJ=["x","y"],ZA=["clientX","clientY"];function bi(n,e,t){var r;if(n)if(n.forEach)n.forEach(e,t);else if(n.length!==void 0)for(r=0;r<n.length;)e.call(t,n[r],r,n),r++;else for(r in n)n.hasOwnProperty(r)&&e.call(t,n[r],r,n)}function BI(n,e){return typeof n===ece?n.apply(e&&e[0]||void 0,e):n}function Mn(n,e){return n.indexOf(e)>-1}function gce(n){if(Mn(n,Gn))return Gn;var e=Mn(n,Ya),t=Mn(n,Xa);return e&&t?Gn:e||t?e?Ya:Xa:Mn(n,wO)?wO:uJ}var pJ=(function(){function n(t,r){this.manager=t,this.set(r)}var e=n.prototype;return e.set=function(r){r===dJ&&(r=this.compute()),lJ&&this.manager.element.style&&fA[r]&&(this.manager.element.style[CJ]=r),this.actions=r.toLowerCase().trim()},e.update=function(){this.set(this.manager.options.touchAction)},e.compute=function(){var r=[];return bi(this.manager.recognizers,function(i){BI(i.options.enable,[i])&&(r=r.concat(i.getTouchAction()))}),gce(r.join(" "))},e.preventDefaults=function(r){var i=r.srcEvent,o=r.offsetDirection;if(this.manager.session.prevented){i.preventDefault();return}var s=this.actions,a=Mn(s,Gn)&&!fA[Gn],g=Mn(s,Xa)&&!fA[Xa],A=Mn(s,Ya)&&!fA[Ya];if(a){var I=r.pointers.length===1,C=r.distance<2,l=r.deltaTime<250;if(I&&C&&l)return}if(!(A&&g)&&(a||g&&o&oi||A&&o&Wn))return this.preventSrc(i)},e.preventSrc=function(r){this.manager.session.prevented=!0,r.preventDefault()},n})();function jT(n,e){for(;n;){if(n===e)return!0;n=n.parentNode}return!1}function vJ(n){var e=n.length;if(e===1)return{x:Ko(n[0].clientX),y:Ko(n[0].clientY)};for(var t=0,r=0,i=0;i<e;)t+=n[i].clientX,r+=n[i].clientY,i++;return{x:Ko(t/e),y:Ko(r/e)}}function rG(n){for(var e=[],t=0;t<n.pointers.length;)e[t]={clientX:Ko(n.pointers[t].clientX),clientY:Ko(n.pointers[t].clientY)},t++;return{timeStamp:BT(),pointers:e,center:vJ(e),deltaX:n.deltaX,deltaY:n.deltaY}}function HA(n,e,t){t||(t=fJ);var r=e[t[0]]-n[t[0]],i=e[t[1]]-n[t[1]];return Math.sqrt(r*r+i*i)}function EO(n,e,t){t||(t=fJ);var r=e[t[0]]-n[t[0]],i=e[t[1]]-n[t[1]];return Math.atan2(i,r)*180/Math.PI}function mJ(n,e){return n===e?VA:to(n)>=to(e)?n<0?Bg:zg:e<0?jg:vs}function Ace(n,e){var t=e.center,r=n.offsetDelta||{},i=n.prevDelta||{},o=n.prevInput||{};(e.eventType===Vt||o.eventType===gt)&&(i=n.prevDelta={x:o.deltaX||0,y:o.deltaY||0},r=n.offsetDelta={x:t.x,y:t.y}),e.deltaX=i.x+(t.x-r.x),e.deltaY=i.y+(t.y-r.y)}function yJ(n,e,t){return{x:e/n||0,y:t/n||0}}function Ice(n,e){return HA(e[0],e[1],ZA)/HA(n[0],n[1],ZA)}function Cce(n,e){return EO(e[1],e[0],ZA)+EO(n[1],n[0],ZA)}function lce(n,e){var t=n.lastInterval||e,r=e.timeStamp-t.timeStamp,i,o,s,a;if(e.eventType!==er&&(r>ace||t.velocity===void 0)){var g=e.deltaX-t.deltaX,A=e.deltaY-t.deltaY,I=yJ(r,g,A);o=I.x,s=I.y,i=to(I.x)>to(I.y)?I.x:I.y,a=mJ(g,A),n.lastInterval=e}else i=t.velocity,o=t.velocityX,s=t.velocityY,a=t.direction;e.velocity=i,e.velocityX=o,e.velocityY=s,e.direction=a}function dce(n,e){var t=n.session,r=e.pointers,i=r.length;t.firstInput||(t.firstInput=rG(e)),i>1&&!t.firstMultiple?t.firstMultiple=rG(e):i===1&&(t.firstMultiple=!1);var o=t.firstInput,s=t.firstMultiple,a=s?s.center:o.center,g=e.center=vJ(r);e.timeStamp=BT(),e.deltaTime=e.timeStamp-o.timeStamp,e.angle=EO(a,g),e.distance=HA(a,g),Ace(t,e),e.offsetDirection=mJ(e.deltaX,e.deltaY);var A=yJ(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=A.x,e.overallVelocityY=A.y,e.overallVelocity=to(A.x)>to(A.y)?A.x:A.y,e.scale=s?Ice(s.pointers,r):1,e.rotation=s?Cce(s.pointers,r):0,e.maxPointers=t.prevInput?e.pointers.length>t.prevInput.maxPointers?e.pointers.length:t.prevInput.maxPointers:e.pointers.length,lce(t,e);var I=n.element,C=e.srcEvent,l;C.composedPath?l=C.composedPath()[0]:C.path?l=C.path[0]:l=C.target,jT(l,I)&&(I=l),e.target=I}function uce(n,e,t){var r=t.pointers.length,i=t.changedPointers.length,o=e&Vt&&r-i===0,s=e&(gt|er)&&r-i===0;t.isFirst=!!o,t.isFinal=!!s,o&&(n.session={}),t.eventType=e,dce(n,t),n.emit("hammer.input",t),n.recognize(t),n.session.prevInput=t}function Qa(n){return n.trim().split(/\s+/g)}function qa(n,e,t){bi(Qa(e),function(r){n.addEventListener(r,t,!1)})}function Fa(n,e,t){bi(Qa(e),function(r){n.removeEventListener(r,t,!1)})}function iG(n){var e=n.ownerDocument||n;return e.defaultView||e.parentWindow||window}var Xs=(function(){function n(t,r){var i=this;this.manager=t,this.callback=r,this.element=t.element,this.target=t.options.inputTarget,this.domHandler=function(o){BI(t.options.enable,[t])&&i.handler(o)},this.init()}var e=n.prototype;return e.handler=function(){},e.init=function(){this.evEl&&qa(this.element,this.evEl,this.domHandler),this.evTarget&&qa(this.target,this.evTarget,this.domHandler),this.evWin&&qa(iG(this.element),this.evWin,this.domHandler)},e.destroy=function(){this.evEl&&Fa(this.element,this.evEl,this.domHandler),this.evTarget&&Fa(this.target,this.evTarget,this.domHandler),this.evWin&&Fa(iG(this.element),this.evWin,this.domHandler)},n})();function ro(n,e,t){if(n.indexOf&&!t)return n.indexOf(e);for(var r=0;r<n.length;){if(t&&n[r][t]==e||!t&&n[r]===e)return r;r++}return-1}var hce={pointerdown:Vt,pointermove:bo,pointerup:gt,pointercancel:er,pointerout:er},cce={2:kg,3:oce,4:zT,5:sce},bJ="pointerdown",wJ="pointermove pointerup pointercancel";yi.MSPointerEvent&&!yi.PointerEvent&&(bJ="MSPointerDown",wJ="MSPointerMove MSPointerUp MSPointerCancel");var EJ=(function(n){Er(e,n);function e(){var r,i=e.prototype;return i.evEl=bJ,i.evWin=wJ,r=n.apply(this,arguments)||this,r.store=r.manager.session.pointerEvents=[],r}var t=e.prototype;return t.handler=function(i){var o=this.store,s=!1,a=i.type.toLowerCase().replace("ms",""),g=hce[a],A=cce[i.pointerType]||i.pointerType,I=A===kg,C=ro(o,i.pointerId,"pointerId");g&Vt&&(i.button===0||I)?C<0&&(o.push(i),C=o.length-1):g&(gt|er)&&(s=!0),!(C<0)&&(o[C]=i,this.callback(this.manager,g,{pointers:o,changedPointers:[i],pointerType:A,srcEvent:i}),s&&o.splice(C,1))},e})(Xs);function Ja(n){return Array.prototype.slice.call(n,0)}function LT(n,e,t){for(var r=[],i=[],o=0;o<n.length;){var s=e?n[o][e]:n[o];ro(i,s)<0&&r.push(n[o]),i[o]=s,o++}return t&&(e?r=r.sort(function(a,g){return a[e]>g[e]}):r=r.sort()),r}var fce={touchstart:Vt,touchmove:bo,touchend:gt,touchcancel:er},pce="touchstart touchmove touchend touchcancel",GT=(function(n){Er(e,n);function e(){var r;return e.prototype.evTarget=pce,r=n.apply(this,arguments)||this,r.targetIds={},r}var t=e.prototype;return t.handler=function(i){var o=fce[i.type],s=vce.call(this,i,o);s&&this.callback(this.manager,o,{pointers:s[0],changedPointers:s[1],pointerType:kg,srcEvent:i})},e})(Xs);function vce(n,e){var t=Ja(n.touches),r=this.targetIds;if(e&(Vt|bo)&&t.length===1)return r[t[0].identifier]=!0,[t,t];var i,o,s=Ja(n.changedTouches),a=[],g=this.target;if(o=t.filter(function(A){return jT(A.target,g)}),e===Vt)for(i=0;i<o.length;)r[o[i].identifier]=!0,i++;for(i=0;i<s.length;)r[s[i].identifier]&&a.push(s[i]),e&(gt|er)&&delete r[s[i].identifier],i++;if(a.length)return[LT(o.concat(a),"identifier",!0),a]}var mce={mousedown:Vt,mousemove:bo,mouseup:gt},yce="mousedown",bce="mousemove mouseup",WT=(function(n){Er(e,n);function e(){var r,i=e.prototype;return i.evEl=yce,i.evWin=bce,r=n.apply(this,arguments)||this,r.pressed=!1,r}var t=e.prototype;return t.handler=function(i){var o=mce[i.type];o&Vt&&i.button===0&&(this.pressed=!0),o&bo&&i.which!==1&&(o=gt),this.pressed&&(o>&&(this.pressed=!1),this.callback(this.manager,o,{pointers:[i],changedPointers:[i],pointerType:zT,srcEvent:i}))},e})(Xs),wce=2500,nG=25;function oG(n){var e=n.changedPointers,t=e[0];if(t.identifier===this.primaryTouch){var r={x:t.clientX,y:t.clientY},i=this.lastTouches;this.lastTouches.push(r);var o=function(){var a=i.indexOf(r);a>-1&&i.splice(a,1)};setTimeout(o,wce)}}function Ece(n,e){n&Vt?(this.primaryTouch=e.changedPointers[0].identifier,oG.call(this,e)):n&(gt|er)&&oG.call(this,e)}function Sce(n){for(var e=n.srcEvent.clientX,t=n.srcEvent.clientY,r=0;r<this.lastTouches.length;r++){var i=this.lastTouches[r],o=Math.abs(e-i.x),s=Math.abs(t-i.y);if(o<=nG&&s<=nG)return!0}return!1}var SJ=(function(){var n=(function(e){Er(t,e);function t(i,o){var s;return s=e.call(this,i,o)||this,s.handler=function(a,g,A){var I=A.pointerType===kg,C=A.pointerType===zT;if(!(C&&A.sourceCapabilities&&A.sourceCapabilities.firesTouchEvents)){if(I)Ece.call(cA(cA(s)),g,A);else if(C&&Sce.call(cA(cA(s)),A))return;s.callback(a,g,A)}},s.touch=new GT(s.manager,s.handler),s.mouse=new WT(s.manager,s.handler),s.primaryTouch=null,s.lastTouches=[],s}var r=t.prototype;return r.destroy=function(){this.touch.destroy(),this.mouse.destroy()},t})(Xs);return n})();function _ce(n){var e,t=n.options.inputClass;return t?e=t:ice?e=EJ:nce?e=GT:hJ?e=SJ:e=WT,new e(n,uce)}function Yo(n,e,t){return Array.isArray(n)?(bi(n,t[e],t),!0):!1}var TA=1,pr=2,ms=4,gn=8,wi=gn,eg=16,Qr=32,Oce=1;function Tce(){return Oce++}function pA(n,e){var t=e.manager;return t?t.get(n):n}function sG(n){return n&eg?"cancel":n&gn?"end":n&ms?"move":n&pr?"start":""}var Lg=(function(){function n(t){t===void 0&&(t={}),this.options=Gr({enable:!0},t),this.id=Tce(),this.manager=null,this.state=TA,this.simultaneous={},this.requireFail=[]}var e=n.prototype;return e.set=function(r){return eo(this.options,r),this.manager&&this.manager.touchAction.update(),this},e.recognizeWith=function(r){if(Yo(r,"recognizeWith",this))return this;var i=this.simultaneous;return r=pA(r,this),i[r.id]||(i[r.id]=r,r.recognizeWith(this)),this},e.dropRecognizeWith=function(r){return Yo(r,"dropRecognizeWith",this)?this:(r=pA(r,this),delete this.simultaneous[r.id],this)},e.requireFailure=function(r){if(Yo(r,"requireFailure",this))return this;var i=this.requireFail;return r=pA(r,this),ro(i,r)===-1&&(i.push(r),r.requireFailure(this)),this},e.dropRequireFailure=function(r){if(Yo(r,"dropRequireFailure",this))return this;r=pA(r,this);var i=ro(this.requireFail,r);return i>-1&&this.requireFail.splice(i,1),this},e.hasRequireFailures=function(){return this.requireFail.length>0},e.canRecognizeWith=function(r){return!!this.simultaneous[r.id]},e.emit=function(r){var i=this,o=this.state;function s(a){i.manager.emit(a,r)}o<gn&&s(i.options.event+sG(o)),s(i.options.event),r.additionalEvent&&s(r.additionalEvent),o>=gn&&s(i.options.event+sG(o))},e.tryEmit=function(r){if(this.canEmit())return this.emit(r);this.state=Qr},e.canEmit=function(){for(var r=0;r<this.requireFail.length;){if(!(this.requireFail[r].state&(Qr|TA)))return!1;r++}return!0},e.recognize=function(r){var i=eo({},r);if(!BI(this.options.enable,[this,i])){this.reset(),this.state=Qr;return}this.state&(wi|eg|Qr)&&(this.state=TA),this.state=this.process(i),this.state&(pr|ms|gn|eg)&&this.tryEmit(i)},e.process=function(r){},e.getTouchAction=function(){},e.reset=function(){},n})(),SO=(function(n){Er(e,n);function e(r){var i;return r===void 0&&(r={}),i=n.call(this,Gr({event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},r))||this,i.pTime=!1,i.pCenter=!1,i._timer=null,i._input=null,i.count=0,i}var t=e.prototype;return t.getTouchAction=function(){return[wO]},t.process=function(i){var o=this,s=this.options,a=i.pointers.length===s.pointers,g=i.distance<s.threshold,A=i.deltaTime<s.time;if(this.reset(),i.eventType&Vt&&this.count===0)return this.failTimeout();if(g&&A&&a){if(i.eventType!==gt)return this.failTimeout();var I=this.pTime?i.timeStamp-this.pTime<s.interval:!0,C=!this.pCenter||HA(this.pCenter,i.center)<s.posThreshold;this.pTime=i.timeStamp,this.pCenter=i.center,!C||!I?this.count=1:this.count+=1,this._input=i;var l=this.count%s.taps;if(l===0)return this.hasRequireFailures()?(this._timer=setTimeout(function(){o.state=wi,o.tryEmit()},s.interval),pr):wi}return Qr},t.failTimeout=function(){var i=this;return this._timer=setTimeout(function(){i.state=Qr},this.options.interval),Qr},t.reset=function(){clearTimeout(this._timer)},t.emit=function(){this.state===wi&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))},e})(Lg),ys=(function(n){Er(e,n);function e(r){return r===void 0&&(r={}),n.call(this,Gr({pointers:1},r))||this}var t=e.prototype;return t.attrTest=function(i){var o=this.options.pointers;return o===0||i.pointers.length===o},t.process=function(i){var o=this.state,s=i.eventType,a=o&(pr|ms),g=this.attrTest(i);return a&&(s&er||!g)?o|eg:a||g?s>?o|gn:o&pr?o|ms:pr:Qr},e})(Lg);function _J(n){return n===vs?"down":n===jg?"up":n===Bg?"left":n===zg?"right":""}var VT=(function(n){Er(e,n);function e(r){var i;return r===void 0&&(r={}),i=n.call(this,Gr({event:"pan",threshold:10,pointers:1,direction:cJ},r))||this,i.pX=null,i.pY=null,i}var t=e.prototype;return t.getTouchAction=function(){var i=this.options.direction,o=[];return i&oi&&o.push(Xa),i&Wn&&o.push(Ya),o},t.directionTest=function(i){var o=this.options,s=!0,a=i.distance,g=i.direction,A=i.deltaX,I=i.deltaY;return g&o.direction||(o.direction&oi?(g=A===0?VA:A<0?Bg:zg,s=A!==this.pX,a=Math.abs(i.deltaX)):(g=I===0?VA:I<0?jg:vs,s=I!==this.pY,a=Math.abs(i.deltaY))),i.direction=g,s&&a>o.threshold&&g&o.direction},t.attrTest=function(i){return ys.prototype.attrTest.call(this,i)&&(this.state&pr||!(this.state&pr)&&this.directionTest(i))},t.emit=function(i){this.pX=i.deltaX,this.pY=i.deltaY;var o=_J(i.direction);o&&(i.additionalEvent=this.options.event+o),n.prototype.emit.call(this,i)},e})(ys),OJ=(function(n){Er(e,n);function e(r){return r===void 0&&(r={}),n.call(this,Gr({event:"swipe",threshold:10,velocity:.3,direction:oi|Wn,pointers:1},r))||this}var t=e.prototype;return t.getTouchAction=function(){return VT.prototype.getTouchAction.call(this)},t.attrTest=function(i){var o=this.options.direction,s;return o&(oi|Wn)?s=i.overallVelocity:o&oi?s=i.overallVelocityX:o&Wn&&(s=i.overallVelocityY),n.prototype.attrTest.call(this,i)&&o&i.offsetDirection&&i.distance>this.options.threshold&&i.maxPointers===this.options.pointers&&to(s)>this.options.velocity&&i.eventType>},t.emit=function(i){var o=_J(i.offsetDirection);o&&this.manager.emit(this.options.event+o,i),this.manager.emit(this.options.event,i)},e})(ys),TJ=(function(n){Er(e,n);function e(r){return r===void 0&&(r={}),n.call(this,Gr({event:"pinch",threshold:0,pointers:2},r))||this}var t=e.prototype;return t.getTouchAction=function(){return[Gn]},t.attrTest=function(i){return n.prototype.attrTest.call(this,i)&&(Math.abs(i.scale-1)>this.options.threshold||this.state&pr)},t.emit=function(i){if(i.scale!==1){var o=i.scale<1?"in":"out";i.additionalEvent=this.options.event+o}n.prototype.emit.call(this,i)},e})(ys),RJ=(function(n){Er(e,n);function e(r){return r===void 0&&(r={}),n.call(this,Gr({event:"rotate",threshold:0,pointers:2},r))||this}var t=e.prototype;return t.getTouchAction=function(){return[Gn]},t.attrTest=function(i){return n.prototype.attrTest.call(this,i)&&(Math.abs(i.rotation)>this.options.threshold||this.state&pr)},e})(ys),PJ=(function(n){Er(e,n);function e(r){var i;return r===void 0&&(r={}),i=n.call(this,Gr({event:"press",pointers:1,time:251,threshold:9},r))||this,i._timer=null,i._input=null,i}var t=e.prototype;return t.getTouchAction=function(){return[uJ]},t.process=function(i){var o=this,s=this.options,a=i.pointers.length===s.pointers,g=i.distance<s.threshold,A=i.deltaTime>s.time;if(this._input=i,!g||!a||i.eventType&(gt|er)&&!A)this.reset();else if(i.eventType&Vt)this.reset(),this._timer=setTimeout(function(){o.state=wi,o.tryEmit()},s.time);else if(i.eventType>)return wi;return Qr},t.reset=function(){clearTimeout(this._timer)},t.emit=function(i){this.state===wi&&(i&&i.eventType>?this.manager.emit(this.options.event+"up",i):(this._input.timeStamp=BT(),this.manager.emit(this.options.event,this._input)))},e})(Lg),xJ={domEvents:!1,touchAction:dJ,enable:!0,inputTarget:null,inputClass:null,cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},aG=[[RJ,{enable:!1}],[TJ,{enable:!1},["rotate"]],[OJ,{direction:oi}],[VT,{direction:oi},["swipe"]],[SO],[SO,{event:"doubletap",taps:2},["tap"]],[PJ]],Rce=1,gG=2;function AG(n,e){var t=n.element;if(t.style){var r;bi(n.options.cssProps,function(i,o){r=kI(t.style,o),e?(n.oldCssProps[r]=t.style[r],t.style[r]=i):t.style[r]=n.oldCssProps[r]||""}),e||(n.oldCssProps={})}}function Pce(n,e){var t=document.createEvent("Event");t.initEvent(n,!0,!0),t.gesture=e,e.target.dispatchEvent(t)}var IG=(function(){function n(t,r){var i=this;this.options=eo({},xJ,r||{}),this.options.inputTarget=this.options.inputTarget||t,this.handlers={},this.session={},this.recognizers=[],this.oldCssProps={},this.element=t,this.input=_ce(this),this.touchAction=new pJ(this,this.options.touchAction),AG(this,!0),bi(this.options.recognizers,function(o){var s=i.add(new o[0](o[1]));o[2]&&s.recognizeWith(o[2]),o[3]&&s.requireFailure(o[3])},this)}var e=n.prototype;return e.set=function(r){return eo(this.options,r),r.touchAction&&this.touchAction.update(),r.inputTarget&&(this.input.destroy(),this.input.target=r.inputTarget,this.input.init()),this},e.stop=function(r){this.session.stopped=r?gG:Rce},e.recognize=function(r){var i=this.session;if(!i.stopped){this.touchAction.preventDefaults(r);var o,s=this.recognizers,a=i.curRecognizer;(!a||a&&a.state&wi)&&(i.curRecognizer=null,a=null);for(var g=0;g<s.length;)o=s[g],i.stopped!==gG&&(!a||o===a||o.canRecognizeWith(a))?o.recognize(r):o.reset(),!a&&o.state&(pr|ms|gn)&&(i.curRecognizer=o,a=o),g++}},e.get=function(r){if(r instanceof Lg)return r;for(var i=this.recognizers,o=0;o<i.length;o++)if(i[o].options.event===r)return i[o];return null},e.add=function(r){if(Yo(r,"add",this))return this;var i=this.get(r.options.event);return i&&this.remove(i),this.recognizers.push(r),r.manager=this,this.touchAction.update(),r},e.remove=function(r){if(Yo(r,"remove",this))return this;var i=this.get(r);if(r){var o=this.recognizers,s=ro(o,i);s!==-1&&(o.splice(s,1),this.touchAction.update())}return this},e.on=function(r,i){if(r===void 0||i===void 0)return this;var o=this.handlers;return bi(Qa(r),function(s){o[s]=o[s]||[],o[s].push(i)}),this},e.off=function(r,i){if(r===void 0)return this;var o=this.handlers;return bi(Qa(r),function(s){i?o[s]&&o[s].splice(ro(o[s],i),1):delete o[s]}),this},e.emit=function(r,i){this.options.domEvents&&Pce(r,i);var o=this.handlers[r]&&this.handlers[r].slice();if(!(!o||!o.length)){i.type=r,i.preventDefault=function(){i.srcEvent.preventDefault()};for(var s=0;s<o.length;)o[s](i),s++}},e.destroy=function(){this.element&&AG(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null},n})(),xce={touchstart:Vt,touchmove:bo,touchend:gt,touchcancel:er},$ce="touchstart",Dce="touchstart touchmove touchend touchcancel",Nce=(function(n){Er(e,n);function e(){var r,i=e.prototype;return i.evTarget=$ce,i.evWin=Dce,r=n.apply(this,arguments)||this,r.started=!1,r}var t=e.prototype;return t.handler=function(i){var o=xce[i.type];if(o===Vt&&(this.started=!0),!!this.started){var s=Mce.call(this,i,o);o&(gt|er)&&s[0].length-s[1].length===0&&(this.started=!1),this.callback(this.manager,o,{pointers:s[0],changedPointers:s[1],pointerType:kg,srcEvent:i})}},e})(Xs);function Mce(n,e){var t=Ja(n.touches),r=Ja(n.changedTouches);return e&(gt|er)&&(t=LT(t.concat(r),"identifier",!0)),[t,r]}function $J(n,e,t){var r="DEPRECATED METHOD: "+e+`
|
||
`+t+` AT
|
||
`;return function(){var i=new Error("get-stack-trace"),o=i&&i.stack?i.stack.replace(/^[^\(]+?[\n$]/gm,"").replace(/^\s+at\s+/gm,"").replace(/^Object.<anonymous>\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",s=window.console&&(window.console.warn||window.console.log);return s&&s.call(window.console,r,o),n.apply(this,arguments)}}var DJ=$J(function(n,e,t){for(var r=Object.keys(e),i=0;i<r.length;)(!t||t&&n[r[i]]===void 0)&&(n[r[i]]=e[r[i]]),i++;return n},"extend","Use `assign`."),qce=$J(function(n,e){return DJ(n,e,!0)},"merge","Use `assign`.");function Fce(n,e,t){var r=e.prototype,i;i=n.prototype=Object.create(r),i.constructor=n,i._super=r,t&&eo(i,t)}function CG(n,e){return function(){return n.apply(e,arguments)}}var kce=(function(){var n=function(t,r){return r===void 0&&(r={}),new IG(t,Gr({recognizers:aG.concat()},r))};return n.VERSION="2.0.17-rc",n.DIRECTION_ALL=cJ,n.DIRECTION_DOWN=vs,n.DIRECTION_LEFT=Bg,n.DIRECTION_RIGHT=zg,n.DIRECTION_UP=jg,n.DIRECTION_HORIZONTAL=oi,n.DIRECTION_VERTICAL=Wn,n.DIRECTION_NONE=VA,n.DIRECTION_DOWN=vs,n.INPUT_START=Vt,n.INPUT_MOVE=bo,n.INPUT_END=gt,n.INPUT_CANCEL=er,n.STATE_POSSIBLE=TA,n.STATE_BEGAN=pr,n.STATE_CHANGED=ms,n.STATE_ENDED=gn,n.STATE_RECOGNIZED=wi,n.STATE_CANCELLED=eg,n.STATE_FAILED=Qr,n.Manager=IG,n.Input=Xs,n.TouchAction=pJ,n.TouchInput=GT,n.MouseInput=WT,n.PointerEventInput=EJ,n.TouchMouseInput=SJ,n.SingleTouchInput=Nce,n.Recognizer=Lg,n.AttrRecognizer=ys,n.Tap=SO,n.Pan=VT,n.Swipe=OJ,n.Pinch=TJ,n.Rotate=RJ,n.Press=PJ,n.on=qa,n.off=Fa,n.each=bi,n.merge=qce,n.extend=DJ,n.bindFn=CG,n.assign=eo,n.inherit=Fce,n.bindFn=CG,n.prefixed=kI,n.toArray=Ja,n.inArray=ro,n.uniqueArray=LT,n.splitStr=Qa,n.boolOrFn=BI,n.hasParent=jT,n.addEventListeners=qa,n.removeEventListeners=Fa,n.defaults=eo({},xJ,{preset:aG}),n})();const NJ=wue("DELETE");function Bce(n){for(var e=arguments.length,t=new Array(e>1?e-1:0),r=1;r<e;r++)t[r-1]=arguments[r];return MJ({},n,...t)}function MJ(){const n=UA(...arguments);return FJ(n),n}function UA(){for(var n=arguments.length,e=new Array(n),t=0;t<n;t++)e[t]=arguments[t];if(e.length<2)return e[0];if(e.length>2)return UA(MJ(e[0],e[1]),...Pue(e).call(e,2));const r=e[0],i=e[1];if(r instanceof Date&&i instanceof Date)return r.setTime(i.getTime()),r;for(const o of que(i))Object.prototype.propertyIsEnumerable.call(i,o)&&(i[o]===NJ?delete r[o]:r[o]!==null&&i[o]!==null&&typeof r[o]=="object"&&typeof i[o]=="object"&&!Ur(r[o])&&!Ur(i[o])?r[o]=UA(r[o],i[o]):r[o]=qJ(i[o]));return r}function qJ(n){return Ur(n)?kr(n).call(n,e=>qJ(e)):typeof n=="object"&&n!==null?n instanceof Date?new Date(n.getTime()):UA({},n):n}function FJ(n){for(const e of kT(n))n[e]===NJ?delete n[e]:typeof n[e]=="object"&&n[e]!==null&&FJ(n[e])}function zce(){const n=()=>{};return{on:n,off:n,destroy:n,emit:n,get(){return{set:n}}}}const jce=typeof window<"u"?window.Hammer||kce:function(){return zce()};function hi(n){var e;this._cleanupQueue=[],this.active=!1,this._dom={container:n,overlay:document.createElement("div")},this._dom.overlay.classList.add("vis-overlay"),this._dom.container.appendChild(this._dom.overlay),this._cleanupQueue.push(()=>{this._dom.overlay.parentNode.removeChild(this._dom.overlay)});const t=jce(this._dom.overlay);t.on("tap",oJ(e=this._onTapOverlay).call(e,this)),this._cleanupQueue.push(()=>{t.destroy()});const r=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];Jn(r).call(r,i=>{t.on(i,o=>{o.srcEvent.stopPropagation()})}),document&&document.body&&(this._onClick=i=>{Lce(i.target,n)||this.deactivate()},document.body.addEventListener("click",this._onClick),this._cleanupQueue.push(()=>{document.body.removeEventListener("click",this._onClick)})),this._escListener=i=>{("key"in i?i.key==="Escape":i.keyCode===27)&&this.deactivate()}}Qhe(hi.prototype);hi.current=null;hi.prototype.destroy=function(){this.deactivate();for(const t of she(n=AJ(e=this._cleanupQueue).call(e,0)).call(n)){var n,e;t()}};hi.prototype.activate=function(){hi.current&&hi.current.deactivate(),hi.current=this,this.active=!0,this._dom.overlay.style.display="none",this._dom.container.classList.add("vis-active"),this.emit("change"),this.emit("activate"),document.body.addEventListener("keydown",this._escListener)};hi.prototype.deactivate=function(){this.active=!1,this._dom.overlay.style.display="block",this._dom.container.classList.remove("vis-active"),document.body.removeEventListener("keydown",this._escListener),this.emit("change"),this.emit("deactivate")};hi.prototype._onTapOverlay=function(n){this.activate(),n.srcEvent.stopPropagation()};function Lce(n,e){for(;n;){if(n===e)return!0;n=n.parentNode}return!1}var vy,lG;function Gce(){if(lG)return vy;lG=1,U7();var n=pt();return vy=n.Object.getOwnPropertySymbols,vy}var my,dG;function Wce(){if(dG)return my;dG=1;var n=Gce();return my=n,my}var yy,uG;function Vce(){return uG||(uG=1,yy=Wce()),yy}var Zce=Vce(),hG=fe(Zce),by={exports:{}},cG={},fG;function Hce(){if(fG)return cG;fG=1;var n=Ae(),e=Te(),t=li(),r=TI().f,i=dt(),o=!i||e(function(){r(1)});return n({target:"Object",stat:!0,forced:o,sham:!i},{getOwnPropertyDescriptor:function(a,g){return r(t(a),g)}}),cG}var pG;function Uce(){if(pG)return by.exports;pG=1,Hce();var n=pt(),e=n.Object,t=by.exports=function(i,o){return e.getOwnPropertyDescriptor(i,o)};return e.getOwnPropertyDescriptor.sham&&(t.sham=!0),by.exports}var wy,vG;function Kce(){if(vG)return wy;vG=1;var n=Uce();return wy=n,wy}var Ey,mG;function Yce(){return mG||(mG=1,Ey=Kce()),Ey}var Xce=Yce(),kJ=fe(Xce),yG={},bG;function Qce(){if(bG)return yG;bG=1;var n=Ae(),e=dt(),t=aJ(),r=li(),i=TI(),o=PI();return n({target:"Object",stat:!0,sham:!e},{getOwnPropertyDescriptors:function(a){for(var g=r(a),A=i.f,I=t(g),C={},l=0,d,u;I.length>l;)u=A(g,d=I[l++]),u!==void 0&&o(C,d,u);return C}}),yG}var Sy,wG;function Jce(){if(wG)return Sy;wG=1,Qce();var n=pt();return Sy=n.Object.getOwnPropertyDescriptors,Sy}var _y,EG;function efe(){if(EG)return _y;EG=1;var n=Jce();return _y=n,_y}var Oy,SG;function tfe(){return SG||(SG=1,Oy=efe()),Oy}var rfe=tfe(),_G=fe(rfe),Ty={exports:{}},OG={},TG;function ife(){if(TG)return OG;TG=1;var n=Ae(),e=dt(),t=NT().f;return n({target:"Object",stat:!0,forced:Object.defineProperties!==t,sham:!e},{defineProperties:t}),OG}var RG;function nfe(){if(RG)return Ty.exports;RG=1,ife();var n=pt(),e=n.Object,t=Ty.exports=function(i,o){return e.defineProperties(i,o)};return e.defineProperties.sham&&(t.sham=!0),Ty.exports}var Ry,PG;function ofe(){if(PG)return Ry;PG=1;var n=nfe();return Ry=n,Ry}var Py,xG;function sfe(){return xG||(xG=1,Py=ofe()),Py}var afe=sfe(),gfe=fe(afe),xy,$G;function Afe(){return $G||($G=1,xy=k7()),xy}var Ife=Afe(),Cfe=fe(Ife),DG={},NG={},$y={exports:{}},Dy,MG;function lfe(){if(MG)return Dy;MG=1;var n=Te();return Dy=n(function(){if(typeof ArrayBuffer=="function"){var e=new ArrayBuffer(8);Object.isExtensible(e)&&Object.defineProperty(e,"a",{value:8})}}),Dy}var Ny,qG;function dfe(){if(qG)return Ny;qG=1;var n=Te(),e=Ht(),t=Ni(),r=lfe(),i=Object.isExtensible,o=n(function(){});return Ny=o||r?function(a){return!e(a)||r&&t(a)==="ArrayBuffer"?!1:i?i(a):!0}:i,Ny}var My,FG;function ufe(){if(FG)return My;FG=1;var n=Te();return My=!n(function(){return Object.isExtensible(Object.preventExtensions({}))}),My}var kG;function BJ(){if(kG)return $y.exports;kG=1;var n=Ae(),e=$e(),t=Ng(),r=Ht(),i=St(),o=wr().f,s=DI(),a=W7(),g=dfe(),A=OI(),I=ufe(),C=!1,l=A("meta"),d=0,u=function(p){o(p,l,{value:{objectID:"O"+d++,weakData:{}}})},h=function(p,y){if(!r(p))return typeof p=="symbol"?p:(typeof p=="string"?"S":"P")+p;if(!i(p,l)){if(!g(p))return"F";if(!y)return"E";u(p)}return p[l].objectID},v=function(p,y){if(!i(p,l)){if(!g(p))return!0;if(!y)return!1;u(p)}return p[l].weakData},f=function(p){return I&&C&&g(p)&&!i(p,l)&&u(p),p},c=function(){b.enable=function(){},C=!0;var p=s.f,y=e([].splice),E={};E[l]=1,p(E).length&&(s.f=function(S){for(var m=p(S),w=0,_=m.length;w<_;w++)if(m[w]===l){y(m,w,1);break}return m},n({target:"Object",stat:!0,forced:!0},{getOwnPropertyNames:a.f}))},b=$y.exports={enable:c,fastKey:h,getWeakData:v,onFreeze:f};return t[l]=!0,$y.exports}var qy,BG;function hfe(){if(BG)return qy;BG=1;var n=_t(),e=Ys(),t=n("iterator"),r=Array.prototype;return qy=function(i){return i!==void 0&&(e.Array===i||r[t]===i)},qy}var Fy,zG;function zJ(){if(zG)return Fy;zG=1;var n=yn(),e=OT(),t=Pg(),r=Ys(),i=_t(),o=i("iterator");return Fy=function(s){if(!t(s))return e(s,o)||e(s,"@@iterator")||r[n(s)]},Fy}var ky,jG;function jJ(){if(jG)return ky;jG=1;var n=ir(),e=Mi(),t=qi(),r=Gs(),i=zJ(),o=TypeError;return ky=function(s,a){var g=arguments.length<2?i(s):a;if(e(g))return t(n(g,s));throw new o(r(s)+" is not iterable")},ky}var By,LG;function ZT(){if(LG)return By;LG=1;var n=ir(),e=qi(),t=OT();return By=function(r,i,o){var s,a;e(r);try{if(s=t(r,"return"),!s){if(i==="throw")throw o;return o}s=n(s,r)}catch(g){a=!0,s=g}if(i==="throw")throw o;if(a)throw s;return e(s),o},By}var zy,GG;function HT(){if(GG)return zy;GG=1;var n=RI(),e=ir(),t=qi(),r=Gs(),i=hfe(),o=mn(),s=Et(),a=jJ(),g=zJ(),A=ZT(),I=TypeError,C=function(d,u){this.stopped=d,this.result=u},l=C.prototype;return zy=function(d,u,h){var v=h&&h.that,f=!!(h&&h.AS_ENTRIES),c=!!(h&&h.IS_RECORD),b=!!(h&&h.IS_ITERATOR),p=!!(h&&h.INTERRUPTED),y=n(u,v),E,S,m,w,_,T,R,O=function(x){return E&&A(E,"normal"),new C(!0,x)},P=function(x){return f?(t(x),p?y(x[0],x[1],O):y(x[0],x[1])):p?y(x,O):y(x)};if(c)E=d.iterator;else if(b)E=d;else{if(S=g(d),!S)throw new I(r(d)+" is not iterable");if(i(S)){for(m=0,w=o(d);w>m;m++)if(_=P(d[m]),_&&s(l,_))return _;return new C(!1)}E=a(d,S)}for(T=c?d.next:E.next;!(R=e(T,E)).done;){try{_=P(R.value)}catch(x){A(E,"throw",x)}if(typeof _=="object"&&_&&s(l,_))return _}return new C(!1)},zy}var jy,WG;function LJ(){if(WG)return jy;WG=1;var n=Et(),e=TypeError;return jy=function(t,r){if(n(r,t))return t;throw new e("Incorrect invocation")},jy}var Ly,VG;function GJ(){if(VG)return Ly;VG=1;var n=Ae(),e=lt(),t=BJ(),r=Te(),i=Zs(),o=HT(),s=LJ(),a=wt(),g=Ht(),A=Pg(),I=yo(),C=wr().f,l=Ks().forEach,d=dt(),u=Fg(),h=u.set,v=u.getterFor;return Ly=function(f,c,b){var p=f.indexOf("Map")!==-1,y=f.indexOf("Weak")!==-1,E=p?"set":"add",S=e[f],m=S&&S.prototype,w={},_;if(!d||!a(S)||!(y||m.forEach&&!r(function(){new S().entries().next()})))_=b.getConstructor(c,f,p,E),t.enable();else{_=c(function(O,P){h(s(O,T),{type:f,collection:new S}),A(P)||o(P,O[E],{that:O,AS_ENTRIES:p})});var T=_.prototype,R=v(f);l(["add","clear","delete","forEach","get","has","set","keys","values","entries"],function(O){var P=O==="add"||O==="set";O in m&&!(y&&O==="clear")&&i(T,O,function(x,V){var M=R(this).collection;if(!P&&y&&!g(x))return O==="get"?void 0:!1;var U=M[O](x===0?0:x,V);return P?this:U})}),y||C(T,"size",{configurable:!0,get:function(){return R(this).collection.size}})}return I(_,f,!1,!0),w[f]=_,n({global:!0,forced:!0},w),y||b.setStrong(_,f,p),_},Ly}var Gy,ZG;function cfe(){if(ZG)return Gy;ZG=1;var n=qg();return Gy=function(e,t,r){for(var i in t)r&&r.unsafe&&e[i]?e[i]=t[i]:n(e,i,t[i],r);return e},Gy}var Wy,HG;function ffe(){if(HG)return Wy;HG=1;var n=Ir(),e=MT(),t=_t(),r=dt(),i=t("species");return Wy=function(o){var s=n(o);r&&s&&!s[i]&&e(s,i,{configurable:!0,get:function(){return this}})},Wy}var Vy,UG;function WJ(){if(UG)return Vy;UG=1;var n=Mg(),e=MT(),t=cfe(),r=RI(),i=LJ(),o=Pg(),s=HT(),a=qT(),g=FT(),A=ffe(),I=dt(),C=BJ().fastKey,l=Fg(),d=l.set,u=l.getterFor;return Vy={getConstructor:function(h,v,f,c){var b=h(function(m,w){i(m,p),d(m,{type:v,index:n(null),first:null,last:null,size:0}),I||(m.size=0),o(w)||s(w,m[c],{that:m,AS_ENTRIES:f})}),p=b.prototype,y=u(v),E=function(m,w,_){var T=y(m),R=S(m,w),O,P;return R?R.value=_:(T.last=R={index:P=C(w,!0),key:w,value:_,previous:O=T.last,next:null,removed:!1},T.first||(T.first=R),O&&(O.next=R),I?T.size++:m.size++,P!=="F"&&(T.index[P]=R)),m},S=function(m,w){var _=y(m),T=C(w),R;if(T!=="F")return _.index[T];for(R=_.first;R;R=R.next)if(R.key===w)return R};return t(p,{clear:function(){for(var w=this,_=y(w),T=_.first;T;)T.removed=!0,T.previous&&(T.previous=T.previous.next=null),T=T.next;_.first=_.last=null,_.index=n(null),I?_.size=0:w.size=0},delete:function(m){var w=this,_=y(w),T=S(w,m);if(T){var R=T.next,O=T.previous;delete _.index[T.index],T.removed=!0,O&&(O.next=R),R&&(R.previous=O),_.first===T&&(_.first=R),_.last===T&&(_.last=O),I?_.size--:w.size--}return!!T},forEach:function(w){for(var _=y(this),T=r(w,arguments.length>1?arguments[1]:void 0),R;R=R?R.next:_.first;)for(T(R.value,R.key,this);R&&R.removed;)R=R.previous},has:function(w){return!!S(this,w)}}),t(p,f?{get:function(w){var _=S(this,w);return _&&_.value},set:function(w,_){return E(this,w===0?0:w,_)}}:{add:function(w){return E(this,w=w===0?0:w,w)}}),I&&e(p,"size",{configurable:!0,get:function(){return y(this).size}}),b},setStrong:function(h,v,f){var c=v+" Iterator",b=u(v),p=u(c);a(h,v,function(y,E){d(this,{type:c,target:y,state:b(y),kind:E,last:null})},function(){for(var y=p(this),E=y.kind,S=y.last;S&&S.removed;)S=S.previous;return!y.target||!(y.last=S=S?S.next:y.state.first)?(y.target=null,g(void 0,!0)):g(E==="keys"?S.key:E==="values"?S.value:[S.key,S.value],!1)},f?"entries":"values",!f,!0),A(v)}},Vy}var KG;function pfe(){if(KG)return NG;KG=1;var n=GJ(),e=WJ();return n("Map",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},e),NG}var YG;function vfe(){return YG||(YG=1,pfe()),DG}var XG={},Zy,QG;function VJ(){return QG||(QG=1,Zy=function(n,e){return e===1?function(t,r){return t[n](r)}:function(t,r,i){return t[n](r,i)}}),Zy}var Hy,JG;function mfe(){if(JG)return Hy;JG=1;var n=Ir(),e=VJ(),t=n("Map");return Hy={Map:t,set:e("set",2),get:e("get",1),has:e("has",1),remove:e("delete",1),proto:t.prototype},Hy}var eW;function yfe(){if(eW)return XG;eW=1;var n=Ae(),e=$e(),t=Mi(),r=vo(),i=HT(),o=mfe(),s=Ws(),a=Te(),g=o.Map,A=o.has,I=o.get,C=o.set,l=e([].push),d=s||a(function(){return g.groupBy("ab",function(u){return u}).get("a").length!==1});return n({target:"Map",stat:!0,forced:s||d},{groupBy:function(h,v){r(h),t(v);var f=new g,c=0;return i(h,function(b){var p=v(b,c++);A(f,p)?l(I(f,p),b):C(f,p,[b])}),f}}),XG}var Uy,tW;function bfe(){if(tW)return Uy;tW=1,wn(),vfe(),yfe(),qI();var n=pt();return Uy=n.Map,Uy}var Ky,rW;function wfe(){if(rW)return Ky;rW=1;var n=bfe();return En(),Ky=n,Ky}var Yy,iW;function Efe(){return iW||(iW=1,Yy=wfe()),Yy}var Sfe=Efe(),ZJ=fe(Sfe),nW={},oW;function _fe(){if(oW)return nW;oW=1;var n=Ae(),e=Ks().some,t=FI(),r=t("some");return n({target:"Array",proto:!0,forced:!r},{some:function(o){return e(this,o,arguments.length>1?arguments[1]:void 0)}}),nW}var Xy,sW;function Ofe(){if(sW)return Xy;sW=1,_fe();var n=nr();return Xy=n("Array","some"),Xy}var Qy,aW;function Tfe(){if(aW)return Qy;aW=1;var n=Et(),e=Ofe(),t=Array.prototype;return Qy=function(r){var i=r.some;return r===t||n(t,r)&&i===t.some?e:i},Qy}var Jy,gW;function Rfe(){if(gW)return Jy;gW=1;var n=Tfe();return Jy=n,Jy}var eb,AW;function Pfe(){return AW||(AW=1,eb=Rfe()),eb}var xfe=Pfe(),$fe=fe(xfe),tb,IW;function Dfe(){if(IW)return tb;IW=1,wn();var n=nr();return tb=n("Array","keys"),tb}var rb,CW;function Nfe(){if(CW)return rb;CW=1;var n=Dfe();return rb=n,rb}var ib,lW;function Mfe(){if(lW)return ib;lW=1,En();var n=yn(),e=St(),t=Et(),r=Nfe(),i=Array.prototype,o={DOMTokenList:!0,NodeList:!0};return ib=function(s){var a=s.keys;return s===i||t(i,s)&&a===i.keys||e(o,n(s))?r:a},ib}var nb,dW;function qfe(){return dW||(dW=1,nb=Mfe()),nb}var Ffe=qfe(),jo=fe(Ffe),uW={},ob,hW;function kfe(){if(hW)return ob;hW=1;var n=Us(),e=Math.floor,t=function(r,i){var o=r.length;if(o<8)for(var s=1,a,g;s<o;){for(g=s,a=r[s];g&&i(r[g-1],a)>0;)r[g]=r[--g];g!==s++&&(r[g]=a)}else for(var A=e(o/2),I=t(n(r,0,A),i),C=t(n(r,A),i),l=I.length,d=C.length,u=0,h=0;u<l||h<d;)r[u+h]=u<l&&h<d?i(I[u],C[h])<=0?I[u++]:C[h++]:u<l?I[u++]:C[h++];return r};return ob=t,ob}var sb,cW;function Bfe(){if(cW)return sb;cW=1;var n=js(),e=n.match(/firefox\/(\d+)/i);return sb=!!e&&+e[1],sb}var ab,fW;function zfe(){if(fW)return ab;fW=1;var n=js();return ab=/MSIE|Trident/.test(n),ab}var gb,pW;function jfe(){if(pW)return gb;pW=1;var n=js(),e=n.match(/AppleWebKit\/(\d+)\./);return gb=!!e&&+e[1],gb}var vW;function Lfe(){if(vW)return uW;vW=1;var n=Ae(),e=$e(),t=Mi(),r=Zr(),i=mn(),o=gJ(),s=bn(),a=Te(),g=kfe(),A=FI(),I=Bfe(),C=zfe(),l=xg(),d=jfe(),u=[],h=e(u.sort),v=e(u.push),f=a(function(){u.sort(void 0)}),c=a(function(){u.sort(null)}),b=A("sort"),p=!a(function(){if(l)return l<70;if(!(I&&I>3)){if(C)return!0;if(d)return d<603;var S="",m,w,_,T;for(m=65;m<76;m++){switch(w=String.fromCharCode(m),m){case 66:case 69:case 70:case 72:_=3;break;case 68:case 71:_=4;break;default:_=2}for(T=0;T<47;T++)u.push({k:w+T,v:_})}for(u.sort(function(R,O){return O.v-R.v}),T=0;T<u.length;T++)w=u[T].k.charAt(0),S.charAt(S.length-1)!==w&&(S+=w);return S!=="DGBEFHACIJK"}}),y=f||!c||!b||!p,E=function(S){return function(m,w){return w===void 0?-1:m===void 0?1:S!==void 0?+S(m,w)||0:s(m)>s(w)?1:-1}};return n({target:"Array",proto:!0,forced:y},{sort:function(m){m!==void 0&&t(m);var w=r(this);if(p)return m===void 0?h(w):h(w,m);var _=[],T=i(w),R,O;for(O=0;O<T;O++)O in w&&v(_,w[O]);for(g(_,E(m)),R=i(_),O=0;O<R;)w[O]=_[O++];for(;O<T;)o(w,O++);return w}}),uW}var Ab,mW;function Gfe(){if(mW)return Ab;mW=1,Lfe();var n=nr();return Ab=n("Array","sort"),Ab}var Ib,yW;function Wfe(){if(yW)return Ib;yW=1;var n=Et(),e=Gfe(),t=Array.prototype;return Ib=function(r){var i=r.sort;return r===t||n(t,r)&&i===t.sort?e:i},Ib}var Cb,bW;function Vfe(){if(bW)return Cb;bW=1;var n=Wfe();return Cb=n,Cb}var lb,wW;function Zfe(){return wW||(wW=1,lb=Vfe()),lb}var Hfe=Zfe(),_O=fe(Hfe),db,EW;function Ufe(){if(EW)return db;EW=1,wn();var n=nr();return db=n("Array","values"),db}var ub,SW;function Kfe(){if(SW)return ub;SW=1;var n=Ufe();return ub=n,ub}var hb,_W;function Yfe(){if(_W)return hb;_W=1,En();var n=yn(),e=St(),t=Et(),r=Kfe(),i=Array.prototype,o={DOMTokenList:!0,NodeList:!0};return hb=function(s){var a=s.values;return s===i||t(i,s)&&a===i.values||e(o,n(s))?r:a},hb}var cb,OW;function Xfe(){return OW||(OW=1,cb=Yfe()),cb}var Qfe=Xfe(),TW=fe(Qfe),fb,RW;function Jfe(){return RW||(RW=1,fb=nJ()),fb}var epe=Jfe(),Xo=fe(epe),pb,PW;function tpe(){if(PW)return pb;PW=1,wn();var n=nr();return pb=n("Array","entries"),pb}var vb,xW;function rpe(){if(xW)return vb;xW=1;var n=tpe();return vb=n,vb}var mb,$W;function ipe(){if($W)return mb;$W=1,En();var n=yn(),e=St(),t=Et(),r=rpe(),i=Array.prototype,o={DOMTokenList:!0,NodeList:!0};return mb=function(s){var a=s.entries;return s===i||t(i,s)&&a===i.entries||e(o,n(s))?r:a},mb}var yb,DW;function npe(){return DW||(DW=1,yb=ipe()),yb}var ope=npe(),spe=fe(ope);const Dt=[];for(let n=0;n<256;++n)Dt.push((n+256).toString(16).slice(1));function ape(n,e=0){return(Dt[n[e+0]]+Dt[n[e+1]]+Dt[n[e+2]]+Dt[n[e+3]]+"-"+Dt[n[e+4]]+Dt[n[e+5]]+"-"+Dt[n[e+6]]+Dt[n[e+7]]+"-"+Dt[n[e+8]]+Dt[n[e+9]]+"-"+Dt[n[e+10]]+Dt[n[e+11]]+Dt[n[e+12]]+Dt[n[e+13]]+Dt[n[e+14]]+Dt[n[e+15]]).toLowerCase()}let bb;const gpe=new Uint8Array(16);function Ape(){if(!bb){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");bb=crypto.getRandomValues.bind(crypto)}return bb(gpe)}const Ipe=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto);var NW={randomUUID:Ipe};function Cpe(n,e,t){n=n||{};const r=n.random??n.rng?.()??Ape();if(r.length<16)throw new Error("Random bytes length must be >= 16");return r[6]=r[6]&15|64,r[8]=r[8]&63|128,ape(r)}function lpe(n,e,t){return NW.randomUUID&&!n?NW.randomUUID():Cpe(n)}function MW(n){return typeof n=="string"||typeof n=="number"}class UT{constructor(e){an(this,"_queue",[]),an(this,"_timeout",null),an(this,"_extended",null),this.delay=null,this.max=1/0,this.setOptions(e)}setOptions(e){e&&typeof e.delay<"u"&&(this.delay=e.delay),e&&typeof e.max<"u"&&(this.max=e.max),this._flushIfNeeded()}static extend(e,t){const r=new UT(t);if(e.flush!==void 0)throw new Error("Target object already has a property flush");e.flush=()=>{r.flush()};const i=[{name:"flush",original:void 0}];if(t&&t.replace)for(let o=0;o<t.replace.length;o++){const s=t.replace[o];i.push({name:s,original:e[s]}),r.replace(e,s)}return r._extended={object:e,methods:i},r}destroy(){if(this.flush(),this._extended){const e=this._extended.object,t=this._extended.methods;for(let r=0;r<t.length;r++){const i=t[r];i.original?e[i.name]=i.original:delete e[i.name]}this._extended=null}}replace(e,t){const r=this,i=e[t];if(!i)throw new Error("Method "+t+" undefined");e[t]=function(){for(var o=arguments.length,s=new Array(o),a=0;a<o;a++)s[a]=arguments[a];r.queue({args:s,fn:i,context:this})}}queue(e){typeof e=="function"?this._queue.push({fn:e}):this._queue.push(e),this._flushIfNeeded()}_flushIfNeeded(){this._queue.length>this.max&&this.flush(),this._timeout!=null&&(clearTimeout(this._timeout),this._timeout=null),this.queue.length>0&&typeof this.delay=="number"&&(this._timeout=Khe(()=>{this.flush()},this.delay))}flush(){var e,t;Jn(e=AJ(t=this._queue).call(t,0)).call(e,r=>{r.fn.apply(r.context||r.fn,r.args||[])})}}class KA{constructor(){an(this,"_subscribers",{"*":[],add:[],remove:[],update:[]}),an(this,"subscribe",KA.prototype.on),an(this,"unsubscribe",KA.prototype.off)}_trigger(e,t,r){var i;if(e==="*")throw new Error("Cannot trigger event *");Jn(i=[...this._subscribers[e],...this._subscribers["*"]]).call(i,o=>{o(e,t,r??null)})}on(e,t){typeof t=="function"&&this._subscribers[e].push(t)}off(e,t){var r;this._subscribers[e]=Uo(r=this._subscribers[e]).call(r,i=>i!==t)}}var qW={},FW={},kW;function dpe(){if(kW)return FW;kW=1;var n=GJ(),e=WJ();return n("Set",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},e),FW}var BW;function upe(){return BW||(BW=1,dpe()),qW}var zW={},wb,jW;function wo(){if(jW)return wb;jW=1;var n=Gs(),e=TypeError;return wb=function(t){if(typeof t=="object"&&"size"in t&&"has"in t&&"add"in t&&"delete"in t&&"keys"in t)return t;throw new e(n(t)+" is not a set")},wb}var Eb,LW;function Eo(){if(LW)return Eb;LW=1;var n=Ir(),e=VJ(),t=n("Set"),r=t.prototype;return Eb={Set:t,add:e("add",1),has:e("has",1),remove:e("delete",1),proto:r},Eb}var Sb,GW;function So(){if(GW)return Sb;GW=1;var n=ir();return Sb=function(e,t,r){for(var i=r?e:e.iterator,o=e.next,s,a;!(s=n(o,i)).done;)if(a=t(s.value),a!==void 0)return a},Sb}var _b,WW;function Gg(){if(WW)return _b;WW=1;var n=So();return _b=function(e,t,r){return r?n(e.keys(),t,!0):e.forEach(t)},_b}var Ob,VW;function KT(){if(VW)return Ob;VW=1;var n=Eo(),e=Gg(),t=n.Set,r=n.add;return Ob=function(i){var o=new t;return e(i,function(s){r(o,s)}),o},Ob}var Tb,ZW;function Wg(){return ZW||(ZW=1,Tb=function(n){return n.size}),Tb}var Rb,HW;function hpe(){return HW||(HW=1,Rb=function(n){return{iterator:n,next:n.next,done:!1}}),Rb}var Pb,UW;function _o(){if(UW)return Pb;UW=1;var n=Mi(),e=qi(),t=ir(),r=Hs(),i=hpe(),o="Invalid size",s=RangeError,a=TypeError,g=Math.max,A=function(I,C){this.set=I,this.size=g(C,0),this.has=n(I.has),this.keys=n(I.keys)};return A.prototype={getIterator:function(){return i(e(t(this.keys,this.set)))},includes:function(I){return t(this.has,this.set,I)}},Pb=function(I){e(I);var C=+I.size;if(C!==C)throw new a(o);var l=r(C);if(l<0)throw new s(o);return new A(I,l)},Pb}var xb,KW;function cpe(){if(KW)return xb;KW=1;var n=wo(),e=Eo(),t=KT(),r=Wg(),i=_o(),o=Gg(),s=So(),a=e.has,g=e.remove;return xb=function(I){var C=n(this),l=i(I),d=t(C);return r(C)<=l.size?o(C,function(u){l.includes(u)&&g(d,u)}):s(l.getIterator(),function(u){a(d,u)&&g(d,u)}),d},xb}var $b,YW;function Oo(){return YW||(YW=1,$b=function(){return!1}),$b}var XW;function fpe(){if(XW)return zW;XW=1;var n=Ae(),e=cpe(),t=Te(),r=Oo(),i=!r("difference",function(s){return s.size===0}),o=i||t(function(){var s={size:1,has:function(){return!0},keys:function(){var g=0;return{next:function(){var A=g++>1;return a.has(1)&&a.clear(),{done:A,value:2}}}}},a=new Set([1,2,3,4]);return a.difference(s).size!==3});return n({target:"Set",proto:!0,real:!0,forced:o},{difference:e}),zW}var QW={},Db,JW;function ppe(){if(JW)return Db;JW=1;var n=wo(),e=Eo(),t=Wg(),r=_o(),i=Gg(),o=So(),s=e.Set,a=e.add,g=e.has;return Db=function(I){var C=n(this),l=r(I),d=new s;return t(C)>l.size?o(l.getIterator(),function(u){g(C,u)&&a(d,u)}):i(C,function(u){l.includes(u)&&a(d,u)}),d},Db}var eV;function vpe(){if(eV)return QW;eV=1;var n=Ae(),e=Te(),t=ppe(),r=Oo(),i=!r("intersection",function(o){return o.size===2&&o.has(1)&&o.has(2)})||e(function(){return String(Array.from(new Set([1,2,3]).intersection(new Set([3,2]))))!=="3,2"});return n({target:"Set",proto:!0,real:!0,forced:i},{intersection:t}),QW}var tV={},Nb,rV;function mpe(){if(rV)return Nb;rV=1;var n=wo(),e=Eo().has,t=Wg(),r=_o(),i=Gg(),o=So(),s=ZT();return Nb=function(g){var A=n(this),I=r(g);if(t(A)<=I.size)return i(A,function(l){if(I.includes(l))return!1},!0)!==!1;var C=I.getIterator();return o(C,function(l){if(e(A,l))return s(C,"normal",!1)})!==!1},Nb}var iV;function ype(){if(iV)return tV;iV=1;var n=Ae(),e=mpe(),t=Oo(),r=!t("isDisjointFrom",function(i){return!i});return n({target:"Set",proto:!0,real:!0,forced:r},{isDisjointFrom:e}),tV}var nV={},Mb,oV;function bpe(){if(oV)return Mb;oV=1;var n=wo(),e=Wg(),t=Gg(),r=_o();return Mb=function(o){var s=n(this),a=r(o);return e(s)>a.size?!1:t(s,function(g){if(!a.includes(g))return!1},!0)!==!1},Mb}var sV;function wpe(){if(sV)return nV;sV=1;var n=Ae(),e=bpe(),t=Oo(),r=!t("isSubsetOf",function(i){return i});return n({target:"Set",proto:!0,real:!0,forced:r},{isSubsetOf:e}),nV}var aV={},qb,gV;function Epe(){if(gV)return qb;gV=1;var n=wo(),e=Eo().has,t=Wg(),r=_o(),i=So(),o=ZT();return qb=function(a){var g=n(this),A=r(a);if(t(g)<A.size)return!1;var I=A.getIterator();return i(I,function(C){if(!e(g,C))return o(I,"normal",!1)})!==!1},qb}var AV;function Spe(){if(AV)return aV;AV=1;var n=Ae(),e=Epe(),t=Oo(),r=!t("isSupersetOf",function(i){return!i});return n({target:"Set",proto:!0,real:!0,forced:r},{isSupersetOf:e}),aV}var IV={},Fb,CV;function _pe(){if(CV)return Fb;CV=1;var n=wo(),e=Eo(),t=KT(),r=_o(),i=So(),o=e.add,s=e.has,a=e.remove;return Fb=function(A){var I=n(this),C=r(A).getIterator(),l=t(I);return i(C,function(d){s(I,d)?a(l,d):o(l,d)}),l},Fb}var kb,lV;function HJ(){return lV||(lV=1,kb=function(n){try{var e=new Set,t={size:0,has:function(){return!0},keys:function(){return Object.defineProperty({},"next",{get:function(){return e.clear(),e.add(4),function(){return{done:!0}}}})}},r=e[n](t);return r.size===1&&r.values().next().value===4}catch{return!1}}),kb}var dV;function Ope(){if(dV)return IV;dV=1;var n=Ae(),e=_pe(),t=HJ(),r=Oo(),i=!r("symmetricDifference")||!t("symmetricDifference");return n({target:"Set",proto:!0,real:!0,forced:i},{symmetricDifference:e}),IV}var uV={},Bb,hV;function Tpe(){if(hV)return Bb;hV=1;var n=wo(),e=Eo().add,t=KT(),r=_o(),i=So();return Bb=function(s){var a=n(this),g=r(s).getIterator(),A=t(a);return i(g,function(I){e(A,I)}),A},Bb}var cV;function Rpe(){if(cV)return uV;cV=1;var n=Ae(),e=Tpe(),t=HJ(),r=Oo(),i=!r("union")||!t("union");return n({target:"Set",proto:!0,real:!0,forced:i},{union:e}),uV}var zb,fV;function Ppe(){if(fV)return zb;fV=1,wn(),upe(),fpe(),vpe(),ype(),wpe(),Spe(),Ope(),Rpe(),qI();var n=pt();return zb=n.Set,zb}var jb,pV;function xpe(){if(pV)return jb;pV=1;var n=Ppe();return En(),jb=n,jb}var Lb,vV;function $pe(){return vV||(vV=1,Lb=xpe()),Lb}var Dpe=$pe(),Gb=fe(Dpe),Wb,mV;function Npe(){if(mV)return Wb;mV=1,wn(),qI();var n=jJ();return Wb=n,Wb}var Vb,yV;function Mpe(){if(yV)return Vb;yV=1;var n=Npe();return En(),Vb=n,Vb}var Zb,bV;function qpe(){if(bV)return Zb;bV=1;var n=Mpe();return Zb=n,Zb}var Hb,wV;function Fpe(){if(wV)return Hb;wV=1;var n=qpe();return Hb=n,Hb}var Ub,EV;function kpe(){return EV||(EV=1,Ub=Fpe()),Ub}var Kb,SV;function Bpe(){return SV||(SV=1,Kb=kpe()),Kb}var zpe=Bpe(),Yb=fe(zpe);class qn{constructor(e){this._pairs=e}*[Xo](){for(const[e,t]of this._pairs)yield[e,t]}*entries(){for(const[e,t]of this._pairs)yield[e,t]}*keys(){for(const[e]of this._pairs)yield e}*values(){for(const[,e]of this._pairs)yield e}toIdArray(){var e;return kr(e=[...this._pairs]).call(e,t=>t[0])}toItemArray(){var e;return kr(e=[...this._pairs]).call(e,t=>t[1])}toEntryArray(){return[...this._pairs]}toObjectMap(){const e=$he(null);for(const[t,r]of this._pairs)e[t]=r;return e}toMap(){return new ZJ(this._pairs)}toIdSet(){return new Gb(this.toIdArray())}toItemSet(){return new Gb(this.toItemArray())}cache(){return new qn([...this._pairs])}distinct(e){const t=new Gb;for(const[r,i]of this._pairs)t.add(e(i,r));return t}filter(e){const t=this._pairs;return new qn({*[Xo](){for(const[r,i]of t)e(i,r)&&(yield[r,i])}})}forEach(e){for(const[t,r]of this._pairs)e(r,t)}map(e){const t=this._pairs;return new qn({*[Xo](){for(const[r,i]of t)yield[r,e(i,r)]}})}max(e){const t=Yb(this._pairs);let r=t.next();if(r.done)return null;let i=r.value[1],o=e(r.value[1],r.value[0]);for(;!(r=t.next()).done;){const[s,a]=r.value,g=e(a,s);g>o&&(o=g,i=a)}return i}min(e){const t=Yb(this._pairs);let r=t.next();if(r.done)return null;let i=r.value[1],o=e(r.value[1],r.value[0]);for(;!(r=t.next()).done;){const[s,a]=r.value,g=e(a,s);g<o&&(o=g,i=a)}return i}reduce(e,t){for(const[r,i]of this._pairs)t=e(t,i,r);return t}sort(e){return new qn({[Xo]:()=>{var t;return Yb(_O(t=[...this._pairs]).call(t,(r,i)=>{let[o,s]=r,[a,g]=i;return e(s,g,o,a)}))}})}}function _V(n,e){var t=kT(n);if(hG){var r=hG(n);e&&(r=Uo(r).call(r,function(i){return kJ(n,i).enumerable})),t.push.apply(t,r)}return t}function OV(n){for(var e=1;e<arguments.length;e++){var t,r,i=arguments[e]!=null?arguments[e]:{};e%2?Jn(t=_V(Object(i),!0)).call(t,function(o){an(n,o,i[o])}):_G?gfe(n,_G(i)):Jn(r=_V(Object(i))).call(r,function(o){Cfe(n,o,kJ(i,o))})}return n}function jpe(n,e){return n[e]==null&&(n[e]=lpe()),n}class YA extends KA{get idProp(){return this._idProp}constructor(e,t){super(),an(this,"_queue",null),e&&!Ur(e)&&(t=e,e=[]),this._options=t||{},this._data=new ZJ,this.length=0,this._idProp=this._options.fieldId||"id",e&&e.length&&this.add(e),this.setOptions(t)}setOptions(e){e&&e.queue!==void 0&&(e.queue===!1?this._queue&&(this._queue.destroy(),this._queue=null):(this._queue||(this._queue=UT.extend(this,{replace:["add","update","remove"]})),e.queue&&typeof e.queue=="object"&&this._queue.setOptions(e.queue)))}add(e,t){const r=[];let i;if(Ur(e)){const o=kr(e).call(e,s=>s[this._idProp]);if($fe(o).call(o,s=>this._data.has(s)))throw new Error("A duplicate id was found in the parameter array.");for(let s=0,a=e.length;s<a;s++)i=this._addItem(e[s]),r.push(i)}else if(e&&typeof e=="object")i=this._addItem(e),r.push(i);else throw new Error("Unknown dataType");return r.length&&this._trigger("add",{items:r},t),r}update(e,t){const r=[],i=[],o=[],s=[],a=this._idProp,g=A=>{const I=A[a];if(I!=null&&this._data.has(I)){const C=A,l=mhe({},this._data.get(I)),d=this._updateItem(C);i.push(d),s.push(C),o.push(l)}else{const C=this._addItem(A);r.push(C)}};if(Ur(e))for(let A=0,I=e.length;A<I;A++)e[A]&&typeof e[A]=="object"?g(e[A]):console.warn("Ignoring input item, which is not an object at index "+A);else if(e&&typeof e=="object")g(e);else throw new Error("Unknown dataType");if(r.length&&this._trigger("add",{items:r},t),i.length){const A={items:i,oldData:o,data:s};this._trigger("update",A,t)}return _he(r).call(r,i)}updateOnly(e,t){var r;Ur(e)||(e=[e]);const i=kr(r=kr(e).call(e,o=>{const s=this._data.get(o[this._idProp]);if(s==null)throw new Error("Updating non-existent items is not allowed.");return{oldData:s,update:o}})).call(r,o=>{let{oldData:s,update:a}=o;const g=s[this._idProp],A=Bce(s,a);return this._data.set(g,A),{id:g,oldData:s,updatedData:A}});if(i.length){const o={items:kr(i).call(i,s=>s.id),oldData:kr(i).call(i,s=>s.oldData),data:kr(i).call(i,s=>s.updatedData)};return this._trigger("update",o,t),o.items}else return[]}get(e,t){let r,i,o;MW(e)?(r=e,o=t):Ur(e)?(i=e,o=t):o=e;const s=o&&o.returnType==="Object"?"Object":"Array",a=o&&Uo(o),g=[];let A,I,C;if(r!=null)A=this._data.get(r),A&&a&&!a(A)&&(A=void 0);else if(i!=null)for(let d=0,u=i.length;d<u;d++)A=this._data.get(i[d]),A!=null&&(!a||a(A))&&g.push(A);else{var l;I=[...jo(l=this._data).call(l)];for(let d=0,u=I.length;d<u;d++)C=I[d],A=this._data.get(C),A!=null&&(!a||a(A))&&g.push(A)}if(o&&o.order&&r==null&&this._sort(g,o.order),o&&o.fields){const d=o.fields;if(r!=null&&A!=null)A=this._filterFields(A,d);else for(let u=0,h=g.length;u<h;u++)g[u]=this._filterFields(g[u],d)}if(s=="Object"){const d={};for(let u=0,h=g.length;u<h;u++){const v=g[u],f=v[this._idProp];d[f]=v}return d}else return r!=null?A??null:g}getIds(e){const t=this._data,r=e&&Uo(e),i=e&&e.order,o=[...jo(t).call(t)],s=[];if(r)if(i){const a=[];for(let g=0,A=o.length;g<A;g++){const I=o[g],C=this._data.get(I);C!=null&&r(C)&&a.push(C)}this._sort(a,i);for(let g=0,A=a.length;g<A;g++)s.push(a[g][this._idProp])}else for(let a=0,g=o.length;a<g;a++){const A=o[a],I=this._data.get(A);I!=null&&r(I)&&s.push(I[this._idProp])}else if(i){const a=[];for(let g=0,A=o.length;g<A;g++){const I=o[g];a.push(t.get(I))}this._sort(a,i);for(let g=0,A=a.length;g<A;g++)s.push(a[g][this._idProp])}else for(let a=0,g=o.length;a<g;a++){const A=o[a],I=t.get(A);I!=null&&s.push(I[this._idProp])}return s}getDataSet(){return this}forEach(e,t){const r=t&&Uo(t),i=this._data,o=[...jo(i).call(i)];if(t&&t.order){const s=this.get(t);for(let a=0,g=s.length;a<g;a++){const A=s[a],I=A[this._idProp];e(A,I)}}else for(let s=0,a=o.length;s<a;s++){const g=o[s],A=this._data.get(g);A!=null&&(!r||r(A))&&e(A,g)}}map(e,t){const r=t&&Uo(t),i=[],o=this._data,s=[...jo(o).call(o)];for(let a=0,g=s.length;a<g;a++){const A=s[a],I=this._data.get(A);I!=null&&(!r||r(I))&&i.push(e(I,A))}return t&&t.order&&this._sort(i,t.order),i}_filterFields(e,t){var r;return e&&gue(r=Ur(t)?t:kT(t)).call(r,(i,o)=>(i[o]=e[o],i),{})}_sort(e,t){if(typeof t=="string"){const r=t;_O(e).call(e,(i,o)=>{const s=i[r],a=o[r];return s>a?1:s<a?-1:0})}else if(typeof t=="function")_O(e).call(e,t);else throw new TypeError("Order must be a function or a string")}remove(e,t){const r=[],i=[],o=Ur(e)?e:[e];for(let s=0,a=o.length;s<a;s++){const g=this._remove(o[s]);if(g){const A=g[this._idProp];A!=null&&(r.push(A),i.push(g))}}return r.length&&this._trigger("remove",{items:r,oldData:i},t),r}_remove(e){let t;if(MW(e)?t=e:e&&typeof e=="object"&&(t=e[this._idProp]),t!=null&&this._data.has(t)){const r=this._data.get(t)||null;return this._data.delete(t),--this.length,r}return null}clear(e){var t;const r=[...jo(t=this._data).call(t)],i=[];for(let o=0,s=r.length;o<s;o++)i.push(this._data.get(r[o]));return this._data.clear(),this.length=0,this._trigger("remove",{items:r,oldData:i},e),r}max(e){let t=null,r=null;for(const o of TW(i=this._data).call(i)){var i;const s=o[e];typeof s=="number"&&(r==null||s>r)&&(t=o,r=s)}return t||null}min(e){let t=null,r=null;for(const o of TW(i=this._data).call(i)){var i;const s=o[e];typeof s=="number"&&(r==null||s<r)&&(t=o,r=s)}return t||null}distinct(e){const t=this._data,r=[...jo(t).call(t)],i=[];let o=0;for(let s=0,a=r.length;s<a;s++){const g=r[s],I=t.get(g)[e];let C=!1;for(let l=0;l<o;l++)if(i[l]==I){C=!0;break}!C&&I!==void 0&&(i[o]=I,o++)}return i}_addItem(e){const t=jpe(e,this._idProp),r=t[this._idProp];if(this._data.has(r))throw new Error("Cannot add item: item with id "+r+" already exists");return this._data.set(r,t),++this.length,r}_updateItem(e){const t=e[this._idProp];if(t==null)throw new Error("Cannot update item: item has no id (item: "+jhe(e)+")");const r=this._data.get(t);if(!r)throw new Error("Cannot update item: no item with id "+t+" found");return this._data.set(t,OV(OV({},r),e)),t}stream(e){if(e){const r=this._data;return new qn({*[Xo](){for(const i of e){const o=r.get(i);o!=null&&(yield[i,o])}}})}else{var t;return new qn({[Xo]:oJ(t=spe(this._data)).call(t,this._data)})}}}function Lpe(n,e){return typeof e=="object"&&e!==null&&n===e.idProp&&typeof e.add=="function"&&typeof e.clear=="function"&&typeof e.distinct=="function"&&typeof Jn(e)=="function"&&typeof e.get=="function"&&typeof e.getDataSet=="function"&&typeof e.getIds=="function"&&typeof e.length=="number"&&typeof kr(e)=="function"&&typeof e.max=="function"&&typeof e.min=="function"&&typeof e.off=="function"&&typeof e.on=="function"&&typeof e.remove=="function"&&typeof e.setOptions=="function"&&typeof e.stream=="function"&&typeof e.update=="function"&&typeof e.updateOnly=="function"}function UJ(n,e){return typeof e=="object"&&e!==null&&n===e.idProp&&typeof Jn(e)=="function"&&typeof e.get=="function"&&typeof e.getDataSet=="function"&&typeof e.getIds=="function"&&typeof e.length=="number"&&typeof kr(e)=="function"&&typeof e.off=="function"&&typeof e.on=="function"&&typeof e.stream=="function"&&Lpe(n,e.getDataSet())}/**
|
||
* vis-network
|
||
* https://visjs.github.io/vis-network/
|
||
*
|
||
* A dynamic, browser-based visualization library.
|
||
*
|
||
* @version 10.0.2
|
||
* @date 2025-09-15T17:48:13.838Z
|
||
*
|
||
* @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 TV=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function se(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}var RV={},wa,PV;function Ge(){if(PV)return wa;PV=1;var n=function(e){return e&&e.Math===Math&&e};return wa=n(typeof globalThis=="object"&&globalThis)||n(typeof window=="object"&&window)||n(typeof self=="object"&&self)||n(typeof TV=="object"&&TV)||n(typeof wa=="object"&&wa)||(function(){return this})()||Function("return this")(),wa}var Xb,xV;function pe(){return xV||(xV=1,Xb=function(n){try{return!!n()}catch{return!0}}),Xb}var Qb,$V;function Vg(){if($V)return Qb;$V=1;var n=pe();return Qb=!n(function(){var e=(function(){}).bind();return typeof e!="function"||e.hasOwnProperty("prototype")}),Qb}var Jb,DV;function zI(){if(DV)return Jb;DV=1;var n=Vg(),e=Function.prototype,t=e.apply,r=e.call;return Jb=typeof Reflect=="object"&&Reflect.apply||(n?r.bind(t):function(){return r.apply(t,arguments)}),Jb}var e1,NV;function ye(){if(NV)return e1;NV=1;var n=Vg(),e=Function.prototype,t=e.call,r=n&&e.bind.bind(t,t);return e1=n?r:function(i){return function(){return t.apply(i,arguments)}},e1}var t1,MV;function di(){if(MV)return t1;MV=1;var n=ye(),e=n({}.toString),t=n("".slice);return t1=function(r){return t(e(r),8,-1)},t1}var r1,qV;function YT(){if(qV)return r1;qV=1;var n=di(),e=ye();return r1=function(t){if(n(t)==="Function")return e(t)},r1}var i1,FV;function Ot(){if(FV)return i1;FV=1;var n=typeof document=="object"&&document.all;return i1=typeof n>"u"&&n!==void 0?function(e){return typeof e=="function"||e===n}:function(e){return typeof e=="function"},i1}var n1={},o1,kV;function ot(){if(kV)return o1;kV=1;var n=pe();return o1=!n(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!==7}),o1}var s1,BV;function or(){if(BV)return s1;BV=1;var n=Vg(),e=Function.prototype.call;return s1=n?e.bind(e):function(){return e.apply(e,arguments)},s1}var a1={},zV;function jI(){if(zV)return a1;zV=1;var n={}.propertyIsEnumerable,e=Object.getOwnPropertyDescriptor,t=e&&!n.call({1:2},1);return a1.f=t?function(i){var o=e(this,i);return!!o&&o.enumerable}:n,a1}var g1,jV;function Zg(){return jV||(jV=1,g1=function(n,e){return{enumerable:!(n&1),configurable:!(n&2),writable:!(n&4),value:e}}),g1}var A1,LV;function LI(){if(LV)return A1;LV=1;var n=ye(),e=pe(),t=di(),r=Object,i=n("".split);return A1=e(function(){return!r("z").propertyIsEnumerable(0)})?function(o){return t(o)==="String"?i(o,""):r(o)}:r,A1}var I1,GV;function Qs(){return GV||(GV=1,I1=function(n){return n==null}),I1}var C1,WV;function Fi(){if(WV)return C1;WV=1;var n=Qs(),e=TypeError;return C1=function(t){if(n(t))throw new e("Can't call method on "+t);return t},C1}var l1,VV;function Hr(){if(VV)return l1;VV=1;var n=LI(),e=Fi();return l1=function(t){return n(e(t))},l1}var d1,ZV;function Tt(){if(ZV)return d1;ZV=1;var n=Ot();return d1=function(e){return typeof e=="object"?e!==null:n(e)},d1}var u1,HV;function Re(){return HV||(HV=1,u1={}),u1}var h1,UV;function Cr(){if(UV)return h1;UV=1;var n=Re(),e=Ge(),t=Ot(),r=function(i){return t(i)?i:void 0};return h1=function(i,o){return arguments.length<2?r(n[i])||r(e[i]):n[i]&&n[i][o]||e[i]&&e[i][o]},h1}var c1,KV;function ut(){if(KV)return c1;KV=1;var n=ye();return c1=n({}.isPrototypeOf),c1}var f1,YV;function Js(){if(YV)return f1;YV=1;var n=Ge(),e=n.navigator,t=e&&e.userAgent;return f1=t?String(t):"",f1}var p1,XV;function Hg(){if(XV)return p1;XV=1;var n=Ge(),e=Js(),t=n.process,r=n.Deno,i=t&&t.versions||r&&r.version,o=i&&i.v8,s,a;return o&&(s=o.split("."),a=s[0]>0&&s[0]<4?1:+(s[0]+s[1])),!a&&e&&(s=e.match(/Edge\/(\d+)/),(!s||s[1]>=74)&&(s=e.match(/Chrome\/(\d+)/),s&&(a=+s[1]))),p1=a,p1}var v1,QV;function ea(){if(QV)return v1;QV=1;var n=Hg(),e=pe(),t=Ge(),r=t.String;return v1=!!Object.getOwnPropertySymbols&&!e(function(){var i=Symbol("symbol detection");return!r(i)||!(Object(i)instanceof Symbol)||!Symbol.sham&&n&&n<41}),v1}var m1,JV;function KJ(){if(JV)return m1;JV=1;var n=ea();return m1=n&&!Symbol.sham&&typeof Symbol.iterator=="symbol",m1}var y1,eZ;function Ug(){if(eZ)return y1;eZ=1;var n=Cr(),e=Ot(),t=ut(),r=KJ(),i=Object;return y1=r?function(o){return typeof o=="symbol"}:function(o){var s=n("Symbol");return e(s)&&t(s.prototype,i(o))},y1}var b1,tZ;function ta(){if(tZ)return b1;tZ=1;var n=String;return b1=function(e){try{return n(e)}catch{return"Object"}},b1}var w1,rZ;function ki(){if(rZ)return w1;rZ=1;var n=Ot(),e=ta(),t=TypeError;return w1=function(r){if(n(r))return r;throw new t(e(r)+" is not a function")},w1}var E1,iZ;function XT(){if(iZ)return E1;iZ=1;var n=ki(),e=Qs();return E1=function(t,r){var i=t[r];return e(i)?void 0:n(i)},E1}var S1,nZ;function Gpe(){if(nZ)return S1;nZ=1;var n=or(),e=Ot(),t=Tt(),r=TypeError;return S1=function(i,o){var s,a;if(o==="string"&&e(s=i.toString)&&!t(a=n(s,i))||e(s=i.valueOf)&&!t(a=n(s,i))||o!=="string"&&e(s=i.toString)&&!t(a=n(s,i)))return a;throw new r("Can't convert object to primitive value")},S1}var _1={exports:{}},O1,oZ;function ra(){return oZ||(oZ=1,O1=!0),O1}var T1,sZ;function Wpe(){if(sZ)return T1;sZ=1;var n=Ge(),e=Object.defineProperty;return T1=function(t,r){try{e(n,t,{value:r,configurable:!0,writable:!0})}catch{n[t]=r}return r},T1}var aZ;function QT(){if(aZ)return _1.exports;aZ=1;var n=ra(),e=Ge(),t=Wpe(),r="__core-js_shared__",i=_1.exports=e[r]||t(r,{});return(i.versions||(i.versions=[])).push({version:"3.44.0",mode:n?"pure":"global",copyright:"© 2014-2025 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.44.0/LICENSE",source:"https://github.com/zloirock/core-js"}),_1.exports}var R1,gZ;function ia(){if(gZ)return R1;gZ=1;var n=QT();return R1=function(e,t){return n[e]||(n[e]=t||{})},R1}var P1,AZ;function lr(){if(AZ)return P1;AZ=1;var n=Fi(),e=Object;return P1=function(t){return e(n(t))},P1}var x1,IZ;function qt(){if(IZ)return x1;IZ=1;var n=ye(),e=lr(),t=n({}.hasOwnProperty);return x1=Object.hasOwn||function(i,o){return t(e(i),o)},x1}var $1,CZ;function GI(){if(CZ)return $1;CZ=1;var n=ye(),e=0,t=Math.random(),r=n(1.1.toString);return $1=function(i){return"Symbol("+(i===void 0?"":i)+")_"+r(++e+t,36)},$1}var D1,lZ;function ht(){if(lZ)return D1;lZ=1;var n=Ge(),e=ia(),t=qt(),r=GI(),i=ea(),o=KJ(),s=n.Symbol,a=e("wks"),g=o?s.for||s:s&&s.withoutSetter||r;return D1=function(A){return t(a,A)||(a[A]=i&&t(s,A)?s[A]:g("Symbol."+A)),a[A]},D1}var N1,dZ;function YJ(){if(dZ)return N1;dZ=1;var n=or(),e=Tt(),t=Ug(),r=XT(),i=Gpe(),o=ht(),s=TypeError,a=o("toPrimitive");return N1=function(g,A){if(!e(g)||t(g))return g;var I=r(g,a),C;if(I){if(A===void 0&&(A="default"),C=n(I,g,A),!e(C)||t(C))return C;throw new s("Can't convert object to primitive value")}return A===void 0&&(A="number"),i(g,A)},N1}var M1,uZ;function JT(){if(uZ)return M1;uZ=1;var n=YJ(),e=Ug();return M1=function(t){var r=n(t,"string");return e(r)?r:r+""},M1}var q1,hZ;function XJ(){if(hZ)return q1;hZ=1;var n=Ge(),e=Tt(),t=n.document,r=e(t)&&e(t.createElement);return q1=function(i){return r?t.createElement(i):{}},q1}var F1,cZ;function QJ(){if(cZ)return F1;cZ=1;var n=ot(),e=pe(),t=XJ();return F1=!n&&!e(function(){return Object.defineProperty(t("div"),"a",{get:function(){return 7}}).a!==7}),F1}var fZ;function WI(){if(fZ)return n1;fZ=1;var n=ot(),e=or(),t=jI(),r=Zg(),i=Hr(),o=JT(),s=qt(),a=QJ(),g=Object.getOwnPropertyDescriptor;return n1.f=n?g:function(I,C){if(I=i(I),C=o(C),a)try{return g(I,C)}catch{}if(s(I,C))return r(!e(t.f,I,C),I[C])},n1}var k1,pZ;function Vpe(){if(pZ)return k1;pZ=1;var n=pe(),e=Ot(),t=/#|\.prototype\./,r=function(g,A){var I=o[i(g)];return I===a?!0:I===s?!1:e(A)?n(A):!!A},i=r.normalize=function(g){return String(g).replace(t,".").toLowerCase()},o=r.data={},s=r.NATIVE="N",a=r.POLYFILL="P";return k1=r,k1}var B1,vZ;function VI(){if(vZ)return B1;vZ=1;var n=YT(),e=ki(),t=Vg(),r=n(n.bind);return B1=function(i,o){return e(i),o===void 0?i:t?r(i,o):function(){return i.apply(o,arguments)}},B1}var z1={},j1,mZ;function JJ(){if(mZ)return j1;mZ=1;var n=ot(),e=pe();return j1=n&&e(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!==42}),j1}var L1,yZ;function ui(){if(yZ)return L1;yZ=1;var n=Tt(),e=String,t=TypeError;return L1=function(r){if(n(r))return r;throw new t(e(r)+" is not an object")},L1}var bZ;function Sr(){if(bZ)return z1;bZ=1;var n=ot(),e=QJ(),t=JJ(),r=ui(),i=JT(),o=TypeError,s=Object.defineProperty,a=Object.getOwnPropertyDescriptor,g="enumerable",A="configurable",I="writable";return z1.f=n?t?function(l,d,u){if(r(l),d=i(d),r(u),typeof l=="function"&&d==="prototype"&&"value"in u&&I in u&&!u[I]){var h=a(l,d);h&&h[I]&&(l[d]=u.value,u={configurable:A in u?u[A]:h[A],enumerable:g in u?u[g]:h[g],writable:!1})}return s(l,d,u)}:s:function(l,d,u){if(r(l),d=i(d),r(u),e)try{return s(l,d,u)}catch{}if("get"in u||"set"in u)throw new o("Accessors not supported");return"value"in u&&(l[d]=u.value),l},z1}var G1,wZ;function na(){if(wZ)return G1;wZ=1;var n=ot(),e=Sr(),t=Zg();return G1=n?function(r,i,o){return e.f(r,i,t(1,o))}:function(r,i,o){return r[i]=o,r},G1}var W1,EZ;function te(){if(EZ)return W1;EZ=1;var n=Ge(),e=zI(),t=YT(),r=Ot(),i=WI().f,o=Vpe(),s=Re(),a=VI(),g=na(),A=qt(),I=function(C){var l=function(d,u,h){if(this instanceof l){switch(arguments.length){case 0:return new C;case 1:return new C(d);case 2:return new C(d,u)}return new C(d,u,h)}return e(C,this,arguments)};return l.prototype=C.prototype,l};return W1=function(C,l){var d=C.target,u=C.global,h=C.stat,v=C.proto,f=u?n:h?n[d]:n[d]&&n[d].prototype,c=u?s:s[d]||g(s,d,{})[d],b=c.prototype,p,y,E,S,m,w,_,T,R;for(S in l)p=o(u?S:d+(h?".":"#")+S,C.forced),y=!p&&f&&A(f,S),w=c[S],y&&(C.dontCallGetSet?(R=i(f,S),_=R&&R.value):_=f[S]),m=y&&_?_:l[S],!(!p&&!v&&typeof w==typeof m)&&(C.bind&&y?T=a(m,n):C.wrap&&y?T=I(m):v&&r(m)?T=t(m):T=m,(C.sham||m&&m.sham||w&&w.sham)&&g(T,"sham",!0),g(c,S,T),v&&(E=d+"Prototype",A(s,E)||g(s,E,{}),g(s[E],S,m),C.real&&b&&(p||!b[S])&&g(b,S,m)))},W1}var V1,SZ;function Zpe(){if(SZ)return V1;SZ=1;var n=Math.ceil,e=Math.floor;return V1=Math.trunc||function(r){var i=+r;return(i>0?e:n)(i)},V1}var Z1,_Z;function oa(){if(_Z)return Z1;_Z=1;var n=Zpe();return Z1=function(e){var t=+e;return t!==t||t===0?0:n(t)},Z1}var H1,OZ;function ZI(){if(OZ)return H1;OZ=1;var n=oa(),e=Math.max,t=Math.min;return H1=function(r,i){var o=n(r);return o<0?e(o+i,0):t(o,i)},H1}var U1,TZ;function eee(){if(TZ)return U1;TZ=1;var n=oa(),e=Math.min;return U1=function(t){var r=n(t);return r>0?e(r,9007199254740991):0},U1}var K1,RZ;function Bi(){if(RZ)return K1;RZ=1;var n=eee();return K1=function(e){return n(e.length)},K1}var Y1,PZ;function eR(){if(PZ)return Y1;PZ=1;var n=Hr(),e=ZI(),t=Bi(),r=function(i){return function(o,s,a){var g=n(o),A=t(g);if(A===0)return!i&&-1;var I=e(a,A),C;if(i&&s!==s){for(;A>I;)if(C=g[I++],C!==C)return!0}else for(;A>I;I++)if((i||I in g)&&g[I]===s)return i||I||0;return!i&&-1}};return Y1={includes:r(!0),indexOf:r(!1)},Y1}var X1,xZ;function Kg(){return xZ||(xZ=1,X1={}),X1}var Q1,$Z;function tee(){if($Z)return Q1;$Z=1;var n=ye(),e=qt(),t=Hr(),r=eR().indexOf,i=Kg(),o=n([].push);return Q1=function(s,a){var g=t(s),A=0,I=[],C;for(C in g)!e(i,C)&&e(g,C)&&o(I,C);for(;a.length>A;)e(g,C=a[A++])&&(~r(I,C)||o(I,C));return I},Q1}var J1,DZ;function tR(){return DZ||(DZ=1,J1=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]),J1}var e0,NZ;function Yg(){if(NZ)return e0;NZ=1;var n=tee(),e=tR();return e0=Object.keys||function(r){return n(r,e)},e0}var t0={},MZ;function HI(){return MZ||(MZ=1,t0.f=Object.getOwnPropertySymbols),t0}var r0,qZ;function Hpe(){if(qZ)return r0;qZ=1;var n=ot(),e=ye(),t=or(),r=pe(),i=Yg(),o=HI(),s=jI(),a=lr(),g=LI(),A=Object.assign,I=Object.defineProperty,C=e([].concat);return r0=!A||r(function(){if(n&&A({b:1},A(I({},"a",{enumerable:!0,get:function(){I(this,"b",{value:3,enumerable:!1})}}),{b:2})).b!==1)return!0;var l={},d={},u=Symbol("assign detection"),h="abcdefghijklmnopqrst";return l[u]=7,h.split("").forEach(function(v){d[v]=v}),A({},l)[u]!==7||i(A({},d)).join("")!==h})?function(d,u){for(var h=a(d),v=arguments.length,f=1,c=o.f,b=s.f;v>f;)for(var p=g(arguments[f++]),y=c?C(i(p),c(p)):i(p),E=y.length,S=0,m;E>S;)m=y[S++],(!n||t(b,p,m))&&(h[m]=p[m]);return h}:A,r0}var FZ;function Upe(){if(FZ)return RV;FZ=1;var n=te(),e=Hpe();return n({target:"Object",stat:!0,arity:2,forced:Object.assign!==e},{assign:e}),RV}var i0,kZ;function Kpe(){if(kZ)return i0;kZ=1,Upe();var n=Re();return i0=n.Object.assign,i0}var n0,BZ;function Ype(){if(BZ)return n0;BZ=1;var n=Kpe();return n0=n,n0}var o0,zZ;function Xpe(){return zZ||(zZ=1,o0=Ype()),o0}var Qpe=Xpe(),At=se(Qpe),jZ={},s0,LZ;function sa(){if(LZ)return s0;LZ=1;var n=ye();return s0=n([].slice),s0}var a0,GZ;function Jpe(){if(GZ)return a0;GZ=1;var n=ye(),e=ki(),t=Tt(),r=qt(),i=sa(),o=Vg(),s=Function,a=n([].concat),g=n([].join),A={},I=function(C,l,d){if(!r(A,l)){for(var u=[],h=0;h<l;h++)u[h]="a["+h+"]";A[l]=s("C,a","return new C("+g(u,",")+")")}return A[l](C,d)};return a0=o?s.bind:function(l){var d=e(this),u=d.prototype,h=i(arguments,1),v=function(){var c=a(h,i(arguments));return this instanceof v?I(d,c.length,c):d.apply(l,c)};return t(u)&&(v.prototype=u),v},a0}var WZ;function eve(){if(WZ)return jZ;WZ=1;var n=te(),e=Jpe();return n({target:"Function",proto:!0,forced:Function.bind!==e},{bind:e}),jZ}var g0,VZ;function Ft(){if(VZ)return g0;VZ=1;var n=Ge(),e=Re();return g0=function(t,r){var i=e[t+"Prototype"],o=i&&i[r];if(o)return o;var s=n[t],a=s&&s.prototype;return a&&a[r]},g0}var A0,ZZ;function tve(){if(ZZ)return A0;ZZ=1,eve();var n=Ft();return A0=n("Function","bind"),A0}var I0,HZ;function rve(){if(HZ)return I0;HZ=1;var n=ut(),e=tve(),t=Function.prototype;return I0=function(r){var i=r.bind;return r===t||n(t,r)&&i===t.bind?e:i},I0}var C0,UZ;function ive(){if(UZ)return C0;UZ=1;var n=rve();return C0=n,C0}var l0,KZ;function nve(){return KZ||(KZ=1,l0=ive()),l0}var ove=nve(),j=se(ove);function rR(n,e,t,r){n.beginPath(),n.arc(e,t,r,0,2*Math.PI,!1),n.closePath()}function sve(n,e,t,r){n.beginPath(),n.rect(e-r,t-r,r*2,r*2),n.closePath()}function ave(n,e,t,r){n.beginPath(),r*=1.15,t+=.275*r;const i=r*2,o=i/2,s=Math.sqrt(3)/6*i,a=Math.sqrt(i*i-o*o);n.moveTo(e,t-(a-s)),n.lineTo(e+o,t+s),n.lineTo(e-o,t+s),n.lineTo(e,t-(a-s)),n.closePath()}function gve(n,e,t,r){n.beginPath(),r*=1.15,t-=.275*r;const i=r*2,o=i/2,s=Math.sqrt(3)/6*i,a=Math.sqrt(i*i-o*o);n.moveTo(e,t+(a-s)),n.lineTo(e+o,t-s),n.lineTo(e-o,t-s),n.lineTo(e,t+(a-s)),n.closePath()}function Ave(n,e,t,r){n.beginPath(),r*=.82,t+=.1*r;for(let i=0;i<10;i++){const o=i%2===0?r*1.3:r*.5;n.lineTo(e+o*Math.sin(i*2*Math.PI/10),t-o*Math.cos(i*2*Math.PI/10))}n.closePath()}function Ive(n,e,t,r){n.beginPath(),n.lineTo(e,t+r),n.lineTo(e+r,t),n.lineTo(e,t-r),n.lineTo(e-r,t),n.closePath()}function ree(n,e,t,r,i,o){const s=Math.PI/180;r-2*o<0&&(o=r/2),i-2*o<0&&(o=i/2),n.beginPath(),n.moveTo(e+o,t),n.lineTo(e+r-o,t),n.arc(e+r-o,t+o,o,s*270,s*360,!1),n.lineTo(e+r,t+i-o),n.arc(e+r-o,t+i-o,o,0,s*90,!1),n.lineTo(e+o,t+i),n.arc(e+o,t+i-o,o,s*90,s*180,!1),n.lineTo(e,t+o),n.arc(e+o,t+o,o,s*180,s*270,!1),n.closePath()}function OO(n,e,t,r,i){const o=.5522848,s=r/2*o,a=i/2*o,g=e+r,A=t+i,I=e+r/2,C=t+i/2;n.beginPath(),n.moveTo(e,C),n.bezierCurveTo(e,C-a,I-s,t,I,t),n.bezierCurveTo(I+s,t,g,C-a,g,C),n.bezierCurveTo(g,C+a,I+s,A,I,A),n.bezierCurveTo(I-s,A,e,C+a,e,C),n.closePath()}function iee(n,e,t,r,i){const o=.3333333333333333,s=r,a=i*o,g=.5522848,A=s/2*g,I=a/2*g,C=e+s,l=t+a,d=e+s/2,u=t+a/2,h=t+(i-a/2),v=t+i;n.beginPath(),n.moveTo(C,u),n.bezierCurveTo(C,u+I,d+A,l,d,l),n.bezierCurveTo(d-A,l,e,u+I,e,u),n.bezierCurveTo(e,u-I,d-A,t,d,t),n.bezierCurveTo(d+A,t,C,u-I,C,u),n.lineTo(C,h),n.bezierCurveTo(C,h+I,d+A,v,d,v),n.bezierCurveTo(d-A,v,e,h+I,e,h),n.lineTo(e,u)}function nee(n,e,t,r,i,o){n.beginPath(),n.moveTo(e,t);const s=o.length,a=r-e,g=i-t,A=g/a;let I=Math.sqrt(a*a+g*g),C=0,l=!0,d=0,u=+o[0];for(;I>=.1;)u=+o[C++%s],u>I&&(u=I),d=Math.sqrt(u*u/(1+A*A)),d=a<0?-d:d,e+=d,t+=A*d,l===!0?n.lineTo(e,t):n.moveTo(e,t),I-=u,l=!l}function Cve(n,e,t,r){n.beginPath();const i=6,o=Math.PI*2/i;n.moveTo(e+r,t);for(let s=1;s<i;s++)n.lineTo(e+r*Math.cos(o*s),t+r*Math.sin(o*s));n.closePath()}const YZ={circle:rR,dashedLine:nee,database:iee,diamond:Ive,ellipse:OO,ellipse_vis:OO,hexagon:Cve,roundRect:ree,square:sve,star:Ave,triangle:ave,triangleDown:gve};function lve(n){return Object.prototype.hasOwnProperty.call(YZ,n)?YZ[n]:function(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),i=1;i<t;i++)r[i-1]=arguments[i];CanvasRenderingContext2D.prototype[n].call(e,r)}}var d0={exports:{}},XZ;function dve(){return XZ||(XZ=1,(function(n){n.exports=e;function e(r){if(r)return t(r)}function t(r){for(var i in e.prototype)r[i]=e.prototype[i];return r}e.prototype.on=e.prototype.addEventListener=function(r,i){return this._callbacks=this._callbacks||{},(this._callbacks["$"+r]=this._callbacks["$"+r]||[]).push(i),this},e.prototype.once=function(r,i){function o(){this.off(r,o),i.apply(this,arguments)}return o.fn=i,this.on(r,o),this},e.prototype.off=e.prototype.removeListener=e.prototype.removeAllListeners=e.prototype.removeEventListener=function(r,i){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var o=this._callbacks["$"+r];if(!o)return this;if(arguments.length==1)return delete this._callbacks["$"+r],this;for(var s,a=0;a<o.length;a++)if(s=o[a],s===i||s.fn===i){o.splice(a,1);break}return o.length===0&&delete this._callbacks["$"+r],this},e.prototype.emit=function(r){this._callbacks=this._callbacks||{};for(var i=new Array(arguments.length-1),o=this._callbacks["$"+r],s=1;s<arguments.length;s++)i[s-1]=arguments[s];if(o){o=o.slice(0);for(var s=0,a=o.length;s<a;++s)o[s].apply(this,i)}return this},e.prototype.listeners=function(r){return this._callbacks=this._callbacks||{},this._callbacks["$"+r]||[]},e.prototype.hasListeners=function(r){return!!this.listeners(r).length}})(d0)),d0.exports}var uve=dve(),oee=se(uve),QZ={},u0,JZ;function To(){if(JZ)return u0;JZ=1;var n=di();return u0=Array.isArray||function(t){return n(t)==="Array"},u0}var h0,eH;function see(){if(eH)return h0;eH=1;var n=TypeError,e=9007199254740991;return h0=function(t){if(t>e)throw n("Maximum allowed index exceeded");return t},h0}var c0,tH;function UI(){if(tH)return c0;tH=1;var n=ot(),e=Sr(),t=Zg();return c0=function(r,i,o){n?e.f(r,i,t(0,o)):r[i]=o},c0}var f0,rH;function iR(){if(rH)return f0;rH=1;var n=ht(),e=n("toStringTag"),t={};return t[e]="z",f0=String(t)==="[object z]",f0}var p0,iH;function aa(){if(iH)return p0;iH=1;var n=iR(),e=Ot(),t=di(),r=ht(),i=r("toStringTag"),o=Object,s=t((function(){return arguments})())==="Arguments",a=function(g,A){try{return g[A]}catch{}};return p0=n?t:function(g){var A,I,C;return g===void 0?"Undefined":g===null?"Null":typeof(I=a(A=o(g),i))=="string"?I:s?t(A):(C=t(A))==="Object"&&e(A.callee)?"Arguments":C},p0}var v0,nH;function hve(){if(nH)return v0;nH=1;var n=ye(),e=Ot(),t=QT(),r=n(Function.toString);return e(t.inspectSource)||(t.inspectSource=function(i){return r(i)}),v0=t.inspectSource,v0}var m0,oH;function aee(){if(oH)return m0;oH=1;var n=ye(),e=pe(),t=Ot(),r=aa(),i=Cr(),o=hve(),s=function(){},a=i("Reflect","construct"),g=/^\s*(?:class|function)\b/,A=n(g.exec),I=!g.test(s),C=function(u){if(!t(u))return!1;try{return a(s,[],u),!0}catch{return!1}},l=function(u){if(!t(u))return!1;switch(r(u)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return I||!!A(g,o(u))}catch{return!0}};return l.sham=!0,m0=!a||e(function(){var d;return C(C.call)||!C(Object)||!C(function(){d=!0})||d})?l:C,m0}var y0,sH;function cve(){if(sH)return y0;sH=1;var n=To(),e=aee(),t=Tt(),r=ht(),i=r("species"),o=Array;return y0=function(s){var a;return n(s)&&(a=s.constructor,e(a)&&(a===o||n(a.prototype))?a=void 0:t(a)&&(a=a[i],a===null&&(a=void 0))),a===void 0?o:a},y0}var b0,aH;function nR(){if(aH)return b0;aH=1;var n=cve();return b0=function(e,t){return new(n(e))(t===0?0:t)},b0}var w0,gH;function Xg(){if(gH)return w0;gH=1;var n=pe(),e=ht(),t=Hg(),r=e("species");return w0=function(i){return t>=51||!n(function(){var o=[],s=o.constructor={};return s[r]=function(){return{foo:1}},o[i](Boolean).foo!==1})},w0}var AH;function gee(){if(AH)return QZ;AH=1;var n=te(),e=pe(),t=To(),r=Tt(),i=lr(),o=Bi(),s=see(),a=UI(),g=nR(),A=Xg(),I=ht(),C=Hg(),l=I("isConcatSpreadable"),d=C>=51||!e(function(){var v=[];return v[l]=!1,v.concat()[0]!==v}),u=function(v){if(!r(v))return!1;var f=v[l];return f!==void 0?!!f:t(v)},h=!d||!A("concat");return n({target:"Array",proto:!0,arity:1,forced:h},{concat:function(f){var c=i(this),b=g(c,0),p=0,y,E,S,m,w;for(y=-1,S=arguments.length;y<S;y++)if(w=y===-1?c:arguments[y],u(w))for(m=o(w),s(p+m),E=0;E<m;E++,p++)E in w&&a(b,p,w[E]);else s(p+1),a(b,p++,w);return b.length=p,b}}),QZ}var IH={},CH={},E0,lH;function _r(){if(lH)return E0;lH=1;var n=aa(),e=String;return E0=function(t){if(n(t)==="Symbol")throw new TypeError("Cannot convert a Symbol value to a string");return e(t)},E0}var S0={},dH;function oR(){if(dH)return S0;dH=1;var n=ot(),e=JJ(),t=Sr(),r=ui(),i=Hr(),o=Yg();return S0.f=n&&!e?Object.defineProperties:function(a,g){r(a);for(var A=i(g),I=o(g),C=I.length,l=0,d;C>l;)t.f(a,d=I[l++],A[d]);return a},S0}var _0,uH;function fve(){if(uH)return _0;uH=1;var n=Cr();return _0=n("document","documentElement"),_0}var O0,hH;function KI(){if(hH)return O0;hH=1;var n=ia(),e=GI(),t=n("keys");return O0=function(r){return t[r]||(t[r]=e(r))},O0}var T0,cH;function Qg(){if(cH)return T0;cH=1;var n=ui(),e=oR(),t=tR(),r=Kg(),i=fve(),o=XJ(),s=KI(),a=">",g="<",A="prototype",I="script",C=s("IE_PROTO"),l=function(){},d=function(c){return g+I+a+c+g+"/"+I+a},u=function(c){c.write(d("")),c.close();var b=c.parentWindow.Object;return c=null,b},h=function(){var c=o("iframe"),b="java"+I+":",p;return c.style.display="none",i.appendChild(c),c.src=String(b),p=c.contentWindow.document,p.open(),p.write(d("document.F=Object")),p.close(),p.F},v,f=function(){try{v=new ActiveXObject("htmlfile")}catch{}f=typeof document<"u"?document.domain&&v?u(v):h():u(v);for(var c=t.length;c--;)delete f[A][t[c]];return f()};return r[C]=!0,T0=Object.create||function(b,p){var y;return b!==null?(l[A]=n(b),y=new l,l[A]=null,y[C]=b):y=f(),p===void 0?y:e.f(y,p)},T0}var R0={},fH;function YI(){if(fH)return R0;fH=1;var n=tee(),e=tR(),t=e.concat("length","prototype");return R0.f=Object.getOwnPropertyNames||function(i){return n(i,t)},R0}var P0={},pH;function sR(){if(pH)return P0;pH=1;var n=di(),e=Hr(),t=YI().f,r=sa(),i=typeof window=="object"&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],o=function(s){try{return t(s)}catch{return r(i)}};return P0.f=function(a){return i&&n(a)==="Window"?o(a):t(e(a))},P0}var x0,vH;function Jg(){if(vH)return x0;vH=1;var n=na();return x0=function(e,t,r,i){return i&&i.enumerable?e[t]=r:n(e,t,r),e},x0}var $0,mH;function aR(){if(mH)return $0;mH=1;var n=Sr();return $0=function(e,t,r){return n.f(e,t,r)},$0}var D0={},yH;function XI(){if(yH)return D0;yH=1;var n=ht();return D0.f=n,D0}var N0,bH;function Ue(){if(bH)return N0;bH=1;var n=Re(),e=qt(),t=XI(),r=Sr().f;return N0=function(i){var o=n.Symbol||(n.Symbol={});e(o,i)||r(o,i,{value:t.f(i)})},N0}var M0,wH;function Aee(){if(wH)return M0;wH=1;var n=or(),e=Cr(),t=ht(),r=Jg();return M0=function(){var i=e("Symbol"),o=i&&i.prototype,s=o&&o.valueOf,a=t("toPrimitive");o&&!o[a]&&r(o,a,function(g){return n(s,this)},{arity:1})},M0}var q0,EH;function pve(){if(EH)return q0;EH=1;var n=iR(),e=aa();return q0=n?{}.toString:function(){return"[object "+e(this)+"]"},q0}var F0,SH;function Ro(){if(SH)return F0;SH=1;var n=iR(),e=Sr().f,t=na(),r=qt(),i=pve(),o=ht(),s=o("toStringTag");return F0=function(a,g,A,I){var C=A?a:a&&a.prototype;C&&(r(C,s)||e(C,s,{configurable:!0,value:g}),I&&!n&&t(C,"toString",i))},F0}var k0,_H;function Iee(){if(_H)return k0;_H=1;var n=Ge(),e=Ot(),t=n.WeakMap;return k0=e(t)&&/native code/.test(String(t)),k0}var B0,OH;function Po(){if(OH)return B0;OH=1;var n=Iee(),e=Ge(),t=Tt(),r=na(),i=qt(),o=QT(),s=KI(),a=Kg(),g="Object already initialized",A=e.TypeError,I=e.WeakMap,C,l,d,u=function(c){return d(c)?l(c):C(c,{})},h=function(c){return function(b){var p;if(!t(b)||(p=l(b)).type!==c)throw new A("Incompatible receiver, "+c+" required");return p}};if(n||o.state){var v=o.state||(o.state=new I);v.get=v.get,v.has=v.has,v.set=v.set,C=function(c,b){if(v.has(c))throw new A(g);return b.facade=c,v.set(c,b),b},l=function(c){return v.get(c)||{}},d=function(c){return v.has(c)}}else{var f=s("state");a[f]=!0,C=function(c,b){if(i(c,f))throw new A(g);return b.facade=c,r(c,f,b),b},l=function(c){return i(c,f)?c[f]:{}},d=function(c){return i(c,f)}}return B0={set:C,get:l,has:d,enforce:u,getterFor:h},B0}var z0,TH;function Sn(){if(TH)return z0;TH=1;var n=VI(),e=ye(),t=LI(),r=lr(),i=Bi(),o=nR(),s=e([].push),a=function(g){var A=g===1,I=g===2,C=g===3,l=g===4,d=g===6,u=g===7,h=g===5||d;return function(v,f,c,b){for(var p=r(v),y=t(p),E=i(y),S=n(f,c),m=0,w=b||o,_=A?w(v,E):I||u?w(v,0):void 0,T,R;E>m;m++)if((h||m in y)&&(T=y[m],R=S(T,m,p),g))if(A)_[m]=R;else if(R)switch(g){case 3:return!0;case 5:return T;case 6:return m;case 2:s(_,T)}else switch(g){case 4:return!1;case 7:s(_,T)}return d?-1:C||l?l:_}};return z0={forEach:a(0),map:a(1),filter:a(2),some:a(3),every:a(4),find:a(5),findIndex:a(6),filterReject:a(7)},z0}var RH;function vve(){if(RH)return CH;RH=1;var n=te(),e=Ge(),t=or(),r=ye(),i=ra(),o=ot(),s=ea(),a=pe(),g=qt(),A=ut(),I=ui(),C=Hr(),l=JT(),d=_r(),u=Zg(),h=Qg(),v=Yg(),f=YI(),c=sR(),b=HI(),p=WI(),y=Sr(),E=oR(),S=jI(),m=Jg(),w=aR(),_=ia(),T=KI(),R=Kg(),O=GI(),P=ht(),x=XI(),V=Ue(),M=Aee(),U=Ro(),K=Po(),oe=Sn().forEach,L=T("hidden"),ae="Symbol",he="prototype",ve=K.set,Rt=K.getterFor(ae),le=Object[he],We=e.Symbol,Pt=We&&We[he],ua=e.RangeError,ha=e.TypeError,Tr=e.QObject,zi=p.f,Ve=y.f,ji=c.f,ca=S.f,Li=r([].push),Se=_("symbols"),xt=_("op-symbols"),fa=_("wks"),Rr=!Tr||!Tr[he]||!Tr[he].findChild,Gi=function(Z,N,q){var F=zi(le,N);F&&delete le[N],Ve(Z,N,q),F&&Z!==le&&Ve(le,N,F)},Pr=o&&a(function(){return h(Ve({},"a",{get:function(){return Ve(this,"a",{value:7}).a}})).a!==7})?Gi:Ve,xr=function(Z,N){var q=Se[Z]=h(Pt);return ve(q,{type:ae,tag:Z,description:N}),o||(q.description=N),q},Ut=function(N,q,F){N===le&&Ut(xt,q,F),I(N);var H=l(q);return I(F),g(Se,H)?(F.enumerable?(g(N,L)&&N[L][H]&&(N[L][H]=!1),F=h(F,{enumerable:u(0,!1)})):(g(N,L)||Ve(N,L,u(1,h(null))),N[L][H]=!0),Pr(N,H,F)):Ve(N,H,F)},$r=function(N,q){I(N);var F=C(q),H=v(F).concat(Zi(F));return oe(H,function(ge){(!o||t(Dr,F,ge))&&Ut(N,ge,F[ge])}),N},pa=function(N,q){return q===void 0?h(N):$r(h(N),q)},Dr=function(N){var q=l(N),F=t(ca,this,q);return this===le&&g(Se,q)&&!g(xt,q)?!1:F||!g(this,q)||!g(Se,q)||g(this,L)&&this[L][q]?F:!0},Wi=function(N,q){var F=C(N),H=l(q);if(!(F===le&&g(Se,H)&&!g(xt,H))){var ge=zi(F,H);return ge&&g(Se,H)&&!(g(F,L)&&F[L][H])&&(ge.enumerable=!0),ge}},Vi=function(N){var q=ji(C(N)),F=[];return oe(q,function(H){!g(Se,H)&&!g(R,H)&&Li(F,H)}),F},Zi=function(Z){var N=Z===le,q=ji(N?xt:C(Z)),F=[];return oe(q,function(H){g(Se,H)&&(!N||g(le,H))&&Li(F,Se[H])}),F};return s||(We=function(){if(A(Pt,this))throw new ha("Symbol is not a constructor");var N=!arguments.length||arguments[0]===void 0?void 0:d(arguments[0]),q=O(N),F=function(H){var ge=this===void 0?e:this;ge===le&&t(F,xt,H),g(ge,L)&&g(ge[L],q)&&(ge[L][q]=!1);var Hi=u(1,H);try{Pr(ge,q,Hi)}catch(Ui){if(!(Ui instanceof ua))throw Ui;Gi(ge,q,Hi)}};return o&&Rr&&Pr(le,q,{configurable:!0,set:F}),xr(q,N)},Pt=We[he],m(Pt,"toString",function(){return Rt(this).tag}),m(We,"withoutSetter",function(Z){return xr(O(Z),Z)}),S.f=Dr,y.f=Ut,E.f=$r,p.f=Wi,f.f=c.f=Vi,b.f=Zi,x.f=function(Z){return xr(P(Z),Z)},o&&(w(Pt,"description",{configurable:!0,get:function(){return Rt(this).description}}),i||m(le,"propertyIsEnumerable",Dr,{unsafe:!0}))),n({global:!0,constructor:!0,wrap:!0,forced:!s,sham:!s},{Symbol:We}),oe(v(fa),function(Z){V(Z)}),n({target:ae,stat:!0,forced:!s},{useSetter:function(){Rr=!0},useSimple:function(){Rr=!1}}),n({target:"Object",stat:!0,forced:!s,sham:!o},{create:pa,defineProperty:Ut,defineProperties:$r,getOwnPropertyDescriptor:Wi}),n({target:"Object",stat:!0,forced:!s},{getOwnPropertyNames:Vi}),M(),U(We,ae),R[L]=!0,CH}var PH={},j0,xH;function Cee(){if(xH)return j0;xH=1;var n=ea();return j0=n&&!!Symbol.for&&!!Symbol.keyFor,j0}var $H;function mve(){if($H)return PH;$H=1;var n=te(),e=Cr(),t=qt(),r=_r(),i=ia(),o=Cee(),s=i("string-to-symbol-registry"),a=i("symbol-to-string-registry");return n({target:"Symbol",stat:!0,forced:!o},{for:function(g){var A=r(g);if(t(s,A))return s[A];var I=e("Symbol")(A);return s[A]=I,a[I]=A,I}}),PH}var DH={},NH;function yve(){if(NH)return DH;NH=1;var n=te(),e=qt(),t=Ug(),r=ta(),i=ia(),o=Cee(),s=i("symbol-to-string-registry");return n({target:"Symbol",stat:!0,forced:!o},{keyFor:function(g){if(!t(g))throw new TypeError(r(g)+" is not a symbol");if(e(s,g))return s[g]}}),DH}var MH={},L0,qH;function bve(){if(qH)return L0;qH=1;var n=ye(),e=To(),t=Ot(),r=di(),i=_r(),o=n([].push);return L0=function(s){if(t(s))return s;if(e(s)){for(var a=s.length,g=[],A=0;A<a;A++){var I=s[A];typeof I=="string"?o(g,I):(typeof I=="number"||r(I)==="Number"||r(I)==="String")&&o(g,i(I))}var C=g.length,l=!0;return function(d,u){if(l)return l=!1,u;if(e(this))return u;for(var h=0;h<C;h++)if(g[h]===d)return u}}},L0}var FH;function lee(){if(FH)return MH;FH=1;var n=te(),e=Cr(),t=zI(),r=or(),i=ye(),o=pe(),s=Ot(),a=Ug(),g=sa(),A=bve(),I=ea(),C=String,l=e("JSON","stringify"),d=i(/./.exec),u=i("".charAt),h=i("".charCodeAt),v=i("".replace),f=i(1.1.toString),c=/[\uD800-\uDFFF]/g,b=/^[\uD800-\uDBFF]$/,p=/^[\uDC00-\uDFFF]$/,y=!I||o(function(){var w=e("Symbol")("stringify detection");return l([w])!=="[null]"||l({a:w})!=="{}"||l(Object(w))!=="{}"}),E=o(function(){return l("\uDF06\uD834")!=='"\\udf06\\ud834"'||l("\uDEAD")!=='"\\udead"'}),S=function(w,_){var T=g(arguments),R=A(_);if(!(!s(R)&&(w===void 0||a(w))))return T[1]=function(O,P){if(s(R)&&(P=r(R,this,C(O),P)),!a(P))return P},t(l,null,T)},m=function(w,_,T){var R=u(T,_-1),O=u(T,_+1);return d(b,w)&&!d(p,O)||d(p,w)&&!d(b,R)?"\\u"+f(h(w,0),16):w};return l&&n({target:"JSON",stat:!0,arity:3,forced:y||E},{stringify:function(_,T,R){var O=g(arguments),P=t(y?S:l,null,O);return E&&typeof P=="string"?v(P,c,m):P}}),MH}var kH={},BH;function wve(){if(BH)return kH;BH=1;var n=te(),e=ea(),t=pe(),r=HI(),i=lr(),o=!e||t(function(){r.f(1)});return n({target:"Object",stat:!0,forced:o},{getOwnPropertySymbols:function(a){var g=r.f;return g?g(i(a)):[]}}),kH}var zH;function dee(){return zH||(zH=1,vve(),mve(),yve(),lee(),wve()),IH}var jH={},LH;function uee(){if(LH)return jH;LH=1;var n=Ue();return n("asyncDispose"),jH}var GH={},WH;function Eve(){if(WH)return GH;WH=1;var n=Ue();return n("asyncIterator"),GH}var VH={},ZH;function hee(){if(ZH)return VH;ZH=1;var n=Ue();return n("dispose"),VH}var HH={},UH;function Sve(){if(UH)return HH;UH=1;var n=Ue();return n("hasInstance"),HH}var KH={},YH;function _ve(){if(YH)return KH;YH=1;var n=Ue();return n("isConcatSpreadable"),KH}var XH={},QH;function cee(){if(QH)return XH;QH=1;var n=Ue();return n("iterator"),XH}var JH={},eU;function Ove(){if(eU)return JH;eU=1;var n=Ue();return n("match"),JH}var tU={},rU;function Tve(){if(rU)return tU;rU=1;var n=Ue();return n("matchAll"),tU}var iU={},nU;function Rve(){if(nU)return iU;nU=1;var n=Ue();return n("replace"),iU}var oU={},sU;function Pve(){if(sU)return oU;sU=1;var n=Ue();return n("search"),oU}var aU={},gU;function xve(){if(gU)return aU;gU=1;var n=Ue();return n("species"),aU}var AU={},IU;function $ve(){if(IU)return AU;IU=1;var n=Ue();return n("split"),AU}var CU={},lU;function fee(){if(lU)return CU;lU=1;var n=Ue(),e=Aee();return n("toPrimitive"),e(),CU}var dU={},uU;function Dve(){if(uU)return dU;uU=1;var n=Cr(),e=Ue(),t=Ro();return e("toStringTag"),t(n("Symbol"),"Symbol"),dU}var hU={},cU;function Nve(){if(cU)return hU;cU=1;var n=Ue();return n("unscopables"),hU}var fU={},pU;function Mve(){if(pU)return fU;pU=1;var n=Ge(),e=Ro();return e(n.JSON,"JSON",!0),fU}var G0,vU;function qve(){if(vU)return G0;vU=1,gee(),dee(),uee(),Eve(),hee(),Sve(),_ve(),cee(),Ove(),Tve(),Rve(),Pve(),xve(),$ve(),fee(),Dve(),Nve(),Mve();var n=Re();return G0=n.Symbol,G0}var mU={},W0,yU;function gR(){return yU||(yU=1,W0=function(){}),W0}var V0,bU;function ga(){return bU||(bU=1,V0={}),V0}var Z0,wU;function Fve(){if(wU)return Z0;wU=1;var n=ot(),e=qt(),t=Function.prototype,r=n&&Object.getOwnPropertyDescriptor,i=e(t,"name"),o=i&&(function(){}).name==="something",s=i&&(!n||n&&r(t,"name").configurable);return Z0={EXISTS:i,PROPER:o,CONFIGURABLE:s},Z0}var H0,EU;function pee(){if(EU)return H0;EU=1;var n=pe();return H0=!n(function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}),H0}var U0,SU;function QI(){if(SU)return U0;SU=1;var n=qt(),e=Ot(),t=lr(),r=KI(),i=pee(),o=r("IE_PROTO"),s=Object,a=s.prototype;return U0=i?s.getPrototypeOf:function(g){var A=t(g);if(n(A,o))return A[o];var I=A.constructor;return e(I)&&A instanceof I?I.prototype:A instanceof s?a:null},U0}var K0,_U;function vee(){if(_U)return K0;_U=1;var n=pe(),e=Ot(),t=Tt(),r=Qg(),i=QI(),o=Jg(),s=ht(),a=ra(),g=s("iterator"),A=!1,I,C,l;[].keys&&(l=[].keys(),"next"in l?(C=i(i(l)),C!==Object.prototype&&(I=C)):A=!0);var d=!t(I)||n(function(){var u={};return I[g].call(u)!==u});return d?I={}:a&&(I=r(I)),e(I[g])||o(I,g,function(){return this}),K0={IteratorPrototype:I,BUGGY_SAFARI_ITERATORS:A},K0}var Y0,OU;function kve(){if(OU)return Y0;OU=1;var n=vee().IteratorPrototype,e=Qg(),t=Zg(),r=Ro(),i=ga(),o=function(){return this};return Y0=function(s,a,g,A){var I=a+" Iterator";return s.prototype=e(n,{next:t(+!A,g)}),r(s,I,!1,!0),i[I]=o,s},Y0}var X0,TU;function Bve(){if(TU)return X0;TU=1;var n=ye(),e=ki();return X0=function(t,r,i){try{return n(e(Object.getOwnPropertyDescriptor(t,r)[i]))}catch{}},X0}var Q0,RU;function zve(){if(RU)return Q0;RU=1;var n=Tt();return Q0=function(e){return n(e)||e===null},Q0}var J0,PU;function jve(){if(PU)return J0;PU=1;var n=zve(),e=String,t=TypeError;return J0=function(r){if(n(r))return r;throw new t("Can't set "+e(r)+" as a prototype")},J0}var ew,xU;function Lve(){if(xU)return ew;xU=1;var n=Bve(),e=Tt(),t=Fi(),r=jve();return ew=Object.setPrototypeOf||("__proto__"in{}?(function(){var i=!1,o={},s;try{s=n(Object.prototype,"__proto__","set"),s(o,[]),i=o instanceof Array}catch{}return function(g,A){return t(g),r(A),e(g)&&(i?s(g,A):g.__proto__=A),g}})():void 0),ew}var tw,$U;function AR(){if($U)return tw;$U=1;var n=te(),e=or(),t=ra(),r=Fve(),i=Ot(),o=kve(),s=QI(),a=Lve(),g=Ro(),A=na(),I=Jg(),C=ht(),l=ga(),d=vee(),u=r.PROPER,h=r.CONFIGURABLE,v=d.IteratorPrototype,f=d.BUGGY_SAFARI_ITERATORS,c=C("iterator"),b="keys",p="values",y="entries",E=function(){return this};return tw=function(S,m,w,_,T,R,O){o(w,m,_);var P=function(ve){if(ve===T&&K)return K;if(!f&&ve&&ve in M)return M[ve];switch(ve){case b:return function(){return new w(this,ve)};case p:return function(){return new w(this,ve)};case y:return function(){return new w(this,ve)}}return function(){return new w(this)}},x=m+" Iterator",V=!1,M=S.prototype,U=M[c]||M["@@iterator"]||T&&M[T],K=!f&&U||P(T),oe=m==="Array"&&M.entries||U,L,ae,he;if(oe&&(L=s(oe.call(new S)),L!==Object.prototype&&L.next&&(!t&&s(L)!==v&&(a?a(L,v):i(L[c])||I(L,c,E)),g(L,x,!0,!0),t&&(l[x]=E))),u&&T===p&&U&&U.name!==p&&(!t&&h?A(M,"name",p):(V=!0,K=function(){return e(U,this)})),T)if(ae={values:P(p),keys:R?K:P(b),entries:P(y)},O)for(he in ae)(f||V||!(he in M))&&I(M,he,ae[he]);else n({target:m,proto:!0,forced:f||V},ae);return(!t||O)&&M[c]!==K&&I(M,c,K,{name:T}),l[m]=K,ae},tw}var rw,DU;function IR(){return DU||(DU=1,rw=function(n,e){return{value:n,done:e}}),rw}var iw,NU;function Aa(){if(NU)return iw;NU=1;var n=Hr(),e=gR(),t=ga(),r=Po(),i=Sr().f,o=AR(),s=IR(),a=ra(),g=ot(),A="Array Iterator",I=r.set,C=r.getterFor(A);iw=o(Array,"Array",function(d,u){I(this,{type:A,target:n(d),index:0,kind:u})},function(){var d=C(this),u=d.target,h=d.index++;if(!u||h>=u.length)return d.target=null,s(void 0,!0);switch(d.kind){case"keys":return s(h,!1);case"values":return s(u[h],!1)}return s([h,u[h]],!1)},"values");var l=t.Arguments=t.Array;if(e("keys"),e("values"),e("entries"),!a&&g&&l.name!=="values")try{i(l,"name",{value:"values"})}catch{}return iw}var nw,MU;function Gve(){return MU||(MU=1,nw={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}),nw}var qU;function Ia(){if(qU)return mU;qU=1,Aa();var n=Gve(),e=Ge(),t=Ro(),r=ga();for(var i in n)t(e[i],i),r[i]=r.Array;return mU}var ow,FU;function mee(){if(FU)return ow;FU=1;var n=qve();return Ia(),ow=n,ow}var sw,kU;function Wve(){return kU||(kU=1,sw=mee()),sw}var Vve=Wve(),Zve=se(Vve),BU={},zU;function Hve(){if(zU)return BU;zU=1;var n=te(),e=To(),t=aee(),r=Tt(),i=ZI(),o=Bi(),s=Hr(),a=UI(),g=ht(),A=Xg(),I=sa(),C=A("slice"),l=g("species"),d=Array,u=Math.max;return n({target:"Array",proto:!0,forced:!C},{slice:function(v,f){var c=s(this),b=o(c),p=i(v,b),y=i(f===void 0?b:f,b),E,S,m;if(e(c)&&(E=c.constructor,t(E)&&(E===d||e(E.prototype))?E=void 0:r(E)&&(E=E[l],E===null&&(E=void 0)),E===d||E===void 0))return I(c,p,y);for(S=new(E===void 0?d:E)(u(y-p,0)),m=0;p<y;p++,m++)p in c&&a(S,m,c[p]);return S.length=m,S}}),BU}var aw,jU;function Uve(){if(jU)return aw;jU=1,Hve();var n=Ft();return aw=n("Array","slice"),aw}var gw,LU;function Kve(){if(LU)return gw;LU=1;var n=ut(),e=Uve(),t=Array.prototype;return gw=function(r){var i=r.slice;return r===t||n(t,r)&&i===t.slice?e:i},gw}var Aw,GU;function Yve(){if(GU)return Aw;GU=1;var n=Kve();return Aw=n,Aw}var Iw,WU;function Xve(){return WU||(WU=1,Iw=Yve()),Iw}var Qve=Xve(),Kr=se(Qve),Cw,VU;function Jve(){if(VU)return Cw;VU=1;var n=Cr(),e=ye(),t=YI(),r=HI(),i=ui(),o=e([].concat);return Cw=n("Reflect","ownKeys")||function(a){var g=t.f(i(a)),A=r.f;return A?o(g,A(a)):g},Cw}var ZU={},HU;function eme(){if(HU)return ZU;HU=1;var n=te(),e=To();return n({target:"Array",stat:!0},{isArray:e}),ZU}var lw,UU;function tme(){if(UU)return lw;UU=1,eme();var n=Re();return lw=n.Array.isArray,lw}var dw,KU;function rme(){if(KU)return dw;KU=1;var n=tme();return dw=n,dw}var uw,YU;function ime(){return YU||(YU=1,uw=rme()),uw}var nme=ime(),Qe=se(nme),XU={},QU;function ome(){if(QU)return XU;QU=1;var n=te(),e=Sn().map,t=Xg(),r=t("map");return n({target:"Array",proto:!0,forced:!r},{map:function(o){return e(this,o,arguments.length>1?arguments[1]:void 0)}}),XU}var hw,JU;function sme(){if(JU)return hw;JU=1,ome();var n=Ft();return hw=n("Array","map"),hw}var cw,eK;function ame(){if(eK)return cw;eK=1;var n=ut(),e=sme(),t=Array.prototype;return cw=function(r){var i=r.map;return r===t||n(t,r)&&i===t.map?e:i},cw}var fw,tK;function gme(){if(tK)return fw;tK=1;var n=ame();return fw=n,fw}var pw,rK;function Ame(){return rK||(rK=1,pw=gme()),pw}var Ime=Ame(),bs=se(Ime),iK={},nK;function Cme(){if(nK)return iK;nK=1;var n=te(),e=lr(),t=Yg(),r=pe(),i=r(function(){t(1)});return n({target:"Object",stat:!0,forced:i},{keys:function(s){return t(e(s))}}),iK}var vw,oK;function lme(){if(oK)return vw;oK=1,Cme();var n=Re();return vw=n.Object.keys,vw}var mw,sK;function dme(){if(sK)return mw;sK=1;var n=lme();return mw=n,mw}var yw,aK;function ume(){return aK||(aK=1,yw=dme()),yw}var hme=ume(),Xe=se(hme),gK={},AK;function cme(){if(AK)return gK;AK=1;var n=te(),e=ye(),t=Date,r=e(t.prototype.getTime);return n({target:"Date",stat:!0},{now:function(){return r(new t)}}),gK}var bw,IK;function fme(){if(IK)return bw;IK=1,cme();var n=Re();return bw=n.Date.now,bw}var ww,CK;function pme(){if(CK)return ww;CK=1;var n=fme();return ww=n,ww}var Ew,lK;function vme(){return lK||(lK=1,Ew=pme()),Ew}var mme=vme(),XA=se(mme),dK={},Sw,uK;function Ca(){if(uK)return Sw;uK=1;var n=pe();return Sw=function(e,t){var r=[][e];return!!r&&n(function(){r.call(null,t||function(){return 1},1)})},Sw}var _w,hK;function yme(){if(hK)return _w;hK=1;var n=Sn().forEach,e=Ca(),t=e("forEach");return _w=t?[].forEach:function(i){return n(this,i,arguments.length>1?arguments[1]:void 0)},_w}var cK;function bme(){if(cK)return dK;cK=1;var n=te(),e=yme();return n({target:"Array",proto:!0,forced:[].forEach!==e},{forEach:e}),dK}var Ow,fK;function wme(){if(fK)return Ow;fK=1,bme();var n=Ft();return Ow=n("Array","forEach"),Ow}var Tw,pK;function Eme(){if(pK)return Tw;pK=1;var n=wme();return Tw=n,Tw}var Rw,vK;function Sme(){if(vK)return Rw;vK=1;var n=aa(),e=qt(),t=ut(),r=Eme(),i=Array.prototype,o={DOMTokenList:!0,NodeList:!0};return Rw=function(s){var a=s.forEach;return s===i||t(i,s)&&a===i.forEach||e(o,n(s))?r:a},Rw}var Pw,mK;function _me(){return mK||(mK=1,Pw=Sme()),Pw}var Ome=_me(),xe=se(Ome),yK={},bK;function Tme(){if(bK)return yK;bK=1;var n=te(),e=ye(),t=To(),r=e([].reverse),i=[1,2];return n({target:"Array",proto:!0,forced:String(i)===String(i.reverse())},{reverse:function(){return t(this)&&(this.length=this.length),r(this)}}),yK}var xw,wK;function Rme(){if(wK)return xw;wK=1,Tme();var n=Ft();return xw=n("Array","reverse"),xw}var $w,EK;function Pme(){if(EK)return $w;EK=1;var n=ut(),e=Rme(),t=Array.prototype;return $w=function(r){var i=r.reverse;return r===t||n(t,r)&&i===t.reverse?e:i},$w}var Dw,SK;function xme(){if(SK)return Dw;SK=1;var n=Pme();return Dw=n,Dw}var Nw,_K;function $me(){return _K||(_K=1,Nw=xme()),Nw}var Dme=$me(),Vn=se(Dme),OK={},Mw,TK;function Nme(){if(TK)return Mw;TK=1;var n=ot(),e=To(),t=TypeError,r=Object.getOwnPropertyDescriptor,i=n&&!(function(){if(this!==void 0)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(o){return o instanceof TypeError}})();return Mw=i?function(o,s){if(e(o)&&!r(o,"length").writable)throw new t("Cannot set read only .length");return o.length=s}:function(o,s){return o.length=s},Mw}var qw,RK;function yee(){if(RK)return qw;RK=1;var n=ta(),e=TypeError;return qw=function(t,r){if(!delete t[r])throw new e("Cannot delete property "+n(r)+" of "+n(t))},qw}var PK;function Mme(){if(PK)return OK;PK=1;var n=te(),e=lr(),t=ZI(),r=oa(),i=Bi(),o=Nme(),s=see(),a=nR(),g=UI(),A=yee(),I=Xg(),C=I("splice"),l=Math.max,d=Math.min;return n({target:"Array",proto:!0,forced:!C},{splice:function(h,v){var f=e(this),c=i(f),b=t(h,c),p=arguments.length,y,E,S,m,w,_;for(p===0?y=E=0:p===1?(y=0,E=c-b):(y=p-2,E=d(l(r(v),0),c-b)),s(c+y-E),S=a(f,E),m=0;m<E;m++)w=b+m,w in f&&g(S,m,f[w]);if(S.length=E,y<E){for(m=b;m<c-E;m++)w=m+E,_=m+y,w in f?f[_]=f[w]:A(f,_);for(m=c;m>c-E+y;m--)A(f,m-1)}else if(y>E)for(m=c-E;m>b;m--)w=m+E-1,_=m+y-1,w in f?f[_]=f[w]:A(f,_);for(m=0;m<y;m++)f[m+b]=arguments[m+2];return o(f,c-E+y),S}}),OK}var Fw,xK;function qme(){if(xK)return Fw;xK=1,Mme();var n=Ft();return Fw=n("Array","splice"),Fw}var kw,$K;function Fme(){if($K)return kw;$K=1;var n=ut(),e=qme(),t=Array.prototype;return kw=function(r){var i=r.splice;return r===t||n(t,r)&&i===t.splice?e:i},kw}var Bw,DK;function kme(){if(DK)return Bw;DK=1;var n=Fme();return Bw=n,Bw}var zw,NK;function Bme(){return NK||(NK=1,zw=kme()),zw}var zme=Bme(),Ei=se(zme),MK={},qK;function jme(){if(qK)return MK;qK=1;var n=te(),e=eR().includes,t=pe(),r=gR(),i=t(function(){return!Array(1).includes()});return n({target:"Array",proto:!0,forced:i},{includes:function(s){return e(this,s,arguments.length>1?arguments[1]:void 0)}}),r("includes"),MK}var jw,FK;function Lme(){if(FK)return jw;FK=1,jme();var n=Ft();return jw=n("Array","includes"),jw}var kK={},Lw,BK;function Gme(){if(BK)return Lw;BK=1;var n=Tt(),e=di(),t=ht(),r=t("match");return Lw=function(i){var o;return n(i)&&((o=i[r])!==void 0?!!o:e(i)==="RegExp")},Lw}var Gw,zK;function Wme(){if(zK)return Gw;zK=1;var n=Gme(),e=TypeError;return Gw=function(t){if(n(t))throw new e("The method doesn't accept regular expressions");return t},Gw}var Ww,jK;function Vme(){if(jK)return Ww;jK=1;var n=ht(),e=n("match");return Ww=function(t){var r=/./;try{"/./"[t](r)}catch{try{return r[e]=!1,"/./"[t](r)}catch{}}return!1},Ww}var LK;function Zme(){if(LK)return kK;LK=1;var n=te(),e=ye(),t=Wme(),r=Fi(),i=_r(),o=Vme(),s=e("".indexOf);return n({target:"String",proto:!0,forced:!o("includes")},{includes:function(g){return!!~s(i(r(this)),i(t(g)),arguments.length>1?arguments[1]:void 0)}}),kK}var Vw,GK;function Hme(){if(GK)return Vw;GK=1,Zme();var n=Ft();return Vw=n("String","includes"),Vw}var Zw,WK;function Ume(){if(WK)return Zw;WK=1;var n=ut(),e=Lme(),t=Hme(),r=Array.prototype,i=String.prototype;return Zw=function(o){var s=o.includes;return o===r||n(r,o)&&s===r.includes?e:typeof o=="string"||o===i||n(i,o)&&s===i.includes?t:s},Zw}var Hw,VK;function Kme(){if(VK)return Hw;VK=1;var n=Ume();return Hw=n,Hw}var Uw,ZK;function Yme(){return ZK||(ZK=1,Uw=Kme()),Uw}var Xme=Yme(),An=se(Xme),HK={},UK;function Qme(){if(UK)return HK;UK=1;var n=te(),e=pe(),t=lr(),r=QI(),i=pee(),o=e(function(){r(1)});return n({target:"Object",stat:!0,forced:o,sham:!i},{getPrototypeOf:function(a){return r(t(a))}}),HK}var Kw,KK;function Jme(){if(KK)return Kw;KK=1,Qme();var n=Re();return Kw=n.Object.getPrototypeOf,Kw}var Yw,YK;function eye(){if(YK)return Yw;YK=1;var n=Jme();return Yw=n,Yw}var Xw,XK;function tye(){return XK||(XK=1,Xw=eye()),Xw}var rye=tye(),QK=se(rye),Qw,JK;function iye(){if(JK)return Qw;JK=1,gee();var n=Ft();return Qw=n("Array","concat"),Qw}var Jw,eY;function nye(){if(eY)return Jw;eY=1;var n=ut(),e=iye(),t=Array.prototype;return Jw=function(r){var i=r.concat;return r===t||n(t,r)&&i===t.concat?e:i},Jw}var eE,tY;function oye(){if(tY)return eE;tY=1;var n=nye();return eE=n,eE}var tE,rY;function sye(){return rY||(rY=1,tE=oye()),tE}var aye=sye(),gye=se(aye),iY={},nY;function Aye(){if(nY)return iY;nY=1;var n=te(),e=Sn().filter,t=Xg(),r=t("filter");return n({target:"Array",proto:!0,forced:!r},{filter:function(o){return e(this,o,arguments.length>1?arguments[1]:void 0)}}),iY}var rE,oY;function Iye(){if(oY)return rE;oY=1,Aye();var n=Ft();return rE=n("Array","filter"),rE}var iE,sY;function Cye(){if(sY)return iE;sY=1;var n=ut(),e=Iye(),t=Array.prototype;return iE=function(r){var i=r.filter;return r===t||n(t,r)&&i===t.filter?e:i},iE}var nE,aY;function lye(){if(aY)return nE;aY=1;var n=Cye();return nE=n,nE}var oE,gY;function dye(){return gY||(gY=1,oE=lye()),oE}var uye=dye(),Qt=se(uye),AY={},sE,IY;function hye(){if(IY)return sE;IY=1;var n=ot(),e=pe(),t=ye(),r=QI(),i=Yg(),o=Hr(),s=jI().f,a=t(s),g=t([].push),A=n&&e(function(){var C=Object.create(null);return C[2]=2,!a(C,2)}),I=function(C){return function(l){for(var d=o(l),u=i(d),h=A&&r(d)===null,v=u.length,f=0,c=[],b;v>f;)b=u[f++],(!n||(h?b in d:a(d,b)))&&g(c,C?[b,d[b]]:d[b]);return c}};return sE={entries:I(!0),values:I(!1)},sE}var CY;function cye(){if(CY)return AY;CY=1;var n=te(),e=hye().values;return n({target:"Object",stat:!0},{values:function(r){return e(r)}}),AY}var aE,lY;function fye(){if(lY)return aE;lY=1,cye();var n=Re();return aE=n.Object.values,aE}var gE,dY;function pye(){if(dY)return gE;dY=1;var n=fye();return gE=n,gE}var AE,uY;function vye(){return uY||(uY=1,AE=pye()),AE}var mye=vye(),yye=se(mye),hY={},IE,cY;function CR(){return cY||(cY=1,IE=`
|
||
\v\f\r \u2028\u2029\uFEFF`),IE}var CE,fY;function bee(){if(fY)return CE;fY=1;var n=ye(),e=Fi(),t=_r(),r=CR(),i=n("".replace),o=RegExp("^["+r+"]+"),s=RegExp("(^|[^"+r+"])["+r+"]+$"),a=function(g){return function(A){var I=t(e(A));return g&1&&(I=i(I,o,"")),g&2&&(I=i(I,s,"$1")),I}};return CE={start:a(1),end:a(2),trim:a(3)},CE}var lE,pY;function bye(){if(pY)return lE;pY=1;var n=Ge(),e=pe(),t=ye(),r=_r(),i=bee().trim,o=CR(),s=n.parseInt,a=n.Symbol,g=a&&a.iterator,A=/^[+-]?0x/i,I=t(A.exec),C=s(o+"08")!==8||s(o+"0x16")!==22||g&&!e(function(){s(Object(g))});return lE=C?function(d,u){var h=i(r(d));return s(h,u>>>0||(I(A,h)?16:10))}:s,lE}var vY;function wye(){if(vY)return hY;vY=1;var n=te(),e=bye();return n({global:!0,forced:parseInt!==e},{parseInt:e}),hY}var dE,mY;function Eye(){if(mY)return dE;mY=1,wye();var n=Re();return dE=n.parseInt,dE}var uE,yY;function Sye(){if(yY)return uE;yY=1;var n=Eye();return uE=n,uE}var hE,bY;function _ye(){return bY||(bY=1,hE=Sye()),hE}var Oye=_ye(),Br=se(Oye),wY={},EY;function Tye(){if(EY)return wY;EY=1;var n=te(),e=YT(),t=eR().indexOf,r=Ca(),i=e([].indexOf),o=!!i&&1/i([1],1,-0)<0,s=o||!r("indexOf");return n({target:"Array",proto:!0,forced:s},{indexOf:function(g){var A=arguments.length>1?arguments[1]:void 0;return o?i(this,g,A)||0:t(this,g,A)}}),wY}var cE,SY;function Rye(){if(SY)return cE;SY=1,Tye();var n=Ft();return cE=n("Array","indexOf"),cE}var fE,_Y;function Pye(){if(_Y)return fE;_Y=1;var n=ut(),e=Rye(),t=Array.prototype;return fE=function(r){var i=r.indexOf;return r===t||n(t,r)&&i===t.indexOf?e:i},fE}var pE,OY;function xye(){if(OY)return pE;OY=1;var n=Pye();return pE=n,pE}var vE,TY;function $ye(){return TY||(TY=1,vE=xye()),vE}var Dye=$ye(),Oe=se(Dye),RY={},PY;function Nye(){if(PY)return RY;PY=1;var n=te(),e=ot(),t=Qg();return n({target:"Object",stat:!0,sham:!e},{create:t}),RY}var mE,xY;function Mye(){if(xY)return mE;xY=1,Nye();var n=Re(),e=n.Object;return mE=function(r,i){return e.create(r,i)},mE}var yE,$Y;function qye(){if($Y)return yE;$Y=1;var n=Mye();return yE=n,yE}var bE,DY;function Fye(){return DY||(DY=1,bE=qye()),bE}var kye=Fye(),Zn=se(kye),NY={},wE,MY;function Bye(){if(MY)return wE;MY=1;var n=oa(),e=_r(),t=Fi(),r=RangeError;return wE=function(o){var s=e(t(this)),a="",g=n(o);if(g<0||g===1/0)throw new r("Wrong number of repetitions");for(;g>0;(g>>>=1)&&(s+=s))g&1&&(a+=s);return a},wE}var EE,qY;function zye(){if(qY)return EE;qY=1;var n=ye(),e=eee(),t=_r(),r=Bye(),i=Fi(),o=n(r),s=n("".slice),a=Math.ceil,g=function(A){return function(I,C,l){var d=t(i(I)),u=e(C),h=d.length,v=l===void 0?" ":t(l),f,c;return u<=h||v===""?d:(f=u-h,c=o(v,a(f/v.length)),c.length>f&&(c=s(c,0,f)),A?d+c:c+d)}};return EE={start:g(!1),end:g(!0)},EE}var SE,FY;function jye(){if(FY)return SE;FY=1;var n=ye(),e=pe(),t=zye().start,r=RangeError,i=isFinite,o=Math.abs,s=Date.prototype,a=s.toISOString,g=n(s.getTime),A=n(s.getUTCDate),I=n(s.getUTCFullYear),C=n(s.getUTCHours),l=n(s.getUTCMilliseconds),d=n(s.getUTCMinutes),u=n(s.getUTCMonth),h=n(s.getUTCSeconds);return SE=e(function(){return a.call(new Date(-5e13-1))!=="0385-07-25T07:06:39.999Z"})||!e(function(){a.call(new Date(NaN))})?function(){if(!i(g(this)))throw new r("Invalid time value");var f=this,c=I(f),b=l(f),p=c<0?"-":c>9999?"+":"";return p+t(o(c),p?6:4,0)+"-"+t(u(f)+1,2,0)+"-"+t(A(f),2,0)+"T"+t(C(f),2,0)+":"+t(d(f),2,0)+":"+t(h(f),2,0)+"."+t(b,3,0)+"Z"}:a,SE}var kY;function Lye(){if(kY)return NY;kY=1;var n=te(),e=or(),t=lr(),r=YJ(),i=jye(),o=di(),s=pe(),a=s(function(){return new Date(NaN).toJSON()!==null||e(Date.prototype.toJSON,{toISOString:function(){return 1}})!==1});return n({target:"Date",proto:!0,forced:a},{toJSON:function(A){var I=t(this),C=r(I,"number");return typeof C=="number"&&!isFinite(C)?null:!("toISOString"in I)&&o(I)==="Date"?e(i,I):I.toISOString()}}),NY}var _E,BY;function Gye(){if(BY)return _E;BY=1,Lye(),lee();var n=Re(),e=zI();return n.JSON||(n.JSON={stringify:JSON.stringify}),_E=function(r,i,o){return e(n.JSON.stringify,null,arguments)},_E}var OE,zY;function Wye(){if(zY)return OE;zY=1;var n=Gye();return OE=n,OE}var TE,jY;function Vye(){return jY||(jY=1,TE=Wye()),TE}var Zye=Vye(),eA=se(Zye),LY={},GY={},RE,WY;function wee(){if(WY)return RE;WY=1;var n=Ge(),e=Js(),t=di(),r=function(i){return e.slice(0,i.length)===i};return RE=(function(){return r("Bun/")?"BUN":r("Cloudflare-Workers")?"CLOUDFLARE":r("Deno/")?"DENO":r("Node.js/")?"NODE":n.Bun&&typeof Bun.version=="string"?"BUN":n.Deno&&typeof Deno.version=="object"?"DENO":t(n.process)==="process"?"NODE":n.window&&n.document?"BROWSER":"REST"})(),RE}var PE,VY;function Hye(){if(VY)return PE;VY=1;var n=TypeError;return PE=function(e,t){if(e<t)throw new n("Not enough arguments");return e},PE}var xE,ZY;function Eee(){if(ZY)return xE;ZY=1;var n=Ge(),e=zI(),t=Ot(),r=wee(),i=Js(),o=sa(),s=Hye(),a=n.Function,g=/MSIE .\./.test(i)||r==="BUN"&&(function(){var A=n.Bun.version.split(".");return A.length<3||A[0]==="0"&&(A[1]<3||A[1]==="3"&&A[2]==="0")})();return xE=function(A,I){var C=I?2:1;return g?function(l,d){var u=s(arguments.length,1)>C,h=t(l)?l:a(l),v=u?o(arguments,C):[],f=u?function(){e(h,this,v)}:h;return I?A(f,d):A(f)}:A},xE}var HY;function Uye(){if(HY)return GY;HY=1;var n=te(),e=Ge(),t=Eee(),r=t(e.setInterval,!0);return n({global:!0,bind:!0,forced:e.setInterval!==r},{setInterval:r}),GY}var UY={},KY;function Kye(){if(KY)return UY;KY=1;var n=te(),e=Ge(),t=Eee(),r=t(e.setTimeout,!0);return n({global:!0,bind:!0,forced:e.setTimeout!==r},{setTimeout:r}),UY}var YY;function See(){return YY||(YY=1,Uye(),Kye()),LY}var $E,XY;function Yye(){if(XY)return $E;XY=1,See();var n=Re();return $E=n.setTimeout,$E}var DE,QY;function Xye(){return QY||(QY=1,DE=Yye()),DE}var Qye=Xye(),Si=se(Qye),JY={},NE,e4;function Jye(){if(e4)return NE;e4=1;var n=lr(),e=ZI(),t=Bi();return NE=function(i){for(var o=n(this),s=t(o),a=arguments.length,g=e(a>1?arguments[1]:void 0,s),A=a>2?arguments[2]:void 0,I=A===void 0?s:e(A,s);I>g;)o[g++]=i;return o},NE}var t4;function ebe(){if(t4)return JY;t4=1;var n=te(),e=Jye(),t=gR();return n({target:"Array",proto:!0},{fill:e}),t("fill"),JY}var ME,r4;function tbe(){if(r4)return ME;r4=1,ebe();var n=Ft();return ME=n("Array","fill"),ME}var qE,i4;function rbe(){if(i4)return qE;i4=1;var n=ut(),e=tbe(),t=Array.prototype;return qE=function(r){var i=r.fill;return r===t||n(t,r)&&i===t.fill?e:i},qE}var FE,n4;function ibe(){if(n4)return FE;n4=1;var n=rbe();return FE=n,FE}var kE,o4;function nbe(){return o4||(o4=1,kE=ibe()),kE}var obe=nbe(),tA=se(obe);/*! 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 Wr(){return Wr=Object.assign||function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Wr.apply(this,arguments)}function Or(n,e){n.prototype=Object.create(e.prototype),n.prototype.constructor=n,n.__proto__=e}function vA(n){if(n===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return n}var TO;typeof Object.assign!="function"?TO=function(e){if(e==null)throw new TypeError("Cannot convert undefined or null to object");for(var t=Object(e),r=1;r<arguments.length;r++){var i=arguments[r];if(i!=null)for(var o in i)i.hasOwnProperty(o)&&(t[o]=i[o])}return t}:TO=Object.assign;var io=TO,s4=["","webkit","Moz","MS","ms","o"],sbe=typeof document>"u"?{style:{}}:document.createElement("div"),abe="function",Qo=Math.round,no=Math.abs,lR=Date.now;function JI(n,e){for(var t,r,i=e[0].toUpperCase()+e.slice(1),o=0;o<s4.length;){if(t=s4[o],r=t?t+i:e,r in n)return r;o++}}var _i;typeof window>"u"?_i={}:_i=window;var _ee=JI(sbe.style,"touchAction"),Oee=_ee!==void 0;function gbe(){if(!Oee)return!1;var n={},e=_i.CSS&&_i.CSS.supports;return["auto","manipulation","pan-y","pan-x","pan-x pan-y","none"].forEach(function(t){return n[t]=e?_i.CSS.supports("touch-action",t):!0}),n}var Tee="compute",Ree="auto",RO="manipulation",Hn="none",tg="pan-x",rg="pan-y",mA=gbe(),Abe=/mobile|tablet|ip(ad|hone|od)|android/i,Pee="ontouchstart"in _i,Ibe=JI(_i,"PointerEvent")!==void 0,Cbe=Pee&&Abe.test(navigator.userAgent),rA="touch",lbe="pen",dR="mouse",dbe="kinect",ube=25,Zt=1,xo=2,It=4,tr=8,QA=1,iA=2,nA=4,oA=8,ws=16,si=iA|nA,Un=oA|ws,xee=si|Un,$ee=["x","y"],JA=["clientX","clientY"];function Oi(n,e,t){var r;if(n)if(n.forEach)n.forEach(e,t);else if(n.length!==void 0)for(r=0;r<n.length;)e.call(t,n[r],r,n),r++;else for(r in n)n.hasOwnProperty(r)&&e.call(t,n[r],r,n)}function eC(n,e){return typeof n===abe?n.apply(e&&e[0]||void 0,e):n}function Fn(n,e){return n.indexOf(e)>-1}function hbe(n){if(Fn(n,Hn))return Hn;var e=Fn(n,tg),t=Fn(n,rg);return e&&t?Hn:e||t?e?tg:rg:Fn(n,RO)?RO:Ree}var Dee=(function(){function n(t,r){this.manager=t,this.set(r)}var e=n.prototype;return e.set=function(r){r===Tee&&(r=this.compute()),Oee&&this.manager.element.style&&mA[r]&&(this.manager.element.style[_ee]=r),this.actions=r.toLowerCase().trim()},e.update=function(){this.set(this.manager.options.touchAction)},e.compute=function(){var r=[];return Oi(this.manager.recognizers,function(i){eC(i.options.enable,[i])&&(r=r.concat(i.getTouchAction()))}),hbe(r.join(" "))},e.preventDefaults=function(r){var i=r.srcEvent,o=r.offsetDirection;if(this.manager.session.prevented){i.preventDefault();return}var s=this.actions,a=Fn(s,Hn)&&!mA[Hn],g=Fn(s,rg)&&!mA[rg],A=Fn(s,tg)&&!mA[tg];if(a){var I=r.pointers.length===1,C=r.distance<2,l=r.deltaTime<250;if(I&&C&&l)return}if(!(A&&g)&&(a||g&&o&si||A&&o&Un))return this.preventSrc(i)},e.preventSrc=function(r){this.manager.session.prevented=!0,r.preventDefault()},n})();function uR(n,e){for(;n;){if(n===e)return!0;n=n.parentNode}return!1}function Nee(n){var e=n.length;if(e===1)return{x:Qo(n[0].clientX),y:Qo(n[0].clientY)};for(var t=0,r=0,i=0;i<e;)t+=n[i].clientX,r+=n[i].clientY,i++;return{x:Qo(t/e),y:Qo(r/e)}}function a4(n){for(var e=[],t=0;t<n.pointers.length;)e[t]={clientX:Qo(n.pointers[t].clientX),clientY:Qo(n.pointers[t].clientY)},t++;return{timeStamp:lR(),pointers:e,center:Nee(e),deltaX:n.deltaX,deltaY:n.deltaY}}function eI(n,e,t){t||(t=$ee);var r=e[t[0]]-n[t[0]],i=e[t[1]]-n[t[1]];return Math.sqrt(r*r+i*i)}function PO(n,e,t){t||(t=$ee);var r=e[t[0]]-n[t[0]],i=e[t[1]]-n[t[1]];return Math.atan2(i,r)*180/Math.PI}function Mee(n,e){return n===e?QA:no(n)>=no(e)?n<0?iA:nA:e<0?oA:ws}function cbe(n,e){var t=e.center,r=n.offsetDelta||{},i=n.prevDelta||{},o=n.prevInput||{};(e.eventType===Zt||o.eventType===It)&&(i=n.prevDelta={x:o.deltaX||0,y:o.deltaY||0},r=n.offsetDelta={x:t.x,y:t.y}),e.deltaX=i.x+(t.x-r.x),e.deltaY=i.y+(t.y-r.y)}function qee(n,e,t){return{x:e/n||0,y:t/n||0}}function fbe(n,e){return eI(e[0],e[1],JA)/eI(n[0],n[1],JA)}function pbe(n,e){return PO(e[1],e[0],JA)+PO(n[1],n[0],JA)}function vbe(n,e){var t=n.lastInterval||e,r=e.timeStamp-t.timeStamp,i,o,s,a;if(e.eventType!==tr&&(r>ube||t.velocity===void 0)){var g=e.deltaX-t.deltaX,A=e.deltaY-t.deltaY,I=qee(r,g,A);o=I.x,s=I.y,i=no(I.x)>no(I.y)?I.x:I.y,a=Mee(g,A),n.lastInterval=e}else i=t.velocity,o=t.velocityX,s=t.velocityY,a=t.direction;e.velocity=i,e.velocityX=o,e.velocityY=s,e.direction=a}function mbe(n,e){var t=n.session,r=e.pointers,i=r.length;t.firstInput||(t.firstInput=a4(e)),i>1&&!t.firstMultiple?t.firstMultiple=a4(e):i===1&&(t.firstMultiple=!1);var o=t.firstInput,s=t.firstMultiple,a=s?s.center:o.center,g=e.center=Nee(r);e.timeStamp=lR(),e.deltaTime=e.timeStamp-o.timeStamp,e.angle=PO(a,g),e.distance=eI(a,g),cbe(t,e),e.offsetDirection=Mee(e.deltaX,e.deltaY);var A=qee(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=A.x,e.overallVelocityY=A.y,e.overallVelocity=no(A.x)>no(A.y)?A.x:A.y,e.scale=s?fbe(s.pointers,r):1,e.rotation=s?pbe(s.pointers,r):0,e.maxPointers=t.prevInput?e.pointers.length>t.prevInput.maxPointers?e.pointers.length:t.prevInput.maxPointers:e.pointers.length,vbe(t,e);var I=n.element,C=e.srcEvent,l;C.composedPath?l=C.composedPath()[0]:C.path?l=C.path[0]:l=C.target,uR(l,I)&&(I=l),e.target=I}function ybe(n,e,t){var r=t.pointers.length,i=t.changedPointers.length,o=e&Zt&&r-i===0,s=e&(It|tr)&&r-i===0;t.isFirst=!!o,t.isFinal=!!s,o&&(n.session={}),t.eventType=e,mbe(n,t),n.emit("hammer.input",t),n.recognize(t),n.session.prevInput=t}function ig(n){return n.trim().split(/\s+/g)}function ka(n,e,t){Oi(ig(e),function(r){n.addEventListener(r,t,!1)})}function Ba(n,e,t){Oi(ig(e),function(r){n.removeEventListener(r,t,!1)})}function g4(n){var e=n.ownerDocument||n;return e.defaultView||e.parentWindow||window}var la=(function(){function n(t,r){var i=this;this.manager=t,this.callback=r,this.element=t.element,this.target=t.options.inputTarget,this.domHandler=function(o){eC(t.options.enable,[t])&&i.handler(o)},this.init()}var e=n.prototype;return e.handler=function(){},e.init=function(){this.evEl&&ka(this.element,this.evEl,this.domHandler),this.evTarget&&ka(this.target,this.evTarget,this.domHandler),this.evWin&&ka(g4(this.element),this.evWin,this.domHandler)},e.destroy=function(){this.evEl&&Ba(this.element,this.evEl,this.domHandler),this.evTarget&&Ba(this.target,this.evTarget,this.domHandler),this.evWin&&Ba(g4(this.element),this.evWin,this.domHandler)},n})();function oo(n,e,t){if(n.indexOf&&!t)return n.indexOf(e);for(var r=0;r<n.length;){if(t&&n[r][t]==e||!t&&n[r]===e)return r;r++}return-1}var bbe={pointerdown:Zt,pointermove:xo,pointerup:It,pointercancel:tr,pointerout:tr},wbe={2:rA,3:lbe,4:dR,5:dbe},Fee="pointerdown",kee="pointermove pointerup pointercancel";_i.MSPointerEvent&&!_i.PointerEvent&&(Fee="MSPointerDown",kee="MSPointerMove MSPointerUp MSPointerCancel");var Bee=(function(n){Or(e,n);function e(){var r,i=e.prototype;return i.evEl=Fee,i.evWin=kee,r=n.apply(this,arguments)||this,r.store=r.manager.session.pointerEvents=[],r}var t=e.prototype;return t.handler=function(i){var o=this.store,s=!1,a=i.type.toLowerCase().replace("ms",""),g=bbe[a],A=wbe[i.pointerType]||i.pointerType,I=A===rA,C=oo(o,i.pointerId,"pointerId");g&Zt&&(i.button===0||I)?C<0&&(o.push(i),C=o.length-1):g&(It|tr)&&(s=!0),!(C<0)&&(o[C]=i,this.callback(this.manager,g,{pointers:o,changedPointers:[i],pointerType:A,srcEvent:i}),s&&o.splice(C,1))},e})(la);function ng(n){return Array.prototype.slice.call(n,0)}function hR(n,e,t){for(var r=[],i=[],o=0;o<n.length;){var s=e?n[o][e]:n[o];oo(i,s)<0&&r.push(n[o]),i[o]=s,o++}return t&&(e?r=r.sort(function(a,g){return a[e]>g[e]}):r=r.sort()),r}var Ebe={touchstart:Zt,touchmove:xo,touchend:It,touchcancel:tr},Sbe="touchstart touchmove touchend touchcancel",cR=(function(n){Or(e,n);function e(){var r;return e.prototype.evTarget=Sbe,r=n.apply(this,arguments)||this,r.targetIds={},r}var t=e.prototype;return t.handler=function(i){var o=Ebe[i.type],s=_be.call(this,i,o);s&&this.callback(this.manager,o,{pointers:s[0],changedPointers:s[1],pointerType:rA,srcEvent:i})},e})(la);function _be(n,e){var t=ng(n.touches),r=this.targetIds;if(e&(Zt|xo)&&t.length===1)return r[t[0].identifier]=!0,[t,t];var i,o,s=ng(n.changedTouches),a=[],g=this.target;if(o=t.filter(function(A){return uR(A.target,g)}),e===Zt)for(i=0;i<o.length;)r[o[i].identifier]=!0,i++;for(i=0;i<s.length;)r[s[i].identifier]&&a.push(s[i]),e&(It|tr)&&delete r[s[i].identifier],i++;if(a.length)return[hR(o.concat(a),"identifier",!0),a]}var Obe={mousedown:Zt,mousemove:xo,mouseup:It},Tbe="mousedown",Rbe="mousemove mouseup",fR=(function(n){Or(e,n);function e(){var r,i=e.prototype;return i.evEl=Tbe,i.evWin=Rbe,r=n.apply(this,arguments)||this,r.pressed=!1,r}var t=e.prototype;return t.handler=function(i){var o=Obe[i.type];o&Zt&&i.button===0&&(this.pressed=!0),o&xo&&i.which!==1&&(o=It),this.pressed&&(o&It&&(this.pressed=!1),this.callback(this.manager,o,{pointers:[i],changedPointers:[i],pointerType:dR,srcEvent:i}))},e})(la),Pbe=2500,A4=25;function I4(n){var e=n.changedPointers,t=e[0];if(t.identifier===this.primaryTouch){var r={x:t.clientX,y:t.clientY},i=this.lastTouches;this.lastTouches.push(r);var o=function(){var a=i.indexOf(r);a>-1&&i.splice(a,1)};setTimeout(o,Pbe)}}function xbe(n,e){n&Zt?(this.primaryTouch=e.changedPointers[0].identifier,I4.call(this,e)):n&(It|tr)&&I4.call(this,e)}function $be(n){for(var e=n.srcEvent.clientX,t=n.srcEvent.clientY,r=0;r<this.lastTouches.length;r++){var i=this.lastTouches[r],o=Math.abs(e-i.x),s=Math.abs(t-i.y);if(o<=A4&&s<=A4)return!0}return!1}var zee=(function(){var n=(function(e){Or(t,e);function t(i,o){var s;return s=e.call(this,i,o)||this,s.handler=function(a,g,A){var I=A.pointerType===rA,C=A.pointerType===dR;if(!(C&&A.sourceCapabilities&&A.sourceCapabilities.firesTouchEvents)){if(I)xbe.call(vA(vA(s)),g,A);else if(C&&$be.call(vA(vA(s)),A))return;s.callback(a,g,A)}},s.touch=new cR(s.manager,s.handler),s.mouse=new fR(s.manager,s.handler),s.primaryTouch=null,s.lastTouches=[],s}var r=t.prototype;return r.destroy=function(){this.touch.destroy(),this.mouse.destroy()},t})(la);return n})();function Dbe(n){var e,t=n.options.inputClass;return t?e=t:Ibe?e=Bee:Cbe?e=cR:Pee?e=zee:e=fR,new e(n,ybe)}function Jo(n,e,t){return Array.isArray(n)?(Oi(n,t[e],t),!0):!1}var RA=1,vr=2,Es=4,In=8,Ti=In,og=16,Jr=32,Nbe=1;function Mbe(){return Nbe++}function yA(n,e){var t=e.manager;return t?t.get(n):n}function C4(n){return n&og?"cancel":n&In?"end":n&Es?"move":n&vr?"start":""}var sA=(function(){function n(t){t===void 0&&(t={}),this.options=Wr({enable:!0},t),this.id=Mbe(),this.manager=null,this.state=RA,this.simultaneous={},this.requireFail=[]}var e=n.prototype;return e.set=function(r){return io(this.options,r),this.manager&&this.manager.touchAction.update(),this},e.recognizeWith=function(r){if(Jo(r,"recognizeWith",this))return this;var i=this.simultaneous;return r=yA(r,this),i[r.id]||(i[r.id]=r,r.recognizeWith(this)),this},e.dropRecognizeWith=function(r){return Jo(r,"dropRecognizeWith",this)?this:(r=yA(r,this),delete this.simultaneous[r.id],this)},e.requireFailure=function(r){if(Jo(r,"requireFailure",this))return this;var i=this.requireFail;return r=yA(r,this),oo(i,r)===-1&&(i.push(r),r.requireFailure(this)),this},e.dropRequireFailure=function(r){if(Jo(r,"dropRequireFailure",this))return this;r=yA(r,this);var i=oo(this.requireFail,r);return i>-1&&this.requireFail.splice(i,1),this},e.hasRequireFailures=function(){return this.requireFail.length>0},e.canRecognizeWith=function(r){return!!this.simultaneous[r.id]},e.emit=function(r){var i=this,o=this.state;function s(a){i.manager.emit(a,r)}o<In&&s(i.options.event+C4(o)),s(i.options.event),r.additionalEvent&&s(r.additionalEvent),o>=In&&s(i.options.event+C4(o))},e.tryEmit=function(r){if(this.canEmit())return this.emit(r);this.state=Jr},e.canEmit=function(){for(var r=0;r<this.requireFail.length;){if(!(this.requireFail[r].state&(Jr|RA)))return!1;r++}return!0},e.recognize=function(r){var i=io({},r);if(!eC(this.options.enable,[this,i])){this.reset(),this.state=Jr;return}this.state&(Ti|og|Jr)&&(this.state=RA),this.state=this.process(i),this.state&(vr|Es|In|og)&&this.tryEmit(i)},e.process=function(r){},e.getTouchAction=function(){},e.reset=function(){},n})(),xO=(function(n){Or(e,n);function e(r){var i;return r===void 0&&(r={}),i=n.call(this,Wr({event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},r))||this,i.pTime=!1,i.pCenter=!1,i._timer=null,i._input=null,i.count=0,i}var t=e.prototype;return t.getTouchAction=function(){return[RO]},t.process=function(i){var o=this,s=this.options,a=i.pointers.length===s.pointers,g=i.distance<s.threshold,A=i.deltaTime<s.time;if(this.reset(),i.eventType&Zt&&this.count===0)return this.failTimeout();if(g&&A&&a){if(i.eventType!==It)return this.failTimeout();var I=this.pTime?i.timeStamp-this.pTime<s.interval:!0,C=!this.pCenter||eI(this.pCenter,i.center)<s.posThreshold;this.pTime=i.timeStamp,this.pCenter=i.center,!C||!I?this.count=1:this.count+=1,this._input=i;var l=this.count%s.taps;if(l===0)return this.hasRequireFailures()?(this._timer=setTimeout(function(){o.state=Ti,o.tryEmit()},s.interval),vr):Ti}return Jr},t.failTimeout=function(){var i=this;return this._timer=setTimeout(function(){i.state=Jr},this.options.interval),Jr},t.reset=function(){clearTimeout(this._timer)},t.emit=function(){this.state===Ti&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))},e})(sA),Ss=(function(n){Or(e,n);function e(r){return r===void 0&&(r={}),n.call(this,Wr({pointers:1},r))||this}var t=e.prototype;return t.attrTest=function(i){var o=this.options.pointers;return o===0||i.pointers.length===o},t.process=function(i){var o=this.state,s=i.eventType,a=o&(vr|Es),g=this.attrTest(i);return a&&(s&tr||!g)?o|og:a||g?s&It?o|In:o&vr?o|Es:vr:Jr},e})(sA);function jee(n){return n===ws?"down":n===oA?"up":n===iA?"left":n===nA?"right":""}var pR=(function(n){Or(e,n);function e(r){var i;return r===void 0&&(r={}),i=n.call(this,Wr({event:"pan",threshold:10,pointers:1,direction:xee},r))||this,i.pX=null,i.pY=null,i}var t=e.prototype;return t.getTouchAction=function(){var i=this.options.direction,o=[];return i&si&&o.push(rg),i&Un&&o.push(tg),o},t.directionTest=function(i){var o=this.options,s=!0,a=i.distance,g=i.direction,A=i.deltaX,I=i.deltaY;return g&o.direction||(o.direction&si?(g=A===0?QA:A<0?iA:nA,s=A!==this.pX,a=Math.abs(i.deltaX)):(g=I===0?QA:I<0?oA:ws,s=I!==this.pY,a=Math.abs(i.deltaY))),i.direction=g,s&&a>o.threshold&&g&o.direction},t.attrTest=function(i){return Ss.prototype.attrTest.call(this,i)&&(this.state&vr||!(this.state&vr)&&this.directionTest(i))},t.emit=function(i){this.pX=i.deltaX,this.pY=i.deltaY;var o=jee(i.direction);o&&(i.additionalEvent=this.options.event+o),n.prototype.emit.call(this,i)},e})(Ss),Lee=(function(n){Or(e,n);function e(r){return r===void 0&&(r={}),n.call(this,Wr({event:"swipe",threshold:10,velocity:.3,direction:si|Un,pointers:1},r))||this}var t=e.prototype;return t.getTouchAction=function(){return pR.prototype.getTouchAction.call(this)},t.attrTest=function(i){var o=this.options.direction,s;return o&(si|Un)?s=i.overallVelocity:o&si?s=i.overallVelocityX:o&Un&&(s=i.overallVelocityY),n.prototype.attrTest.call(this,i)&&o&i.offsetDirection&&i.distance>this.options.threshold&&i.maxPointers===this.options.pointers&&no(s)>this.options.velocity&&i.eventType&It},t.emit=function(i){var o=jee(i.offsetDirection);o&&this.manager.emit(this.options.event+o,i),this.manager.emit(this.options.event,i)},e})(Ss),Gee=(function(n){Or(e,n);function e(r){return r===void 0&&(r={}),n.call(this,Wr({event:"pinch",threshold:0,pointers:2},r))||this}var t=e.prototype;return t.getTouchAction=function(){return[Hn]},t.attrTest=function(i){return n.prototype.attrTest.call(this,i)&&(Math.abs(i.scale-1)>this.options.threshold||this.state&vr)},t.emit=function(i){if(i.scale!==1){var o=i.scale<1?"in":"out";i.additionalEvent=this.options.event+o}n.prototype.emit.call(this,i)},e})(Ss),Wee=(function(n){Or(e,n);function e(r){return r===void 0&&(r={}),n.call(this,Wr({event:"rotate",threshold:0,pointers:2},r))||this}var t=e.prototype;return t.getTouchAction=function(){return[Hn]},t.attrTest=function(i){return n.prototype.attrTest.call(this,i)&&(Math.abs(i.rotation)>this.options.threshold||this.state&vr)},e})(Ss),Vee=(function(n){Or(e,n);function e(r){var i;return r===void 0&&(r={}),i=n.call(this,Wr({event:"press",pointers:1,time:251,threshold:9},r))||this,i._timer=null,i._input=null,i}var t=e.prototype;return t.getTouchAction=function(){return[Ree]},t.process=function(i){var o=this,s=this.options,a=i.pointers.length===s.pointers,g=i.distance<s.threshold,A=i.deltaTime>s.time;if(this._input=i,!g||!a||i.eventType&(It|tr)&&!A)this.reset();else if(i.eventType&Zt)this.reset(),this._timer=setTimeout(function(){o.state=Ti,o.tryEmit()},s.time);else if(i.eventType&It)return Ti;return Jr},t.reset=function(){clearTimeout(this._timer)},t.emit=function(i){this.state===Ti&&(i&&i.eventType&It?this.manager.emit(this.options.event+"up",i):(this._input.timeStamp=lR(),this.manager.emit(this.options.event,this._input)))},e})(sA),Zee={domEvents:!1,touchAction:Tee,enable:!0,inputTarget:null,inputClass:null,cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},l4=[[Wee,{enable:!1}],[Gee,{enable:!1},["rotate"]],[Lee,{direction:si}],[pR,{direction:si},["swipe"]],[xO],[xO,{event:"doubletap",taps:2},["tap"]],[Vee]],qbe=1,d4=2;function u4(n,e){var t=n.element;if(t.style){var r;Oi(n.options.cssProps,function(i,o){r=JI(t.style,o),e?(n.oldCssProps[r]=t.style[r],t.style[r]=i):t.style[r]=n.oldCssProps[r]||""}),e||(n.oldCssProps={})}}function Fbe(n,e){var t=document.createEvent("Event");t.initEvent(n,!0,!0),t.gesture=e,e.target.dispatchEvent(t)}var h4=(function(){function n(t,r){var i=this;this.options=io({},Zee,r||{}),this.options.inputTarget=this.options.inputTarget||t,this.handlers={},this.session={},this.recognizers=[],this.oldCssProps={},this.element=t,this.input=Dbe(this),this.touchAction=new Dee(this,this.options.touchAction),u4(this,!0),Oi(this.options.recognizers,function(o){var s=i.add(new o[0](o[1]));o[2]&&s.recognizeWith(o[2]),o[3]&&s.requireFailure(o[3])},this)}var e=n.prototype;return e.set=function(r){return io(this.options,r),r.touchAction&&this.touchAction.update(),r.inputTarget&&(this.input.destroy(),this.input.target=r.inputTarget,this.input.init()),this},e.stop=function(r){this.session.stopped=r?d4:qbe},e.recognize=function(r){var i=this.session;if(!i.stopped){this.touchAction.preventDefaults(r);var o,s=this.recognizers,a=i.curRecognizer;(!a||a&&a.state&Ti)&&(i.curRecognizer=null,a=null);for(var g=0;g<s.length;)o=s[g],i.stopped!==d4&&(!a||o===a||o.canRecognizeWith(a))?o.recognize(r):o.reset(),!a&&o.state&(vr|Es|In)&&(i.curRecognizer=o,a=o),g++}},e.get=function(r){if(r instanceof sA)return r;for(var i=this.recognizers,o=0;o<i.length;o++)if(i[o].options.event===r)return i[o];return null},e.add=function(r){if(Jo(r,"add",this))return this;var i=this.get(r.options.event);return i&&this.remove(i),this.recognizers.push(r),r.manager=this,this.touchAction.update(),r},e.remove=function(r){if(Jo(r,"remove",this))return this;var i=this.get(r);if(r){var o=this.recognizers,s=oo(o,i);s!==-1&&(o.splice(s,1),this.touchAction.update())}return this},e.on=function(r,i){if(r===void 0||i===void 0)return this;var o=this.handlers;return Oi(ig(r),function(s){o[s]=o[s]||[],o[s].push(i)}),this},e.off=function(r,i){if(r===void 0)return this;var o=this.handlers;return Oi(ig(r),function(s){i?o[s]&&o[s].splice(oo(o[s],i),1):delete o[s]}),this},e.emit=function(r,i){this.options.domEvents&&Fbe(r,i);var o=this.handlers[r]&&this.handlers[r].slice();if(!(!o||!o.length)){i.type=r,i.preventDefault=function(){i.srcEvent.preventDefault()};for(var s=0;s<o.length;)o[s](i),s++}},e.destroy=function(){this.element&&u4(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null},n})(),kbe={touchstart:Zt,touchmove:xo,touchend:It,touchcancel:tr},Bbe="touchstart",zbe="touchstart touchmove touchend touchcancel",jbe=(function(n){Or(e,n);function e(){var r,i=e.prototype;return i.evTarget=Bbe,i.evWin=zbe,r=n.apply(this,arguments)||this,r.started=!1,r}var t=e.prototype;return t.handler=function(i){var o=kbe[i.type];if(o===Zt&&(this.started=!0),!!this.started){var s=Lbe.call(this,i,o);o&(It|tr)&&s[0].length-s[1].length===0&&(this.started=!1),this.callback(this.manager,o,{pointers:s[0],changedPointers:s[1],pointerType:rA,srcEvent:i})}},e})(la);function Lbe(n,e){var t=ng(n.touches),r=ng(n.changedTouches);return e&(It|tr)&&(t=hR(t.concat(r),"identifier",!0)),[t,r]}function Hee(n,e,t){var r="DEPRECATED METHOD: "+e+`
|
||
`+t+` AT
|
||
`;return function(){var i=new Error("get-stack-trace"),o=i&&i.stack?i.stack.replace(/^[^\(]+?[\n$]/gm,"").replace(/^\s+at\s+/gm,"").replace(/^Object.<anonymous>\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",s=window.console&&(window.console.warn||window.console.log);return s&&s.call(window.console,r,o),n.apply(this,arguments)}}var Uee=Hee(function(n,e,t){for(var r=Object.keys(e),i=0;i<r.length;)(!t||t&&n[r[i]]===void 0)&&(n[r[i]]=e[r[i]]),i++;return n},"extend","Use `assign`."),Gbe=Hee(function(n,e){return Uee(n,e,!0)},"merge","Use `assign`.");function Wbe(n,e,t){var r=e.prototype,i;i=n.prototype=Object.create(r),i.constructor=n,i._super=r,t&&io(i,t)}function c4(n,e){return function(){return n.apply(e,arguments)}}var Kee=(function(){var n=function(t,r){return r===void 0&&(r={}),new h4(t,Wr({recognizers:l4.concat()},r))};return n.VERSION="2.0.17-rc",n.DIRECTION_ALL=xee,n.DIRECTION_DOWN=ws,n.DIRECTION_LEFT=iA,n.DIRECTION_RIGHT=nA,n.DIRECTION_UP=oA,n.DIRECTION_HORIZONTAL=si,n.DIRECTION_VERTICAL=Un,n.DIRECTION_NONE=QA,n.DIRECTION_DOWN=ws,n.INPUT_START=Zt,n.INPUT_MOVE=xo,n.INPUT_END=It,n.INPUT_CANCEL=tr,n.STATE_POSSIBLE=RA,n.STATE_BEGAN=vr,n.STATE_CHANGED=Es,n.STATE_ENDED=In,n.STATE_RECOGNIZED=Ti,n.STATE_CANCELLED=og,n.STATE_FAILED=Jr,n.Manager=h4,n.Input=la,n.TouchAction=Dee,n.TouchInput=cR,n.MouseInput=fR,n.PointerEventInput=Bee,n.TouchMouseInput=zee,n.SingleTouchInput=jbe,n.Recognizer=sA,n.AttrRecognizer=Ss,n.Tap=xO,n.Pan=pR,n.Swipe=Lee,n.Pinch=Gee,n.Rotate=Wee,n.Press=Vee,n.on=ka,n.off=Ba,n.each=Oi,n.merge=Gbe,n.extend=Uee,n.bindFn=c4,n.assign=io,n.inherit=Wbe,n.bindFn=c4,n.prefixed=JI,n.toArray=ng,n.inArray=oo,n.uniqueArray=hR,n.splitStr=ig,n.boolOrFn=eC,n.hasParent=uR,n.addEventListeners=ka,n.removeEventListeners=Ba,n.defaults=io({},Zee,{preset:l4}),n})();Kee.defaults;Zve("DELETE");function tC(){for(var n=arguments.length,e=new Array(n),t=0;t<n;t++)e[t]=arguments[t];return Vbe(e.length?e:[XA()])}function Vbe(n){let[e,t,r]=Zbe(n),i=1;const o=()=>{const s=2091639*e+i*23283064365386963e-26;return e=t,t=r,r=s-(i=s|0)};return o.uint32=()=>o()*4294967296,o.fract53=()=>o()+(o()*2097152|0)*11102230246251565e-32,o.algorithm="Alea",o.seed=n,o.version="0.9",o}function Zbe(){const n=Hbe();let e=n(" "),t=n(" "),r=n(" ");for(let i=0;i<arguments.length;i++)e-=n(i<0||arguments.length<=i?void 0:arguments[i]),e<0&&(e+=1),t-=n(i<0||arguments.length<=i?void 0:arguments[i]),t<0&&(t+=1),r-=n(i<0||arguments.length<=i?void 0:arguments[i]),r<0&&(r+=1);return[e,t,r]}function Hbe(){let n=4022871197;return function(e){const t=e.toString();for(let r=0;r<t.length;r++){n+=t.charCodeAt(r);let i=.02519603282416938*n;n=i>>>0,i-=n,i*=n,n=i>>>0,i-=n,n+=i*4294967296}return(n>>>0)*23283064365386963e-26}}function Ube(){const n=()=>{};return{on:n,off:n,destroy:n,emit:n,get(){return{set:n}}}}const vR=typeof window<"u"?window.Hammer||Kee:function(){return Ube()};function ei(n){var e;this._cleanupQueue=[],this.active=!1,this._dom={container:n,overlay:document.createElement("div")},this._dom.overlay.classList.add("vis-overlay"),this._dom.container.appendChild(this._dom.overlay),this._cleanupQueue.push(()=>{this._dom.overlay.parentNode.removeChild(this._dom.overlay)});const t=vR(this._dom.overlay);t.on("tap",j(e=this._onTapOverlay).call(e,this)),this._cleanupQueue.push(()=>{t.destroy()});const r=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];xe(r).call(r,i=>{t.on(i,o=>{o.srcEvent.stopPropagation()})}),document&&document.body&&(this._onClick=i=>{Kbe(i.target,n)||this.deactivate()},document.body.addEventListener("click",this._onClick),this._cleanupQueue.push(()=>{document.body.removeEventListener("click",this._onClick)})),this._escListener=i=>{("key"in i?i.key==="Escape":i.keyCode===27)&&this.deactivate()}}oee(ei.prototype);ei.current=null;ei.prototype.destroy=function(){this.deactivate();for(const t of Vn(n=Ei(e=this._cleanupQueue).call(e,0)).call(n)){var n,e;t()}};ei.prototype.activate=function(){ei.current&&ei.current.deactivate(),ei.current=this,this.active=!0,this._dom.overlay.style.display="none",this._dom.container.classList.add("vis-active"),this.emit("change"),this.emit("activate"),document.body.addEventListener("keydown",this._escListener)};ei.prototype.deactivate=function(){this.active=!1,this._dom.overlay.style.display="block",this._dom.container.classList.remove("vis-active"),document.body.removeEventListener("keydown",this._escListener),this.emit("change"),this.emit("deactivate")};ei.prototype._onTapOverlay=function(n){this.activate(),n.srcEvent.stopPropagation()};function Kbe(n,e){for(;n;){if(n===e)return!0;n=n.parentNode}return!1}const Ybe=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i,Xbe=/^#?([a-f\d])([a-f\d])([a-f\d])$/i,Qbe=/^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,Jbe=/^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 Xi(n){if(n)for(;n.hasChildNodes()===!0;){const e=n.firstChild;e&&(Xi(e),n.removeChild(e))}}function ss(n){return n instanceof String||typeof n=="string"}function f4(n){return typeof n=="object"&&n!==null}function so(n,e,t,r){let i=!1;r===!0&&(i=e[t]===null&&n[t]!==void 0),i?delete n[t]:n[t]=e[t]}function Yee(n,e){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;for(const r in n)if(e[r]!==void 0)if(e[r]===null||typeof e[r]!="object")so(n,e,r,t);else{const i=n[r],o=e[r];f4(i)&&f4(o)&&Yee(i,o,t)}}function da(n,e,t){let r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(Qe(t))throw new TypeError("Arrays are not supported by deepExtend");for(let i=0;i<n.length;i++){const o=n[i];if(Object.prototype.hasOwnProperty.call(t,o))if(t[o]&&t[o].constructor===Object)e[o]===void 0&&(e[o]={}),e[o].constructor===Object?qe(e[o],t[o],!1,r):so(e,t,o,r);else{if(Qe(t[o]))throw new TypeError("Arrays are not supported by deepExtend");so(e,t,o,r)}}return e}function tI(n,e,t){let r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(Qe(t))throw new TypeError("Arrays are not supported by deepExtend");for(const i in t)if(Object.prototype.hasOwnProperty.call(t,i)&&!An(n).call(n,i))if(t[i]&&t[i].constructor===Object)e[i]===void 0&&(e[i]={}),e[i].constructor===Object?qe(e[i],t[i]):so(e,t,i,r);else if(Qe(t[i])){e[i]=[];for(let o=0;o<t[i].length;o++)e[i].push(t[i][o])}else so(e,t,i,r);return e}function qe(n,e){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;for(const o in e)if(Object.prototype.hasOwnProperty.call(e,o)||t===!0)if(typeof e[o]=="object"&&e[o]!==null&&QK(e[o])===Object.prototype)n[o]===void 0?n[o]=qe({},e[o],t):typeof n[o]=="object"&&n[o]!==null&&QK(n[o])===Object.prototype?qe(n[o],e[o],t):so(n,e,o,r);else if(Qe(e[o])){var i;n[o]=Kr(i=e[o]).call(i)}else so(n,e,o,r);return n}function rI(n,e){return[...n,e]}function e1e(n){return Kr(n).call(n)}function t1e(n){return n.getBoundingClientRect().left}function r1e(n){return n.getBoundingClientRect().top}function ue(n,e){if(Qe(n)){const t=n.length;for(let r=0;r<t;r++)e(n[r],r,n)}else for(const t in n)Object.prototype.hasOwnProperty.call(n,t)&&e(n[t],t,n)}function mR(n){let e;switch(n.length){case 3:case 4:return e=Xbe.exec(n),e?{r:Br(e[1]+e[1],16),g:Br(e[2]+e[2],16),b:Br(e[3]+e[3],16)}:null;case 6:case 7:return e=Ybe.exec(n),e?{r:Br(e[1],16),g:Br(e[2],16),b:Br(e[3],16)}:null;default:return null}}function cr(n,e){if(An(n).call(n,"rgba"))return n;if(An(n).call(n,"rgb")){const t=n.substr(Oe(n).call(n,"(")+1).replace(")","").split(",");return"rgba("+t[0]+","+t[1]+","+t[2]+","+e+")"}else{const t=mR(n);return t==null?n:"rgba("+t.r+","+t.g+","+t.b+","+e+")"}}function Xee(n,e,t){var r;return"#"+Kr(r=((1<<24)+(n<<16)+(e<<8)+t).toString(16)).call(r,1)}function $O(n,e){if(ss(n)){let r=n;if(Jee(r)){var t;const i=bs(t=r.substr(4).substr(0,r.length-5).split(",")).call(t,function(o){return Br(o)});r=Xee(i[0],i[1],i[2])}if(Qee(r)===!0){const i=i1e(r),o={h:i.h,s:i.s*.8,v:Math.min(1,i.v*1.02)},s={h:i.h,s:Math.min(1,i.s*1.25),v:i.v*.8},a=DO(s.h,s.s,s.v),g=DO(o.h,o.s,o.v);return{background:r,border:a,highlight:{background:g,border:a},hover:{background:g,border:a}}}else return{background:r,border:r,highlight:{background:r,border:r},hover:{background:r,border:r}}}else return{background:n.background||void 0,border:n.border||void 0,highlight:ss(n.highlight)?{border:n.highlight,background:n.highlight}:{background:n.highlight&&n.highlight.background||void 0,border:n.highlight&&n.highlight.border||void 0},hover:ss(n.hover)?{border:n.hover,background:n.hover}:{border:n.hover&&n.hover.border||void 0,background:n.hover&&n.hover.background||void 0}}}function Ra(n,e,t){n=n/255,e=e/255,t=t/255;const r=Math.min(n,Math.min(e,t)),i=Math.max(n,Math.max(e,t));if(r===i)return{h:0,s:0,v:r};const o=n===r?e-t:t===r?n-e:t-n,a=60*((n===r?3:t===r?1:5)-o/(i-r))/360,g=(i-r)/i;return{h:a,s:g,v:i}}function PA(n,e,t){let r,i,o;const s=Math.floor(n*6),a=n*6-s,g=t*(1-e),A=t*(1-a*e),I=t*(1-(1-a)*e);switch(s%6){case 0:r=t,i=I,o=g;break;case 1:r=A,i=t,o=g;break;case 2:r=g,i=t,o=I;break;case 3:r=g,i=A,o=t;break;case 4:r=I,i=g,o=t;break;case 5:r=t,i=g,o=A;break}return{r:Math.floor(r*255),g:Math.floor(i*255),b:Math.floor(o*255)}}function DO(n,e,t){const r=PA(n,e,t);return Xee(r.r,r.g,r.b)}function i1e(n){const e=mR(n);if(!e)throw new TypeError("'".concat(n,"' is not a valid color."));return Ra(e.r,e.g,e.b)}function Qee(n){return/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(n)}function Jee(n){return Qbe.test(n)}function n1e(n){return Jbe.test(n)}function Cn(n){if(n===null||typeof n!="object")return null;if(n instanceof Element)return n;const e=Zn(n);for(const t in n)Object.prototype.hasOwnProperty.call(n,t)&&typeof n[t]=="object"&&(e[t]=Cn(n[t]));return e}function ur(n,e,t){let r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};const i=function(d){return d!=null},o=function(d){return d!==null&&typeof d=="object"},s=function(d){for(const u in d)if(Object.prototype.hasOwnProperty.call(d,u))return!1;return!0};if(!o(n))throw new Error("Parameter mergeTarget must be an object");if(!o(e))throw new Error("Parameter options must be an object");if(!i(t))throw new Error("Parameter option must have a value");if(!o(r))throw new Error("Parameter globalOptions must be an object");const a=function(d,u,h){o(d[h])||(d[h]={});const v=u[h],f=d[h];for(const c in v)Object.prototype.hasOwnProperty.call(v,c)&&(f[c]=v[c])},g=e[t],I=o(r)&&!s(r)?r[t]:void 0,C=I?I.enabled:void 0;if(g===void 0)return;if(typeof g=="boolean"){o(n[t])||(n[t]={}),n[t].enabled=g;return}if(g===null&&!o(n[t]))if(i(I))n[t]=Zn(I);else return;if(!o(g))return;let l=!0;g.enabled!==void 0?l=g.enabled:C!==void 0&&(l=I.enabled),a(n,e,t),n[t].enabled=l}const o1e={linear(n){return n},easeInQuad(n){return n*n},easeOutQuad(n){return n*(2-n)},easeInOutQuad(n){return n<.5?2*n*n:-1+(4-2*n)*n},easeInCubic(n){return n*n*n},easeOutCubic(n){return--n*n*n+1},easeInOutCubic(n){return n<.5?4*n*n*n:(n-1)*(2*n-2)*(2*n-2)+1},easeInQuart(n){return n*n*n*n},easeOutQuart(n){return 1- --n*n*n*n},easeInOutQuart(n){return n<.5?8*n*n*n*n:1-8*--n*n*n*n},easeInQuint(n){return n*n*n*n*n},easeOutQuint(n){return 1+--n*n*n*n*n},easeInOutQuint(n){return n<.5?16*n*n*n*n*n:1+16*--n*n*n*n*n}};function Qi(n,e){let t;Qe(e)||(e=[e]);for(const r of n)if(r){t=r[e[0]];for(let i=1;i<e.length;i++)t&&(t=t[e[i]]);if(typeof t<"u")break}return t}const s1e={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"};let a1e=class{constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:1;this.pixelRatio=e,this.generated=!1,this.centerCoordinates={x:289/2,y:289/2},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=()=>{},this.closeCallback=()=>{},this._create()}insertTo(e){this.hammer!==void 0&&(this.hammer.destroy(),this.hammer=void 0),this.container=e,this.container.appendChild(this.frame),this._bindHammer(),this._setSize()}setUpdateCallback(e){if(typeof e=="function")this.updateCallback=e;else throw new Error("Function attempted to set as colorPicker update callback is not a function.")}setCloseCallback(e){if(typeof e=="function")this.closeCallback=e;else throw new Error("Function attempted to set as colorPicker closing callback is not a function.")}_isColorString(e){if(typeof e=="string")return s1e[e]}setColor(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(e==="none")return;let r;const i=this._isColorString(e);if(i!==void 0&&(e=i),ss(e)===!0){if(Jee(e)===!0){const o=e.substr(4).substr(0,e.length-5).split(",");r={r:o[0],g:o[1],b:o[2],a:1}}else if(n1e(e)===!0){const o=e.substr(5).substr(0,e.length-6).split(",");r={r:o[0],g:o[1],b:o[2],a:o[3]}}else if(Qee(e)===!0){const o=mR(e);r={r:o.r,g:o.g,b:o.b,a:1}}}else if(e instanceof Object&&e.r!==void 0&&e.g!==void 0&&e.b!==void 0){const o=e.a!==void 0?e.a:"1.0";r={r:e.r,g:e.g,b:e.b,a:o}}if(r===void 0)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: "+eA(e));this._setColor(r,t)}show(){this.closeCallback!==void 0&&(this.closeCallback(),this.closeCallback=void 0),this.applied=!1,this.frame.style.display="block",this._generateHueCircle()}_hide(){(arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0)===!0&&(this.previousColor=At({},this.color)),this.applied===!0&&this.updateCallback(this.initialColor),this.frame.style.display="none",Si(()=>{this.closeCallback!==void 0&&(this.closeCallback(),this.closeCallback=void 0)},0)}_save(){this.updateCallback(this.color),this.applied=!1,this._hide()}_apply(){this.applied=!0,this.updateCallback(this.color),this._updatePicker(this.color)}_loadLast(){this.previousColor!==void 0?this.setColor(this.previousColor,!1):alert("There is no last color to load...")}_setColor(e){(arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0)===!0&&(this.initialColor=At({},e)),this.color=e;const r=Ra(e.r,e.g,e.b),i=2*Math.PI,o=this.r*r.s,s=this.centerCoordinates.x+o*Math.sin(i*r.h),a=this.centerCoordinates.y+o*Math.cos(i*r.h);this.colorPickerSelector.style.left=s-.5*this.colorPickerSelector.clientWidth+"px",this.colorPickerSelector.style.top=a-.5*this.colorPickerSelector.clientHeight+"px",this._updatePicker(e)}_setOpacity(e){this.color.a=e/100,this._updatePicker(this.color)}_setBrightness(e){const t=Ra(this.color.r,this.color.g,this.color.b);t.v=e/100;const r=PA(t.h,t.s,t.v);r.a=this.color.a,this.color=r,this._updatePicker()}_updatePicker(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.color;const t=Ra(e.r,e.g,e.b),r=this.colorPickerCanvas.getContext("2d");this.pixelRation===void 0&&(this.pixelRatio=(window.devicePixelRatio||1)/(r.webkitBackingStorePixelRatio||r.mozBackingStorePixelRatio||r.msBackingStorePixelRatio||r.oBackingStorePixelRatio||r.backingStorePixelRatio||1)),r.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);const i=this.colorPickerCanvas.clientWidth,o=this.colorPickerCanvas.clientHeight;r.clearRect(0,0,i,o),r.putImageData(this.hueCircle,0,0),r.fillStyle="rgba(0,0,0,"+(1-t.v)+")",r.circle(this.centerCoordinates.x,this.centerCoordinates.y,this.r),tA(r).call(r),this.brightnessRange.value=100*t.v,this.opacityRange.value=100*e.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+")"}_setSize(){this.colorPickerCanvas.style.width="100%",this.colorPickerCanvas.style.height="100%",this.colorPickerCanvas.width=289*this.pixelRatio,this.colorPickerCanvas.height=289*this.pixelRatio}_create(){var e,t,r,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){const s=this.colorPickerCanvas.getContext("2d");this.pixelRatio=(window.devicePixelRatio||1)/(s.webkitBackingStorePixelRatio||s.mozBackingStorePixelRatio||s.msBackingStorePixelRatio||s.oBackingStorePixelRatio||s.backingStorePixelRatio||1),this.colorPickerCanvas.getContext("2d").setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}else{const s=document.createElement("DIV");s.style.color="red",s.style.fontWeight="bold",s.style.padding="10px",s.innerText="Error: your browser does not support HTML canvas",this.colorPickerCanvas.appendChild(s)}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{}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{}this.brightnessRange.value="100",this.brightnessRange.className="vis-range",this.opacityDiv.appendChild(this.opacityRange),this.brightnessDiv.appendChild(this.brightnessRange);const o=this;this.opacityRange.onchange=function(){o._setOpacity(this.value)},this.opacityRange.oninput=function(){o._setOpacity(this.value)},this.brightnessRange.onchange=function(){o._setBrightness(this.value)},this.brightnessRange.oninput=function(){o._setBrightness(this.value)},this.brightnessLabel=document.createElement("div"),this.brightnessLabel.className="vis-label vis-brightness",this.brightnessLabel.innerText="brightness:",this.opacityLabel=document.createElement("div"),this.opacityLabel.className="vis-label vis-opacity",this.opacityLabel.innerText="opacity:",this.newColorDiv=document.createElement("div"),this.newColorDiv.className="vis-new-color",this.newColorDiv.innerText="new",this.initialColorDiv=document.createElement("div"),this.initialColorDiv.className="vis-initial-color",this.initialColorDiv.innerText="initial",this.cancelButton=document.createElement("div"),this.cancelButton.className="vis-button vis-cancel",this.cancelButton.innerText="cancel",this.cancelButton.onclick=j(e=this._hide).call(e,this,!1),this.applyButton=document.createElement("div"),this.applyButton.className="vis-button vis-apply",this.applyButton.innerText="apply",this.applyButton.onclick=j(t=this._apply).call(t,this),this.saveButton=document.createElement("div"),this.saveButton.className="vis-button vis-save",this.saveButton.innerText="save",this.saveButton.onclick=j(r=this._save).call(r,this),this.loadButton=document.createElement("div"),this.loadButton.className="vis-button vis-load",this.loadButton.innerText="load last",this.loadButton.onclick=j(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)}_bindHammer(){this.drag={},this.pinch={},this.hammer=new vR(this.colorPickerCanvas),this.hammer.get("pinch").set({enable:!0}),this.hammer.on("hammer.input",e=>{e.isFirst&&this._moveSelector(e)}),this.hammer.on("tap",e=>{this._moveSelector(e)}),this.hammer.on("panstart",e=>{this._moveSelector(e)}),this.hammer.on("panmove",e=>{this._moveSelector(e)}),this.hammer.on("panend",e=>{this._moveSelector(e)})}_generateHueCircle(){if(this.generated===!1){const e=this.colorPickerCanvas.getContext("2d");this.pixelRation===void 0&&(this.pixelRatio=(window.devicePixelRatio||1)/(e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1)),e.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);const t=this.colorPickerCanvas.clientWidth,r=this.colorPickerCanvas.clientHeight;e.clearRect(0,0,t,r);let i,o,s,a;this.centerCoordinates={x:t*.5,y:r*.5},this.r=.49*t;const g=2*Math.PI/360,A=1/360,I=1/this.r;let C;for(s=0;s<360;s++)for(a=0;a<this.r;a++)i=this.centerCoordinates.x+a*Math.sin(g*s),o=this.centerCoordinates.y+a*Math.cos(g*s),C=PA(s*A,a*I,1),e.fillStyle="rgb("+C.r+","+C.g+","+C.b+")",e.fillRect(i-.5,o-.5,2,2);e.strokeStyle="rgba(0,0,0,1)",e.circle(this.centerCoordinates.x,this.centerCoordinates.y,this.r),e.stroke(),this.hueCircle=e.getImageData(0,0,t,r)}this.generated=!0}_moveSelector(e){const t=this.colorPickerDiv.getBoundingClientRect(),r=e.center.x-t.left,i=e.center.y-t.top,o=.5*this.colorPickerDiv.clientHeight,s=.5*this.colorPickerDiv.clientWidth,a=r-s,g=i-o,A=Math.atan2(a,g),I=.98*Math.min(Math.sqrt(a*a+g*g),s),C=Math.cos(A)*I+o,l=Math.sin(A)*I+s;this.colorPickerSelector.style.top=C-.5*this.colorPickerSelector.clientHeight+"px",this.colorPickerSelector.style.left=l-.5*this.colorPickerSelector.clientWidth+"px";let d=A/(2*Math.PI);d=d<0?d+1:d;const u=I/this.r,h=Ra(this.color.r,this.color.g,this.color.b);h.h=d,h.s=u;const v=PA(h.h,h.s,h.v);v.a=this.color.a,this.color=v,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+")"}};function NO(){for(var n=arguments.length,e=new Array(n),t=0;t<n;t++)e[t]=arguments[t];if(e.length<1)throw new TypeError("Invalid arguments.");if(e.length===1)return document.createTextNode(e[0]);{const r=document.createElement(e[0]);return r.appendChild(NO(...Kr(e).call(e,1))),r}}let g1e=class{constructor(e,t,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1,o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:()=>!1;this.parent=e,this.changedOptions=[],this.container=t,this.allowCreation=!1,this.hideOption=o,this.options={},this.initialized=!1,this.popupCounter=0,this.defaultOptions={enabled:!1,filter:!0,container:void 0,showButton:!0},At(this.options,this.defaultOptions),this.configureOptions=r,this.moduleOptions={},this.domElements=[],this.popupDiv={},this.popupLimit=5,this.popupHistory={},this.colorPicker=new a1e(i),this.wrapper=void 0}setOptions(e){if(e!==void 0){this.popupHistory={},this._removePopup();let t=!0;if(typeof e=="string")this.options.filter=e;else if(Qe(e))this.options.filter=e.join();else if(typeof e=="object"){if(e==null)throw new TypeError("options cannot be null");e.container!==void 0&&(this.options.container=e.container),Qt(e)!==void 0&&(this.options.filter=Qt(e)),e.showButton!==void 0&&(this.options.showButton=e.showButton),e.enabled!==void 0&&(t=e.enabled)}else typeof e=="boolean"?(this.options.filter=!0,t=e):typeof e=="function"&&(this.options.filter=e,t=!0);Qt(this.options)===!1&&(t=!1),this.options.enabled=t}this._clean()}setModuleOptions(e){this.moduleOptions=e,this.options.enabled===!0&&(this._clean(),this.options.container!==void 0&&(this.container=this.options.container),this._create())}_create(){this._clean(),this.changedOptions=[];const e=Qt(this.options);let t=0,r=!1;for(const i in this.configureOptions)Object.prototype.hasOwnProperty.call(this.configureOptions,i)&&(this.allowCreation=!1,r=!1,typeof e=="function"?(r=e(i,[]),r=r||this._handleObject(this.configureOptions[i],[i],!0)):(e===!0||Oe(e).call(e,i)!==-1)&&(r=!0),r!==!1&&(this.allowCreation=!0,t>0&&this._makeItem([]),this._makeHeader(i),this._handleObject(this.configureOptions[i],[i])),t++);this._makeButton(),this._push()}_push(){this.wrapper=document.createElement("div"),this.wrapper.className="vis-configuration-wrapper",this.container.appendChild(this.wrapper);for(let e=0;e<this.domElements.length;e++)this.wrapper.appendChild(this.domElements[e]);this._showPopupIfNeeded()}_clean(){for(let e=0;e<this.domElements.length;e++)this.wrapper.removeChild(this.domElements[e]);this.wrapper!==void 0&&(this.container.removeChild(this.wrapper),this.wrapper=void 0),this.domElements=[],this._removePopup()}_getValue(e){let t=this.moduleOptions;for(let r=0;r<e.length;r++)if(t[e[r]]!==void 0)t=t[e[r]];else{t=void 0;break}return t}_makeItem(e){if(this.allowCreation===!0){const o=document.createElement("div");o.className="vis-configuration vis-config-item vis-config-s"+e.length;for(var t=arguments.length,r=new Array(t>1?t-1:0),i=1;i<t;i++)r[i-1]=arguments[i];return xe(r).call(r,s=>{o.appendChild(s)}),this.domElements.push(o),this.domElements.length}return 0}_makeHeader(e){const t=document.createElement("div");t.className="vis-configuration vis-config-header",t.innerText=e,this._makeItem([],t)}_makeLabel(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;const i=document.createElement("div");if(i.className="vis-configuration vis-config-label vis-config-s"+t.length,r===!0){for(;i.firstChild;)i.removeChild(i.firstChild);i.appendChild(NO("i","b",e))}else i.innerText=e+":";return i}_makeDropdown(e,t,r){const i=document.createElement("select");i.className="vis-configuration vis-config-select";let o=0;t!==void 0&&Oe(e).call(e,t)!==-1&&(o=Oe(e).call(e,t));for(let g=0;g<e.length;g++){const A=document.createElement("option");A.value=e[g],g===o&&(A.selected="selected"),A.innerText=e[g],i.appendChild(A)}const s=this;i.onchange=function(){s._update(this.value,r)};const a=this._makeLabel(r[r.length-1],r);this._makeItem(r,a,i)}_makeRange(e,t,r){const i=e[0],o=e[1],s=e[2],a=e[3],g=document.createElement("input");g.className="vis-configuration vis-config-range";try{g.type="range",g.min=o,g.max=s}catch{}g.step=a;let A="",I=0;t!==void 0?(t<0&&t*1.2<o?(g.min=Math.ceil(t*1.2),I=g.min,A="range increased"):t/1.2<o&&(g.min=Math.ceil(t/1.2),I=g.min,A="range increased"),t*1.2>s&&s!==1&&(g.max=Math.ceil(t*1.2),I=g.max,A="range increased"),g.value=t):g.value=i;const C=document.createElement("input");C.className="vis-configuration vis-config-rangeinput",C.value=g.value;const l=this;g.onchange=function(){C.value=this.value,l._update(Number(this.value),r)},g.oninput=function(){C.value=this.value};const d=this._makeLabel(r[r.length-1],r),u=this._makeItem(r,d,g,C);A!==""&&this.popupHistory[u]!==I&&(this.popupHistory[u]=I,this._setupPopup(A,u))}_makeButton(){if(this.options.showButton===!0){const e=document.createElement("div");e.className="vis-configuration vis-config-button",e.innerText="generate options",e.onclick=()=>{this._printOptions()},e.onmouseover=()=>{e.className="vis-configuration vis-config-button hover"},e.onmouseout=()=>{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)}}_setupPopup(e,t){if(this.initialized===!0&&this.allowCreation===!0&&this.popupCounter<this.popupLimit){const r=document.createElement("div");r.id="vis-configuration-popup",r.className="vis-configuration-popup",r.innerText=e,r.onclick=()=>{this._removePopup()},this.popupCounter+=1,this.popupDiv={html:r,index:t}}}_removePopup(){this.popupDiv.html!==void 0&&(this.popupDiv.html.parentNode.removeChild(this.popupDiv.html),clearTimeout(this.popupDiv.hideTimeout),clearTimeout(this.popupDiv.deleteTimeout),this.popupDiv={})}_showPopupIfNeeded(){if(this.popupDiv.html!==void 0){const t=this.domElements[this.popupDiv.index].getBoundingClientRect();this.popupDiv.html.style.left=t.left+"px",this.popupDiv.html.style.top=t.top-30+"px",document.body.appendChild(this.popupDiv.html),this.popupDiv.hideTimeout=Si(()=>{this.popupDiv.html.style.opacity=0},1500),this.popupDiv.deleteTimeout=Si(()=>{this._removePopup()},1800)}}_makeCheckbox(e,t,r){const i=document.createElement("input");i.type="checkbox",i.className="vis-configuration vis-config-checkbox",i.checked=e,t!==void 0&&(i.checked=t,t!==e&&(typeof e=="object"?t!==e.enabled&&this.changedOptions.push({path:r,value:t}):this.changedOptions.push({path:r,value:t})));const o=this;i.onchange=function(){o._update(this.checked,r)};const s=this._makeLabel(r[r.length-1],r);this._makeItem(r,s,i)}_makeTextInput(e,t,r){const i=document.createElement("input");i.type="text",i.className="vis-configuration vis-config-text",i.value=t,t!==e&&this.changedOptions.push({path:r,value:t});const o=this;i.onchange=function(){o._update(this.value,r)};const s=this._makeLabel(r[r.length-1],r);this._makeItem(r,s,i)}_makeColorField(e,t,r){const i=e[1],o=document.createElement("div");t=t===void 0?i:t,t!=="none"?(o.className="vis-configuration vis-config-colorBlock",o.style.backgroundColor=t):o.className="vis-configuration vis-config-colorBlock none",t=t===void 0?i:t,o.onclick=()=>{this._showColorPicker(t,o,r)};const s=this._makeLabel(r[r.length-1],r);this._makeItem(r,s,o)}_showColorPicker(e,t,r){t.onclick=function(){},this.colorPicker.insertTo(t),this.colorPicker.show(),this.colorPicker.setColor(e),this.colorPicker.setUpdateCallback(i=>{const o="rgba("+i.r+","+i.g+","+i.b+","+i.a+")";t.style.backgroundColor=o,this._update(o,r)}),this.colorPicker.setCloseCallback(()=>{t.onclick=()=>{this._showColorPicker(e,t,r)}})}_handleObject(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=!1;const o=Qt(this.options);let s=!1;for(const a in e)if(Object.prototype.hasOwnProperty.call(e,a)){i=!0;const g=e[a],A=rI(t,a);if(typeof o=="function"&&(i=o(a,t),i===!1&&!Qe(g)&&typeof g!="string"&&typeof g!="boolean"&&g instanceof Object&&(this.allowCreation=!1,i=this._handleObject(g,A,!0),this.allowCreation=r===!1)),i!==!1){s=!0;const I=this._getValue(A);if(Qe(g))this._handleArray(g,I,A);else if(typeof g=="string")this._makeTextInput(g,I,A);else if(typeof g=="boolean")this._makeCheckbox(g,I,A);else if(g instanceof Object){if(!this.hideOption(t,a,this.moduleOptions))if(g.enabled!==void 0){const C=rI(A,"enabled"),l=this._getValue(C);if(l===!0){const d=this._makeLabel(a,A,!0);this._makeItem(A,d),s=this._handleObject(g,A)||s}else this._makeCheckbox(g,l,A)}else{const C=this._makeLabel(a,A,!0);this._makeItem(A,C),s=this._handleObject(g,A)||s}}else console.error("dont know how to handle",g,a,A)}}return s}_handleArray(e,t,r){typeof e[0]=="string"&&e[0]==="color"?(this._makeColorField(e,t,r),e[1]!==t&&this.changedOptions.push({path:r,value:t})):typeof e[0]=="string"?(this._makeDropdown(e,t,r),e[0]!==t&&this.changedOptions.push({path:r,value:t})):typeof e[0]=="number"&&(this._makeRange(e,t,r),e[0]!==t&&this.changedOptions.push({path:r,value:Number(t)}))}_update(e,t){const r=this._constructOptions(e,t);this.parent.body&&this.parent.body.emitter&&this.parent.body.emitter.emit&&this.parent.body.emitter.emit("configChange",r),this.initialized=!0,this.parent.setOptions(r)}_constructOptions(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},i=r;e=e==="true"?!0:e,e=e==="false"?!1:e;for(let o=0;o<t.length;o++)t[o]!=="global"&&(i[t[o]]===void 0&&(i[t[o]]={}),o!==t.length-1?i=i[t[o]]:i[t[o]]=e);return r}_printOptions(){const e=this.getOptions();for(;this.optionsContainer.firstChild;)this.optionsContainer.removeChild(this.optionsContainer.firstChild);this.optionsContainer.appendChild(NO("pre","const options = "+eA(e,null,2)))}getOptions(){const e={};for(let t=0;t<this.changedOptions.length;t++)this._constructOptions(this.changedOptions[t].value,this.changedOptions[t].path,e);return e}},A1e=class{constructor(e,t){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)}setPosition(e,t){this.x=Br(e),this.y=Br(t)}setText(e){if(e instanceof Element){for(;this.frame.firstChild;)this.frame.removeChild(this.frame.firstChild);this.frame.appendChild(e)}else this.frame.innerText=e}show(e){if(e===void 0&&(e=!0),e===!0){const t=this.frame.clientHeight,r=this.frame.clientWidth,i=this.frame.parentNode.clientHeight,o=this.frame.parentNode.clientWidth;let s=0,a=0;if(this.overflowMethod=="flip"){let g=!1,A=!0;this.y-t<this.padding&&(A=!1),this.x+r>o-this.padding&&(g=!0),g?s=this.x-r:s=this.x,A?a=this.y-t:a=this.y}else a=this.y-t,a+t+this.padding>i&&(a=i-t-this.padding),a<this.padding&&(a=this.padding),s=this.x,s+r+this.padding>o&&(s=o-r-this.padding),s<this.padding&&(s=this.padding);this.frame.style.left=s+"px",this.frame.style.top=a+"px",this.frame.style.visibility="visible",this.hidden=!1}else this.hide()}hide(){this.hidden=!0,this.frame.style.left="0",this.frame.style.top="0",this.frame.style.visibility="hidden"}destroy(){this.frame.parentNode.removeChild(this.frame)}},Ea=!1,p4;const MO="background: #FFeeee; color: #dd0000";let I1e=class Ye{static validate(e,t,r){Ea=!1,p4=t;let i=t;return r!==void 0&&(i=t[r]),Ye.parse(e,i,[]),Ea}static parse(e,t,r){for(const i in e)Object.prototype.hasOwnProperty.call(e,i)&&Ye.check(i,e,t,r)}static check(e,t,r,i){if(r[e]===void 0&&r.__any__===void 0){Ye.getSuggestion(e,r,i);return}let o=e,s=!0;r[e]===void 0&&r.__any__!==void 0&&(o="__any__",s=Ye.getType(t[e])==="object");let a=r[o];s&&a.__type__!==void 0&&(a=a.__type__),Ye.checkFields(e,t,r,o,a,i)}static checkFields(e,t,r,i,o,s){const a=function(I){console.error("%c"+I+Ye.printLocation(s,e),MO)},g=Ye.getType(t[e]),A=o[g];A!==void 0?Ye.getType(A)==="array"&&Oe(A).call(A,t[e])===-1?(a('Invalid option detected in "'+e+'". Allowed values are:'+Ye.print(A)+' not "'+t[e]+'". '),Ea=!0):g==="object"&&i!=="__any__"&&(s=rI(s,e),Ye.parse(t[e],r[i],s)):o.any===void 0&&(a('Invalid type received for "'+e+'". Expected: '+Ye.print(Xe(o))+". Received ["+g+'] "'+t[e]+'"'),Ea=!0)}static getType(e){const t=typeof e;return t==="object"?e===null?"null":e instanceof Boolean?"boolean":e instanceof Number?"number":e instanceof String?"string":Qe(e)?"array":e instanceof Date?"date":e.nodeType!==void 0?"dom":e._isAMomentObject===!0?"moment":"object":t==="number"?"number":t==="boolean"?"boolean":t==="string"?"string":t===void 0?"undefined":t}static getSuggestion(e,t,r){const i=Ye.findInOptions(e,t,r,!1),o=Ye.findInOptions(e,p4,[],!0),s=8,a=4;let g;i.indexMatch!==void 0?g=" in "+Ye.printLocation(i.path,e,"")+'Perhaps it was incomplete? Did you mean: "'+i.indexMatch+`"?
|
||
|
||
`:o.distance<=a&&i.distance>o.distance?g=" in "+Ye.printLocation(i.path,e,"")+"Perhaps it was misplaced? Matching option found at: "+Ye.printLocation(o.path,o.closestMatch,""):i.distance<=s?g='. Did you mean "'+i.closestMatch+'"?'+Ye.printLocation(i.path,e):g=". Did you mean one of these: "+Ye.print(Xe(t))+Ye.printLocation(r,e),console.error('%cUnknown option detected: "'+e+'"'+g,MO),Ea=!0}static findInOptions(e,t,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,o=1e9,s="",a=[];const g=e.toLowerCase();let A;for(const C in t){let l;if(t[C].__type__!==void 0&&i===!0){const d=Ye.findInOptions(e,t[C],rI(r,C));o>d.distance&&(s=d.closestMatch,a=d.path,o=d.distance,A=d.indexMatch)}else{var I;Oe(I=C.toLowerCase()).call(I,g)!==-1&&(A=C),l=Ye.levenshteinDistance(e,C),o>l&&(s=C,a=e1e(r),o=l)}}return{closestMatch:s,path:a,distance:o,indexMatch:A}}static printLocation(e,t){let i=`
|
||
|
||
`+(arguments.length>2&&arguments[2]!==void 0?arguments[2]:`Problem value found at:
|
||
`)+`options = {
|
||
`;for(let o=0;o<e.length;o++){for(let s=0;s<o+1;s++)i+=" ";i+=e[o]+`: {
|
||
`}for(let o=0;o<e.length+1;o++)i+=" ";i+=t+`
|
||
`;for(let o=0;o<e.length+1;o++){for(let s=0;s<e.length-o;s++)i+=" ";i+=`}
|
||
`}return i+`
|
||
|
||
`}static print(e){return eA(e).replace(/(")|(\[)|(\])|(,"__type__")/g,"").replace(/(,)/g,", ")}static levenshteinDistance(e,t){if(e.length===0)return t.length;if(t.length===0)return e.length;const r=[];let i;for(i=0;i<=t.length;i++)r[i]=[i];let o;for(o=0;o<=e.length;o++)r[0][o]=o;for(i=1;i<=t.length;i++)for(o=1;o<=e.length;o++)t.charAt(i-1)==e.charAt(o-1)?r[i][o]=r[i-1][o-1]:r[i][o]=Math.min(r[i-1][o-1]+1,Math.min(r[i][o-1]+1,r[i-1][o]+1));return r[t.length][e.length]}};const C1e=ei,l1e=g1e,as=vR,d1e=A1e,ete=MO,u1e=I1e;function h1e(n){return tn=n,v1e()}var tte={fontsize:"font.size",fontcolor:"font.color",labelfontcolor:"font.color",fontname:"font.face",color:["color.border","color.background"],fillcolor:"color.background",tooltip:"title",labeltooltip:"title"},yR=Zn(tte);yR.color="color.color";yR.style="dashes";var zt={NULL:0,DELIMITER:1,IDENTIFIER:2,UNKNOWN:3},v4={"{":!0,"}":!0,"[":!0,"]":!0,";":!0,"=":!0,",":!0,"->":!0,"--":!0},tn="",_s=0,Ce="",ie="",Yt=zt.NULL;function c1e(){_s=0,Ce=tn.charAt(0)}function mt(){_s++,Ce=tn.charAt(_s)}function Lo(){return tn.charAt(_s+1)}function m4(n){var e=n.charCodeAt(0);return e<47?e===35||e===46:e<59?e>47:e<91?e>64:e<96?e===95:e<123?e>96:!1}function un(n,e){if(n||(n={}),e)for(var t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);return n}function f1e(n,e,t){for(var r=e.split("."),i=n;r.length;){var o=r.shift();r.length?(i[o]||(i[o]={}),i=i[o]):i[o]=t}}function rte(n,e){for(var t,r,i=null,o=[n],s=n;s.parent;)o.push(s.parent),s=s.parent;if(s.nodes){for(t=0,r=s.nodes.length;t<r;t++)if(e.id===s.nodes[t].id){i=s.nodes[t];break}}for(i||(i={id:e.id},n.node&&(i.attr=un(i.attr,n.node))),t=o.length-1;t>=0;t--){var a,g=o[t];g.nodes||(g.nodes=[]),Oe(a=g.nodes).call(a,i)===-1&&g.nodes.push(i)}e.attr&&(i.attr=un(i.attr,e.attr))}function p1e(n,e){if(n.edges||(n.edges=[]),n.edges.push(e),n.edge){var t=un({},n.edge);e.attr=un(t,e.attr)}}function ite(n,e,t,r,i){var o={from:e,to:t,type:r};return n.edge&&(o.attr=un({},n.edge)),o.attr=un(o.attr||{},i),i!=null&&i.hasOwnProperty("arrows")&&i.arrows!=null&&(o.arrows={to:{enabled:!0,type:i.arrows.type}},i.arrows=null),o}function ke(){for(Yt=zt.NULL,ie="";Ce===" "||Ce===" "||Ce===`
|
||
`||Ce==="\r";)mt();do{var n=!1;if(Ce==="#"){for(var e=_s-1;tn.charAt(e)===" "||tn.charAt(e)===" ";)e--;if(tn.charAt(e)===`
|
||
`||tn.charAt(e)===""){for(;Ce!=""&&Ce!=`
|
||
`;)mt();n=!0}}if(Ce==="/"&&Lo()==="/"){for(;Ce!=""&&Ce!=`
|
||
`;)mt();n=!0}if(Ce==="/"&&Lo()==="*"){for(;Ce!="";)if(Ce==="*"&&Lo()==="/"){mt(),mt();break}else mt();n=!0}for(;Ce===" "||Ce===" "||Ce===`
|
||
`||Ce==="\r";)mt()}while(n);if(Ce===""){Yt=zt.DELIMITER;return}var t=Ce+Lo();if(v4[t]){Yt=zt.DELIMITER,ie=t,mt(),mt();return}if(v4[Ce]){Yt=zt.DELIMITER,ie=Ce,mt();return}if(m4(Ce)||Ce==="-"){for(ie+=Ce,mt();m4(Ce);)ie+=Ce,mt();ie==="false"?ie=!1:ie==="true"?ie=!0:isNaN(Number(ie))||(ie=Number(ie)),Yt=zt.IDENTIFIER;return}if(Ce==='"'){for(mt();Ce!=""&&(Ce!='"'||Ce==='"'&&Lo()==='"');)Ce==='"'?(ie+=Ce,mt()):Ce==="\\"&&Lo()==="n"?(ie+=`
|
||
`,mt()):ie+=Ce,mt();if(Ce!='"')throw jt('End of string " expected');mt(),Yt=zt.IDENTIFIER;return}for(Yt=zt.UNKNOWN;Ce!="";)ie+=Ce,mt();throw new SyntaxError('Syntax error in part "'+ate(ie,30)+'"')}function v1e(){var n={};if(c1e(),ke(),ie==="strict"&&(n.strict=!0,ke()),(ie==="graph"||ie==="digraph")&&(n.type=ie,ke()),Yt===zt.IDENTIFIER&&(n.id=ie,ke()),ie!="{")throw jt("Angle bracket { expected");if(ke(),nte(n),ie!="}")throw jt("Angle bracket } expected");if(ke(),ie!=="")throw jt("End of file expected");return ke(),delete n.node,delete n.edge,delete n.graph,n}function nte(n){for(;ie!==""&&ie!="}";)m1e(n),ie===";"&&ke()}function m1e(n){var e=ote(n);if(e){ste(n,e);return}var t=y1e(n);if(!t){if(Yt!=zt.IDENTIFIER)throw jt("Identifier expected");var r=ie;if(ke(),ie==="="){if(ke(),Yt!=zt.IDENTIFIER)throw jt("Identifier expected");n[r]=ie,ke()}else b1e(n,r)}}function ote(n){var e=null;if(ie==="subgraph"&&(e={},e.type="subgraph",ke(),Yt===zt.IDENTIFIER&&(e.id=ie,ke())),ie==="{"){if(ke(),e||(e={}),e.parent=n,e.node=n.node,e.edge=n.edge,e.graph=n.graph,nte(e),ie!="}")throw jt("Angle bracket } expected");ke(),delete e.node,delete e.edge,delete e.graph,delete e.parent,n.subgraphs||(n.subgraphs=[]),n.subgraphs.push(e)}return e}function y1e(n){return ie==="node"?(ke(),n.node=za(),"node"):ie==="edge"?(ke(),n.edge=za(),"edge"):ie==="graph"?(ke(),n.graph=za(),"graph"):null}function b1e(n,e){var t={id:e},r=za();r&&(t.attr=r),rte(n,t),ste(n,e)}function ste(n,e){for(;ie==="->"||ie==="--";){var t,r=ie;ke();var i=ote(n);if(i)t=i;else{if(Yt!=zt.IDENTIFIER)throw jt("Identifier or subgraph expected");t=ie,rte(n,{id:t}),ke()}var o=za(),s=ite(n,e,t,r,o);p1e(n,s),e=t}}function za(){for(var n,e=null,t={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"},i=new Array,o=new Array;ie==="[";){for(ke(),e={};ie!==""&&ie!="]";){if(Yt!=zt.IDENTIFIER)throw jt("Attribute name expected");var s=ie;if(ke(),ie!="=")throw jt("Equal sign = expected");if(ke(),Yt!=zt.IDENTIFIER)throw jt("Attribute value expected");var a=ie;s==="style"&&(a=t[a]);var g;s==="arrowhead"&&(g=r[a],s="arrows",a={to:{enabled:!0,type:g}}),s==="arrowtail"&&(g=r[a],s="arrows",a={from:{enabled:!0,type:g}}),i.push({attr:e,name:s,value:a}),o.push(s),ke(),ie==","&&ke()}if(ie!="]")throw jt("Bracket ] expected");ke()}if(An(o).call(o,"dir")){var A={};for(A.arrows={},n=0;n<i.length;n++)if(i[n].name==="arrows")if(i[n].value.to!=null)A.arrows.to=n;else if(i[n].value.from!=null)A.arrows.from=n;else throw jt("Invalid value of arrows");else i[n].name==="dir"&&(A.dir=n);var I=i[A.dir].value;if(!An(o).call(o,"arrows"))if(I==="both")i.push({attr:i[A.dir].attr,name:"arrows",value:{to:{enabled:!0}}}),A.arrows.to=i.length-1,i.push({attr:i[A.dir].attr,name:"arrows",value:{from:{enabled:!0}}}),A.arrows.from=i.length-1;else if(I==="forward")i.push({attr:i[A.dir].attr,name:"arrows",value:{to:{enabled:!0}}}),A.arrows.to=i.length-1;else if(I==="back")i.push({attr:i[A.dir].attr,name:"arrows",value:{from:{enabled:!0}}}),A.arrows.from=i.length-1;else if(I==="none")i.push({attr:i[A.dir].attr,name:"arrows",value:""}),A.arrows.to=i.length-1;else throw jt('Invalid dir type "'+I+'"');var C,l;if(I==="both")A.arrows.to&&A.arrows.from?(l=i[A.arrows.to].value.to.type,C=i[A.arrows.from].value.from.type,i[A.arrows.to]={attr:i[A.arrows.to].attr,name:i[A.arrows.to].name,value:{to:{enabled:!0,type:l},from:{enabled:!0,type:C}}},Ei(i).call(i,A.arrows.from,1)):A.arrows.to?(l=i[A.arrows.to].value.to.type,C="arrow",i[A.arrows.to]={attr:i[A.arrows.to].attr,name:i[A.arrows.to].name,value:{to:{enabled:!0,type:l},from:{enabled:!0,type:C}}}):A.arrows.from&&(l="arrow",C=i[A.arrows.from].value.from.type,i[A.arrows.from]={attr:i[A.arrows.from].attr,name:i[A.arrows.from].name,value:{to:{enabled:!0,type:l},from:{enabled:!0,type:C}}});else if(I==="back")A.arrows.to&&A.arrows.from?(l="",C=i[A.arrows.from].value.from.type,i[A.arrows.from]={attr:i[A.arrows.from].attr,name:i[A.arrows.from].name,value:{to:{enabled:!0,type:l},from:{enabled:!0,type:C}}}):A.arrows.to?(l="",C="arrow",A.arrows.from=A.arrows.to,i[A.arrows.from]={attr:i[A.arrows.from].attr,name:i[A.arrows.from].name,value:{to:{enabled:!0,type:l},from:{enabled:!0,type:C}}}):A.arrows.from&&(l="",C=i[A.arrows.from].value.from.type,i[A.arrows.to]={attr:i[A.arrows.from].attr,name:i[A.arrows.from].name,value:{to:{enabled:!0,type:l},from:{enabled:!0,type:C}}}),i[A.arrows.from]={attr:i[A.arrows.from].attr,name:i[A.arrows.from].name,value:{from:{enabled:!0,type:i[A.arrows.from].value.from.type}}};else if(I==="none"){var d;A.arrows.to?d=A.arrows.to:d=A.arrows.from,i[d]={attr:i[d].attr,name:i[d].name,value:""}}else if(I==="forward")A.arrows.to&&A.arrows.from?(l=i[A.arrows.to].value.to.type,C="",i[A.arrows.to]={attr:i[A.arrows.to].attr,name:i[A.arrows.to].name,value:{to:{enabled:!0,type:l},from:{enabled:!0,type:C}}}):A.arrows.to?(l=i[A.arrows.to].value.to.type,C="",i[A.arrows.to]={attr:i[A.arrows.to].attr,name:i[A.arrows.to].name,value:{to:{enabled:!0,type:l},from:{enabled:!0,type:C}}}):A.arrows.from&&(l="arrow",C="",A.arrows.to=A.arrows.from,i[A.arrows.to]={attr:i[A.arrows.to].attr,name:i[A.arrows.to].name,value:{to:{enabled:!0,type:l},from:{enabled:!0,type:C}}}),i[A.arrows.to]={attr:i[A.arrows.to].attr,name:i[A.arrows.to].name,value:{to:{enabled:!0,type:i[A.arrows.to].value.to.type}}};else throw jt('Invalid dir type "'+I+'"');Ei(i).call(i,A.dir,1)}var u;if(An(o).call(o,"penwidth")){var h=[];for(u=i.length,n=0;n<u;n++)i[n].name!=="width"&&(i[n].name==="penwidth"&&(i[n].name="width"),h.push(i[n]));i=h}for(u=i.length,n=0;n<u;n++)f1e(i[n].attr,i[n].name,i[n].value);return e}function jt(n){return new SyntaxError(n+', got "'+ate(ie,30)+'" (char '+_s+")")}function ate(n,e){return n.length<=e?n:n.substr(0,27)+"..."}function w1e(n,e,t){Qe(n)?xe(n).call(n,function(r){Qe(e)?xe(e).call(e,function(i){t(r,i)}):t(r,e)}):Qe(e)?xe(e).call(e,function(r){t(n,r)}):t(n,e)}function BE(n,e,t){for(var r=e.split("."),i=r.pop(),o=n,s=0;s<r.length;s++){var a=r[s];a in o||(o[a]={}),o=o[a]}return o[i]=t,n}function y4(n,e){var t={};for(var r in n)if(n.hasOwnProperty(r)){var i=e[r];Qe(i)?xe(i).call(i,function(o){BE(t,o,n[r])}):typeof i=="string"?BE(t,i,n[r]):BE(t,r,n[r])}return t}function E1e(n){var e=h1e(n),t={nodes:[],edges:[],options:{}};if(e.nodes){var r;xe(r=e.nodes).call(r,function(s){var a={id:s.id,label:String(s.label||s.id)};un(a,y4(s.attr,tte)),a.image&&(a.shape="image"),t.nodes.push(a)})}if(e.edges){var i,o=function(s){var a={from:s.from,to:s.to};return un(a,y4(s.attr,yR)),a.arrows==null&&s.type==="->"&&(a.arrows="to"),a};xe(i=e.edges).call(i,function(s){var a,g;if(s.from instanceof Object?a=s.from.nodes:a={id:s.from},s.to instanceof Object?g=s.to.nodes:g={id:s.to},s.from instanceof Object&&s.from.edges){var A;xe(A=s.from.edges).call(A,function(C){var l=o(C);t.edges.push(l)})}if(w1e(a,g,function(C,l){var d=ite(t,C.id,l.id,s.type,s.attr),u=o(d);t.edges.push(u)}),s.to instanceof Object&&s.to.edges){var I;xe(I=s.to.edges).call(I,function(C){var l=o(C);t.edges.push(l)})}})}return e.attr&&(t.options=e.attr),t}function S1e(n,e){var t;const r={edges:{inheritColor:!1},nodes:{fixed:!1,parseColor:!1}};e!=null&&(e.fixed!=null&&(r.nodes.fixed=e.fixed),e.parseColor!=null&&(r.nodes.parseColor=e.parseColor),e.inheritColor!=null&&(r.edges.inheritColor=e.inheritColor));const i=n.edges,o=bs(i).call(i,a=>{const g={from:a.source,id:a.id,to:a.target};return a.attributes!=null&&(g.attributes=a.attributes),a.label!=null&&(g.label=a.label),a.attributes!=null&&a.attributes.title!=null&&(g.title=a.attributes.title),a.type==="Directed"&&(g.arrows="to"),a.color&&r.edges.inheritColor===!1&&(g.color=a.color),g});return{nodes:bs(t=n.nodes).call(t,a=>{const g={id:a.id,fixed:r.nodes.fixed&&a.x!=null&&a.y!=null};return a.attributes!=null&&(g.attributes=a.attributes),a.label!=null&&(g.label=a.label),a.size!=null&&(g.size=a.size),a.attributes!=null&&a.attributes.title!=null&&(g.title=a.attributes.title),a.title!=null&&(g.title=a.title),a.x!=null&&(g.x=a.x),a.y!=null&&(g.y=a.y),a.color!=null&&(r.nodes.parseColor===!0?g.color=a.color:g.color={background:a.color,border:a.color,highlight:{background:a.color,border:a.color},hover:{background:a.color,border:a.color}}),g}),edges:o}}const _1e={addDescription:"Click in an empty space to place a new node.",addEdge:"Add Edge",addNode:"Add Node",back:"Back",close:"Close",createEdgeError:"Cannot link edges to a cluster.",del:"Delete selected",deleteClusterError:"Clusters cannot be deleted.",edgeDescription:"Click on a node and drag the edge to another node to connect them.",edit:"Edit",editClusterError:"Clusters cannot be edited.",editEdge:"Edit Edge",editEdgeDescription:"Click on the control points and drag them to a node to connect to it.",editNode:"Edit Node"},O1e={addDescription:"Klicke auf eine freie Stelle, um einen neuen Knoten zu plazieren.",addEdge:"Kante hinzufügen",addNode:"Knoten hinzufügen",back:"Zurück",close:"Schließen",createEdgeError:"Es ist nicht möglich, Kanten mit Clustern zu verbinden.",del:"Lösche Auswahl",deleteClusterError:"Cluster können nicht gelöscht werden.",edgeDescription:"Klicke auf einen Knoten und ziehe die Kante zu einem anderen Knoten, um diese zu verbinden.",edit:"Editieren",editClusterError:"Cluster können nicht editiert werden.",editEdge:"Kante editieren",editEdgeDescription:"Klicke auf die Verbindungspunkte und ziehe diese auf einen Knoten, um sie zu verbinden.",editNode:"Knoten editieren"},T1e={addDescription:"Haga clic en un lugar vacío para colocar un nuevo nodo.",addEdge:"Añadir arista",addNode:"Añadir nodo",back:"Atrás",close:"Cerrar",createEdgeError:"No se puede conectar una arista a un grupo.",del:"Eliminar selección",deleteClusterError:"No es posible eliminar grupos.",edgeDescription:"Haga clic en un nodo y arrastre la arista hacia otro nodo para conectarlos.",edit:"Editar",editClusterError:"No es posible editar grupos.",editEdge:"Editar arista",editEdgeDescription:"Haga clic en un punto de control y arrastrelo a un nodo para conectarlo.",editNode:"Editar nodo"},R1e={addDescription:"Clicca per aggiungere un nuovo nodo",addEdge:"Aggiungi un vertice",addNode:"Aggiungi un nodo",back:"Indietro",close:"Chiudere",createEdgeError:"Non si possono collegare vertici ad un cluster",del:"Cancella la selezione",deleteClusterError:"I cluster non possono essere cancellati",edgeDescription:"Clicca su un nodo e trascinalo ad un altro nodo per connetterli.",edit:"Modifica",editClusterError:"I clusters non possono essere modificati.",editEdge:"Modifica il vertice",editEdgeDescription:"Clicca sui Punti di controllo e trascinali ad un nodo per connetterli.",editNode:"Modifica il nodo"},P1e={addDescription:"Klik op een leeg gebied om een nieuwe node te maken.",addEdge:"Link toevoegen",addNode:"Node toevoegen",back:"Terug",close:"Sluiten",createEdgeError:"Kan geen link maken naar een cluster.",del:"Selectie verwijderen",deleteClusterError:"Clusters kunnen niet worden verwijderd.",edgeDescription:"Klik op een node en sleep de link naar een andere node om ze te verbinden.",edit:"Wijzigen",editClusterError:"Clusters kunnen niet worden aangepast.",editEdge:"Link wijzigen",editEdgeDescription:"Klik op de verbindingspunten en sleep ze naar een node om daarmee te verbinden.",editNode:"Node wijzigen"},x1e={addDescription:"Clique em um espaço em branco para adicionar um novo nó",addEdge:"Adicionar aresta",addNode:"Adicionar nó",back:"Voltar",close:"Fechar",createEdgeError:"Não foi possível linkar arestas a um cluster.",del:"Remover selecionado",deleteClusterError:"Clusters não puderam ser removidos.",edgeDescription:"Clique em um nó e arraste a aresta até outro nó para conectá-los",edit:"Editar",editClusterError:"Clusters não puderam ser editados.",editEdge:"Editar aresta",editEdgeDescription:"Clique nos pontos de controle e os arraste para um nó para conectá-los",editNode:"Editar nó"},$1e={addDescription:"Кликните в свободное место, чтобы добавить новый узел.",addEdge:"Добавить ребро",addNode:"Добавить узел",back:"Назад",close:"Закрывать",createEdgeError:"Невозможно соединить ребра в кластер.",del:"Удалить выбранное",deleteClusterError:"Кластеры не могут быть удалены",edgeDescription:"Кликните на узел и протяните ребро к другому узлу, чтобы соединить их.",edit:"Редактировать",editClusterError:"Кластеры недоступны для редактирования.",editEdge:"Редактировать ребро",editEdgeDescription:"Кликните на контрольные точки и перетащите их в узел, чтобы подключиться к нему.",editNode:"Редактировать узел"},D1e={addDescription:"单击空白处放置新节点。",addEdge:"添加连接线",addNode:"添加节点",back:"返回",close:"關閉",createEdgeError:"无法将连接线连接到群集。",del:"删除选定",deleteClusterError:"无法删除群集。",edgeDescription:"单击某个节点并将该连接线拖动到另一个节点以连接它们。",edit:"编辑",editClusterError:"无法编辑群集。",editEdge:"编辑连接线",editEdgeDescription:"单击控制节点并将它们拖到节点上连接。",editNode:"编辑节点"},N1e={addDescription:"Kлікніть на вільне місце, щоб додати новий вузол.",addEdge:"Додати край",addNode:"Додати вузол",back:"Назад",close:"Закрити",createEdgeError:"Не можливо об'єднати краї в групу.",del:"Видалити обране",deleteClusterError:"Групи не можуть бути видалені.",edgeDescription:"Клікніть на вузол і перетягніть край до іншого вузла, щоб їх з'єднати.",edit:"Редагувати",editClusterError:"Групи недоступні для редагування.",editEdge:"Редагувати край",editEdgeDescription:"Клікніть на контрольні точки і перетягніть їх у вузол, щоб підключитися до нього.",editNode:"Редагувати вузол"},M1e={addDescription:"Cliquez dans un endroit vide pour placer un nœud.",addEdge:"Ajouter un lien",addNode:"Ajouter un nœud",back:"Retour",close:"Fermer",createEdgeError:"Impossible de créer un lien vers un cluster.",del:"Effacer la sélection",deleteClusterError:"Les clusters ne peuvent pas être effacés.",edgeDescription:"Cliquez sur un nœud et glissez le lien vers un autre nœud pour les connecter.",edit:"Éditer",editClusterError:"Les clusters ne peuvent pas être édités.",editEdge:"Éditer le lien",editEdgeDescription:"Cliquez sur les points de contrôle et glissez-les pour connecter un nœud.",editNode:"Éditer le nœud"},q1e={addDescription:"Kluknutím do prázdného prostoru můžete přidat nový vrchol.",addEdge:"Přidat hranu",addNode:"Přidat vrchol",back:"Zpět",close:"Zavřít",createEdgeError:"Nelze připojit hranu ke shluku.",del:"Smazat výběr",deleteClusterError:"Nelze mazat shluky.",edgeDescription:"Přetažením z jednoho vrcholu do druhého můžete spojit tyto vrcholy novou hranou.",edit:"Upravit",editClusterError:"Nelze upravovat shluky.",editEdge:"Upravit hranu",editEdgeDescription:"Přetažením kontrolního vrcholu hrany ji můžete připojit k jinému vrcholu.",editNode:"Upravit vrchol"};var F1e=Object.freeze({__proto__:null,cn:D1e,cs:q1e,de:O1e,en:_1e,es:T1e,fr:M1e,it:R1e,nl:P1e,pt:x1e,ru:$1e,uk:N1e});function k1e(n,e){try{const[r,i]=e.split(/[-_ /]/,2),o=r!=null?r.toLowerCase():null,s=i!=null?i.toUpperCase():null;if(o&&s){const a=o+"-"+s;if(Object.prototype.hasOwnProperty.call(n,a))return a;var t;console.warn(gye(t="Unknown variant ".concat(s," of language ")).call(t,o,"."))}if(o){const a=o;if(Object.prototype.hasOwnProperty.call(n,a))return a;console.warn("Unknown language ".concat(o))}return console.warn("Unknown locale ".concat(e,", falling back to English.")),"en"}catch(r){return console.error(r),console.warn("Unexpected error while normalizing locale ".concat(e,", falling back to English.")),"en"}}class B1e{constructor(){this.NUM_ITERATIONS=4,this.image=new Image,this.canvas=document.createElement("canvas")}init(){if(this.initialized())return;this.src=this.image.src;const e=this.image.width,t=this.image.height;this.width=e,this.height=t;const r=Math.floor(t/2),i=Math.floor(t/4),o=Math.floor(t/8),s=Math.floor(t/16),a=Math.floor(e/2),g=Math.floor(e/4),A=Math.floor(e/8),I=Math.floor(e/16);this.canvas.width=3*g,this.canvas.height=r,this.coordinates=[[0,0,a,r],[a,0,g,i],[a,i,A,o],[5*A,i,I,s]],this._fillMipMap()}initialized(){return this.coordinates!==void 0}_fillMipMap(){const e=this.canvas.getContext("2d"),t=this.coordinates[0];e.drawImage(this.image,t[0],t[1],t[2],t[3]);for(let r=1;r<this.NUM_ITERATIONS;r++){const i=this.coordinates[r-1],o=this.coordinates[r];e.drawImage(this.canvas,i[0],i[1],i[2],i[3],o[0],o[1],o[2],o[3])}}drawImageAtPosition(e,t,r,i,o,s){if(this.initialized())if(t>2){t*=.5;let a=0;for(;t>2&&a<this.NUM_ITERATIONS;)t*=.5,a+=1;a>=this.NUM_ITERATIONS&&(a=this.NUM_ITERATIONS-1);const g=this.coordinates[a];e.drawImage(this.canvas,g[0],g[1],g[2],g[3],r,i,o,s)}else e.drawImage(this.image,r,i,o,s)}}class z1e{constructor(e){this.images={},this.imageBroken={},this.callback=e}_tryloadBrokenUrl(e,t,r){if(!(e===void 0||r===void 0)){if(t===void 0){console.warn("No broken url image defined");return}r.image.onerror=()=>{console.error("Could not load brokenImage:",t)},r.image.src=t}}_redrawWithImage(e){this.callback&&this.callback(e)}load(e,t){const r=this.images[e];if(r)return r;const i=new B1e;return this.images[e]=i,i.image.onload=()=>{this._fixImageCoordinates(i.image),i.init(),this._redrawWithImage(i)},i.image.onerror=()=>{console.error("Could not load image:",e),this._tryloadBrokenUrl(e,t,i)},i.image.src=e,i}_fixImageCoordinates(e){e.width===0&&(document.body.appendChild(e),e.width=e.offsetWidth,e.height=e.offsetHeight,document.body.removeChild(e))}}var b4={},w4={},zE={exports:{}},jE,E4;function j1e(){if(E4)return jE;E4=1;var n=pe();return jE=n(function(){if(typeof ArrayBuffer=="function"){var e=new ArrayBuffer(8);Object.isExtensible(e)&&Object.defineProperty(e,"a",{value:8})}}),jE}var LE,S4;function L1e(){if(S4)return LE;S4=1;var n=pe(),e=Tt(),t=di(),r=j1e(),i=Object.isExtensible,o=n(function(){});return LE=o||r?function(a){return!e(a)||r&&t(a)==="ArrayBuffer"?!1:i?i(a):!0}:i,LE}var GE,_4;function gte(){if(_4)return GE;_4=1;var n=pe();return GE=!n(function(){return Object.isExtensible(Object.preventExtensions({}))}),GE}var O4;function rC(){if(O4)return zE.exports;O4=1;var n=te(),e=ye(),t=Kg(),r=Tt(),i=qt(),o=Sr().f,s=YI(),a=sR(),g=L1e(),A=GI(),I=gte(),C=!1,l=A("meta"),d=0,u=function(p){o(p,l,{value:{objectID:"O"+d++,weakData:{}}})},h=function(p,y){if(!r(p))return typeof p=="symbol"?p:(typeof p=="string"?"S":"P")+p;if(!i(p,l)){if(!g(p))return"F";if(!y)return"E";u(p)}return p[l].objectID},v=function(p,y){if(!i(p,l)){if(!g(p))return!0;if(!y)return!1;u(p)}return p[l].weakData},f=function(p){return I&&C&&g(p)&&!i(p,l)&&u(p),p},c=function(){b.enable=function(){},C=!0;var p=s.f,y=e([].splice),E={};E[l]=1,p(E).length&&(s.f=function(S){for(var m=p(S),w=0,_=m.length;w<_;w++)if(m[w]===l){y(m,w,1);break}return m},n({target:"Object",stat:!0,forced:!0},{getOwnPropertyNames:a.f}))},b=zE.exports={enable:c,fastKey:h,getWeakData:v,onFreeze:f};return t[l]=!0,zE.exports}var WE,T4;function G1e(){if(T4)return WE;T4=1;var n=ht(),e=ga(),t=n("iterator"),r=Array.prototype;return WE=function(i){return i!==void 0&&(e.Array===i||r[t]===i)},WE}var VE,R4;function Ate(){if(R4)return VE;R4=1;var n=aa(),e=XT(),t=Qs(),r=ga(),i=ht(),o=i("iterator");return VE=function(s){if(!t(s))return e(s,o)||e(s,"@@iterator")||r[n(s)]},VE}var ZE,P4;function W1e(){if(P4)return ZE;P4=1;var n=or(),e=ki(),t=ui(),r=ta(),i=Ate(),o=TypeError;return ZE=function(s,a){var g=arguments.length<2?i(s):a;if(e(g))return t(n(g,s));throw new o(r(s)+" is not iterable")},ZE}var HE,x4;function bR(){if(x4)return HE;x4=1;var n=or(),e=ui(),t=XT();return HE=function(r,i,o){var s,a;e(r);try{if(s=t(r,"return"),!s){if(i==="throw")throw o;return o}s=n(s,r)}catch(g){a=!0,s=g}if(i==="throw")throw o;if(a)throw s;return e(s),o},HE}var UE,$4;function iC(){if($4)return UE;$4=1;var n=VI(),e=or(),t=ui(),r=ta(),i=G1e(),o=Bi(),s=ut(),a=W1e(),g=Ate(),A=bR(),I=TypeError,C=function(d,u){this.stopped=d,this.result=u},l=C.prototype;return UE=function(d,u,h){var v=h&&h.that,f=!!(h&&h.AS_ENTRIES),c=!!(h&&h.IS_RECORD),b=!!(h&&h.IS_ITERATOR),p=!!(h&&h.INTERRUPTED),y=n(u,v),E,S,m,w,_,T,R,O=function(x){return E&&A(E,"normal"),new C(!0,x)},P=function(x){return f?(t(x),p?y(x[0],x[1],O):y(x[0],x[1])):p?y(x,O):y(x)};if(c)E=d.iterator;else if(b)E=d;else{if(S=g(d),!S)throw new I(r(d)+" is not iterable");if(i(S)){for(m=0,w=o(d);w>m;m++)if(_=P(d[m]),_&&s(l,_))return _;return new C(!1)}E=a(d,S)}for(T=c?d.next:E.next;!(R=e(T,E)).done;){try{_=P(R.value)}catch(x){A(E,"throw",x)}if(typeof _=="object"&&_&&s(l,_))return _}return new C(!1)},UE}var KE,D4;function wR(){if(D4)return KE;D4=1;var n=ut(),e=TypeError;return KE=function(t,r){if(n(r,t))return t;throw new e("Incorrect invocation")},KE}var YE,N4;function ER(){if(N4)return YE;N4=1;var n=te(),e=Ge(),t=rC(),r=pe(),i=na(),o=iC(),s=wR(),a=Ot(),g=Tt(),A=Qs(),I=Ro(),C=Sr().f,l=Sn().forEach,d=ot(),u=Po(),h=u.set,v=u.getterFor;return YE=function(f,c,b){var p=f.indexOf("Map")!==-1,y=f.indexOf("Weak")!==-1,E=p?"set":"add",S=e[f],m=S&&S.prototype,w={},_;if(!d||!a(S)||!(y||m.forEach&&!r(function(){new S().entries().next()})))_=b.getConstructor(c,f,p,E),t.enable();else{_=c(function(O,P){h(s(O,T),{type:f,collection:new S}),A(P)||o(P,O[E],{that:O,AS_ENTRIES:p})});var T=_.prototype,R=v(f);l(["add","clear","delete","forEach","get","has","set","keys","values","entries"],function(O){var P=O==="add"||O==="set";O in m&&!(y&&O==="clear")&&i(T,O,function(x,V){var M=R(this).collection;if(!P&&y&&!g(x))return O==="get"?void 0:!1;var U=M[O](x===0?0:x,V);return P?this:U})}),y||C(T,"size",{configurable:!0,get:function(){return R(this).collection.size}})}return I(_,f,!1,!0),w[f]=_,n({global:!0,forced:!0},w),y||b.setStrong(_,f,p),_},YE}var XE,M4;function SR(){if(M4)return XE;M4=1;var n=Jg();return XE=function(e,t,r){for(var i in t)r&&r.unsafe&&e[i]?e[i]=t[i]:n(e,i,t[i],r);return e},XE}var QE,q4;function V1e(){if(q4)return QE;q4=1;var n=Cr(),e=aR(),t=ht(),r=ot(),i=t("species");return QE=function(o){var s=n(o);r&&s&&!s[i]&&e(s,i,{configurable:!0,get:function(){return this}})},QE}var JE,F4;function Ite(){if(F4)return JE;F4=1;var n=Qg(),e=aR(),t=SR(),r=VI(),i=wR(),o=Qs(),s=iC(),a=AR(),g=IR(),A=V1e(),I=ot(),C=rC().fastKey,l=Po(),d=l.set,u=l.getterFor;return JE={getConstructor:function(h,v,f,c){var b=h(function(m,w){i(m,p),d(m,{type:v,index:n(null),first:null,last:null,size:0}),I||(m.size=0),o(w)||s(w,m[c],{that:m,AS_ENTRIES:f})}),p=b.prototype,y=u(v),E=function(m,w,_){var T=y(m),R=S(m,w),O,P;return R?R.value=_:(T.last=R={index:P=C(w,!0),key:w,value:_,previous:O=T.last,next:null,removed:!1},T.first||(T.first=R),O&&(O.next=R),I?T.size++:m.size++,P!=="F"&&(T.index[P]=R)),m},S=function(m,w){var _=y(m),T=C(w),R;if(T!=="F")return _.index[T];for(R=_.first;R;R=R.next)if(R.key===w)return R};return t(p,{clear:function(){for(var w=this,_=y(w),T=_.first;T;)T.removed=!0,T.previous&&(T.previous=T.previous.next=null),T=T.next;_.first=_.last=null,_.index=n(null),I?_.size=0:w.size=0},delete:function(m){var w=this,_=y(w),T=S(w,m);if(T){var R=T.next,O=T.previous;delete _.index[T.index],T.removed=!0,O&&(O.next=R),R&&(R.previous=O),_.first===T&&(_.first=R),_.last===T&&(_.last=O),I?_.size--:w.size--}return!!T},forEach:function(w){for(var _=y(this),T=r(w,arguments.length>1?arguments[1]:void 0),R;R=R?R.next:_.first;)for(T(R.value,R.key,this);R&&R.removed;)R=R.previous},has:function(w){return!!S(this,w)}}),t(p,f?{get:function(w){var _=S(this,w);return _&&_.value},set:function(w,_){return E(this,w===0?0:w,_)}}:{add:function(w){return E(this,w=w===0?0:w,w)}}),I&&e(p,"size",{configurable:!0,get:function(){return y(this).size}}),b},setStrong:function(h,v,f){var c=v+" Iterator",b=u(v),p=u(c);a(h,v,function(y,E){d(this,{type:c,target:y,state:b(y),kind:E,last:null})},function(){for(var y=p(this),E=y.kind,S=y.last;S&&S.removed;)S=S.previous;return!y.target||!(y.last=S=S?S.next:y.state.first)?(y.target=null,g(void 0,!0)):g(E==="keys"?S.key:E==="values"?S.value:[S.key,S.value],!1)},f?"entries":"values",!f,!0),A(v)}},JE}var k4;function Z1e(){if(k4)return w4;k4=1;var n=ER(),e=Ite();return n("Map",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},e),w4}var B4;function H1e(){return B4||(B4=1,Z1e()),b4}var z4={},eS,j4;function Cte(){return j4||(j4=1,eS=function(n,e){return e===1?function(t,r){return t[n](r)}:function(t,r,i){return t[n](r,i)}}),eS}var tS,L4;function U1e(){if(L4)return tS;L4=1;var n=Cr(),e=Cte(),t=n("Map");return tS={Map:t,set:e("set",2),get:e("get",1),has:e("has",1),remove:e("delete",1),proto:t.prototype},tS}var G4;function K1e(){if(G4)return z4;G4=1;var n=te(),e=ye(),t=ki(),r=Fi(),i=iC(),o=U1e(),s=ra(),a=pe(),g=o.Map,A=o.has,I=o.get,C=o.set,l=e([].push),d=s||a(function(){return g.groupBy("ab",function(u){return u}).get("a").length!==1});return n({target:"Map",stat:!0,forced:s||d},{groupBy:function(h,v){r(h),t(v);var f=new g,c=0;return i(h,function(b){var p=v(b,c++);A(f,p)?l(I(f,p),b):C(f,p,[b])}),f}}),z4}var W4={},rS,V4;function Y1e(){if(V4)return rS;V4=1;var n=ye(),e=oa(),t=_r(),r=Fi(),i=n("".charAt),o=n("".charCodeAt),s=n("".slice),a=function(g){return function(A,I){var C=t(r(A)),l=e(I),d=C.length,u,h;return l<0||l>=d?g?"":void 0:(u=o(C,l),u<55296||u>56319||l+1===d||(h=o(C,l+1))<56320||h>57343?g?i(C,l):u:g?s(C,l,l+2):(u-55296<<10)+(h-56320)+65536)}};return rS={codeAt:a(!1),charAt:a(!0)},rS}var Z4;function _R(){if(Z4)return W4;Z4=1;var n=Y1e().charAt,e=_r(),t=Po(),r=AR(),i=IR(),o="String Iterator",s=t.set,a=t.getterFor(o);return r(String,"String",function(g){s(this,{type:o,string:e(g),index:0})},function(){var A=a(this),I=A.string,C=A.index,l;return C>=I.length?i(void 0,!0):(l=n(I,C),A.index+=l.length,i(l,!1))}),W4}var iS,H4;function X1e(){if(H4)return iS;H4=1,Aa(),H1e(),K1e(),_R();var n=Re();return iS=n.Map,iS}var nS,U4;function Q1e(){if(U4)return nS;U4=1;var n=X1e();return Ia(),nS=n,nS}var oS,K4;function J1e(){return K4||(K4=1,oS=Q1e()),oS}var e0e=J1e(),OR=se(e0e);class t0e{constructor(){this.clear(),this._defaultIndex=0,this._groupIndex=0,this._defaultGroups=[{border:"#2B7CE9",background:"#97C2FC",highlight:{border:"#2B7CE9",background:"#D2E5FF"},hover:{border:"#2B7CE9",background:"#D2E5FF"}},{border:"#FFA500",background:"#FFFF00",highlight:{border:"#FFA500",background:"#FFFFA3"},hover:{border:"#FFA500",background:"#FFFFA3"}},{border:"#FA0A10",background:"#FB7E81",highlight:{border:"#FA0A10",background:"#FFAFB1"},hover:{border:"#FA0A10",background:"#FFAFB1"}},{border:"#41A906",background:"#7BE141",highlight:{border:"#41A906",background:"#A1EC76"},hover:{border:"#41A906",background:"#A1EC76"}},{border:"#E129F0",background:"#EB7DF4",highlight:{border:"#E129F0",background:"#F0B3F5"},hover:{border:"#E129F0",background:"#F0B3F5"}},{border:"#7C29F0",background:"#AD85E4",highlight:{border:"#7C29F0",background:"#D3BDF0"},hover:{border:"#7C29F0",background:"#D3BDF0"}},{border:"#C37F00",background:"#FFA807",highlight:{border:"#C37F00",background:"#FFCA66"},hover:{border:"#C37F00",background:"#FFCA66"}},{border:"#4220FB",background:"#6E6EFD",highlight:{border:"#4220FB",background:"#9B9BFD"},hover:{border:"#4220FB",background:"#9B9BFD"}},{border:"#FD5A77",background:"#FFC0CB",highlight:{border:"#FD5A77",background:"#FFD1D9"},hover:{border:"#FD5A77",background:"#FFD1D9"}},{border:"#4AD63A",background:"#C2FABC",highlight:{border:"#4AD63A",background:"#E6FFE3"},hover:{border:"#4AD63A",background:"#E6FFE3"}},{border:"#990000",background:"#EE0000",highlight:{border:"#BB0000",background:"#FF3333"},hover:{border:"#BB0000",background:"#FF3333"}},{border:"#FF6000",background:"#FF6000",highlight:{border:"#FF6000",background:"#FF6000"},hover:{border:"#FF6000",background:"#FF6000"}},{border:"#97C2FC",background:"#2B7CE9",highlight:{border:"#D2E5FF",background:"#2B7CE9"},hover:{border:"#D2E5FF",background:"#2B7CE9"}},{border:"#399605",background:"#255C03",highlight:{border:"#399605",background:"#255C03"},hover:{border:"#399605",background:"#255C03"}},{border:"#B70054",background:"#FF007E",highlight:{border:"#B70054",background:"#FF007E"},hover:{border:"#B70054",background:"#FF007E"}},{border:"#AD85E4",background:"#7C29F0",highlight:{border:"#D3BDF0",background:"#7C29F0"},hover:{border:"#D3BDF0",background:"#7C29F0"}},{border:"#4557FA",background:"#000EA1",highlight:{border:"#6E6EFD",background:"#000EA1"},hover:{border:"#6E6EFD",background:"#000EA1"}},{border:"#FFC0CB",background:"#FD5A77",highlight:{border:"#FFD1D9",background:"#FD5A77"},hover:{border:"#FFD1D9",background:"#FD5A77"}},{border:"#C2FABC",background:"#74D66A",highlight:{border:"#E6FFE3",background:"#74D66A"},hover:{border:"#E6FFE3",background:"#74D66A"}},{border:"#EE0000",background:"#990000",highlight:{border:"#FF3333",background:"#BB0000"},hover:{border:"#FF3333",background:"#BB0000"}}],this.options={},this.defaultOptions={useDefaultGroups:!0},At(this.options,this.defaultOptions)}setOptions(e){const t=["useDefaultGroups"];if(e!==void 0){for(const r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&Oe(t).call(t,r)===-1){const i=e[r];this.add(r,i)}}}clear(){this._groups=new OR,this._groupNames=[]}get(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=this._groups.get(e);if(r===void 0&&t)if(this.options.useDefaultGroups===!1&&this._groupNames.length>0){const i=this._groupIndex%this._groupNames.length;++this._groupIndex,r={},r.color=this._groups.get(this._groupNames[i]),this._groups.set(e,r)}else{const i=this._defaultIndex%this._defaultGroups.length;this._defaultIndex++,r={},r.color=this._defaultGroups[i],this._groups.set(e,r)}return r}add(e,t){return this._groups.has(e)||this._groupNames.push(e),this._groups.set(e,t),t}}var Y4={},X4;function r0e(){if(X4)return Y4;X4=1;var n=te();return n({target:"Number",stat:!0},{isNaN:function(t){return t!==t}}),Y4}var sS,Q4;function i0e(){if(Q4)return sS;Q4=1,r0e();var n=Re();return sS=n.Number.isNaN,sS}var aS,J4;function n0e(){if(J4)return aS;J4=1;var n=i0e();return aS=n,aS}var gS,e8;function o0e(){return e8||(e8=1,gS=n0e()),gS}var s0e=o0e(),qO=se(s0e),t8={},AS,r8;function a0e(){if(r8)return AS;r8=1;var n=Ge(),e=n.isFinite;return AS=Number.isFinite||function(r){return typeof r=="number"&&e(r)},AS}var i8;function g0e(){if(i8)return t8;i8=1;var n=te(),e=a0e();return n({target:"Number",stat:!0},{isFinite:e}),t8}var IS,n8;function A0e(){if(n8)return IS;n8=1,g0e();var n=Re();return IS=n.Number.isFinite,IS}var CS,o8;function I0e(){if(o8)return CS;o8=1;var n=A0e();return CS=n,CS}var lS,s8;function C0e(){return s8||(s8=1,lS=I0e()),lS}var l0e=C0e(),kn=se(l0e),a8={},g8;function d0e(){if(g8)return a8;g8=1;var n=te(),e=Sn().some,t=Ca(),r=t("some");return n({target:"Array",proto:!0,forced:!r},{some:function(o){return e(this,o,arguments.length>1?arguments[1]:void 0)}}),a8}var dS,A8;function u0e(){if(A8)return dS;A8=1,d0e();var n=Ft();return dS=n("Array","some"),dS}var uS,I8;function h0e(){if(I8)return uS;I8=1;var n=ut(),e=u0e(),t=Array.prototype;return uS=function(r){var i=r.some;return r===t||n(t,r)&&i===t.some?e:i},uS}var hS,C8;function c0e(){if(C8)return hS;C8=1;var n=h0e();return hS=n,hS}var cS,l8;function f0e(){return l8||(l8=1,cS=c0e()),cS}var p0e=f0e(),v0e=se(p0e),fS={exports:{}},d8={},u8;function m0e(){if(u8)return d8;u8=1;var n=te(),e=ot(),t=Sr().f;return n({target:"Object",stat:!0,forced:Object.defineProperty!==t,sham:!e},{defineProperty:t}),d8}var h8;function y0e(){if(h8)return fS.exports;h8=1,m0e();var n=Re(),e=n.Object,t=fS.exports=function(i,o,s){return e.defineProperty(i,o,s)};return e.defineProperty.sham&&(t.sham=!0),fS.exports}var pS,c8;function lte(){if(c8)return pS;c8=1;var n=y0e();return pS=n,pS}var vS,f8;function b0e(){if(f8)return vS;f8=1;var n=lte();return vS=n,vS}var mS,p8;function w0e(){if(p8)return mS;p8=1;var n=b0e();return mS=n,mS}var yS,v8;function E0e(){return v8||(v8=1,yS=w0e()),yS}var S0e=E0e(),_0e=se(S0e),m8={},y8;function O0e(){if(y8)return m8;y8=1;var n=ht(),e=Sr().f,t=n("metadata"),r=Function.prototype;return r[t]===void 0&&e(r,t,{value:null}),m8}var b8={},w8;function T0e(){return w8||(w8=1,uee()),b8}var E8={},S8;function R0e(){return S8||(S8=1,hee()),E8}var _8={},O8;function P0e(){if(O8)return _8;O8=1;var n=Ue();return n("metadata"),_8}var bS,T8;function x0e(){if(T8)return bS;T8=1;var n=mee();return O0e(),T0e(),R0e(),P0e(),bS=n,bS}var R8={},wS,P8;function dte(){if(P8)return wS;P8=1;var n=Cr(),e=ye(),t=n("Symbol"),r=t.keyFor,i=e(t.prototype.valueOf);return wS=t.isRegisteredSymbol||function(s){try{return r(i(s))!==void 0}catch{return!1}},wS}var x8;function $0e(){if(x8)return R8;x8=1;var n=te(),e=dte();return n({target:"Symbol",stat:!0},{isRegisteredSymbol:e}),R8}var $8={},ES,D8;function ute(){if(D8)return ES;D8=1;for(var n=ia(),e=Cr(),t=ye(),r=Ug(),i=ht(),o=e("Symbol"),s=o.isWellKnownSymbol,a=e("Object","getOwnPropertyNames"),g=t(o.prototype.valueOf),A=n("wks"),I=0,C=a(o),l=C.length;I<l;I++)try{var d=C[I];r(o[d])&&i(d)}catch{}return ES=function(h){if(s&&s(h))return!0;try{for(var v=g(h),f=0,c=a(A),b=c.length;f<b;f++)if(A[c[f]]==v)return!0}catch{}return!1},ES}var N8;function D0e(){if(N8)return $8;N8=1;var n=te(),e=ute();return n({target:"Symbol",stat:!0,forced:!0},{isWellKnownSymbol:e}),$8}var M8={},q8;function N0e(){if(q8)return M8;q8=1;var n=Ue();return n("customMatcher"),M8}var F8={},k8;function M0e(){if(k8)return F8;k8=1;var n=Ue();return n("observable"),F8}var B8={},z8;function q0e(){if(z8)return B8;z8=1;var n=te(),e=dte();return n({target:"Symbol",stat:!0,name:"isRegisteredSymbol"},{isRegistered:e}),B8}var j8={},L8;function F0e(){if(L8)return j8;L8=1;var n=te(),e=ute();return n({target:"Symbol",stat:!0,name:"isWellKnownSymbol",forced:!0},{isWellKnown:e}),j8}var G8={},W8;function k0e(){if(W8)return G8;W8=1;var n=Ue();return n("matcher"),G8}var V8={},Z8;function B0e(){if(Z8)return V8;Z8=1;var n=Ue();return n("metadataKey"),V8}var H8={},U8;function z0e(){if(U8)return H8;U8=1;var n=Ue();return n("patternMatch"),H8}var K8={},Y8;function j0e(){if(Y8)return K8;Y8=1;var n=Ue();return n("replaceAll"),K8}var SS,X8;function L0e(){if(X8)return SS;X8=1;var n=x0e();return $0e(),D0e(),N0e(),M0e(),q0e(),F0e(),k0e(),B0e(),z0e(),j0e(),SS=n,SS}var _S,Q8;function G0e(){return Q8||(Q8=1,_S=L0e()),_S}var W0e=G0e(),bA=se(W0e),OS,J8;function V0e(){if(J8)return OS;J8=1,Aa(),_R(),cee();var n=XI();return OS=n.f("iterator"),OS}var TS,e9;function Z0e(){if(e9)return TS;e9=1;var n=V0e();return Ia(),TS=n,TS}var RS,t9;function H0e(){if(t9)return RS;t9=1;var n=Z0e();return RS=n,RS}var PS,r9;function U0e(){if(r9)return PS;r9=1;var n=H0e();return PS=n,PS}var xS,i9;function K0e(){return i9||(i9=1,xS=U0e()),xS}var Y0e=K0e(),X0e=se(Y0e);function sg(n){"@babel/helpers - typeof";return sg=typeof bA=="function"&&typeof X0e=="symbol"?function(e){return typeof e}:function(e){return e&&typeof bA=="function"&&e.constructor===bA&&e!==bA.prototype?"symbol":typeof e},sg(n)}var $S,n9;function Q0e(){if(n9)return $S;n9=1,fee();var n=XI();return $S=n.f("toPrimitive"),$S}var DS,o9;function J0e(){if(o9)return DS;o9=1;var n=Q0e();return DS=n,DS}var NS,s9;function ewe(){if(s9)return NS;s9=1;var n=J0e();return NS=n,NS}var MS,a9;function twe(){if(a9)return MS;a9=1;var n=ewe();return MS=n,MS}var qS,g9;function rwe(){return g9||(g9=1,qS=twe()),qS}var iwe=rwe(),nwe=se(iwe);function owe(n,e){if(sg(n)!="object"||!n)return n;var t=n[nwe];if(t!==void 0){var r=t.call(n,e);if(sg(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function swe(n){var e=owe(n,"string");return sg(e)=="symbol"?e:e+""}function ci(n,e,t){return(e=swe(e))in n?_0e(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}var A9={},FS,I9;function awe(){if(I9)return FS;I9=1;var n=Ge(),e=pe(),t=ye(),r=_r(),i=bee().trim,o=CR(),s=t("".charAt),a=n.parseFloat,g=n.Symbol,A=g&&g.iterator,I=1/a(o+"-0")!==-1/0||A&&!e(function(){a(Object(A))});return FS=I?function(l){var d=i(r(l)),u=a(d);return u===0&&s(d,0)==="-"?-0:u}:a,FS}var C9;function gwe(){if(C9)return A9;C9=1;var n=te(),e=awe();return n({global:!0,forced:parseFloat!==e},{parseFloat:e}),A9}var kS,l9;function Awe(){if(l9)return kS;l9=1,gwe();var n=Re();return kS=n.parseFloat,kS}var BS,d9;function Iwe(){if(d9)return BS;d9=1;var n=Awe();return BS=n,BS}var zS,u9;function Cwe(){return u9||(u9=1,zS=Iwe()),zS}var lwe=Cwe(),hte=se(lwe),h9={},c9;function dwe(){if(c9)return h9;c9=1;var n=te(),e=pe(),t=sR().f,r=e(function(){return!Object.getOwnPropertyNames(1)});return n({target:"Object",stat:!0,forced:r},{getOwnPropertyNames:t}),h9}var jS,f9;function uwe(){if(f9)return jS;f9=1,dwe();var n=Re(),e=n.Object;return jS=function(r){return e.getOwnPropertyNames(r)},jS}var LS,p9;function hwe(){if(p9)return LS;p9=1;var n=uwe();return LS=n,LS}var GS,v9;function cwe(){return v9||(v9=1,GS=hwe()),GS}var fwe=cwe(),pwe=se(fwe),WS,m9;function vwe(){if(m9)return WS;m9=1,dee();var n=Re();return WS=n.Object.getOwnPropertySymbols,WS}var VS,y9;function mwe(){if(y9)return VS;y9=1;var n=vwe();return VS=n,VS}var ZS,b9;function ywe(){return b9||(b9=1,ZS=mwe()),ZS}var bwe=ywe(),hn=se(bwe),HS={exports:{}},w9={},E9;function wwe(){if(E9)return w9;E9=1;var n=te(),e=pe(),t=Hr(),r=WI().f,i=ot(),o=!i||e(function(){r(1)});return n({target:"Object",stat:!0,forced:o,sham:!i},{getOwnPropertyDescriptor:function(a,g){return r(t(a),g)}}),w9}var S9;function Ewe(){if(S9)return HS.exports;S9=1,wwe();var n=Re(),e=n.Object,t=HS.exports=function(i,o){return e.getOwnPropertyDescriptor(i,o)};return e.getOwnPropertyDescriptor.sham&&(t.sham=!0),HS.exports}var US,_9;function Swe(){if(_9)return US;_9=1;var n=Ewe();return US=n,US}var KS,O9;function _we(){return O9||(O9=1,KS=Swe()),KS}var Owe=_we(),_n=se(Owe),T9={},R9;function Twe(){if(R9)return T9;R9=1;var n=te(),e=ot(),t=Jve(),r=Hr(),i=WI(),o=UI();return n({target:"Object",stat:!0,sham:!e},{getOwnPropertyDescriptors:function(a){for(var g=r(a),A=i.f,I=t(g),C={},l=0,d,u;I.length>l;)u=A(g,d=I[l++]),u!==void 0&&o(C,d,u);return C}}),T9}var YS,P9;function Rwe(){if(P9)return YS;P9=1,Twe();var n=Re();return YS=n.Object.getOwnPropertyDescriptors,YS}var XS,x9;function Pwe(){if(x9)return XS;x9=1;var n=Rwe();return XS=n,XS}var QS,$9;function xwe(){return $9||($9=1,QS=Pwe()),QS}var $we=xwe(),cn=se($we),JS={exports:{}},D9={},N9;function Dwe(){if(N9)return D9;N9=1;var n=te(),e=ot(),t=oR().f;return n({target:"Object",stat:!0,forced:Object.defineProperties!==t,sham:!e},{defineProperties:t}),D9}var M9;function Nwe(){if(M9)return JS.exports;M9=1,Dwe();var n=Re(),e=n.Object,t=JS.exports=function(i,o){return e.defineProperties(i,o)};return e.defineProperties.sham&&(t.sham=!0),JS.exports}var e_,q9;function Mwe(){if(q9)return e_;q9=1;var n=Nwe();return e_=n,e_}var t_,F9;function qwe(){return F9||(F9=1,t_=Mwe()),t_}var Fwe=qwe(),nC=se(Fwe),r_,k9;function kwe(){return k9||(k9=1,r_=lte()),r_}var Bwe=kwe(),oC=se(Bwe);function TR(n,e){const t=["node","edge","label"];let r=!0;const i=Qi(e,"chosen");if(typeof i=="boolean")r=i;else if(typeof i=="object"){if(Oe(t).call(t,n)===-1)throw new Error("choosify: subOption '"+n+"' should be one of '"+t.join("', '")+"'");const o=Qi(e,["chosen",n]);(typeof o=="boolean"||typeof o=="function")&&(r=o)}return r}function FO(n,e,t){if(n.width<=0||n.height<=0)return!1;if(t!==void 0){const o={x:e.x-t.x,y:e.y-t.y};if(t.angle!==0){const s=-t.angle;e={x:Math.cos(s)*o.x-Math.sin(s)*o.y,y:Math.sin(s)*o.x+Math.cos(s)*o.y}}else e=o}const r=n.x+n.width,i=n.y+n.width;return n.left<e.x&&r>e.x&&n.top<e.y&&i>e.y}function iI(n){return typeof n=="string"&&n!==""}function cte(n,e,t,r){let i=r.x,o=r.y;if(typeof r.distanceToBorder=="function"){const s=r.distanceToBorder(n,e),a=Math.sin(e)*s,g=Math.cos(e)*s;g===s?(i+=s,o=r.y):a===s?(i=r.x,o-=s):(i+=g,o-=a)}else r.shape.width>r.shape.height?(i=r.x+r.shape.width*.5,o=r.y-t):(i=r.x+t,o=r.y-r.shape.height*.5);return{x:i,y:o}}var i_,B9;function zwe(){if(B9)return i_;B9=1,Aa();var n=Ft();return i_=n("Array","values"),i_}var n_,z9;function jwe(){if(z9)return n_;z9=1;var n=zwe();return n_=n,n_}var o_,j9;function Lwe(){if(j9)return o_;j9=1,Ia();var n=aa(),e=qt(),t=ut(),r=jwe(),i=Array.prototype,o={DOMTokenList:!0,NodeList:!0};return o_=function(s){var a=s.values;return s===i||t(i,s)&&a===i.values||e(o,n(s))?r:a},o_}var s_,L9;function Gwe(){return L9||(L9=1,s_=Lwe()),s_}var Wwe=Gwe(),fte=se(Wwe);class Vwe{constructor(e){this.measureText=e,this.current=0,this.width=0,this.height=0,this.lines=[]}_add(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"normal";this.lines[e]===void 0&&(this.lines[e]={width:0,height:0,blocks:[]});let i=t;(t===void 0||t==="")&&(i=" ");const o=this.measureText(i,r),s=At({},fte(o));s.text=t,s.width=o.width,s.mod=r,(t===void 0||t==="")&&(s.width=0),this.lines[e].blocks.push(s),this.lines[e].width+=s.width}curWidth(){const e=this.lines[this.current];return e===void 0?0:e.width}append(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"normal";this._add(this.current,e,t)}newLine(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"normal";this._add(this.current,e,t),this.current++}determineLineHeights(){for(let e=0;e<this.lines.length;e++){const t=this.lines[e];let r=0;if(t.blocks!==void 0)for(let i=0;i<t.blocks.length;i++){const o=t.blocks[i];r<o.height&&(r=o.height)}t.height=r}}determineLabelSize(){let e=0,t=0;for(let r=0;r<this.lines.length;r++){const i=this.lines[r];i.width>e&&(e=i.width),t+=i.height}this.width=e,this.height=t}removeEmptyBlocks(){const e=[];for(let t=0;t<this.lines.length;t++){const r=this.lines[t];if(r.blocks.length===0||t===this.lines.length-1&&r.width===0)continue;const i={};At(i,r),i.blocks=[];let o;const s=[];for(let a=0;a<r.blocks.length;a++){const g=r.blocks[a];g.width!==0?s.push(g):o===void 0&&(o=g)}s.length===0&&o!==void 0&&s.push(o),i.blocks=s,e.push(i)}return e}finalize(){this.determineLineHeights(),this.determineLabelSize();const e=this.removeEmptyBlocks();return{width:this.width,height:this.height,lines:e}}}const Zwe={"<b>":/<b>/,"<i>":/<i>/,"<code>":/<code>/,"</b>":/<\/b>/,"</i>":/<\/i>/,"</code>":/<\/code>/,"*":/\*/,_:/_/,"`":/`/,afterBold:/[^*]/,afterItal:/[^_]/,afterMono:/[^`]/};class G9{constructor(e){this.text=e,this.bold=!1,this.ital=!1,this.mono=!1,this.spacing=!1,this.position=0,this.buffer="",this.modStack=[],this.blocks=[]}mod(){return this.modStack.length===0?"normal":this.modStack[0]}modName(){if(this.modStack.length===0)return"normal";if(this.modStack[0]==="mono")return"mono";if(this.bold&&this.ital)return"boldital";if(this.bold)return"bold";if(this.ital)return"ital"}emitBlock(){this.spacing&&(this.add(" "),this.spacing=!1),this.buffer.length>0&&(this.blocks.push({text:this.buffer,mod:this.modName()}),this.buffer="")}add(e){e===" "&&(this.spacing=!0),this.spacing&&(this.buffer+=" ",this.spacing=!1),e!=" "&&(this.buffer+=e)}parseWS(e){return/[ \t]/.test(e)?(this.mono?this.add(e):this.spacing=!0,!0):!1}setTag(e){this.emitBlock(),this[e]=!0,this.modStack.unshift(e)}unsetTag(e){this.emitBlock(),this[e]=!1,this.modStack.shift()}parseStartTag(e,t){return!this.mono&&!this[e]&&this.match(t)?(this.setTag(e),!0):!1}match(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;const[r,i]=this.prepareRegExp(e),o=r.test(this.text.substr(this.position,i));return o&&t&&(this.position+=i-1),o}parseEndTag(e,t,r){let i=this.mod()===e;return e==="mono"?i=i&&this.mono:i=i&&!this.mono,i&&this.match(t)?(r!==void 0?(this.position===this.text.length-1||this.match(r,!1))&&this.unsetTag(e):this.unsetTag(e),!0):!1}replace(e,t){return this.match(e)?(this.add(t),this.position+=length-1,!0):!1}prepareRegExp(e){let t,r;if(e instanceof RegExp)r=e,t=1;else{const i=Zwe[e];i!==void 0?r=i:r=new RegExp(e),t=e.length}return[r,t]}}class Hwe{constructor(e,t,r,i){this.ctx=e,this.parent=t,this.selected=r,this.hover=i;const o=(s,a)=>{if(s===void 0)return 0;const g=this.parent.getFormattingValues(e,r,i,a);let A=0;return s!==""&&(A=this.ctx.measureText(s).width),{width:A,values:g}};this.lines=new Vwe(o)}process(e){if(!iI(e))return this.lines.finalize();const t=this.parent.fontOptions;e=e.replace(/\r\n/g,`
|
||
`),e=e.replace(/\r/g,`
|
||
`);const r=String(e).split(`
|
||
`),i=r.length;if(t.multi)for(let o=0;o<i;o++){const s=this.splitBlocks(r[o],t.multi);if(s!==void 0){if(s.length===0){this.lines.newLine("");continue}if(t.maxWdt>0)for(let a=0;a<s.length;a++){const g=s[a].mod,A=s[a].text;this.splitStringIntoLines(A,g,!0)}else for(let a=0;a<s.length;a++){const g=s[a].mod,A=s[a].text;this.lines.append(A,g)}this.lines.newLine()}}else if(t.maxWdt>0)for(let o=0;o<i;o++)this.splitStringIntoLines(r[o]);else for(let o=0;o<i;o++)this.lines.newLine(r[o]);return this.lines.finalize()}decodeMarkupSystem(e){let t="none";return e==="markdown"||e==="md"?t="markdown":(e===!0||e==="html")&&(t="html"),t}splitHtmlBlocks(e){const t=new G9(e),r=i=>/&/.test(i)?(t.replace(t.text,"<","<")||t.replace(t.text,"&","&")||t.add("&"),!0):!1;for(;t.position<t.text.length;){const i=t.text.charAt(t.position);t.parseWS(i)||/</.test(i)&&(t.parseStartTag("bold","<b>")||t.parseStartTag("ital","<i>")||t.parseStartTag("mono","<code>")||t.parseEndTag("bold","</b>")||t.parseEndTag("ital","</i>")||t.parseEndTag("mono","</code>"))||r(i)||t.add(i),t.position++}return t.emitBlock(),t.blocks}splitMarkdownBlocks(e){const t=new G9(e);let r=!0;const i=o=>/\\/.test(o)?(t.position<this.text.length+1&&(t.position++,o=this.text.charAt(t.position),/ \t/.test(o)?t.spacing=!0:(t.add(o),r=!1)),!0):!1;for(;t.position<t.text.length;){const o=t.text.charAt(t.position);t.parseWS(o)||i(o)||(r||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(o),r=!1),t.position++}return t.emitBlock(),t.blocks}splitBlocks(e,t){const r=this.decodeMarkupSystem(t);if(r==="none")return[{text:e,mod:"normal"}];if(r==="markdown")return this.splitMarkdownBlocks(e);if(r==="html")return this.splitHtmlBlocks(e)}overMaxWidth(e){const t=this.ctx.measureText(e).width;return this.lines.curWidth()+t>this.parent.fontOptions.maxWdt}getLongestFit(e){let t="",r=0;for(;r<e.length;){const o=t+(t===""?"":" ")+e[r];if(this.overMaxWidth(o))break;t=o,r++}return r}getLongestFitWord(e){let t=0;for(;t<e.length&&!this.overMaxWidth(Kr(e).call(e,0,t));)t++;return t}splitStringIntoLines(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"normal",r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.parent.getFormattingValues(this.ctx,this.selected,this.hover,t),e=e.replace(/^( +)/g,"$1\r"),e=e.replace(/([^\r][^ ]*)( +)/g,"$1\r$2\r");let i=e.split("\r");for(;i.length>0;){let o=this.getLongestFit(i);if(o===0){const s=i[0],a=this.getLongestFitWord(s);this.lines.newLine(Kr(s).call(s,0,a),t),i[0]=Kr(s).call(s,a)}else{let s=o;i[o-1]===" "?o--:i[s]===" "&&s++;const a=Kr(i).call(i,0,o).join("");o==i.length&&r?this.lines.append(a,t):this.lines.newLine(a,t),i=Kr(i).call(i,s)}}}}const Sa=["bold","ital","boldital","mono"];class gs{constructor(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;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=r}setOptions(e){if(this.elementOptions=e,this.initFontOptions(e.font),iI(e.label)?this.labelDirty=!0:e.label=void 0,e.font!==void 0&&e.font!==null){if(typeof e.font=="string")this.baseSize=this.fontOptions.size;else if(typeof e.font=="object"){const t=e.font.size;t!==void 0&&(this.baseSize=t)}}}initFontOptions(e){if(ue(Sa,t=>{this.fontOptions[t]={}}),gs.parseFontString(this.fontOptions,e)){this.fontOptions.vadjust=0;return}ue(e,(t,r)=>{t!=null&&typeof t!="object"&&(this.fontOptions[r]=t)})}static parseFontString(e,t){if(!t||typeof t!="string")return!1;const r=t.split(" ");return e.size=+r[0].replace("px",""),e.face=r[1],e.color=r[2],!0}constrain(e){const t={constrainWidth:!1,maxWdt:-1,minWdt:-1,constrainHeight:!1,minHgt:-1,valign:"middle"},r=Qi(e,"widthConstraint");if(typeof r=="number")t.maxWdt=Number(r),t.minWdt=Number(r);else if(typeof r=="object"){const o=Qi(e,["widthConstraint","maximum"]);typeof o=="number"&&(t.maxWdt=Number(o));const s=Qi(e,["widthConstraint","minimum"]);typeof s=="number"&&(t.minWdt=Number(s))}const i=Qi(e,"heightConstraint");if(typeof i=="number")t.minHgt=Number(i);else if(typeof i=="object"){const o=Qi(e,["heightConstraint","minimum"]);typeof o=="number"&&(t.minHgt=Number(o));const s=Qi(e,["heightConstraint","valign"]);typeof s=="string"&&(s==="top"||s==="bottom")&&(t.valign=s)}return t}update(e,t){this.setOptions(e,!0),this.propagateFonts(t),qe(this.fontOptions,this.constrain(t)),this.fontOptions.chooser=TR("label",t)}adjustSizes(e){const t=e?e.right+e.left:0;this.fontOptions.constrainWidth&&(this.fontOptions.maxWdt-=t,this.fontOptions.minWdt-=t);const r=e?e.top+e.bottom:0;this.fontOptions.constrainHeight&&(this.fontOptions.minHgt-=r)}addFontOptionsToPile(e,t){for(let r=0;r<t.length;++r)this.addFontToPile(e,t[r])}addFontToPile(e,t){if(t===void 0||t.font===void 0||t.font===null)return;const r=t.font;e.push(r)}getBasicOptions(e){const t={};for(let r=0;r<e.length;++r){let i=e[r];const o={};gs.parseFontString(o,i)&&(i=o),ue(i,(s,a)=>{s!==void 0&&(Object.prototype.hasOwnProperty.call(t,a)||(Oe(Sa).call(Sa,a)!==-1?t[a]={}:t[a]=s))})}return t}getFontOption(e,t,r){let i;for(let o=0;o<e.length;++o){const s=e[o];if(Object.prototype.hasOwnProperty.call(s,t)){if(i=s[t],i==null)continue;const a={};if(gs.parseFontString(a,i)&&(i=a),Object.prototype.hasOwnProperty.call(i,r))return i[r]}}if(Object.prototype.hasOwnProperty.call(this.fontOptions,r))return this.fontOptions[r];throw new Error("Did not find value for multi-font for property: '"+r+"'")}getFontOptions(e,t){const r={},i=["color","size","face","mod","vadjust"];for(let o=0;o<i.length;++o){const s=i[o];r[s]=this.getFontOption(e,t,s)}return r}propagateFonts(e){const t=[];this.addFontOptionsToPile(t,e),this.fontOptions=this.getBasicOptions(t);for(let r=0;r<Sa.length;++r){const i=Sa[r],o=this.fontOptions[i],s=this.getFontOptions(t,i);ue(s,(a,g)=>{o[g]=a}),o.size=Number(o.size),o.vadjust=Number(o.vadjust)}}draw(e,t,r,i,o){let s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:"middle";if(this.elementOptions.label===void 0)return;let a=this.fontOptions.size*this.body.view.scale;this.elementOptions.label&&a<this.elementOptions.scaling.label.drawThreshold-1||(a>=this.elementOptions.scaling.label.maxVisible&&(a=Number(this.elementOptions.scaling.label.maxVisible)/this.body.view.scale),this.calculateLabelSize(e,i,o,t,r,s),this._drawBackground(e),this._drawText(e,t,this.size.yLine,s,a))}_drawBackground(e){if(this.fontOptions.background!==void 0&&this.fontOptions.background!=="none"){e.fillStyle=this.fontOptions.background;const t=this.getSize();e.fillRect(t.left,t.top,t.width,t.height)}}_drawText(e,t,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"middle",o=arguments.length>4?arguments[4]:void 0;[t,r]=this._setAlignment(e,t,r,i),e.textAlign="left",t=t-this.size.width/2,this.fontOptions.valign&&this.size.height>this.size.labelHeight&&(this.fontOptions.valign==="top"&&(r-=(this.size.height-this.size.labelHeight)/2),this.fontOptions.valign==="bottom"&&(r+=(this.size.height-this.size.labelHeight)/2));for(let s=0;s<this.lineCount;s++){const a=this.lines[s];if(a&&a.blocks){let g=0;this.isEdgeLabel||this.fontOptions.align==="center"?g+=(this.size.width-a.width)/2:this.fontOptions.align==="right"&&(g+=this.size.width-a.width);for(let A=0;A<a.blocks.length;A++){const I=a.blocks[A];e.font=I.font;const[C,l]=this._getColor(I.color,o,I.strokeColor);I.strokeWidth>0&&(e.lineWidth=I.strokeWidth,e.strokeStyle=l,e.lineJoin="round"),e.fillStyle=C,I.strokeWidth>0&&e.strokeText(I.text,t+g,r+I.vadjust),e.fillText(I.text,t+g,r+I.vadjust),g+=I.width}r+=a.height}}}_setAlignment(e,t,r,i){if(this.isEdgeLabel&&this.fontOptions.align!=="horizontal"&&this.pointToSelf===!1){t=0,r=0;const o=2;this.fontOptions.align==="top"?(e.textBaseline="alphabetic",r-=2*o):this.fontOptions.align==="bottom"?(e.textBaseline="hanging",r+=2*o):e.textBaseline="middle"}else e.textBaseline=i;return[t,r]}_getColor(e,t,r){let i=e||"#000000",o=r||"#ffffff";if(t<=this.elementOptions.scaling.label.drawThreshold){const s=Math.max(0,Math.min(1,1-(this.elementOptions.scaling.label.drawThreshold-t)));i=cr(i,s),o=cr(o,s)}return[i,o]}getTextSize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;return this._processLabel(e,t,r),{width:this.size.width,height:this.size.height,lineCount:this.lineCount}}getSize(){let t=this.size.left,r=this.size.top-.5*2;if(this.isEdgeLabel){const o=-this.size.width*.5;switch(this.fontOptions.align){case"middle":t=o,r=-this.size.height*.5;break;case"top":t=o,r=-(this.size.height+2);break;case"bottom":t=o,r=2;break}}return{left:t,top:r,width:this.size.width,height:this.size.height}}calculateLabelSize(e,t,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:"middle";this._processLabel(e,t,r),this.size.left=i-this.size.width*.5,this.size.top=o-this.size.height*.5,this.size.yLine=o+(1-this.lineCount)*.5*this.fontOptions.size,s==="hanging"&&(this.size.top+=.5*this.fontOptions.size,this.size.top+=4,this.size.yLine+=4)}getFormattingValues(e,t,r,i){const o=function(g,A,I){return A==="normal"?I==="mod"?"":g[I]:g[A][I]!==void 0?g[A][I]:g[I]},s={color:o(this.fontOptions,i,"color"),size:o(this.fontOptions,i,"size"),face:o(this.fontOptions,i,"face"),mod:o(this.fontOptions,i,"mod"),vadjust:o(this.fontOptions,i,"vadjust"),strokeWidth:this.fontOptions.strokeWidth,strokeColor:this.fontOptions.strokeColor};(t||r)&&(i==="normal"&&this.fontOptions.chooser===!0&&this.elementOptions.labelHighlightBold?s.mod="bold":typeof this.fontOptions.chooser=="function"&&this.fontOptions.chooser(s,this.elementOptions.id,t,r));let a="";return s.mod!==void 0&&s.mod!==""&&(a+=s.mod+" "),a+=s.size+"px "+s.face,e.font=a.replace(/"/g,""),s.font=e.font,s.height=s.size,s}differentState(e,t){return e!==this.selectedState||t!==this.hoverState}_processLabelText(e,t,r,i){return new Hwe(e,this,t,r).process(i)}_processLabel(e,t,r){if(this.labelDirty===!1&&!this.differentState(t,r))return;const i=this._processLabelText(e,t,r,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=t,this.hoverState=r,this.labelDirty=!1}visible(){return!(this.size.width===0||this.size.height===0||this.elementOptions.label===void 0||this.fontOptions.size*this.body.view.scale<this.elementOptions.scaling.label.drawThreshold-1)}}class $o{constructor(e,t,r){this.body=t,this.labelModule=r,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}}setOptions(e){this.options=e}_setMargins(e){this.margin={},this.options.margin&&(typeof this.options.margin=="object"?(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)),e.adjustSizes(this.margin)}_distanceToBorder(e,t){const r=this.options.borderWidth;return e&&this.resize(e),Math.min(Math.abs(this.width/2/Math.cos(t)),Math.abs(this.height/2/Math.sin(t)))+r}enableShadow(e,t){t.shadow&&(e.shadowColor=t.shadowColor,e.shadowBlur=t.shadowSize,e.shadowOffsetX=t.shadowX,e.shadowOffsetY=t.shadowY)}disableShadow(e,t){t.shadow&&(e.shadowColor="rgba(0,0,0,0)",e.shadowBlur=0,e.shadowOffsetX=0,e.shadowOffsetY=0)}enableBorderDashes(e,t){if(t.borderDashes!==!1)if(e.setLineDash!==void 0){let r=t.borderDashes;r===!0&&(r=[5,15]),e.setLineDash(r)}else console.warn("setLineDash is not supported in this browser. The dashed borders cannot be used."),this.options.shapeProperties.borderDashes=!1,t.borderDashes=!1}disableBorderDashes(e,t){t.borderDashes!==!1&&(e.setLineDash!==void 0?e.setLineDash([0]):(console.warn("setLineDash is not supported in this browser. The dashed borders cannot be used."),this.options.shapeProperties.borderDashes=!1,t.borderDashes=!1))}needsRefresh(e,t){return this.refreshNeeded===!0?(this.refreshNeeded=!1,!0):this.width===void 0||this.labelModule.differentState(e,t)}initContextForDraw(e,t){const r=t.borderWidth/this.body.view.scale;e.lineWidth=Math.min(this.width,r),e.strokeStyle=t.borderColor,e.fillStyle=t.color}performStroke(e,t){const r=t.borderWidth/this.body.view.scale;e.save(),r>0&&(this.enableBorderDashes(e,t),e.stroke(),this.disableBorderDashes(e,t)),e.restore()}performFill(e,t){e.save(),e.fillStyle=t.color,this.enableShadow(e,t),tA(e).call(e),this.disableShadow(e,t),e.restore(),this.performStroke(e,t)}_addBoundingBoxMargin(e){this.boundingBox.left-=e,this.boundingBox.top-=e,this.boundingBox.bottom+=e,this.boundingBox.right+=e}_updateBoundingBox(e,t,r,i,o){r!==void 0&&this.resize(r,i,o),this.left=e-this.width/2,this.top=t-this.height/2,this.boundingBox.left=this.left,this.boundingBox.top=this.top,this.boundingBox.bottom=this.top+this.height,this.boundingBox.right=this.left+this.width}updateBoundingBox(e,t,r,i,o){this._updateBoundingBox(e,t,r,i,o)}getDimensionsFromLabel(e,t,r){this.textSize=this.labelModule.getTextSize(e,t,r);let i=this.textSize.width,o=this.textSize.height;const s=14;return i===0&&(i=s,o=s),{width:i,height:o}}}let Uwe=class extends $o{constructor(e,t,r){super(e,t,r),this._setMargins(r)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover;if(this.needsRefresh(t,r)){const i=this.getDimensionsFromLabel(e,t,r);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}}draw(e,t,r,i,o,s){this.resize(e,i,o),this.left=t-this.width/2,this.top=r-this.height/2,this.initContextForDraw(e,s),ree(e,this.left,this.top,this.width,this.height,s.borderRadius),this.performFill(e,s),this.updateBoundingBox(t,r,e,i,o),this.labelModule.draw(e,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,i,o)}updateBoundingBox(e,t,r,i,o){this._updateBoundingBox(e,t,r,i,o);const s=this.options.shapeProperties.borderRadius;this._addBoundingBoxMargin(s)}distanceToBorder(e,t){e&&this.resize(e);const r=this.options.borderWidth;return Math.min(Math.abs(this.width/2/Math.cos(t)),Math.abs(this.height/2/Math.sin(t)))+r}};class RR extends $o{constructor(e,t,r){super(e,t,r),this.labelOffset=0,this.selected=!1}setOptions(e,t,r){this.options=e,t===void 0&&r===void 0||this.setImages(t,r)}setImages(e,t){t&&this.selected?(this.imageObj=t,this.imageObjAlt=e):(this.imageObj=e,this.imageObjAlt=t)}switchImages(e){const t=e&&!this.selected||!e&&this.selected;if(this.selected=e,this.imageObjAlt!==void 0&&t){const r=this.imageObj;this.imageObj=this.imageObjAlt,this.imageObjAlt=r}}_getImagePadding(){const e={top:0,right:0,bottom:0,left:0};if(this.options.imagePadding){const t=this.options.imagePadding;typeof t=="object"?(e.top=t.top,e.right=t.right,e.bottom=t.bottom,e.left=t.left):(e.top=t,e.right=t,e.bottom=t,e.left=t)}return e}_resizeImage(){let e,t;if(this.options.shapeProperties.useImageSize===!1){let r=1,i=1;this.imageObj.width&&this.imageObj.height&&(this.imageObj.width>this.imageObj.height?r=this.imageObj.width/this.imageObj.height:i=this.imageObj.height/this.imageObj.width),e=this.options.size*2*r,t=this.options.size*2*i}else{const r=this._getImagePadding();e=this.imageObj.width+r.left+r.right,t=this.imageObj.height+r.top+r.bottom}this.width=e,this.height=t,this.radius=.5*this.width}_drawRawCircle(e,t,r,i){this.initContextForDraw(e,i),rR(e,t,r,i.size),this.performFill(e,i)}_drawImageAtPosition(e,t){if(this.imageObj.width!=0){e.globalAlpha=t.opacity!==void 0?t.opacity:1,this.enableShadow(e,t);let r=1;this.options.shapeProperties.interpolation===!0&&(r=this.imageObj.width/this.width/this.body.view.scale);const i=this._getImagePadding(),o=this.left+i.left,s=this.top+i.top,a=this.width-i.left-i.right,g=this.height-i.top-i.bottom;this.imageObj.drawImageAtPosition(e,r,o,s,a,g),this.disableShadow(e,t)}}_drawImageLabel(e,t,r,i,o){let s=0;if(this.height!==void 0){s=this.height*.5;const g=this.labelModule.getTextSize(e,i,o);g.lineCount>=1&&(s+=g.height/2)}const a=r+s;this.options.label&&(this.labelOffset=s),this.labelModule.draw(e,t,a,i,o,"hanging")}}let Kwe=class extends RR{constructor(e,t,r){super(e,t,r),this._setMargins(r)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover;if(this.needsRefresh(t,r)){const i=this.getDimensionsFromLabel(e,t,r),o=Math.max(i.width+this.margin.right+this.margin.left,i.height+this.margin.top+this.margin.bottom);this.options.size=o/2,this.width=o,this.height=o,this.radius=this.width/2}}draw(e,t,r,i,o,s){this.resize(e,i,o),this.left=t-this.width/2,this.top=r-this.height/2,this._drawRawCircle(e,t,r,s),this.updateBoundingBox(t,r),this.labelModule.draw(e,this.left+this.textSize.width/2+this.margin.left,r,i,o)}updateBoundingBox(e,t){this.boundingBox.top=t-this.options.size,this.boundingBox.left=e-this.options.size,this.boundingBox.right=e+this.options.size,this.boundingBox.bottom=t+this.options.size}distanceToBorder(e){return e&&this.resize(e),this.width*.5}};class Ywe extends RR{constructor(e,t,r,i,o){super(e,t,r),this.setImages(i,o)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover;if(this.imageObj.src===void 0||this.imageObj.width===void 0||this.imageObj.height===void 0){const o=this.options.size*2;this.width=o,this.height=o,this.radius=.5*this.width;return}this.needsRefresh(t,r)&&this._resizeImage()}draw(e,t,r,i,o,s){this.switchImages(i),this.resize();let a=t,g=r;this.options.shapeProperties.coordinateOrigin==="top-left"?(this.left=t,this.top=r,a+=this.width/2,g+=this.height/2):(this.left=t-this.width/2,this.top=r-this.height/2),this._drawRawCircle(e,a,g,s),e.save(),e.clip(),this._drawImageAtPosition(e,s),e.restore(),this._drawImageLabel(e,a,g,i,o),this.updateBoundingBox(t,r)}updateBoundingBox(e,t){this.options.shapeProperties.coordinateOrigin==="top-left"?(this.boundingBox.top=t,this.boundingBox.left=e,this.boundingBox.right=e+this.options.size*2,this.boundingBox.bottom=t+this.options.size*2):(this.boundingBox.top=t-this.options.size,this.boundingBox.left=e-this.options.size,this.boundingBox.right=e+this.options.size,this.boundingBox.bottom=t+this.options.size),this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset)}distanceToBorder(e){return e&&this.resize(e),this.width*.5}}class On extends $o{constructor(e,t,r){super(e,t,r)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{size:this.options.size};if(this.needsRefresh(t,r)){var o,s;this.labelModule.getTextSize(e,t,r);const a=2*i.size;this.width=(o=this.customSizeWidth)!==null&&o!==void 0?o:a,this.height=(s=this.customSizeHeight)!==null&&s!==void 0?s:a,this.radius=.5*this.width}}_drawShape(e,t,r,i,o,s,a,g){return this.resize(e,s,a,g),this.left=i-this.width/2,this.top=o-this.height/2,this.initContextForDraw(e,g),lve(t)(e,i,o,g.size),this.performFill(e,g),this.options.icon!==void 0&&this.options.icon.code!==void 0&&(e.font=(s?"bold ":"")+this.height/2+"px "+(this.options.icon.face||"FontAwesome"),e.fillStyle=this.options.icon.color||"black",e.textAlign="center",e.textBaseline="middle",e.fillText(this.options.icon.code,i,o)),{drawExternalLabel:()=>{if(this.options.label!==void 0){this.labelModule.calculateLabelSize(e,s,a,i,o,"hanging");const A=o+.5*this.height+.5*this.labelModule.size.height;this.labelModule.draw(e,i,A,s,a,"hanging")}this.updateBoundingBox(i,o)}}}updateBoundingBox(e,t){this.boundingBox.top=t-this.options.size,this.boundingBox.left=e-this.options.size,this.boundingBox.right=e+this.options.size,this.boundingBox.bottom=t+this.options.size,this.options.label!==void 0&&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))}}function W9(n,e){var t=Xe(n);if(hn){var r=hn(n);e&&(r=Qt(r).call(r,function(i){return _n(n,i).enumerable})),t.push.apply(t,r)}return t}function Xwe(n){for(var e=1;e<arguments.length;e++){var t,r,i=arguments[e]!=null?arguments[e]:{};e%2?xe(t=W9(Object(i),!0)).call(t,function(o){ci(n,o,i[o])}):cn?nC(n,cn(i)):xe(r=W9(Object(i))).call(r,function(o){oC(n,o,_n(i,o))})}return n}class Qwe extends On{constructor(e,t,r,i){super(e,t,r,i),this.ctxRenderer=i}draw(e,t,r,i,o,s){this.resize(e,i,o,s),this.left=t-this.width/2,this.top=r-this.height/2,e.save();const a=this.ctxRenderer({ctx:e,id:this.options.id,x:t,y:r,state:{selected:i,hover:o},style:Xwe({},s),label:this.options.label});if(a.drawNode!=null&&a.drawNode(),e.restore(),a.drawExternalLabel){const g=a.drawExternalLabel;a.drawExternalLabel=()=>{e.save(),g(),e.restore()}}return a.nodeDimensions&&(this.customSizeWidth=a.nodeDimensions.width,this.customSizeHeight=a.nodeDimensions.height),a}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}class Jwe extends $o{constructor(e,t,r){super(e,t,r),this._setMargins(r)}resize(e,t,r){if(this.needsRefresh(t,r)){const o=this.getDimensionsFromLabel(e,t,r).width+this.margin.right+this.margin.left;this.width=o,this.height=o,this.radius=this.width/2}}draw(e,t,r,i,o,s){this.resize(e,i,o),this.left=t-this.width/2,this.top=r-this.height/2,this.initContextForDraw(e,s),iee(e,t-this.width/2,r-this.height/2,this.width,this.height),this.performFill(e,s),this.updateBoundingBox(t,r,e,i,o),this.labelModule.draw(e,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,i,o)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}let eEe=class extends On{constructor(e,t,r){super(e,t,r)}draw(e,t,r,i,o,s){return this._drawShape(e,"diamond",4,t,r,i,o,s)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}};class tEe extends On{constructor(e,t,r){super(e,t,r)}draw(e,t,r,i,o,s){return this._drawShape(e,"circle",2,t,r,i,o,s)}distanceToBorder(e){return e&&this.resize(e),this.options.size}}class V9 extends $o{constructor(e,t,r){super(e,t,r)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover;if(this.needsRefresh(t,r)){const i=this.getDimensionsFromLabel(e,t,r);this.height=i.height*2,this.width=i.width+i.height,this.radius=.5*this.width}}draw(e,t,r,i,o,s){this.resize(e,i,o),this.left=t-this.width*.5,this.top=r-this.height*.5,this.initContextForDraw(e,s),OO(e,this.left,this.top,this.width,this.height),this.performFill(e,s),this.updateBoundingBox(t,r,e,i,o),this.labelModule.draw(e,t,r,i,o)}distanceToBorder(e,t){e&&this.resize(e);const r=this.width*.5,i=this.height*.5,o=Math.sin(t)*r,s=Math.cos(t)*i;return r*i/Math.sqrt(o*o+s*s)}}class rEe extends $o{constructor(e,t,r){super(e,t,r),this._setMargins(r)}resize(e,t,r){this.needsRefresh(t,r)&&(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)}draw(e,t,r,i,o,s){return this.resize(e,i,o),this.options.icon.size=this.options.icon.size||50,this.left=t-this.width/2,this.top=r-this.height/2,this._icon(e,t,r,i,o,s),{drawExternalLabel:()=>{this.options.label!==void 0&&this.labelModule.draw(e,this.left+this.iconSize.width/2+this.margin.left,r+this.height/2+5,i),this.updateBoundingBox(t,r)}}}updateBoundingBox(e,t){this.boundingBox.top=t-this.options.icon.size*.5,this.boundingBox.left=e-this.options.icon.size*.5,this.boundingBox.right=e+this.options.icon.size*.5,this.boundingBox.bottom=t+this.options.icon.size*.5,this.options.label!==void 0&&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))}_icon(e,t,r,i,o,s){const a=Number(this.options.icon.size);this.options.icon.code!==void 0?(e.font=[this.options.icon.weight!=null?this.options.icon.weight:i?"bold":"",(this.options.icon.weight!=null&&i?5:0)+a+"px",this.options.icon.face].join(" "),e.fillStyle=this.options.icon.color||"black",e.textAlign="center",e.textBaseline="middle",this.enableShadow(e,s),e.fillText(this.options.icon.code,t,r),this.disableShadow(e,s)):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.")}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}let iEe=class extends RR{constructor(e,t,r,i,o){super(e,t,r),this.setImages(i,o)}resize(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.selected,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.hover;if(this.imageObj.src===void 0||this.imageObj.width===void 0||this.imageObj.height===void 0){const o=this.options.size*2;this.width=o,this.height=o;return}this.needsRefresh(t,r)&&this._resizeImage()}draw(e,t,r,i,o,s){e.save(),this.switchImages(i),this.resize();let a=t,g=r;if(this.options.shapeProperties.coordinateOrigin==="top-left"?(this.left=t,this.top=r,a+=this.width/2,g+=this.height/2):(this.left=t-this.width/2,this.top=r-this.height/2),this.options.shapeProperties.useBorderWithImage===!0){const A=this.options.borderWidth,I=this.options.borderWidthSelected||2*this.options.borderWidth,C=(i?I:A)/this.body.view.scale;e.lineWidth=Math.min(this.width,C),e.beginPath();let l=i?this.options.color.highlight.border:o?this.options.color.hover.border:this.options.color.border,d=i?this.options.color.highlight.background:o?this.options.color.hover.background:this.options.color.background;s.opacity!==void 0&&(l=cr(l,s.opacity),d=cr(d,s.opacity)),e.strokeStyle=l,e.fillStyle=d,e.rect(this.left-.5*e.lineWidth,this.top-.5*e.lineWidth,this.width+e.lineWidth,this.height+e.lineWidth),tA(e).call(e),this.performStroke(e,s),e.closePath()}this._drawImageAtPosition(e,s),this._drawImageLabel(e,a,g,i,o),this.updateBoundingBox(t,r),e.restore()}updateBoundingBox(e,t){this.resize(),this.options.shapeProperties.coordinateOrigin==="top-left"?(this.left=e,this.top=t):(this.left=e-this.width/2,this.top=t-this.height/2),this.boundingBox.left=this.left,this.boundingBox.top=this.top,this.boundingBox.bottom=this.top+this.height,this.boundingBox.right=this.left+this.width,this.options.label!==void 0&&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))}distanceToBorder(e,t){return this._distanceToBorder(e,t)}};class nEe extends On{constructor(e,t,r){super(e,t,r)}draw(e,t,r,i,o,s){return this._drawShape(e,"square",2,t,r,i,o,s)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}class oEe extends On{constructor(e,t,r){super(e,t,r)}draw(e,t,r,i,o,s){return this._drawShape(e,"hexagon",4,t,r,i,o,s)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}class sEe extends On{constructor(e,t,r){super(e,t,r)}draw(e,t,r,i,o,s){return this._drawShape(e,"star",4,t,r,i,o,s)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}class aEe extends $o{constructor(e,t,r){super(e,t,r),this._setMargins(r)}resize(e,t,r){this.needsRefresh(t,r)&&(this.textSize=this.labelModule.getTextSize(e,t,r),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)}draw(e,t,r,i,o,s){this.resize(e,i,o),this.left=t-this.width/2,this.top=r-this.height/2,this.enableShadow(e,s),this.labelModule.draw(e,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,i,o),this.disableShadow(e,s),this.updateBoundingBox(t,r,e,i,o)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}let gEe=class extends On{constructor(e,t,r){super(e,t,r)}draw(e,t,r,i,o,s){return this._drawShape(e,"triangle",3,t,r,i,o,s)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}};class AEe extends On{constructor(e,t,r){super(e,t,r)}draw(e,t,r,i,o,s){return this._drawShape(e,"triangleDown",3,t,r,i,o,s)}distanceToBorder(e,t){return this._distanceToBorder(e,t)}}function Z9(n,e){var t=Xe(n);if(hn){var r=hn(n);e&&(r=Qt(r).call(r,function(i){return _n(n,i).enumerable})),t.push.apply(t,r)}return t}function H9(n){for(var e=1;e<arguments.length;e++){var t,r,i=arguments[e]!=null?arguments[e]:{};e%2?xe(t=Z9(Object(i),!0)).call(t,function(o){ci(n,o,i[o])}):cn?nC(n,cn(i)):xe(r=Z9(Object(i))).call(r,function(o){oC(n,o,_n(i,o))})}return n}class je{constructor(e,t,r,i,o,s){this.options=Cn(o),this.globalOptions=o,this.defaultOptions=s,this.body=t,this.edges=[],this.id=void 0,this.imagelist=r,this.grouplist=i,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 gs(this.body,this.options,!1),this.setOptions(e)}attachEdge(e){var t;Oe(t=this.edges).call(t,e)===-1&&this.edges.push(e)}detachEdge(e){var t;const r=Oe(t=this.edges).call(t,e);if(r!=-1){var i;Ei(i=this.edges).call(i,r,1)}}setOptions(e){const t=this.options.shape;if(!e)return;if(typeof e.color<"u"&&(this._localColor=e.color),e.id!==void 0&&(this.id=e.id),this.id===void 0)throw new Error("Node must have an id");je.checkMass(e,this.id),e.x!==void 0&&(e.x===null?(this.x=void 0,this.predefinedPosition=!1):(this.x=Br(e.x),this.predefinedPosition=!0)),e.y!==void 0&&(e.y===null?(this.y=void 0,this.predefinedPosition=!1):(this.y=Br(e.y),this.predefinedPosition=!0)),e.size!==void 0&&(this.baseSize=e.size),e.value!==void 0&&(e.value=hte(e.value)),je.parseOptions(this.options,e,!0,this.globalOptions,this.grouplist);const r=[e,this.options,this.defaultOptions];return this.chooser=TR("node",r),this._load_images(),this.updateLabelModule(e),e.opacity!==void 0&&je.checkOpacity(e.opacity)&&(this.options.opacity=e.opacity),this.updateShape(t),e.hidden!==void 0||e.physics!==void 0}_load_images(){if((this.options.shape==="circularImage"||this.options.shape==="image")&&this.options.image===void 0)throw new Error("Option image must be defined for node type '"+this.options.shape+"'");if(this.options.image!==void 0){if(this.imagelist===void 0)throw new Error("Internal Error: No images provided");if(typeof this.options.image=="string")this.imageObj=this.imagelist.load(this.options.image,this.options.brokenImage,this.id);else{if(this.options.image.unselected===void 0)throw new Error("No unselected image provided");this.imageObj=this.imagelist.load(this.options.image.unselected,this.options.brokenImage,this.id),this.options.image.selected!==void 0?this.imageObjAlt=this.imagelist.load(this.options.image.selected,this.options.brokenImage,this.id):this.imageObjAlt=void 0}}}static checkOpacity(e){return 0<=e&&e<=1}static checkCoordinateOrigin(e){return e===void 0||e==="center"||e==="top-left"}static updateGroupOptions(e,t,r){var i;if(r===void 0)return;const o=e.group;if(t!==void 0&&t.group!==void 0&&o!==t.group)throw new Error("updateGroupOptions: group values in options don't match.");if(!(typeof o=="number"||typeof o=="string"&&o!=""))return;const a=r.get(o);a.opacity!==void 0&&t.opacity===void 0&&(je.checkOpacity(a.opacity)||(console.error("Invalid option for node opacity. Value must be between 0 and 1, found: "+a.opacity),a.opacity=void 0));const g=Qt(i=pwe(t)).call(i,A=>t[A]!=null);g.push("font"),tI(g,e,a),e.color=$O(e.color)}static parseOptions(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},o=arguments.length>4?arguments[4]:void 0;if(tI(["color","fixed","shadow"],e,t,r),je.checkMass(t),e.opacity!==void 0&&(je.checkOpacity(e.opacity)||(console.error("Invalid option for node opacity. Value must be between 0 and 1, found: "+e.opacity),e.opacity=void 0)),t.opacity!==void 0&&(je.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&&!je.checkCoordinateOrigin(t.shapeProperties.coordinateOrigin)&&console.error("Invalid option for node coordinateOrigin, found: "+t.shapeProperties.coordinateOrigin),ur(e,t,"shadow",i),t.color!==void 0&&t.color!==null){const a=$O(t.color);Yee(e.color,a)}else r===!0&&t.color===null&&(e.color=Cn(i.color));t.fixed!==void 0&&t.fixed!==null&&(typeof t.fixed=="boolean"?(e.fixed.x=t.fixed,e.fixed.y=t.fixed):(t.fixed.x!==void 0&&typeof t.fixed.x=="boolean"&&(e.fixed.x=t.fixed.x),t.fixed.y!==void 0&&typeof t.fixed.y=="boolean"&&(e.fixed.y=t.fixed.y))),r===!0&&t.font===null&&(e.font=Cn(i.font)),je.updateGroupOptions(e,t,o),t.scaling!==void 0&&ur(e.scaling,t.scaling,"label",i.scaling)}getFormattingValues(){const e={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?this.chooser===!0?this.selected?(this.options.borderWidthSelected!=null?e.borderWidth=this.options.borderWidthSelected:e.borderWidth*=2,e.color=this.options.color.highlight.background,e.borderColor=this.options.color.highlight.border,e.shadow=this.options.shadow.enabled):this.hover&&(e.color=this.options.color.hover.background,e.borderColor=this.options.color.hover.border,e.shadow=this.options.shadow.enabled):typeof this.chooser=="function"&&(this.chooser(e,this.options.id,this.selected,this.hover),e.shadow===!1&&(e.shadowColor!==this.options.shadow.color||e.shadowSize!==this.options.shadow.size||e.shadowX!==this.options.shadow.x||e.shadowY!==this.options.shadow.y)&&(e.shadow=!0)):e.shadow=this.options.shadow.enabled,this.options.opacity!==void 0){const t=this.options.opacity;e.borderColor=cr(e.borderColor,t),e.color=cr(e.color,t),e.shadowColor=cr(e.shadowColor,t)}return e}updateLabelModule(e){(this.options.label===void 0||this.options.label===null)&&(this.options.label=""),je.updateGroupOptions(this.options,H9(H9({},e),{},{color:e&&e.color||this._localColor||void 0}),this.grouplist);const t=this.grouplist.get(this.options.group,!1),r=[e,this.options,t,this.globalOptions,this.defaultOptions];this.labelModule.update(this.options,r),this.labelModule.baseSize!==void 0&&(this.baseFontSize=this.labelModule.baseSize)}updateShape(e){if(e===this.options.shape&&this.shape)this.shape.setOptions(this.options,this.imageObj,this.imageObjAlt);else switch(this.options.shape){case"box":this.shape=new Uwe(this.options,this.body,this.labelModule);break;case"circle":this.shape=new Kwe(this.options,this.body,this.labelModule);break;case"circularImage":this.shape=new Ywe(this.options,this.body,this.labelModule,this.imageObj,this.imageObjAlt);break;case"custom":this.shape=new Qwe(this.options,this.body,this.labelModule,this.options.ctxRenderer);break;case"database":this.shape=new Jwe(this.options,this.body,this.labelModule);break;case"diamond":this.shape=new eEe(this.options,this.body,this.labelModule);break;case"dot":this.shape=new tEe(this.options,this.body,this.labelModule);break;case"ellipse":this.shape=new V9(this.options,this.body,this.labelModule);break;case"icon":this.shape=new rEe(this.options,this.body,this.labelModule);break;case"image":this.shape=new iEe(this.options,this.body,this.labelModule,this.imageObj,this.imageObjAlt);break;case"square":this.shape=new nEe(this.options,this.body,this.labelModule);break;case"hexagon":this.shape=new oEe(this.options,this.body,this.labelModule);break;case"star":this.shape=new sEe(this.options,this.body,this.labelModule);break;case"text":this.shape=new aEe(this.options,this.body,this.labelModule);break;case"triangle":this.shape=new gEe(this.options,this.body,this.labelModule);break;case"triangleDown":this.shape=new AEe(this.options,this.body,this.labelModule);break;default:this.shape=new V9(this.options,this.body,this.labelModule);break}this.needsRefresh()}select(){this.selected=!0,this.needsRefresh()}unselect(){this.selected=!1,this.needsRefresh()}needsRefresh(){this.shape.refreshNeeded=!0}getTitle(){return this.options.title}distanceToBorder(e,t){return this.shape.distanceToBorder(e,t)}isFixed(){return this.options.fixed.x&&this.options.fixed.y}isSelected(){return this.selected}getValue(){return this.options.value}getLabelSize(){return this.labelModule.size()}setValueRange(e,t,r){if(this.options.value!==void 0){const i=this.options.scaling.customScalingFunction(e,t,r,this.options.value),o=this.options.scaling.max-this.options.scaling.min;if(this.options.scaling.label.enabled===!0){const s=this.options.scaling.label.max-this.options.scaling.label.min;this.options.font.size=this.options.scaling.label.min+i*s}this.options.size=this.options.scaling.min+i*o}else this.options.size=this.baseSize,this.options.font.size=this.baseFontSize;this.updateLabelModule()}draw(e){const t=this.getFormattingValues();return this.shape.draw(e,this.x,this.y,this.selected,this.hover,t)||{}}updateBoundingBox(e){this.shape.updateBoundingBox(this.x,this.y,e)}resize(e){const t=this.getFormattingValues();this.shape.resize(e,this.selected,this.hover,t)}getItemsOnPoint(e){const t=[];return this.labelModule.visible()&&FO(this.labelModule.getSize(),e)&&t.push({nodeId:this.id,labelId:0}),FO(this.shape.boundingBox,e)&&t.push({nodeId:this.id}),t}isOverlappingWith(e){return this.shape.left<e.right&&this.shape.left+this.shape.width>e.left&&this.shape.top<e.bottom&&this.shape.top+this.shape.height>e.top}isBoundingBoxOverlappingWith(e){return this.shape.boundingBox.left<e.right&&this.shape.boundingBox.right>e.left&&this.shape.boundingBox.top<e.bottom&&this.shape.boundingBox.bottom>e.top}static checkMass(e,t){if(e.mass!==void 0&&e.mass<=0){let r="";t!==void 0&&(r=" in node id: "+t),console.error("%cNegative or zero mass disallowed"+r+", setting mass to 1.",ete),e.mass=1}}}class IEe{constructor(e,t,r,i){var o;if(this.body=e,this.images=t,this.groups=r,this.layoutEngine=i,this.body.functions.createNode=j(o=this.create).call(o,this),this.nodesListeners={add:(s,a)=>{this.add(a.items)},update:(s,a)=>{this.update(a.items,a.data,a.oldData)},remove:(s,a)=>{this.remove(a.items)}},this.defaultOptions={borderWidth:1,borderWidthSelected:void 0,brokenImage:void 0,color:{border:"#2B7CE9",background:"#97C2FC",highlight:{border:"#2B7CE9",background:"#D2E5FF"},hover:{border:"#2B7CE9",background:"#D2E5FF"}},opacity:void 0,fixed:{x:!1,y:!1},font:{color:"#343434",size:14,face:"arial",background:"none",strokeWidth:0,strokeColor:"#ffffff",align:"center",vadjust:0,multi:!1,bold:{mod:"bold"},boldital:{mod:"bold italic"},ital:{mod:"italic"},mono:{mod:"",size:15,face:"monospace",vadjust:2}},group:void 0,hidden:!1,icon:{face:"FontAwesome",code:void 0,size:50,color:"#2B7CE9"},image:void 0,imagePadding:{top:0,right:0,bottom:0,left:0},label:void 0,labelHighlightBold:!0,level:void 0,margin:{top:5,right:5,bottom:5,left:5},mass:1,physics:!0,scaling:{min:10,max:30,label:{enabled:!1,min:14,max:30,maxVisible:30,drawThreshold:5},customScalingFunction:function(s,a,g,A){if(a===s)return .5;{const I=1/(a-s);return Math.max(0,(A-s)*I)}}},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=Cn(this.defaultOptions),this.bindEventListeners()}bindEventListeners(){var e,t;this.body.emitter.on("refreshNodes",j(e=this.refresh).call(e,this)),this.body.emitter.on("refresh",j(t=this.refresh).call(t,this)),this.body.emitter.on("destroy",()=>{ue(this.nodesListeners,(r,i)=>{this.body.data.nodes&&this.body.data.nodes.off(i,r)}),delete this.body.functions.createNode,delete this.nodesListeners.add,delete this.nodesListeners.update,delete this.nodesListeners.remove,delete this.nodesListeners})}setOptions(e){if(e!==void 0){if(je.parseOptions(this.options,e),e.opacity!==void 0&&(qO(e.opacity)||!kn(e.opacity)||e.opacity<0||e.opacity>1?console.error("Invalid option for node opacity. Value must be between 0 and 1, found: "+e.opacity):this.options.opacity=e.opacity),e.shape!==void 0)for(const t in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,t)&&this.body.nodes[t].updateShape();if(typeof e.font<"u"||typeof e.widthConstraint<"u"||typeof e.heightConstraint<"u")for(const t of Xe(this.body.nodes))this.body.nodes[t].updateLabelModule(),this.body.nodes[t].needsRefresh();if(e.size!==void 0)for(const t in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,t)&&this.body.nodes[t].needsRefresh();(e.hidden!==void 0||e.physics!==void 0)&&this.body.emitter.emit("_dataChanged")}}setData(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;const r=this.body.data.nodes;if(UJ("id",e))this.body.data.nodes=e;else if(Qe(e))this.body.data.nodes=new YA,this.body.data.nodes.add(e);else if(!e)this.body.data.nodes=new YA;else throw new TypeError("Array or DataSet expected");if(r&&ue(this.nodesListeners,function(i,o){r.off(o,i)}),this.body.nodes={},this.body.data.nodes){const i=this;ue(this.nodesListeners,function(s,a){i.body.data.nodes.on(a,s)});const o=this.body.data.nodes.getIds();this.add(o,!0)}t===!1&&this.body.emitter.emit("_dataChanged")}add(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r;const i=[];for(let o=0;o<e.length;o++){r=e[o];const s=this.body.data.nodes.get(r),a=this.create(s);i.push(a),this.body.nodes[r]=a}this.layoutEngine.positionInitially(i),t===!1&&this.body.emitter.emit("_dataChanged")}update(e,t,r){const i=this.body.nodes;let o=!1;for(let s=0;s<e.length;s++){const a=e[s];let g=i[a];const A=t[s];g!==void 0?g.setOptions(A)&&(o=!0):(o=!0,g=this.create(A),i[a]=g)}!o&&r!==void 0&&(o=v0e(t).call(t,function(s,a){const g=r[a];return g&&g.level!==s.level})),o===!0?this.body.emitter.emit("_dataChanged"):this.body.emitter.emit("_dataUpdated")}remove(e){const t=this.body.nodes;for(let r=0;r<e.length;r++){const i=e[r];delete t[i]}this.body.emitter.emit("_dataChanged")}create(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:je;return new t(e,this.body,this.images,this.groups,this.options,this.defaultOptions)}refresh(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;ue(this.body.nodes,(t,r)=>{const i=this.body.data.nodes.get(r);i!==void 0&&(e===!0&&t.setOptions({x:null,y:null}),t.setOptions({fixed:!1}),t.setOptions(i))})}getPositions(e){const t={};if(e!==void 0){if(Qe(e)===!0){for(let r=0;r<e.length;r++)if(this.body.nodes[e[r]]!==void 0){const i=this.body.nodes[e[r]];t[e[r]]={x:Math.round(i.x),y:Math.round(i.y)}}}else if(this.body.nodes[e]!==void 0){const r=this.body.nodes[e];t[e]={x:Math.round(r.x),y:Math.round(r.y)}}}else for(let r=0;r<this.body.nodeIndices.length;r++){const i=this.body.nodes[this.body.nodeIndices[r]];t[this.body.nodeIndices[r]]={x:Math.round(i.x),y:Math.round(i.y)}}return t}getPosition(e){if(e==null)throw new TypeError("No id was specified for getPosition method.");if(this.body.nodes[e]==null)throw new ReferenceError("NodeId provided for getPosition does not exist. Provided: ".concat(e));return{x:Math.round(this.body.nodes[e].x),y:Math.round(this.body.nodes[e].y)}}storePositions(){const e=[],t=this.body.data.nodes.getDataSet();for(const r of t.get()){const i=r.id,o=this.body.nodes[i],s=Math.round(o.x),a=Math.round(o.y);(r.x!==s||r.y!==a)&&e.push({id:i,x:s,y:a})}t.update(e)}getBoundingBox(e){if(this.body.nodes[e]!==void 0)return this.body.nodes[e].shape.boundingBox}getConnectedNodes(e,t){const r=[];if(this.body.nodes[e]!==void 0){const i=this.body.nodes[e],o={};for(let s=0;s<i.edges.length;s++){const a=i.edges[s];t!=="to"&&a.toId==i.id?o[a.fromId]===void 0&&(r.push(a.fromId),o[a.fromId]=!0):t!=="from"&&a.fromId==i.id&&o[a.toId]===void 0&&(r.push(a.toId),o[a.toId]=!0)}}return r}getConnectedEdges(e){const t=[];if(this.body.nodes[e]!==void 0){const r=this.body.nodes[e];for(let i=0;i<r.edges.length;i++)t.push(r.edges[i].id)}else console.error("NodeId provided for getConnectedEdges does not exist. Provided: ",e);return t}moveNode(e,t,r){this.body.nodes[e]!==void 0?(this.body.nodes[e].x=Number(t),this.body.nodes[e].y=Number(r),Si(()=>{this.body.emitter.emit("startSimulation")},0)):console.error("Node id supplied to moveNode does not exist. Provided: ",e)}}var U9={},K9;function CEe(){if(K9)return U9;K9=1;var n=te(),e=Math.hypot,t=Math.abs,r=Math.sqrt,i=!!e&&e(1/0,NaN)!==1/0;return n({target:"Math",stat:!0,arity:2,forced:i},{hypot:function(s,a){for(var g=0,A=0,I=arguments.length,C=0,l,d;A<I;)l=t(arguments[A++]),C<l?(d=C/l,g=g*d*d+1,C=l):l>0?(d=l/C,g+=d*d):g+=l;return C===1/0?1/0:C*r(g)}}),U9}var a_,Y9;function lEe(){if(Y9)return a_;Y9=1,CEe();var n=Re();return a_=n.Math.hypot,a_}var g_,X9;function dEe(){if(X9)return g_;X9=1;var n=lEe();return g_=n,g_}var A_,Q9;function uEe(){return Q9||(Q9=1,A_=dEe()),A_}var hEe=uEe(),cEe=se(hEe);class it{static transform(e,t){Qe(e)||(e=[e]);const r=t.point.x,i=t.point.y,o=t.angle,s=t.length;for(let a=0;a<e.length;++a){const g=e[a],A=g.x*Math.cos(o)-g.y*Math.sin(o),I=g.x*Math.sin(o)+g.y*Math.cos(o);g.x=r+s*A,g.y=i+s*I}}static drawPath(e,t){e.beginPath(),e.moveTo(t[0].x,t[0].y);for(let r=1;r<t.length;++r)e.lineTo(t[r].x,t[r].y);e.closePath()}}let fEe=class extends it{static draw(e,t){if(t.image){e.save(),e.translate(t.point.x,t.point.y),e.rotate(Math.PI/2+t.angle);const r=t.imageWidth!=null?t.imageWidth:t.image.width,i=t.imageHeight!=null?t.imageHeight:t.image.height;t.image.drawImageAtPosition(e,1,-r/2,0,r,i),e.restore()}return!1}};class pEe extends it{static draw(e,t){const r=[{x:0,y:0},{x:-1,y:.3},{x:-.9,y:0},{x:-1,y:-.3}];return it.transform(r,t),it.drawPath(e,r),!0}}class vEe{static draw(e,t){const r=[{x:-1,y:0},{x:0,y:.3},{x:-.4,y:0},{x:0,y:-.3}];return it.transform(r,t),it.drawPath(e,r),!0}}class mEe{static draw(e,t){const r={x:-.4,y:0};it.transform(r,t),e.strokeStyle=e.fillStyle,e.fillStyle="rgba(0, 0, 0, 0)";const i=Math.PI,o=t.angle-i/2,s=t.angle+i/2;return e.beginPath(),e.arc(r.x,r.y,t.length*.4,o,s,!1),e.stroke(),!0}}class yEe{static draw(e,t){const r={x:-.3,y:0};it.transform(r,t),e.strokeStyle=e.fillStyle,e.fillStyle="rgba(0, 0, 0, 0)";const i=Math.PI,o=t.angle+i/2,s=t.angle+3*i/2;return e.beginPath(),e.arc(r.x,r.y,t.length*.4,o,s,!1),e.stroke(),!0}}class bEe{static draw(e,t){const r=[{x:.02,y:0},{x:-1,y:.3},{x:-1,y:-.3}];return it.transform(r,t),it.drawPath(e,r),!0}}class wEe{static draw(e,t){const r=[{x:0,y:.3},{x:0,y:-.3},{x:-1,y:0}];return it.transform(r,t),it.drawPath(e,r),!0}}class EEe{static draw(e,t){const r={x:-.4,y:0};return it.transform(r,t),rR(e,r.x,r.y,t.length*.4),!0}}class SEe{static draw(e,t){const r=[{x:0,y:.5},{x:0,y:-.5},{x:-.15,y:-.5},{x:-.15,y:.5}];return it.transform(r,t),it.drawPath(e,r),!0}}class _Ee{static draw(e,t){const r=[{x:0,y:.3},{x:0,y:-.3},{x:-.6,y:-.3},{x:-.6,y:.3}];return it.transform(r,t),it.drawPath(e,r),!0}}class OEe{static draw(e,t){const r=[{x:0,y:0},{x:-.5,y:-.3},{x:-1,y:0},{x:-.5,y:.3}];return it.transform(r,t),it.drawPath(e,r),!0}}class TEe{static draw(e,t){const r=[{x:-1,y:.3},{x:-.5,y:0},{x:-1,y:-.3},{x:0,y:0}];return it.transform(r,t),it.drawPath(e,r),!0}}class pte{static draw(e,t){let r;switch(t.type&&(r=t.type.toLowerCase()),r){case"image":return fEe.draw(e,t);case"circle":return EEe.draw(e,t);case"box":return _Ee.draw(e,t);case"crow":return vEe.draw(e,t);case"curve":return mEe.draw(e,t);case"diamond":return OEe.draw(e,t);case"inv_curve":return yEe.draw(e,t);case"triangle":return bEe.draw(e,t);case"inv_triangle":return wEe.draw(e,t);case"bar":return SEe.draw(e,t);case"vee":return TEe.draw(e,t);case"arrow":default:return pEe.draw(e,t)}}}function J9(n,e){var t=Xe(n);if(hn){var r=hn(n);e&&(r=Qt(r).call(r,function(i){return _n(n,i).enumerable})),t.push.apply(t,r)}return t}function e6(n){for(var e=1;e<arguments.length;e++){var t,r,i=arguments[e]!=null?arguments[e]:{};e%2?xe(t=J9(Object(i),!0)).call(t,function(o){ci(n,o,i[o])}):cn?nC(n,cn(i)):xe(r=J9(Object(i))).call(r,function(o){oC(n,o,_n(i,o))})}return n}class vte{constructor(e,t,r){ci(this,"color",{}),ci(this,"colorDirty",!0),ci(this,"hoverWidth",1.5),ci(this,"selectionWidth",2),this._body=t,this._labelModule=r,this.setOptions(e),this.fromPoint=this.from,this.toPoint=this.to}connect(){this.from=this._body.nodes[this.options.from],this.to=this._body.nodes[this.options.to]}cleanup(){return!1}setOptions(e){this.options=e,this.from=this._body.nodes[this.options.from],this.to=this._body.nodes[this.options.to],this.id=this.options.id}drawLine(e,t,r,i){let o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.getViaNode();e.strokeStyle=this.getColor(e,t),e.lineWidth=t.width,t.dashes!==!1?this._drawDashedLine(e,t,o):this._drawLine(e,t,o)}_drawLine(e,t,r,i,o){if(this.from!=this.to)this._line(e,t,r,i,o);else{const[s,a,g]=this._getCircleData(e);this._circle(e,t,s,a,g)}}_drawDashedLine(e,t,r,i,o){e.lineCap="round";const s=Qe(t.dashes)?t.dashes:[5,5];if(e.setLineDash!==void 0){if(e.save(),e.setLineDash(s),e.lineDashOffset=0,this.from!=this.to)this._line(e,t,r);else{const[a,g,A]=this._getCircleData(e);this._circle(e,t,a,g,A)}e.setLineDash([0]),e.lineDashOffset=0,e.restore()}else{if(this.from!=this.to)nee(e,this.from.x,this.from.y,this.to.x,this.to.y,s);else{const[a,g,A]=this._getCircleData(e);this._circle(e,t,a,g,A)}this.enableShadow(e,t),e.stroke(),this.disableShadow(e,t)}}findBorderPosition(e,t,r){return this.from!=this.to?this._findBorderPosition(e,t,r):this._findBorderPositionCircle(e,t,r)}findBorderPositions(e){if(this.from!=this.to)return{from:this._findBorderPosition(this.from,e),to:this._findBorderPosition(this.to,e)};{var t;const[r,i]=Kr(t=this._getCircleData(e)).call(t,0,2);return{from:this._findBorderPositionCircle(this.from,e,{x:r,y:i,low:.25,high:.6,direction:-1}),to:this._findBorderPositionCircle(this.from,e,{x:r,y:i,low:.6,high:.8,direction:1})}}}_getCircleData(e){const t=this.options.selfReference.size;e!==void 0&&this.from.shape.width===void 0&&this.from.shape.resize(e);const r=cte(e,this.options.selfReference.angle,t,this.from);return[r.x,r.y,t]}_pointOnCircle(e,t,r,i){const o=i*2*Math.PI;return{x:e+r*Math.cos(o),y:t-r*Math.sin(o)}}_findBorderPositionCircle(e,t,r){const i=r.x,o=r.y;let s=r.low,a=r.high;const g=r.direction,A=10,I=this.options.selfReference.size,C=.05;let l,d=(s+a)*.5,u=0;this.options.arrowStrikethrough===!0&&(g===-1?u=this.options.endPointOffset.from:g===1&&(u=this.options.endPointOffset.to));let h=0;do{d=(s+a)*.5,l=this._pointOnCircle(i,o,I,d);const v=Math.atan2(e.y-l.y,e.x-l.x),f=e.distanceToBorder(t,v)+u,c=Math.sqrt(Math.pow(l.x-e.x,2)+Math.pow(l.y-e.y,2)),b=f-c;if(Math.abs(b)<C)break;b>0?g>0?s=d:a=d:g>0?a=d:s=d,++h}while(s<=a&&h<A);return e6(e6({},l),{},{t:d})}getLineWidth(e,t){return e===!0?Math.max(this.selectionWidth,.3/this._body.view.scale):t===!0?Math.max(this.hoverWidth,.3/this._body.view.scale):Math.max(this.options.width,.3/this._body.view.scale)}getColor(e,t){if(t.inheritsColor!==!1){if(t.inheritsColor==="both"&&this.from.id!==this.to.id){const r=e.createLinearGradient(this.from.x,this.from.y,this.to.x,this.to.y);let i=this.from.options.color.highlight.border,o=this.to.options.color.highlight.border;return this.from.selected===!1&&this.to.selected===!1?(i=cr(this.from.options.color.border,t.opacity),o=cr(this.to.options.color.border,t.opacity)):this.from.selected===!0&&this.to.selected===!1?o=this.to.options.color.border:this.from.selected===!1&&this.to.selected===!0&&(i=this.from.options.color.border),r.addColorStop(0,i),r.addColorStop(1,o),r}return t.inheritsColor==="to"?cr(this.to.options.color.border,t.opacity):cr(this.from.options.color.border,t.opacity)}else return cr(t.color,t.opacity)}_circle(e,t,r,i,o){this.enableShadow(e,t);let s=0,a=Math.PI*2;if(!this.options.selfReference.renderBehindTheNode){const g=this.options.selfReference.angle,A=this.options.selfReference.angle+Math.PI,I=this._findBorderPositionCircle(this.from,e,{x:r,y:i,low:g,high:A,direction:-1}),C=this._findBorderPositionCircle(this.from,e,{x:r,y:i,low:g,high:A,direction:1});s=Math.atan2(I.y-i,I.x-r),a=Math.atan2(C.y-i,C.x-r)}e.beginPath(),e.arc(r,i,o,s,a,!1),e.stroke(),this.disableShadow(e,t)}getDistanceToEdge(e,t,r,i,o,s){if(this.from!=this.to)return this._getDistanceToEdge(e,t,r,i,o,s);{const[a,g,A]=this._getCircleData(void 0),I=a-o,C=g-s;return Math.abs(Math.sqrt(I*I+C*C)-A)}}_getDistanceToLine(e,t,r,i,o,s){const a=r-e,g=i-t,A=a*a+g*g;let I=((o-e)*a+(s-t)*g)/A;I>1?I=1:I<0&&(I=0);const C=e+I*a,l=t+I*g,d=C-o,u=l-s;return Math.sqrt(d*d+u*u)}getArrowData(e,t,r,i,o,s){let a,g,A,I,C,l,d;const u=s.width;t==="from"?(A=this.from,I=this.to,C=s.fromArrowScale<0,l=Math.abs(s.fromArrowScale),d=s.fromArrowType):t==="to"?(A=this.to,I=this.from,C=s.toArrowScale<0,l=Math.abs(s.toArrowScale),d=s.toArrowType):(A=this.to,I=this.from,C=s.middleArrowScale<0,l=Math.abs(s.middleArrowScale),d=s.middleArrowType);const h=15*l+3*u;if(A!=I){const b=cEe(A.x-I.x,A.y-I.y),p=h/b;if(t!=="middle")if(this.options.smooth.enabled===!0){const y=this._findBorderPosition(A,e,{via:r}),E=this.getPoint(y.t+p*(t==="from"?1:-1),r);a=Math.atan2(y.y-E.y,y.x-E.x),g=y}else a=Math.atan2(A.y-I.y,A.x-I.x),g=this._findBorderPosition(A,e);else{const y=(C?-p:p)/2,E=this.getPoint(.5+y,r),S=this.getPoint(.5-y,r);a=Math.atan2(E.y-S.y,E.x-S.x),g=this.getPoint(.5,r)}}else{const[b,p,y]=this._getCircleData(e);if(t==="from"){const E=this.options.selfReference.angle,S=this.options.selfReference.angle+Math.PI,m=this._findBorderPositionCircle(this.from,e,{x:b,y:p,low:E,high:S,direction:-1});a=m.t*-2*Math.PI+1.5*Math.PI+.1*Math.PI,g=m}else if(t==="to"){const E=this.options.selfReference.angle,S=this.options.selfReference.angle+Math.PI,m=this._findBorderPositionCircle(this.from,e,{x:b,y:p,low:E,high:S,direction:1});a=m.t*-2*Math.PI+1.5*Math.PI-1.1*Math.PI,g=m}else{const E=this.options.selfReference.angle/(2*Math.PI);g=this._pointOnCircle(b,p,y,E),a=E*-2*Math.PI+1.5*Math.PI+.1*Math.PI}}const v=g.x-h*.9*Math.cos(a),f=g.y-h*.9*Math.sin(a);return{point:g,core:{x:v,y:f},angle:a,length:h,type:d}}drawArrowHead(e,t,r,i,o){e.strokeStyle=this.getColor(e,t),e.fillStyle=e.strokeStyle,e.lineWidth=t.width,pte.draw(e,o)&&(this.enableShadow(e,t),tA(e).call(e),this.disableShadow(e,t))}enableShadow(e,t){t.shadow===!0&&(e.shadowColor=t.shadowColor,e.shadowBlur=t.shadowSize,e.shadowOffsetX=t.shadowX,e.shadowOffsetY=t.shadowY)}disableShadow(e,t){t.shadow===!0&&(e.shadowColor="rgba(0,0,0,0)",e.shadowBlur=0,e.shadowOffsetX=0,e.shadowOffsetY=0)}drawBackground(e,t){if(t.background!==!1){const r={strokeStyle:e.strokeStyle,lineWidth:e.lineWidth,dashes:e.dashes};e.strokeStyle=t.backgroundColor,e.lineWidth=t.backgroundSize,this.setStrokeDashed(e,t.backgroundDashes),e.stroke(),e.strokeStyle=r.strokeStyle,e.lineWidth=r.lineWidth,e.dashes=r.dashes,this.setStrokeDashed(e,t.dashes)}}setStrokeDashed(e,t){if(t!==!1)if(e.setLineDash!==void 0){const r=Qe(t)?t:[5,5];e.setLineDash(r)}else console.warn("setLineDash is not supported in this browser. The dashed stroke cannot be used.");else e.setLineDash!==void 0?e.setLineDash([]):console.warn("setLineDash is not supported in this browser. The dashed stroke cannot be used.")}}function t6(n,e){var t=Xe(n);if(hn){var r=hn(n);e&&(r=Qt(r).call(r,function(i){return _n(n,i).enumerable})),t.push.apply(t,r)}return t}function r6(n){for(var e=1;e<arguments.length;e++){var t,r,i=arguments[e]!=null?arguments[e]:{};e%2?xe(t=t6(Object(i),!0)).call(t,function(o){ci(n,o,i[o])}):cn?nC(n,cn(i)):xe(r=t6(Object(i))).call(r,function(o){oC(n,o,_n(i,o))})}return n}class PR extends vte{constructor(e,t,r){super(e,t,r)}_findBorderPositionBezier(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this._getViaCoordinates();const i=10,o=.2;let s=!1,a=1,g=0,A=this.to,I,C,l=this.options.endPointOffset?this.options.endPointOffset.to:0;e.id===this.from.id&&(A=this.from,s=!0,l=this.options.endPointOffset?this.options.endPointOffset.from:0),this.options.arrowStrikethrough===!1&&(l=0);let d=0;do{C=(g+a)*.5,I=this.getPoint(C,r);const u=Math.atan2(A.y-I.y,A.x-I.x),h=A.distanceToBorder(t,u)+l,v=Math.sqrt(Math.pow(I.x-A.x,2)+Math.pow(I.y-A.y,2)),f=h-v;if(Math.abs(f)<o)break;f<0?s===!1?g=C:a=C:s===!1?a=C:g=C,++d}while(g<=a&&d<i);return r6(r6({},I),{},{t:C})}_getDistanceToBezierEdge(e,t,r,i,o,s,a){let g=1e9,A,I,C,l,d,u=e,h=t;for(I=1;I<10;I++)C=.1*I,l=Math.pow(1-C,2)*e+2*C*(1-C)*a.x+Math.pow(C,2)*r,d=Math.pow(1-C,2)*t+2*C*(1-C)*a.y+Math.pow(C,2)*i,I>0&&(A=this._getDistanceToLine(u,h,l,d,o,s),g=A<g?A:g),u=l,h=d;return g}_bezierCurve(e,t,r,i){e.beginPath(),e.moveTo(this.fromPoint.x,this.fromPoint.y),r!=null&&r.x!=null?i!=null&&i.x!=null?e.bezierCurveTo(r.x,r.y,i.x,i.y,this.toPoint.x,this.toPoint.y):e.quadraticCurveTo(r.x,r.y,this.toPoint.x,this.toPoint.y):e.lineTo(this.toPoint.x,this.toPoint.y),this.drawBackground(e,t),this.enableShadow(e,t),e.stroke(),this.disableShadow(e,t)}getViaNode(){return this._getViaCoordinates()}}class i6 extends PR{constructor(e,t,r){super(e,t,r),ci(this,"via",this.via),this._boundFunction=()=>{this.positionBezierNode()},this._body.emitter.on("_repositionBezierNodes",this._boundFunction)}setOptions(e){super.setOptions(e);let t=!1;this.options.physics!==e.physics&&(t=!0),this.options=e,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(),t===!0&&(this.via.setOptions({physics:this.options.physics}),this.positionBezierNode())}connect(){this.from=this._body.nodes[this.options.from],this.to=this._body.nodes[this.options.to],this.from===void 0||this.to===void 0||this.options.physics===!1?this.via.setOptions({physics:!1}):this.from.id===this.to.id?this.via.setOptions({physics:!1}):this.via.setOptions({physics:!0})}cleanup(){return this._body.emitter.off("_repositionBezierNodes",this._boundFunction),this.via!==void 0?(delete this._body.nodes[this.via.id],this.via=void 0,!0):!1}setupSupportNode(){if(this.via===void 0){const e="edgeId:"+this.id,t=this._body.functions.createNode({id:e,shape:"circle",physics:!0,hidden:!0});this._body.nodes[e]=t,this.via=t,this.via.parentEdgeId=this.id,this.positionBezierNode()}}positionBezierNode(){this.via!==void 0&&this.from!==void 0&&this.to!==void 0?(this.via.x=.5*(this.from.x+this.to.x),this.via.y=.5*(this.from.y+this.to.y)):this.via!==void 0&&(this.via.x=0,this.via.y=0)}_line(e,t,r){this._bezierCurve(e,t,r)}_getViaCoordinates(){return this.via}getViaNode(){return this.via}getPoint(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.via;if(this.from===this.to){const[r,i,o]=this._getCircleData(),s=2*Math.PI*(1-e);return{x:r+o*Math.sin(s),y:i+o-o*(1-Math.cos(s))}}else return{x:Math.pow(1-e,2)*this.fromPoint.x+2*e*(1-e)*t.x+Math.pow(e,2)*this.toPoint.x,y:Math.pow(1-e,2)*this.fromPoint.y+2*e*(1-e)*t.y+Math.pow(e,2)*this.toPoint.y}}_findBorderPosition(e,t){return this._findBorderPositionBezier(e,t,this.via)}_getDistanceToEdge(e,t,r,i,o,s){return this._getDistanceToBezierEdge(e,t,r,i,o,s,this.via)}}class n6 extends PR{constructor(e,t,r){super(e,t,r)}_line(e,t,r){this._bezierCurve(e,t,r)}getViaNode(){return this._getViaCoordinates()}_getViaCoordinates(){const e=this.options.smooth.roundness,t=this.options.smooth.type;let r=Math.abs(this.from.x-this.to.x),i=Math.abs(this.from.y-this.to.y);if(t==="discrete"||t==="diagonalCross"){let o,s;r<=i?o=s=e*i:o=s=e*r,this.from.x>this.to.x&&(o=-o),this.from.y>=this.to.y&&(s=-s);let a=this.from.x+o,g=this.from.y+s;return t==="discrete"&&(r<=i?a=r<e*i?this.from.x:a:g=i<e*r?this.from.y:g),{x:a,y:g}}else if(t==="straightCross"){let o=(1-e)*r,s=(1-e)*i;return r<=i?(o=0,this.from.y<this.to.y&&(s=-s)):(this.from.x<this.to.x&&(o=-o),s=0),{x:this.to.x+o,y:this.to.y+s}}else if(t==="horizontal"){let o=(1-e)*r;return this.from.x<this.to.x&&(o=-o),{x:this.to.x+o,y:this.from.y}}else if(t==="vertical"){let o=(1-e)*i;return this.from.y<this.to.y&&(o=-o),{x:this.from.x,y:this.to.y+o}}else if(t==="curvedCW"){r=this.to.x-this.from.x,i=this.from.y-this.to.y;const o=Math.sqrt(r*r+i*i),s=Math.PI,g=(Math.atan2(i,r)+(e*.5+.5)*s)%(2*s);return{x:this.from.x+(e*.5+.5)*o*Math.sin(g),y:this.from.y+(e*.5+.5)*o*Math.cos(g)}}else if(t==="curvedCCW"){r=this.to.x-this.from.x,i=this.from.y-this.to.y;const o=Math.sqrt(r*r+i*i),s=Math.PI,g=(Math.atan2(i,r)+(-e*.5+.5)*s)%(2*s);return{x:this.from.x+(e*.5+.5)*o*Math.sin(g),y:this.from.y+(e*.5+.5)*o*Math.cos(g)}}else{let o,s;r<=i?o=s=e*i:o=s=e*r,this.from.x>this.to.x&&(o=-o),this.from.y>=this.to.y&&(s=-s);let a=this.from.x+o,g=this.from.y+s;return r<=i?this.from.x<=this.to.x?a=this.to.x<a?this.to.x:a:a=this.to.x>a?this.to.x:a:this.from.y>=this.to.y?g=this.to.y>g?this.to.y:g:g=this.to.y<g?this.to.y:g,{x:a,y:g}}}_findBorderPosition(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return this._findBorderPositionBezier(e,t,r.via)}_getDistanceToEdge(e,t,r,i,o,s){let a=arguments.length>6&&arguments[6]!==void 0?arguments[6]:this._getViaCoordinates();return this._getDistanceToBezierEdge(e,t,r,i,o,s,a)}getPoint(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this._getViaCoordinates();const r=e,i=Math.pow(1-r,2)*this.fromPoint.x+2*r*(1-r)*t.x+Math.pow(r,2)*this.toPoint.x,o=Math.pow(1-r,2)*this.fromPoint.y+2*r*(1-r)*t.y+Math.pow(r,2)*this.toPoint.y;return{x:i,y:o}}}class REe extends PR{constructor(e,t,r){super(e,t,r)}_getDistanceToBezierEdge2(e,t,r,i,o,s,a,g){let A=1e9,I=e,C=t;const l=[0,0,0,0];for(let d=1;d<10;d++){const u=.1*d;l[0]=Math.pow(1-u,3),l[1]=3*u*Math.pow(1-u,2),l[2]=3*Math.pow(u,2)*(1-u),l[3]=Math.pow(u,3);const h=l[0]*e+l[1]*a.x+l[2]*g.x+l[3]*r,v=l[0]*t+l[1]*a.y+l[2]*g.y+l[3]*i;if(d>0){const f=this._getDistanceToLine(I,C,h,v,o,s);A=f<A?f:A}I=h,C=v}return A}}class o6 extends REe{constructor(e,t,r){super(e,t,r)}_line(e,t,r){const i=r[0],o=r[1];this._bezierCurve(e,t,i,o)}_getViaCoordinates(){const e=this.from.x-this.to.x,t=this.from.y-this.to.y;let r,i,o,s;const a=this.options.smooth.roundness;return(Math.abs(e)>Math.abs(t)||this.options.smooth.forceDirection===!0||this.options.smooth.forceDirection==="horizontal")&&this.options.smooth.forceDirection!=="vertical"?(i=this.from.y,s=this.to.y,r=this.from.x-a*e,o=this.to.x+a*e):(i=this.from.y-a*t,s=this.to.y+a*t,r=this.from.x,o=this.to.x),[{x:r,y:i},{x:o,y:s}]}getViaNode(){return this._getViaCoordinates()}_findBorderPosition(e,t){return this._findBorderPositionBezier(e,t)}_getDistanceToEdge(e,t,r,i,o,s){let[a,g]=arguments.length>6&&arguments[6]!==void 0?arguments[6]:this._getViaCoordinates();return this._getDistanceToBezierEdge2(e,t,r,i,o,s,a,g)}getPoint(e){let[t,r]=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this._getViaCoordinates();const i=e,o=[Math.pow(1-i,3),3*i*Math.pow(1-i,2),3*Math.pow(i,2)*(1-i),Math.pow(i,3)],s=o[0]*this.fromPoint.x+o[1]*t.x+o[2]*r.x+o[3]*this.toPoint.x,a=o[0]*this.fromPoint.y+o[1]*t.y+o[2]*r.y+o[3]*this.toPoint.y;return{x:s,y:a}}}class s6 extends vte{constructor(e,t,r){super(e,t,r)}_line(e,t){e.beginPath(),e.moveTo(this.fromPoint.x,this.fromPoint.y),e.lineTo(this.toPoint.x,this.toPoint.y),this.enableShadow(e,t),e.stroke(),this.disableShadow(e,t)}getViaNode(){}getPoint(e){return{x:(1-e)*this.fromPoint.x+e*this.toPoint.x,y:(1-e)*this.fromPoint.y+e*this.toPoint.y}}_findBorderPosition(e,t){let r=this.to,i=this.from;e.id===this.from.id&&(r=this.from,i=this.to);const o=Math.atan2(r.y-i.y,r.x-i.x),s=r.x-i.x,a=r.y-i.y,g=Math.sqrt(s*s+a*a),A=e.distanceToBorder(t,o),I=(g-A)/g;return{x:(1-I)*i.x+I*r.x,y:(1-I)*i.y+I*r.y,t:0}}_getDistanceToEdge(e,t,r,i,o,s){return this._getDistanceToLine(e,t,r,i,o,s)}}class ln{constructor(e,t,r,i,o){if(t===void 0)throw new Error("No body provided");this.options=Cn(i),this.globalOptions=i,this.defaultOptions=o,this.body=t,this.imagelist=r,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 gs(this.body,this.options,!0),this.setOptions(e)}setOptions(e){if(!e)return;let t=typeof e.physics<"u"&&this.options.physics!==e.physics||typeof e.hidden<"u"&&(this.options.hidden||!1)!==(e.hidden||!1)||typeof e.from<"u"&&this.options.from!==e.from||typeof e.to<"u"&&this.options.to!==e.to;ln.parseOptions(this.options,e,!0,this.globalOptions),e.id!==void 0&&(this.id=e.id),e.from!==void 0&&(this.fromId=e.from),e.to!==void 0&&(this.toId=e.to),e.title!==void 0&&(this.title=e.title),e.value!==void 0&&(e.value=hte(e.value));const r=[e,this.options,this.defaultOptions];return this.chooser=TR("edge",r),this.updateLabelModule(e),t=this.updateEdgeType()||t,this._setInteractionWidths(),this.connect(),t}static parseOptions(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;if(da(["endPointOffset","arrowStrikethrough","id","from","hidden","hoverWidth","labelHighlightBold","length","line","opacity","physics","scaling","selectionWidth","selfReferenceSize","selfReference","to","title","value","width","font","chosen","widthConstraint"],e,t,r),t.endPointOffset!==void 0&&t.endPointOffset.from!==void 0&&(kn(t.endPointOffset.from)?e.endPointOffset.from=t.endPointOffset.from:(e.endPointOffset.from=i.endPointOffset.from!==void 0?i.endPointOffset.from:0,console.error("endPointOffset.from is not a valid number"))),t.endPointOffset!==void 0&&t.endPointOffset.to!==void 0&&(kn(t.endPointOffset.to)?e.endPointOffset.to=t.endPointOffset.to:(e.endPointOffset.to=i.endPointOffset.to!==void 0?i.endPointOffset.to:0,console.error("endPointOffset.to is not a valid number"))),iI(t.label)?e.label=t.label:iI(e.label)||(e.label=void 0),ur(e,t,"smooth",i),ur(e,t,"shadow",i),ur(e,t,"background",i),t.dashes!==void 0&&t.dashes!==null?e.dashes=t.dashes:r===!0&&t.dashes===null&&(e.dashes=Zn(i.dashes)),t.scaling!==void 0&&t.scaling!==null?(t.scaling.min!==void 0&&(e.scaling.min=t.scaling.min),t.scaling.max!==void 0&&(e.scaling.max=t.scaling.max),ur(e.scaling,t.scaling,"label",i.scaling)):r===!0&&t.scaling===null&&(e.scaling=Zn(i.scaling)),t.arrows!==void 0&&t.arrows!==null)if(typeof t.arrows=="string"){const a=t.arrows.toLowerCase();e.arrows.to.enabled=Oe(a).call(a,"to")!=-1,e.arrows.middle.enabled=Oe(a).call(a,"middle")!=-1,e.arrows.from.enabled=Oe(a).call(a,"from")!=-1}else if(typeof t.arrows=="object")ur(e.arrows,t.arrows,"to",i.arrows),ur(e.arrows,t.arrows,"middle",i.arrows),ur(e.arrows,t.arrows,"from",i.arrows);else throw new Error("The arrow newOptions can only be an object or a string. Refer to the documentation. You used:"+eA(t.arrows));else r===!0&&t.arrows===null&&(e.arrows=Zn(i.arrows));if(t.color!==void 0&&t.color!==null){const a=ss(t.color)?{color:t.color,highlight:t.color,hover:t.color,inherit:!1,opacity:1}:t.color,g=e.color;if(o)qe(g,i.color,!1,r);else for(const A in g)Object.prototype.hasOwnProperty.call(g,A)&&delete g[A];if(ss(g))g.color=g,g.highlight=g,g.hover=g,g.inherit=!1,a.opacity===void 0&&(g.opacity=1);else{let A=!1;a.color!==void 0&&(g.color=a.color,A=!0),a.highlight!==void 0&&(g.highlight=a.highlight,A=!0),a.hover!==void 0&&(g.hover=a.hover,A=!0),a.inherit!==void 0&&(g.inherit=a.inherit),a.opacity!==void 0&&(g.opacity=Math.min(1,Math.max(0,a.opacity))),A===!0?g.inherit=!1:g.inherit===void 0&&(g.inherit="from")}}else r===!0&&t.color===null&&(e.color=Cn(i.color));r===!0&&t.font===null&&(e.font=Cn(i.font)),Object.prototype.hasOwnProperty.call(t,"selfReferenceSize")&&(console.warn("The selfReferenceSize property has been deprecated. Please use selfReference property instead. The selfReference can be set like thise selfReference:{size:30, angle:Math.PI / 4}"),e.selfReference.size=t.selfReferenceSize)}getFormattingValues(){const e=this.options.arrows.to===!0||this.options.arrows.to.enabled===!0,t=this.options.arrows.from===!0||this.options.arrows.from.enabled===!0,r=this.options.arrows.middle===!0||this.options.arrows.middle.enabled===!0,i=this.options.color.inherit,o={toArrow:e,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:r,middleArrowScale:this.options.arrows.middle.scaleFactor,middleArrowType:this.options.arrows.middle.type,middleArrowSrc:this.options.arrows.middle.src,middleArrowImageWidth:this.options.arrows.middle.imageWidth,middleArrowImageHeight:this.options.arrows.middle.imageHeight,fromArrow:t,fromArrowScale:this.options.arrows.from.scaleFactor,fromArrowType:this.options.arrows.from.type,fromArrowSrc:this.options.arrows.from.src,fromArrowImageWidth:this.options.arrows.from.imageWidth,fromArrowImageHeight:this.options.arrows.from.imageHeight,arrowStrikethrough:this.options.arrowStrikethrough,color: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(this.chooser===!0){if(this.selected){const s=this.options.selectionWidth;typeof s=="function"?o.width=s(o.width):typeof s=="number"&&(o.width+=s),o.width=Math.max(o.width,.3/this.body.view.scale),o.color=this.options.color.highlight,o.shadow=this.options.shadow.enabled}else if(this.hover){const s=this.options.hoverWidth;typeof s=="function"?o.width=s(o.width):typeof s=="number"&&(o.width+=s),o.width=Math.max(o.width,.3/this.body.view.scale),o.color=this.options.color.hover,o.shadow=this.options.shadow.enabled}}else typeof this.chooser=="function"&&(this.chooser(o,this.options.id,this.selected,this.hover),o.color!==void 0&&(o.inheritsColor=!1),o.shadow===!1&&(o.shadowColor!==this.options.shadow.color||o.shadowSize!==this.options.shadow.size||o.shadowX!==this.options.shadow.x||o.shadowY!==this.options.shadow.y)&&(o.shadow=!0));else o.shadow=this.options.shadow.enabled,o.width=Math.max(o.width,.3/this.body.view.scale);return o}updateLabelModule(e){const t=[e,this.options,this.globalOptions,this.defaultOptions];this.labelModule.update(this.options,t),this.labelModule.baseSize!==void 0&&(this.baseFontSize=this.labelModule.baseSize)}updateEdgeType(){const e=this.options.smooth;let t=!1,r=!0;return this.edgeType!==void 0&&((this.edgeType instanceof i6&&e.enabled===!0&&e.type==="dynamic"||this.edgeType instanceof o6&&e.enabled===!0&&e.type==="cubicBezier"||this.edgeType instanceof n6&&e.enabled===!0&&e.type!=="dynamic"&&e.type!=="cubicBezier"||this.edgeType instanceof s6&&e.type.enabled===!1)&&(r=!1),r===!0&&(t=this.cleanup())),r===!0?e.enabled===!0?e.type==="dynamic"?(t=!0,this.edgeType=new i6(this.options,this.body,this.labelModule)):e.type==="cubicBezier"?this.edgeType=new o6(this.options,this.body,this.labelModule):this.edgeType=new n6(this.options,this.body,this.labelModule):this.edgeType=new s6(this.options,this.body,this.labelModule):this.edgeType.setOptions(this.options),t}connect(){this.disconnect(),this.from=this.body.nodes[this.fromId]||void 0,this.to=this.body.nodes[this.toId]||void 0,this.connected=this.from!==void 0&&this.to!==void 0,this.connected===!0?(this.from.attachEdge(this),this.to.attachEdge(this)):(this.from&&this.from.detachEdge(this),this.to&&this.to.detachEdge(this)),this.edgeType.connect()}disconnect(){this.from&&(this.from.detachEdge(this),this.from=void 0),this.to&&(this.to.detachEdge(this),this.to=void 0),this.connected=!1}getTitle(){return this.title}isSelected(){return this.selected}getValue(){return this.options.value}setValueRange(e,t,r){if(this.options.value!==void 0){const i=this.options.scaling.customScalingFunction(e,t,r,this.options.value),o=this.options.scaling.max-this.options.scaling.min;if(this.options.scaling.label.enabled===!0){const s=this.options.scaling.label.max-this.options.scaling.label.min;this.options.font.size=this.options.scaling.label.min+i*s}this.options.width=this.options.scaling.min+i*o}else this.options.width=this.baseWidth,this.options.font.size=this.baseFontSize;this._setInteractionWidths(),this.updateLabelModule()}_setInteractionWidths(){typeof this.options.hoverWidth=="function"?this.edgeType.hoverWidth=this.options.hoverWidth(this.options.width):this.edgeType.hoverWidth=this.options.hoverWidth+this.options.width,typeof this.options.selectionWidth=="function"?this.edgeType.selectionWidth=this.options.selectionWidth(this.options.width):this.edgeType.selectionWidth=this.options.selectionWidth+this.options.width}draw(e){const t=this.getFormattingValues();if(t.hidden)return;const r=this.edgeType.getViaNode();this.edgeType.drawLine(e,t,this.selected,this.hover,r),this.drawLabel(e,r)}drawArrows(e){const t=this.getFormattingValues();if(t.hidden)return;const r=this.edgeType.getViaNode(),i={};this.edgeType.fromPoint=this.edgeType.from,this.edgeType.toPoint=this.edgeType.to,t.fromArrow&&(i.from=this.edgeType.getArrowData(e,"from",r,this.selected,this.hover,t),t.arrowStrikethrough===!1&&(this.edgeType.fromPoint=i.from.core),t.fromArrowSrc&&(i.from.image=this.imagelist.load(t.fromArrowSrc)),t.fromArrowImageWidth&&(i.from.imageWidth=t.fromArrowImageWidth),t.fromArrowImageHeight&&(i.from.imageHeight=t.fromArrowImageHeight)),t.toArrow&&(i.to=this.edgeType.getArrowData(e,"to",r,this.selected,this.hover,t),t.arrowStrikethrough===!1&&(this.edgeType.toPoint=i.to.core),t.toArrowSrc&&(i.to.image=this.imagelist.load(t.toArrowSrc)),t.toArrowImageWidth&&(i.to.imageWidth=t.toArrowImageWidth),t.toArrowImageHeight&&(i.to.imageHeight=t.toArrowImageHeight)),t.middleArrow&&(i.middle=this.edgeType.getArrowData(e,"middle",r,this.selected,this.hover,t),t.middleArrowSrc&&(i.middle.image=this.imagelist.load(t.middleArrowSrc)),t.middleArrowImageWidth&&(i.middle.imageWidth=t.middleArrowImageWidth),t.middleArrowImageHeight&&(i.middle.imageHeight=t.middleArrowImageHeight)),t.fromArrow&&this.edgeType.drawArrowHead(e,t,this.selected,this.hover,i.from),t.middleArrow&&this.edgeType.drawArrowHead(e,t,this.selected,this.hover,i.middle),t.toArrow&&this.edgeType.drawArrowHead(e,t,this.selected,this.hover,i.to)}drawLabel(e,t){if(this.options.label!==void 0){const r=this.from,i=this.to;this.labelModule.differentState(this.selected,this.hover)&&this.labelModule.getTextSize(e,this.selected,this.hover);let o;if(r.id!=i.id){this.labelModule.pointToSelf=!1,o=this.edgeType.getPoint(.5,t),e.save();const s=this._getRotation(e);s.angle!=0&&(e.translate(s.x,s.y),e.rotate(s.angle)),this.labelModule.draw(e,o.x,o.y,this.selected,this.hover),e.restore()}else{this.labelModule.pointToSelf=!0;const s=cte(e,this.options.selfReference.angle,this.options.selfReference.size,r);o=this._pointOnCircle(s.x,s.y,this.options.selfReference.size,this.options.selfReference.angle),this.labelModule.draw(e,o.x,o.y,this.selected,this.hover)}}}getItemsOnPoint(e){const t=[];if(this.labelModule.visible()){const i=this._getRotation();FO(this.labelModule.getSize(),e,i)&&t.push({edgeId:this.id,labelId:0})}const r={left:e.x,top:e.y};return this.isOverlappingWith(r)&&t.push({edgeId:this.id}),t}isOverlappingWith(e){if(this.connected){const r=this.from.x,i=this.from.y,o=this.to.x,s=this.to.y,a=e.left,g=e.top;return this.edgeType.getDistanceToEdge(r,i,o,s,a,g)<10}else return!1}_getRotation(e){const t=this.edgeType.getViaNode(),r=this.edgeType.getPoint(.5,t);e!==void 0&&this.labelModule.calculateLabelSize(e,this.selected,this.hover,r.x,r.y);const i={x:r.x,y:this.labelModule.size.yLine,angle:0};if(!this.labelModule.visible()||this.options.font.align==="horizontal")return i;const o=this.from.y-this.to.y,s=this.from.x-this.to.x;let a=Math.atan2(o,s);return(a<-1&&s<0||a>0&&s<0)&&(a+=Math.PI),i.angle=a,i}_pointOnCircle(e,t,r,i){return{x:e+r*Math.cos(i),y:t-r*Math.sin(i)}}select(){this.selected=!0}unselect(){this.selected=!1}cleanup(){return this.edgeType.cleanup()}remove(){this.cleanup(),this.disconnect(),delete this.body.edges[this.id]}endPointsValid(){return this.body.nodes[this.fromId]!==void 0&&this.body.nodes[this.toId]!==void 0}}class PEe{constructor(e,t,r){var i;this.body=e,this.images=t,this.groups=r,this.body.functions.createEdge=j(i=this.create).call(i,this),this.edgesListeners={add:(o,s)=>{this.add(s.items)},update:(o,s)=>{this.update(s.items)},remove:(o,s)=>{this.remove(s.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(o,s,a,g){if(s===o)return .5;{const A=1/(s-o);return Math.max(0,(g-o)*A)}}},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},qe(this.options,this.defaultOptions),this.bindEventListeners()}bindEventListeners(){var e=this,t,r;this.body.emitter.on("_forceDisableDynamicCurves",function(i){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;i==="dynamic"&&(i="continuous");let s=!1;for(const a in e.body.edges)if(Object.prototype.hasOwnProperty.call(e.body.edges,a)){const g=e.body.edges[a],A=e.body.data.edges.get(a);if(A!=null){const I=A.smooth;I!==void 0&&I.enabled===!0&&I.type==="dynamic"&&(i===void 0?g.setOptions({smooth:!1}):g.setOptions({smooth:{type:i}}),s=!0)}}o===!0&&s===!0&&e.body.emitter.emit("_dataChanged")}),this.body.emitter.on("_dataUpdated",()=>{this.reconnectEdges()}),this.body.emitter.on("refreshEdges",j(t=this.refresh).call(t,this)),this.body.emitter.on("refresh",j(r=this.refresh).call(r,this)),this.body.emitter.on("destroy",()=>{ue(this.edgesListeners,(i,o)=>{this.body.data.edges&&this.body.data.edges.off(o,i)}),delete this.body.functions.createEdge,delete this.edgesListeners.add,delete this.edgesListeners.update,delete this.edgesListeners.remove,delete this.edgesListeners})}setOptions(e){if(e!==void 0){ln.parseOptions(this.options,e,!0,this.defaultOptions,!0);let t=!1;if(e.smooth!==void 0)for(const r in this.body.edges)Object.prototype.hasOwnProperty.call(this.body.edges,r)&&(t=this.body.edges[r].updateEdgeType()||t);if(e.font!==void 0)for(const r in this.body.edges)Object.prototype.hasOwnProperty.call(this.body.edges,r)&&this.body.edges[r].updateLabelModule();(e.hidden!==void 0||e.physics!==void 0||t===!0)&&this.body.emitter.emit("_dataChanged")}}setData(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;const r=this.body.data.edges;if(UJ("id",e))this.body.data.edges=e;else if(Qe(e))this.body.data.edges=new YA,this.body.data.edges.add(e);else if(!e)this.body.data.edges=new YA;else throw new TypeError("Array or DataSet expected");if(r&&ue(this.edgesListeners,(i,o)=>{r.off(o,i)}),this.body.edges={},this.body.data.edges){ue(this.edgesListeners,(o,s)=>{this.body.data.edges.on(s,o)});const i=this.body.data.edges.getIds();this.add(i,!0)}this.body.emitter.emit("_adjustEdgesForHierarchicalLayout"),t===!1&&this.body.emitter.emit("_dataChanged")}add(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;const r=this.body.edges,i=this.body.data.edges;for(let o=0;o<e.length;o++){const s=e[o],a=r[s];a&&a.disconnect();const g=i.get(s,{showInternalIds:!0});r[s]=this.create(g)}this.body.emitter.emit("_adjustEdgesForHierarchicalLayout"),t===!1&&this.body.emitter.emit("_dataChanged")}update(e){const t=this.body.edges,r=this.body.data.edges;let i=!1;for(let o=0;o<e.length;o++){const s=e[o],a=r.get(s),g=t[s];g!==void 0?(g.disconnect(),i=g.setOptions(a)||i,g.connect()):(this.body.edges[s]=this.create(a),i=!0)}i===!0?(this.body.emitter.emit("_adjustEdgesForHierarchicalLayout"),this.body.emitter.emit("_dataChanged")):this.body.emitter.emit("_dataUpdated")}remove(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(e.length===0)return;const r=this.body.edges;ue(e,i=>{const o=r[i];o!==void 0&&o.remove()}),t&&this.body.emitter.emit("_dataChanged")}refresh(){ue(this.body.edges,(e,t)=>{const r=this.body.data.edges.get(t);r!==void 0&&e.setOptions(r)})}create(e){return new ln(e,this.body,this.images,this.options,this.defaultOptions)}reconnectEdges(){let e;const t=this.body.nodes,r=this.body.edges;for(e in t)Object.prototype.hasOwnProperty.call(t,e)&&(t[e].edges=[]);for(e in r)if(Object.prototype.hasOwnProperty.call(r,e)){const i=r[e];i.from=null,i.to=null,i.connect()}}getConnectedNodes(e){const t=[];if(this.body.edges[e]!==void 0){const r=this.body.edges[e];r.fromId!==void 0&&t.push(r.fromId),r.toId!==void 0&&t.push(r.toId)}return t}_updateState(){this._addMissingEdges(),this._removeInvalidEdges()}_removeInvalidEdges(){const e=[];ue(this.body.edges,(t,r)=>{const i=this.body.nodes[t.toId],o=this.body.nodes[t.fromId];i!==void 0&&i.isCluster===!0||o!==void 0&&o.isCluster===!0||(i===void 0||o===void 0)&&e.push(r)}),this.remove(e,!1)}_addMissingEdges(){const e=this.body.data.edges;if(e==null)return;const t=this.body.edges,r=[];xe(e).call(e,(i,o)=>{t[o]===void 0&&r.push(o)}),this.add(r,!0)}}class mte{constructor(e,t,r){this.body=e,this.physicsBody=t,this.barnesHutTree,this.setOptions(r),this._rng=tC("BARNES HUT SOLVER")}setOptions(e){this.options=e,this.thetaInversed=1/this.options.theta,this.overlapAvoidanceFactor=1-Math.max(0,Math.min(1,this.options.avoidOverlap))}solve(){if(this.options.gravitationalConstant!==0&&this.physicsBody.physicsNodeIndices.length>0){let e;const t=this.body.nodes,r=this.physicsBody.physicsNodeIndices,i=r.length,o=this._formBarnesHutTree(t,r);this.barnesHutTree=o;for(let s=0;s<i;s++)e=t[r[s]],e.options.mass>0&&this._getForceContributions(o.root,e)}}_getForceContributions(e,t){this._getForceContribution(e.children.NW,t),this._getForceContribution(e.children.NE,t),this._getForceContribution(e.children.SW,t),this._getForceContribution(e.children.SE,t)}_getForceContribution(e,t){if(e.childrenCount>0){const r=e.centerOfMass.x-t.x,i=e.centerOfMass.y-t.y,o=Math.sqrt(r*r+i*i);o*e.calcSize>this.thetaInversed?this._calculateForces(o,r,i,t,e):e.childrenCount===4?this._getForceContributions(e,t):e.children.data.id!=t.id&&this._calculateForces(o,r,i,t,e)}}_calculateForces(e,t,r,i,o){e===0&&(e=.1,t=e),this.overlapAvoidanceFactor<1&&i.shape.radius&&(e=Math.max(.1+this.overlapAvoidanceFactor*i.shape.radius,e-i.shape.radius));const s=this.options.gravitationalConstant*o.mass*i.options.mass/Math.pow(e,3),a=t*s,g=r*s;this.physicsBody.forces[i.id].x+=a,this.physicsBody.forces[i.id].y+=g}_formBarnesHutTree(e,t){let r;const i=t.length;let o=e[t[0]].x,s=e[t[0]].y,a=e[t[0]].x,g=e[t[0]].y;for(let v=1;v<i;v++){const f=e[t[v]],c=f.x,b=f.y;f.options.mass>0&&(c<o&&(o=c),c>a&&(a=c),b<s&&(s=b),b>g&&(g=b))}const A=Math.abs(a-o)-Math.abs(g-s);A>0?(s-=.5*A,g+=.5*A):(o+=.5*A,a-=.5*A);const C=Math.max(1e-5,Math.abs(a-o)),l=.5*C,d=.5*(o+a),u=.5*(s+g),h={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:d-l,maxX:d+l,minY:u-l,maxY:u+l},size:C,calcSize:1/C,children:{data:null},maxWidth:0,level:0,childrenCount:4}};this._splitBranch(h.root);for(let v=0;v<i;v++)r=e[t[v]],r.options.mass>0&&this._placeInTree(h.root,r);return h}_updateBranchMass(e,t){const r=e.centerOfMass,i=e.mass+t.options.mass,o=1/i;r.x=r.x*e.mass+t.x*t.options.mass,r.x*=o,r.y=r.y*e.mass+t.y*t.options.mass,r.y*=o,e.mass=i;const s=Math.max(Math.max(t.height,t.radius),t.width);e.maxWidth=e.maxWidth<s?s:e.maxWidth}_placeInTree(e,t,r){(r!=!0||r===void 0)&&this._updateBranchMass(e,t);const i=e.children.NW.range;let o;i.maxX>t.x?i.maxY>t.y?o="NW":o="SW":i.maxY>t.y?o="NE":o="SE",this._placeInRegion(e,t,o)}_placeInRegion(e,t,r){const i=e.children[r];switch(i.childrenCount){case 0:i.children.data=t,i.childrenCount=1,this._updateBranchMass(i,t);break;case 1:i.children.data.x===t.x&&i.children.data.y===t.y?(t.x+=this._rng(),t.y+=this._rng()):(this._splitBranch(i),this._placeInTree(i,t));break;case 4:this._placeInTree(i,t);break}}_splitBranch(e){let t=null;e.childrenCount===1&&(t=e.children.data,e.mass=0,e.centerOfMass.x=0,e.centerOfMass.y=0),e.childrenCount=4,e.children.data=null,this._insertRegion(e,"NW"),this._insertRegion(e,"NE"),this._insertRegion(e,"SW"),this._insertRegion(e,"SE"),t!=null&&this._placeInTree(e,t)}_insertRegion(e,t){let r,i,o,s;const a=.5*e.size;switch(t){case"NW":r=e.range.minX,i=e.range.minX+a,o=e.range.minY,s=e.range.minY+a;break;case"NE":r=e.range.minX+a,i=e.range.maxX,o=e.range.minY,s=e.range.minY+a;break;case"SW":r=e.range.minX,i=e.range.minX+a,o=e.range.minY+a,s=e.range.maxY;break;case"SE":r=e.range.minX+a,i=e.range.maxX,o=e.range.minY+a,s=e.range.maxY;break}e.children[t]={centerOfMass:{x:0,y:0},mass:0,range:{minX:r,maxX:i,minY:o,maxY:s},size:.5*e.size,calcSize:2*e.calcSize,children:{data:null},maxWidth:0,level:e.level+1,childrenCount:0}}_debug(e,t){this.barnesHutTree!==void 0&&(e.lineWidth=1,this._drawBranch(this.barnesHutTree.root,e,t))}_drawBranch(e,t,r){r===void 0&&(r="#FF0000"),e.childrenCount===4&&(this._drawBranch(e.children.NW,t),this._drawBranch(e.children.NE,t),this._drawBranch(e.children.SE,t),this._drawBranch(e.children.SW,t)),t.strokeStyle=r,t.beginPath(),t.moveTo(e.range.minX,e.range.minY),t.lineTo(e.range.maxX,e.range.minY),t.stroke(),t.beginPath(),t.moveTo(e.range.maxX,e.range.minY),t.lineTo(e.range.maxX,e.range.maxY),t.stroke(),t.beginPath(),t.moveTo(e.range.maxX,e.range.maxY),t.lineTo(e.range.minX,e.range.maxY),t.stroke(),t.beginPath(),t.moveTo(e.range.minX,e.range.maxY),t.lineTo(e.range.minX,e.range.minY),t.stroke()}}class xEe{constructor(e,t,r){this._rng=tC("REPULSION SOLVER"),this.body=e,this.physicsBody=t,this.setOptions(r)}setOptions(e){this.options=e}solve(){let e,t,r,i,o,s,a,g;const A=this.body.nodes,I=this.physicsBody.physicsNodeIndices,C=this.physicsBody.forces,l=this.options.nodeDistance,d=-2/3/l,u=4/3;for(let h=0;h<I.length-1;h++){a=A[I[h]];for(let v=h+1;v<I.length;v++)g=A[I[v]],e=g.x-a.x,t=g.y-a.y,r=Math.sqrt(e*e+t*t),r===0&&(r=.1*this._rng(),e=r),r<2*l&&(r<.5*l?s=1:s=d*r+u,s=s/r,i=e*s,o=t*s,C[a.id].x-=i,C[a.id].y-=o,C[g.id].x+=i,C[g.id].y+=o)}}}class $Ee{constructor(e,t,r){this.body=e,this.physicsBody=t,this.setOptions(r)}setOptions(e){this.options=e,this.overlapAvoidanceFactor=Math.max(0,Math.min(1,this.options.avoidOverlap||0))}solve(){const e=this.body.nodes,t=this.physicsBody.physicsNodeIndices,r=this.physicsBody.forces,i=this.options.nodeDistance;for(let o=0;o<t.length-1;o++){const s=e[t[o]];for(let a=o+1;a<t.length;a++){const g=e[t[a]];if(s.level===g.level){const A=i+this.overlapAvoidanceFactor*((s.shape.radius||0)/2+(g.shape.radius||0)/2),I=g.x-s.x,C=g.y-s.y,l=Math.sqrt(I*I+C*C),d=.05;let u;l<A?u=-Math.pow(d*l,2)+Math.pow(d*A,2):u=0,l!==0&&(u=u/l);const h=I*u,v=C*u;r[s.id].x-=h,r[s.id].y-=v,r[g.id].x+=h,r[g.id].y+=v}}}}}class I_{constructor(e,t,r){this.body=e,this.physicsBody=t,this.setOptions(r)}setOptions(e){this.options=e}solve(){let e,t;const r=this.physicsBody.physicsEdgeIndices,i=this.body.edges;let o,s,a;for(let g=0;g<r.length;g++)t=i[r[g]],t.connected===!0&&t.toId!==t.fromId&&this.body.nodes[t.toId]!==void 0&&this.body.nodes[t.fromId]!==void 0&&(t.edgeType.via!==void 0?(e=t.options.length===void 0?this.options.springLength:t.options.length,o=t.to,s=t.edgeType.via,a=t.from,this._calculateSpringForce(o,s,.5*e),this._calculateSpringForce(s,a,.5*e)):(e=t.options.length===void 0?this.options.springLength*1.5:t.options.length,this._calculateSpringForce(t.from,t.to,e)))}_calculateSpringForce(e,t,r){const i=e.x-t.x,o=e.y-t.y,s=Math.max(Math.sqrt(i*i+o*o),.01),a=this.options.springConstant*(r-s)/s,g=i*a,A=o*a;this.physicsBody.forces[e.id]!==void 0&&(this.physicsBody.forces[e.id].x+=g,this.physicsBody.forces[e.id].y+=A),this.physicsBody.forces[t.id]!==void 0&&(this.physicsBody.forces[t.id].x-=g,this.physicsBody.forces[t.id].y-=A)}}class DEe{constructor(e,t,r){this.body=e,this.physicsBody=t,this.setOptions(r)}setOptions(e){this.options=e}solve(){let e,t,r,i,o,s,a,g;const A=this.body.edges,I=.5,C=this.physicsBody.physicsEdgeIndices,l=this.physicsBody.physicsNodeIndices,d=this.physicsBody.forces;for(let p=0;p<l.length;p++){const y=l[p];d[y].springFx=0,d[y].springFy=0}for(let p=0;p<C.length;p++)t=A[C[p]],t.connected===!0&&(e=t.options.length===void 0?this.options.springLength:t.options.length,r=t.from.x-t.to.x,i=t.from.y-t.to.y,g=Math.sqrt(r*r+i*i),g=g===0?.01:g,a=this.options.springConstant*(e-g)/g,o=r*a,s=i*a,t.to.level!=t.from.level?(d[t.toId]!==void 0&&(d[t.toId].springFx-=o,d[t.toId].springFy-=s),d[t.fromId]!==void 0&&(d[t.fromId].springFx+=o,d[t.fromId].springFy+=s)):(d[t.toId]!==void 0&&(d[t.toId].x-=I*o,d[t.toId].y-=I*s),d[t.fromId]!==void 0&&(d[t.fromId].x+=I*o,d[t.fromId].y+=I*s)));a=1;let u,h;for(let p=0;p<l.length;p++){const y=l[p];u=Math.min(a,Math.max(-a,d[y].springFx)),h=Math.min(a,Math.max(-a,d[y].springFy)),d[y].x+=u,d[y].y+=h}let v=0,f=0;for(let p=0;p<l.length;p++){const y=l[p];v+=d[y].x,f+=d[y].y}const c=v/l.length,b=f/l.length;for(let p=0;p<l.length;p++){const y=l[p];d[y].x-=c,d[y].y-=b}}}class xA{constructor(e,t,r){this.body=e,this.physicsBody=t,this.setOptions(r)}setOptions(e){this.options=e}solve(){let e,t,r,i;const o=this.body.nodes,s=this.physicsBody.physicsNodeIndices,a=this.physicsBody.forces;for(let g=0;g<s.length;g++){const A=s[g];i=o[A],e=-i.x,t=-i.y,r=Math.sqrt(e*e+t*t),this._calculateForces(r,e,t,a,i)}}_calculateForces(e,t,r,i,o){const s=e===0?0:this.options.centralGravity/e;i[o.id].x=t*s,i[o.id].y=r*s}}class NEe extends mte{constructor(e,t,r){super(e,t,r),this._rng=tC("FORCE ATLAS 2 BASED REPULSION SOLVER")}_calculateForces(e,t,r,i,o){e===0&&(e=.1*this._rng(),t=e),this.overlapAvoidanceFactor<1&&i.shape.radius&&(e=Math.max(.1+this.overlapAvoidanceFactor*i.shape.radius,e-i.shape.radius));const s=i.edges.length+1,a=this.options.gravitationalConstant*o.mass*i.options.mass*s/Math.pow(e,2),g=t*a,A=r*a;this.physicsBody.forces[i.id].x+=g,this.physicsBody.forces[i.id].y+=A}}class MEe extends xA{constructor(e,t,r){super(e,t,r)}_calculateForces(e,t,r,i,o){if(e>0){const s=o.edges.length+1,a=this.options.centralGravity*s*o.options.mass;i[o.id].x=t*a,i[o.id].y=r*a}}}class qEe{constructor(e){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}},At(this.options,this.defaultOptions),this.timestep=.5,this.layoutFailed=!1,this.bindEventListeners()}bindEventListeners(){this.body.emitter.on("initPhysics",()=>{this.initPhysics()}),this.body.emitter.on("_layoutFailed",()=>{this.layoutFailed=!0}),this.body.emitter.on("resetPhysics",()=>{this.stopSimulation(),this.ready=!1}),this.body.emitter.on("disablePhysics",()=>{this.physicsEnabled=!1,this.stopSimulation()}),this.body.emitter.on("restorePhysics",()=>{this.setOptions(this.options),this.ready===!0&&this.startSimulation()}),this.body.emitter.on("startSimulation",()=>{this.ready===!0&&this.startSimulation()}),this.body.emitter.on("stopSimulation",()=>{this.stopSimulation()}),this.body.emitter.on("destroy",()=>{this.stopSimulation(!1),this.body.emitter.off()}),this.body.emitter.on("_dataChanged",()=>{this.updatePhysicsData()})}setOptions(e){if(e!==void 0)if(e===!1)this.options.enabled=!1,this.physicsEnabled=!1,this.stopSimulation();else if(e===!0)this.options.enabled=!0,this.physicsEnabled=!0,this.startSimulation();else{this.physicsEnabled=!0,tI(["stabilization"],this.options,e),ur(this.options,e,"stabilization"),e.enabled===void 0&&(this.options.enabled=!0),this.options.enabled===!1&&(this.physicsEnabled=!1,this.stopSimulation());const t=this.options.wind;t&&((typeof t.x!="number"||qO(t.x))&&(t.x=0),(typeof t.y!="number"||qO(t.y))&&(t.y=0)),this.timestep=this.options.timestep}this.init()}init(){let e;this.options.solver==="forceAtlas2Based"?(e=this.options.forceAtlas2Based,this.nodesSolver=new NEe(this.body,this.physicsBody,e),this.edgesSolver=new I_(this.body,this.physicsBody,e),this.gravitySolver=new MEe(this.body,this.physicsBody,e)):this.options.solver==="repulsion"?(e=this.options.repulsion,this.nodesSolver=new xEe(this.body,this.physicsBody,e),this.edgesSolver=new I_(this.body,this.physicsBody,e),this.gravitySolver=new xA(this.body,this.physicsBody,e)):this.options.solver==="hierarchicalRepulsion"?(e=this.options.hierarchicalRepulsion,this.nodesSolver=new $Ee(this.body,this.physicsBody,e),this.edgesSolver=new DEe(this.body,this.physicsBody,e),this.gravitySolver=new xA(this.body,this.physicsBody,e)):(e=this.options.barnesHut,this.nodesSolver=new mte(this.body,this.physicsBody,e),this.edgesSolver=new I_(this.body,this.physicsBody,e),this.gravitySolver=new xA(this.body,this.physicsBody,e)),this.modelOptions=e}initPhysics(){this.physicsEnabled===!0&&this.options.enabled===!0?this.options.stabilization.enabled===!0?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"))}startSimulation(){if(this.physicsEnabled===!0&&this.options.enabled===!0){if(this.stabilized=!1,this.adaptiveTimestep=!1,this.body.emitter.emit("_resizeNodes"),this.viewFunction===void 0){var e;this.viewFunction=j(e=this.simulationStep).call(e,this),this.body.emitter.on("initRedraw",this.viewFunction),this.body.emitter.emit("_startRendering")}}else this.body.emitter.emit("_redraw")}stopSimulation(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;this.stabilized=!0,e===!0&&this._emitStabilized(),this.viewFunction!==void 0&&(this.body.emitter.off("initRedraw",this.viewFunction),this.viewFunction=void 0,e===!0&&this.body.emitter.emit("_stopRendering"))}simulationStep(){const e=XA();this.physicsTick(),(XA()-e<.4*this.simulationInterval||this.runDoubleSpeed===!0)&&this.stabilized===!1&&(this.physicsTick(),this.runDoubleSpeed=!0),this.stabilized===!0&&this.stopSimulation()}_emitStabilized(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.stabilizationIterations;(this.stabilizationIterations>1||this.startedStabilization===!0)&&Si(()=>{this.body.emitter.emit("stabilized",{iterations:e}),this.startedStabilization=!1,this.stabilizationIterations=0},0)}physicsStep(){this.gravitySolver.solve(),this.nodesSolver.solve(),this.edgesSolver.solve(),this.moveNodes()}adjustTimeStep(){this._evaluateStepQuality()===!0?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))}physicsTick(){this._startStabilizing(),this.stabilized!==!0&&(this.adaptiveTimestep===!0&&this.adaptiveTimestepEnabled===!0?(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):(this.timestep=this.options.timestep,this.physicsStep()),this.stabilized===!0&&this.revert(),this.stabilizationIterations++)}updatePhysicsData(){this.physicsBody.forces={},this.physicsBody.physicsNodeIndices=[],this.physicsBody.physicsEdgeIndices=[];const e=this.body.nodes,t=this.body.edges;for(const r in e)Object.prototype.hasOwnProperty.call(e,r)&&e[r].options.physics===!0&&this.physicsBody.physicsNodeIndices.push(e[r].id);for(const r in t)Object.prototype.hasOwnProperty.call(t,r)&&t[r].options.physics===!0&&this.physicsBody.physicsEdgeIndices.push(t[r].id);for(let r=0;r<this.physicsBody.physicsNodeIndices.length;r++){const i=this.physicsBody.physicsNodeIndices[r];this.physicsBody.forces[i]={x:0,y:0},this.physicsBody.velocities[i]===void 0&&(this.physicsBody.velocities[i]={x:0,y:0})}for(const r in this.physicsBody.velocities)e[r]===void 0&&delete this.physicsBody.velocities[r]}revert(){const e=Xe(this.previousStates),t=this.body.nodes,r=this.physicsBody.velocities;this.referenceState={};for(let i=0;i<e.length;i++){const o=e[i];t[o]!==void 0?t[o].options.physics===!0&&(this.referenceState[o]={positions:{x:t[o].x,y:t[o].y}},r[o].x=this.previousStates[o].vx,r[o].y=this.previousStates[o].vy,t[o].x=this.previousStates[o].x,t[o].y=this.previousStates[o].y):delete this.previousStates[o]}}_evaluateStepQuality(){let e,t,r;const i=this.body.nodes,o=this.referenceState,s=.3;for(const a in this.referenceState)if(Object.prototype.hasOwnProperty.call(this.referenceState,a)&&i[a]!==void 0&&(e=i[a].x-o[a].positions.x,t=i[a].y-o[a].positions.y,r=Math.sqrt(Math.pow(e,2)+Math.pow(t,2)),r>s))return!1;return!0}moveNodes(){const e=this.physicsBody.physicsNodeIndices;let t=0,r=0;const i=5;for(let o=0;o<e.length;o++){const s=e[o],a=this._performStep(s);t=Math.max(t,a),r+=a}this.adaptiveTimestepEnabled=r/e.length<i,this.stabilized=t<this.options.minVelocity}calculateComponentVelocity(e,t,r){const i=this.modelOptions.damping*e,o=(t-i)/r;e+=o*this.timestep;const s=this.options.maxVelocity||1e9;return Math.abs(e)>s&&(e=e>0?s:-s),e}_performStep(e){const t=this.body.nodes[e],r=this.physicsBody.forces[e];this.options.wind&&(r.x+=this.options.wind.x,r.y+=this.options.wind.y);const i=this.physicsBody.velocities[e];return this.previousStates[e]={x:t.x,y:t.y,vx:i.x,vy:i.y},t.options.fixed.x===!1?(i.x=this.calculateComponentVelocity(i.x,r.x,t.options.mass),t.x+=i.x*this.timestep):(r.x=0,i.x=0),t.options.fixed.y===!1?(i.y=this.calculateComponentVelocity(i.y,r.y,t.options.mass),t.y+=i.y*this.timestep):(r.y=0,i.y=0),Math.sqrt(Math.pow(i.x,2)+Math.pow(i.y,2))}_freezeNodes(){const e=this.body.nodes;for(const t in e)if(Object.prototype.hasOwnProperty.call(e,t)&&e[t].x&&e[t].y){const r=e[t].options.fixed;this.freezeCache[t]={x:r.x,y:r.y},r.x=!0,r.y=!0}}_restoreFrozenNodes(){const e=this.body.nodes;for(const t in e)Object.prototype.hasOwnProperty.call(e,t)&&this.freezeCache[t]!==void 0&&(e[t].options.fixed.x=this.freezeCache[t].x,e[t].options.fixed.y=this.freezeCache[t].y);this.freezeCache={}}stabilize(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.options.stabilization.iterations;if(typeof e!="number"&&(e=this.options.stabilization.iterations,console.error("The stabilize method needs a numeric amount of iterations. Switching to default: ",e)),this.physicsBody.physicsNodeIndices.length===0){this.ready=!0;return}this.adaptiveTimestep=this.options.adaptiveTimestep,this.body.emitter.emit("_resizeNodes"),this.stopSimulation(),this.stabilized=!1,this.body.emitter.emit("_blockRedraw"),this.targetIterations=e,this.options.stabilization.onlyDynamicEdges===!0&&this._freezeNodes(),this.stabilizationIterations=0,Si(()=>this._stabilizationBatch(),0)}_startStabilizing(){return this.startedStabilization===!0?!1:(this.body.emitter.emit("startStabilizing"),this.startedStabilization=!0,!0)}_stabilizationBatch(){const e=()=>this.stabilized===!1&&this.stabilizationIterations<this.targetIterations,t=()=>{this.body.emitter.emit("stabilizationProgress",{iterations:this.stabilizationIterations,total:this.targetIterations})};this._startStabilizing()&&t();let r=0;for(;e()&&r<this.options.stabilization.updateInterval;)this.physicsTick(),r++;if(t(),e()){var i;Si(j(i=this._stabilizationBatch).call(i,this),0)}else this._finalizeStabilization()}_finalizeStabilization(){this.body.emitter.emit("_allowRedraw"),this.options.stabilization.fit===!0&&this.body.emitter.emit("fit"),this.options.stabilization.onlyDynamicEdges===!0&&this._restoreFrozenNodes(),this.body.emitter.emit("stabilizationIterationsDone"),this.body.emitter.emit("_requestRedraw"),this.stabilized===!0?this._emitStabilized():this.startSimulation(),this.ready=!0}_drawForces(e){for(let t=0;t<this.physicsBody.physicsNodeIndices.length;t++){const r=this.physicsBody.physicsNodeIndices[t],i=this.body.nodes[r],o=this.physicsBody.forces[r],s=20,a=.03,g=Math.sqrt(Math.pow(o.x,2)+Math.pow(o.x,2)),A=Math.min(Math.max(5,g),15),I=3*A,C=DO((180-Math.min(1,Math.max(0,a*g))*180)/360,1,1),l={x:i.x+s*o.x,y:i.y+s*o.y};e.lineWidth=A,e.strokeStyle=C,e.beginPath(),e.moveTo(i.x,i.y),e.lineTo(l.x,l.y),e.stroke();const d=Math.atan2(o.y,o.x);e.fillStyle=C,pte.draw(e,{type:"arrow",point:l,angle:d,length:I}),tA(e).call(e)}}}const Nt=[];for(let n=0;n<256;++n)Nt.push((n+256).toString(16).slice(1));function FEe(n,e=0){return(Nt[n[e+0]]+Nt[n[e+1]]+Nt[n[e+2]]+Nt[n[e+3]]+"-"+Nt[n[e+4]]+Nt[n[e+5]]+"-"+Nt[n[e+6]]+Nt[n[e+7]]+"-"+Nt[n[e+8]]+Nt[n[e+9]]+"-"+Nt[n[e+10]]+Nt[n[e+11]]+Nt[n[e+12]]+Nt[n[e+13]]+Nt[n[e+14]]+Nt[n[e+15]]).toLowerCase()}let C_;const kEe=new Uint8Array(16);function BEe(){if(!C_){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");C_=crypto.getRandomValues.bind(crypto)}return C_(kEe)}const zEe=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto);var a6={randomUUID:zEe};function jEe(n,e,t){n=n||{};const r=n.random??n.rng?.()??BEe();if(r.length<16)throw new Error("Random bytes length must be >= 16");return r[6]=r[6]&15|64,r[8]=r[8]&63|128,FEe(r)}function ja(n,e,t){return a6.randomUUID&&!n?a6.randomUUID():jEe(n)}class Gt{constructor(){}static getRange(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=1e9,i=-1e9,o=1e9,s=-1e9,a;if(t.length>0)for(let g=0;g<t.length;g++)a=e[t[g]],o>a.shape.boundingBox.left&&(o=a.shape.boundingBox.left),s<a.shape.boundingBox.right&&(s=a.shape.boundingBox.right),r>a.shape.boundingBox.top&&(r=a.shape.boundingBox.top),i<a.shape.boundingBox.bottom&&(i=a.shape.boundingBox.bottom);return o===1e9&&s===-1e9&&r===1e9&&i===-1e9&&(r=0,i=0,o=0,s=0),{minX:o,maxX:s,minY:r,maxY:i}}static getRangeCore(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=1e9,i=-1e9,o=1e9,s=-1e9,a;if(t.length>0)for(let g=0;g<t.length;g++)a=e[t[g]],o>a.x&&(o=a.x),s<a.x&&(s=a.x),r>a.y&&(r=a.y),i<a.y&&(i=a.y);return o===1e9&&s===-1e9&&r===1e9&&i===-1e9&&(r=0,i=0,o=0,s=0),{minX:o,maxX:s,minY:r,maxY:i}}static findCenter(e){return{x:.5*(e.maxX+e.minX),y:.5*(e.maxY+e.minY)}}static cloneOptions(e,t){const r={};return t===void 0||t==="node"?(qe(r,e.options,!0),r.x=e.x,r.y=e.y,r.amountOfConnections=e.edges.length):qe(r,e.options,!0),r}}class LEe extends je{constructor(e,t,r,i,o,s){super(e,t,r,i,o,s),this.isCluster=!0,this.containedNodes={},this.containedEdges={}}_openChildCluster(e){const t=this.body.nodes[e];if(this.containedNodes[e]===void 0)throw new Error("node with id: "+e+" not in current cluster");if(!t.isCluster)throw new Error("node with id: "+e+" is not a cluster");delete this.containedNodes[e],ue(t.edges,r=>{delete this.containedEdges[r.id]}),ue(t.containedNodes,(r,i)=>{this.containedNodes[i]=r}),t.containedNodes={},ue(t.containedEdges,(r,i)=>{this.containedEdges[i]=r}),t.containedEdges={},ue(t.edges,r=>{ue(this.edges,i=>{var o,s;const a=Oe(o=i.clusteringEdgeReplacingIds).call(o,r.id);a!==-1&&(ue(r.clusteringEdgeReplacingIds,g=>{i.clusteringEdgeReplacingIds.push(g),this.body.edges[g].edgeReplacedById=i.id}),Ei(s=i.clusteringEdgeReplacingIds).call(s,a,1))})}),t.edges=[]}}class GEe{constructor(e){this.body=e,this.clusteredNodes={},this.clusteredEdges={},this.options={},this.defaultOptions={},At(this.options,this.defaultOptions),this.body.emitter.on("_resetData",()=>{this.clusteredNodes={},this.clusteredEdges={}})}clusterByHubsize(e,t){e===void 0?e=this._getHubSize():typeof e=="object"&&(t=this._checkOptions(e),e=this._getHubSize());const r=[];for(let i=0;i<this.body.nodeIndices.length;i++){const o=this.body.nodes[this.body.nodeIndices[i]];o.edges.length>=e&&r.push(o.id)}for(let i=0;i<r.length;i++)this.clusterByConnection(r[i],t,!0);this.body.emitter.emit("_dataChanged")}cluster(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(e.joinCondition===void 0)throw new Error("Cannot call clusterByNodeData without a joinCondition function in the options.");e=this._checkOptions(e);const r={},i={};ue(this.body.nodes,(o,s)=>{o.options&&e.joinCondition(o.options)===!0&&(r[s]=o,ue(o.edges,a=>{this.clusteredEdges[a.id]===void 0&&(i[a.id]=a)}))}),this._cluster(r,i,e,t)}clusterByEdgeCount(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;t=this._checkOptions(t);const i=[],o={};let s,a,g;for(let A=0;A<this.body.nodeIndices.length;A++){const I={},C={},l=this.body.nodeIndices[A],d=this.body.nodes[l];if(o[l]===void 0){g=0,a=[];for(let u=0;u<d.edges.length;u++)s=d.edges[u],this.clusteredEdges[s.id]===void 0&&(s.toId!==s.fromId&&g++,a.push(s));if(g===e){const u=function(v){if(t.joinCondition===void 0||t.joinCondition===null)return!0;const f=Gt.cloneOptions(v);return t.joinCondition(f)};let h=!0;for(let v=0;v<a.length;v++){s=a[v];const f=this._getConnectedId(s,l);if(u(d))C[s.id]=s,I[l]=d,I[f]=this.body.nodes[f],o[l]=!0;else{h=!1;break}}if(Xe(I).length>0&&Xe(C).length>0&&h===!0){const f=function(){for(let c=0;c<i.length;++c)for(const b in I)if(i[c].nodes[b]!==void 0)return i[c]}();if(f!==void 0){for(const c in I)f.nodes[c]===void 0&&(f.nodes[c]=I[c]);for(const c in C)f.edges[c]===void 0&&(f.edges[c]=C[c])}else i.push({nodes:I,edges:C})}}}}for(let A=0;A<i.length;A++)this._cluster(i[A].nodes,i[A].edges,t,!1);r===!0&&this.body.emitter.emit("_dataChanged")}clusterOutliers(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;this.clusterByEdgeCount(1,e,t)}clusterBridges(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;this.clusterByEdgeCount(2,e,t)}clusterByConnection(e,t){var r;let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(e===void 0)throw new Error("No nodeId supplied to clusterByConnection!");if(this.body.nodes[e]===void 0)throw new Error("The nodeId given to clusterByConnection does not exist!");const o=this.body.nodes[e];t=this._checkOptions(t,o),t.clusterNodeProperties.x===void 0&&(t.clusterNodeProperties.x=o.x),t.clusterNodeProperties.y===void 0&&(t.clusterNodeProperties.y=o.y),t.clusterNodeProperties.fixed===void 0&&(t.clusterNodeProperties.fixed={},t.clusterNodeProperties.fixed.x=o.options.fixed.x,t.clusterNodeProperties.fixed.y=o.options.fixed.y);const s={},a={},g=o.id,A=Gt.cloneOptions(o);s[g]=o;for(let C=0;C<o.edges.length;C++){const l=o.edges[C];if(this.clusteredEdges[l.id]===void 0){const d=this._getConnectedId(l,g);if(this.clusteredNodes[d]===void 0)if(d!==g)if(t.joinCondition===void 0)a[l.id]=l,s[d]=this.body.nodes[d];else{const u=Gt.cloneOptions(this.body.nodes[d]);t.joinCondition(A,u)===!0&&(a[l.id]=l,s[d]=this.body.nodes[d])}else a[l.id]=l}}const I=bs(r=Xe(s)).call(r,function(C){return s[C].id});for(const C in s){if(!Object.prototype.hasOwnProperty.call(s,C))continue;const l=s[C];for(let d=0;d<l.edges.length;d++){const u=l.edges[d];Oe(I).call(I,this._getConnectedId(u,l.id))>-1&&(a[u.id]=u)}}this._cluster(s,a,t,i)}_createClusterEdges(e,t,r,i){let o,s,a,g,A,I;const C=Xe(e),l=[];for(let h=0;h<C.length;h++){s=C[h],a=e[s];for(let v=0;v<a.edges.length;v++)o=a.edges[v],this.clusteredEdges[o.id]===void 0&&(o.toId==o.fromId?t[o.id]=o:o.toId==s?(g=r.id,A=o.fromId,I=A):(g=o.toId,A=r.id,I=g),e[I]===void 0&&l.push({edge:o,fromId:A,toId:g}))}const d=[],u=function(h){for(let v=0;v<d.length;v++){const f=d[v],c=h.fromId===f.fromId&&h.toId===f.toId,b=h.fromId===f.toId&&h.toId===f.fromId;if(c||b)return f}return null};for(let h=0;h<l.length;h++){const v=l[h],f=v.edge;let c=u(v);c===null?(c=this._createClusteredEdge(v.fromId,v.toId,f,i),d.push(c)):c.clusteringEdgeReplacingIds.push(f.id),this.body.edges[f.id].edgeReplacedById=c.id,this._backupEdgeOptions(f),f.setOptions({physics:!1})}}_checkOptions(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return e.clusterEdgeProperties===void 0&&(e.clusterEdgeProperties={}),e.clusterNodeProperties===void 0&&(e.clusterNodeProperties={}),e}_cluster(e,t,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;const o=[];for(const I in e)Object.prototype.hasOwnProperty.call(e,I)&&this.clusteredNodes[I]!==void 0&&o.push(I);for(let I=0;I<o.length;++I)delete e[o[I]];if(Xe(e).length==0||Xe(e).length==1&&r.clusterNodeProperties.allowSingleNodeCluster!=!0)return;let s=qe({},r.clusterNodeProperties);if(r.processProperties!==void 0){const I=[];for(const l in e)if(Object.prototype.hasOwnProperty.call(e,l)){const d=Gt.cloneOptions(e[l]);I.push(d)}const C=[];for(const l in t)if(Object.prototype.hasOwnProperty.call(t,l)&&l.substr(0,12)!=="clusterEdge:"){const d=Gt.cloneOptions(t[l],"edge");C.push(d)}if(s=r.processProperties(s,I,C),!s)throw new Error("The processProperties function does not return properties!")}s.id===void 0&&(s.id="cluster:"+ja());const a=s.id;s.label===void 0&&(s.label="cluster");let g;s.x===void 0&&(g=this._getClusterPosition(e),s.x=g.x),s.y===void 0&&(g===void 0&&(g=this._getClusterPosition(e)),s.y=g.y),s.id=a;const A=this.body.functions.createNode(s,LEe);A.containedNodes=e,A.containedEdges=t,A.clusterEdgeProperties=r.clusterEdgeProperties,this.body.nodes[s.id]=A,this._clusterEdges(e,t,s,r.clusterEdgeProperties),s.id=void 0,i===!0&&this.body.emitter.emit("_dataChanged")}_backupEdgeOptions(e){this.clusteredEdges[e.id]===void 0&&(this.clusteredEdges[e.id]={physics:e.options.physics})}_restoreEdge(e){const t=this.clusteredEdges[e.id];t!==void 0&&(e.setOptions({physics:t.physics}),delete this.clusteredEdges[e.id])}isCluster(e){return this.body.nodes[e]!==void 0?this.body.nodes[e].isCluster===!0:(console.error("Node does not exist."),!1)}_getClusterPosition(e){const t=Xe(e);let r=e[t[0]].x,i=e[t[0]].x,o=e[t[0]].y,s=e[t[0]].y,a;for(let g=1;g<t.length;g++)a=e[t[g]],r=a.x<r?a.x:r,i=a.x>i?a.x:i,o=a.y<o?a.y:o,s=a.y>s?a.y:s;return{x:.5*(r+i),y:.5*(o+s)}}openCluster(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(e===void 0)throw new Error("No clusterNodeId supplied to openCluster.");const i=this.body.nodes[e];if(i===void 0)throw new Error("The clusterNodeId supplied to openCluster does not exist.");if(i.isCluster!==!0||i.containedNodes===void 0||i.containedEdges===void 0)throw new Error("The node:"+e+" is not a valid cluster.");const o=this.findNode(e),s=Oe(o).call(o,e)-1;if(s>=0){const I=o[s];this.body.nodes[I]._openChildCluster(e),delete this.body.nodes[e],r===!0&&this.body.emitter.emit("_dataChanged");return}const a=i.containedNodes,g=i.containedEdges;if(t!==void 0&&t.releaseFunction!==void 0&&typeof t.releaseFunction=="function"){const I={},C={x:i.x,y:i.y};for(const d in a)if(Object.prototype.hasOwnProperty.call(a,d)){const u=this.body.nodes[d];I[d]={x:u.x,y:u.y}}const l=t.releaseFunction(C,I);for(const d in a)if(Object.prototype.hasOwnProperty.call(a,d)){const u=this.body.nodes[d];l[d]!==void 0&&(u.x=l[d].x===void 0?i.x:l[d].x,u.y=l[d].y===void 0?i.y:l[d].y)}}else ue(a,function(I){I.options.fixed.x===!1&&(I.x=i.x),I.options.fixed.y===!1&&(I.y=i.y)});for(const I in a)if(Object.prototype.hasOwnProperty.call(a,I)){const C=this.body.nodes[I];C.vx=i.vx,C.vy=i.vy,C.setOptions({physics:!0}),delete this.clusteredNodes[I]}const A=[];for(let I=0;I<i.edges.length;I++)A.push(i.edges[I]);for(let I=0;I<A.length;I++){const C=A[I],l=this._getConnectedId(C,e),d=this.clusteredNodes[l];for(let u=0;u<C.clusteringEdgeReplacingIds.length;u++){const h=C.clusteringEdgeReplacingIds[u],v=this.body.edges[h];if(v!==void 0)if(d!==void 0){const f=this.body.nodes[d.clusterId];f.containedEdges[v.id]=v,delete g[v.id];let c=v.fromId,b=v.toId;v.toId==l?b=d.clusterId:c=d.clusterId,this._createClusteredEdge(c,b,v,f.clusterEdgeProperties,{hidden:!1,physics:!0})}else this._restoreEdge(v)}C.remove()}for(const I in g)Object.prototype.hasOwnProperty.call(g,I)&&this._restoreEdge(g[I]);delete this.body.nodes[e],r===!0&&this.body.emitter.emit("_dataChanged")}getNodesInCluster(e){const t=[];if(this.isCluster(e)===!0){const r=this.body.nodes[e].containedNodes;for(const i in r)Object.prototype.hasOwnProperty.call(r,i)&&t.push(this.body.nodes[i].id)}return t}findNode(e){const t=[];let i=0,o;for(;this.clusteredNodes[e]!==void 0&&i<100;){if(o=this.body.nodes[e],o===void 0)return[];t.push(o.id),e=this.clusteredNodes[e].clusterId,i++}return o=this.body.nodes[e],o===void 0?[]:(t.push(o.id),Vn(t).call(t),t)}updateClusteredNode(e,t){if(e===void 0)throw new Error("No clusteredNodeId supplied to updateClusteredNode.");if(t===void 0)throw new Error("No newOptions supplied to updateClusteredNode.");if(this.body.nodes[e]===void 0)throw new Error("The clusteredNodeId supplied to updateClusteredNode does not exist.");this.body.nodes[e].setOptions(t),this.body.emitter.emit("_dataChanged")}updateEdge(e,t){if(e===void 0)throw new Error("No startEdgeId supplied to updateEdge.");if(t===void 0)throw new Error("No newOptions supplied to updateEdge.");if(this.body.edges[e]===void 0)throw new Error("The startEdgeId supplied to updateEdge does not exist.");const r=this.getClusteredEdges(e);for(let i=0;i<r.length;i++)this.body.edges[r[i]].setOptions(t);this.body.emitter.emit("_dataChanged")}getClusteredEdges(e){const t=[];let i=0;for(;e!==void 0&&this.body.edges[e]!==void 0&&i<100;)t.push(this.body.edges[e].id),e=this.body.edges[e].edgeReplacedById,i++;return Vn(t).call(t),t}getBaseEdge(e){return this.getBaseEdges(e)[0]}getBaseEdges(e){const t=[e],r=[],i=[],o=100;let s=0;for(;t.length>0&&s<o;){const a=t.pop();if(a===void 0)continue;const g=this.body.edges[a];if(g===void 0)continue;s++;const A=g.clusteringEdgeReplacingIds;if(A===void 0)i.push(a);else for(let I=0;I<A.length;++I){const C=A[I];Oe(t).call(t,A)!==-1||Oe(r).call(r,A)!==-1||t.push(C)}r.push(a)}return i}_getConnectedId(e,t){return e.toId!=t?e.toId:(e.fromId!=t,e.fromId)}_getHubSize(){let e=0,t=0,r=0,i=0;for(let g=0;g<this.body.nodeIndices.length;g++){const A=this.body.nodes[this.body.nodeIndices[g]];A.edges.length>i&&(i=A.edges.length),e+=A.edges.length,t+=Math.pow(A.edges.length,2),r+=1}e=e/r,t=t/r;const o=t-Math.pow(e,2),s=Math.sqrt(o);let a=Math.floor(e+2*s);return a>i&&(a=i),a}_createClusteredEdge(e,t,r,i,o){const s=Gt.cloneOptions(r,"edge");qe(s,i),s.from=e,s.to=t,s.id="clusterEdge:"+ja(),o!==void 0&&qe(s,o);const a=this.body.functions.createEdge(s);return a.clusteringEdgeReplacingIds=[r.id],a.connect(),this.body.edges[a.id]=a,a}_clusterEdges(e,t,r,i){if(t instanceof ln){const o=t,s={};s[o.id]=o,t=s}if(e instanceof je){const o=e,s={};s[o.id]=o,e=s}if(r==null)throw new Error("_clusterEdges: parameter clusterNode required");i===void 0&&(i=r.clusterEdgeProperties),this._createClusterEdges(e,t,r,i);for(const o in t)if(Object.prototype.hasOwnProperty.call(t,o)&&this.body.edges[o]!==void 0){const s=this.body.edges[o];this._backupEdgeOptions(s),s.setOptions({physics:!1})}for(const o in e)Object.prototype.hasOwnProperty.call(e,o)&&(this.clusteredNodes[o]={clusterId:r.id,node:this.body.nodes[o]},this.body.nodes[o].setOptions({physics:!1}))}_getClusterNodeForNode(e){if(e===void 0)return;const t=this.clusteredNodes[e];if(t===void 0)return;const r=t.clusterId;if(r!==void 0)return this.body.nodes[r]}_filter(e,t){const r=[];return ue(e,i=>{t(i)&&r.push(i)}),r}_updateState(){let e;const t=[],r={},i=g=>{ue(this.body.nodes,A=>{A.isCluster===!0&&g(A)})};for(e in this.clusteredNodes){if(!Object.prototype.hasOwnProperty.call(this.clusteredNodes,e))continue;this.body.nodes[e]===void 0&&t.push(e)}i(function(g){for(let A=0;A<t.length;A++)delete g.containedNodes[t[A]]});for(let g=0;g<t.length;g++)delete this.clusteredNodes[t[g]];ue(this.clusteredEdges,g=>{const A=this.body.edges[g];(A===void 0||!A.endPointsValid())&&(r[g]=g)}),i(function(g){ue(g.containedEdges,(A,I)=>{!A.endPointsValid()&&!r[I]&&(r[I]=I)})}),ue(this.body.edges,(g,A)=>{let I=!0;const C=g.clusteringEdgeReplacingIds;if(C!==void 0){let l=0;ue(C,d=>{const u=this.body.edges[d];u!==void 0&&u.endPointsValid()&&(l+=1)}),I=l>0}(!g.endPointsValid()||!I)&&(r[A]=A)}),i(g=>{ue(r,A=>{delete g.containedEdges[A],ue(g.edges,(I,C)=>{if(I.id===A){g.edges[C]=null;return}I.clusteringEdgeReplacingIds=this._filter(I.clusteringEdgeReplacingIds,function(l){return!r[l]})}),g.edges=this._filter(g.edges,function(I){return I!==null})})}),ue(r,g=>{delete this.clusteredEdges[g]}),ue(r,g=>{delete this.body.edges[g]});const o=Xe(this.body.edges);ue(o,g=>{const A=this.body.edges[g],I=this._isClusteredNode(A.fromId)||this._isClusteredNode(A.toId);if(I!==this._isClusteredEdge(A.id))if(I){const C=this._getClusterNodeForNode(A.fromId);C!==void 0&&this._clusterEdges(this.body.nodes[A.fromId],A,C);const l=this._getClusterNodeForNode(A.toId);l!==void 0&&this._clusterEdges(this.body.nodes[A.toId],A,l)}else delete this._clusterEdges[g],this._restoreEdge(A)});let s=!1,a=!0;for(;a;){const g=[];i(function(A){const I=Xe(A.containedNodes).length,C=A.options.allowSingleNodeCluster===!0;(C&&I<1||!C&&I<2)&&g.push(A.id)});for(let A=0;A<g.length;++A)this.openCluster(g[A],{},!1);a=g.length>0,s=s||a}s&&this._updateState()}_isClusteredNode(e){return this.clusteredNodes[e]!==void 0}_isClusteredEdge(e){return this.clusteredEdges[e]!==void 0}}class WEe{constructor(e,t){this.body=e,this.canvas=t,this.redrawRequested=!1,this.requestAnimationFrameRequestId=void 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},At(this.options,this.defaultOptions),this.bindEventListeners()}bindEventListeners(){var e;this.body.emitter.on("dragStart",()=>{this.dragging=!0}),this.body.emitter.on("dragEnd",()=>{this.dragging=!1}),this.body.emitter.on("zoom",()=>{this.zooming=!0,window.clearTimeout(this.zoomTimeoutId),this.zoomTimeoutId=Si(()=>{var t;this.zooming=!1,j(t=this._requestRedraw).call(t,this)()},250)}),this.body.emitter.on("_resizeNodes",()=>{this._resizeNodes()}),this.body.emitter.on("_redraw",()=>{this.renderingActive===!1&&this._redraw()}),this.body.emitter.on("_blockRedraw",()=>{this.allowRedraw=!1}),this.body.emitter.on("_allowRedraw",()=>{this.allowRedraw=!0,this.redrawRequested=!1}),this.body.emitter.on("_requestRedraw",j(e=this._requestRedraw).call(e,this)),this.body.emitter.on("_startRendering",()=>{this.renderRequests+=1,this.renderingActive=!0,this._startRendering()}),this.body.emitter.on("_stopRendering",()=>{this.renderRequests-=1,this.renderingActive=this.renderRequests>0,this.requestAnimationFrameRequestId=void 0}),this.body.emitter.on("destroy",()=>{this.renderRequests=0,this.allowRedraw=!1,this.renderingActive=!1,window.cancelAnimationFrame(this.requestAnimationFrameRequestId),this.body.emitter.off()})}setOptions(e){e!==void 0&&da(["hideEdgesOnDrag","hideEdgesOnZoom","hideNodesOnDrag"],this.options,e)}_startRendering(){if(this.renderingActive===!0&&this.requestAnimationFrameRequestId===void 0){var e;this.requestAnimationFrameRequestId=window.requestAnimationFrame(j(e=this._renderStep).call(e,this),this.simulationInterval)}}_renderStep(){this.renderingActive===!0&&(this.requestAnimationFrameRequestId=void 0,this._startRendering(),this._redraw())}redraw(){this.body.emitter.emit("setSize"),this._redraw()}_requestRedraw(){this.redrawRequested!==!0&&this.renderingActive===!1&&this.allowRedraw===!0&&(this.redrawRequested=!0,window.requestAnimationFrame(()=>{this._redraw(!1)}))}_redraw(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;if(this.allowRedraw===!0){this.body.emitter.emit("initRedraw"),this.redrawRequested=!1;const t={drawExternalLabels:null};(this.canvas.frame.canvas.width===0||this.canvas.frame.canvas.height===0)&&this.canvas.setSize(),this.canvas.setTransform();const r=this.canvas.getContext(),i=this.canvas.frame.canvas.clientWidth,o=this.canvas.frame.canvas.clientHeight;if(r.clearRect(0,0,i,o),this.canvas.frame.clientWidth===0)return;if(r.save(),r.translate(this.body.view.translation.x,this.body.view.translation.y),r.scale(this.body.view.scale,this.body.view.scale),r.beginPath(),this.body.emitter.emit("beforeDrawing",r),r.closePath(),e===!1&&(this.dragging===!1||this.dragging===!0&&this.options.hideEdgesOnDrag===!1)&&(this.zooming===!1||this.zooming===!0&&this.options.hideEdgesOnZoom===!1)&&this._drawEdges(r),this.dragging===!1||this.dragging===!0&&this.options.hideNodesOnDrag===!1){const{drawExternalLabels:s}=this._drawNodes(r,e);t.drawExternalLabels=s}e===!1&&(this.dragging===!1||this.dragging===!0&&this.options.hideEdgesOnDrag===!1)&&(this.zooming===!1||this.zooming===!0&&this.options.hideEdgesOnZoom===!1)&&this._drawArrows(r),t.drawExternalLabels!=null&&t.drawExternalLabels(),e===!1&&this._drawSelectionBox(r),r.beginPath(),this.body.emitter.emit("afterDrawing",r),r.closePath(),r.restore(),e===!0&&r.clearRect(0,0,i,o)}}_resizeNodes(){this.canvas.setTransform();const e=this.canvas.getContext();e.save(),e.translate(this.body.view.translation.x,this.body.view.translation.y),e.scale(this.body.view.scale,this.body.view.scale);const t=this.body.nodes;let r;for(const i in t)Object.prototype.hasOwnProperty.call(t,i)&&(r=t[i],r.resize(e),r.updateBoundingBox(e,r.selected));e.restore()}_drawNodes(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;const r=this.body.nodes,i=this.body.nodeIndices;let o;const s=[],a=[],g=20,A=this.canvas.DOMtoCanvas({x:-g,y:-g}),I=this.canvas.DOMtoCanvas({x:this.canvas.frame.canvas.clientWidth+g,y:this.canvas.frame.canvas.clientHeight+g}),C={top:A.y,left:A.x,bottom:I.y,right:I.x},l=[];for(let v=0;v<i.length;v++)if(o=r[i[v]],o.hover)a.push(i[v]);else if(o.isSelected())s.push(i[v]);else if(t===!0){const f=o.draw(e);f.drawExternalLabel!=null&&l.push(f.drawExternalLabel)}else if(o.isBoundingBoxOverlappingWith(C)===!0){const f=o.draw(e);f.drawExternalLabel!=null&&l.push(f.drawExternalLabel)}else o.updateBoundingBox(e,o.selected);let d;const u=s.length,h=a.length;for(d=0;d<u;d++){o=r[s[d]];const v=o.draw(e);v.drawExternalLabel!=null&&l.push(v.drawExternalLabel)}for(d=0;d<h;d++){o=r[a[d]];const v=o.draw(e);v.drawExternalLabel!=null&&l.push(v.drawExternalLabel)}return{drawExternalLabels:()=>{for(const v of l)v()}}}_drawEdges(e){const t=this.body.edges,r=this.body.edgeIndices;for(let i=0;i<r.length;i++){const o=t[r[i]];o.connected===!0&&o.draw(e)}}_drawArrows(e){const t=this.body.edges,r=this.body.edgeIndices;for(let i=0;i<r.length;i++){const o=t[r[i]];o.connected===!0&&o.drawArrows(e)}}_drawSelectionBox(e){if(this.body.selectionBox.show){e.beginPath();const t=this.body.selectionBox.position.end.x-this.body.selectionBox.position.start.x,r=this.body.selectionBox.position.end.y-this.body.selectionBox.position.start.y;e.rect(this.body.selectionBox.position.start.x,this.body.selectionBox.position.start.y,t,r),e.fillStyle="rgba(151, 194, 252, 0.2)",e.fillRect(this.body.selectionBox.position.start.x,this.body.selectionBox.position.start.y,t,r),e.strokeStyle="rgba(151, 194, 252, 1)",e.stroke()}else e.closePath()}}var l_,g6;function VEe(){if(g6)return l_;g6=1,See();var n=Re();return l_=n.setInterval,l_}var d_,A6;function ZEe(){return A6||(A6=1,d_=VEe()),d_}var HEe=ZEe(),UEe=se(HEe);function nI(n,e){e.inputHandler=function(t){t.isFirst&&e(t)},n.on("hammer.input",e.inputHandler)}function yte(n,e){return e.inputHandler=function(t){t.isFinal&&e(t)},n.on("hammer.input",e.inputHandler)}class KEe{constructor(e){this.body=e,this.pixelRatio=1,this.cameraState={},this.initialized=!1,this.canvasViewCenter={},this._cleanupCallbacks=[],this.options={},this.defaultOptions={autoResize:!0,height:"100%",width:"100%"},At(this.options,this.defaultOptions),this.bindEventListeners()}bindEventListeners(){var e;this.body.emitter.once("resize",t=>{t.width!==0&&(this.body.view.translation.x=t.width*.5),t.height!==0&&(this.body.view.translation.y=t.height*.5)}),this.body.emitter.on("setSize",j(e=this.setSize).call(e,this)),this.body.emitter.on("destroy",()=>{this.hammerFrame.destroy(),this.hammer.destroy(),this._cleanUp()})}setOptions(e){if(e!==void 0&&da(["width","height","autoResize"],this.options,e),this._cleanUp(),this.options.autoResize===!0){var t;if(window.ResizeObserver){const i=new ResizeObserver(()=>{this.setSize()===!0&&this.body.emitter.emit("_requestRedraw")}),{frame:o}=this;i.observe(o),this._cleanupCallbacks.push(()=>{i.unobserve(o)})}else{const i=UEe(()=>{this.setSize()===!0&&this.body.emitter.emit("_requestRedraw")},1e3);this._cleanupCallbacks.push(()=>{clearInterval(i)})}const r=j(t=this._onResize).call(t,this);window.addEventListener("resize",r),this._cleanupCallbacks.push(()=>{window.removeEventListener("resize",r)})}}_cleanUp(){var e,t,r;xe(e=Vn(t=Ei(r=this._cleanupCallbacks).call(r,0)).call(t)).call(e,i=>{try{i()}catch(o){console.error(o)}})}_onResize(){this.setSize(),this.body.emitter.emit("_redraw")}_getCameraState(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.pixelRatio;this.initialized===!0&&(this.cameraState.previousWidth=this.frame.canvas.width/e,this.cameraState.previousHeight=this.frame.canvas.height/e,this.cameraState.scale=this.body.view.scale,this.cameraState.position=this.DOMtoCanvas({x:.5*this.frame.canvas.width/e,y:.5*this.frame.canvas.height/e}))}_setCameraState(){if(this.cameraState.scale!==void 0&&this.frame.canvas.clientWidth!==0&&this.frame.canvas.clientHeight!==0&&this.pixelRatio!==0&&this.cameraState.previousWidth>0&&this.cameraState.previousHeight>0){const e=this.frame.canvas.width/this.pixelRatio/this.cameraState.previousWidth,t=this.frame.canvas.height/this.pixelRatio/this.cameraState.previousHeight;let r=this.cameraState.scale;e!=1&&t!=1?r=this.cameraState.scale*.5*(e+t):e!=1?r=this.cameraState.scale*e:t!=1&&(r=this.cameraState.scale*t),this.body.view.scale=r;const i=this.DOMtoCanvas({x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight}),o={x:i.x-this.cameraState.position.x,y:i.y-this.cameraState.position.y};this.body.view.translation.x+=o.x*this.body.view.scale,this.body.view.translation.y+=o.y*this.body.view.scale}}_prepareValue(e){if(typeof e=="number")return e+"px";if(typeof e=="string"){if(Oe(e).call(e,"%")!==-1||Oe(e).call(e,"px")!==-1)return e;if(Oe(e).call(e,"%")===-1)return e+"px"}throw new Error("Could not use the value supplied for width or height:"+e)}_create(){for(;this.body.container.hasChildNodes();)this.body.container.removeChild(this.body.container.firstChild);if(this.frame=document.createElement("div"),this.frame.className="vis-network",this.frame.style.position="relative",this.frame.style.overflow="hidden",this.frame.tabIndex=0,this.frame.canvas=document.createElement("canvas"),this.frame.canvas.style.position="relative",this.frame.appendChild(this.frame.canvas),this.frame.canvas.getContext)this._setPixelRatio(),this.setTransform();else{const e=document.createElement("DIV");e.style.color="red",e.style.fontWeight="bold",e.style.padding="10px",e.innerText="Error: your browser does not support HTML canvas",this.frame.canvas.appendChild(e)}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()}_bindHammer(){this.hammer!==void 0&&this.hammer.destroy(),this.drag={},this.pinch={},this.hammer=new as(this.frame.canvas),this.hammer.get("pinch").set({enable:!0}),this.hammer.get("pan").set({threshold:5,direction:as.DIRECTION_ALL}),nI(this.hammer,e=>{this.body.eventListeners.onTouch(e)}),this.hammer.on("tap",e=>{this.body.eventListeners.onTap(e)}),this.hammer.on("doubletap",e=>{this.body.eventListeners.onDoubleTap(e)}),this.hammer.on("press",e=>{this.body.eventListeners.onHold(e)}),this.hammer.on("panstart",e=>{this.body.eventListeners.onDragStart(e)}),this.hammer.on("panmove",e=>{this.body.eventListeners.onDrag(e)}),this.hammer.on("panend",e=>{this.body.eventListeners.onDragEnd(e)}),this.hammer.on("pinch",e=>{this.body.eventListeners.onPinch(e)}),this.frame.canvas.addEventListener("wheel",e=>{this.body.eventListeners.onMouseWheel(e)}),this.frame.canvas.addEventListener("mousemove",e=>{this.body.eventListeners.onMouseMove(e)}),this.frame.canvas.addEventListener("contextmenu",e=>{this.body.eventListeners.onContext(e)}),this.hammerFrame=new as(this.frame),yte(this.hammerFrame,e=>{this.body.eventListeners.onRelease(e)})}setSize(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.options.width,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.options.height;e=this._prepareValue(e),t=this._prepareValue(t);let r=!1;const i=this.frame.canvas.width,o=this.frame.canvas.height,s=this.pixelRatio;if(this._setPixelRatio(),e!=this.options.width||t!=this.options.height||this.frame.style.width!=e||this.frame.style.height!=t)this._getCameraState(s),this.frame.style.width=e,this.frame.style.height=t,this.frame.canvas.style.width="100%",this.frame.canvas.style.height="100%",this.frame.canvas.width=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),this.frame.canvas.height=Math.round(this.frame.canvas.clientHeight*this.pixelRatio),this.options.width=e,this.options.height=t,this.canvasViewCenter={x:.5*this.frame.clientWidth,y:.5*this.frame.clientHeight},r=!0;else{const a=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),g=Math.round(this.frame.canvas.clientHeight*this.pixelRatio);(this.frame.canvas.width!==a||this.frame.canvas.height!==g)&&this._getCameraState(s),this.frame.canvas.width!==a&&(this.frame.canvas.width=a,r=!0),this.frame.canvas.height!==g&&(this.frame.canvas.height=g,r=!0)}return r===!0&&(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(o/this.pixelRatio)}),this._setCameraState()),this.initialized=!0,r}getContext(){return this.frame.canvas.getContext("2d")}_determinePixelRatio(){const e=this.getContext();if(e===void 0)throw new Error("Could not get canvax context");let t=1;typeof window<"u"&&(t=window.devicePixelRatio||1);const r=e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1;return t/r}_setPixelRatio(){this.pixelRatio=this._determinePixelRatio()}setTransform(){const e=this.getContext();if(e===void 0)throw new Error("Could not get canvax context");e.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}_XconvertDOMtoCanvas(e){return(e-this.body.view.translation.x)/this.body.view.scale}_XconvertCanvasToDOM(e){return e*this.body.view.scale+this.body.view.translation.x}_YconvertDOMtoCanvas(e){return(e-this.body.view.translation.y)/this.body.view.scale}_YconvertCanvasToDOM(e){return e*this.body.view.scale+this.body.view.translation.y}canvasToDOM(e){return{x:this._XconvertCanvasToDOM(e.x),y:this._YconvertCanvasToDOM(e.y)}}DOMtoCanvas(e){return{x:this._XconvertDOMtoCanvas(e.x),y:this._YconvertDOMtoCanvas(e.y)}}}function YEe(n,e){const t=At({nodes:e,minZoomLevel:Number.MIN_VALUE,maxZoomLevel:1},n??{});if(!Qe(t.nodes))throw new TypeError("Nodes has to be an array of ids.");if(t.nodes.length===0&&(t.nodes=e),!(typeof t.minZoomLevel=="number"&&t.minZoomLevel>0))throw new TypeError("Min zoom level has to be a number higher than zero.");if(!(typeof t.maxZoomLevel=="number"&&t.minZoomLevel<=t.maxZoomLevel))throw new TypeError("Max zoom level has to be a number higher than min zoom level.");return t}class XEe{constructor(e,t){var r,i;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",j(r=this.fit).call(r,this)),this.body.emitter.on("animationFinished",()=>{this.body.emitter.emit("_stopRendering")}),this.body.emitter.on("unlockNode",j(i=this.releaseNode).call(i,this))}setOptions(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.options=e}fit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;e=YEe(e,this.body.nodeIndices);const r=this.canvas.frame.canvas.clientWidth,i=this.canvas.frame.canvas.clientHeight;let o,s;if(r===0||i===0)s=1,o=Gt.getRange(this.body.nodes,e.nodes);else if(t===!0){let A=0;for(const l in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,l)&&this.body.nodes[l].predefinedPosition===!0&&(A+=1);if(A>.5*this.body.nodeIndices.length){this.fit(e,!1);return}o=Gt.getRange(this.body.nodes,e.nodes),s=12.662/(this.body.nodeIndices.length+7.4147)+.0964822;const C=Math.min(r/600,i/600);s*=C}else{this.body.emitter.emit("_resizeNodes"),o=Gt.getRange(this.body.nodes,e.nodes);const A=Math.abs(o.maxX-o.minX)*1.1,I=Math.abs(o.maxY-o.minY)*1.1,C=r/A,l=i/I;s=C<=l?C:l}s>e.maxZoomLevel?s=e.maxZoomLevel:s<e.minZoomLevel&&(s=e.minZoomLevel);const g={position:Gt.findCenter(o),scale:s,animation:e.animation};this.moveTo(g)}focus(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(this.body.nodes[e]!==void 0){const r={x:this.body.nodes[e].x,y:this.body.nodes[e].y};t.position=r,t.lockedOnNode=e,this.moveTo(t)}else console.error("Node: "+e+" cannot be found.")}moveTo(e){if(e===void 0){e={};return}if(e.offset!=null){if(e.offset.x!=null){if(e.offset.x=+e.offset.x,!kn(e.offset.x))throw new TypeError('The option "offset.x" has to be a finite number.')}else e.offset.x=0;if(e.offset.y!=null){if(e.offset.y=+e.offset.y,!kn(e.offset.y))throw new TypeError('The option "offset.y" has to be a finite number.')}else e.offset.x=0}else e.offset={x:0,y:0};if(e.position!=null){if(e.position.x!=null){if(e.position.x=+e.position.x,!kn(e.position.x))throw new TypeError('The option "position.x" has to be a finite number.')}else e.position.x=0;if(e.position.y!=null){if(e.position.y=+e.position.y,!kn(e.position.y))throw new TypeError('The option "position.y" has to be a finite number.')}else e.position.x=0}else e.position=this.getViewPosition();if(e.scale!=null){if(e.scale=+e.scale,!(e.scale>0))throw new TypeError('The option "scale" has to be a number greater than zero.')}else e.scale=this.body.view.scale;e.animation===void 0&&(e.animation={duration:0}),e.animation===!1&&(e.animation={duration:0}),e.animation===!0&&(e.animation={}),e.animation.duration===void 0&&(e.animation.duration=1e3),e.animation.easingFunction===void 0&&(e.animation.easingFunction="easeInOutQuad"),this.animateView(e)}animateView(e){if(e===void 0)return;this.animationEasingFunction=e.animation.easingFunction,this.releaseNode(),e.locked===!0&&(this.lockedOnNodeId=e.lockedOnNode,this.lockedOnNodeOffset=e.offset),this.easingTime!=0&&this._transitionRedraw(!0),this.sourceScale=this.body.view.scale,this.sourceTranslation=this.body.view.translation,this.targetScale=e.scale,this.body.view.scale=this.targetScale;const t=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),r={x:t.x-e.position.x,y:t.y-e.position.y};if(this.targetTranslation={x:this.sourceTranslation.x+r.x*this.targetScale+e.offset.x,y:this.sourceTranslation.y+r.y*this.targetScale+e.offset.y},e.animation.duration===0)if(this.lockedOnNodeId!=null){var i;this.viewFunction=j(i=this._lockedRedraw).call(i,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{var o;this.animationSpeed=1/(60*e.animation.duration*.001)||1/60,this.animationEasingFunction=e.animation.easingFunction,this.viewFunction=j(o=this._transitionRedraw).call(o,this),this.body.emitter.on("initRedraw",this.viewFunction),this.body.emitter.emit("_startRendering")}}_lockedRedraw(){const e={x:this.body.nodes[this.lockedOnNodeId].x,y:this.body.nodes[this.lockedOnNodeId].y},t=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),r={x:t.x-e.x,y:t.y-e.y},i=this.body.view.translation,o={x:i.x+r.x*this.body.view.scale+this.lockedOnNodeOffset.x,y:i.y+r.y*this.body.view.scale+this.lockedOnNodeOffset.y};this.body.view.translation=o}releaseNode(){this.lockedOnNodeId!==void 0&&this.viewFunction!==void 0&&(this.body.emitter.off("initRedraw",this.viewFunction),this.lockedOnNodeId=void 0,this.lockedOnNodeOffset=void 0)}_transitionRedraw(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;this.easingTime+=this.animationSpeed,this.easingTime=e===!0?1:this.easingTime;const t=o1e[this.animationEasingFunction](this.easingTime);if(this.body.view.scale=this.sourceScale+(this.targetScale-this.sourceScale)*t,this.body.view.translation={x:this.sourceTranslation.x+(this.targetTranslation.x-this.sourceTranslation.x)*t,y:this.sourceTranslation.y+(this.targetTranslation.y-this.sourceTranslation.y)*t},this.easingTime>=1){if(this.body.emitter.off("initRedraw",this.viewFunction),this.easingTime=0,this.lockedOnNodeId!=null){var r;this.viewFunction=j(r=this._lockedRedraw).call(r,this),this.body.emitter.on("initRedraw",this.viewFunction)}this.body.emitter.emit("animationFinished")}}getScale(){return this.body.view.scale}getViewPosition(){return this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight})}}function I6(n){var e=n&&n.preventDefault||!1,t=n&&n.container||window,r={},i={keydown:{},keyup:{}},o={},s;for(s=97;s<=122;s++)o[String.fromCharCode(s)]={code:65+(s-97),shift:!1};for(s=65;s<=90;s++)o[String.fromCharCode(s)]={code:s,shift:!0};for(s=0;s<=9;s++)o[""+s]={code:48+s,shift:!1};for(s=1;s<=12;s++)o["F"+s]={code:111+s,shift:!1};for(s=0;s<=9;s++)o["num"+s]={code:96+s,shift:!1};o["num*"]={code:106,shift:!1},o["num+"]={code:107,shift:!1},o["num-"]={code:109,shift:!1},o["num/"]={code:111,shift:!1},o["num."]={code:110,shift:!1},o.left={code:37,shift:!1},o.up={code:38,shift:!1},o.right={code:39,shift:!1},o.down={code:40,shift:!1},o.space={code:32,shift:!1},o.enter={code:13,shift:!1},o.shift={code:16,shift:void 0},o.esc={code:27,shift:!1},o.backspace={code:8,shift:!1},o.tab={code:9,shift:!1},o.ctrl={code:17,shift:!1},o.alt={code:18,shift:!1},o.delete={code:46,shift:!1},o.pageup={code:33,shift:!1},o.pagedown={code:34,shift:!1},o["="]={code:187,shift:!1},o["-"]={code:189,shift:!1},o["]"]={code:221,shift:!1},o["["]={code:219,shift:!1};var a=function(I){A(I,"keydown")},g=function(I){A(I,"keyup")},A=function(I,C){if(i[C][I.keyCode]!==void 0){for(var l=i[C][I.keyCode],d=0;d<l.length;d++)(l[d].shift===void 0||l[d].shift==!0&&I.shiftKey==!0||l[d].shift==!1&&I.shiftKey==!1)&&l[d].fn(I);e==!0&&I.preventDefault()}};return r.bind=function(I,C,l){if(l===void 0&&(l="keydown"),o[I]===void 0)throw new Error("unsupported key: "+I);i[l][o[I].code]===void 0&&(i[l][o[I].code]=[]),i[l][o[I].code].push({fn:C,shift:o[I].shift})},r.bindAll=function(I,C){C===void 0&&(C="keydown");for(var l in o)o.hasOwnProperty(l)&&r.bind(l,I,C)},r.getKey=function(I){for(var C in o)if(o.hasOwnProperty(C)){if(I.shiftKey==!0&&o[C].shift==!0&&I.keyCode==o[C].code)return C;if(I.shiftKey==!1&&o[C].shift==!1&&I.keyCode==o[C].code)return C;if(I.keyCode==o[C].code&&C=="shift")return C}return"unknown key, currently not supported"},r.unbind=function(I,C,l){if(l===void 0&&(l="keydown"),o[I]===void 0)throw new Error("unsupported key: "+I);if(C!==void 0){var d=[],u=i[l][o[I].code];if(u!==void 0)for(var h=0;h<u.length;h++)u[h].fn==C&&u[h].shift==o[I].shift||d.push(i[l][o[I].code][h]);i[l][o[I].code]=d}else i[l][o[I].code]=[]},r.reset=function(){i={keydown:{},keyup:{}}},r.destroy=function(){i={keydown:{},keyup:{}},t.removeEventListener("keydown",a,!0),t.removeEventListener("keyup",g,!0)},t.addEventListener("keydown",a,!0),t.addEventListener("keyup",g,!0),r}class QEe{constructor(e,t){this.body=e,this.canvas=t,this.iconsCreated=!1,this.navigationHammers=[],this.boundFunctions={},this.touchTime=0,this.activated=!1,this.body.emitter.on("activate",()=>{this.activated=!0,this.configureKeyboardBindings()}),this.body.emitter.on("deactivate",()=>{this.activated=!1,this.configureKeyboardBindings()}),this.body.emitter.on("destroy",()=>{this.keycharm!==void 0&&this.keycharm.destroy()}),this.options={}}setOptions(e){e!==void 0&&(this.options=e,this.create())}create(){this.options.navigationButtons===!0?this.iconsCreated===!1&&this.loadNavigationElements():this.iconsCreated===!0&&this.cleanNavigation(),this.configureKeyboardBindings()}cleanNavigation(){if(this.navigationHammers.length!=0){for(let e=0;e<this.navigationHammers.length;e++)this.navigationHammers[e].destroy();this.navigationHammers=[]}this.navigationDOM&&this.navigationDOM.wrapper&&this.navigationDOM.wrapper.parentNode&&this.navigationDOM.wrapper.parentNode.removeChild(this.navigationDOM.wrapper),this.iconsCreated=!1}loadNavigationElements(){this.cleanNavigation(),this.navigationDOM={};const 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(let s=0;s<e.length;s++){this.navigationDOM[e[s]]=document.createElement("div"),this.navigationDOM[e[s]].className="vis-button vis-"+e[s],this.navigationDOM.wrapper.appendChild(this.navigationDOM[e[s]]);const a=new as(this.navigationDOM[e[s]]);if(t[s]==="_fit"){var r;nI(a,j(r=this._fit).call(r,this))}else{var i;nI(a,j(i=this.bindToRedraw).call(i,this,t[s]))}this.navigationHammers.push(a)}const o=new as(this.canvas.frame);yte(o,()=>{this._stopMovement()}),this.navigationHammers.push(o),this.iconsCreated=!0}bindToRedraw(e){if(this.boundFunctions[e]===void 0){var t;this.boundFunctions[e]=j(t=this[e]).call(t,this),this.body.emitter.on("initRedraw",this.boundFunctions[e]),this.body.emitter.emit("_startRendering")}}unbindFromRedraw(e){this.boundFunctions[e]!==void 0&&(this.body.emitter.off("initRedraw",this.boundFunctions[e]),this.body.emitter.emit("_stopRendering"),delete this.boundFunctions[e])}_fit(){new Date().valueOf()-this.touchTime>700&&(this.body.emitter.emit("fit",{duration:700}),this.touchTime=new Date().valueOf())}_stopMovement(){for(const e in this.boundFunctions)Object.prototype.hasOwnProperty.call(this.boundFunctions,e)&&(this.body.emitter.off("initRedraw",this.boundFunctions[e]),this.body.emitter.emit("_stopRendering"));this.boundFunctions={}}_moveUp(){this.body.view.translation.y+=this.options.keyboard.speed.y}_moveDown(){this.body.view.translation.y-=this.options.keyboard.speed.y}_moveLeft(){this.body.view.translation.x+=this.options.keyboard.speed.x}_moveRight(){this.body.view.translation.x-=this.options.keyboard.speed.x}_zoomIn(){const e=this.body.view.scale,t=this.body.view.scale*(1+this.options.keyboard.speed.zoom),r=this.body.view.translation,i=t/e,o=(1-i)*this.canvas.canvasViewCenter.x+r.x*i,s=(1-i)*this.canvas.canvasViewCenter.y+r.y*i;this.body.view.scale=t,this.body.view.translation={x:o,y:s},this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale,pointer:null})}_zoomOut(){const e=this.body.view.scale,t=this.body.view.scale/(1+this.options.keyboard.speed.zoom),r=this.body.view.translation,i=t/e,o=(1-i)*this.canvas.canvasViewCenter.x+r.x*i,s=(1-i)*this.canvas.canvasViewCenter.y+r.y*i;this.body.view.scale=t,this.body.view.translation={x:o,y:s},this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale,pointer:null})}configureKeyboardBindings(){if(this.keycharm!==void 0&&this.keycharm.destroy(),this.options.keyboard.enabled===!0&&(this.options.keyboard.bindToWindow===!0?this.keycharm=I6({container:window,preventDefault:!0}):this.keycharm=I6({container:this.canvas.frame,preventDefault:!0}),this.keycharm.reset(),this.activated===!0)){var e,t,r,i,o,s,a,g,A,I,C,l,d,u,h,v,f,c,b,p,y,E,S,m;j(e=this.keycharm).call(e,"up",()=>{this.bindToRedraw("_moveUp")},"keydown"),j(t=this.keycharm).call(t,"down",()=>{this.bindToRedraw("_moveDown")},"keydown"),j(r=this.keycharm).call(r,"left",()=>{this.bindToRedraw("_moveLeft")},"keydown"),j(i=this.keycharm).call(i,"right",()=>{this.bindToRedraw("_moveRight")},"keydown"),j(o=this.keycharm).call(o,"=",()=>{this.bindToRedraw("_zoomIn")},"keydown"),j(s=this.keycharm).call(s,"num+",()=>{this.bindToRedraw("_zoomIn")},"keydown"),j(a=this.keycharm).call(a,"num-",()=>{this.bindToRedraw("_zoomOut")},"keydown"),j(g=this.keycharm).call(g,"-",()=>{this.bindToRedraw("_zoomOut")},"keydown"),j(A=this.keycharm).call(A,"[",()=>{this.bindToRedraw("_zoomOut")},"keydown"),j(I=this.keycharm).call(I,"]",()=>{this.bindToRedraw("_zoomIn")},"keydown"),j(C=this.keycharm).call(C,"pageup",()=>{this.bindToRedraw("_zoomIn")},"keydown"),j(l=this.keycharm).call(l,"pagedown",()=>{this.bindToRedraw("_zoomOut")},"keydown"),j(d=this.keycharm).call(d,"up",()=>{this.unbindFromRedraw("_moveUp")},"keyup"),j(u=this.keycharm).call(u,"down",()=>{this.unbindFromRedraw("_moveDown")},"keyup"),j(h=this.keycharm).call(h,"left",()=>{this.unbindFromRedraw("_moveLeft")},"keyup"),j(v=this.keycharm).call(v,"right",()=>{this.unbindFromRedraw("_moveRight")},"keyup"),j(f=this.keycharm).call(f,"=",()=>{this.unbindFromRedraw("_zoomIn")},"keyup"),j(c=this.keycharm).call(c,"num+",()=>{this.unbindFromRedraw("_zoomIn")},"keyup"),j(b=this.keycharm).call(b,"num-",()=>{this.unbindFromRedraw("_zoomOut")},"keyup"),j(p=this.keycharm).call(p,"-",()=>{this.unbindFromRedraw("_zoomOut")},"keyup"),j(y=this.keycharm).call(y,"[",()=>{this.unbindFromRedraw("_zoomOut")},"keyup"),j(E=this.keycharm).call(E,"]",()=>{this.unbindFromRedraw("_zoomIn")},"keyup"),j(S=this.keycharm).call(S,"pageup",()=>{this.unbindFromRedraw("_zoomIn")},"keyup"),j(m=this.keycharm).call(m,"pagedown",()=>{this.unbindFromRedraw("_zoomOut")},"keyup")}}}class JEe{constructor(e,t,r){var i,o,s,a,g,A,I,C,l,d,u,h,v;this.body=e,this.canvas=t,this.selectionHandler=r,this.navigationHandler=new QEe(e,t),this.body.eventListeners.onTap=j(i=this.onTap).call(i,this),this.body.eventListeners.onTouch=j(o=this.onTouch).call(o,this),this.body.eventListeners.onDoubleTap=j(s=this.onDoubleTap).call(s,this),this.body.eventListeners.onHold=j(a=this.onHold).call(a,this),this.body.eventListeners.onDragStart=j(g=this.onDragStart).call(g,this),this.body.eventListeners.onDrag=j(A=this.onDrag).call(A,this),this.body.eventListeners.onDragEnd=j(I=this.onDragEnd).call(I,this),this.body.eventListeners.onMouseWheel=j(C=this.onMouseWheel).call(C,this),this.body.eventListeners.onPinch=j(l=this.onPinch).call(l,this),this.body.eventListeners.onMouseMove=j(d=this.onMouseMove).call(d,this),this.body.eventListeners.onRelease=j(u=this.onRelease).call(u,this),this.body.eventListeners.onContext=j(h=this.onContext).call(h,this),this.touchTime=0,this.drag={},this.pinch={},this.popup=void 0,this.popupObj=void 0,this.popupTimer=void 0,this.body.functions.getPointer=j(v=this.getPointer).call(v,this),this.options={},this.defaultOptions={dragNodes:!0,dragView:!0,hover:!1,keyboard:{enabled:!1,speed:{x:10,y:10,zoom:.02},bindToWindow:!0,autoFocus:!0},navigationButtons:!1,tooltipDelay:300,zoomView:!0,zoomSpeed:1},At(this.options,this.defaultOptions),this.bindEventListeners()}bindEventListeners(){this.body.emitter.on("destroy",()=>{clearTimeout(this.popupTimer),delete this.body.functions.getPointer})}setOptions(e){e!==void 0&&(tI(["hideEdgesOnDrag","hideEdgesOnZoom","hideNodesOnDrag","keyboard","multiselect","selectable","selectConnectedEdges"],this.options,e),ur(this.options,e,"keyboard"),e.tooltip&&(At(this.options.tooltip,e.tooltip),e.tooltip.color&&(this.options.tooltip.color=$O(e.tooltip.color)))),this.navigationHandler.setOptions(this.options)}getPointer(e){return{x:e.x-t1e(this.canvas.frame.canvas),y:e.y-r1e(this.canvas.frame.canvas)}}onTouch(e){new Date().valueOf()-this.touchTime>50&&(this.drag.pointer=this.getPointer(e.center),this.drag.pinched=!1,this.pinch.scale=this.body.view.scale,this.touchTime=new Date().valueOf())}onTap(e){const t=this.getPointer(e.center),r=this.selectionHandler.options.multiselect&&(e.changedPointers[0].ctrlKey||e.changedPointers[0].metaKey);this.checkSelectionChanges(t,r),this.selectionHandler.commitAndEmit(t,e),this.selectionHandler.generateClickEvent("click",e,t)}onDoubleTap(e){const t=this.getPointer(e.center);this.selectionHandler.generateClickEvent("doubleClick",e,t)}onHold(e){const t=this.getPointer(e.center),r=this.selectionHandler.options.multiselect;this.checkSelectionChanges(t,r),this.selectionHandler.commitAndEmit(t,e),this.selectionHandler.generateClickEvent("click",e,t),this.selectionHandler.generateClickEvent("hold",e,t)}onRelease(e){if(new Date().valueOf()-this.touchTime>10){const t=this.getPointer(e.center);this.selectionHandler.generateClickEvent("release",e,t),this.touchTime=new Date().valueOf()}}onContext(e){const t=this.getPointer({x:e.clientX,y:e.clientY});this.selectionHandler.generateClickEvent("oncontext",e,t)}checkSelectionChanges(e){(arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1)===!0?this.selectionHandler.selectAdditionalOnPoint(e):this.selectionHandler.selectOnPoint(e)}_determineDifference(e,t){const r=function(i,o){const s=[];for(let a=0;a<i.length;a++){const g=i[a];Oe(o).call(o,g)===-1&&s.push(g)}return s};return{nodes:r(e.nodes,t.nodes),edges:r(e.edges,t.edges)}}onDragStart(e){if(this.drag.dragging)return;this.drag.pointer===void 0&&this.onTouch(e);const t=this.selectionHandler.getNodeAt(this.drag.pointer);if(this.drag.dragging=!0,this.drag.selection=[],this.drag.translation=At({},this.body.view.translation),this.drag.nodeId=void 0,e.srcEvent.shiftKey){this.body.selectionBox.show=!0;const r=this.getPointer(e.center);this.body.selectionBox.position.start={x:this.canvas._XconvertDOMtoCanvas(r.x),y:this.canvas._YconvertDOMtoCanvas(r.y)},this.body.selectionBox.position.end={x:this.canvas._XconvertDOMtoCanvas(r.x),y:this.canvas._YconvertDOMtoCanvas(r.y)}}else if(t!==void 0&&this.options.dragNodes===!0){this.drag.nodeId=t.id,t.isSelected()===!1&&this.selectionHandler.setSelection({nodes:[t.id]}),this.selectionHandler.generateClickEvent("dragStart",e,this.drag.pointer);for(const r of this.selectionHandler.getSelectedNodes()){const i={id:r.id,node:r,x:r.x,y:r.y,xFixed:r.options.fixed.x,yFixed:r.options.fixed.y};r.options.fixed.x=!0,r.options.fixed.y=!0,this.drag.selection.push(i)}}else this.selectionHandler.generateClickEvent("dragStart",e,this.drag.pointer,void 0,!0)}onDrag(e){if(this.drag.pinched===!0)return;this.body.emitter.emit("unlockNode");const t=this.getPointer(e.center),r=this.drag.selection;if(r&&r.length&&this.options.dragNodes===!0){this.selectionHandler.generateClickEvent("dragging",e,t);const i=t.x-this.drag.pointer.x,o=t.y-this.drag.pointer.y;xe(r).call(r,s=>{const a=s.node;s.xFixed===!1&&(a.x=this.canvas._XconvertDOMtoCanvas(this.canvas._XconvertCanvasToDOM(s.x)+i)),s.yFixed===!1&&(a.y=this.canvas._YconvertDOMtoCanvas(this.canvas._YconvertCanvasToDOM(s.y)+o))}),this.body.emitter.emit("startSimulation")}else{if(e.srcEvent.shiftKey){if(this.selectionHandler.generateClickEvent("dragging",e,t,void 0,!0),this.drag.pointer===void 0){this.onDragStart(e);return}this.body.selectionBox.position.end={x:this.canvas._XconvertDOMtoCanvas(t.x),y:this.canvas._YconvertDOMtoCanvas(t.y)},this.body.emitter.emit("_requestRedraw")}if(this.options.dragView===!0&&!e.srcEvent.shiftKey){if(this.selectionHandler.generateClickEvent("dragging",e,t,void 0,!0),this.drag.pointer===void 0){this.onDragStart(e);return}const i=t.x-this.drag.pointer.x,o=t.y-this.drag.pointer.y;this.body.view.translation={x:this.drag.translation.x+i,y:this.drag.translation.y+o},this.body.emitter.emit("_requestRedraw")}}}onDragEnd(e){if(this.drag.dragging=!1,this.body.selectionBox.show){var t;this.body.selectionBox.show=!1;const r=this.body.selectionBox.position,i={minX:Math.min(r.start.x,r.end.x),minY:Math.min(r.start.y,r.end.y),maxX:Math.max(r.start.x,r.end.x),maxY:Math.max(r.start.y,r.end.y)},o=Qt(t=this.body.nodeIndices).call(t,a=>{const g=this.body.nodes[a];return g.x>=i.minX&&g.x<=i.maxX&&g.y>=i.minY&&g.y<=i.maxY});xe(o).call(o,a=>this.selectionHandler.selectObject(this.body.nodes[a]));const s=this.getPointer(e.center);this.selectionHandler.commitAndEmit(s,e),this.selectionHandler.generateClickEvent("dragEnd",e,this.getPointer(e.center),void 0,!0),this.body.emitter.emit("_requestRedraw")}else{const r=this.drag.selection;r&&r.length?(xe(r).call(r,function(i){i.node.options.fixed.x=i.xFixed,i.node.options.fixed.y=i.yFixed}),this.selectionHandler.generateClickEvent("dragEnd",e,this.getPointer(e.center)),this.body.emitter.emit("startSimulation")):(this.selectionHandler.generateClickEvent("dragEnd",e,this.getPointer(e.center),void 0,!0),this.body.emitter.emit("_requestRedraw"))}}onPinch(e){const t=this.getPointer(e.center);this.drag.pinched=!0,this.pinch.scale===void 0&&(this.pinch.scale=1);const r=this.pinch.scale*e.scale;this.zoom(r,t)}zoom(e,t){if(this.options.zoomView===!0){const r=this.body.view.scale;e<1e-5&&(e=1e-5),e>10&&(e=10);let i;this.drag!==void 0&&this.drag.dragging===!0&&(i=this.canvas.DOMtoCanvas(this.drag.pointer));const o=this.body.view.translation,s=e/r,a=(1-s)*t.x+o.x*s,g=(1-s)*t.y+o.y*s;if(this.body.view.scale=e,this.body.view.translation={x:a,y:g},i!=null){const A=this.canvas.canvasToDOM(i);this.drag.pointer.x=A.x,this.drag.pointer.y=A.y}this.body.emitter.emit("_requestRedraw"),r<e?this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale,pointer:t}):this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale,pointer:t})}}onMouseWheel(e){if(this.options.zoomView===!0){if(e.deltaY!==0){let t=this.body.view.scale;t*=1+(e.deltaY<0?1:-1)*(this.options.zoomSpeed*.1);const r=this.getPointer({x:e.clientX,y:e.clientY});this.zoom(t,r)}e.preventDefault()}}onMouseMove(e){const t=this.getPointer({x:e.clientX,y:e.clientY});let r=!1;this.popup!==void 0&&(this.popup.hidden===!1&&this._checkHidePopup(t),this.popup.hidden===!1&&(r=!0,this.popup.setPosition(t.x+3,t.y-5),this.popup.show())),this.options.keyboard.autoFocus&&this.options.keyboard.bindToWindow===!1&&this.options.keyboard.enabled===!0&&this.canvas.frame.focus(),r===!1&&(this.popupTimer!==void 0&&(clearInterval(this.popupTimer),this.popupTimer=void 0),this.drag.dragging||(this.popupTimer=Si(()=>this._checkShowPopup(t),this.options.tooltipDelay))),this.options.hover===!0&&this.selectionHandler.hoverObject(e,t)}_checkShowPopup(e){const t=this.canvas._XconvertDOMtoCanvas(e.x),r=this.canvas._YconvertDOMtoCanvas(e.y),i={left:t,top:r,right:t,bottom:r},o=this.popupObj===void 0?void 0:this.popupObj.id;let s=!1,a="node";if(this.popupObj===void 0){const g=this.body.nodeIndices,A=this.body.nodes;let I;const C=[];for(let l=0;l<g.length;l++)I=A[g[l]],I.isOverlappingWith(i)===!0&&(s=!0,I.getTitle()!==void 0&&C.push(g[l]));C.length>0&&(this.popupObj=A[C[C.length-1]],s=!0)}if(this.popupObj===void 0&&s===!1){const g=this.body.edgeIndices,A=this.body.edges;let I;const C=[];for(let l=0;l<g.length;l++)I=A[g[l]],I.isOverlappingWith(i)===!0&&I.connected===!0&&I.getTitle()!==void 0&&C.push(g[l]);C.length>0&&(this.popupObj=A[C[C.length-1]],a="edge")}this.popupObj!==void 0?this.popupObj.id!==o&&(this.popup===void 0&&(this.popup=new d1e(this.canvas.frame)),this.popup.popupTargetType=a,this.popup.popupTargetId=this.popupObj.id,this.popup.setPosition(e.x+3,e.y-5),this.popup.setText(this.popupObj.getTitle()),this.popup.show(),this.body.emitter.emit("showPopup",this.popupObj.id)):this.popup!==void 0&&(this.popup.hide(),this.body.emitter.emit("hidePopup"))}_checkHidePopup(e){const t=this.selectionHandler._pointerToPositionObject(e);let r=!1;if(this.popup.popupTargetType==="node"){if(this.body.nodes[this.popup.popupTargetId]!==void 0&&(r=this.body.nodes[this.popup.popupTargetId].isOverlappingWith(t),r===!0)){const i=this.selectionHandler.getNodeAt(e);r=i===void 0?!1:i.id===this.popup.popupTargetId}}else this.selectionHandler.getNodeAt(e)===void 0&&this.body.edges[this.popup.popupTargetId]!==void 0&&(r=this.body.edges[this.popup.popupTargetId].isOverlappingWith(t));r===!1&&(this.popupObj=void 0,this.popup.hide(),this.body.emitter.emit("hidePopup"))}}var C6={},l6={},d6;function eSe(){if(d6)return l6;d6=1;var n=ER(),e=Ite();return n("Set",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},e),l6}var u6;function tSe(){return u6||(u6=1,eSe()),C6}var h6={},u_,c6;function Do(){if(c6)return u_;c6=1;var n=ta(),e=TypeError;return u_=function(t){if(typeof t=="object"&&"size"in t&&"has"in t&&"add"in t&&"delete"in t&&"keys"in t)return t;throw new e(n(t)+" is not a set")},u_}var h_,f6;function No(){if(f6)return h_;f6=1;var n=Cr(),e=Cte(),t=n("Set"),r=t.prototype;return h_={Set:t,add:e("add",1),has:e("has",1),remove:e("delete",1),proto:r},h_}var c_,p6;function Mo(){if(p6)return c_;p6=1;var n=or();return c_=function(e,t,r){for(var i=r?e:e.iterator,o=e.next,s,a;!(s=n(o,i)).done;)if(a=t(s.value),a!==void 0)return a},c_}var f_,v6;function aA(){if(v6)return f_;v6=1;var n=Mo();return f_=function(e,t,r){return r?n(e.keys(),t,!0):e.forEach(t)},f_}var p_,m6;function xR(){if(m6)return p_;m6=1;var n=No(),e=aA(),t=n.Set,r=n.add;return p_=function(i){var o=new t;return e(i,function(s){r(o,s)}),o},p_}var v_,y6;function gA(){return y6||(y6=1,v_=function(n){return n.size}),v_}var m_,b6;function rSe(){return b6||(b6=1,m_=function(n){return{iterator:n,next:n.next,done:!1}}),m_}var y_,w6;function qo(){if(w6)return y_;w6=1;var n=ki(),e=ui(),t=or(),r=oa(),i=rSe(),o="Invalid size",s=RangeError,a=TypeError,g=Math.max,A=function(I,C){this.set=I,this.size=g(C,0),this.has=n(I.has),this.keys=n(I.keys)};return A.prototype={getIterator:function(){return i(e(t(this.keys,this.set)))},includes:function(I){return t(this.has,this.set,I)}},y_=function(I){e(I);var C=+I.size;if(C!==C)throw new a(o);var l=r(C);if(l<0)throw new s(o);return new A(I,l)},y_}var b_,E6;function iSe(){if(E6)return b_;E6=1;var n=Do(),e=No(),t=xR(),r=gA(),i=qo(),o=aA(),s=Mo(),a=e.has,g=e.remove;return b_=function(I){var C=n(this),l=i(I),d=t(C);return r(C)<=l.size?o(C,function(u){l.includes(u)&&g(d,u)}):s(l.getIterator(),function(u){a(d,u)&&g(d,u)}),d},b_}var w_,S6;function Fo(){return S6||(S6=1,w_=function(){return!1}),w_}var _6;function nSe(){if(_6)return h6;_6=1;var n=te(),e=iSe(),t=pe(),r=Fo(),i=!r("difference",function(s){return s.size===0}),o=i||t(function(){var s={size:1,has:function(){return!0},keys:function(){var g=0;return{next:function(){var A=g++>1;return a.has(1)&&a.clear(),{done:A,value:2}}}}},a=new Set([1,2,3,4]);return a.difference(s).size!==3});return n({target:"Set",proto:!0,real:!0,forced:o},{difference:e}),h6}var O6={},E_,T6;function oSe(){if(T6)return E_;T6=1;var n=Do(),e=No(),t=gA(),r=qo(),i=aA(),o=Mo(),s=e.Set,a=e.add,g=e.has;return E_=function(I){var C=n(this),l=r(I),d=new s;return t(C)>l.size?o(l.getIterator(),function(u){g(C,u)&&a(d,u)}):i(C,function(u){l.includes(u)&&a(d,u)}),d},E_}var R6;function sSe(){if(R6)return O6;R6=1;var n=te(),e=pe(),t=oSe(),r=Fo(),i=!r("intersection",function(o){return o.size===2&&o.has(1)&&o.has(2)})||e(function(){return String(Array.from(new Set([1,2,3]).intersection(new Set([3,2]))))!=="3,2"});return n({target:"Set",proto:!0,real:!0,forced:i},{intersection:t}),O6}var P6={},S_,x6;function aSe(){if(x6)return S_;x6=1;var n=Do(),e=No().has,t=gA(),r=qo(),i=aA(),o=Mo(),s=bR();return S_=function(g){var A=n(this),I=r(g);if(t(A)<=I.size)return i(A,function(l){if(I.includes(l))return!1},!0)!==!1;var C=I.getIterator();return o(C,function(l){if(e(A,l))return s(C,"normal",!1)})!==!1},S_}var $6;function gSe(){if($6)return P6;$6=1;var n=te(),e=aSe(),t=Fo(),r=!t("isDisjointFrom",function(i){return!i});return n({target:"Set",proto:!0,real:!0,forced:r},{isDisjointFrom:e}),P6}var D6={},__,N6;function ASe(){if(N6)return __;N6=1;var n=Do(),e=gA(),t=aA(),r=qo();return __=function(o){var s=n(this),a=r(o);return e(s)>a.size?!1:t(s,function(g){if(!a.includes(g))return!1},!0)!==!1},__}var M6;function ISe(){if(M6)return D6;M6=1;var n=te(),e=ASe(),t=Fo(),r=!t("isSubsetOf",function(i){return i});return n({target:"Set",proto:!0,real:!0,forced:r},{isSubsetOf:e}),D6}var q6={},O_,F6;function CSe(){if(F6)return O_;F6=1;var n=Do(),e=No().has,t=gA(),r=qo(),i=Mo(),o=bR();return O_=function(a){var g=n(this),A=r(a);if(t(g)<A.size)return!1;var I=A.getIterator();return i(I,function(C){if(!e(g,C))return o(I,"normal",!1)})!==!1},O_}var k6;function lSe(){if(k6)return q6;k6=1;var n=te(),e=CSe(),t=Fo(),r=!t("isSupersetOf",function(i){return!i});return n({target:"Set",proto:!0,real:!0,forced:r},{isSupersetOf:e}),q6}var B6={},T_,z6;function dSe(){if(z6)return T_;z6=1;var n=Do(),e=No(),t=xR(),r=qo(),i=Mo(),o=e.add,s=e.has,a=e.remove;return T_=function(A){var I=n(this),C=r(A).getIterator(),l=t(I);return i(C,function(d){s(I,d)?a(l,d):o(l,d)}),l},T_}var R_,j6;function bte(){return j6||(j6=1,R_=function(n){try{var e=new Set,t={size:0,has:function(){return!0},keys:function(){return Object.defineProperty({},"next",{get:function(){return e.clear(),e.add(4),function(){return{done:!0}}}})}},r=e[n](t);return r.size===1&&r.values().next().value===4}catch{return!1}}),R_}var L6;function uSe(){if(L6)return B6;L6=1;var n=te(),e=dSe(),t=bte(),r=Fo(),i=!r("symmetricDifference")||!t("symmetricDifference");return n({target:"Set",proto:!0,real:!0,forced:i},{symmetricDifference:e}),B6}var G6={},P_,W6;function hSe(){if(W6)return P_;W6=1;var n=Do(),e=No().add,t=xR(),r=qo(),i=Mo();return P_=function(s){var a=n(this),g=r(s).getIterator(),A=t(a);return i(g,function(I){e(A,I)}),A},P_}var V6;function cSe(){if(V6)return G6;V6=1;var n=te(),e=hSe(),t=bte(),r=Fo(),i=!r("union")||!t("union");return n({target:"Set",proto:!0,real:!0,forced:i},{union:e}),G6}var x_,Z6;function fSe(){if(Z6)return x_;Z6=1,Aa(),tSe(),nSe(),sSe(),gSe(),ISe(),lSe(),uSe(),cSe(),_R();var n=Re();return x_=n.Set,x_}var $_,H6;function pSe(){if(H6)return $_;H6=1;var n=fSe();return Ia(),$_=n,$_}var D_,U6;function vSe(){return U6||(U6=1,D_=pSe()),D_}var mSe=vSe(),Ji=se(mSe),K6={},Y6={},N_,X6;function ySe(){if(X6)return N_;X6=1;var n=ye(),e=SR(),t=rC().getWeakData,r=wR(),i=ui(),o=Qs(),s=Tt(),a=iC(),g=Sn(),A=qt(),I=Po(),C=I.set,l=I.getterFor,d=g.find,u=g.findIndex,h=n([].splice),v=0,f=function(p){return p.frozen||(p.frozen=new c)},c=function(){this.entries=[]},b=function(p,y){return d(p.entries,function(E){return E[0]===y})};return c.prototype={get:function(p){var y=b(this,p);if(y)return y[1]},has:function(p){return!!b(this,p)},set:function(p,y){var E=b(this,p);E?E[1]=y:this.entries.push([p,y])},delete:function(p){var y=u(this.entries,function(E){return E[0]===p});return~y&&h(this.entries,y,1),!!~y}},N_={getConstructor:function(p,y,E,S){var m=p(function(R,O){r(R,w),C(R,{type:y,id:v++,frozen:null}),o(O)||a(O,R[S],{that:R,AS_ENTRIES:E})}),w=m.prototype,_=l(y),T=function(R,O,P){var x=_(R),V=t(i(O),!0);return V===!0?f(x).set(O,P):V[x.id]=P,R};return e(w,{delete:function(R){var O=_(this);if(!s(R))return!1;var P=t(R);return P===!0?f(O).delete(R):P&&A(P,O.id)&&delete P[O.id]},has:function(O){var P=_(this);if(!s(O))return!1;var x=t(O);return x===!0?f(P).has(O):x&&A(x,P.id)}}),e(w,E?{get:function(O){var P=_(this);if(s(O)){var x=t(O);if(x===!0)return f(P).get(O);if(x)return x[P.id]}},set:function(O,P){return T(this,O,P)}}:{add:function(O){return T(this,O,!0)}}),m}},N_}var Q6;function bSe(){if(Q6)return Y6;Q6=1;var n=gte(),e=Ge(),t=ye(),r=SR(),i=rC(),o=ER(),s=ySe(),a=Tt(),g=Po().enforce,A=pe(),I=Iee(),C=Object,l=Array.isArray,d=C.isExtensible,u=C.isFrozen,h=C.isSealed,v=C.freeze,f=C.seal,c=!e.ActiveXObject&&"ActiveXObject"in e,b,p=function(R){return function(){return R(this,arguments.length?arguments[0]:void 0)}},y=o("WeakMap",p,s),E=y.prototype,S=t(E.set),m=function(){return n&&A(function(){var R=v([]);return S(new y,R,1),!u(R)})};if(I)if(c){b=s.getConstructor(p,"WeakMap",!0),i.enable();var w=t(E.delete),_=t(E.has),T=t(E.get);r(E,{delete:function(R){if(a(R)&&!d(R)){var O=g(this);return O.frozen||(O.frozen=new b),w(this,R)||O.frozen.delete(R)}return w(this,R)},has:function(O){if(a(O)&&!d(O)){var P=g(this);return P.frozen||(P.frozen=new b),_(this,O)||P.frozen.has(O)}return _(this,O)},get:function(O){if(a(O)&&!d(O)){var P=g(this);return P.frozen||(P.frozen=new b),_(this,O)?T(this,O):P.frozen.get(O)}return T(this,O)},set:function(O,P){if(a(O)&&!d(O)){var x=g(this);x.frozen||(x.frozen=new b),_(this,O)?S(this,O,P):x.frozen.set(O,P)}else S(this,O,P);return this}})}else m()&&r(E,{set:function(O,P){var x;return l(O)&&(u(O)?x=v:h(O)&&(x=f)),S(this,O,P),x&&x(O),this}});return Y6}var J6;function wSe(){return J6||(J6=1,bSe()),K6}var M_,eX;function ESe(){if(eX)return M_;eX=1,Aa(),wSe();var n=Re();return M_=n.WeakMap,M_}var q_,tX;function SSe(){if(tX)return q_;tX=1;var n=ESe();return Ia(),q_=n,q_}var F_,rX;function _Se(){return rX||(rX=1,F_=SSe()),F_}var OSe=_Se(),AA=se(OSe);function La(n,e,t){TSe(n,e),e.set(n,t)}function TSe(n,e){if(e.has(n))throw new TypeError("Cannot initialize the same private elements twice on an object")}function kO(n,e,t){return n.set(wte(n,e),t),t}function Ne(n,e){return n.get(wte(n,e))}function wte(n,e,t){if(typeof n=="function"?n===e:n.has(e))return arguments.length<3?e:t;throw new TypeError("Private element is not present on this object")}function iX(n,e){const t=new Ji;for(const r of e)n.has(r)||t.add(r);return t}var Go=new AA,Mr=new AA;class nX{constructor(){La(this,Go,new Ji),La(this,Mr,new Ji)}get size(){return Ne(Mr,this).size}add(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];for(const i of t)Ne(Mr,this).add(i)}delete(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];for(const i of t)Ne(Mr,this).delete(i)}clear(){Ne(Mr,this).clear()}getSelection(){return[...Ne(Mr,this)]}getChanges(){return{added:[...iX(Ne(Go,this),Ne(Mr,this))],deleted:[...iX(Ne(Mr,this),Ne(Go,this))],previous:[...new Ji(Ne(Go,this))],current:[...new Ji(Ne(Mr,this))]}}commit(){const e=this.getChanges();kO(Go,this,Ne(Mr,this)),kO(Mr,this,new Ji(Ne(Go,this)));for(const t of e.added)t.select();for(const t of e.deleted)t.unselect();return e}}var Pn=new AA,xn=new AA,k_=new AA;class RSe{constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:()=>{};La(this,Pn,new nX),La(this,xn,new nX),La(this,k_,void 0),kO(k_,this,e)}get sizeNodes(){return Ne(Pn,this).size}get sizeEdges(){return Ne(xn,this).size}getNodes(){return Ne(Pn,this).getSelection()}getEdges(){return Ne(xn,this).getSelection()}addNodes(){Ne(Pn,this).add(...arguments)}addEdges(){Ne(xn,this).add(...arguments)}deleteNodes(e){Ne(Pn,this).delete(e)}deleteEdges(e){Ne(xn,this).delete(e)}clear(){Ne(Pn,this).clear(),Ne(xn,this).clear()}commit(){const e={nodes:Ne(Pn,this).commit(),edges:Ne(xn,this).commit()};for(var t=arguments.length,r=new Array(t),i=0;i<t;i++)r[i]=arguments[i];return Ne(k_,this).call(this,e,...r),e}}class PSe{constructor(e,t){this.body=e,this.canvas=t,this._selectionAccumulator=new RSe,this.hoverObj={nodes:{},edges:{}},this.options={},this.defaultOptions={multiselect:!1,selectable:!0,selectConnectedEdges:!0,hoverConnectedEdges:!0},At(this.options,this.defaultOptions),this.body.emitter.on("_dataChanged",()=>{this.updateSelection()})}setOptions(e){e!==void 0&&da(["multiselect","hoverConnectedEdges","selectable","selectConnectedEdges"],this.options,e)}selectOnPoint(e){let t=!1;if(this.options.selectable===!0){const r=this.getNodeAt(e)||this.getEdgeAt(e);this.unselectAll(),r!==void 0&&(t=this.selectObject(r)),this.body.emitter.emit("_requestRedraw")}return t}selectAdditionalOnPoint(e){let t=!1;if(this.options.selectable===!0){const r=this.getNodeAt(e)||this.getEdgeAt(e);r!==void 0&&(t=!0,r.isSelected()===!0?this.deselectObject(r):this.selectObject(r),this.body.emitter.emit("_requestRedraw"))}return t}_initBaseEvent(e,t){const r={};return r.pointer={DOM:{x:t.x,y:t.y},canvas:this.canvas.DOMtoCanvas(t)},r.event=e,r}generateClickEvent(e,t,r,i){let o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;const s=this._initBaseEvent(t,r);if(o===!0)s.nodes=[],s.edges=[];else{const a=this.getSelection();s.nodes=a.nodes,s.edges=a.edges}i!==void 0&&(s.previousSelection=i),e=="click"&&(s.items=this.getClickedItems(r)),t.controlEdge!==void 0&&(s.controlEdge=t.controlEdge),this.body.emitter.emit(e,s)}selectObject(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.options.selectConnectedEdges;return e!==void 0?(e instanceof je?(t===!0&&this._selectionAccumulator.addEdges(...e.edges),this._selectionAccumulator.addNodes(e)):this._selectionAccumulator.addEdges(e),!0):!1}deselectObject(e){e.isSelected()===!0&&(e.selected=!1,this._removeFromSelection(e))}_getAllNodesOverlappingWith(e){const t=[],r=this.body.nodes;for(let i=0;i<this.body.nodeIndices.length;i++){const o=this.body.nodeIndices[i];r[o].isOverlappingWith(e)&&t.push(o)}return t}_pointerToPositionObject(e){const t=this.canvas.DOMtoCanvas(e);return{left:t.x-1,top:t.y+1,right:t.x+1,bottom:t.y-1}}getNodeAt(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;const r=this._pointerToPositionObject(e),i=this._getAllNodesOverlappingWith(r);if(i.length>0)return t===!0?this.body.nodes[i[i.length-1]]:i[i.length-1]}_getEdgesOverlappingWith(e,t){const r=this.body.edges;for(let i=0;i<this.body.edgeIndices.length;i++){const o=this.body.edgeIndices[i];r[o].isOverlappingWith(e)&&t.push(o)}}_getAllEdgesOverlappingWith(e){const t=[];return this._getEdgesOverlappingWith(e,t),t}getEdgeAt(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;const r=this.canvas.DOMtoCanvas(e);let i=10,o=null;const s=this.body.edges;for(let a=0;a<this.body.edgeIndices.length;a++){const g=this.body.edgeIndices[a],A=s[g];if(A.connected){const I=A.from.x,C=A.from.y,l=A.to.x,d=A.to.y,u=A.edgeType.getDistanceToEdge(I,C,l,d,r.x,r.y);u<i&&(o=g,i=u)}}if(o!==null)return t===!0?this.body.edges[o]:o}_addToHover(e){e instanceof je?this.hoverObj.nodes[e.id]=e:this.hoverObj.edges[e.id]=e}_removeFromSelection(e){e instanceof je?(this._selectionAccumulator.deleteNodes(e),this._selectionAccumulator.deleteEdges(...e.edges)):this._selectionAccumulator.deleteEdges(e)}unselectAll(){this._selectionAccumulator.clear()}getSelectedNodeCount(){return this._selectionAccumulator.sizeNodes}getSelectedEdgeCount(){return this._selectionAccumulator.sizeEdges}_hoverConnectedEdges(e){for(let t=0;t<e.edges.length;t++){const r=e.edges[t];r.hover=!0,this._addToHover(r)}}emitBlurEvent(e,t,r){const i=this._initBaseEvent(e,t);r.hover===!0&&(r.hover=!1,r instanceof je?(i.node=r.id,this.body.emitter.emit("blurNode",i)):(i.edge=r.id,this.body.emitter.emit("blurEdge",i)))}emitHoverEvent(e,t,r){const i=this._initBaseEvent(e,t);let o=!1;return r.hover===!1&&(r.hover=!0,this._addToHover(r),o=!0,r instanceof je?(i.node=r.id,this.body.emitter.emit("hoverNode",i)):(i.edge=r.id,this.body.emitter.emit("hoverEdge",i))),o}hoverObject(e,t){let r=this.getNodeAt(t);r===void 0&&(r=this.getEdgeAt(t));let i=!1;for(const o in this.hoverObj.nodes)Object.prototype.hasOwnProperty.call(this.hoverObj.nodes,o)&&(r===void 0||r instanceof je&&r.id!=o||r instanceof ln)&&(this.emitBlurEvent(e,t,this.hoverObj.nodes[o]),delete this.hoverObj.nodes[o],i=!0);for(const o in this.hoverObj.edges)Object.prototype.hasOwnProperty.call(this.hoverObj.edges,o)&&(i===!0?(this.hoverObj.edges[o].hover=!1,delete this.hoverObj.edges[o]):(r===void 0||r instanceof ln&&r.id!=o||r instanceof je&&!r.hover)&&(this.emitBlurEvent(e,t,this.hoverObj.edges[o]),delete this.hoverObj.edges[o],i=!0));if(r!==void 0){const o=Xe(this.hoverObj.edges).length,s=Xe(this.hoverObj.nodes).length,a=r instanceof ln&&o===0&&s===0,g=r instanceof je&&o===0&&s===0;(i||a||g)&&(i=this.emitHoverEvent(e,t,r)),r instanceof je&&this.options.hoverConnectedEdges===!0&&this._hoverConnectedEdges(r)}i===!0&&this.body.emitter.emit("_requestRedraw")}commitWithoutEmitting(){this._selectionAccumulator.commit()}commitAndEmit(e,t){let r=!1;const i=this._selectionAccumulator.commit(),o={nodes:i.nodes.previous,edges:i.edges.previous};i.edges.deleted.length>0&&(this.generateClickEvent("deselectEdge",t,e,o),r=!0),i.nodes.deleted.length>0&&(this.generateClickEvent("deselectNode",t,e,o),r=!0),i.nodes.added.length>0&&(this.generateClickEvent("selectNode",t,e),r=!0),i.edges.added.length>0&&(this.generateClickEvent("selectEdge",t,e),r=!0),r===!0&&this.generateClickEvent("select",t,e)}getSelection(){return{nodes:this.getSelectedNodeIds(),edges:this.getSelectedEdgeIds()}}getSelectedNodes(){return this._selectionAccumulator.getNodes()}getSelectedEdges(){return this._selectionAccumulator.getEdges()}getSelectedNodeIds(){var e;return bs(e=this._selectionAccumulator.getNodes()).call(e,t=>t.id)}getSelectedEdgeIds(){var e;return bs(e=this._selectionAccumulator.getEdges()).call(e,t=>t.id)}setSelection(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!e||!e.nodes&&!e.edges)throw new TypeError("Selection must be an object with nodes and/or edges properties");if((t.unselectAll||t.unselectAll===void 0)&&this.unselectAll(),e.nodes)for(const r of e.nodes){const i=this.body.nodes[r];if(!i)throw new RangeError('Node with id "'+r+'" not found');this.selectObject(i,t.highlightEdges)}if(e.edges)for(const r of e.edges){const i=this.body.edges[r];if(!i)throw new RangeError('Edge with id "'+r+'" not found');this.selectObject(i)}this.body.emitter.emit("_requestRedraw"),this._selectionAccumulator.commit()}selectNodes(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(!e||e.length===void 0)throw"Selection must be an array with ids";this.setSelection({nodes:e},{highlightEdges:t})}selectEdges(e){if(!e||e.length===void 0)throw"Selection must be an array with ids";this.setSelection({edges:e})}updateSelection(){for(const e in this._selectionAccumulator.getNodes())Object.prototype.hasOwnProperty.call(this.body.nodes,e.id)||this._selectionAccumulator.deleteNodes(e);for(const e in this._selectionAccumulator.getEdges())Object.prototype.hasOwnProperty.call(this.body.edges,e.id)||this._selectionAccumulator.deleteEdges(e)}getClickedItems(e){const t=this.canvas.DOMtoCanvas(e),r=[],i=this.body.nodeIndices,o=this.body.nodes;for(let g=i.length-1;g>=0;g--){const I=o[i[g]].getItemsOnPoint(t);r.push.apply(r,I)}const s=this.body.edgeIndices,a=this.body.edges;for(let g=s.length-1;g>=0;g--){const I=a[s[g]].getItemsOnPoint(t);r.push.apply(r,I)}return r}}var oX={},B_,sX;function xSe(){if(sX)return B_;sX=1;var n=sa(),e=Math.floor,t=function(r,i){var o=r.length;if(o<8)for(var s=1,a,g;s<o;){for(g=s,a=r[s];g&&i(r[g-1],a)>0;)r[g]=r[--g];g!==s++&&(r[g]=a)}else for(var A=e(o/2),I=t(n(r,0,A),i),C=t(n(r,A),i),l=I.length,d=C.length,u=0,h=0;u<l||h<d;)r[u+h]=u<l&&h<d?i(I[u],C[h])<=0?I[u++]:C[h++]:u<l?I[u++]:C[h++];return r};return B_=t,B_}var z_,aX;function $Se(){if(aX)return z_;aX=1;var n=Js(),e=n.match(/firefox\/(\d+)/i);return z_=!!e&&+e[1],z_}var j_,gX;function DSe(){if(gX)return j_;gX=1;var n=Js();return j_=/MSIE|Trident/.test(n),j_}var L_,AX;function NSe(){if(AX)return L_;AX=1;var n=Js(),e=n.match(/AppleWebKit\/(\d+)\./);return L_=!!e&&+e[1],L_}var IX;function MSe(){if(IX)return oX;IX=1;var n=te(),e=ye(),t=ki(),r=lr(),i=Bi(),o=yee(),s=_r(),a=pe(),g=xSe(),A=Ca(),I=$Se(),C=DSe(),l=Hg(),d=NSe(),u=[],h=e(u.sort),v=e(u.push),f=a(function(){u.sort(void 0)}),c=a(function(){u.sort(null)}),b=A("sort"),p=!a(function(){if(l)return l<70;if(!(I&&I>3)){if(C)return!0;if(d)return d<603;var S="",m,w,_,T;for(m=65;m<76;m++){switch(w=String.fromCharCode(m),m){case 66:case 69:case 70:case 72:_=3;break;case 68:case 71:_=4;break;default:_=2}for(T=0;T<47;T++)u.push({k:w+T,v:_})}for(u.sort(function(R,O){return O.v-R.v}),T=0;T<u.length;T++)w=u[T].k.charAt(0),S.charAt(S.length-1)!==w&&(S+=w);return S!=="DGBEFHACIJK"}}),y=f||!c||!b||!p,E=function(S){return function(m,w){return w===void 0?-1:m===void 0?1:S!==void 0?+S(m,w)||0:s(m)>s(w)?1:-1}};return n({target:"Array",proto:!0,forced:y},{sort:function(m){m!==void 0&&t(m);var w=r(this);if(p)return m===void 0?h(w):h(w,m);var _=[],T=i(w),R,O;for(O=0;O<T;O++)O in w&&v(_,w[O]);for(g(_,E(m)),R=i(_),O=0;O<R;)w[O]=_[O++];for(;O<T;)o(w,O++);return w}}),oX}var G_,CX;function qSe(){if(CX)return G_;CX=1,MSe();var n=Ft();return G_=n("Array","sort"),G_}var W_,lX;function FSe(){if(lX)return W_;lX=1;var n=ut(),e=qSe(),t=Array.prototype;return W_=function(r){var i=r.sort;return r===t||n(t,r)&&i===t.sort?e:i},W_}var V_,dX;function kSe(){if(dX)return V_;dX=1;var n=FSe();return V_=n,V_}var Z_,uX;function BSe(){return uX||(uX=1,Z_=kSe()),Z_}var zSe=BSe(),As=se(zSe),hX={},H_,cX;function jSe(){if(cX)return H_;cX=1;var n=ki(),e=lr(),t=LI(),r=Bi(),i=TypeError,o="Reduce of empty array with no initial value",s=function(a){return function(g,A,I,C){var l=e(g),d=t(l),u=r(l);if(n(A),u===0&&I<2)throw new i(o);var h=a?u-1:0,v=a?-1:1;if(I<2)for(;;){if(h in d){C=d[h],h+=v;break}if(h+=v,a?h<0:u<=h)throw new i(o)}for(;a?h>=0:u>h;h+=v)h in d&&(C=A(C,d[h],h,l));return C}};return H_={left:s(!1),right:s(!0)},H_}var U_,fX;function LSe(){if(fX)return U_;fX=1;var n=wee();return U_=n==="NODE",U_}var pX;function GSe(){if(pX)return hX;pX=1;var n=te(),e=jSe().left,t=Ca(),r=Hg(),i=LSe(),o=!i&&r>79&&r<83,s=o||!t("reduce");return n({target:"Array",proto:!0,forced:s},{reduce:function(g){var A=arguments.length;return e(this,g,A,A>1?arguments[1]:void 0)}}),hX}var K_,vX;function WSe(){if(vX)return K_;vX=1,GSe();var n=Ft();return K_=n("Array","reduce"),K_}var Y_,mX;function VSe(){if(mX)return Y_;mX=1;var n=ut(),e=WSe(),t=Array.prototype;return Y_=function(r){var i=r.reduce;return r===t||n(t,r)&&i===t.reduce?e:i},Y_}var X_,yX;function ZSe(){if(yX)return X_;yX=1;var n=VSe();return X_=n,X_}var Q_,bX;function HSe(){return bX||(bX=1,Q_=ZSe()),Q_}var USe=HSe(),Ete=se(USe);class Ste{abstract(){throw new Error("Can't instantiate abstract class!")}fake_use(){}curveType(){return this.abstract()}getPosition(e){return this.fake_use(e),this.abstract()}setPosition(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:void 0;this.fake_use(e,t,r),this.abstract()}getTreeSize(e){return this.fake_use(e),this.abstract()}sort(e){this.fake_use(e),this.abstract()}fix(e,t){this.fake_use(e,t),this.abstract()}shift(e,t){this.fake_use(e,t),this.abstract()}}class KSe extends Ste{constructor(e){super(),this.layout=e}curveType(){return"horizontal"}getPosition(e){return e.x}setPosition(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:void 0;r!==void 0&&this.layout.hierarchical.addToOrdering(e,r),e.x=t}getTreeSize(e){const t=this.layout.hierarchical.getTreeSize(this.layout.body.nodes,e);return{min:t.min_x,max:t.max_x}}sort(e){As(e).call(e,function(t,r){return t.x-r.x})}fix(e,t){e.y=this.layout.options.hierarchical.levelSeparation*t,e.options.fixed.y=!0}shift(e,t){this.layout.body.nodes[e].x+=t}}class YSe extends Ste{constructor(e){super(),this.layout=e}curveType(){return"vertical"}getPosition(e){return e.y}setPosition(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:void 0;r!==void 0&&this.layout.hierarchical.addToOrdering(e,r),e.y=t}getTreeSize(e){const t=this.layout.hierarchical.getTreeSize(this.layout.body.nodes,e);return{min:t.min_y,max:t.max_y}}sort(e){As(e).call(e,function(t,r){return t.y-r.y})}fix(e,t){e.x=this.layout.options.hierarchical.levelSeparation*t,e.options.fixed.x=!0}shift(e,t){this.layout.body.nodes[e].y+=t}}var wX={},EX;function XSe(){if(EX)return wX;EX=1;var n=te(),e=Sn().every,t=Ca(),r=t("every");return n({target:"Array",proto:!0,forced:!r},{every:function(o){return e(this,o,arguments.length>1?arguments[1]:void 0)}}),wX}var J_,SX;function QSe(){if(SX)return J_;SX=1,XSe();var n=Ft();return J_=n("Array","every"),J_}var eO,_X;function JSe(){if(_X)return eO;_X=1;var n=ut(),e=QSe(),t=Array.prototype;return eO=function(r){var i=r.every;return r===t||n(t,r)&&i===t.every?e:i},eO}var tO,OX;function e_e(){if(OX)return tO;OX=1;var n=JSe();return tO=n,tO}var rO,TX;function t_e(){return TX||(TX=1,rO=e_e()),rO}var r_e=t_e(),_te=se(r_e);function i_e(n,e){const t=new Ji;return xe(n).call(n,r=>{var i;xe(i=r.edges).call(i,o=>{o.connected&&t.add(o)})}),xe(t).call(t,r=>{const i=r.from.id,o=r.to.id;e[i]==null&&(e[i]=0),(e[o]==null||e[i]>=e[o])&&(e[o]=e[i]+1)}),e}function n_e(n){return Ote(e=>{var t,r;return _te(t=Qt(r=e.edges).call(r,i=>n.has(i.toId))).call(t,i=>i.to===e)},(e,t)=>t>e,"from",n)}function o_e(n){return Ote(e=>{var t,r;return _te(t=Qt(r=e.edges).call(r,i=>n.has(i.toId))).call(t,i=>i.from===e)},(e,t)=>t<e,"to",n)}function Ote(n,e,t,r){var i;const o=Zn(null),s=Ete(i=[...fte(r).call(r)]).call(i,(C,l)=>C+1+l.edges.length,0),a=t+"Id",g=t==="to"?1:-1;for(const[C,l]of r){if(!r.has(C)||!n(l))continue;o[C]=0;const d=[l];let u=0,h;for(;h=d.pop();){var A,I;if(!r.has(C))continue;const v=o[h.id]+g;if(xe(A=Qt(I=h.edges).call(I,f=>f.connected&&f.to!==f.from&&f[t]!==h&&r.has(f.toId)&&r.has(f.fromId))).call(A,f=>{const c=f[a],b=o[c];(b==null||e(v,b))&&(o[c]=v,d.push(f[t]))}),u>s)return i_e(r,o);++u}}return o}class s_e{constructor(){this.childrenReference={},this.parentReference={},this.trees={},this.distributionOrdering={},this.levels={},this.distributionIndex={},this.isTree=!1,this.treeIndex=-1}addRelation(e,t){this.childrenReference[e]===void 0&&(this.childrenReference[e]=[]),this.childrenReference[e].push(t),this.parentReference[t]===void 0&&(this.parentReference[t]=[]),this.parentReference[t].push(e)}checkIfTree(){for(const e in this.parentReference)if(this.parentReference[e].length>1){this.isTree=!1;return}this.isTree=!0}numTrees(){return this.treeIndex+1}setTreeIndex(e,t){t!==void 0&&this.trees[e.id]===void 0&&(this.trees[e.id]=t,this.treeIndex=Math.max(t,this.treeIndex))}ensureLevel(e){this.levels[e]===void 0&&(this.levels[e]=0)}getMaxLevel(e){const t={},r=i=>{if(t[i]!==void 0)return t[i];let o=this.levels[i];if(this.childrenReference[i]){const s=this.childrenReference[i];if(s.length>0)for(let a=0;a<s.length;a++)o=Math.max(o,r(s[a]))}return t[i]=o,o};return r(e)}levelDownstream(e,t){this.levels[t.id]===void 0&&(this.levels[e.id]===void 0&&(this.levels[e.id]=0),this.levels[t.id]=this.levels[e.id]+1)}setMinLevelToZero(){var e;const t=new OR;let r=0;const i=As(e=[...new Ji(yye(this.levels))]).call(e,(o,s)=>o-s);for(const o of i)t.set(o,r++);for(const o in this.levels)Object.prototype.hasOwnProperty.call(this.levels,o)&&(this.levels[o]=t.get(this.levels[o]))}getTreeSize(e,t){let r=1e9,i=-1e9,o=1e9,s=-1e9;for(const a in this.trees)if(Object.prototype.hasOwnProperty.call(this.trees,a)&&this.trees[a]===t){const g=e[a];r=Math.min(g.x,r),i=Math.max(g.x,i),o=Math.min(g.y,o),s=Math.max(g.y,s)}return{min_x:r,max_x:i,min_y:o,max_y:s}}hasSameParent(e,t){const r=this.parentReference[e.id],i=this.parentReference[t.id];if(r===void 0||i===void 0)return!1;for(let o=0;o<r.length;o++)for(let s=0;s<i.length;s++)if(r[o]==i[s])return!0;return!1}inSameSubNetwork(e,t){return this.trees[e.id]===this.trees[t.id]}getLevels(){return Xe(this.distributionOrdering)}addToOrdering(e,t){this.distributionOrdering[t]===void 0&&(this.distributionOrdering[t]=[]);let r=!1;const i=this.distributionOrdering[t];for(const o in i)if(i[o]===e){r=!0;break}r||(this.distributionOrdering[t].push(e),this.distributionIndex[e.id]=this.distributionOrdering[t].length-1)}}class a_e{constructor(e){this.body=e,this._resetRNG(Math.random()+":"+XA()),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"}},At(this.options,this.defaultOptions),this.bindEventListeners()}bindEventListeners(){this.body.emitter.on("_dataChanged",()=>{this.setupHierarchicalLayout()}),this.body.emitter.on("_dataLoaded",()=>{this.layoutNetwork()}),this.body.emitter.on("_resetHierarchicalLayout",()=>{this.setupHierarchicalLayout()}),this.body.emitter.on("_adjustEdgesForHierarchicalLayout",()=>{if(this.options.hierarchical.enabled!==!0)return;const e=this.direction.curveType();this.body.emitter.emit("_forceDisableDynamicCurves",e,!1)})}setOptions(e,t){if(e!==void 0){const r=this.options.hierarchical,i=r.enabled;if(da(["randomSeed","improvedLayout","clusterThreshold"],this.options,e),ur(this.options,e,"hierarchical"),e.randomSeed!==void 0&&this._resetRNG(e.randomSeed),r.enabled===!0)return i===!0&&this.body.emitter.emit("refresh",!0),r.direction==="RL"||r.direction==="DU"?r.levelSeparation>0&&(r.levelSeparation*=-1):r.levelSeparation<0&&(r.levelSeparation*=-1),this.setDirectionStrategy(),this.body.emitter.emit("_resetHierarchicalLayout"),this.adaptAllOptionsForHierarchicalLayout(t);if(i===!0)return this.body.emitter.emit("refresh"),qe(t,this.optionsBackup)}return t}_resetRNG(e){this.initialRandomSeed=e,this._rng=tC(this.initialRandomSeed)}adaptAllOptionsForHierarchicalLayout(e){if(this.options.hierarchical.enabled===!0){const t=this.optionsBackup.physics;e.physics===void 0||e.physics===!0?(e.physics={enabled:t.enabled===void 0?!0:t.enabled,solver:"hierarchicalRepulsion"},t.enabled=t.enabled===void 0?!0:t.enabled,t.solver=t.solver||"barnesHut"):typeof e.physics=="object"?(t.enabled=e.physics.enabled===void 0?!0:e.physics.enabled,t.solver=e.physics.solver||"barnesHut",e.physics.solver="hierarchicalRepulsion"):e.physics!==!1&&(t.solver="barnesHut",e.physics={solver:"hierarchicalRepulsion"});let r=this.direction.curveType();if(e.edges===void 0)this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},e.edges={smooth:!1};else if(e.edges.smooth===void 0)this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},e.edges.smooth=!1;else if(typeof e.edges.smooth=="boolean")this.optionsBackup.edges={smooth:e.edges.smooth},e.edges.smooth={enabled:e.edges.smooth,type:r};else{const i=e.edges.smooth;i.type!==void 0&&i.type!=="dynamic"&&(r=i.type),this.optionsBackup.edges={smooth:{enabled:i.enabled===void 0?!0:i.enabled,type:i.type===void 0?"dynamic":i.type,roundness:i.roundness===void 0?.5:i.roundness,forceDirection:i.forceDirection===void 0?!1:i.forceDirection}},e.edges.smooth={enabled:i.enabled===void 0?!0:i.enabled,type:r,roundness:i.roundness===void 0?.5:i.roundness,forceDirection:i.forceDirection===void 0?!1:i.forceDirection}}this.body.emitter.emit("_forceDisableDynamicCurves",r)}return e}positionInitially(e){if(this.options.hierarchical.enabled!==!0){this._resetRNG(this.initialRandomSeed);const t=e.length+50;for(let r=0;r<e.length;r++){const i=e[r],o=2*Math.PI*this._rng();i.x===void 0&&(i.x=t*Math.cos(o)),i.y===void 0&&(i.y=t*Math.sin(o))}}}layoutNetwork(){if(this.options.hierarchical.enabled!==!0&&this.options.improvedLayout===!0){const e=this.body.nodeIndices;let t=0;for(let r=0;r<e.length;r++)this.body.nodes[e[r]].predefinedPosition===!0&&(t+=1);if(t<.5*e.length){let i=0;const o=this.options.clusterThreshold,s={clusterNodeProperties:{shape:"ellipse",label:"",group:"",font:{multi:!1}},clusterEdgeProperties:{label:"",font:{multi:!1},smooth:{enabled:!1}}};if(e.length>o){const g=e.length;for(;e.length>o&&i<=10;){i+=1;const A=e.length;i%3===0?this.body.modules.clustering.clusterBridges(s):this.body.modules.clustering.clusterOutliers(s);const I=e.length;if(A==I&&i%3!==0){this._declusterAll(),this.body.emitter.emit("_layoutFailed"),console.info("This network could not be positioned by this version of the improved layout algorithm. Please disable improvedLayout for better performance.");return}}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(e,this.body.edgeIndices,!0),this._shiftToCenter();const a=70;for(let g=0;g<e.length;g++){const A=this.body.nodes[e[g]];A.predefinedPosition===!1&&(A.x+=(.5-this._rng())*a,A.y+=(.5-this._rng())*a)}this._declusterAll(),this.body.emitter.emit("_repositionBezierNodes")}}}_shiftToCenter(){const e=Gt.getRangeCore(this.body.nodes,this.body.nodeIndices),t=Gt.findCenter(e);for(let r=0;r<this.body.nodeIndices.length;r++){const i=this.body.nodes[this.body.nodeIndices[r]];i.x-=t.x,i.y-=t.y}}_declusterAll(){let e=!0;for(;e===!0;){e=!1;for(let t=0;t<this.body.nodeIndices.length;t++)this.body.nodes[this.body.nodeIndices[t]].isCluster===!0&&(e=!0,this.body.modules.clustering.openCluster(this.body.nodeIndices[t],{},!1));e===!0&&this.body.emitter.emit("_dataChanged")}}getSeed(){return this.initialRandomSeed}setupHierarchicalLayout(){if(this.options.hierarchical.enabled===!0&&this.body.nodeIndices.length>0){let e,t,r=!1,i=!1;this.lastNodeOnLevel={},this.hierarchical=new s_e;for(t in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,t)&&(e=this.body.nodes[t],e.options.level!==void 0?(r=!0,this.hierarchical.levels[t]=e.options.level):i=!0);if(i===!0&&r===!0)throw new Error("To use the hierarchical layout, nodes require either no predefined levels or levels have to be defined for all nodes.");{if(i===!0){const s=this.options.hierarchical.sortMethod;s==="hubsize"?this._determineLevelsByHubsize():s==="directed"?this._determineLevelsDirected():s==="custom"&&this._determineLevelsCustomCallback()}for(const s in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,s)&&this.hierarchical.ensureLevel(s);const o=this._getDistribution();this._generateMap(),this._placeNodesByHierarchy(o),this._condenseHierarchy(),this._shiftToCenter()}}}_condenseHierarchy(){var e=this;let t=!1;const r={},i=()=>{const f=s();let c=0;for(let b=0;b<f.length-1;b++){const p=f[b].max-f[b+1].min;c+=p+this.options.hierarchical.treeSpacing,o(b+1,c)}},o=(f,c)=>{const b=this.hierarchical.trees;for(const p in b)Object.prototype.hasOwnProperty.call(b,p)&&b[p]===f&&this.direction.shift(p,c)},s=()=>{const f=[];for(let c=0;c<this.hierarchical.numTrees();c++)f.push(this.direction.getTreeSize(c));return f},a=(f,c)=>{if(!c[f.id]&&(c[f.id]=!0,this.hierarchical.childrenReference[f.id])){const b=this.hierarchical.childrenReference[f.id];if(b.length>0)for(let p=0;p<b.length;p++)a(this.body.nodes[b[p]],c)}},g=function(f){let c=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1e9,b=1e9,p=1e9,y=1e9,E=-1e9;for(const S in f)if(Object.prototype.hasOwnProperty.call(f,S)){const m=e.body.nodes[S],w=e.hierarchical.levels[m.id],_=e.direction.getPosition(m),[T,R]=e._getSpaceAroundNode(m,f);b=Math.min(T,b),p=Math.min(R,p),w<=c&&(y=Math.min(_,y),E=Math.max(_,E))}return[y,E,b,p]},A=(f,c)=>{const b=this.hierarchical.getMaxLevel(f.id),p=this.hierarchical.getMaxLevel(c.id);return Math.min(b,p)},I=(f,c,b)=>{const p=this.hierarchical;for(let y=0;y<c.length;y++){const E=c[y],S=p.distributionOrdering[E];if(S.length>1)for(let m=0;m<S.length-1;m++){const w=S[m],_=S[m+1];p.hasSameParent(w,_)&&p.inSameSubNetwork(w,_)&&f(w,_,b)}}},C=function(f,c){let b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;const p=e.direction.getPosition(f),y=e.direction.getPosition(c),E=Math.abs(y-p),S=e.options.hierarchical.nodeSpacing;if(E>S){const m={},w={};a(f,m),a(c,w);const _=A(f,c),T=g(m,_),R=g(w,_),O=T[1],P=R[0],x=R[2];if(Math.abs(O-P)>S){let M=O-P+S;M<-x+S&&(M=-x+S),M<0&&(e._shiftBlock(c.id,M),t=!0,b===!0&&e._centerParent(c))}}},l=(f,c)=>{const b=c.id,p=c.edges,y=this.hierarchical.levels[c.id],E=this.options.hierarchical.levelSeparation*this.options.hierarchical.levelSeparation,S={},m=[];for(let x=0;x<p.length;x++){const V=p[x];if(V.toId!=V.fromId){const M=V.toId==b?V.from:V.to;S[p[x].id]=M,this.hierarchical.levels[M.id]<y&&m.push(V)}}const w=(x,V)=>{let M=0;for(let U=0;U<V.length;U++)if(S[V[U].id]!==void 0){const K=this.direction.getPosition(S[V[U].id])-x;M+=K/Math.sqrt(K*K+E)}return M},_=(x,V)=>{let M=0;for(let U=0;U<V.length;U++)if(S[V[U].id]!==void 0){const K=this.direction.getPosition(S[V[U].id])-x;M-=E*Math.pow(K*K+E,-1.5)}return M},T=(x,V)=>{let M=this.direction.getPosition(c);const U={};for(let K=0;K<x;K++){const oe=w(M,V),L=_(M,V),ae=40,he=Math.max(-ae,Math.min(ae,Math.round(oe/L)));if(M=M-he,U[M]!==void 0)break;U[M]=K}return M},R=x=>{const V=this.direction.getPosition(c);if(r[c.id]===void 0){const ae={};a(c,ae),r[c.id]=ae}const M=g(r[c.id]),U=M[2],K=M[3],oe=x-V;let L=0;oe>0?L=Math.min(oe,K-this.options.hierarchical.nodeSpacing):oe<0&&(L=-Math.min(-oe,U-this.options.hierarchical.nodeSpacing)),L!=0&&(this._shiftBlock(c.id,L),t=!0)},O=x=>{const V=this.direction.getPosition(c),[M,U]=this._getSpaceAroundNode(c),K=x-V;let oe=V;K>0?oe=Math.min(V+(U-this.options.hierarchical.nodeSpacing),x):K<0&&(oe=Math.max(V-(M-this.options.hierarchical.nodeSpacing),x)),oe!==V&&(this.direction.setPosition(c,oe),t=!0)};let P=T(f,m);R(P),P=T(f,p),O(P)},d=f=>{let c=this.hierarchical.getLevels();c=Vn(c).call(c);for(let b=0;b<f;b++){t=!1;for(let p=0;p<c.length;p++){const y=c[p],E=this.hierarchical.distributionOrdering[y];for(let S=0;S<E.length;S++)l(1e3,E[S])}if(t!==!0)break}},u=f=>{let c=this.hierarchical.getLevels();c=Vn(c).call(c);for(let b=0;b<f&&(t=!1,I(C,c,!0),t===!0);b++);},h=()=>{for(const f in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,f)&&this._centerParent(this.body.nodes[f])},v=()=>{let f=this.hierarchical.getLevels();f=Vn(f).call(f);for(let c=0;c<f.length;c++){const b=f[c],p=this.hierarchical.distributionOrdering[b];for(let y=0;y<p.length;y++)this._centerParent(p[y])}};this.options.hierarchical.blockShifting===!0&&(u(5),h()),this.options.hierarchical.edgeMinimization===!0&&d(20),this.options.hierarchical.parentCentralization===!0&&v(),i()}_getSpaceAroundNode(e,t){let r=!0;t===void 0&&(r=!1);const i=this.hierarchical.levels[e.id];if(i!==void 0){const o=this.hierarchical.distributionIndex[e.id],s=this.direction.getPosition(e),a=this.hierarchical.distributionOrdering[i];let g=1e9,A=1e9;if(o!==0){const I=a[o-1];if(r===!0&&t[I.id]===void 0||r===!1){const C=this.direction.getPosition(I);g=s-C}}if(o!=a.length-1){const I=a[o+1];if(r===!0&&t[I.id]===void 0||r===!1){const C=this.direction.getPosition(I);A=Math.min(A,C-s)}}return[g,A]}else return[0,0]}_centerParent(e){if(this.hierarchical.parentReference[e.id]){const t=this.hierarchical.parentReference[e.id];for(let r=0;r<t.length;r++){const i=t[r],o=this.body.nodes[i],s=this.hierarchical.childrenReference[i];if(s!==void 0){const a=this._getCenterPosition(s),g=this.direction.getPosition(o),[A,I]=this._getSpaceAroundNode(o),C=g-a;(C<0&&Math.abs(C)<I-this.options.hierarchical.nodeSpacing||C>0&&Math.abs(C)<A-this.options.hierarchical.nodeSpacing)&&this.direction.setPosition(o,a)}}}}_placeNodesByHierarchy(e){this.positionedNodes={};for(const r in e)if(Object.prototype.hasOwnProperty.call(e,r)){var t;let i=Xe(e[r]);i=this._indexArrayToNodes(i),As(t=this.direction).call(t,i);let o=0;for(let s=0;s<i.length;s++){const a=i[s];if(this.positionedNodes[a.id]===void 0){const g=this.options.hierarchical.nodeSpacing;let A=g*o;o>0&&(A=this.direction.getPosition(i[s-1])+g),this.direction.setPosition(a,A,r),this._validatePositionAndContinue(a,r,A),o++}}}}_placeBranchNodes(e,t){var r;const i=this.hierarchical.childrenReference[e];if(i===void 0)return;const o=[];for(let a=0;a<i.length;a++)o.push(this.body.nodes[i[a]]);As(r=this.direction).call(r,o);for(let a=0;a<o.length;a++){const g=o[a],A=this.hierarchical.levels[g.id];if(A>t&&this.positionedNodes[g.id]===void 0){const I=this.options.hierarchical.nodeSpacing;let C;a===0?C=this.direction.getPosition(this.body.nodes[e]):C=this.direction.getPosition(o[a-1])+I,this.direction.setPosition(g,C,A),this._validatePositionAndContinue(g,A,C)}else return}const s=this._getCenterPosition(o);this.direction.setPosition(this.body.nodes[e],s,t)}_validatePositionAndContinue(e,t,r){if(this.hierarchical.isTree){if(this.lastNodeOnLevel[t]!==void 0){const i=this.direction.getPosition(this.body.nodes[this.lastNodeOnLevel[t]]);if(r-i<this.options.hierarchical.nodeSpacing){const o=i+this.options.hierarchical.nodeSpacing-r,s=this._findCommonParent(this.lastNodeOnLevel[t],e.id);this._shiftBlock(s.withChild,o)}}this.lastNodeOnLevel[t]=e.id,this.positionedNodes[e.id]=!0,this._placeBranchNodes(e.id,t)}}_indexArrayToNodes(e){const t=[];for(let r=0;r<e.length;r++)t.push(this.body.nodes[e[r]]);return t}_getDistribution(){const e={};let t,r;for(t in this.body.nodes)if(Object.prototype.hasOwnProperty.call(this.body.nodes,t)){r=this.body.nodes[t];const i=this.hierarchical.levels[t]===void 0?0:this.hierarchical.levels[t];this.direction.fix(r,i),e[i]===void 0&&(e[i]={}),e[i][t]=r}return e}_getActiveEdges(e){const t=[];return ue(e.edges,r=>{var i;Oe(i=this.body.edgeIndices).call(i,r.id)!==-1&&t.push(r)}),t}_getHubSizes(){const e={},t=this.body.nodeIndices;ue(t,i=>{const o=this.body.nodes[i],s=this._getActiveEdges(o).length;e[s]=!0});const r=[];return ue(e,i=>{r.push(Number(i))}),As(r).call(r,function(i,o){return o-i}),r}_determineLevelsByHubsize(){const e=(r,i)=>{this.hierarchical.levelDownstream(r,i)},t=this._getHubSizes();for(let r=0;r<t.length;++r){const i=t[r];if(i===0)break;ue(this.body.nodeIndices,o=>{const s=this.body.nodes[o];i===this._getActiveEdges(s).length&&this._crawlNetwork(e,o)})}}_determineLevelsCustomCallback(){const t=function(i,o,s){},r=(i,o,s)=>{let a=this.hierarchical.levels[i.id];a===void 0&&(a=this.hierarchical.levels[i.id]=1e5);const g=t(Gt.cloneOptions(i,"node"),Gt.cloneOptions(o,"node"),Gt.cloneOptions(s,"edge"));this.hierarchical.levels[o.id]=a+g};this._crawlNetwork(r),this.hierarchical.setMinLevelToZero()}_determineLevelsDirected(){var e;const t=Ete(e=this.body.nodeIndices).call(e,(r,i)=>(r.set(i,this.body.nodes[i]),r),new OR);this.options.hierarchical.shakeTowards==="roots"?this.hierarchical.levels=o_e(t):this.hierarchical.levels=n_e(t),this.hierarchical.setMinLevelToZero()}_generateMap(){const e=(t,r)=>{this.hierarchical.levels[r.id]>this.hierarchical.levels[t.id]&&this.hierarchical.addRelation(t.id,r.id)};this._crawlNetwork(e),this.hierarchical.checkIfTree()}_crawlNetwork(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(){},t=arguments.length>1?arguments[1]:void 0;const r={},i=(o,s)=>{if(r[o.id]===void 0){this.hierarchical.setTreeIndex(o,s),r[o.id]=!0;let a;const g=this._getActiveEdges(o);for(let A=0;A<g.length;A++){const I=g[A];I.connected===!0&&(I.toId==o.id?a=I.from:a=I.to,o.id!=a.id&&(e(o,a,I),i(a,s)))}}};if(t===void 0){let o=0;for(let s=0;s<this.body.nodeIndices.length;s++){const a=this.body.nodeIndices[s];if(r[a]===void 0){const g=this.body.nodes[a];i(g,o),o+=1}}}else{const o=this.body.nodes[t];if(o===void 0){console.error("Node not found:",t);return}i(o)}}_shiftBlock(e,t){const r={},i=o=>{if(r[o])return;r[o]=!0,this.direction.shift(o,t);const s=this.hierarchical.childrenReference[o];if(s!==void 0)for(let a=0;a<s.length;a++)i(s[a])};i(e)}_findCommonParent(e,t){const r={},i=(s,a)=>{const g=this.hierarchical.parentReference[a];if(g!==void 0)for(let A=0;A<g.length;A++){const I=g[A];s[I]=!0,i(s,I)}},o=(s,a)=>{const g=this.hierarchical.parentReference[a];if(g!==void 0)for(let A=0;A<g.length;A++){const I=g[A];if(s[I]!==void 0)return{foundParent:I,withChild:a};const C=o(s,I);if(C.foundParent!==null)return C}return{foundParent:null,withChild:a}};return i(r,e),o(r,t)}setDirectionStrategy(){this.options.hierarchical.direction==="UD"||this.options.hierarchical.direction==="DU"?this.direction=new KSe(this):this.direction=new YSe(this)}_getCenterPosition(e){let t=1e9,r=-1e9;for(let i=0;i<e.length;i++){let o;if(e[i].id!==void 0)o=e[i];else{const a=e[i];o=this.body.nodes[a]}const s=this.direction.getPosition(o);t=Math.min(t,s),r=Math.max(r,s)}return .5*(t+r)}}class g_e{constructor(e,t,r,i){var o,s;this.body=e,this.canvas=t,this.selectionHandler=r,this.interactionHandler=i,this.editMode=!1,this.manipulationDiv=void 0,this.editModeDiv=void 0,this.closeDiv=void 0,this._domEventListenerCleanupQueue=[],this.temporaryUIFunctions={},this.temporaryEventFunctions=[],this.touchTime=0,this.temporaryIds={nodes:[],edges:[]},this.guiEnabled=!1,this.inMode=!1,this.selectedControlNode=void 0,this.options={},this.defaultOptions={enabled:!1,initiallyActive:!1,addNode:!0,addEdge:!0,editNode:void 0,editEdge:!0,deleteNode:!0,deleteEdge:!0,controlNodeStyle:{shape:"dot",size:6,color:{background:"#ff0000",border:"#3c3c3c",highlight:{background:"#07f968",border:"#3c3c3c"}},borderWidth:2,borderWidthSelected:2}},At(this.options,this.defaultOptions),this.body.emitter.on("destroy",()=>{this._clean()}),this.body.emitter.on("_dataChanged",j(o=this._restore).call(o,this)),this.body.emitter.on("_resetData",j(s=this._restore).call(s,this))}_restore(){this.inMode!==!1&&(this.options.initiallyActive===!0?this.enableEditMode():this.disableEditMode())}setOptions(e,t,r){t!==void 0&&(t.locale!==void 0?this.options.locale=t.locale:this.options.locale=r.locale,t.locales!==void 0?this.options.locales=t.locales:this.options.locales=r.locales),e!==void 0&&(typeof e=="boolean"?this.options.enabled=e:(this.options.enabled=!0,qe(this.options,e)),this.options.initiallyActive===!0&&(this.editMode=!0),this._setup())}toggleEditMode(){this.editMode===!0?this.disableEditMode():this.enableEditMode()}enableEditMode(){this.editMode=!0,this._clean(),this.guiEnabled===!0&&(this.manipulationDiv.style.display="block",this.closeDiv.style.display="block",this.editModeDiv.style.display="none",this.showManipulatorToolbar())}disableEditMode(){this.editMode=!1,this._clean(),this.guiEnabled===!0&&(this.manipulationDiv.style.display="none",this.closeDiv.style.display="none",this.editModeDiv.style.display="block",this._createEditButton())}showManipulatorToolbar(){if(this._clean(),this.manipulationDOM={},this.guiEnabled===!0){var e,t;this.editMode=!0,this.manipulationDiv.style.display="block",this.closeDiv.style.display="block";const r=this.selectionHandler.getSelectedNodeCount(),i=this.selectionHandler.getSelectedEdgeCount(),o=r+i,s=this.options.locales[this.options.locale];let a=!1;this.options.addNode!==!1&&(this._createAddNodeButton(s),a=!0),this.options.addEdge!==!1&&(a===!0?this._createSeperator(1):a=!0,this._createAddEdgeButton(s)),r===1&&typeof this.options.editNode=="function"?(a===!0?this._createSeperator(2):a=!0,this._createEditNodeButton(s)):i===1&&r===0&&this.options.editEdge!==!1&&(a===!0?this._createSeperator(3):a=!0,this._createEditEdgeButton(s)),o!==0&&(r>0&&this.options.deleteNode!==!1?(a===!0&&this._createSeperator(4),this._createDeleteButton(s)):r===0&&this.options.deleteEdge!==!1&&(a===!0&&this._createSeperator(4),this._createDeleteButton(s))),this._bindElementEvents(this.closeDiv,j(e=this.toggleEditMode).call(e,this)),this._temporaryBindEvent("select",j(t=this.showManipulatorToolbar).call(t,this))}this.body.emitter.emit("_redraw")}addNodeMode(){var e;if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="addNode",this.guiEnabled===!0){var t;const r=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(r),this._createSeperator(),this._createDescription(r.addDescription||this.options.locales.en.addDescription),this._bindElementEvents(this.closeDiv,j(t=this.toggleEditMode).call(t,this))}this._temporaryBindEvent("click",j(e=this._performAddNode).call(e,this))}editNode(){this.editMode!==!0&&this.enableEditMode(),this._clean();const e=this.selectionHandler.getSelectedNodes()[0];if(e!==void 0)if(this.inMode="editNode",typeof this.options.editNode=="function")if(e.isCluster!==!0){const t=qe({},e.options,!1);if(t.x=e.x,t.y=e.y,this.options.editNode.length===2)this.options.editNode(t,r=>{r!=null&&this.inMode==="editNode"&&this.body.data.nodes.getDataSet().update(r),this.showManipulatorToolbar()});else throw new Error("The function for edit does not support two arguments (data, callback)")}else alert(this.options.locales[this.options.locale].editClusterError||this.options.locales.en.editClusterError);else throw new Error("No function has been configured to handle the editing of nodes.");else this.showManipulatorToolbar()}addEdgeMode(){var e,t,r,i,o;if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="addEdge",this.guiEnabled===!0){var s;const a=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(a),this._createSeperator(),this._createDescription(a.edgeDescription||this.options.locales.en.edgeDescription),this._bindElementEvents(this.closeDiv,j(s=this.toggleEditMode).call(s,this))}this._temporaryBindUI("onTouch",j(e=this._handleConnect).call(e,this)),this._temporaryBindUI("onDragEnd",j(t=this._finishConnect).call(t,this)),this._temporaryBindUI("onDrag",j(r=this._dragControlNode).call(r,this)),this._temporaryBindUI("onRelease",j(i=this._finishConnect).call(i,this)),this._temporaryBindUI("onDragStart",j(o=this._dragStartEdge).call(o,this)),this._temporaryBindUI("onHold",()=>{})}editEdgeMode(){if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="editEdge",typeof this.options.editEdge=="object"&&typeof this.options.editEdge.editWithoutDrag=="function"&&(this.edgeBeingEditedId=this.selectionHandler.getSelectedEdgeIds()[0],this.edgeBeingEditedId!==void 0)){const s=this.body.edges[this.edgeBeingEditedId];this._performEditEdge(s.from.id,s.to.id);return}if(this.guiEnabled===!0){var e;const s=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(s),this._createSeperator(),this._createDescription(s.editEdgeDescription||this.options.locales.en.editEdgeDescription),this._bindElementEvents(this.closeDiv,j(e=this.toggleEditMode).call(e,this))}if(this.edgeBeingEditedId=this.selectionHandler.getSelectedEdgeIds()[0],this.edgeBeingEditedId!==void 0){var t,r,i,o;const s=this.body.edges[this.edgeBeingEditedId],a=this._getNewTargetNode(s.from.x,s.from.y),g=this._getNewTargetNode(s.to.x,s.to.y);this.temporaryIds.nodes.push(a.id),this.temporaryIds.nodes.push(g.id),this.body.nodes[a.id]=a,this.body.nodeIndices.push(a.id),this.body.nodes[g.id]=g,this.body.nodeIndices.push(g.id),this._temporaryBindUI("onTouch",j(t=this._controlNodeTouch).call(t,this)),this._temporaryBindUI("onTap",()=>{}),this._temporaryBindUI("onHold",()=>{}),this._temporaryBindUI("onDragStart",j(r=this._controlNodeDragStart).call(r,this)),this._temporaryBindUI("onDrag",j(i=this._controlNodeDrag).call(i,this)),this._temporaryBindUI("onDragEnd",j(o=this._controlNodeDragEnd).call(o,this)),this._temporaryBindUI("onMouseMove",()=>{}),this._temporaryBindEvent("beforeDrawing",A=>{const I=s.edgeType.findBorderPositions(A);a.selected===!1&&(a.x=I.from.x,a.y=I.from.y),g.selected===!1&&(g.x=I.to.x,g.y=I.to.y)}),this.body.emitter.emit("_redraw")}else this.showManipulatorToolbar()}deleteSelected(){this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="delete";const e=this.selectionHandler.getSelectedNodeIds(),t=this.selectionHandler.getSelectedEdgeIds();let r;if(e.length>0){for(let i=0;i<e.length;i++)if(this.body.nodes[e[i]].isCluster===!0){alert(this.options.locales[this.options.locale].deleteClusterError||this.options.locales.en.deleteClusterError);return}typeof this.options.deleteNode=="function"&&(r=this.options.deleteNode)}else t.length>0&&typeof this.options.deleteEdge=="function"&&(r=this.options.deleteEdge);if(typeof r=="function"){const i={nodes:e,edges:t};if(r.length===2)r(i,o=>{o!=null&&this.inMode==="delete"?(this.body.data.edges.getDataSet().remove(o.edges),this.body.data.nodes.getDataSet().remove(o.nodes),this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar()):(this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar())});else throw new Error("The function for delete does not support two arguments (data, callback)")}else this.body.data.edges.getDataSet().remove(t),this.body.data.nodes.getDataSet().remove(e),this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar()}_setup(){this.options.enabled===!0?(this.guiEnabled=!0,this._createWrappers(),this.editMode===!1?this._createEditButton():this.showManipulatorToolbar()):(this._removeManipulationDOM(),this.guiEnabled=!1)}_createWrappers(){if(this.manipulationDiv===void 0&&(this.manipulationDiv=document.createElement("div"),this.manipulationDiv.className="vis-manipulation",this.editMode===!0?this.manipulationDiv.style.display="block":this.manipulationDiv.style.display="none",this.canvas.frame.appendChild(this.manipulationDiv)),this.editModeDiv===void 0&&(this.editModeDiv=document.createElement("div"),this.editModeDiv.className="vis-edit-mode",this.editMode===!0?this.editModeDiv.style.display="none":this.editModeDiv.style.display="block",this.canvas.frame.appendChild(this.editModeDiv)),this.closeDiv===void 0){var e,t;this.closeDiv=document.createElement("button"),this.closeDiv.className="vis-close",this.closeDiv.setAttribute("aria-label",(e=(t=this.options.locales[this.options.locale])===null||t===void 0?void 0:t.close)!==null&&e!==void 0?e:this.options.locales.en.close),this.closeDiv.style.display=this.manipulationDiv.style.display,this.canvas.frame.appendChild(this.closeDiv)}}_getNewTargetNode(e,t){const r=qe({},this.options.controlNodeStyle);r.id="targetNode"+ja(),r.hidden=!1,r.physics=!1,r.x=e,r.y=t;const i=this.body.functions.createNode(r);return i.shape.boundingBox={left:e,right:e,top:t,bottom:t},i}_createEditButton(){var e;this._clean(),this.manipulationDOM={},Xi(this.editModeDiv);const t=this.options.locales[this.options.locale],r=this._createButton("editMode","vis-edit vis-edit-mode",t.edit||this.options.locales.en.edit);this.editModeDiv.appendChild(r),this._bindElementEvents(r,j(e=this.toggleEditMode).call(e,this))}_clean(){this.inMode=!1,this.guiEnabled===!0&&(Xi(this.editModeDiv),Xi(this.manipulationDiv),this._cleanupDOMEventListeners()),this._cleanupTemporaryNodesAndEdges(),this._unbindTemporaryUIs(),this._unbindTemporaryEvents(),this.body.emitter.emit("restorePhysics")}_cleanupDOMEventListeners(){for(const t of Ei(e=this._domEventListenerCleanupQueue).call(e,0)){var e;t()}}_removeManipulationDOM(){this._clean(),Xi(this.manipulationDiv),Xi(this.editModeDiv),Xi(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}_createSeperator(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:1;this.manipulationDOM["seperatorLineDiv"+e]=document.createElement("div"),this.manipulationDOM["seperatorLineDiv"+e].className="vis-separator-line",this.manipulationDiv.appendChild(this.manipulationDOM["seperatorLineDiv"+e])}_createAddNodeButton(e){var t;const r=this._createButton("addNode","vis-add",e.addNode||this.options.locales.en.addNode);this.manipulationDiv.appendChild(r),this._bindElementEvents(r,j(t=this.addNodeMode).call(t,this))}_createAddEdgeButton(e){var t;const r=this._createButton("addEdge","vis-connect",e.addEdge||this.options.locales.en.addEdge);this.manipulationDiv.appendChild(r),this._bindElementEvents(r,j(t=this.addEdgeMode).call(t,this))}_createEditNodeButton(e){var t;const r=this._createButton("editNode","vis-edit",e.editNode||this.options.locales.en.editNode);this.manipulationDiv.appendChild(r),this._bindElementEvents(r,j(t=this.editNode).call(t,this))}_createEditEdgeButton(e){var t;const r=this._createButton("editEdge","vis-edit",e.editEdge||this.options.locales.en.editEdge);this.manipulationDiv.appendChild(r),this._bindElementEvents(r,j(t=this.editEdgeMode).call(t,this))}_createDeleteButton(e){var t;let r;this.options.rtl?r="vis-delete-rtl":r="vis-delete";const i=this._createButton("delete",r,e.del||this.options.locales.en.del);this.manipulationDiv.appendChild(i),this._bindElementEvents(i,j(t=this.deleteSelected).call(t,this))}_createBackButton(e){var t;const r=this._createButton("back","vis-back",e.back||this.options.locales.en.back);this.manipulationDiv.appendChild(r),this._bindElementEvents(r,j(t=this.showManipulatorToolbar).call(t,this))}_createButton(e,t,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"vis-label";return this.manipulationDOM[e+"Div"]=document.createElement("button"),this.manipulationDOM[e+"Div"].className="vis-button "+t,this.manipulationDOM[e+"Label"]=document.createElement("div"),this.manipulationDOM[e+"Label"].className=i,this.manipulationDOM[e+"Label"].innerText=r,this.manipulationDOM[e+"Div"].appendChild(this.manipulationDOM[e+"Label"]),this.manipulationDOM[e+"Div"]}_createDescription(e){this.manipulationDOM.descriptionLabel=document.createElement("div"),this.manipulationDOM.descriptionLabel.className="vis-none",this.manipulationDOM.descriptionLabel.innerText=e,this.manipulationDiv.appendChild(this.manipulationDOM.descriptionLabel)}_temporaryBindEvent(e,t){this.temporaryEventFunctions.push({event:e,boundFunction:t}),this.body.emitter.on(e,t)}_temporaryBindUI(e,t){if(this.body.eventListeners[e]!==void 0)this.temporaryUIFunctions[e]=this.body.eventListeners[e],this.body.eventListeners[e]=t;else throw new Error("This UI function does not exist. Typo? You tried: "+e+" possible are: "+eA(Xe(this.body.eventListeners)))}_unbindTemporaryUIs(){for(const e in this.temporaryUIFunctions)Object.prototype.hasOwnProperty.call(this.temporaryUIFunctions,e)&&(this.body.eventListeners[e]=this.temporaryUIFunctions[e],delete this.temporaryUIFunctions[e]);this.temporaryUIFunctions={}}_unbindTemporaryEvents(){for(let e=0;e<this.temporaryEventFunctions.length;e++){const t=this.temporaryEventFunctions[e].event,r=this.temporaryEventFunctions[e].boundFunction;this.body.emitter.off(t,r)}this.temporaryEventFunctions=[]}_bindElementEvents(e,t){const r=new as(e,{});nI(r,t),this._domEventListenerCleanupQueue.push(()=>{r.destroy()});const i=o=>{let{keyCode:s,key:a}=o;(a==="Enter"||a===" "||s===13||s===32)&&t()};e.addEventListener("keyup",i,!1),this._domEventListenerCleanupQueue.push(()=>{e.removeEventListener("keyup",i,!1)})}_cleanupTemporaryNodesAndEdges(){for(let o=0;o<this.temporaryIds.edges.length;o++){var e;this.body.edges[this.temporaryIds.edges[o]].disconnect(),delete this.body.edges[this.temporaryIds.edges[o]];const s=Oe(e=this.body.edgeIndices).call(e,this.temporaryIds.edges[o]);if(s!==-1){var t;Ei(t=this.body.edgeIndices).call(t,s,1)}}for(let o=0;o<this.temporaryIds.nodes.length;o++){var r;delete this.body.nodes[this.temporaryIds.nodes[o]];const s=Oe(r=this.body.nodeIndices).call(r,this.temporaryIds.nodes[o]);if(s!==-1){var i;Ei(i=this.body.nodeIndices).call(i,s,1)}}this.temporaryIds={nodes:[],edges:[]}}_controlNodeTouch(e){this.selectionHandler.unselectAll(),this.lastTouch=this.body.functions.getPointer(e.center),this.lastTouch.translation=At({},this.body.view.translation)}_controlNodeDragStart(){const e=this.lastTouch,t=this.selectionHandler._pointerToPositionObject(e),r=this.body.nodes[this.temporaryIds.nodes[0]],i=this.body.nodes[this.temporaryIds.nodes[1]],o=this.body.edges[this.edgeBeingEditedId];this.selectedControlNode=void 0;const s=r.isOverlappingWith(t),a=i.isOverlappingWith(t);s===!0?(this.selectedControlNode=r,o.edgeType.from=r):a===!0&&(this.selectedControlNode=i,o.edgeType.to=i),this.selectedControlNode!==void 0&&this.selectionHandler.selectObject(this.selectedControlNode),this.body.emitter.emit("_redraw")}_controlNodeDrag(e){this.body.emitter.emit("disablePhysics");const t=this.body.functions.getPointer(e.center),r=this.canvas.DOMtoCanvas(t);this.selectedControlNode!==void 0?(this.selectedControlNode.x=r.x,this.selectedControlNode.y=r.y):this.interactionHandler.onDrag(e),this.body.emitter.emit("_redraw")}_controlNodeDragEnd(e){const t=this.body.functions.getPointer(e.center),r=this.selectionHandler._pointerToPositionObject(t),i=this.body.edges[this.edgeBeingEditedId];if(this.selectedControlNode===void 0)return;this.selectionHandler.unselectAll();const o=this.selectionHandler._getAllNodesOverlappingWith(r);let s;for(let a=o.length-1;a>=0;a--)if(o[a]!==this.selectedControlNode.id){s=this.body.nodes[o[a]];break}if(s!==void 0&&this.selectedControlNode!==void 0)if(s.isCluster===!0)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{const a=this.body.nodes[this.temporaryIds.nodes[0]];this.selectedControlNode.id===a.id?this._performEditEdge(s.id,i.to.id):this._performEditEdge(i.from.id,s.id)}else i.updateEdgeType(),this.body.emitter.emit("restorePhysics");this.body.emitter.emit("_redraw")}_handleConnect(e){if(new Date().valueOf()-this.touchTime>100){this.lastTouch=this.body.functions.getPointer(e.center),this.lastTouch.translation=At({},this.body.view.translation),this.interactionHandler.drag.pointer=this.lastTouch,this.interactionHandler.drag.translation=this.lastTouch.translation;const t=this.lastTouch,r=this.selectionHandler.getNodeAt(t);if(r!==void 0)if(r.isCluster===!0)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{const i=this._getNewTargetNode(r.x,r.y);this.body.nodes[i.id]=i,this.body.nodeIndices.push(i.id);const o=this.body.functions.createEdge({id:"connectionEdge"+ja(),from:r.id,to:i.id,physics:!1,smooth:{enabled:!0,type:"continuous",roundness:.5}});this.body.edges[o.id]=o,this.body.edgeIndices.push(o.id),this.temporaryIds.nodes.push(i.id),this.temporaryIds.edges.push(o.id)}this.touchTime=new Date().valueOf()}}_dragControlNode(e){const t=this.body.functions.getPointer(e.center),r=this.selectionHandler._pointerToPositionObject(t);let i;this.temporaryIds.edges[0]!==void 0&&(i=this.body.edges[this.temporaryIds.edges[0]].fromId);const o=this.selectionHandler._getAllNodesOverlappingWith(r);let s;for(let g=o.length-1;g>=0;g--){var a;if(Oe(a=this.temporaryIds.nodes).call(a,o[g])===-1){s=this.body.nodes[o[g]];break}}if(e.controlEdge={from:i,to:s?s.id:void 0},this.selectionHandler.generateClickEvent("controlNodeDragging",e,t),this.temporaryIds.nodes[0]!==void 0){const g=this.body.nodes[this.temporaryIds.nodes[0]];g.x=this.canvas._XconvertDOMtoCanvas(t.x),g.y=this.canvas._YconvertDOMtoCanvas(t.y),this.body.emitter.emit("_redraw")}else this.interactionHandler.onDrag(e)}_finishConnect(e){const t=this.body.functions.getPointer(e.center),r=this.selectionHandler._pointerToPositionObject(t);let i;this.temporaryIds.edges[0]!==void 0&&(i=this.body.edges[this.temporaryIds.edges[0]].fromId);const o=this.selectionHandler._getAllNodesOverlappingWith(r);let s;for(let g=o.length-1;g>=0;g--){var a;if(Oe(a=this.temporaryIds.nodes).call(a,o[g])===-1){s=this.body.nodes[o[g]];break}}this._cleanupTemporaryNodesAndEdges(),s!==void 0&&(s.isCluster===!0?alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError):this.body.nodes[i]!==void 0&&this.body.nodes[s.id]!==void 0&&this._performAddEdge(i,s.id)),e.controlEdge={from:i,to:s?s.id:void 0},this.selectionHandler.generateClickEvent("controlNodeDragEnd",e,t),this.body.emitter.emit("_redraw")}_dragStartEdge(e){const t=this.lastTouch;this.selectionHandler.generateClickEvent("dragStart",e,t,void 0,!0)}_performAddNode(e){const t={id:ja(),x:e.pointer.canvas.x,y:e.pointer.canvas.y,label:"new"};if(typeof this.options.addNode=="function")if(this.options.addNode.length===2)this.options.addNode(t,r=>{r!=null&&this.inMode==="addNode"&&this.body.data.nodes.getDataSet().add(r),this.showManipulatorToolbar()});else throw this.showManipulatorToolbar(),new Error("The function for add does not support two arguments (data,callback)");else this.body.data.nodes.getDataSet().add(t),this.showManipulatorToolbar()}_performAddEdge(e,t){const r={from:e,to:t};if(typeof this.options.addEdge=="function")if(this.options.addEdge.length===2)this.options.addEdge(r,i=>{i!=null&&this.inMode==="addEdge"&&(this.body.data.edges.getDataSet().add(i),this.selectionHandler.unselectAll(),this.showManipulatorToolbar())});else throw new Error("The function for connect does not support two arguments (data,callback)");else this.body.data.edges.getDataSet().add(r),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}_performEditEdge(e,t){const r={id:this.edgeBeingEditedId,from:e,to:t,label:this.body.data.edges.get(this.edgeBeingEditedId).label};let i=this.options.editEdge;if(typeof i=="object"&&(i=i.editWithoutDrag),typeof i=="function")if(i.length===2)i(r,o=>{o==null||this.inMode!=="editEdge"?(this.body.edges[r.id].updateEdgeType(),this.body.emitter.emit("_redraw"),this.showManipulatorToolbar()):(this.body.data.edges.getDataSet().update(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar())});else throw new Error("The function for edit does not support two arguments (data, callback)");else this.body.data.edges.getDataSet().update(r),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}}const W="string",B="boolean",D="number",Pa="array",J="object",Tte="dom",A_e="any",iO=["arrow","bar","box","circle","crow","curve","diamond","image","inv_curve","inv_triangle","triangle","vee"],nO={borderWidth:{number:D},borderWidthSelected:{number:D,undefined:"undefined"},brokenImage:{string:W,undefined:"undefined"},chosen:{label:{boolean:B,function:"function"},node:{boolean:B,function:"function"},__type__:{object:J,boolean:B}},color:{border:{string:W},background:{string:W},highlight:{border:{string:W},background:{string:W},__type__:{object:J,string:W}},hover:{border:{string:W},background:{string:W},__type__:{object:J,string:W}},__type__:{object:J,string:W}},opacity:{number:D,undefined:"undefined"},fixed:{x:{boolean:B},y:{boolean:B},__type__:{object:J,boolean:B}},font:{align:{string:W},color:{string:W},size:{number:D},face:{string:W},background:{string:W},strokeWidth:{number:D},strokeColor:{string:W},vadjust:{number:D},multi:{boolean:B,string:W},bold:{color:{string:W},size:{number:D},face:{string:W},mod:{string:W},vadjust:{number:D},__type__:{object:J,string:W}},boldital:{color:{string:W},size:{number:D},face:{string:W},mod:{string:W},vadjust:{number:D},__type__:{object:J,string:W}},ital:{color:{string:W},size:{number:D},face:{string:W},mod:{string:W},vadjust:{number:D},__type__:{object:J,string:W}},mono:{color:{string:W},size:{number:D},face:{string:W},mod:{string:W},vadjust:{number:D},__type__:{object:J,string:W}},__type__:{object:J,string:W}},group:{string:W,number:D,undefined:"undefined"},heightConstraint:{minimum:{number:D},valign:{string:W},__type__:{object:J,boolean:B,number:D}},hidden:{boolean:B},icon:{face:{string:W},code:{string:W},size:{number:D},color:{string:W},weight:{string:W,number:D},__type__:{object:J}},id:{string:W,number:D},image:{selected:{string:W,undefined:"undefined"},unselected:{string:W,undefined:"undefined"},__type__:{object:J,string:W}},imagePadding:{top:{number:D},right:{number:D},bottom:{number:D},left:{number:D},__type__:{object:J,number:D}},label:{string:W,undefined:"undefined"},labelHighlightBold:{boolean:B},level:{number:D,undefined:"undefined"},margin:{top:{number:D},right:{number:D},bottom:{number:D},left:{number:D},__type__:{object:J,number:D}},mass:{number:D},physics:{boolean:B},scaling:{min:{number:D},max:{number:D},label:{enabled:{boolean:B},min:{number:D},max:{number:D},maxVisible:{number:D},drawThreshold:{number:D},__type__:{object:J,boolean:B}},customScalingFunction:{function:"function"},__type__:{object:J}},shadow:{enabled:{boolean:B},color:{string:W},size:{number:D},x:{number:D},y:{number:D},__type__:{object:J,boolean:B}},shape:{string:["custom","ellipse","circle","database","box","text","image","circularImage","diamond","dot","star","triangle","triangleDown","square","icon","hexagon"]},ctxRenderer:{function:"function"},shapeProperties:{borderDashes:{boolean:B,array:Pa},borderRadius:{number:D},interpolation:{boolean:B},useImageSize:{boolean:B},useBorderWithImage:{boolean:B},coordinateOrigin:{string:["center","top-left"]},__type__:{object:J}},size:{number:D},title:{string:W,dom:Tte,undefined:"undefined"},value:{number:D,undefined:"undefined"},widthConstraint:{minimum:{number:D},maximum:{number:D},__type__:{object:J,boolean:B,number:D}},x:{number:D},y:{number:D},__type__:{object:J}},I_e={configure:{enabled:{boolean:B},filter:{boolean:B,string:W,array:Pa,function:"function"},container:{dom:Tte},showButton:{boolean:B},__type__:{object:J,boolean:B,string:W,array:Pa,function:"function"}},edges:{arrows:{to:{enabled:{boolean:B},scaleFactor:{number:D},type:{string:iO},imageHeight:{number:D},imageWidth:{number:D},src:{string:W},__type__:{object:J,boolean:B}},middle:{enabled:{boolean:B},scaleFactor:{number:D},type:{string:iO},imageWidth:{number:D},imageHeight:{number:D},src:{string:W},__type__:{object:J,boolean:B}},from:{enabled:{boolean:B},scaleFactor:{number:D},type:{string:iO},imageWidth:{number:D},imageHeight:{number:D},src:{string:W},__type__:{object:J,boolean:B}},__type__:{string:["from","to","middle"],object:J}},endPointOffset:{from:{number:D},to:{number:D},__type__:{object:J,number:D}},arrowStrikethrough:{boolean:B},background:{enabled:{boolean:B},color:{string:W},size:{number:D},dashes:{boolean:B,array:Pa},__type__:{object:J,boolean:B}},chosen:{label:{boolean:B,function:"function"},edge:{boolean:B,function:"function"},__type__:{object:J,boolean:B}},color:{color:{string:W},highlight:{string:W},hover:{string:W},inherit:{string:["from","to","both"],boolean:B},opacity:{number:D},__type__:{object:J,string:W}},dashes:{boolean:B,array:Pa},font:{color:{string:W},size:{number:D},face:{string:W},background:{string:W},strokeWidth:{number:D},strokeColor:{string:W},align:{string:["horizontal","top","middle","bottom"]},vadjust:{number:D},multi:{boolean:B,string:W},bold:{color:{string:W},size:{number:D},face:{string:W},mod:{string:W},vadjust:{number:D},__type__:{object:J,string:W}},boldital:{color:{string:W},size:{number:D},face:{string:W},mod:{string:W},vadjust:{number:D},__type__:{object:J,string:W}},ital:{color:{string:W},size:{number:D},face:{string:W},mod:{string:W},vadjust:{number:D},__type__:{object:J,string:W}},mono:{color:{string:W},size:{number:D},face:{string:W},mod:{string:W},vadjust:{number:D},__type__:{object:J,string:W}},__type__:{object:J,string:W}},hidden:{boolean:B},hoverWidth:{function:"function",number:D},label:{string:W,undefined:"undefined"},labelHighlightBold:{boolean:B},length:{number:D,undefined:"undefined"},physics:{boolean:B},scaling:{min:{number:D},max:{number:D},label:{enabled:{boolean:B},min:{number:D},max:{number:D},maxVisible:{number:D},drawThreshold:{number:D},__type__:{object:J,boolean:B}},customScalingFunction:{function:"function"},__type__:{object:J}},selectionWidth:{function:"function",number:D},selfReferenceSize:{number:D},selfReference:{size:{number:D},angle:{number:D},renderBehindTheNode:{boolean:B},__type__:{object:J}},shadow:{enabled:{boolean:B},color:{string:W},size:{number:D},x:{number:D},y:{number:D},__type__:{object:J,boolean:B}},smooth:{enabled:{boolean:B},type:{string:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW","cubicBezier"]},roundness:{number:D},forceDirection:{string:["horizontal","vertical","none"],boolean:B},__type__:{object:J,boolean:B}},title:{string:W,undefined:"undefined"},width:{number:D},widthConstraint:{maximum:{number:D},__type__:{object:J,boolean:B,number:D}},value:{number:D,undefined:"undefined"},__type__:{object:J}},groups:{useDefaultGroups:{boolean:B},__any__:nO,__type__:{object:J}},interaction:{dragNodes:{boolean:B},dragView:{boolean:B},hideEdgesOnDrag:{boolean:B},hideEdgesOnZoom:{boolean:B},hideNodesOnDrag:{boolean:B},hover:{boolean:B},keyboard:{enabled:{boolean:B},speed:{x:{number:D},y:{number:D},zoom:{number:D},__type__:{object:J}},bindToWindow:{boolean:B},autoFocus:{boolean:B},__type__:{object:J,boolean:B}},multiselect:{boolean:B},navigationButtons:{boolean:B},selectable:{boolean:B},selectConnectedEdges:{boolean:B},hoverConnectedEdges:{boolean:B},tooltipDelay:{number:D},zoomView:{boolean:B},zoomSpeed:{number:D},__type__:{object:J}},layout:{randomSeed:{undefined:"undefined",number:D,string:W},improvedLayout:{boolean:B},clusterThreshold:{number:D},hierarchical:{enabled:{boolean:B},levelSeparation:{number:D},nodeSpacing:{number:D},treeSpacing:{number:D},blockShifting:{boolean:B},edgeMinimization:{boolean:B},parentCentralization:{boolean:B},direction:{string:["UD","DU","LR","RL"]},sortMethod:{string:["hubsize","directed"]},shakeTowards:{string:["leaves","roots"]},__type__:{object:J,boolean:B}},__type__:{object:J}},manipulation:{enabled:{boolean:B},initiallyActive:{boolean:B},addNode:{boolean:B,function:"function"},addEdge:{boolean:B,function:"function"},editNode:{function:"function"},editEdge:{editWithoutDrag:{function:"function"},__type__:{object:J,boolean:B,function:"function"}},deleteNode:{boolean:B,function:"function"},deleteEdge:{boolean:B,function:"function"},controlNodeStyle:nO,__type__:{object:J,boolean:B}},nodes:nO,physics:{enabled:{boolean:B},barnesHut:{theta:{number:D},gravitationalConstant:{number:D},centralGravity:{number:D},springLength:{number:D},springConstant:{number:D},damping:{number:D},avoidOverlap:{number:D},__type__:{object:J}},forceAtlas2Based:{theta:{number:D},gravitationalConstant:{number:D},centralGravity:{number:D},springLength:{number:D},springConstant:{number:D},damping:{number:D},avoidOverlap:{number:D},__type__:{object:J}},repulsion:{centralGravity:{number:D},springLength:{number:D},springConstant:{number:D},nodeDistance:{number:D},damping:{number:D},__type__:{object:J}},hierarchicalRepulsion:{centralGravity:{number:D},springLength:{number:D},springConstant:{number:D},nodeDistance:{number:D},damping:{number:D},avoidOverlap:{number:D},__type__:{object:J}},maxVelocity:{number:D},minVelocity:{number:D},solver:{string:["barnesHut","repulsion","hierarchicalRepulsion","forceAtlas2Based"]},stabilization:{enabled:{boolean:B},iterations:{number:D},updateInterval:{number:D},onlyDynamicEdges:{boolean:B},fit:{boolean:B},__type__:{object:J,boolean:B}},timestep:{number:D},adaptiveTimestep:{boolean:B},wind:{x:{number:D},y:{number:D},__type__:{object:J}},__type__:{object:J,boolean:B}},autoResize:{boolean:B},clickToUse:{boolean:B},locale:{string:W},locales:{__any__:{any:A_e},__type__:{object:J}},height:{string:W},width:{string:W},__type__:{object:J}},Rte={nodes:{borderWidth:[1,0,10,1],borderWidthSelected:[2,0,10,1],color:{border:["color","#2B7CE9"],background:["color","#97C2FC"],highlight:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]},hover:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]}},opacity:[0,0,1,.1],fixed:{x:!1,y:!1},font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[0,0,50,1],strokeColor:["color","#ffffff"]},hidden:!1,labelHighlightBold:!0,physics:!0,scaling:{min:[10,0,200,1],max:[30,0,200,1],label:{enabled:!1,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},shape:["ellipse","box","circle","database","diamond","dot","square","star","text","triangle","triangleDown","hexagon"],shapeProperties:{borderDashes:!1,borderRadius:[6,0,20,1],interpolation:!0,useImageSize:!1},size:[25,0,200,1]},edges:{arrows:{to:{enabled:!1,scaleFactor:[1,0,3,.05],type:"arrow"},middle:{enabled:!1,scaleFactor:[1,0,3,.05],type:"arrow"},from:{enabled:!1,scaleFactor:[1,0,3,.05],type:"arrow"}},endPointOffset:{from:[0,-10,10,1],to:[0,-10,10,1]},arrowStrikethrough:!0,color:{color:["color","#848484"],highlight:["color","#848484"],hover:["color","#848484"],inherit:["from","to","both",!0,!1],opacity:[1,0,1,.05]},dashes:!1,font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[2,0,50,1],strokeColor:["color","#ffffff"],align:["horizontal","top","middle","bottom"]},hidden:!1,hoverWidth:[1.5,0,5,.1],labelHighlightBold:!0,physics:!0,scaling:{min:[1,0,100,1],max:[15,0,100,1],label:{enabled:!0,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},selectionWidth:[1.5,0,5,.1],selfReferenceSize:[20,0,200,1],selfReference:{size:[20,0,200,1],angle:[Math.PI/2,-6*Math.PI,6*Math.PI,Math.PI/8],renderBehindTheNode:!0},shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},smooth:{enabled:!0,type:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW","cubicBezier"],forceDirection:["horizontal","vertical","none"],roundness:[.5,0,1,.05]},width:[1,0,30,1]},layout:{hierarchical:{enabled:!1,levelSeparation:[150,20,500,5],nodeSpacing:[100,20,500,5],treeSpacing:[200,20,500,5],blockShifting:!0,edgeMinimization:!0,parentCentralization:!0,direction:["UD","DU","LR","RL"],sortMethod:["hubsize","directed"],shakeTowards:["leaves","roots"]}},interaction:{dragNodes:!0,dragView:!0,hideEdgesOnDrag:!1,hideEdgesOnZoom:!1,hideNodesOnDrag:!1,hover:!1,keyboard:{enabled:!1,speed:{x:[10,0,40,1],y:[10,0,40,1],zoom:[.02,0,.1,.005]},bindToWindow:!0,autoFocus:!0},multiselect:!1,navigationButtons:!1,selectable:!0,selectConnectedEdges:!0,hoverConnectedEdges:!0,tooltipDelay:[300,0,1e3,25],zoomView:!0,zoomSpeed:[1,.1,2,.1]},manipulation:{enabled:!1,initiallyActive:!1},physics:{enabled:!0,barnesHut:{theta:[.5,.1,1,.05],gravitationalConstant:[-2e3,-3e4,0,50],centralGravity:[.3,0,10,.05],springLength:[95,0,500,5],springConstant:[.04,0,1.2,.005],damping:[.09,0,1,.01],avoidOverlap:[0,0,1,.01]},forceAtlas2Based:{theta:[.5,.1,1,.05],gravitationalConstant:[-50,-500,0,1],centralGravity:[.01,0,1,.005],springLength:[95,0,500,5],springConstant:[.08,0,1.2,.005],damping:[.4,0,1,.01],avoidOverlap:[0,0,1,.01]},repulsion:{centralGravity:[.2,0,10,.05],springLength:[200,0,500,5],springConstant:[.05,0,1.2,.005],nodeDistance:[100,0,500,5],damping:[.09,0,1,.01]},hierarchicalRepulsion:{centralGravity:[.2,0,10,.05],springLength:[100,0,500,5],springConstant:[.01,0,1.2,.005],nodeDistance:[120,0,500,5],damping:[.09,0,1,.01],avoidOverlap:[0,0,1,.01]},maxVelocity:[50,0,150,1],minVelocity:[.1,.01,.5,.01],solver:["barnesHut","forceAtlas2Based","repulsion","hierarchicalRepulsion"],timestep:[.5,.01,1,.01],wind:{x:[0,-10,10,.1],y:[0,-10,10,.1]}}},C_e=(n,e,t)=>{var r;return!!(An(n).call(n,"physics")&&An(r=Rte.physics.solver).call(r,e)&&t.physics.solver!==e&&e!=="wind")};class l_e{constructor(){}getDistances(e,t,r){const i={},o=e.edges;for(let a=0;a<t.length;a++){const g=t[a],A={};i[g]=A;for(let I=0;I<t.length;I++)A[t[I]]=a==I?0:1e9}for(let a=0;a<r.length;a++){const g=o[r[a]];g.connected===!0&&i[g.fromId]!==void 0&&i[g.toId]!==void 0&&(i[g.fromId][g.toId]=1,i[g.toId][g.fromId]=1)}const s=t.length;for(let a=0;a<s;a++){const g=t[a],A=i[g];for(let I=0;I<s-1;I++){const C=t[I],l=i[C];for(let d=I+1;d<s;d++){const u=t[d],h=i[u],v=Math.min(l[u],l[g]+A[u]);l[u]=v,h[C]=v}}}return i}}class d_e{constructor(e,t,r){this.body=e,this.springLength=t,this.springConstant=r,this.distanceSolver=new l_e}setOptions(e){e&&(e.springLength&&(this.springLength=e.springLength),e.springConstant&&(this.springConstant=e.springConstant))}solve(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;const i=this.distanceSolver.getDistances(this.body,e,t);this._createL_matrix(i),this._createK_matrix(i),this._createE_matrix();const o=.01,s=1;let a=0;const g=Math.max(1e3,Math.min(10*this.body.nodeIndices.length,6e3)),A=5;let I=1e9,C=0,l=0,d=0,u=0,h=0;for(;I>o&&a<g;)for(a+=1,[C,I,l,d]=this._getHighestEnergyNode(r),u=I,h=0;u>s&&h<A;)h+=1,this._moveNode(C,l,d),[u,l,d]=this._getEnergy(C)}_getHighestEnergyNode(e){const t=this.body.nodeIndices,r=this.body.nodes;let i=0,o=t[0],s=0,a=0;for(let g=0;g<t.length;g++){const A=t[g];if(r[A].predefinedPosition!==!0||r[A].isCluster===!0&&e===!0||r[A].options.fixed.x!==!0||r[A].options.fixed.y!==!0){const[I,C,l]=this._getEnergy(A);i<I&&(i=I,o=A,s=C,a=l)}}return[o,i,s,a]}_getEnergy(e){const[t,r]=this.E_sums[e];return[Math.sqrt(t**2+r**2),t,r]}_moveNode(e,t,r){const i=this.body.nodeIndices,o=this.body.nodes;let s=0,a=0,g=0;const A=o[e].x,I=o[e].y,C=this.K_matrix[e],l=this.L_matrix[e];for(let p=0;p<i.length;p++){const y=i[p];if(y!==e){const E=o[y].x,S=o[y].y,m=C[y],w=l[y],_=1/((A-E)**2+(I-S)**2)**1.5;s+=m*(1-w*(I-S)**2*_),a+=m*(w*(A-E)*(I-S)*_),g+=m*(1-w*(A-E)**2*_)}}const d=s,u=a,h=t,v=g,f=r,c=(h/d+f/u)/(u/d-v/u),b=-(u*c+h)/d;o[e].x+=b,o[e].y+=c,this._updateE_matrix(e)}_createL_matrix(e){const t=this.body.nodeIndices,r=this.springLength;this.L_matrix=[];for(let i=0;i<t.length;i++){this.L_matrix[t[i]]={};for(let o=0;o<t.length;o++)this.L_matrix[t[i]][t[o]]=r*e[t[i]][t[o]]}}_createK_matrix(e){const t=this.body.nodeIndices,r=this.springConstant;this.K_matrix=[];for(let i=0;i<t.length;i++){this.K_matrix[t[i]]={};for(let o=0;o<t.length;o++)this.K_matrix[t[i]][t[o]]=r*e[t[i]][t[o]]**-2}}_createE_matrix(){const e=this.body.nodeIndices,t=this.body.nodes;this.E_matrix={},this.E_sums={};for(let r=0;r<e.length;r++)this.E_matrix[e[r]]=[];for(let r=0;r<e.length;r++){const i=e[r],o=t[i].x,s=t[i].y;let a=0,g=0;for(let A=r;A<e.length;A++){const I=e[A];if(I!==i){const C=t[I].x,l=t[I].y,d=1/Math.sqrt((o-C)**2+(s-l)**2);this.E_matrix[i][A]=[this.K_matrix[i][I]*(o-C-this.L_matrix[i][I]*(o-C)*d),this.K_matrix[i][I]*(s-l-this.L_matrix[i][I]*(s-l)*d)],this.E_matrix[I][r]=this.E_matrix[i][A],a+=this.E_matrix[i][A][0],g+=this.E_matrix[i][A][1]}}this.E_sums[i]=[a,g]}}_updateE_matrix(e){const t=this.body.nodeIndices,r=this.body.nodes,i=this.E_matrix[e],o=this.K_matrix[e],s=this.L_matrix[e],a=r[e].x,g=r[e].y;let A=0,I=0;for(let C=0;C<t.length;C++){const l=t[C];if(l!==e){const d=i[C],u=d[0],h=d[1],v=r[l].x,f=r[l].y,c=1/Math.sqrt((a-v)**2+(g-f)**2),b=o[l]*(a-v-s[l]*(a-v)*c),p=o[l]*(g-f-s[l]*(g-f)*c);i[C]=[b,p],A+=b,I+=p;const y=this.E_sums[l];y[0]+=b-u,y[1]+=p-h}}this.E_sums[e]=[A,I]}}function Y(n,e,t){var r,i,o,s;if(!(this instanceof Y))throw new SyntaxError("Constructor must be called with the new operator");this.options={},this.defaultOptions={locale:"en",locales:F1e,clickToUse:!1},At(this.options,this.defaultOptions),this.body={container:n,nodes:{},nodeIndices:[],edges:{},edgeIndices:[],emitter:{on:j(r=this.on).call(r,this),off:j(i=this.off).call(i,this),emit:j(o=this.emit).call(o,this),once:j(s=this.once).call(s,this)},eventListeners:{onTap:function(){},onTouch:function(){},onDoubleTap:function(){},onHold:function(){},onDragStart:function(){},onDrag:function(){},onDragEnd:function(){},onMouseWheel:function(){},onPinch:function(){},onMouseMove:function(){},onRelease:function(){},onContext:function(){}},data:{nodes:null,edges:null},functions:{createNode:function(){},createEdge:function(){},getPointer:function(){}},modules:{},view:{scale:1,translation:{x:0,y:0}},selectionBox:{show:!1,position:{start:{x:0,y:0},end:{x:0,y:0}}}},this.bindEventListeners(),this.images=new z1e(()=>this.body.emitter.emit("_requestRedraw")),this.groups=new t0e,this.canvas=new KEe(this.body),this.selectionHandler=new PSe(this.body,this.canvas),this.interactionHandler=new JEe(this.body,this.canvas,this.selectionHandler),this.view=new XEe(this.body,this.canvas),this.renderer=new WEe(this.body,this.canvas),this.physics=new qEe(this.body),this.layoutEngine=new a_e(this.body),this.clustering=new GEe(this.body),this.manipulation=new g_e(this.body,this.canvas,this.selectionHandler,this.interactionHandler),this.nodesHandler=new IEe(this.body,this.images,this.groups,this.layoutEngine),this.edgesHandler=new PEe(this.body,this.images,this.groups),this.body.modules.kamadaKawai=new d_e(this.body,150,.05),this.body.modules.clustering=this.clustering,this.canvas._create(),this.setOptions(t),this.setData(e)}oee(Y.prototype);Y.prototype.setOptions=function(n){if(n===null&&(n=void 0),n!==void 0){if(u1e.validate(n,I_e)===!0&&console.error("%cErrors have been found in the supplied options object.",ete),da(["locale","locales","clickToUse"],this.options,n),n.locale!==void 0&&(n.locale=k1e(n.locales||this.options.locales,n.locale)),n=this.layoutEngine.setOptions(n.layout,n),this.canvas.setOptions(n),this.groups.setOptions(n.groups),this.nodesHandler.setOptions(n.nodes),this.edgesHandler.setOptions(n.edges),this.physics.setOptions(n.physics),this.manipulation.setOptions(n.manipulation,n,this.options),this.interactionHandler.setOptions(n.interaction),this.renderer.setOptions(n.interaction),this.selectionHandler.setOptions(n.interaction),n.groups!==void 0&&this.body.emitter.emit("refreshNodes"),"configure"in n&&(this.configurator||(this.configurator=new l1e(this,this.body.container,Rte,this.canvas.pixelRatio,C_e)),this.configurator.setOptions(n.configure)),this.configurator&&this.configurator.options.enabled===!0){const r={nodes:{},edges:{},layout:{},interaction:{},manipulation:{},physics:{},global:{}};qe(r.nodes,this.nodesHandler.options),qe(r.edges,this.edgesHandler.options),qe(r.layout,this.layoutEngine.options),qe(r.interaction,this.selectionHandler.options),qe(r.interaction,this.renderer.options),qe(r.interaction,this.interactionHandler.options),qe(r.manipulation,this.manipulation.options),qe(r.physics,this.physics.options),qe(r.global,this.canvas.options),qe(r.global,this.options),this.configurator.setModuleOptions(r)}n.clickToUse!==void 0?n.clickToUse===!0?this.activator===void 0&&(this.activator=new C1e(this.canvas.frame),this.activator.on("change",()=>{this.body.emitter.emit("activate")})):(this.activator!==void 0&&(this.activator.destroy(),delete this.activator),this.body.emitter.emit("activate")):this.body.emitter.emit("activate"),this.canvas.setSize(),this.body.emitter.emit("startSimulation")}};Y.prototype._updateVisibleIndices=function(){const n=this.body.nodes,e=this.body.edges;this.body.nodeIndices=[],this.body.edgeIndices=[];for(const t in n)Object.prototype.hasOwnProperty.call(n,t)&&!this.clustering._isClusteredNode(t)&&n[t].options.hidden===!1&&this.body.nodeIndices.push(n[t].id);for(const t in e)if(Object.prototype.hasOwnProperty.call(e,t)){const r=e[t],i=n[r.fromId],o=n[r.toId],s=i!==void 0&&o!==void 0;!this.clustering._isClusteredEdge(t)&&r.options.hidden===!1&&s&&i.options.hidden===!1&&o.options.hidden===!1&&this.body.edgeIndices.push(r.id)}};Y.prototype.bindEventListeners=function(){this.body.emitter.on("_dataChanged",()=>{this.edgesHandler._updateState(),this.body.emitter.emit("_dataUpdated")}),this.body.emitter.on("_dataUpdated",()=>{this.clustering._updateState(),this._updateVisibleIndices(),this._updateValueRange(this.body.nodes),this._updateValueRange(this.body.edges),this.body.emitter.emit("startSimulation"),this.body.emitter.emit("_requestRedraw")})};Y.prototype.setData=function(n){if(this.body.emitter.emit("resetPhysics"),this.body.emitter.emit("_resetData"),this.selectionHandler.unselectAll(),n&&n.dot&&(n.nodes||n.edges))throw new SyntaxError('Data must contain either parameter "dot" or parameter pair "nodes" and "edges", but not both.');if(this.setOptions(n&&n.options),n&&n.dot){console.warn("The dot property has been deprecated. Please use the static convertDot method to convert DOT into vis.network format and use the normal data format with nodes and edges. This converter is used like this: var data = vis.network.convertDot(dotString);");const e=E1e(n.dot);this.setData(e);return}else if(n&&n.gephi){console.warn("The gephi property has been deprecated. Please use the static convertGephi method to convert gephi into vis.network format and use the normal data format with nodes and edges. This converter is used like this: var data = vis.network.convertGephi(gephiJson);");const e=S1e(n.gephi);this.setData(e);return}else this.nodesHandler.setData(n&&n.nodes,!0),this.edgesHandler.setData(n&&n.edges,!0);this.body.emitter.emit("_dataChanged"),this.body.emitter.emit("_dataLoaded"),this.body.emitter.emit("initPhysics")};Y.prototype.destroy=function(){this.body.emitter.emit("destroy"),this.body.emitter.off(),this.off(),delete this.groups,delete this.canvas,delete this.selectionHandler,delete this.interactionHandler,delete this.view,delete this.renderer,delete this.physics,delete this.layoutEngine,delete this.clustering,delete this.manipulation,delete this.nodesHandler,delete this.edgesHandler,delete this.configurator,delete this.images;for(const n in this.body.nodes)Object.prototype.hasOwnProperty.call(this.body.nodes,n)&&delete this.body.nodes[n];for(const n in this.body.edges)Object.prototype.hasOwnProperty.call(this.body.edges,n)&&delete this.body.edges[n];Xi(this.body.container)};Y.prototype._updateValueRange=function(n){let e,t,r,i=0;for(e in n)if(Object.prototype.hasOwnProperty.call(n,e)){const o=n[e].getValue();o!==void 0&&(t=t===void 0?o:Math.min(o,t),r=r===void 0?o:Math.max(o,r),i+=o)}if(t!==void 0&&r!==void 0)for(e in n)Object.prototype.hasOwnProperty.call(n,e)&&n[e].setValueRange(t,r,i)};Y.prototype.isActive=function(){return!this.activator||this.activator.active};Y.prototype.setSize=function(){return this.canvas.setSize.apply(this.canvas,arguments)};Y.prototype.canvasToDOM=function(){return this.canvas.canvasToDOM.apply(this.canvas,arguments)};Y.prototype.DOMtoCanvas=function(){return this.canvas.DOMtoCanvas.apply(this.canvas,arguments)};Y.prototype.findNode=function(){return this.clustering.findNode.apply(this.clustering,arguments)};Y.prototype.isCluster=function(){return this.clustering.isCluster.apply(this.clustering,arguments)};Y.prototype.openCluster=function(){return this.clustering.openCluster.apply(this.clustering,arguments)};Y.prototype.cluster=function(){return this.clustering.cluster.apply(this.clustering,arguments)};Y.prototype.getNodesInCluster=function(){return this.clustering.getNodesInCluster.apply(this.clustering,arguments)};Y.prototype.clusterByConnection=function(){return this.clustering.clusterByConnection.apply(this.clustering,arguments)};Y.prototype.clusterByHubsize=function(){return this.clustering.clusterByHubsize.apply(this.clustering,arguments)};Y.prototype.updateClusteredNode=function(){return this.clustering.updateClusteredNode.apply(this.clustering,arguments)};Y.prototype.getClusteredEdges=function(){return this.clustering.getClusteredEdges.apply(this.clustering,arguments)};Y.prototype.getBaseEdge=function(){return this.clustering.getBaseEdge.apply(this.clustering,arguments)};Y.prototype.getBaseEdges=function(){return this.clustering.getBaseEdges.apply(this.clustering,arguments)};Y.prototype.updateEdge=function(){return this.clustering.updateEdge.apply(this.clustering,arguments)};Y.prototype.clusterOutliers=function(){return this.clustering.clusterOutliers.apply(this.clustering,arguments)};Y.prototype.getSeed=function(){return this.layoutEngine.getSeed.apply(this.layoutEngine,arguments)};Y.prototype.enableEditMode=function(){return this.manipulation.enableEditMode.apply(this.manipulation,arguments)};Y.prototype.disableEditMode=function(){return this.manipulation.disableEditMode.apply(this.manipulation,arguments)};Y.prototype.addNodeMode=function(){return this.manipulation.addNodeMode.apply(this.manipulation,arguments)};Y.prototype.editNode=function(){return this.manipulation.editNode.apply(this.manipulation,arguments)};Y.prototype.editNodeMode=function(){return console.warn("Deprecated: Please use editNode instead of editNodeMode."),this.manipulation.editNode.apply(this.manipulation,arguments)};Y.prototype.addEdgeMode=function(){return this.manipulation.addEdgeMode.apply(this.manipulation,arguments)};Y.prototype.editEdgeMode=function(){return this.manipulation.editEdgeMode.apply(this.manipulation,arguments)};Y.prototype.deleteSelected=function(){return this.manipulation.deleteSelected.apply(this.manipulation,arguments)};Y.prototype.getPositions=function(){return this.nodesHandler.getPositions.apply(this.nodesHandler,arguments)};Y.prototype.getPosition=function(){return this.nodesHandler.getPosition.apply(this.nodesHandler,arguments)};Y.prototype.storePositions=function(){return this.nodesHandler.storePositions.apply(this.nodesHandler,arguments)};Y.prototype.moveNode=function(){return this.nodesHandler.moveNode.apply(this.nodesHandler,arguments)};Y.prototype.getBoundingBox=function(){return this.nodesHandler.getBoundingBox.apply(this.nodesHandler,arguments)};Y.prototype.getConnectedNodes=function(n){return this.body.nodes[n]!==void 0?this.nodesHandler.getConnectedNodes.apply(this.nodesHandler,arguments):this.edgesHandler.getConnectedNodes.apply(this.edgesHandler,arguments)};Y.prototype.getConnectedEdges=function(){return this.nodesHandler.getConnectedEdges.apply(this.nodesHandler,arguments)};Y.prototype.startSimulation=function(){return this.physics.startSimulation.apply(this.physics,arguments)};Y.prototype.stopSimulation=function(){return this.physics.stopSimulation.apply(this.physics,arguments)};Y.prototype.stabilize=function(){return this.physics.stabilize.apply(this.physics,arguments)};Y.prototype.getSelection=function(){return this.selectionHandler.getSelection.apply(this.selectionHandler,arguments)};Y.prototype.setSelection=function(){return this.selectionHandler.setSelection.apply(this.selectionHandler,arguments)};Y.prototype.getSelectedNodes=function(){return this.selectionHandler.getSelectedNodeIds.apply(this.selectionHandler,arguments)};Y.prototype.getSelectedEdges=function(){return this.selectionHandler.getSelectedEdgeIds.apply(this.selectionHandler,arguments)};Y.prototype.getNodeAt=function(){const n=this.selectionHandler.getNodeAt.apply(this.selectionHandler,arguments);return n!==void 0&&n.id!==void 0?n.id:n};Y.prototype.getEdgeAt=function(){const n=this.selectionHandler.getEdgeAt.apply(this.selectionHandler,arguments);return n!==void 0&&n.id!==void 0?n.id:n};Y.prototype.selectNodes=function(){return this.selectionHandler.selectNodes.apply(this.selectionHandler,arguments)};Y.prototype.selectEdges=function(){return this.selectionHandler.selectEdges.apply(this.selectionHandler,arguments)};Y.prototype.unselectAll=function(){this.selectionHandler.unselectAll.apply(this.selectionHandler,arguments),this.selectionHandler.commitWithoutEmitting.apply(this.selectionHandler),this.redraw()};Y.prototype.redraw=function(){return this.renderer.redraw.apply(this.renderer,arguments)};Y.prototype.getScale=function(){return this.view.getScale.apply(this.view,arguments)};Y.prototype.getViewPosition=function(){return this.view.getViewPosition.apply(this.view,arguments)};Y.prototype.fit=function(){return this.view.fit.apply(this.view,arguments)};Y.prototype.moveTo=function(){return this.view.moveTo.apply(this.view,arguments)};Y.prototype.focus=function(){return this.view.focus.apply(this.view,arguments)};Y.prototype.releaseNode=function(){return this.view.releaseNode.apply(this.view,arguments)};Y.prototype.getOptionsFromConfigurator=function(){let n={};return this.configurator&&(n=this.configurator.getOptions.apply(this.configurator)),n};const u_e={flex:"~ col",relative:"","h-full":"","of-hidden":"","panel-grids":"",class:"graph-body"},h_e={class:"relative flex-1"},c_e={key:0,class:"absolute inset-0 flex select-none items-center justify-center bg-base text-base"},JOe=oI({__name:"graph",setup(n){async function e(){const g=await IA.value.getRoot().then(A=>A);IA.value.getGraphModules().then(A=>{nle(A,g)})}function t(){e()}Wte(()=>{e(),IA.functions.on("graphModuleUpdated",t)});const r=Bn(),i=xX(),o=Bn(!1);function s(){const g=r.value,A=i.value=new Y(g,{nodes:hs,edges:cs},nB.value);$A(nB,I=>{A.setOptions(I)},{immediate:!0}),A.on("selectNode",I=>{ale(I.nodes[0]),yO(!0)}),A.on("startStabilizing",()=>{oO.value.reduceMotion&&(o.value=!0)}),A.on("stabilized",()=>{o.value=!1}),A.on("deselectNode",()=>{yO(!1)}),$A(()=>ps.value,I=>{I&&A.moveTo({position:{x:0,y:0}})})}Vte(()=>{s()}),Zte(()=>{tle(),i.value?.destroy(),IA.functions.off("graphModuleUpdated",t)});const a=Bn();return(g,A)=>{const I=ble,C=mle,l=vle;return Xt(),ar("div",u_e,[es(I,{ref_key:"navbarRef",ref:a},null,512),et("div",h_e,[et("div",{ref_key:"container",ref:r,class:"absolute inset-0"},null,512),Pe(o)?(Xt(),ar("div",c_e,[...A[0]||(A[0]=[et("div",{class:"flex items-center space-x-2"},[et("span",null,"Stabilizing...")],-1)])])):BO("",!0),es(C),es(l,{top:Pe(a)},null,8,["top"])])])}}});export{JOe as default};
|