@surething/cockpit 1.0.175
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next-prod/BUILD_ID +1 -0
- package/.next-prod/app-path-routes-manifest.json +99 -0
- package/.next-prod/build-manifest.json +20 -0
- package/.next-prod/diagnostics/build-diagnostics.json +6 -0
- package/.next-prod/diagnostics/framework.json +1 -0
- package/.next-prod/export-marker.json +6 -0
- package/.next-prod/images-manifest.json +67 -0
- package/.next-prod/next-minimal-server.js.nft.json +1 -0
- package/.next-prod/next-server.js.nft.json +1 -0
- package/.next-prod/package.json +1 -0
- package/.next-prod/prerender-manifest.json +119 -0
- package/.next-prod/react-loadable-manifest.json +4241 -0
- package/.next-prod/required-server-files.js +326 -0
- package/.next-prod/required-server-files.json +326 -0
- package/.next-prod/routes-manifest.json +641 -0
- package/.next-prod/server/app/_global-error/page.js +3 -0
- package/.next-prod/server/app/_global-error/page.js.nft.json +1 -0
- package/.next-prod/server/app/_global-error/page_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/_global-error.html +2 -0
- package/.next-prod/server/app/_global-error.meta +16 -0
- package/.next-prod/server/app/_global-error.rsc +12 -0
- package/.next-prod/server/app/_global-error.segments/_full.segment.rsc +12 -0
- package/.next-prod/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +5 -0
- package/.next-prod/server/app/_global-error.segments/_global-error.segment.rsc +4 -0
- package/.next-prod/server/app/_global-error.segments/_head.segment.rsc +5 -0
- package/.next-prod/server/app/_global-error.segments/_index.segment.rsc +4 -0
- package/.next-prod/server/app/_global-error.segments/_tree.segment.rsc +1 -0
- package/.next-prod/server/app/_not-found/page.js +2 -0
- package/.next-prod/server/app/_not-found/page.js.nft.json +1 -0
- package/.next-prod/server/app/_not-found/page_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/_not-found.html +18 -0
- package/.next-prod/server/app/_not-found.meta +16 -0
- package/.next-prod/server/app/_not-found.rsc +18 -0
- package/.next-prod/server/app/_not-found.segments/_full.segment.rsc +18 -0
- package/.next-prod/server/app/_not-found.segments/_head.segment.rsc +6 -0
- package/.next-prod/server/app/_not-found.segments/_index.segment.rsc +6 -0
- package/.next-prod/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +5 -0
- package/.next-prod/server/app/_not-found.segments/_not-found.segment.rsc +4 -0
- package/.next-prod/server/app/_not-found.segments/_tree.segment.rsc +5 -0
- package/.next-prod/server/app/api/bash/route.js +1 -0
- package/.next-prod/server/app/api/bash/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/bash/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/chat/route.js +5 -0
- package/.next-prod/server/app/api/chat/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/chat/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/claude-stats/route.js +1 -0
- package/.next-prod/server/app/api/claude-stats/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/claude-stats/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/commands/route.js +1 -0
- package/.next-prod/server/app/api/commands/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/commands/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/comments/route.js +1 -0
- package/.next-prod/server/app/api/comments/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/comments/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/db/columns/route.js +15 -0
- package/.next-prod/server/app/api/db/columns/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/db/columns/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/db/connect/route.js +1 -0
- package/.next-prod/server/app/api/db/connect/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/db/connect/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/db/disconnect/route.js +1 -0
- package/.next-prod/server/app/api/db/disconnect/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/db/disconnect/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/db/export/route.js +1 -0
- package/.next-prod/server/app/api/db/export/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/db/export/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/db/query/route.js +1 -0
- package/.next-prod/server/app/api/db/query/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/db/query/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/db/schemas/route.js +8 -0
- package/.next-prod/server/app/api/db/schemas/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/db/schemas/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/extension/version/route.js +1 -0
- package/.next-prod/server/app/api/extension/version/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/extension/version/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/file/route.js +1 -0
- package/.next-prod/server/app/api/file/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/file/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/files/blame/route.js +1 -0
- package/.next-prod/server/app/api/files/blame/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/files/blame/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/files/clipboard/route.js +1 -0
- package/.next-prod/server/app/api/files/clipboard/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/files/clipboard/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/files/copy/route.js +1 -0
- package/.next-prod/server/app/api/files/copy/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/files/copy/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/files/delete/route.js +1 -0
- package/.next-prod/server/app/api/files/delete/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/files/delete/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/files/expanded/route.js +1 -0
- package/.next-prod/server/app/api/files/expanded/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/files/expanded/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/files/index/route.js +1 -0
- package/.next-prod/server/app/api/files/index/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/files/index/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/files/init/route.js +1 -0
- package/.next-prod/server/app/api/files/init/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/files/init/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/files/paste/route.js +1 -0
- package/.next-prod/server/app/api/files/paste/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/files/paste/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/files/read/route.js +1 -0
- package/.next-prod/server/app/api/files/read/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/files/read/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/files/readdir/route.js +1 -0
- package/.next-prod/server/app/api/files/readdir/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/files/readdir/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/files/recent/route.js +1 -0
- package/.next-prod/server/app/api/files/recent/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/files/recent/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/files/save/route.js +1 -0
- package/.next-prod/server/app/api/files/save/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/files/save/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/files/search/route.js +1 -0
- package/.next-prod/server/app/api/files/search/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/files/search/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/git/branch-diff/route.js +1 -0
- package/.next-prod/server/app/api/git/branch-diff/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/git/branch-diff/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/git/branches/route.js +1 -0
- package/.next-prod/server/app/api/git/branches/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/git/branches/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/git/commit-diff/route.js +1 -0
- package/.next-prod/server/app/api/git/commit-diff/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/git/commit-diff/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/git/commits/route.js +1 -0
- package/.next-prod/server/app/api/git/commits/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/git/commits/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/git/diff/route.js +1 -0
- package/.next-prod/server/app/api/git/diff/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/git/diff/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/git/discard/route.js +1 -0
- package/.next-prod/server/app/api/git/discard/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/git/discard/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/git/stage/route.js +1 -0
- package/.next-prod/server/app/api/git/stage/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/git/stage/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/git/status/route.js +1 -0
- package/.next-prod/server/app/api/git/status/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/git/status/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/git/unstage/route.js +1 -0
- package/.next-prod/server/app/api/git/unstage/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/git/unstage/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/git/worktree/route.js +1 -0
- package/.next-prod/server/app/api/git/worktree/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/git/worktree/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/global-state/route.js +1 -0
- package/.next-prod/server/app/api/global-state/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/global-state/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/jupyter/load/route.js +1 -0
- package/.next-prod/server/app/api/jupyter/load/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/jupyter/load/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/jupyter/save/route.js +1 -0
- package/.next-prod/server/app/api/jupyter/save/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/jupyter/save/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/jupyter/shutdown/route.js +1 -0
- package/.next-prod/server/app/api/jupyter/shutdown/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/jupyter/shutdown/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/lsp/definition/route.js +1 -0
- package/.next-prod/server/app/api/lsp/definition/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/lsp/definition/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/lsp/hover/route.js +1 -0
- package/.next-prod/server/app/api/lsp/hover/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/lsp/hover/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/lsp/references/route.js +1 -0
- package/.next-prod/server/app/api/lsp/references/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/lsp/references/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/lsp/status/route.js +1 -0
- package/.next-prod/server/app/api/lsp/status/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/lsp/status/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/lsp/warmup/route.js +1 -0
- package/.next-prod/server/app/api/lsp/warmup/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/lsp/warmup/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/mysql/columns/route.js +9 -0
- package/.next-prod/server/app/api/mysql/columns/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/mysql/columns/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/mysql/connect/route.js +1 -0
- package/.next-prod/server/app/api/mysql/connect/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/mysql/connect/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/mysql/disconnect/route.js +1 -0
- package/.next-prod/server/app/api/mysql/disconnect/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/mysql/disconnect/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/mysql/export/route.js +1 -0
- package/.next-prod/server/app/api/mysql/export/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/mysql/export/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/mysql/query/route.js +1 -0
- package/.next-prod/server/app/api/mysql/query/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/mysql/query/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/mysql/schemas/route.js +6 -0
- package/.next-prod/server/app/api/mysql/schemas/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/mysql/schemas/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/note/route.js +1 -0
- package/.next-prod/server/app/api/note/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/note/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/open-cursor/route.js +1 -0
- package/.next-prod/server/app/api/open-cursor/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/open-cursor/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/open-vscode/route.js +1 -0
- package/.next-prod/server/app/api/open-vscode/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/open-vscode/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/pick-folder/route.js +1 -0
- package/.next-prod/server/app/api/pick-folder/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/pick-folder/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/pinned-sessions/route.js +1 -0
- package/.next-prod/server/app/api/pinned-sessions/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/pinned-sessions/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/project-settings/route.js +1 -0
- package/.next-prod/server/app/api/project-settings/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/project-settings/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/project-state/route.js +1 -0
- package/.next-prod/server/app/api/project-state/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/project-state/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/projects/route.js +1 -0
- package/.next-prod/server/app/api/projects/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/projects/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/redis/command/route.js +1 -0
- package/.next-prod/server/app/api/redis/command/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/redis/command/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/redis/connect/route.js +1 -0
- package/.next-prod/server/app/api/redis/connect/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/redis/connect/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/redis/delete/route.js +1 -0
- package/.next-prod/server/app/api/redis/delete/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/redis/delete/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/redis/disconnect/route.js +1 -0
- package/.next-prod/server/app/api/redis/disconnect/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/redis/disconnect/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/redis/get/route.js +1 -0
- package/.next-prod/server/app/api/redis/get/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/redis/get/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/redis/keys/route.js +1 -0
- package/.next-prod/server/app/api/redis/keys/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/redis/keys/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/redis/set/route.js +1 -0
- package/.next-prod/server/app/api/redis/set/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/redis/set/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/review/[id]/comments/route.js +1 -0
- package/.next-prod/server/app/api/review/[id]/comments/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/review/[id]/comments/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/review/[id]/replies/route.js +1 -0
- package/.next-prod/server/app/api/review/[id]/replies/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/review/[id]/replies/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/review/[id]/route.js +1 -0
- package/.next-prod/server/app/api/review/[id]/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/review/[id]/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/review/identify/route.js +1 -0
- package/.next-prod/server/app/api/review/identify/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/review/identify/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/review/order/route.js +1 -0
- package/.next-prod/server/app/api/review/order/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/review/order/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/review/route.js +1 -0
- package/.next-prod/server/app/api/review/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/review/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/review/share-info/route.js +1 -0
- package/.next-prod/server/app/api/review/share-info/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/review/share-info/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/review/users/route.js +1 -0
- package/.next-prod/server/app/api/review/users/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/review/users/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/scheduled-tasks/route.js +1 -0
- package/.next-prod/server/app/api/scheduled-tasks/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/scheduled-tasks/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/services/config/route.js +1 -0
- package/.next-prod/server/app/api/services/config/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/services/config/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/services/scripts/route.js +1 -0
- package/.next-prod/server/app/api/services/scripts/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/services/scripts/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/session/[sessionId]/fork/route.js +1 -0
- package/.next-prod/server/app/api/session/[sessionId]/fork/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/session/[sessionId]/fork/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/session/[sessionId]/history/route.js +1 -0
- package/.next-prod/server/app/api/session/[sessionId]/history/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/session/[sessionId]/history/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/session-by-path/route.js +1 -0
- package/.next-prod/server/app/api/session-by-path/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/session-by-path/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/sessions/projects/[encodedPath]/route.js +1 -0
- package/.next-prod/server/app/api/sessions/projects/[encodedPath]/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/sessions/projects/[encodedPath]/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/sessions/projects/route.js +1 -0
- package/.next-prod/server/app/api/sessions/projects/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/sessions/projects/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/sessions/route.js +1 -0
- package/.next-prod/server/app/api/sessions/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/sessions/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/settings/route.js +1 -0
- package/.next-prod/server/app/api/settings/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/settings/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/terminal/aliases/route.js +1 -0
- package/.next-prod/server/app/api/terminal/aliases/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/terminal/aliases/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/terminal/autocomplete/route.js +1 -0
- package/.next-prod/server/app/api/terminal/autocomplete/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/terminal/autocomplete/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/terminal/bubble-order/route.js +1 -0
- package/.next-prod/server/app/api/terminal/bubble-order/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/terminal/bubble-order/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/terminal/env/route.js +1 -0
- package/.next-prod/server/app/api/terminal/env/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/terminal/env/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/terminal/history/route.js +1 -0
- package/.next-prod/server/app/api/terminal/history/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/terminal/history/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/version/route.js +1 -0
- package/.next-prod/server/app/api/version/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/version/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/favicon.ico/route.js +1 -0
- package/.next-prod/server/app/favicon.ico/route.js.nft.json +1 -0
- package/.next-prod/server/app/favicon.ico.body +0 -0
- package/.next-prod/server/app/favicon.ico.meta +1 -0
- package/.next-prod/server/app/manifest.webmanifest/route.js +16 -0
- package/.next-prod/server/app/manifest.webmanifest/route.js.nft.json +1 -0
- package/.next-prod/server/app/manifest.webmanifest/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/manifest.webmanifest.body +1 -0
- package/.next-prod/server/app/manifest.webmanifest.meta +1 -0
- package/.next-prod/server/app/page.js +97 -0
- package/.next-prod/server/app/page.js.nft.json +1 -0
- package/.next-prod/server/app/page_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/project/page.js +29 -0
- package/.next-prod/server/app/project/page.js.nft.json +1 -0
- package/.next-prod/server/app/project/page_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/review/[id]/page.js +2 -0
- package/.next-prod/server/app/review/[id]/page.js.nft.json +1 -0
- package/.next-prod/server/app/review/[id]/page_client-reference-manifest.js +1 -0
- package/.next-prod/server/app-paths-manifest.json +99 -0
- package/.next-prod/server/chunks/1639.js +1 -0
- package/.next-prod/server/chunks/1667.js +1 -0
- package/.next-prod/server/chunks/1813.js +1 -0
- package/.next-prod/server/chunks/1912.js +1 -0
- package/.next-prod/server/chunks/2325.js +82 -0
- package/.next-prod/server/chunks/2376.js +36 -0
- package/.next-prod/server/chunks/2816.js +1 -0
- package/.next-prod/server/chunks/2840.js +62 -0
- package/.next-prod/server/chunks/3434.js +1 -0
- package/.next-prod/server/chunks/3441.js +24 -0
- package/.next-prod/server/chunks/3503.js +29 -0
- package/.next-prod/server/chunks/3863.js +1 -0
- package/.next-prod/server/chunks/3932.js +56 -0
- package/.next-prod/server/chunks/4042.js +1 -0
- package/.next-prod/server/chunks/4073.js +1 -0
- package/.next-prod/server/chunks/4097.js +136 -0
- package/.next-prod/server/chunks/4098.js +1 -0
- package/.next-prod/server/chunks/4268.js +4 -0
- package/.next-prod/server/chunks/4272.js +5 -0
- package/.next-prod/server/chunks/4309.js +141 -0
- package/.next-prod/server/chunks/4345.js +1 -0
- package/.next-prod/server/chunks/4367.js +1 -0
- package/.next-prod/server/chunks/4388.js +24 -0
- package/.next-prod/server/chunks/4442.js +1 -0
- package/.next-prod/server/chunks/4490.js +26 -0
- package/.next-prod/server/chunks/4741.js +22 -0
- package/.next-prod/server/chunks/4793.js +1 -0
- package/.next-prod/server/chunks/5152.js +1 -0
- package/.next-prod/server/chunks/5460.js +201 -0
- package/.next-prod/server/chunks/5481.js +1 -0
- package/.next-prod/server/chunks/5536.js +148 -0
- package/.next-prod/server/chunks/5733.js +5 -0
- package/.next-prod/server/chunks/582.js +1 -0
- package/.next-prod/server/chunks/5958.js +1 -0
- package/.next-prod/server/chunks/6062.js +1 -0
- package/.next-prod/server/chunks/6117.js +13 -0
- package/.next-prod/server/chunks/6142.js +287 -0
- package/.next-prod/server/chunks/6346.js +1 -0
- package/.next-prod/server/chunks/6443.js +1 -0
- package/.next-prod/server/chunks/6804.js +43 -0
- package/.next-prod/server/chunks/7265.js +93 -0
- package/.next-prod/server/chunks/7284.js +1 -0
- package/.next-prod/server/chunks/7307.js +1 -0
- package/.next-prod/server/chunks/7483.js +1 -0
- package/.next-prod/server/chunks/7484.js +64 -0
- package/.next-prod/server/chunks/7514.js +31 -0
- package/.next-prod/server/chunks/7800.js +166 -0
- package/.next-prod/server/chunks/8068.js +63 -0
- package/.next-prod/server/chunks/8351.js +23 -0
- package/.next-prod/server/chunks/8491.js +5 -0
- package/.next-prod/server/chunks/8585.js +198 -0
- package/.next-prod/server/chunks/887.js +215 -0
- package/.next-prod/server/chunks/911.js +1 -0
- package/.next-prod/server/chunks/9116.js +65 -0
- package/.next-prod/server/chunks/925.js +68 -0
- package/.next-prod/server/chunks/9298.js +139 -0
- package/.next-prod/server/chunks/9401.js +1 -0
- package/.next-prod/server/chunks/9408.js +1 -0
- package/.next-prod/server/functions-config-manifest.json +24 -0
- package/.next-prod/server/interception-route-rewrite-manifest.js +1 -0
- package/.next-prod/server/middleware-build-manifest.js +1 -0
- package/.next-prod/server/middleware-manifest.json +6 -0
- package/.next-prod/server/middleware-react-loadable-manifest.js +1 -0
- package/.next-prod/server/next-font-manifest.js +1 -0
- package/.next-prod/server/next-font-manifest.json +1 -0
- package/.next-prod/server/pages/404.html +18 -0
- package/.next-prod/server/pages/500.html +2 -0
- package/.next-prod/server/pages-manifest.json +4 -0
- package/.next-prod/server/server-reference-manifest.js +1 -0
- package/.next-prod/server/server-reference-manifest.json +1 -0
- package/.next-prod/server/webpack-runtime.js +1 -0
- package/.next-prod/static/DV3WCL3Yj_UIBxTQ3r93N/_buildManifest.js +1 -0
- package/.next-prod/static/DV3WCL3Yj_UIBxTQ3r93N/_ssgManifest.js +1 -0
- package/.next-prod/static/chunks/10.6cf001c181ce1098.js +1 -0
- package/.next-prod/static/chunks/1078.02294b2934d5bf21.js +1 -0
- package/.next-prod/static/chunks/1142.17e45d200709420d.js +1 -0
- package/.next-prod/static/chunks/1161.06b33878b495da50.js +1 -0
- package/.next-prod/static/chunks/1184.e80a999422621ed9.js +1 -0
- package/.next-prod/static/chunks/1188.1d4ce94ddc297119.js +1 -0
- package/.next-prod/static/chunks/1198.2a5c215f01a8b74d.js +1 -0
- package/.next-prod/static/chunks/1215.88ed89521e915107.js +1 -0
- package/.next-prod/static/chunks/1219.e27b0bd10b029e40.js +1 -0
- package/.next-prod/static/chunks/123.d6fe9c2353baf42b.js +1 -0
- package/.next-prod/static/chunks/1247.64e212daa5bb3925.js +1 -0
- package/.next-prod/static/chunks/1248.36af3903f037c1f5.js +1 -0
- package/.next-prod/static/chunks/1274.ce6906b1fe2e04b8.js +1 -0
- package/.next-prod/static/chunks/1280.1651bb5167170457.js +1 -0
- package/.next-prod/static/chunks/1310.c38c5fbf05820fcd.js +166 -0
- package/.next-prod/static/chunks/1335.716cc5924662708e.js +1 -0
- package/.next-prod/static/chunks/1365.d7391145ca7f8791.js +1 -0
- package/.next-prod/static/chunks/1379.03e1e0f31bdaa2cc.js +1 -0
- package/.next-prod/static/chunks/1409.9f81cd6d2cab4b67.js +1 -0
- package/.next-prod/static/chunks/1413.117c5958c59cc695.js +1 -0
- package/.next-prod/static/chunks/142.e09e154342f02da4.js +4 -0
- package/.next-prod/static/chunks/1453.3c24c777a3deca2d.js +1 -0
- package/.next-prod/static/chunks/1456.a1f849b334fff0da.js +1 -0
- package/.next-prod/static/chunks/1501.549af2c91a889a08.js +1 -0
- package/.next-prod/static/chunks/1534.918a25b2e3daab22.js +1 -0
- package/.next-prod/static/chunks/1556.96abc9ff91b0c383.js +1 -0
- package/.next-prod/static/chunks/1583.03a06dbdde85ac56.js +1 -0
- package/.next-prod/static/chunks/1590.05549e036336164c.js +65 -0
- package/.next-prod/static/chunks/1593-7902218f5b10761f.js +1 -0
- package/.next-prod/static/chunks/1595.ee61519fde230f60.js +1 -0
- package/.next-prod/static/chunks/1656.a9efc78185a5a85f.js +1 -0
- package/.next-prod/static/chunks/1664.6d5b5e3112b66906.js +1 -0
- package/.next-prod/static/chunks/1898.e07b2b1c5e789b06.js +1 -0
- package/.next-prod/static/chunks/1932.b0aea9b52cabe5e8.js +1 -0
- package/.next-prod/static/chunks/194.dace825a3ddbbbff.js +1 -0
- package/.next-prod/static/chunks/1948.bf7e0d9ede202530.js +29 -0
- package/.next-prod/static/chunks/1977.a06c8e8d2198f765.js +1 -0
- package/.next-prod/static/chunks/1987.226da043eabc8911.js +5 -0
- package/.next-prod/static/chunks/1991.d869abe5092c9011.js +1 -0
- package/.next-prod/static/chunks/1cd6e1d3.8121a74b2042bff3.js +1 -0
- package/.next-prod/static/chunks/2013.598558c40e51e107.js +1 -0
- package/.next-prod/static/chunks/2020.46a0112747939389.js +1 -0
- package/.next-prod/static/chunks/2031.3877441c49bff5cd.js +1 -0
- package/.next-prod/static/chunks/2041.00f4fa0ab26c6ba5.js +1 -0
- package/.next-prod/static/chunks/2062.4a0ab3400fea0e34.js +1 -0
- package/.next-prod/static/chunks/2072-37a80cb92f1ee2d4.js +4 -0
- package/.next-prod/static/chunks/2107.c627112b02b9e1c8.js +1 -0
- package/.next-prod/static/chunks/2130.441ae0f68863efeb.js +1 -0
- package/.next-prod/static/chunks/214.f6bba63dfa159e01.js +1 -0
- package/.next-prod/static/chunks/2160.e38d781fd5c4cde0.js +1 -0
- package/.next-prod/static/chunks/2179.1bf5fe315e6e132c.js +1 -0
- package/.next-prod/static/chunks/2215.9d2d6fbe90ffcc80.js +1 -0
- package/.next-prod/static/chunks/2235.b4453110c06e2b09.js +1 -0
- package/.next-prod/static/chunks/2349.ca15d465c4260b4b.js +1 -0
- package/.next-prod/static/chunks/2374.7560cc5c4b8ed6b0.js +1 -0
- package/.next-prod/static/chunks/2403.3dda71b6482dce3b.js +1 -0
- package/.next-prod/static/chunks/2485.3188870375e9fbee.js +1 -0
- package/.next-prod/static/chunks/2489.fcc70bd67329a70e.js +1 -0
- package/.next-prod/static/chunks/2501.4e65b56602faa956.js +1 -0
- package/.next-prod/static/chunks/2503.bb9d3528c3c7ccae.js +1 -0
- package/.next-prod/static/chunks/252.a9e22657cbf67b42.js +1 -0
- package/.next-prod/static/chunks/254.8b4308512ac955b5.js +24 -0
- package/.next-prod/static/chunks/2614.8349e4b407470a30.js +1 -0
- package/.next-prod/static/chunks/2710.fe0656d4ebae4d30.js +1 -0
- package/.next-prod/static/chunks/2728.5fed9ac13dfcd1d1.js +1 -0
- package/.next-prod/static/chunks/2729.826909b4d5229ba6.js +68 -0
- package/.next-prod/static/chunks/2735.5a3e65a580bd5af9.js +1 -0
- package/.next-prod/static/chunks/2747.1d85d388314f2904.js +1 -0
- package/.next-prod/static/chunks/2765.2c6d9772af50feed.js +1 -0
- package/.next-prod/static/chunks/2783.e8bbf2c794ef9750.js +1 -0
- package/.next-prod/static/chunks/2812.dcd8179a6b1d76c9.js +1 -0
- package/.next-prod/static/chunks/2821.fa74c6e87f6e759a.js +1 -0
- package/.next-prod/static/chunks/2839.a832cb0d77a9d298.js +1 -0
- package/.next-prod/static/chunks/2895.0339e755e79ee794.js +1 -0
- package/.next-prod/static/chunks/2921.26016c4c7eb031e8.js +1 -0
- package/.next-prod/static/chunks/2954.7d8daeae6410d4a4.js +1 -0
- package/.next-prod/static/chunks/2964.1a0e15f7327680a2.js +1 -0
- package/.next-prod/static/chunks/2ff9d716.93c18c265de76cfb.js +136 -0
- package/.next-prod/static/chunks/305-fced91c3443b6178.js +1 -0
- package/.next-prod/static/chunks/3072.b6da96c10080c967.js +1 -0
- package/.next-prod/static/chunks/3074.911584369786c26c.js +1 -0
- package/.next-prod/static/chunks/3077.bf82c0c332cc9fec.js +1 -0
- package/.next-prod/static/chunks/3082.159e4ab8f0572597.js +1 -0
- package/.next-prod/static/chunks/3095.8cd478c42cee505a.js +1 -0
- package/.next-prod/static/chunks/3111.1cf85db2faeb20cc.js +1 -0
- package/.next-prod/static/chunks/3126.c89ab7ce8e10978e.js +1 -0
- package/.next-prod/static/chunks/3175.538ce7aec634bddb.js +1 -0
- package/.next-prod/static/chunks/3186.3665756f8aae3eb7.js +1 -0
- package/.next-prod/static/chunks/3194.5a331fb5e3dc34e9.js +1 -0
- package/.next-prod/static/chunks/3229.5e91f7d0b135266b.js +1 -0
- package/.next-prod/static/chunks/327.8ecab0b86d52b597.js +1 -0
- package/.next-prod/static/chunks/3274.858f7f9216c8b074.js +1 -0
- package/.next-prod/static/chunks/3286.196c508356bb0b66.js +1 -0
- package/.next-prod/static/chunks/3288.f210cd6796271d4f.js +1 -0
- package/.next-prod/static/chunks/3290.b5ba2646ad49c9fd.js +1 -0
- package/.next-prod/static/chunks/3304.16305e84f4ff6598.js +1 -0
- package/.next-prod/static/chunks/3313.471138e5504646a9.js +1 -0
- package/.next-prod/static/chunks/3324.85e21e3313d0901c.js +1 -0
- package/.next-prod/static/chunks/3392.460f5a753531f501.js +1 -0
- package/.next-prod/static/chunks/34.ce581867cf95e24b.js +1 -0
- package/.next-prod/static/chunks/3419.78b520dab7e2f96d.js +1 -0
- package/.next-prod/static/chunks/3437.0ad1ecc8c5b8a679.js +1 -0
- package/.next-prod/static/chunks/3476.246c30b47bded3b7.js +1 -0
- package/.next-prod/static/chunks/3483.fc2a0b1185dbaa5d.js +1 -0
- package/.next-prod/static/chunks/3492.ca55498822ad7796.js +1 -0
- package/.next-prod/static/chunks/3530-6d8abfd0e950d439.js +14 -0
- package/.next-prod/static/chunks/36.b4a553bf2106f6d3.js +1 -0
- package/.next-prod/static/chunks/3613.9a37e282a0b018d7.js +1 -0
- package/.next-prod/static/chunks/3682.d8c0079db560c625.js +1 -0
- package/.next-prod/static/chunks/3695-f14fb3e48483755c.js +18 -0
- package/.next-prod/static/chunks/376.9e742ff6919b2b54.js +1 -0
- package/.next-prod/static/chunks/3782.8de9ba0149339c0c.js +1 -0
- package/.next-prod/static/chunks/3787.78ebe68a043f50ce.js +1 -0
- package/.next-prod/static/chunks/3794-337d1ca25ad99a89.js +2 -0
- package/.next-prod/static/chunks/3860.be5b243bf7d6618c.js +1 -0
- package/.next-prod/static/chunks/3873.72a9a21509f713f7.js +1 -0
- package/.next-prod/static/chunks/392.3cad93691f1b7360.js +1 -0
- package/.next-prod/static/chunks/3942.00e2e29e2d62b039.js +1 -0
- package/.next-prod/static/chunks/3979.cea8623f6e9f83ea.js +1 -0
- package/.next-prod/static/chunks/400.59979e0d3ae126e4.js +1 -0
- package/.next-prod/static/chunks/4053.90d71fcbe4ffd852.js +1 -0
- package/.next-prod/static/chunks/4080.08a21dae9e93c547.js +1 -0
- package/.next-prod/static/chunks/4163.c6ebefdd9aa5c358.js +1 -0
- package/.next-prod/static/chunks/4174.9e84de8f8816fe01.js +1 -0
- package/.next-prod/static/chunks/4223.c10556cd92fc8018.js +1 -0
- package/.next-prod/static/chunks/4240-38a224bd376cc8a0.js +1 -0
- package/.next-prod/static/chunks/4242.3a66c58375424a5b.js +1 -0
- package/.next-prod/static/chunks/425.9a3434a28926566a.js +1 -0
- package/.next-prod/static/chunks/4275.8f2e531757c2a813.js +1 -0
- package/.next-prod/static/chunks/4295.6c0f4838b0c9c69d.js +1 -0
- package/.next-prod/static/chunks/4309.a887a10e84c44f9e.js +1 -0
- package/.next-prod/static/chunks/4350.b9d80827e8eee01a.js +1 -0
- package/.next-prod/static/chunks/4357.05060a5a3fea9ff1.js +1 -0
- package/.next-prod/static/chunks/4358.f15dd467571f7594.js +1 -0
- package/.next-prod/static/chunks/4367.2610339aa03a9fb3.js +1 -0
- package/.next-prod/static/chunks/4370.ac13b62c811f7ede.js +1 -0
- package/.next-prod/static/chunks/4402d2ac.d0d1b1777a45e0b2.js +1 -0
- package/.next-prod/static/chunks/4474.053807fa34066566.js +1 -0
- package/.next-prod/static/chunks/4539.559c223da16b0282.js +1 -0
- package/.next-prod/static/chunks/4540.03df20c499bca840.js +1 -0
- package/.next-prod/static/chunks/4553.a16dba8d6d03226c.js +1 -0
- package/.next-prod/static/chunks/4567.d405b50b917bd2c2.js +1 -0
- package/.next-prod/static/chunks/4583.2a5df6eb3a6ea30b.js +1 -0
- package/.next-prod/static/chunks/4593.676ac488744e1af5.js +1 -0
- package/.next-prod/static/chunks/4608.1ff246d6b4c771f8.js +1 -0
- package/.next-prod/static/chunks/4634.0332a56fdb8e26c0.js +1 -0
- package/.next-prod/static/chunks/4650.61aec912b756287b.js +1 -0
- package/.next-prod/static/chunks/4659.b8e05ba7cbf46556.js +1 -0
- package/.next-prod/static/chunks/4678.867dfae26694be02.js +1 -0
- package/.next-prod/static/chunks/4699.8603b2742a761084.js +1 -0
- package/.next-prod/static/chunks/4823.907850963b2bcb70.js +1 -0
- package/.next-prod/static/chunks/4829.402ec60139d36417.js +1 -0
- package/.next-prod/static/chunks/4892.1674cc00200143ba.js +1 -0
- package/.next-prod/static/chunks/4900.b723a916eafdf743.js +1 -0
- package/.next-prod/static/chunks/4903.004f583a12223dac.js +1 -0
- package/.next-prod/static/chunks/4963.0f6678151a159143.js +1 -0
- package/.next-prod/static/chunks/4969.1cb10af9489ea295.js +1 -0
- package/.next-prod/static/chunks/4976.8870319ffbd1c31f.js +1 -0
- package/.next-prod/static/chunks/4bd1b696-e5d7c65570c947b7.js +1 -0
- package/.next-prod/static/chunks/4ca0cff5.07efe2bc8f09d72e.js +1 -0
- package/.next-prod/static/chunks/5005.cf839e066f3d3efe.js +1 -0
- package/.next-prod/static/chunks/5019.2906d96e77b98f68.js +198 -0
- package/.next-prod/static/chunks/5025.b597364f0cf8b85a.js +1 -0
- package/.next-prod/static/chunks/5061.025d30c3123eeaf6.js +1 -0
- package/.next-prod/static/chunks/5136.ac897c2a56ee392f.js +1 -0
- package/.next-prod/static/chunks/5139.83dc2c84aeea716b.js +63 -0
- package/.next-prod/static/chunks/5183.2e5c895a2be76262.js +1 -0
- package/.next-prod/static/chunks/5199.5faac6a2cc104a4c.js +36 -0
- package/.next-prod/static/chunks/5269.25d99df0164521ad.js +23 -0
- package/.next-prod/static/chunks/5318.d48b9096df0171df.js +1 -0
- package/.next-prod/static/chunks/5320.191be461ff110fb3.js +1 -0
- package/.next-prod/static/chunks/5325.aad15a16a5d57787.js +1 -0
- package/.next-prod/static/chunks/5331.4d5d42e5253dbee2.js +1 -0
- package/.next-prod/static/chunks/5338.76f7773c317f3142.js +1 -0
- package/.next-prod/static/chunks/5347.3192e0021174aaa8.js +1 -0
- package/.next-prod/static/chunks/5364.2e5ba480c24d7854.js +148 -0
- package/.next-prod/static/chunks/5375.ebc026e6140b52f1.js +1 -0
- package/.next-prod/static/chunks/5394.9d260f733e336357.js +287 -0
- package/.next-prod/static/chunks/53c1bd3f.2911e2bac119d910.js +1 -0
- package/.next-prod/static/chunks/541.cfa15b606745131a.js +1 -0
- package/.next-prod/static/chunks/5424.4d62f7ee887cd8b9.js +1 -0
- package/.next-prod/static/chunks/5482.0907421e6bf5eeec.js +1 -0
- package/.next-prod/static/chunks/5491.5cc285c4b84dac30.js +1 -0
- package/.next-prod/static/chunks/5493-9f80ad2c7c9cf840.js +1 -0
- package/.next-prod/static/chunks/5498.fa0a196807d6cd2f.js +1 -0
- package/.next-prod/static/chunks/54a60aa6-f60235f3d6b54466.js +79 -0
- package/.next-prod/static/chunks/5518.6c3dc9afe81a566b.js +1 -0
- package/.next-prod/static/chunks/5520.eab85d7487e77510.js +1 -0
- package/.next-prod/static/chunks/5553.75df19e3cc1246d6.js +1 -0
- package/.next-prod/static/chunks/5575.3d90c643343a1329.js +1 -0
- package/.next-prod/static/chunks/5645.9002948124d25d41.js +1 -0
- package/.next-prod/static/chunks/5670.2a1b27a6fdb7aa6b.js +1 -0
- package/.next-prod/static/chunks/5690.d30877807cf5c7eb.js +1 -0
- package/.next-prod/static/chunks/570e4624.a82467c542429379.js +1 -0
- package/.next-prod/static/chunks/5712.574fca2d5f06483a.js +1 -0
- package/.next-prod/static/chunks/5728.8ef773d61765855e.js +1 -0
- package/.next-prod/static/chunks/5750.aa57d25b74640d23.js +1 -0
- package/.next-prod/static/chunks/5755.00015c284ed6fb39.js +1 -0
- package/.next-prod/static/chunks/5788.e5d5040b65e5edf3.js +1 -0
- package/.next-prod/static/chunks/579.33fc87fb95163c6a.js +1 -0
- package/.next-prod/static/chunks/583.5061a2f9e7b7e97d.js +1 -0
- package/.next-prod/static/chunks/5920.9db223329ee9e11a.js +1 -0
- package/.next-prod/static/chunks/5922.0d75c174139a59a4.js +1 -0
- package/.next-prod/static/chunks/5937.0827b5b3eb831ff0.js +1 -0
- package/.next-prod/static/chunks/5968.63d5869783fad06f.js +1 -0
- package/.next-prod/static/chunks/5997.226c07d9e6c496e0.js +1 -0
- package/.next-prod/static/chunks/6026.4027a04696ef04db.js +1 -0
- package/.next-prod/static/chunks/6046.00d36aea7fd5b147.js +1 -0
- package/.next-prod/static/chunks/6089.2dd351186ec85cc3.js +1 -0
- package/.next-prod/static/chunks/6099.43e6595fcf24fc33.js +1 -0
- package/.next-prod/static/chunks/6110.5ce3f75fced27aaf.js +1 -0
- package/.next-prod/static/chunks/6144.f967a8228bcdf663.js +1 -0
- package/.next-prod/static/chunks/6155.e6cf0ef7c818caa9.js +1 -0
- package/.next-prod/static/chunks/6166.ecd82a9dcb484b97.js +1 -0
- package/.next-prod/static/chunks/624.2dd909fbfce98c5e.js +1 -0
- package/.next-prod/static/chunks/6290.e14cf4fc52dd4539.js +1 -0
- package/.next-prod/static/chunks/6293.5914fa73a9f7e777.js +1 -0
- package/.next-prod/static/chunks/6311.5b9c1f74df9a8f67.js +1 -0
- package/.next-prod/static/chunks/6331.758f2f66b92cada9.js +1 -0
- package/.next-prod/static/chunks/6339.bc9301cc22898be0.js +1 -0
- package/.next-prod/static/chunks/6360.ff0a9063773daeeb.js +1 -0
- package/.next-prod/static/chunks/6383.ca3e074feb80c69c.js +1 -0
- package/.next-prod/static/chunks/640.5bf1e25d0bddf875.js +1 -0
- package/.next-prod/static/chunks/6402.a0070d7688ed986b.js +1 -0
- package/.next-prod/static/chunks/6412.089ee787a294d10b.js +1 -0
- package/.next-prod/static/chunks/6455.12b78a2660d609eb.js +1 -0
- package/.next-prod/static/chunks/6460.8ce93fe47320f6c5.js +1 -0
- package/.next-prod/static/chunks/6563.5d618b608750f4dc.js +1 -0
- package/.next-prod/static/chunks/6572.ca2463823b9b01a0.js +1 -0
- package/.next-prod/static/chunks/6580.75d53830b434451f.js +1 -0
- package/.next-prod/static/chunks/6588.0fbca957af7d9e6a.js +1 -0
- package/.next-prod/static/chunks/6647.584c5d5cd8dfdb5a.js +1 -0
- package/.next-prod/static/chunks/6686.796c782c33ab8ca9.js +1 -0
- package/.next-prod/static/chunks/6701.bff0efb979f71a17.js +1 -0
- package/.next-prod/static/chunks/6704.f280f0ad0f5d8644.js +1 -0
- package/.next-prod/static/chunks/6729.0f91dcaaaffa2ed4.js +1 -0
- package/.next-prod/static/chunks/6741.06fdaf122961074e.js +1 -0
- package/.next-prod/static/chunks/6846.91283f709c40802c.js +1 -0
- package/.next-prod/static/chunks/6859.bacad166ee995fe0.js +1 -0
- package/.next-prod/static/chunks/6871.38519003bd87ac1c.js +62 -0
- package/.next-prod/static/chunks/6887.6c81234d73740fb9.js +1 -0
- package/.next-prod/static/chunks/6927.aa3914b5fb0d14d4.js +1 -0
- package/.next-prod/static/chunks/6931.3c90e9fe0f7f1e66.js +1 -0
- package/.next-prod/static/chunks/6938.0ccf683bd8aa8410.js +1 -0
- package/.next-prod/static/chunks/6948.2719ed8731963209.js +1 -0
- package/.next-prod/static/chunks/6959.5a803faf27f88e9f.js +1 -0
- package/.next-prod/static/chunks/6962.3bbd080592d4efa0.js +64 -0
- package/.next-prod/static/chunks/698.e0dda03fd303b96b.js +1 -0
- package/.next-prod/static/chunks/700.65a02f6a597083dc.js +9 -0
- package/.next-prod/static/chunks/7021.b71240b1d5f6fbe4.js +1 -0
- package/.next-prod/static/chunks/7040.b8e05ba7cbf46556.js +1 -0
- package/.next-prod/static/chunks/7041.174bf29bd837f06d.js +1 -0
- package/.next-prod/static/chunks/7082.fc816f91214026d7.js +1 -0
- package/.next-prod/static/chunks/7084.921c9737b83f55eb.js +1 -0
- package/.next-prod/static/chunks/7085.b16e7c0e24741232.js +215 -0
- package/.next-prod/static/chunks/70e0d97a-6903b8594c742784.js +1 -0
- package/.next-prod/static/chunks/7113.86e40b60c804b8c5.js +1 -0
- package/.next-prod/static/chunks/7130.8d24694735826c22.js +1 -0
- package/.next-prod/static/chunks/7142.dbd2cf8141eece5e.js +1 -0
- package/.next-prod/static/chunks/7152.c7b7f1f5e9622f21.js +1 -0
- package/.next-prod/static/chunks/7182.b747e3ef1524157a.js +1 -0
- package/.next-prod/static/chunks/7227.a6b2f01487bb3d9d.js +1 -0
- package/.next-prod/static/chunks/7258.6cbe24c3bcb63d1d.js +1 -0
- package/.next-prod/static/chunks/7425.8b47c8e398a12dd8.js +1 -0
- package/.next-prod/static/chunks/7443.124211e5abc05d3f.js +93 -0
- package/.next-prod/static/chunks/7455.71d54397710b923c.js +1 -0
- package/.next-prod/static/chunks/7465.867e8ff655666413.js +1 -0
- package/.next-prod/static/chunks/7479.433d3878625aba75.js +24 -0
- package/.next-prod/static/chunks/7524.9528295a19a5837a.js +1 -0
- package/.next-prod/static/chunks/7525.f433aaf1fe40c90a.js +1 -0
- package/.next-prod/static/chunks/7547.54b68d37b50c2f21.js +43 -0
- package/.next-prod/static/chunks/7557.bdc743175125b3d8.js +1 -0
- package/.next-prod/static/chunks/7610.b1439345dbcf285d.js +1 -0
- package/.next-prod/static/chunks/7625.ab66bd50d2fb61a4.js +1 -0
- package/.next-prod/static/chunks/7635.166d83de1d29e758.js +1 -0
- package/.next-prod/static/chunks/7636.bf91320a9ff695af.js +1 -0
- package/.next-prod/static/chunks/7650.18f74243e9325242.js +1 -0
- package/.next-prod/static/chunks/7785.1402a4110c300764.js +1 -0
- package/.next-prod/static/chunks/7799.f90cda9aba4e0e77.js +1 -0
- package/.next-prod/static/chunks/7819.3c56f48c0dc5ad5d.js +1 -0
- package/.next-prod/static/chunks/7844.2bb29faa262f313e.js +1 -0
- package/.next-prod/static/chunks/7846.c9705c044ab8f87a.js +1 -0
- package/.next-prod/static/chunks/7874.8db6929b94cdf697.js +1 -0
- package/.next-prod/static/chunks/7884.79af1a2f4511cea5.js +1 -0
- package/.next-prod/static/chunks/7889.af3e581842f34c28.js +1 -0
- package/.next-prod/static/chunks/7921.c361f794cc208e06.js +1 -0
- package/.next-prod/static/chunks/794.06b1ae4fc9cc10a9.js +1 -0
- package/.next-prod/static/chunks/7977.80e4daa080a79c39.js +1 -0
- package/.next-prod/static/chunks/799ebd4e.ccb85c56e9216a38.js +1 -0
- package/.next-prod/static/chunks/7d29de82.30ff86a90cbfd921.js +1 -0
- package/.next-prod/static/chunks/8113.907baefc7227cfb8.js +1 -0
- package/.next-prod/static/chunks/8132.74491162f08af899.js +1 -0
- package/.next-prod/static/chunks/816.ccc7dc455fcaf7c0.js +1 -0
- package/.next-prod/static/chunks/8192.5918d83ac6a0e2dc.js +1 -0
- package/.next-prod/static/chunks/8243.aa3ccfb41335eb1f.js +1 -0
- package/.next-prod/static/chunks/8257.dd8f651f1a43fee2.js +1 -0
- package/.next-prod/static/chunks/8288.8ff86c6a3bee6b7c.js +1 -0
- package/.next-prod/static/chunks/830.e49b226c07876df4.js +1 -0
- package/.next-prod/static/chunks/8317.9c6f22e0c8cd07a8.js +141 -0
- package/.next-prod/static/chunks/8318.a70d7a81445f8cf9.js +1 -0
- package/.next-prod/static/chunks/840.a9c535f8868cc4bd.js +1 -0
- package/.next-prod/static/chunks/8406.955ccfbb4b70b8c3.js +1 -0
- package/.next-prod/static/chunks/8430.b1f802dcffa41626.js +1 -0
- package/.next-prod/static/chunks/8432.bd66ac287c569996.js +1 -0
- package/.next-prod/static/chunks/8457.b61d96d8d30215fc.js +1 -0
- package/.next-prod/static/chunks/8496.046efd6301dd804f.js +1 -0
- package/.next-prod/static/chunks/8545.be0c9eea6aae5971.js +1 -0
- package/.next-prod/static/chunks/8555.ab3ee6358f1d64da.js +1 -0
- package/.next-prod/static/chunks/862.7cd3197e1ba5fd00.js +1 -0
- package/.next-prod/static/chunks/8656.2ceb4e5ff5df2fca.js +1 -0
- package/.next-prod/static/chunks/8670.90ede75068758e82.js +1 -0
- package/.next-prod/static/chunks/8704.a1003918da6654da.js +1 -0
- package/.next-prod/static/chunks/8773.614f1f4f0f845c5e.js +1 -0
- package/.next-prod/static/chunks/8776.6fb12270eca03fd3.js +149 -0
- package/.next-prod/static/chunks/8848.b0a10ee0b0a2b91b.js +1 -0
- package/.next-prod/static/chunks/8863.4a09596cf95e996a.js +82 -0
- package/.next-prod/static/chunks/893.c469257bbbbca4f5.js +1 -0
- package/.next-prod/static/chunks/8947.31d3d834d8281fd9.js +1 -0
- package/.next-prod/static/chunks/9005.473ce947d16e7f65.js +1 -0
- package/.next-prod/static/chunks/9006.11537833945ec4b8.js +1 -0
- package/.next-prod/static/chunks/9015.c4e40321a6503a1b.js +1 -0
- package/.next-prod/static/chunks/90542734.58d84d15ab7a8c98.js +1 -0
- package/.next-prod/static/chunks/9114-abef8471519b7dee.js +1 -0
- package/.next-prod/static/chunks/9136.191be42a2fee842c.js +1 -0
- package/.next-prod/static/chunks/9178.48a90097ee3f0b0c.js +1 -0
- package/.next-prod/static/chunks/9186.3af6fcd13ab752fa.js +1 -0
- package/.next-prod/static/chunks/9189.3e9d29bf275ec462.js +1 -0
- package/.next-prod/static/chunks/9220.0206dd0432eca784.js +1 -0
- package/.next-prod/static/chunks/9224.401f9320ee58570b.js +1 -0
- package/.next-prod/static/chunks/9233.124321d2f404e01c.js +1 -0
- package/.next-prod/static/chunks/9240.d38ddbe94e0bf128.js +1 -0
- package/.next-prod/static/chunks/9261.303cbbe69262a995.js +1 -0
- package/.next-prod/static/chunks/9267.fbfd65ea31e7448c.js +1 -0
- package/.next-prod/static/chunks/9294.a20485f3282321b3.js +1 -0
- package/.next-prod/static/chunks/92e53eb0.097194be4a0e7d55.js +1 -0
- package/.next-prod/static/chunks/9302.726b065f2df0323a.js +1 -0
- package/.next-prod/static/chunks/9318.ba24787a52cefe4c.js +56 -0
- package/.next-prod/static/chunks/9373.6206c440af44002a.js +1 -0
- package/.next-prod/static/chunks/9377.f9db706e76f04afe.js +1 -0
- package/.next-prod/static/chunks/9382.bc0e11ecc88dd62c.js +1 -0
- package/.next-prod/static/chunks/9421.a5c1dbcfbfdd8f52.js +1 -0
- package/.next-prod/static/chunks/9448.2668b3cd408e86de.js +1 -0
- package/.next-prod/static/chunks/9466.3dacf5969d47ba2c.js +1 -0
- package/.next-prod/static/chunks/9521.e1240eb862eb32dc.js +1 -0
- package/.next-prod/static/chunks/9547.7729788fff21926f.js +1 -0
- package/.next-prod/static/chunks/9565.8de0671f99d12abe.js +1 -0
- package/.next-prod/static/chunks/9569.2f36b2b1c2f838d7.js +1 -0
- package/.next-prod/static/chunks/9615.3b62c13af671f714.js +1 -0
- package/.next-prod/static/chunks/9648.8235b6fea7087b3a.js +1 -0
- package/.next-prod/static/chunks/966.57e4cd93c2368d34.js +1 -0
- package/.next-prod/static/chunks/9666.a515fa6d89a71f1c.js +1 -0
- package/.next-prod/static/chunks/968.29d4ba7ee8bd5ccb.js +1 -0
- package/.next-prod/static/chunks/9680.d5ceac8967e0b6a8.js +1 -0
- package/.next-prod/static/chunks/9690.7773c72f0eff6dec.js +1 -0
- package/.next-prod/static/chunks/9841.422321143547591a.js +1 -0
- package/.next-prod/static/chunks/9842.3b71b65b30d8ef2a.js +1 -0
- package/.next-prod/static/chunks/9996.18b7bca2f0ab222e.js +1 -0
- package/.next-prod/static/chunks/aaea2bcf-6b3391c26b869501.js +1 -0
- package/.next-prod/static/chunks/af7f6608.85a7e1eb0d4130b0.js +53 -0
- package/.next-prod/static/chunks/app/_global-error/page-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/_not-found/page-511b5b7e4ffc7ac9.js +1 -0
- package/.next-prod/static/chunks/app/api/bash/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/chat/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/claude-stats/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/commands/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/comments/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/db/columns/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/db/connect/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/db/disconnect/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/db/export/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/db/query/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/db/schemas/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/extension/version/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/file/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/files/blame/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/files/clipboard/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/files/copy/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/files/delete/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/files/expanded/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/files/index/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/files/init/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/files/paste/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/files/read/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/files/readdir/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/files/recent/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/files/save/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/files/search/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/git/branch-diff/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/git/branches/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/git/commit-diff/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/git/commits/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/git/diff/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/git/discard/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/git/stage/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/git/status/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/git/unstage/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/git/worktree/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/global-state/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/jupyter/load/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/jupyter/save/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/jupyter/shutdown/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/lsp/definition/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/lsp/hover/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/lsp/references/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/lsp/status/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/lsp/warmup/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/mysql/columns/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/mysql/connect/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/mysql/disconnect/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/mysql/export/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/mysql/query/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/mysql/schemas/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/note/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/open-cursor/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/open-vscode/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/pick-folder/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/pinned-sessions/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/project-settings/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/project-state/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/projects/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/redis/command/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/redis/connect/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/redis/delete/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/redis/disconnect/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/redis/get/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/redis/keys/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/redis/set/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/review/[id]/comments/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/review/[id]/replies/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/review/[id]/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/review/identify/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/review/order/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/review/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/review/share-info/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/review/users/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/scheduled-tasks/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/services/config/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/services/scripts/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/session/[sessionId]/fork/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/session/[sessionId]/history/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/session-by-path/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/sessions/projects/[encodedPath]/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/sessions/projects/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/sessions/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/settings/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/terminal/aliases/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/terminal/autocomplete/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/terminal/bubble-order/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/terminal/env/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/terminal/history/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/api/version/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/global-error-3c48d7d42c672863.js +1 -0
- package/.next-prod/static/chunks/app/layout-44210aade5d56585.js +1 -0
- package/.next-prod/static/chunks/app/manifest.webmanifest/route-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/app/page-cc2bf3ca4c337090.js +1 -0
- package/.next-prod/static/chunks/app/project/page-fb1ff1d5d382977d.js +25 -0
- package/.next-prod/static/chunks/app/review/[id]/page-64f18d8d2476753c.js +1 -0
- package/.next-prod/static/chunks/ce16f5a9.5c7821b201f35593.js +1 -0
- package/.next-prod/static/chunks/cee15710.869cef5f741d40c2.js +1 -0
- package/.next-prod/static/chunks/cfdf2ac7.4506d3f72b310564.js +1 -0
- package/.next-prod/static/chunks/d1c28714.f52cffdd449a2d14.js +1 -0
- package/.next-prod/static/chunks/d3ac728e-d1ae8819b8f0be6a.js +1 -0
- package/.next-prod/static/chunks/e868780c.a081703edc1bc551.js +18 -0
- package/.next-prod/static/chunks/framework-81b2e59ffe13bb24.js +1 -0
- package/.next-prod/static/chunks/main-ac50dc1e450895a2.js +5 -0
- package/.next-prod/static/chunks/main-app-b76c0df33a946918.js +1 -0
- package/.next-prod/static/chunks/next/dist/client/components/builtin/app-error-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/next/dist/client/components/builtin/forbidden-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/next/dist/client/components/builtin/not-found-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/next/dist/client/components/builtin/unauthorized-f2ae9d2d29d5fe08.js +1 -0
- package/.next-prod/static/chunks/polyfills-42372ed130431b0a.js +1 -0
- package/.next-prod/static/chunks/webpack-67d02a2a41508d41.js +1 -0
- package/.next-prod/static/css/2163ab5e45fedc6a.css +1 -0
- package/.next-prod/static/css/dd86f60184ab34a9.css +3 -0
- package/.next-prod/static/media/0086f8992871c45b-s.woff2 +0 -0
- package/.next-prod/static/media/03b436aa846269de-s.woff2 +0 -0
- package/.next-prod/static/media/08aedeceaf1dcd57-s.woff2 +0 -0
- package/.next-prod/static/media/0aa834ed78bf6d07-s.woff2 +0 -0
- package/.next-prod/static/media/19cfc7226ec3afaa-s.woff2 +0 -0
- package/.next-prod/static/media/21350d82a1f187e9-s.woff2 +0 -0
- package/.next-prod/static/media/36008747766f78c6-s.woff2 +0 -0
- package/.next-prod/static/media/5c0c2bcbaa4149ca-s.p.woff2 +0 -0
- package/.next-prod/static/media/67957d42bae0796d-s.woff2 +0 -0
- package/.next-prod/static/media/6d38f9d4e0f4772b-s.woff2 +0 -0
- package/.next-prod/static/media/886030b0b59bc5a7-s.woff2 +0 -0
- package/.next-prod/static/media/8e9860b6e62d6359-s.woff2 +0 -0
- package/.next-prod/static/media/939c4f875ee75fbb-s.woff2 +0 -0
- package/.next-prod/static/media/KaTeX_AMS-Regular.1608a09b.woff +0 -0
- package/.next-prod/static/media/KaTeX_AMS-Regular.4aafdb68.ttf +0 -0
- package/.next-prod/static/media/KaTeX_AMS-Regular.a79f1c31.woff2 +0 -0
- package/.next-prod/static/media/KaTeX_Caligraphic-Bold.b6770918.woff +0 -0
- package/.next-prod/static/media/KaTeX_Caligraphic-Bold.cce5b8ec.ttf +0 -0
- package/.next-prod/static/media/KaTeX_Caligraphic-Bold.ec17d132.woff2 +0 -0
- package/.next-prod/static/media/KaTeX_Caligraphic-Regular.07ef19e7.ttf +0 -0
- package/.next-prod/static/media/KaTeX_Caligraphic-Regular.55fac258.woff2 +0 -0
- package/.next-prod/static/media/KaTeX_Caligraphic-Regular.dad44a7f.woff +0 -0
- package/.next-prod/static/media/KaTeX_Fraktur-Bold.9f256b85.woff +0 -0
- package/.next-prod/static/media/KaTeX_Fraktur-Bold.b18f59e1.ttf +0 -0
- package/.next-prod/static/media/KaTeX_Fraktur-Bold.d42a5579.woff2 +0 -0
- package/.next-prod/static/media/KaTeX_Fraktur-Regular.7c187121.woff +0 -0
- package/.next-prod/static/media/KaTeX_Fraktur-Regular.d3c882a6.woff2 +0 -0
- package/.next-prod/static/media/KaTeX_Fraktur-Regular.ed38e79f.ttf +0 -0
- package/.next-prod/static/media/KaTeX_Main-Bold.b74a1a8b.ttf +0 -0
- package/.next-prod/static/media/KaTeX_Main-Bold.c3fb5ac2.woff2 +0 -0
- package/.next-prod/static/media/KaTeX_Main-Bold.d181c465.woff +0 -0
- package/.next-prod/static/media/KaTeX_Main-BoldItalic.6f2bb1df.woff2 +0 -0
- package/.next-prod/static/media/KaTeX_Main-BoldItalic.70d8b0a5.ttf +0 -0
- package/.next-prod/static/media/KaTeX_Main-BoldItalic.e3f82f9d.woff +0 -0
- package/.next-prod/static/media/KaTeX_Main-Italic.47373d1e.ttf +0 -0
- package/.next-prod/static/media/KaTeX_Main-Italic.8916142b.woff2 +0 -0
- package/.next-prod/static/media/KaTeX_Main-Italic.9024d815.woff +0 -0
- package/.next-prod/static/media/KaTeX_Main-Regular.0462f03b.woff2 +0 -0
- package/.next-prod/static/media/KaTeX_Main-Regular.7f51fe03.woff +0 -0
- package/.next-prod/static/media/KaTeX_Main-Regular.b7f8fe9b.ttf +0 -0
- package/.next-prod/static/media/KaTeX_Math-BoldItalic.572d331f.woff2 +0 -0
- package/.next-prod/static/media/KaTeX_Math-BoldItalic.a879cf83.ttf +0 -0
- package/.next-prod/static/media/KaTeX_Math-BoldItalic.f1035d8d.woff +0 -0
- package/.next-prod/static/media/KaTeX_Math-Italic.5295ba48.woff +0 -0
- package/.next-prod/static/media/KaTeX_Math-Italic.939bc644.ttf +0 -0
- package/.next-prod/static/media/KaTeX_Math-Italic.f28c23ac.woff2 +0 -0
- package/.next-prod/static/media/KaTeX_SansSerif-Bold.8c5b5494.woff2 +0 -0
- package/.next-prod/static/media/KaTeX_SansSerif-Bold.94e1e8dc.ttf +0 -0
- package/.next-prod/static/media/KaTeX_SansSerif-Bold.bf59d231.woff +0 -0
- package/.next-prod/static/media/KaTeX_SansSerif-Italic.3b1e59b3.woff2 +0 -0
- package/.next-prod/static/media/KaTeX_SansSerif-Italic.7c9bc82b.woff +0 -0
- package/.next-prod/static/media/KaTeX_SansSerif-Italic.b4c20c84.ttf +0 -0
- package/.next-prod/static/media/KaTeX_SansSerif-Regular.74048478.woff +0 -0
- package/.next-prod/static/media/KaTeX_SansSerif-Regular.ba21ed5f.woff2 +0 -0
- package/.next-prod/static/media/KaTeX_SansSerif-Regular.d4d7ba48.ttf +0 -0
- package/.next-prod/static/media/KaTeX_Script-Regular.03e9641d.woff2 +0 -0
- package/.next-prod/static/media/KaTeX_Script-Regular.07505710.woff +0 -0
- package/.next-prod/static/media/KaTeX_Script-Regular.fe9cbbe1.ttf +0 -0
- package/.next-prod/static/media/KaTeX_Size1-Regular.e1e279cb.woff +0 -0
- package/.next-prod/static/media/KaTeX_Size1-Regular.eae34984.woff2 +0 -0
- package/.next-prod/static/media/KaTeX_Size1-Regular.fabc004a.ttf +0 -0
- package/.next-prod/static/media/KaTeX_Size2-Regular.57727022.woff +0 -0
- package/.next-prod/static/media/KaTeX_Size2-Regular.5916a24f.woff2 +0 -0
- package/.next-prod/static/media/KaTeX_Size2-Regular.d6b476ec.ttf +0 -0
- package/.next-prod/static/media/KaTeX_Size3-Regular.9acaf01c.woff +0 -0
- package/.next-prod/static/media/KaTeX_Size3-Regular.a144ef58.ttf +0 -0
- package/.next-prod/static/media/KaTeX_Size3-Regular.b4230e7e.woff2 +0 -0
- package/.next-prod/static/media/KaTeX_Size4-Regular.10d95fd3.woff2 +0 -0
- package/.next-prod/static/media/KaTeX_Size4-Regular.7a996c9d.woff +0 -0
- package/.next-prod/static/media/KaTeX_Size4-Regular.fbccdabe.ttf +0 -0
- package/.next-prod/static/media/KaTeX_Typewriter-Regular.6258592b.woff +0 -0
- package/.next-prod/static/media/KaTeX_Typewriter-Regular.a8709e36.woff2 +0 -0
- package/.next-prod/static/media/KaTeX_Typewriter-Regular.d97aaf4a.ttf +0 -0
- package/.next-prod/static/media/ab00a911ac2adf48-s.woff2 +0 -0
- package/.next-prod/static/media/ba9851c3c22cd980-s.woff2 +0 -0
- package/.next-prod/static/media/bb3ef058b751a6ad-s.p.woff2 +0 -0
- package/.next-prod/static/media/c5fe6dc8356a8c31-s.woff2 +0 -0
- package/.next-prod/static/media/df0a9ae256c0569c-s.woff2 +0 -0
- package/.next-prod/static/media/e4af272ccee01ff0-s.p.woff2 +0 -0
- package/.next-prod/static/media/f911b923c6adde36-s.woff2 +0 -0
- package/.next-prod/trace +12 -0
- package/.next-prod/trace-build +1 -0
- package/.next-prod/types/app/api/bash/route.ts +350 -0
- package/.next-prod/types/app/api/chat/route.ts +350 -0
- package/.next-prod/types/app/api/claude-stats/route.ts +350 -0
- package/.next-prod/types/app/api/commands/route.ts +350 -0
- package/.next-prod/types/app/api/comments/route.ts +350 -0
- package/.next-prod/types/app/api/db/columns/route.ts +350 -0
- package/.next-prod/types/app/api/db/connect/route.ts +350 -0
- package/.next-prod/types/app/api/db/disconnect/route.ts +350 -0
- package/.next-prod/types/app/api/db/export/route.ts +350 -0
- package/.next-prod/types/app/api/db/query/route.ts +350 -0
- package/.next-prod/types/app/api/db/schemas/route.ts +350 -0
- package/.next-prod/types/app/api/extension/version/route.ts +350 -0
- package/.next-prod/types/app/api/file/route.ts +350 -0
- package/.next-prod/types/app/api/files/blame/route.ts +350 -0
- package/.next-prod/types/app/api/files/clipboard/route.ts +350 -0
- package/.next-prod/types/app/api/files/copy/route.ts +350 -0
- package/.next-prod/types/app/api/files/delete/route.ts +350 -0
- package/.next-prod/types/app/api/files/expanded/route.ts +350 -0
- package/.next-prod/types/app/api/files/index/route.ts +350 -0
- package/.next-prod/types/app/api/files/init/route.ts +350 -0
- package/.next-prod/types/app/api/files/paste/route.ts +350 -0
- package/.next-prod/types/app/api/files/read/route.ts +350 -0
- package/.next-prod/types/app/api/files/readdir/route.ts +350 -0
- package/.next-prod/types/app/api/files/recent/route.ts +350 -0
- package/.next-prod/types/app/api/files/save/route.ts +350 -0
- package/.next-prod/types/app/api/files/search/route.ts +350 -0
- package/.next-prod/types/app/api/git/branch-diff/route.ts +350 -0
- package/.next-prod/types/app/api/git/branches/route.ts +350 -0
- package/.next-prod/types/app/api/git/commit-diff/route.ts +350 -0
- package/.next-prod/types/app/api/git/commits/route.ts +350 -0
- package/.next-prod/types/app/api/git/diff/route.ts +350 -0
- package/.next-prod/types/app/api/git/discard/route.ts +350 -0
- package/.next-prod/types/app/api/git/stage/route.ts +350 -0
- package/.next-prod/types/app/api/git/status/route.ts +350 -0
- package/.next-prod/types/app/api/git/unstage/route.ts +350 -0
- package/.next-prod/types/app/api/git/worktree/route.ts +350 -0
- package/.next-prod/types/app/api/global-state/route.ts +350 -0
- package/.next-prod/types/app/api/jupyter/load/route.ts +350 -0
- package/.next-prod/types/app/api/jupyter/save/route.ts +350 -0
- package/.next-prod/types/app/api/jupyter/shutdown/route.ts +350 -0
- package/.next-prod/types/app/api/lsp/definition/route.ts +350 -0
- package/.next-prod/types/app/api/lsp/hover/route.ts +350 -0
- package/.next-prod/types/app/api/lsp/references/route.ts +350 -0
- package/.next-prod/types/app/api/lsp/status/route.ts +350 -0
- package/.next-prod/types/app/api/lsp/warmup/route.ts +350 -0
- package/.next-prod/types/app/api/mysql/columns/route.ts +350 -0
- package/.next-prod/types/app/api/mysql/connect/route.ts +350 -0
- package/.next-prod/types/app/api/mysql/disconnect/route.ts +350 -0
- package/.next-prod/types/app/api/mysql/export/route.ts +350 -0
- package/.next-prod/types/app/api/mysql/query/route.ts +350 -0
- package/.next-prod/types/app/api/mysql/schemas/route.ts +350 -0
- package/.next-prod/types/app/api/note/route.ts +350 -0
- package/.next-prod/types/app/api/open-cursor/route.ts +350 -0
- package/.next-prod/types/app/api/open-vscode/route.ts +350 -0
- package/.next-prod/types/app/api/pick-folder/route.ts +350 -0
- package/.next-prod/types/app/api/pinned-sessions/route.ts +350 -0
- package/.next-prod/types/app/api/project-settings/route.ts +350 -0
- package/.next-prod/types/app/api/project-state/route.ts +350 -0
- package/.next-prod/types/app/api/projects/route.ts +350 -0
- package/.next-prod/types/app/api/redis/command/route.ts +350 -0
- package/.next-prod/types/app/api/redis/connect/route.ts +350 -0
- package/.next-prod/types/app/api/redis/delete/route.ts +350 -0
- package/.next-prod/types/app/api/redis/disconnect/route.ts +350 -0
- package/.next-prod/types/app/api/redis/get/route.ts +350 -0
- package/.next-prod/types/app/api/redis/keys/route.ts +350 -0
- package/.next-prod/types/app/api/redis/set/route.ts +350 -0
- package/.next-prod/types/app/api/review/[id]/comments/route.ts +350 -0
- package/.next-prod/types/app/api/review/[id]/replies/route.ts +350 -0
- package/.next-prod/types/app/api/review/[id]/route.ts +350 -0
- package/.next-prod/types/app/api/review/identify/route.ts +350 -0
- package/.next-prod/types/app/api/review/order/route.ts +350 -0
- package/.next-prod/types/app/api/review/route.ts +350 -0
- package/.next-prod/types/app/api/review/share-info/route.ts +350 -0
- package/.next-prod/types/app/api/review/users/route.ts +350 -0
- package/.next-prod/types/app/api/scheduled-tasks/route.ts +350 -0
- package/.next-prod/types/app/api/services/config/route.ts +350 -0
- package/.next-prod/types/app/api/services/scripts/route.ts +350 -0
- package/.next-prod/types/app/api/session/[sessionId]/fork/route.ts +350 -0
- package/.next-prod/types/app/api/session/[sessionId]/history/route.ts +350 -0
- package/.next-prod/types/app/api/session-by-path/route.ts +350 -0
- package/.next-prod/types/app/api/sessions/projects/[encodedPath]/route.ts +350 -0
- package/.next-prod/types/app/api/sessions/projects/route.ts +350 -0
- package/.next-prod/types/app/api/sessions/route.ts +350 -0
- package/.next-prod/types/app/api/settings/route.ts +350 -0
- package/.next-prod/types/app/api/terminal/aliases/route.ts +350 -0
- package/.next-prod/types/app/api/terminal/autocomplete/route.ts +350 -0
- package/.next-prod/types/app/api/terminal/bubble-order/route.ts +350 -0
- package/.next-prod/types/app/api/terminal/env/route.ts +350 -0
- package/.next-prod/types/app/api/terminal/history/route.ts +350 -0
- package/.next-prod/types/app/api/version/route.ts +350 -0
- package/.next-prod/types/app/page.ts +86 -0
- package/.next-prod/types/app/project/page.ts +86 -0
- package/.next-prod/types/app/review/[id]/page.ts +86 -0
- package/.next-prod/types/package.json +1 -0
- package/.next-prod/types/routes.d.ts +164 -0
- package/.next-prod/types/validator.ts +898 -0
- package/LICENSE +21 -0
- package/README.md +94 -0
- package/README.zh.md +100 -0
- package/bin/cock-browser.mjs +435 -0
- package/bin/cock-dev.mjs +6 -0
- package/bin/cock-terminal.mjs +215 -0
- package/bin/cock.mjs +99 -0
- package/bin/postinstall.mjs +29 -0
- package/chrome-extension/automation.js +684 -0
- package/chrome-extension/background.js +364 -0
- package/chrome-extension/content.js +224 -0
- package/chrome-extension/disguise.js +14 -0
- package/chrome-extension/icons/icon128.png +0 -0
- package/chrome-extension/icons/icon16.png +0 -0
- package/chrome-extension/icons/icon48.png +0 -0
- package/chrome-extension/manifest.json +42 -0
- package/chrome-extension/network-capture.js +197 -0
- package/chrome-extension/rules.json +56 -0
- package/dist/JupyterKernelManager-475VNVA5.mjs +248 -0
- package/dist/chunk-OER3N6H7.mjs +250 -0
- package/dist/scheduledTasks.mjs +418 -0
- package/dist/wsServer.mjs +1441 -0
- package/next.config.ts +18 -0
- package/package.json +122 -0
- package/public/favicon.ico +0 -0
- package/public/icons/dev/icon-128x128.png +0 -0
- package/public/icons/dev/icon-144x144.png +0 -0
- package/public/icons/dev/icon-152x152.png +0 -0
- package/public/icons/dev/icon-192x192.png +0 -0
- package/public/icons/dev/icon-384x384.png +0 -0
- package/public/icons/dev/icon-512x512.png +0 -0
- package/public/icons/dev/icon-72x72.png +0 -0
- package/public/icons/dev/icon-96x96.png +0 -0
- package/public/icons/icon-128x128.png +0 -0
- package/public/icons/icon-144x144.png +0 -0
- package/public/icons/icon-152x152.png +0 -0
- package/public/icons/icon-192x192.png +0 -0
- package/public/icons/icon-384x384.png +0 -0
- package/public/icons/icon-512x512.png +0 -0
- package/public/icons/icon-72x72.png +0 -0
- package/public/icons/icon-96x96.png +0 -0
- package/server.mjs +135 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.id=7307,exports.ids=[7307],exports.modules={17307:(a,b,c)=>{function d(a,b){(null==b||b>a.length)&&(b=a.length);for(var c=0,d=Array(b);c<b;c++)d[c]=a[c];return d}function e(a,b){if(!(a instanceof b))throw TypeError("Cannot call a class as a function")}function f(a,b,c){return b&&function(a,b){for(var c=0;c<b.length;c++){var d=b[c];d.enumerable=d.enumerable||!1,d.configurable=!0,"value"in d&&(d.writable=!0),Object.defineProperty(a,k(d.key),d)}}(a.prototype,b),Object.defineProperty(a,"prototype",{writable:!1}),a}function g(a,b){var c="u">typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(!c){if(Array.isArray(a)||(c=n(a))||b){c&&(a=c);var d=0,e=function(){};return{s:e,n:function(){return d>=a.length?{done:!0}:{done:!1,value:a[d++]}},e:function(a){throw a},f:e}}throw TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var f,g=!0,h=!1;return{s:function(){c=c.call(a)},n:function(){var a=c.next();return g=a.done,a},e:function(a){h=!0,f=a},f:function(){try{g||null==c.return||c.return()}finally{if(h)throw f}}}}function h(a,b,c){return(b=k(b))in a?Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[b]=c,a}function i(a,b){return function(a){if(Array.isArray(a))return a}(a)||function(a,b){var c=null==a?null:"u">typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(null!=c){var d,e,f,g,h=[],i=!0,j=!1;try{if(f=(c=c.call(a)).next,0===b){if(Object(c)!==c)return;i=!1}else for(;!(i=(d=f.call(c)).done)&&(h.push(d.value),h.length!==b);i=!0);}catch(a){j=!0,e=a}finally{try{if(!i&&null!=c.return&&(g=c.return(),Object(g)!==g))return}finally{if(j)throw e}}return h}}(a,b)||n(a,b)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function j(a){return function(a){if(Array.isArray(a))return d(a)}(a)||function(a){if("u">typeof Symbol&&null!=a[Symbol.iterator]||null!=a["@@iterator"])return Array.from(a)}(a)||n(a)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function k(a){var b=function(a,b){if("object"!=typeof a||!a)return a;var c=a[Symbol.toPrimitive];if(void 0!==c){var d=c.call(a,b);if("object"!=typeof d)return d;throw TypeError("@@toPrimitive must return a primitive value.")}return String(a)}(a,"string");return"symbol"==typeof b?b:b+""}function l(a){return(l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a})(a)}function n(a,b){if(a){if("string"==typeof a)return d(a,b);var c=({}).toString.call(a).slice(8,-1);return"Object"===c&&a.constructor&&(c=a.constructor.name),"Map"===c||"Set"===c?Array.from(a):"Arguments"===c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c)?d(a,b):void 0}}c.d(b,{A:()=>kh});var o=l(""),p=l({}),q=l(function(){}),r="u"<typeof HTMLElement?"undefined":l(HTMLElement),s=function(a){return a&&a.instanceString&&u(a.instanceString)?a.instanceString():null},t=function(a){return null!=a&&l(a)==o},u=function(a){return null!=a&&l(a)===q},v=function(a){return!z(a)&&(Array.isArray?Array.isArray(a):null!=a&&a instanceof Array)},w=function(a){return null!=a&&l(a)===p&&!v(a)&&a.constructor===Object},x=function(a){return null!=a&&l(a)===l(1)&&!isNaN(a)},y=function(a){if("undefined"!==r)return null!=a&&a instanceof HTMLElement},z=function(a){return A(a)||B(a)},A=function(a){return"collection"===s(a)&&a._private.single},B=function(a){return"collection"===s(a)&&!a._private.single},C=function(a){return"core"===s(a)},D=function(a){return"stylesheet"===s(a)},E=function(a){return null==a||!!(""===a||a.match(/^\s+$/))},F=function(a){return null!=a&&l(a)===p&&u(a.then)},G=function(a,b){b||(b=function(){if(1==arguments.length)return arguments[0];if(0==arguments.length)return"undefined";for(var a=[],b=0;b<arguments.length;b++)a.push(arguments[b]);return a.join("$")});var c=function(){var d,e=arguments,f=b.apply(this,e),g=c.cache;return(d=g[f])||(d=g[f]=a.apply(this,e)),d};return c.cache={},c},H=G(function(a){return a.replace(/([A-Z])/g,function(a){return"-"+a.toLowerCase()})}),I=G(function(a){return a.replace(/(-\w)/g,function(a){return a[1].toUpperCase()})}),J=G(function(a,b){return a+b[0].toUpperCase()+b.substring(1)},function(a,b){return a+"$"+b}),K=function(a){return E(a)?a:a.charAt(0).toUpperCase()+a.substring(1)},L=function(a,b){return a.slice(-1*b.length)===b},M="(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))",N="rgb[a]?\\(("+M+"[%]?)\\s*,\\s*("+M+"[%]?)\\s*,\\s*("+M+"[%]?)(?:\\s*,\\s*("+M+"))?\\)",O="rgb[a]?\\((?:"+M+"[%]?)\\s*,\\s*(?:"+M+"[%]?)\\s*,\\s*(?:"+M+"[%]?)(?:\\s*,\\s*(?:"+M+"))?\\)",P="hsl[a]?\\(("+M+")\\s*,\\s*("+M+"[%])\\s*,\\s*("+M+"[%])(?:\\s*,\\s*("+M+"))?\\)",Q="hsl[a]?\\((?:"+M+")\\s*,\\s*(?:"+M+"[%])\\s*,\\s*(?:"+M+"[%])(?:\\s*,\\s*(?:"+M+"))?\\)",R=function(a,b){return a<b?-1:+(a>b)},S=null!=Object.assign?Object.assign.bind(Object):function(a){for(var b=arguments,c=1;c<b.length;c++){var d=b[c];if(null!=d)for(var e=Object.keys(d),f=0;f<e.length;f++){var g=e[f];a[g]=d[g]}}return a},T=function(a){if((4===a.length||7===a.length)&&"#"===a[0]){var b,c,d;return 4===a.length?(b=parseInt(a[1]+a[1],16),c=parseInt(a[2]+a[2],16),d=parseInt(a[3]+a[3],16)):(b=parseInt(a[1]+a[2],16),c=parseInt(a[3]+a[4],16),d=parseInt(a[5]+a[6],16)),[b,c,d]}},U=function(a){function b(a,b,c){return(c<0&&(c+=1),c>1&&(c-=1),c<1/6)?a+(b-a)*6*c:c<.5?b:c<2/3?a+(b-a)*(2/3-c)*6:a}var c,d,e,f,g,h,i,j,k=RegExp("^"+P+"$").exec(a);if(k){if((d=parseInt(k[1]))<0?d=(360- -1*d%360)%360:d>360&&(d%=360),d/=360,(e=parseFloat(k[2]))<0||e>100||(e/=100,(f=parseFloat(k[3]))<0||f>100)||(f/=100,void 0!==(g=k[4])&&((g=parseFloat(g))<0||g>1)))return;if(0===e)h=i=j=Math.round(255*f);else{var l=f<.5?f*(1+e):f+e-f*e,n=2*f-l;h=Math.round(255*b(n,l,d+1/3)),i=Math.round(255*b(n,l,d)),j=Math.round(255*b(n,l,d-1/3))}c=[h,i,j,g]}return c},V=function(a){var b,c=RegExp("^"+N+"$").exec(a);if(c){b=[];for(var d=[],e=1;e<=3;e++){var f=c[e];if("%"===f[f.length-1]&&(d[e]=!0),f=parseFloat(f),d[e]&&(f=f/100*255),f<0||f>255)return;b.push(Math.floor(f))}var g=d[1]||d[2]||d[3],h=d[1]&&d[2]&&d[3];if(g&&!h)return;var i=c[4];if(void 0!==i){if((i=parseFloat(i))<0||i>1)return;b.push(i)}}return b},W=function(a){return(v(a)?a:null)||X[a.toLowerCase()]||T(a)||V(a)||U(a)},X={transparent:[0,0,0,0],aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],grey:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},Y=function(a){for(var b=a.map,c=a.keys,d=c.length,e=0;e<d;e++){var f=c[e];if(w(f))throw Error("Tried to set map with object key");e<c.length-1?(null==b[f]&&(b[f]={}),b=b[f]):b[f]=a.value}},Z=function(a){for(var b=a.map,c=a.keys,d=c.length,e=0;e<d;e++){var f=c[e];if(w(f))throw Error("Tried to get map with object key");if(null==(b=b[f]))break}return b},$="u">typeof globalThis?globalThis:"u">typeof global?global:"u">typeof self?self:{};function _(a){return a&&a.__esModule&&Object.prototype.hasOwnProperty.call(a,"default")?a.default:a}function aa(){return f6?f5:(f6=1,f5=function(a){var b=typeof a;return null!=a&&("object"==b||"function"==b)})}function ab(){if(ga)return f9;ga=1;var a=f8?f7:(f8=1,f7="object"==typeof $&&$&&$.Object===Object&&$),b="object"==typeof self&&self&&self.Object===Object&&self;return f9=a||b||Function("return this")()}function ac(){return gi?gh:(gi=1,gh=ab().Symbol)}function ad(){if(go)return gn;go=1;var a=ac(),b=function(){if(gk)return gj;gk=1;var a=ac(),b=Object.prototype,c=b.hasOwnProperty,d=b.toString,e=a?a.toStringTag:void 0;return gj=function(a){var b=c.call(a,e),f=a[e];try{a[e]=void 0;var g=!0}catch(a){}var h=d.call(a);return g&&(b?a[e]=f:delete a[e]),h}}(),c=function(){if(gm)return gl;gm=1;var a=Object.prototype.toString;return gl=function(b){return a.call(b)}}(),d=a?a.toStringTag:void 0;return gn=function(a){return null==a?void 0===a?"[object Undefined]":"[object Null]":d&&d in Object(a)?b(a):c(a)}}function ae(){if(gs)return gr;gs=1;var a=ad(),b=gq?gp:(gq=1,gp=function(a){return null!=a&&"object"==typeof a});return gr=function(c){return"symbol"==typeof c||b(c)&&"[object Symbol]"==a(c)}}var af=_(function(){if(gw)return gv;gw=1;var a=aa(),b=function(){if(gc)return gb;gc=1;var a=ab();return gb=function(){return a.Date.now()}}(),c=function(){if(gu)return gt;gu=1;var a=function(){if(gg)return gf;gg=1;var a=function(){if(ge)return gd;ge=1;var a=/\s/;return gd=function(b){for(var c=b.length;c--&&a.test(b.charAt(c)););return c}}(),b=/^\s+/;return gf=function(c){return c?c.slice(0,a(c)+1).replace(b,""):c}}(),b=aa(),c=ae(),d=0/0,e=/^[-+]0x[0-9a-f]+$/i,f=/^0b[01]+$/i,g=/^0o[0-7]+$/i,h=parseInt;return gt=function(i){if("number"==typeof i)return i;if(c(i))return d;if(b(i)){var j="function"==typeof i.valueOf?i.valueOf():i;i=b(j)?j+"":j}if("string"!=typeof i)return 0===i?i:+i;i=a(i);var k=f.test(i);return k||g.test(i)?h(i.slice(2),k?2:8):e.test(i)?d:+i}}(),d=Math.max,e=Math.min;return gv=function(f,g,h){var i,j,k,l,n,o,p=0,q=!1,r=!1,s=!0;if("function"!=typeof f)throw TypeError("Expected a function");function t(a){var b=i,c=j;return i=j=void 0,p=a,l=f.apply(c,b)}function u(a){var b=a-o,c=a-p;return void 0===o||b>=g||b<0||r&&c>=k}function v(){var a,c,d,f=b();if(u(f))return w(f);n=setTimeout(v,(a=f-o,c=f-p,d=g-a,r?e(d,k-c):d))}function w(a){return(n=void 0,s&&i)?t(a):(i=j=void 0,l)}function x(){var a,c=b(),d=u(c);if(i=arguments,j=this,o=c,d){if(void 0===n)return p=a=o,n=setTimeout(v,g),q?t(a):l;if(r)return clearTimeout(n),n=setTimeout(v,g),t(o)}return void 0===n&&(n=setTimeout(v,g)),l}return g=c(g)||0,a(h)&&(q=!!h.leading,k=(r="maxWait"in h)?d(c(h.maxWait)||0,g):k,s="trailing"in h?!!h.trailing:s),x.cancel=function(){void 0!==n&&clearTimeout(n),p=0,i=o=j=n=void 0},x.flush=function(){return void 0===n?l:w(b())},x}}()),ag=function(){return Date.now()},ah=function(a){a&&setTimeout(function(){a(ag())},1e3/60)},ai=function(a){return ah(a)},aj=function(a){for(var b,c=arguments.length>1&&void 0!==arguments[1]?arguments[1]:9261,d=c;!(b=a.next()).done;)d=65599*d+b.value|0;return d},ak=function(a){var b=arguments.length>1&&void 0!==arguments[1]?arguments[1]:9261;return 65599*b+a|0},al=function(a){var b=arguments.length>1&&void 0!==arguments[1]?arguments[1]:5381;return(b<<5)+b+a|0},am=function(a){return 2097152*a[0]+a[1]},an=function(a,b){return[ak(a[0],b[0]),al(a[1],b[1])]},ao=function(a,b){var c={value:0,done:!1},d=0,e=a.length;return aj({next:function(){return d<e?c.value=a[d++]:c.done=!0,c}},b)},ap=function(a,b){var c={value:0,done:!1},d=0,e=a.length;return aj({next:function(){return d<e?c.value=a.charCodeAt(d++):c.done=!0,c}},b)},aq=function(){return ar(arguments)},ar=function(a){for(var b,c=0;c<a.length;c++){var d=a[c];b=0===c?ap(d):ap(d,b)}return b},as=!0,at=null!=console.warn,au=null!=console.trace,av=Number.MAX_SAFE_INTEGER||0x1fffffffffffff,aw=function(){return!0},ax=function(){return!1},ay=function(){return 0},az=function(){},aA=function(a){throw Error(a)},aB=function(a){if(void 0===a)return as;as=!!a},aC=function(a){aB()&&(at?console.warn(a):(console.log(a),au&&console.trace()))},aD=function(a){return null==a?a:v(a)?a.slice():w(a)?S({},a):a},aE=function(a,b){for(b=a="";a++<36;b+=51*a&52?(15^a?8^Math.random()*(20^a?16:4):4).toString(16):"-");return b},aF={},aG=function(){return aF},aH=function(a){var b=Object.keys(a);return function(c){for(var d={},e=0;e<b.length;e++){var f=b[e],g=null==c?void 0:c[f];d[f]=void 0===g?a[f]:g}return d}},aI=function(a,b,c){for(var d=a.length-1;d>=0;d--)a[d]===b&&a.splice(d,1)},aJ=function(a){a.splice(0,a.length)},aK=function(a,b){for(var c=0;c<b.length;c++){var d=b[c];a.push(d)}},aL=function(a,b,c){return c&&(b=J(c,b)),a[b]},aM=function(a,b,c,d){c&&(b=J(c,b)),a[b]=d},aN=f(function a(){e(this,a),this._obj={}},[{key:"set",value:function(a,b){return this._obj[a]=b,this}},{key:"delete",value:function(a){return this._obj[a]=void 0,this}},{key:"clear",value:function(){this._obj={}}},{key:"has",value:function(a){return void 0!==this._obj[a]}},{key:"get",value:function(a){return this._obj[a]}}]),aO="u">typeof Map?Map:aN,aP=f(function a(b){if(e(this,a),this._obj=Object.create(null),this.size=0,null!=b){var c;c=null!=b.instanceString&&b.instanceString()===this.instanceString()?b.toArray():b;for(var d=0;d<c.length;d++)this.add(c[d])}},[{key:"instanceString",value:function(){return"set"}},{key:"add",value:function(a){var b=this._obj;1!==b[a]&&(b[a]=1,this.size++)}},{key:"delete",value:function(a){var b=this._obj;1===b[a]&&(b[a]=0,this.size--)}},{key:"clear",value:function(){this._obj=Object.create(null)}},{key:"has",value:function(a){return 1===this._obj[a]}},{key:"toArray",value:function(){var a=this;return Object.keys(this._obj).filter(function(b){return a.has(b)})}},{key:"forEach",value:function(a,b){return this.toArray().forEach(a,b)}}]),aQ=("u"<typeof Set?"undefined":l(Set))!=="undefined"?Set:aP,aR=function(a,b){var c=!(arguments.length>2)||void 0===arguments[2]||arguments[2];if(void 0===a||void 0===b||!C(a))return void aA("An element must have a core reference and parameters set");var d=b.group;if(null==d&&(d=b.data&&null!=b.data.source&&null!=b.data.target?"edges":"nodes"),"nodes"!==d&&"edges"!==d)return void aA("An element must be of type `nodes` or `edges`; you specified `"+d+"`");this.length=1,this[0]=this;var e=this._private={cy:a,single:!0,data:b.data||{},position:b.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:d,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:!!b.selected,selectable:void 0===b.selectable||!!b.selectable,locked:!!b.locked,grabbed:!1,grabbable:void 0===b.grabbable||!!b.grabbable,pannable:void 0===b.pannable?"edges"===d:!!b.pannable,active:!1,classes:new aQ,animation:{current:[],queue:[]},rscratch:{},scratch:b.scratch||{},edges:[],children:[],parent:b.parent&&b.parent.isNode()?b.parent:null,traversalCache:{},backgrounding:!1,bbCache:null,bbCacheShift:{x:0,y:0},bodyBounds:null,overlayBounds:null,labelBounds:{all:null,source:null,target:null,main:null},arrowBounds:{source:null,target:null,"mid-source":null,"mid-target":null}};if(null==e.position.x&&(e.position.x=0),null==e.position.y&&(e.position.y=0),b.renderedPosition){var f=b.renderedPosition,g=a.pan(),h=a.zoom();e.position={x:(f.x-g.x)/h,y:(f.y-g.y)/h}}var i=[];v(b.classes)?i=b.classes:t(b.classes)&&(i=b.classes.split(/\s+/));for(var j=0,k=i.length;j<k;j++){var l=i[j];l&&""!==l&&e.classes.add(l)}this.createEmitter(),(void 0===c||c)&&this.restore();var n=b.style||b.css;n&&(aC("Setting a `style` bypass at element creation should be done only when absolutely necessary. Try to use the stylesheet instead."),this.style(n))},aS=function(a){return a={bfs:a.bfs||!a.dfs,dfs:a.dfs||!a.bfs},function(b,c,d){w(b)&&!z(b)&&(b=(e=b).roots||e.root,c=e.visit,d=e.directed),d=2!=arguments.length||u(c)?d:c,c=u(c)?c:function(){};for(var e,f,g,h=this._private.cy,i=b=t(b)?this.filter(b):b,j=[],k=[],l={},n={},o={},p=0,q=this.byGroup(),r=q.nodes,s=q.edges,v=0;v<i.length;v++){var x=i[v],y=x.id();x.isNode()&&(j.unshift(x),a.bfs&&(o[y]=!0,k.push(x)),n[y]=0)}for(;0!==j.length&&(0===(g=function(){var b,e=a.bfs?j.shift():j.pop(),g=e.id();if(a.dfs){if(o[g])return 0;o[g]=!0,k.push(e)}var h=n[g],i=l[g],q=null!=i?i.source():null,t=null!=i?i.target():null,u=null==i?void 0:e.same(q)?t[0]:q[0];if(!0===(b=c(e,i,u,p++,h)))return f=e,1;if(!1===b)return 1;for(var v=e.connectedEdges().filter(function(a){return(!d||a.source().same(e))&&s.has(a)}),w=0;w<v.length;w++){var x=v[w],y=x.connectedNodes().filter(function(a){return!a.same(e)&&r.has(a)}),z=y.id();0===y.length||o[z]||(y=y[0],j.push(y),a.bfs&&(o[z]=!0,k.push(y)),l[z]=x,n[z]=n[g]+1)}}())||1!==g););for(var A=h.collection(),B=0;B<k.length;B++){var C=k[B],D=l[C.id()];null!=D&&A.push(D),A.push(C)}return{path:h.collection(A),found:h.collection(f)}}},aT={breadthFirstSearch:aS({bfs:!0}),depthFirstSearch:aS({dfs:!0})};aT.bfs=aT.breadthFirstSearch,aT.dfs=aT.depthFirstSearch;var aU={exports:{}},aV=aU.exports,aW=_(gz?gy:(gz=1,gy=function(){return gx?aU.exports:(gx=1,(function(){var a,b,c,d,e,f,g,h,i,j,k,l,n,o,p;c=Math.floor,j=Math.min,b=function(a,b){return a<b?-1:+(a>b)},i=function(a,d,e,f,g){var h;if(null==e&&(e=0),null==g&&(g=b),e<0)throw Error("lo must be non-negative");for(null==f&&(f=a.length);e<f;)0>g(d,a[h=c((e+f)/2)])?f=h:e=h+1;return[].splice.apply(a,[e,e-e].concat(d)),d},f=function(a,c,d){return null==d&&(d=b),a.push(c),o(a,0,a.length-1,d)},e=function(a,c){var d,e;return null==c&&(c=b),d=a.pop(),a.length?(e=a[0],a[0]=d,p(a,0,c)):e=d,e},h=function(a,c,d){var e;return null==d&&(d=b),e=a[0],a[0]=c,p(a,0,d),e},g=function(a,c,d){var e;return null==d&&(d=b),a.length&&0>d(a[0],c)&&(c=(e=[a[0],c])[0],a[0]=e[1],p(a,0,d)),c},d=function(a,d){var e,f,g,h,i,j;for(null==d&&(d=b),h=(function(){j=[];for(var b=0,d=c(a.length/2);0<=d?b<d:b>d;0<=d?b++:b--)j.push(b);return j}).apply(this).reverse(),i=[],f=0,g=h.length;f<g;f++)e=h[f],i.push(p(a,e,d));return i},n=function(a,c,d){var e;if(null==d&&(d=b),-1!==(e=a.indexOf(c)))return o(a,0,e,d),p(a,e,d)},k=function(a,c,e){var f,h,i,j;if(null==e&&(e=b),!(f=a.slice(0,c)).length)return f;for(d(f,e),h=0,i=(j=a.slice(c)).length;h<i;h++)g(f,j[h],e);return f.sort(e).reverse()},l=function(a,c,f){var g,h,k,l,n,o,p,q,r;if(null==f&&(f=b),10*c<=a.length){if(!(k=a.slice(0,c).sort(f)).length)return k;for(l=0,h=k[k.length-1],o=(p=a.slice(c)).length;l<o;l++)0>f(g=p[l],h)&&(i(k,g,0,null,f),k.pop(),h=k[k.length-1]);return k}for(d(a,f),r=[],n=0,q=j(c,a.length);0<=q?n<q:n>q;0<=q?++n:--n)r.push(e(a,f));return r},o=function(a,c,d,e){var f,g,h;for(null==e&&(e=b),f=a[d];d>c;){if(0>e(f,g=a[h=d-1>>1])){a[d]=g,d=h;continue}break}return a[d]=f},p=function(a,c,d){var e,f,g,h,i;for(null==d&&(d=b),f=a.length,i=c,g=a[c],e=2*c+1;e<f;)(h=e+1)<f&&!(0>d(a[e],a[h]))&&(e=h),a[c]=a[e],e=2*(c=e)+1;return a[c]=g,o(a,i,c,d)},a=function(){function a(a){this.cmp=null!=a?a:b,this.nodes=[]}return a.push=f,a.pop=e,a.replace=h,a.pushpop=g,a.heapify=d,a.updateItem=n,a.nlargest=k,a.nsmallest=l,a.prototype.push=function(a){return f(this.nodes,a,this.cmp)},a.prototype.pop=function(){return e(this.nodes,this.cmp)},a.prototype.peek=function(){return this.nodes[0]},a.prototype.contains=function(a){return -1!==this.nodes.indexOf(a)},a.prototype.replace=function(a){return h(this.nodes,a,this.cmp)},a.prototype.pushpop=function(a){return g(this.nodes,a,this.cmp)},a.prototype.heapify=function(){return d(this.nodes,this.cmp)},a.prototype.updateItem=function(a){return n(this.nodes,a,this.cmp)},a.prototype.clear=function(){return this.nodes=[]},a.prototype.empty=function(){return 0===this.nodes.length},a.prototype.size=function(){return this.nodes.length},a.prototype.clone=function(){var b;return(b=new a).nodes=this.nodes.slice(0),b},a.prototype.toArray=function(){return this.nodes.slice(0)},a.prototype.insert=a.prototype.push,a.prototype.top=a.prototype.peek,a.prototype.front=a.prototype.peek,a.prototype.has=a.prototype.contains,a.prototype.copy=a.prototype.clone,a}(),aU.exports=a}).call(aV),aU.exports)}())),aX=aH({root:null,weight:function(a){return 1},directed:!1}),aY=aH({root:null,goal:null,weight:function(a){return 1},heuristic:function(a){return 0},directed:!1}),aZ=aH({weight:function(a){return 1},directed:!1}),a$=aH({weight:function(a){return 1},directed:!1,root:null}),a_=Math.sqrt(2),a0=function(a,b,c){0===c.length&&aA("Karger-Stein must be run on a connected (sub)graph");for(var d=c[a],e=d[1],f=d[2],g=b[e],h=b[f],i=c.length-1;i>=0;i--){var j=c[i],k=j[1],l=j[2];(b[k]===g&&b[l]===h||b[k]===h&&b[l]===g)&&c.splice(i,1)}for(var n=0;n<c.length;n++){var o=c[n];o[1]===h?(c[n]=o.slice(),c[n][1]=g):o[2]===h&&(c[n]=o.slice(),c[n][2]=g)}for(var p=0;p<b.length;p++)b[p]===h&&(b[p]=g);return c},a1=function(a,b,c,d){for(;c>d;)b=a0(Math.floor(Math.random()*b.length),a,b),c--;return b},a2=function(a,b,c){return{x:a.x*b+c.x,y:a.y*b+c.y}},a3=function(a,b,c){return{x:(a.x-c.x)/b,y:(a.y-c.y)/b}},a4=function(a){return{x:a[0],y:a[1]}},a5=function(a){for(var b=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:a.length,d=1/0,e=b;e<c;e++){var f=a[e];isFinite(f)&&(d=Math.min(f,d))}return d},a6=function(a){for(var b=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:a.length,d=-1/0,e=b;e<c;e++){var f=a[e];isFinite(f)&&(d=Math.max(f,d))}return d},a7=function(a){for(var b=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:a.length,d=0,e=0,f=b;f<c;f++){var g=a[f];isFinite(g)&&(d+=g,e++)}return d/e},a8=function(a){var b=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:a.length,d=!(arguments.length>3)||void 0===arguments[3]||arguments[3],e=!(arguments.length>4)||void 0===arguments[4]||arguments[4],f=!(arguments.length>5)||void 0===arguments[5]||arguments[5];d?a=a.slice(b,c):(c<a.length&&a.splice(c,a.length-c),b>0&&a.splice(0,b));for(var g=0,h=a.length-1;h>=0;h--){var i=a[h];f?!isFinite(i)&&(a[h]=-1/0,g++):a.splice(h,1)}e&&a.sort(function(a,b){return a-b});var j=a.length,k=Math.floor(j/2);return j%2!=0?a[k+1+g]:(a[k-1+g]+a[k+g])/2},a9=function(a,b){return Math.atan2(b,a)-Math.PI/2},ba=Math.log2||function(a){return Math.log(a)/Math.log(2)},bb=function(a){return a>0?1:a<0?-1:0},bc=function(a,b){return Math.sqrt(bd(a,b))},bd=function(a,b){var c=b.x-a.x,d=b.y-a.y;return c*c+d*d},be=function(a){for(var b=a.length,c=0,d=0;d<b;d++)c+=a[d];for(var e=0;e<b;e++)a[e]=a[e]/c;return a},bf=function(a,b,c,d){return(1-d)*(1-d)*a+2*(1-d)*d*b+d*d*c},bg=function(a,b,c,d){return{x:bf(a.x,b.x,c.x,d),y:bf(a.y,b.y,c.y,d)}},bh=function(a,b,c,d){var e={x:b.x-a.x,y:b.y-a.y},f=bc(a,b),g={x:e.x/f,y:e.y/f};return c=null==c?0:c,d=null!=d?d:c*f,{x:a.x+g.x*d,y:a.y+g.y*d}},bi=function(a,b,c){return Math.max(a,Math.min(c,b))},bj=function(a){if(null==a)return{x1:1/0,y1:1/0,x2:-1/0,y2:-1/0,w:0,h:0};if(null!=a.x1&&null!=a.y1){if(null!=a.x2&&null!=a.y2&&a.x2>=a.x1&&a.y2>=a.y1)return{x1:a.x1,y1:a.y1,x2:a.x2,y2:a.y2,w:a.x2-a.x1,h:a.y2-a.y1};else if(null!=a.w&&null!=a.h&&a.w>=0&&a.h>=0)return{x1:a.x1,y1:a.y1,x2:a.x1+a.w,y2:a.y1+a.h,w:a.w,h:a.h}}},bk=function(a){a.x1=1/0,a.y1=1/0,a.x2=-1/0,a.y2=-1/0,a.w=0,a.h=0},bl=function(a,b){a.x1=Math.min(a.x1,b.x1),a.x2=Math.max(a.x2,b.x2),a.w=a.x2-a.x1,a.y1=Math.min(a.y1,b.y1),a.y2=Math.max(a.y2,b.y2),a.h=a.y2-a.y1},bm=function(a,b,c){a.x1=Math.min(a.x1,b),a.x2=Math.max(a.x2,b),a.w=a.x2-a.x1,a.y1=Math.min(a.y1,c),a.y2=Math.max(a.y2,c),a.h=a.y2-a.y1},bn=function(a){var b=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return a.x1-=b,a.x2+=b,a.y1-=b,a.y2+=b,a.w=a.x2-a.x1,a.h=a.y2-a.y1,a},bo=function(a){var b,c,d,e,f=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[0];if(1===f.length)b=c=d=e=f[0];else if(2===f.length)b=d=f[0],e=c=f[1];else if(4===f.length){var g=i(f,4);b=g[0],c=g[1],d=g[2],e=g[3]}return a.x1-=e,a.x2+=c,a.y1-=b,a.y2+=d,a.w=a.x2-a.x1,a.h=a.y2-a.y1,a},bp=function(a,b){a.x1=b.x1,a.y1=b.y1,a.x2=b.x2,a.y2=b.y2,a.w=a.x2-a.x1,a.h=a.y2-a.y1},bq=function(a,b){return!(a.x1>b.x2)&&!(b.x1>a.x2)&&!(a.x2<b.x1)&&!(b.x2<a.x1)&&!(a.y2<b.y1)&&!(b.y2<a.y1)&&!(a.y1>b.y2)&&!(b.y1>a.y2)&&!0},br=function(a,b,c){return a.x1<=b&&b<=a.x2&&a.y1<=c&&c<=a.y2},bs=function(a,b){return br(a,b.x,b.y)},bt=function(a,b){return br(a,b.x1,b.y1)&&br(a,b.x2,b.y2)},bu=null!=(gA=Math.hypot)?gA:function(a,b){return Math.sqrt(a*a+b*b)},bv=function(a,b,c,d,e,f,g){var h,i,j=arguments.length>7&&void 0!==arguments[7]?arguments[7]:"auto",k="auto"===j?bT(e,f):j,l=e/2,n=f/2,o=(k=Math.min(k,l,n))!==l,p=k!==n;if(o){var q=c-l+k-g,r=d-n-g,s=c+l-k+g;if((h=bL(a,b,c,d,q,r,s,r,!1)).length>0)return h}if(p){var t=c+l+g,u=d-n+k-g,v=d+n-k+g;if((h=bL(a,b,c,d,t,u,t,v,!1)).length>0)return h}if(o){var w=c-l+k-g,x=d+n+g,y=c+l-k+g;if((h=bL(a,b,c,d,w,x,y,x,!1)).length>0)return h}if(p){var z=c-l-g,A=d-n+k-g,B=d+n-k+g;if((h=bL(a,b,c,d,z,A,z,B,!1)).length>0)return h}var C=c-l+k,D=d-n+k;if((i=bJ(a,b,c,d,C,D,k+g)).length>0&&i[0]<=C&&i[1]<=D)return[i[0],i[1]];var E=c+l-k,F=d-n+k;if((i=bJ(a,b,c,d,E,F,k+g)).length>0&&i[0]>=E&&i[1]<=F)return[i[0],i[1]];var G=c+l-k,H=d+n-k;if((i=bJ(a,b,c,d,G,H,k+g)).length>0&&i[0]>=G&&i[1]>=H)return[i[0],i[1]];var I=c-l+k,J=d+n-k;return(i=bJ(a,b,c,d,I,J,k+g)).length>0&&i[0]<=I&&i[1]>=J?[i[0],i[1]]:[]},bw=function(a,b,c,d,e,f,g){var h=Math.min(c,e),i=Math.max(c,e),j=Math.min(d,f),k=Math.max(d,f);return h-g<=a&&a<=i+g&&j-g<=b&&b<=k+g},bx=function(a,b,c,d,e,f,g,h,i){var j={x1:Math.min(c,g,e)-i,x2:Math.max(c,g,e)+i,y1:Math.min(d,h,f)-i,y2:Math.max(d,h,f)+i};return!(a<j.x1)&&!(a>j.x2)&&!(b<j.y1)&&!(b>j.y2)},by=function(a,b,c,d){var e=b*b-4*a*(c-=d);if(e<0)return[];var f=Math.sqrt(e),g=2*a;return[(-b+f)/g,(-b-f)/g]},bz=function(a,b,c,d,e){var f,g,h,i,j,k,l,n;if(0===a&&(a=1e-5),b/=a,c/=a,d/=a,f=(g=(3*c-b*b)/9)*g*g+(h=(-(27*d)+b*(9*c-b*b*2))/54)*h,e[1]=0,l=b/3,f>0){j=(j=h+Math.sqrt(f))<0?-Math.pow(-j,1/3):Math.pow(j,1/3),k=(k=h-Math.sqrt(f))<0?-Math.pow(-k,1/3):Math.pow(k,1/3),e[0]=-l+j+k,l+=(j+k)/2,e[4]=e[2]=-l,l=Math.sqrt(3)*(-k+j)/2,e[3]=l,e[5]=-l;return}if(e[5]=e[3]=0,0===f){n=h<0?-Math.pow(-h,1/3):Math.pow(h,1/3),e[0]=-l+2*n,e[4]=e[2]=-(n+l);return}i=Math.acos(h/Math.sqrt(i=(g=-g)*g*g)),n=2*Math.sqrt(g),e[0]=-l+n*Math.cos(i/3),e[2]=-l+n*Math.cos((i+2*Math.PI)/3),e[4]=-l+n*Math.cos((i+4*Math.PI)/3)},bA=function(a,b,c,d,e,f,g,h){var i,j=[];bz(c*c-4*c*e+2*c*g+4*e*e-4*e*g+g*g+d*d-4*d*f+2*d*h+4*f*f-4*f*h+h*h,9*c*e-3*c*c-3*c*g-6*e*e+3*e*g+9*d*f-3*d*d-3*d*h-6*f*f+3*f*h,3*c*c-6*c*e+c*g-c*a+2*e*e+2*e*a-g*a+3*d*d-6*d*f+d*h-d*b+2*f*f+2*f*b-h*b,c*e-c*c+c*a-e*a+d*f-d*d+d*b-f*b,j);for(var k=[],l=0;l<6;l+=2)1e-7>Math.abs(j[l+1])&&j[l]>=0&&j[l]<=1&&k.push(j[l]);k.push(1),k.push(0);for(var n=-1,o=0;o<k.length;o++)i=Math.pow(Math.pow(1-k[o],2)*c+2*(1-k[o])*k[o]*e+k[o]*k[o]*g-a,2)+Math.pow(Math.pow(1-k[o],2)*d+2*(1-k[o])*k[o]*f+k[o]*k[o]*h-b,2),n>=0?i<n&&(n=i):n=i;return n},bB=function(a,b,c,d,e,f){var g=[a-c,b-d],h=[e-c,f-d],i=h[0]*h[0]+h[1]*h[1],j=g[0]*g[0]+g[1]*g[1],k=g[0]*h[0]+g[1]*h[1],l=k*k/i;return k<0?j:l>i?(a-e)*(a-e)+(b-f)*(b-f):j-l},bC=function(a,b,c){for(var d,e,f,g,h=0,i=0;i<c.length/2;i++)if(d=c[2*i],e=c[2*i+1],i+1<c.length/2?(f=c[(i+1)*2],g=c[(i+1)*2+1]):(f=c[(i+1-c.length/2)*2],g=c[(i+1-c.length/2)*2+1]),d==a&&f==a);else{if((!(d>=a)||!(a>=f))&&(!(d<=a)||!(a<=f)))continue;(a-d)/(f-d)*(g-e)+e>b&&h++}return h%2!=0},bD=function(a,b,c,d,e,f,g,h,i){var j,k=Array(c.length);null!=h[0]?(j=Math.atan(h[1]/h[0]),h[0]<0?j+=Math.PI/2:j=-j-Math.PI/2):j=h;for(var l=Math.cos(-j),n=Math.sin(-j),o=0;o<k.length/2;o++)k[2*o]=f/2*(c[2*o]*l-c[2*o+1]*n),k[2*o+1]=g/2*(c[2*o+1]*l+c[2*o]*n),k[2*o]+=d,k[2*o+1]+=e;return bC(a,b,i>0?bF(bG(k,-i)):k)},bE=function(a,b,c,d,e,f,g,h){for(var i=Array(2*c.length),j=0;j<h.length;j++){var k=h[j];if(i[4*j+0]=k.startX,i[4*j+1]=k.startY,i[4*j+2]=k.stopX,i[4*j+3]=k.stopY,Math.pow(k.cx-a,2)+Math.pow(k.cy-b,2)<=Math.pow(k.radius,2))return!0}return bC(a,b,i)},bF=function(a){for(var b,c,d,e,f,g,h,i,j=Array(a.length/2),k=0;k<a.length/4;k++){b=a[4*k],c=a[4*k+1],d=a[4*k+2],e=a[4*k+3],k<a.length/4-1?(f=a[(k+1)*4],g=a[(k+1)*4+1],h=a[(k+1)*4+2],i=a[(k+1)*4+3]):(f=a[0],g=a[1],h=a[2],i=a[3]);var l=bL(b,c,d,e,f,g,h,i,!0);j[2*k]=l[0],j[2*k+1]=l[1]}return j},bG=function(a,b){for(var c,d,e,f,g=Array(2*a.length),h=0;h<a.length/2;h++){c=a[2*h],d=a[2*h+1],h<a.length/2-1?(e=a[(h+1)*2],f=a[(h+1)*2+1]):(e=a[0],f=a[1]);var i=f-d,j=-(e-c),k=Math.sqrt(i*i+j*j),l=i/k,n=j/k;g[4*h]=c+l*b,g[4*h+1]=d+n*b,g[4*h+2]=e+l*b,g[4*h+3]=f+n*b}return g},bH=function(a,b,c,d,e,f){var g=c-a,h=d-b,i=Math.sqrt((g/=e)*g+(h/=f)*h),j=i-1;if(j<0)return[];var k=j/i;return[(c-a)*k+a,(d-b)*k+b]},bI=function(a,b,c,d,e,f,g){return a-=e,b-=f,(a/=c/2+g)*a+(b/=d/2+g)*b<=1},bJ=function(a,b,c,d,e,f,g){var h=[c-a,d-b],i=[a-e,b-f],j=h[0]*h[0]+h[1]*h[1],k=2*(i[0]*h[0]+i[1]*h[1]),l=k*k-4*j*(i[0]*i[0]+i[1]*i[1]-g*g);if(l<0)return[];var n=(-k+Math.sqrt(l))/(2*j),o=(-k-Math.sqrt(l))/(2*j),p=Math.min(n,o),q=Math.max(n,o),r=[];if(p>=0&&p<=1&&r.push(p),q>=0&&q<=1&&r.push(q),0===r.length)return[];var s=r[0]*h[0]+a,t=r[0]*h[1]+b;return r.length>1?r[0]==r[1]?[s,t]:[s,t,r[1]*h[0]+a,r[1]*h[1]+b]:[s,t]},bK=function(a,b,c){return b<=a&&a<=c||c<=a&&a<=b?a:a<=b&&b<=c||c<=b&&b<=a?b:c},bL=function(a,b,c,d,e,f,g,h,i){var j=a-e,k=c-a,l=g-e,n=b-f,o=d-b,p=h-f,q=l*n-p*j,r=k*n-o*j,s=p*k-l*o;if(0!==s){var t=q/s,u=r/s;return -.001<=t&&t<=1.001&&-.001<=u&&u<=1.001||i?[a+t*k,b+t*o]:[]}return 0!==q&&0!==r?[]:bK(a,c,g)===g?[g,h]:bK(a,c,e)===e?[e,f]:bK(e,g,c)===c?[c,d]:[]},bM=function(a,b,c,d,e){var f=[],g=d/2,h=e/2;f.push({x:b+g*a[0],y:c+h*a[1]});for(var i=1;i<a.length/2;i++)f.push({x:b+g*a[2*i],y:c+h*a[2*i+1]});return f},bN=function(a,b,c,d,e,f,g,h){var i,j,k,l,n,o,p=[],q=Array(c.length),r=!0;if(null==f&&(r=!1),r){for(var s=0;s<q.length/2;s++)q[2*s]=c[2*s]*f+d,q[2*s+1]=c[2*s+1]*g+e;j=h>0?bF(bG(q,-h)):q}else j=c;for(var t=0;t<j.length/2;t++)k=j[2*t],l=j[2*t+1],t<j.length/2-1?(n=j[(t+1)*2],o=j[(t+1)*2+1]):(n=j[0],o=j[1]),0!==(i=bL(a,b,d,e,k,l,n,o)).length&&p.push(i[0],i[1]);return p},bO=function(a,b,c,d,e,f,g,h,i){var j,k=[],l=Array(2*c.length);i.forEach(function(c,f){0===f?(l[l.length-2]=c.startX,l[l.length-1]=c.startY):(l[4*f-2]=c.startX,l[4*f-1]=c.startY),l[4*f]=c.stopX,l[4*f+1]=c.stopY,0!==(j=bJ(a,b,d,e,c.cx,c.cy,c.radius)).length&&k.push(j[0],j[1])});for(var n=0;n<l.length/4;n++)0!==(j=bL(a,b,d,e,l[4*n],l[4*n+1],l[4*n+2],l[4*n+3],!1)).length&&k.push(j[0],j[1]);if(k.length>2){for(var o=[k[0],k[1]],p=Math.pow(o[0]-a,2)+Math.pow(o[1]-b,2),q=1;q<k.length/2;q++){var r=Math.pow(k[2*q]-a,2)+Math.pow(k[2*q+1]-b,2);r<=p&&(o[0]=k[2*q],o[1]=k[2*q+1],p=r)}return o}return k},bP=function(a,b,c){var d=[a[0]-b[0],a[1]-b[1]],e=Math.sqrt(d[0]*d[0]+d[1]*d[1]),f=(e-c)/e;return f<0&&(f=1e-5),[b[0]+f*d[0],b[1]+f*d[1]]},bQ=function(a,b){var c=bS(a,b);return bR(c)},bR=function(a){for(var b,c,d=a.length/2,e=1/0,f=1/0,g=-1/0,h=-1/0,i=0;i<d;i++)b=a[2*i],c=a[2*i+1],e=Math.min(e,b),g=Math.max(g,b),f=Math.min(f,c),h=Math.max(h,c);for(var j=2/(g-e),k=2/(h-f),l=0;l<d;l++)b=a[2*l]=a[2*l]*j,c=a[2*l+1]=a[2*l+1]*k,e=Math.min(e,b),g=Math.max(g,b),f=Math.min(f,c),h=Math.max(h,c);if(f<-1)for(var n=0;n<d;n++)c=a[2*n+1]=a[2*n+1]+(-1-f);return a},bS=function(a,b){var c,d=1/a*2*Math.PI,e=a%2==0?Math.PI/2+d/2:Math.PI/2;e+=b;for(var f=Array(2*a),g=0;g<a;g++)c=g*d+e,f[2*g]=Math.cos(c),f[2*g+1]=Math.sin(-c);return f},bT=function(a,b){return Math.min(a/4,b/4,8)},bU=function(a,b){return Math.min(a/10,b/10,8)},bV=function(){return 8},bW=function(a,b){return{heightOffset:Math.min(15,.05*b),widthOffset:Math.min(100,.25*a),ctrlPtOffsetPct:.05}};function bX(a,b){function c(a){for(var b=[],c=0;c<a.length;c++){var d=a[c],e=a[(c+1)%a.length],f={x:e.x-d.x,y:e.y-d.y},g={x:-f.y,y:f.x},h=Math.sqrt(g.x*g.x+g.y*g.y);b.push({x:g.x/h,y:g.y/h})}return b}function d(a,b){var c,d=1/0,e=-1/0,f=g(a);try{for(f.s();!(c=f.n()).done;){var h=c.value,i=h.x*b.x+h.y*b.y;d=Math.min(d,i),e=Math.max(e,i)}}catch(a){f.e(a)}finally{f.f()}return{min:d,max:e}}var e,f=g([].concat(j(c(a)),j(c(b))));try{for(f.s();!(e=f.n()).done;){var h=e.value,i=d(a,h),k=d(b,h);if(i.max<k.min||k.max<i.min)return!1}}catch(a){f.e(a)}finally{f.f()}return!0}var bY=aH({dampingFactor:.8,precision:1e-6,iterations:200,weight:function(a){return 1}}),bZ=aH({root:null,weight:function(a){return 1},directed:!1,alpha:0}),b$={degreeCentralityNormalized:function(a){a=bZ(a);var b=this.cy(),c=this.nodes(),d=c.length;if(a.directed){for(var e={},f={},g=0,h=0,i=0;i<d;i++){var j=c[i],k=j.id();a.root=j;var l=this.degreeCentrality(a);g<l.indegree&&(g=l.indegree),h<l.outdegree&&(h=l.outdegree),e[k]=l.indegree,f[k]=l.outdegree}return{indegree:function(a){return 0==g?0:(t(a)&&(a=b.filter(a)),e[a.id()]/g)},outdegree:function(a){return 0===h?0:(t(a)&&(a=b.filter(a)),f[a.id()]/h)}}}for(var n={},o=0,p=0;p<d;p++){var q=c[p];a.root=q;var r=this.degreeCentrality(a);o<r.degree&&(o=r.degree),n[q.id()]=r.degree}return{degree:function(a){return 0===o?0:(t(a)&&(a=b.filter(a)),n[a.id()]/o)}}},degreeCentrality:function(a){a=bZ(a);var b=this.cy(),c=this,d=a,e=d.root,f=d.weight,g=d.directed,h=d.alpha;if(e=b.collection(e)[0],g){for(var i=e.connectedEdges(),j=i.filter(function(a){return a.target().same(e)&&c.has(a)}),k=i.filter(function(a){return a.source().same(e)&&c.has(a)}),l=j.length,n=k.length,o=0,p=0,q=0;q<j.length;q++)o+=f(j[q]);for(var r=0;r<k.length;r++)p+=f(k[r]);return{indegree:Math.pow(l,1-h)*Math.pow(o,h),outdegree:Math.pow(n,1-h)*Math.pow(p,h)}}for(var s=e.connectedEdges().intersection(c),t=s.length,u=0,v=0;v<s.length;v++)u+=f(s[v]);return{degree:Math.pow(t,1-h)*Math.pow(u,h)}}};b$.dc=b$.degreeCentrality,b$.dcn=b$.degreeCentralityNormalised=b$.degreeCentralityNormalized;var b_=aH({harmonic:!0,weight:function(){return 1},directed:!1,root:null}),b0={closenessCentralityNormalized:function(a){for(var b=b_(a),c=b.harmonic,d=b.weight,e=b.directed,f=this.cy(),g={},h=0,i=this.nodes(),j=this.floydWarshall({weight:d,directed:e}),k=0;k<i.length;k++){for(var l=0,n=i[k],o=0;o<i.length;o++)if(k!==o){var p=j.distance(n,i[o]);c?l+=1/p:l+=p}c||(l=1/l),h<l&&(h=l),g[n.id()]=l}return{closeness:function(a){return 0==h?0:g[a=t(a)?f.filter(a)[0].id():a.id()]/h}}},closenessCentrality:function(a){var b=b_(a),c=b.root,d=b.weight,e=b.directed,f=b.harmonic;c=this.filter(c)[0];for(var g=this.dijkstra({root:c,weight:d,directed:e}),h=0,i=this.nodes(),j=0;j<i.length;j++){var k=i[j];if(!k.same(c)){var l=g.distanceTo(k);f?h+=1/l:h+=l}}return f?h:1/h}};b0.cc=b0.closenessCentrality,b0.ccn=b0.closenessCentralityNormalised=b0.closenessCentralityNormalized;var b1=aH({weight:null,directed:!1}),b2={betweennessCentrality:function(a){for(var b=b1(a),c=b.directed,d=b.weight,e=null!=d,f=this.cy(),g=this.nodes(),h={},i={},j=0,k=function(a,b){i[a]=b,b>j&&(j=b)},l=function(a){return i[a]},n=0;n<g.length;n++){var o=g[n],p=o.id();c?h[p]=o.outgoers().nodes():h[p]=o.openNeighborhood().nodes(),k(p,0)}for(var q=0;q<g.length;q++)!function(){for(var a=g[q].id(),b=[],c={},i={},j={},n=new aW(function(a,b){return j[a]-j[b]}),o=0;o<g.length;o++){var p=g[o].id();c[p]=[],i[p]=0,j[p]=1/0}for(i[a]=1,j[a]=0,n.push(a);!n.empty();){var r=n.pop();if(b.push(r),e)for(var s=0;s<h[r].length;s++){var t=h[r][s],u=f.getElementById(r),v=d(u.edgesTo(t).length>0?u.edgesTo(t)[0]:t.edgesTo(u)[0]);j[t=t.id()]>j[r]+v&&(j[t]=j[r]+v,0>n.nodes.indexOf(t)?n.push(t):n.updateItem(t),i[t]=0,c[t]=[]),j[t]==j[r]+v&&(i[t]=i[t]+i[r],c[t].push(r))}else for(var w=0;w<h[r].length;w++){var x=h[r][w].id();j[x]==1/0&&(n.push(x),j[x]=j[r]+1),j[x]==j[r]+1&&(i[x]=i[x]+i[r],c[x].push(r))}}for(var y={},z=0;z<g.length;z++)y[g[z].id()]=0;for(;b.length>0;){for(var A=b.pop(),B=0;B<c[A].length;B++){var C=c[A][B];y[C]=y[C]+i[C]/i[A]*(1+y[A])}A!=g[q].id()&&k(A,l(A)+y[A])}}();var r={betweenness:function(a){return l(f.collection(a).id())},betweennessNormalized:function(a){return 0==j?0:l(f.collection(a).id())/j}};return r.betweennessNormalised=r.betweennessNormalized,r}};b2.bc=b2.betweennessCentrality;var b3=aH({expandFactor:2,inflateFactor:2,multFactor:1,maxIterations:20,attributes:[function(a){return 1}]}),b4=function(a,b){for(var c=0,d=0;d<b.length;d++)c+=b[d](a);return c},b5=function(a,b,c){for(var d=0;d<b;d++)a[d*b+d]=c},b6=function(a,b){for(var c,d=0;d<b;d++){c=0;for(var e=0;e<b;e++)c+=a[e*b+d];for(var f=0;f<b;f++)a[f*b+d]=a[f*b+d]/c}},b7=function(a,b,c){for(var d=Array(c*c),e=0;e<c;e++){for(var f=0;f<c;f++)d[e*c+f]=0;for(var g=0;g<c;g++)for(var h=0;h<c;h++)d[e*c+h]+=a[e*c+g]*b[g*c+h]}return d},b8=function(a,b,c){for(var d=a.slice(0),e=1;e<c;e++)a=b7(a,d,b);return a},b9=function(a,b,c){for(var d=Array(b*b),e=0;e<b*b;e++)d[e]=Math.pow(a[e],c);return b6(d,b),d},ca=function(a,b,c,d){for(var e=0;e<c;e++)if(Math.round(a[e]*Math.pow(10,d))/Math.pow(10,d)!=Math.round(b[e]*Math.pow(10,d))/Math.pow(10,d))return!1;return!0},cb=function(a,b,c,d){for(var e=[],f=0;f<b;f++){for(var g=[],h=0;h<b;h++)Math.round(1e3*a[f*b+h])/1e3>0&&g.push(c[h]);0!==g.length&&e.push(d.collection(g))}return e},cc=function(a,b){for(var c=0;c<a.length;c++)if(!b[c]||a[c].id()!==b[c].id())return!1;return!0},cd=function(a){for(var b=0;b<a.length;b++)for(var c=0;c<a.length;c++)b!=c&&cc(a[b],a[c])&&a.splice(c,1);return a},ce=function(a){for(var b=this.nodes(),c=this.edges(),d=this.cy(),e=b3(a),f={},g=0;g<b.length;g++)f[b[g].id()]=g;for(var h,i=b.length,j=i*i,k=Array(j),l=0;l<j;l++)k[l]=0;for(var n=0;n<c.length;n++){var o=c[n],p=f[o.source().id()],q=f[o.target().id()],r=b4(o,e.attributes);k[p*i+q]+=r,k[q*i+p]+=r}b5(k,i,e.multFactor),b6(k,i);for(var s=!0,t=0;s&&t<e.maxIterations;)s=!1,ca(k=b9(h=b8(k,i,e.expandFactor),i,e.inflateFactor),h,j,4)||(s=!0),t++;var u=cb(k,i,b,d);return cd(u)},cf=function(a){return a},cg=function(a,b){return Math.abs(b-a)},ch=function(a,b,c){return a+cg(b,c)},ci=function(a,b,c){return a+Math.pow(c-b,2)},cj=function(a){return Math.sqrt(a)},ck=function(a,b,c){return Math.max(a,cg(b,c))},cl=function(a,b,c,d,e){for(var f=arguments.length>5&&void 0!==arguments[5]?arguments[5]:cf,g=d,h=0;h<a;h++)g=e(g,b(h),c(h));return f(g)},cm={euclidean:function(a,b,c){return a>=2?cl(a,b,c,0,ci,cj):cl(a,b,c,0,ch)},squaredEuclidean:function(a,b,c){return cl(a,b,c,0,ci)},manhattan:function(a,b,c){return cl(a,b,c,0,ch)},max:function(a,b,c){return cl(a,b,c,-1/0,ck)}};function cn(a,b,c,d,e,f){var g;return(g=u(a)?a:cm[a]||cm.euclidean,0===b&&u(a))?g(e,f):g(b,c,d,e,f)}cm["squared-euclidean"]=cm.squaredEuclidean,cm.squaredeuclidean=cm.squaredEuclidean;var co=aH({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),cp=function(a){return co(a)},cq=function(a,b,c,d,e){var f="kMedoids"!==e?function(a){return c[a]}:function(a){return d[a](c)};return cn(a,d.length,f,function(a){return d[a](b)},c,b)},cr=function(a,b,c){for(var d=c.length,e=Array(d),f=Array(d),g=Array(b),h=null,i=0;i<d;i++)e[i]=a.min(c[i]).value,f[i]=a.max(c[i]).value;for(var j=0;j<b;j++){h=[];for(var k=0;k<d;k++)h[k]=Math.random()*(f[k]-e[k])+e[k];g[j]=h}return g},cs=function(a,b,c,d,e){for(var f=1/0,g=0,h=0;h<b.length;h++){var i=cq(c,a,b[h],d,e);i<f&&(f=i,g=h)}return g},ct=function(a,b,c){for(var d=[],e=null,f=0;f<b.length;f++)c[(e=b[f]).id()]===a&&d.push(e);return d},cu=function(a,b,c){for(var d=0;d<a.length;d++)for(var e=0;e<a[d].length;e++)if(Math.abs(a[d][e]-b[d][e])>c)return!1;return!0},cv=function(a,b,c){for(var d=0;d<c;d++)if(a===b[d])return!0;return!1},cw=function(a,b){var c=Array(b);if(a.length<50)for(var d=0;d<b;d++){for(var e=a[Math.floor(Math.random()*a.length)];cv(e,c,d);)e=a[Math.floor(Math.random()*a.length)];c[d]=e}else for(var f=0;f<b;f++)c[f]=a[Math.floor(Math.random()*a.length)];return c},cx=function(a,b,c){for(var d=0,e=0;e<b.length;e++)d+=cq("manhattan",b[e],a,c,"kMedoids");return d},cy=function(a,b,c,d,e){for(var f,g,h=0;h<b.length;h++)for(var i=0;i<a.length;i++)d[h][i]=Math.pow(c[h][i],e.m);for(var j=0;j<a.length;j++)for(var k=0;k<e.attributes.length;k++){f=0,g=0;for(var l=0;l<b.length;l++)f+=d[l][j]*e.attributes[k](b[l]),g+=d[l][j];a[j][k]=f/g}},cz=function(a,b,c,d,e){for(var f,g=0;g<a.length;g++)b[g]=a[g].slice();for(var h=2/(e.m-1),i=0;i<c.length;i++)for(var j=0;j<d.length;j++){f=0;for(var k=0;k<c.length;k++)f+=Math.pow(cq(e.distance,d[j],c[i],e.attributes,"cmeans")/cq(e.distance,d[j],c[k],e.attributes,"cmeans"),h);a[j][i]=1/f}},cA=function(a,b,c,d){for(var e,f,g=Array(c.k),h=0;h<g.length;h++)g[h]=[];for(var i=0;i<b.length;i++){e=-1/0,f=-1;for(var j=0;j<b[0].length;j++)b[i][j]>e&&(e=b[i][j],f=j);g[f].push(a[i])}for(var k=0;k<g.length;k++)g[k]=d.collection(g[k]);return g},cB=function(a){var b,c,d,e,f=this.cy(),g=this.nodes(),h=cp(a);d=Array(g.length);for(var i=0;i<g.length;i++)d[i]=Array(h.k);c=Array(g.length);for(var j=0;j<g.length;j++)c[j]=Array(h.k);for(var k=0;k<g.length;k++){for(var l=0,n=0;n<h.k;n++)c[k][n]=Math.random(),l+=c[k][n];for(var o=0;o<h.k;o++)c[k][o]=c[k][o]/l}b=Array(h.k);for(var p=0;p<h.k;p++)b[p]=Array(h.attributes.length);e=Array(g.length);for(var q=0;q<g.length;q++)e[q]=Array(h.k);for(var r=!0,s=0;r&&s<h.maxIterations;)r=!1,cy(b,g,c,e,h),cz(c,d,b,g,h),cu(c,d,h.sensitivityThreshold)||(r=!0),s++;return{clusters:cA(g,c,h,f),degreeOfMembership:c}},cC=aH({distance:"euclidean",linkage:"min",mode:"threshold",threshold:1/0,addDendrogram:!1,dendrogramDepth:0,attributes:[]}),cD={single:"min",complete:"max"},cE=function(a){var b=cC(a),c=cD[b.linkage];return null!=c&&(b.linkage=c),b},cF=function(a,b,c,d,e){for(var f,g,h=0,i=1/0,j=e.attributes,k=function(a,b){return cn(e.distance,j.length,function(b){return j[b](a)},function(a){return j[a](b)},a,b)},l=0;l<a.length;l++){var n=a[l].key,o=c[n][d[n]];o<i&&(h=n,i=o)}if("threshold"===e.mode&&i>=e.threshold||"dendrogram"===e.mode&&1===a.length)return!1;var p=b[h],q=b[d[h]];g="dendrogram"===e.mode?{left:p,right:q,key:p.key}:{value:p.value.concat(q.value),key:p.key},a[p.index]=g,a.splice(q.index,1),b[p.key]=g;for(var r=0;r<a.length;r++){var s=a[r];p.key===s.key?f=1/0:"min"===e.linkage?(f=c[p.key][s.key],c[p.key][s.key]>c[q.key][s.key]&&(f=c[q.key][s.key])):"max"===e.linkage?(f=c[p.key][s.key],c[p.key][s.key]<c[q.key][s.key]&&(f=c[q.key][s.key])):f="mean"===e.linkage?(c[p.key][s.key]*p.size+c[q.key][s.key]*q.size)/(p.size+q.size):"dendrogram"===e.mode?k(s.value,p.value):k(s.value[0],p.value[0]),c[p.key][s.key]=c[s.key][p.key]=f}for(var t=0;t<a.length;t++){var u=a[t].key;if(d[u]===p.key||d[u]===q.key){for(var v=u,w=0;w<a.length;w++){var x=a[w].key;c[u][x]<c[u][v]&&(v=x)}d[u]=v}a[t].index=t}return p.key=q.key=p.index=q.index=null,!0},cG=function(a,b,c){a&&(a.value?b.push(a.value):(a.left&&cG(a.left,b),a.right&&cG(a.right,b)))},cH=function(a,b){if(!a)return"";if(a.left&&a.right){var c=cH(a.left,b),d=cH(a.right,b),e=b.add({group:"nodes",data:{id:c+","+d}});return b.add({group:"edges",data:{source:c,target:e.id()}}),b.add({group:"edges",data:{source:d,target:e.id()}}),e.id()}if(a.value)return a.value.id()},cI=function(a,b,c){if(!a)return[];var d=[],e=[],f=[];if(0===b)return a.left&&cG(a.left,d),a.right&&cG(a.right,e),f=d.concat(e),[c.collection(f)];if(1===b)if(a.value)return[c.collection(a.value)];else return a.left&&cG(a.left,d),a.right&&cG(a.right,e),[c.collection(d),c.collection(e)];return a.value?[c.collection(a.value)]:(a.left&&(d=cI(a.left,b-1,c)),a.right&&(e=cI(a.right,b-1,c)),d.concat(e))},cJ=function(a){for(var b,c=this.cy(),d=this.nodes(),e=cE(a),f=e.attributes,g=function(a,b){return cn(e.distance,f.length,function(b){return f[b](a)},function(a){return f[a](b)},a,b)},h=[],i=[],j=[],k=[],l=0;l<d.length;l++){var n={value:"dendrogram"===e.mode?d[l]:[d[l]],key:l,index:l};h[l]=n,k[l]=n,i[l]=[],j[l]=0}for(var o=0;o<h.length;o++)for(var p=0;p<=o;p++){var q=void 0;q="dendrogram"===e.mode?o===p?1/0:g(h[o].value,h[p].value):o===p?1/0:g(h[o].value[0],h[p].value[0]),i[o][p]=q,i[p][o]=q,q<i[o][j[o]]&&(j[o]=p)}for(var r=cF(h,k,i,j,e);r;)r=cF(h,k,i,j,e);return"dendrogram"===e.mode?(b=cI(h[0],e.dendrogramDepth,c),e.addDendrogram&&cH(h[0],c)):(b=Array(h.length),h.forEach(function(a,d){a.key=a.index=null,b[d]=c.collection(a.value)})),b},cK=aH({distance:"euclidean",preference:"median",damping:.8,maxIterations:1e3,minIterations:100,attributes:[]}),cL=function(a){var b=a.damping,c=a.preference;.5<=b&&b<1||aA("Damping must range on [0.5, 1). Got: ".concat(b));var d=["median","mean","min","max"];return d.some(function(a){return a===c})||x(c)||aA("Preference must be one of [".concat(d.map(function(a){return"'".concat(a,"'")}).join(", "),"] or a number. Got: ").concat(c)),cK(a)},cM=function(a,b,c,d){var e=function(a,b){return d[b](a)};return-cn(a,d.length,function(a){return e(b,a)},function(a){return e(c,a)},b,c)},cN=function(a,b){return"median"===b?a8(a):"mean"===b?a7(a):"min"===b?a5(a):"max"===b?a6(a):b},cO=function(a,b,c){for(var d=[],e=0;e<a;e++)b[e*a+e]+c[e*a+e]>0&&d.push(e);return d},cP=function(a,b,c){for(var d=[],e=0;e<a;e++){for(var f=-1,g=-1/0,h=0;h<c.length;h++){var i=c[h];b[e*a+i]>g&&(f=i,g=b[e*a+i])}f>0&&d.push(f)}for(var j=0;j<c.length;j++)d[c[j]]=c[j];return d},cQ=function(a,b,c){for(var d=cP(a,b,c),e=0;e<c.length;e++){for(var f=[],g=0;g<d.length;g++)d[g]===c[e]&&f.push(g);for(var h=-1,i=-1/0,j=0;j<f.length;j++){for(var k=0,l=0;l<f.length;l++)k+=b[f[l]*a+f[j]];k>i&&(h=j,i=k)}c[e]=f[h]}return cP(a,b,c)},cR=function(a){for(var b,c,d,e,f,g,h,i=this.cy(),j=this.nodes(),k=cL(a),l={},n=0;n<j.length;n++)l[j[n].id()]=n;d=Array(c=(b=j.length)*b);for(var o=0;o<c;o++)d[o]=-1/0;for(var p=0;p<b;p++)for(var q=0;q<b;q++)p!==q&&(d[p*b+q]=cM(k.distance,j[p],j[q],k.attributes));e=cN(d,k.preference);for(var r=0;r<b;r++)d[r*b+r]=e;f=Array(c);for(var s=0;s<c;s++)f[s]=0;g=Array(c);for(var t=0;t<c;t++)g[t]=0;for(var u=Array(b),v=Array(b),w=Array(b),x=0;x<b;x++)u[x]=0,v[x]=0,w[x]=0;for(var y=Array(b*k.minIterations),z=0;z<y.length;z++)y[z]=0;for(h=0;h<k.maxIterations;h++){for(var A=0;A<b;A++){for(var B=-1/0,C=-1/0,D=-1,E=0,F=0;F<b;F++)u[F]=f[A*b+F],(E=g[A*b+F]+d[A*b+F])>=B?(C=B,B=E,D=F):E>C&&(C=E);for(var G=0;G<b;G++)f[A*b+G]=(1-k.damping)*(d[A*b+G]-B)+k.damping*u[G];f[A*b+D]=(1-k.damping)*(d[A*b+D]-C)+k.damping*u[D]}for(var H=0;H<b;H++){for(var I=0,J=0;J<b;J++)u[J]=g[J*b+H],v[J]=Math.max(0,f[J*b+H]),I+=v[J];I-=v[H],v[H]=f[H*b+H],I+=v[H];for(var K=0;K<b;K++)g[K*b+H]=(1-k.damping)*Math.min(0,I-v[K])+k.damping*u[K];g[H*b+H]=(1-k.damping)*(I-v[H])+k.damping*u[H]}for(var L=0,M=0;M<b;M++){var N=+(g[M*b+M]+f[M*b+M]>0);y[h%k.minIterations*b+M]=N,L+=N}if(L>0&&(h>=k.minIterations-1||h==k.maxIterations-1)){for(var O=0,P=0;P<b;P++){w[P]=0;for(var Q=0;Q<k.minIterations;Q++)w[P]+=y[Q*b+P];(0===w[P]||w[P]===k.minIterations)&&O++}if(O===b)break}}for(var R=cO(b,f,g),S=cQ(b,d,R),T={},U=0;U<R.length;U++)T[R[U]]=[];for(var V=0;V<j.length;V++){var W=S[l[j[V].id()]];null!=W&&T[W].push(j[V])}for(var X=Array(R.length),Y=0;Y<R.length;Y++)X[Y]=i.collection(T[R[Y]]);return X},cS=aH({root:void 0,directed:!1}),cT=function(){var a=this,b={},c=0,d=0,e=[],f=[],g={},h=function(c,d){for(var g=f.length-1,h=[],i=a.spawn();f[g].x!=c||f[g].y!=d;)h.push(f.pop().edge),g--;h.push(f.pop().edge),h.forEach(function(c){var d=c.connectedNodes().intersection(a);i.merge(c),d.forEach(function(c){var d=c.id(),e=c.connectedEdges().intersection(a);i.merge(c),b[d].cutVertex?i.merge(e.filter(function(a){return a.isLoop()})):i.merge(e)})}),e.push(i)},i=function(j,k,l){j===l&&(d+=1),b[k]={id:c,low:c++,cutVertex:!1};var n,o,p,q,r=a.getElementById(k).connectedEdges().intersection(a);0===r.size()?e.push(a.spawn(a.getElementById(k))):r.forEach(function(a){n=a.source().id(),o=a.target().id(),(p=n===k?o:n)!==l&&(g[q=a.id()]||(g[q]=!0,f.push({x:k,y:p,edge:a})),p in b?b[k].low=Math.min(b[k].low,b[p].id):(i(j,p,k),b[k].low=Math.min(b[k].low,b[p].low),b[k].id<=b[p].low&&(b[k].cutVertex=!0,h(k,p))))})};a.forEach(function(a){if(a.isNode()){var c=a.id();c in b||(d=0,i(c,c),b[c].cutVertex=d>1)}});var j=Object.keys(b).filter(function(a){return b[a].cutVertex}).map(function(b){return a.getElementById(b)});return{cut:a.spawn(j),components:e}},cU=function(){var a=this,b={},c=0,d=[],e=[],f=a.spawn(a),g=function(h){if(e.push(h),b[h]={index:c,low:c++,explored:!1},a.getElementById(h).connectedEdges().intersection(a).forEach(function(a){var c=a.target().id();c!==h&&(c in b||g(c),b[c].explored||(b[h].low=Math.min(b[h].low,b[c].low)))}),b[h].index===b[h].low){for(var i=a.spawn();;){var j=e.pop();if(i.merge(a.getElementById(j)),b[j].low=b[h].index,b[j].explored=!0,j===h)break}var k=i.edgesWith(i),l=i.merge(k);d.push(l),f=f.difference(l)}};return a.forEach(function(a){if(a.isNode()){var c=a.id();c in b||g(c)}}),{cut:f,components:d}},cV={};[aT,{dijkstra:function(a){if(!w(a)){var b=arguments;a={root:b[0],weight:b[1],directed:b[2]}}var c=aX(a),d=c.root,e=c.weight,f=c.directed,g=this,h=t(d)?this.filter(d)[0]:d[0],i={},j={},k={},l=this.byGroup(),n=l.nodes,o=l.edges;o.unmergeBy(function(a){return a.isLoop()});for(var p=function(a){return i[a.id()]},q=new aW(function(a,b){return p(a)-p(b)}),r=0;r<n.length;r++){var s=n[r];i[s.id()]=s.same(h)?0:1/0,q.push(s)}for(;q.size()>0;){var u=q.pop(),v=p(u);if(k[u.id()]=v,v!==1/0)for(var x=u.neighborhood().intersect(n),y=0;y<x.length;y++){var z=x[y],A=z.id(),B=function(a,b){for(var c,d=(f?a.edgesTo(b):a.edgesWith(b)).intersect(o),g=1/0,h=0;h<d.length;h++){var i=d[h],j=e(i);(j<g||!c)&&(g=j,c=i)}return{edge:c,dist:g}}(u,z),C=v+B.dist;C<p(z)&&(i[z.id()]=C,q.updateItem(z),j[A]={node:u,edge:B.edge})}}return{distanceTo:function(a){return k[(t(a)?n.filter(a)[0]:a[0]).id()]},pathTo:function(a){var b=t(a)?n.filter(a)[0]:a[0],c=[],d=b,e=d.id();if(b.length>0)for(c.unshift(b);j[e];){var f=j[e];c.unshift(f.edge),c.unshift(f.node),e=(d=f.node).id()}return g.spawn(c)}}}},{kruskal:function(a){a=a||function(a){return 1};for(var b=this.byGroup(),c=b.nodes,d=b.edges,e=c.length,f=Array(e),g=function(a){for(var b=0;b<f.length;b++)if(f[b].has(a))return b},h=0;h<e;h++)f[h]=this.spawn(c[h]);for(var i=d.sort(function(b,c){return a(b)-a(c)}),j=0;j<i.length;j++){var k=i[j],l=k.source()[0],n=k.target()[0],o=g(l),p=g(n),q=f[o],r=f[p];o!==p&&(c.merge(k),q.merge(r),f.splice(p,1))}return c}},{aStar:function(a){var b,c,d=this.cy(),e=aY(a),f=e.root,g=e.goal,h=e.heuristic,i=e.directed,j=e.weight;f=d.collection(f)[0],g=d.collection(g)[0];var k=f.id(),l=g.id(),n={},o={},p={},q=new aW(function(a,b){return o[a.id()]-o[b.id()]}),r=new aQ,s={},t={},u=function(a,b){q.push(a),r.add(b)};u(f,k),n[k]=0,o[k]=h(f);for(var v=0;q.size()>0;){if(c=(b=q.pop()).id(),r.delete(c),v++,c===l){for(var w=[],x=g,y=l,z=t[y];w.unshift(x),null!=z&&w.unshift(z),null!=(x=s[y]);)z=t[y=x.id()];return{found:!0,distance:n[c],path:this.spawn(w),steps:v}}p[c]=!0;for(var A=b._private.edges,B=0;B<A.length;B++){var C=A[B];if(this.hasElementWithId(C.id())&&(!i||C.data("source")===c)){var D=C.source(),E=C.target(),F=D.id()!==c?D:E,G=F.id();if(this.hasElementWithId(G)&&!p[G]){var H=n[c]+j(C);if(!r.has(G)){n[G]=H,o[G]=H+h(F),u(F,G),s[G]=b,t[G]=C;continue}H<n[G]&&(n[G]=H,o[G]=H+h(F),s[G]=b,t[G]=C)}}}}return{found:!1,distance:void 0,path:void 0,steps:v}}},{floydWarshall:function(a){for(var b=this.cy(),c=aZ(a),d=c.weight,e=c.directed,f=this.byGroup(),g=f.nodes,h=f.edges,i=g.length,j=i*i,k=function(a){return g.indexOf(a)},l=function(a){return g[a]},n=Array(j),o=0;o<j;o++){var p=o%i;(o-p)/i===p?n[o]=0:n[o]=1/0}for(var q=Array(j),r=Array(j),s=0;s<h.length;s++){var u=h[s],v=u.source()[0],w=u.target()[0];if(v!==w){var x=k(v),y=k(w),z=x*i+y,A=d(u);if(n[z]>A&&(n[z]=A,q[z]=y,r[z]=u),!e){var B=y*i+x;!e&&n[B]>A&&(n[B]=A,q[B]=x,r[B]=u)}}}for(var C=0;C<i;C++)for(var D=0;D<i;D++)for(var E=D*i+C,F=0;F<i;F++){var G=D*i+F,H=C*i+F;n[E]+n[H]<n[G]&&(n[G]=n[E]+n[H],q[G]=q[E])}var I=function(a){return k((t(a)?b.filter(a):a)[0])};return{distance:function(a,b){return n[I(a)*i+I(b)]},path:function(a,c){var d,e=I(a),f=I(c),g=l(e);if(e===f)return g.collection();if(null==q[e*i+f])return b.collection();var h=b.collection(),j=e;for(h.merge(g);e!==f;)j=e,e=q[e*i+f],d=r[j*i+e],h.merge(d),h.merge(l(e));return h}}}},{bellmanFord:function(a){var b=this,c=a$(a),d=c.weight,e=c.directed,f=c.root,g=this,h=this.cy(),i=this.byGroup(),j=i.edges,k=i.nodes,l=k.length,n=new aO,o=!1,p=[];f=h.collection(f)[0],j.unmergeBy(function(a){return a.isLoop()});for(var q=j.length,r=function(a){var b=n.get(a.id());return b||(b={},n.set(a.id(),b)),b},s=function(a){return(t(a)?h.$(a):a)[0]},u=0;u<l;u++){var v=k[u],w=r(v);v.same(f)?w.dist=0:w.dist=1/0,w.pred=null,w.edge=null}for(var x=!1,y=function(a,b,c,d,e,f){var g=d.dist+f;g<e.dist&&!c.same(d.edge)&&(e.dist=g,e.pred=a,e.edge=c,x=!0)},z=1;z<l;z++){x=!1;for(var A=0;A<q;A++){var B=j[A],C=B.source(),D=B.target(),E=d(B),F=r(C),G=r(D);y(C,D,B,F,G,E),e||y(D,C,B,G,F,E)}if(!x)break}if(x)for(var H=[],I=0;I<q;I++){var J=j[I],K=J.source(),L=J.target(),M=d(J),N=r(K).dist,O=r(L).dist;if(N+M<O||!e&&O+M<N)if(o||(aC("Graph contains a negative weight cycle for Bellman-Ford"),o=!0),!1!==a.findNegativeWeightCycles){var P=[];N+M<O&&P.push(K),!e&&O+M<N&&P.push(L);for(var Q=P.length,R=0;R<Q;R++){var S=P[R],T=[S];T.push(r(S).edge);for(var U=r(S).pred;-1===T.indexOf(U);)T.push(U),T.push(r(U).edge),U=r(U).pred;for(var V=(T=T.slice(T.indexOf(U)))[0].id(),W=0,X=2;X<T.length;X+=2)T[X].id()<V&&(V=T[X].id(),W=X);(T=T.slice(W).concat(T.slice(0,W))).push(T[0]);var Y=T.map(function(a){return a.id()}).join(",");-1===H.indexOf(Y)&&(p.push(g.spawn(T)),H.push(Y))}}else break}return{distanceTo:function(a){return r(s(a)).dist},pathTo:function(a){for(var c=arguments.length>1&&void 0!==arguments[1]?arguments[1]:f,d=s(a),e=[],h=d;;){if(null==h)return b.spawn();var i=r(h),j=i.edge,k=i.pred;if(e.unshift(h[0]),h.same(c)&&e.length>0)break;null!=j&&e.unshift(j),h=k}return g.spawn(e)},hasNegativeWeightCycle:o,negativeWeightCycles:p}}},{kargerStein:function(){var a=this,b=this.byGroup(),c=b.nodes,d=b.edges;d.unmergeBy(function(a){return a.isLoop()});var e=c.length,f=d.length,g=Math.ceil(Math.pow(Math.log(e)/Math.LN2,2)),h=Math.floor(e/a_);if(e<2)return void aA("At least 2 nodes are required for Karger-Stein algorithm");for(var i=[],j=0;j<f;j++){var k=d[j];i.push([j,c.indexOf(k.source()),c.indexOf(k.target())])}for(var l=1/0,n=[],o=Array(e),p=Array(e),q=Array(e),r=function(a,b){for(var c=0;c<e;c++)b[c]=a[c]},s=0;s<=g;s++){for(var t=0;t<e;t++)p[t]=t;var u=a1(p,i.slice(),e,h),v=u.slice();r(p,q);var w=a1(p,u,h,2),x=a1(q,v,h,2);w.length<=x.length&&w.length<l?(l=w.length,n=w,r(p,o)):x.length<=w.length&&x.length<l&&(l=x.length,n=x,r(q,o))}for(var y=this.spawn(n.map(function(a){return d[a[0]]})),z=this.spawn(),A=this.spawn(),B=o[0],C=0;C<o.length;C++){var D=o[C],E=c[C];D===B?z.merge(E):A.merge(E)}var F=function(b){var c=a.spawn();return b.forEach(function(b){c.merge(b),b.connectedEdges().forEach(function(b){a.contains(b)&&!y.contains(b)&&c.merge(b)})}),c};return{cut:y,components:[F(z),F(A)],partition1:z,partition2:A}}},{pageRank:function(a){for(var b,c=bY(a),d=c.dampingFactor,e=c.precision,f=c.iterations,g=c.weight,h=this._private.cy,i=this.byGroup(),j=i.nodes,k=i.edges,l=j.length,n=l*l,o=k.length,p=Array(n),q=Array(l),r=(1-d)/l,s=0;s<l;s++){for(var t=0;t<l;t++)p[s*l+t]=0;q[s]=0}for(var u=0;u<o;u++){var v=k[u],w=v.data("source"),x=v.data("target");if(w!==x){var y=j.indexOfId(w),z=j.indexOfId(x),A=g(v),B=z*l+y;p[B]+=A,q[y]+=A}}for(var C=1/l+r,D=0;D<l;D++)if(0===q[D])for(var E=0;E<l;E++)p[E*l+D]=C;else for(var F=0;F<l;F++){var G=F*l+D;p[G]=p[G]/q[D]+r}for(var H=Array(l),I=Array(l),J=0;J<l;J++)H[J]=1;for(var K=0;K<f;K++){for(var L=0;L<l;L++)I[L]=0;for(var M=0;M<l;M++)for(var N=0;N<l;N++){var O=M*l+N;I[M]+=p[O]*H[N]}be(I),b=H,H=I,I=b;for(var P=0,Q=0;Q<l;Q++){var R=b[Q]-H[Q];P+=R*R}if(P<e)break}return{rank:function(a){return a=h.collection(a)[0],H[j.indexOf(a)]}}}},b$,b0,b2,{markovClustering:ce,mcl:ce},{kMeans:function(a){var b,c=this.cy(),d=this.nodes(),e=null,f=cp(a),g=Array(f.k),h={};f.testMode?"number"==typeof f.testCentroids?(f.testCentroids,b=cr(d,f.k,f.attributes)):b="object"===l(f.testCentroids)?f.testCentroids:cr(d,f.k,f.attributes):b=cr(d,f.k,f.attributes);for(var i=!0,j=0;i&&j<f.maxIterations;){for(var k=0;k<d.length;k++)h[(e=d[k]).id()]=cs(e,b,f.distance,f.attributes,"kMeans");i=!1;for(var n=0;n<f.k;n++){var o=ct(n,d,h);if(0!==o.length){for(var p=f.attributes.length,q=b[n],r=Array(p),s=Array(p),t=0;t<p;t++){s[t]=0;for(var u,v=0;v<o.length;v++)e=o[v],s[t]+=f.attributes[t](e);r[t]=s[t]/o.length,u=r[t],Math.abs(q[t]-u)<=f.sensitivityThreshold||(i=!0)}b[n]=r,g[n]=c.collection(o)}}j++}return g},kMedoids:function(a){var b,c,d=this.cy(),e=this.nodes(),f=null,g=cp(a),h=Array(g.k),i={},j=Array(g.k);g.testMode?"number"==typeof g.testCentroids||(b="object"===l(g.testCentroids)?g.testCentroids:cw(e,g.k)):b=cw(e,g.k);for(var k=!0,n=0;k&&n<g.maxIterations;){for(var o=0;o<e.length;o++)i[(f=e[o]).id()]=cs(f,b,g.distance,g.attributes,"kMedoids");k=!1;for(var p=0;p<b.length;p++){var q=ct(p,e,i);if(0!==q.length){j[p]=cx(b[p],q,g.attributes);for(var r=0;r<q.length;r++)(c=cx(q[r],q,g.attributes))<j[p]&&(j[p]=c,b[p]=q[r],k=!0);h[p]=d.collection(q)}}n++}return h},fuzzyCMeans:cB,fcm:cB},{hierarchicalClustering:cJ,hca:cJ},{affinityPropagation:cR,ap:cR},{hierholzer:function(a){if(!w(a)){var b,c,d,e=arguments;a={root:e[0],directed:e[1]}}var f=cS(a),g=f.root,h=f.directed,i=!1;g&&(d=t(g)?this.filter(g)[0].id():g[0].id());var j={},k={};h?this.forEach(function(a){var d=a.id();if(a.isNode()){var e=a.indegree(!0),f=a.outdegree(!0),g=e-f,h=f-e;1==g?b?i=!0:b=d:1==h?c?i=!0:c=d:(h>1||g>1)&&(i=!0),j[d]=[],a.outgoers().forEach(function(a){a.isEdge()&&j[d].push(a.id())})}else k[d]=[void 0,a.target().id()]}):this.forEach(function(a){var d=a.id();a.isNode()?(a.degree(!0)%2&&(b?c?i=!0:c=d:b=d),j[d]=[],a.connectedEdges().forEach(function(a){return j[d].push(a.id())})):k[d]=[a.source().id(),a.target().id()]});var l={found:!1,trail:void 0};if(i)return l;if(c&&b)if(h){if(d&&c!=d)return l;d=c}else{if(d&&c!=d&&b!=d)return l;d||(d=c)}else d||(d=this[0].id());var n=function(a){for(var b,c,d,e=a,f=[a];j[e].length;)c=k[b=j[e].shift()][0],e!=(d=k[b][1])?(j[d]=j[d].filter(function(a){return a!=b}),e=d):h||e==c||(j[c]=j[c].filter(function(a){return a!=b}),e=c),f.unshift(b),f.unshift(e);return f},o=[],p=[];for(p=n(d);1!=p.length;)0==j[p[0]].length?(o.unshift(this.getElementById(p.shift())),o.unshift(this.getElementById(p.shift()))):p=n(p.shift()).concat(p);for(var q in o.unshift(this.getElementById(p.shift())),j)if(j[q].length)return l;return l.found=!0,l.trail=this.spawn(o,!0),l}},{hopcroftTarjanBiconnected:cT,htbc:cT,htb:cT,hopcroftTarjanBiconnectedComponents:cT},{tarjanStronglyConnected:cU,tsc:cU,tscc:cU,tarjanStronglyConnectedComponents:cU}].forEach(function(a){S(cV,a)});var cW=function(a){if(!(this instanceof cW))return new cW(a);this.id="Thenable/1.0.7",this.state=0,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},"function"==typeof a&&a.call(this,this.fulfill.bind(this),this.reject.bind(this))};cW.prototype={fulfill:function(a){return cX(this,1,"fulfillValue",a)},reject:function(a){return cX(this,2,"rejectReason",a)},then:function(a,b){var c=new cW;return this.onFulfilled.push(c$(a,c,"fulfill")),this.onRejected.push(c$(b,c,"reject")),cY(this),c.proxy}};var cX=function(a,b,c,d){return 0===a.state&&(a.state=b,a[c]=d,cY(a)),a},cY=function(a){1===a.state?cZ(a,"onFulfilled",a.fulfillValue):2===a.state&&cZ(a,"onRejected",a.rejectReason)},cZ=function(a,b,c){if(0!==a[b].length){var d=a[b];a[b]=[];var e=function(){for(var a=0;a<d.length;a++)d[a](c)};"function"==typeof setImmediate?setImmediate(e):setTimeout(e,0)}},c$=function(a,b,c){return function(d){if("function"!=typeof a)b[c].call(b,d);else{var e;try{e=a(d)}catch(a){b.reject(a);return}c_(b,e)}}},c_=function(a,b){if(a===b||a.proxy===b)return void a.reject(TypeError("cannot resolve promise with itself"));if("object"===l(b)&&null!==b||"function"==typeof b)try{c=b.then}catch(b){a.reject(b);return}if("function"==typeof c){var c,d=!1;try{c.call(b,function(c){d||(d=!0,c===b?a.reject(TypeError("circular thenable chain")):c_(a,c))},function(b){d||(d=!0,a.reject(b))})}catch(b){d||a.reject(b)}return}a.fulfill(b)};cW.all=function(a){return new cW(function(b,c){for(var d=Array(a.length),e=0,f=function(c,f){d[c]=f,++e===a.length&&b(d)},g=0;g<a.length;g++)!function(b){var d=a[b];null!=d&&null!=d.then?d.then(function(a){f(b,a)},function(a){c(a)}):f(b,d)}(g)})},cW.resolve=function(a){return new cW(function(b,c){b(a)})},cW.reject=function(a){return new cW(function(b,c){c(a)})};var c0="u">typeof Promise?Promise:cW,c1=function(a,b,c){var d=C(a),e=this._private=S({duration:1e3},b,c);if(e.target=a,e.style=e.style||e.css,e.started=!1,e.playing=!1,e.hooked=!1,e.applying=!1,e.progress=0,e.completes=[],e.frames=[],e.complete&&u(e.complete)&&e.completes.push(e.complete),!d){var f=a.position();e.startPosition=e.startPosition||{x:f.x,y:f.y},e.startStyle=e.startStyle||a.cy().style().getAnimationStartStyle(a,e.style)}if(d){var g=a.pan();e.startPan={x:g.x,y:g.y},e.startZoom=a.zoom()}this.length=1,this[0]=this},c2=c1.prototype;function c3(){return gC?gB:(gC=1,gB=Array.isArray)}function c4(){if(gS)return gR;gS=1;var a=function(){if(gO)return gN;gO=1;var a=function(){if(gG)return gF;gG=1;var a=ad(),b=aa();return gF=function(c){if(!b(c))return!1;var d=a(c);return"[object Function]"==d||"[object GeneratorFunction]"==d||"[object AsyncFunction]"==d||"[object Proxy]"==d}}(),b=function(){if(gK)return gJ;gK=1;var a,b=gI?gH:(gI=1,gH=ab()["__core-js_shared__"]),c=(a=/[^.]+$/.exec(b&&b.keys&&b.keys.IE_PROTO||""))?"Symbol(src)_1."+a:"";return gJ=function(a){return!!c&&c in a}}(),c=aa(),d=function(){if(gM)return gL;gM=1;var a=Function.prototype.toString;return gL=function(b){if(null!=b){try{return a.call(b)}catch(a){}try{return b+""}catch(a){}}return""}}(),e=/^\[object .+?Constructor\]$/,f=Object.prototype,g=Function.prototype.toString,h=f.hasOwnProperty,i=RegExp("^"+g.call(h).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");return gN=function(f){return!(!c(f)||b(f))&&(a(f)?i:e).test(d(f))}}(),b=gQ?gP:(gQ=1,gP=function(a,b){return null==a?void 0:a[b]});return gR=function(c,d){var e=b(c,d);return a(e)?e:void 0}}function c5(){return gU?gT:(gU=1,gT=c4()(Object,"create"))}function c6(){return g8?g7:(g8=1,g7=function(a,b){return a===b||a!=a&&b!=b})}function c7(){if(ha)return g9;ha=1;var a=c6();return g9=function(b,c){for(var d=b.length;d--;)if(a(b[d][0],c))return d;return -1}}function c8(){if(hs)return hr;hs=1;var a=hq?hp:(hq=1,hp=function(a){var b=typeof a;return"string"==b||"number"==b||"symbol"==b||"boolean"==b?"__proto__"!==a:null===a});return hr=function(b,c){var d=b.__data__;return a(c)?d["string"==typeof c?"string":"hash"]:d.map}}function c9(){if(hI)return hH;hI=1;var a=function(){if(hG)return hF;hG=1;var a=function(){if(hE)return hD;hE=1;var a=function(){if(hC)return hB;hC=1;var a=function(){if(ho)return hn;ho=1;var a=function(){if(g4)return g3;g4=1;var a=function(){if(gW)return gV;gW=1;var a=c5();return gV=function(){this.__data__=a?a(null):{},this.size=0}}(),b=gY?gX:(gY=1,gX=function(a){var b=this.has(a)&&delete this.__data__[a];return this.size-=!!b,b}),c=function(){if(g$)return gZ;g$=1;var a=c5(),b=Object.prototype.hasOwnProperty;return gZ=function(c){var d=this.__data__;if(a){var e=d[c];return"__lodash_hash_undefined__"===e?void 0:e}return b.call(d,c)?d[c]:void 0}}(),d=function(){if(g0)return g_;g0=1;var a=c5(),b=Object.prototype.hasOwnProperty;return g_=function(c){var d=this.__data__;return a?void 0!==d[c]:b.call(d,c)}}(),e=function(){if(g2)return g1;g2=1;var a=c5();return g1=function(b,c){var d=this.__data__;return this.size+=+!this.has(b),d[b]=a&&void 0===c?"__lodash_hash_undefined__":c,this}}();function f(a){var b=-1,c=null==a?0:a.length;for(this.clear();++b<c;){var d=a[b];this.set(d[0],d[1])}}return f.prototype.clear=a,f.prototype.delete=b,f.prototype.get=c,f.prototype.has=d,f.prototype.set=e,g3=f}(),b=function(){if(hk)return hj;hk=1;var a=g6?g5:(g6=1,g5=function(){this.__data__=[],this.size=0}),b=function(){if(hc)return hb;hc=1;var a=c7(),b=Array.prototype.splice;return hb=function(c){var d=this.__data__,e=a(d,c);return!(e<0)&&(e==d.length-1?d.pop():b.call(d,e,1),--this.size,!0)}}(),c=function(){if(he)return hd;he=1;var a=c7();return hd=function(b){var c=this.__data__,d=a(c,b);return d<0?void 0:c[d][1]}}(),d=function(){if(hg)return hf;hg=1;var a=c7();return hf=function(b){return a(this.__data__,b)>-1}}(),e=function(){if(hi)return hh;hi=1;var a=c7();return hh=function(b,c){var d=this.__data__,e=a(d,b);return e<0?(++this.size,d.push([b,c])):d[e][1]=c,this}}();function f(a){var b=-1,c=null==a?0:a.length;for(this.clear();++b<c;){var d=a[b];this.set(d[0],d[1])}}return f.prototype.clear=a,f.prototype.delete=b,f.prototype.get=c,f.prototype.has=d,f.prototype.set=e,hj=f}(),c=hm?hl:(hm=1,hl=c4()(ab(),"Map"));return hn=function(){this.size=0,this.__data__={hash:new a,map:new(c||b),string:new a}}}(),b=function(){if(hu)return ht;hu=1;var a=c8();return ht=function(b){var c=a(this,b).delete(b);return this.size-=!!c,c}}(),c=function(){if(hw)return hv;hw=1;var a=c8();return hv=function(b){return a(this,b).get(b)}}(),d=function(){if(hy)return hx;hy=1;var a=c8();return hx=function(b){return a(this,b).has(b)}}(),e=function(){if(hA)return hz;hA=1;var a=c8();return hz=function(b,c){var d=a(this,b),e=d.size;return d.set(b,c),this.size+=+(d.size!=e),this}}();function f(a){var b=-1,c=null==a?0:a.length;for(this.clear();++b<c;){var d=a[b];this.set(d[0],d[1])}}return f.prototype.clear=a,f.prototype.delete=b,f.prototype.get=c,f.prototype.has=d,f.prototype.set=e,hB=f}();function b(c,d){if("function"!=typeof c||null!=d&&"function"!=typeof d)throw TypeError("Expected a function");var e=function(){var a=arguments,b=d?d.apply(this,a):a[0],f=e.cache;if(f.has(b))return f.get(b);var g=c.apply(this,a);return e.cache=f.set(b,g)||f,g};return e.cache=new(b.Cache||a),e}return b.Cache=a,hD=b}();return hF=function(b){var c=a(b,function(a){return 500===d.size&&d.clear(),a}),d=c.cache;return c}}(),b=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,c=/\\(\\)?/g;return hH=a(function(a){var d=[];return 46===a.charCodeAt(0)&&d.push(""),a.replace(b,function(a,b,e,f){d.push(e?f.replace(c,"$1"):b||a)}),d})}function da(){return hK?hJ:(hK=1,hJ=function(a,b){for(var c=-1,d=null==a?0:a.length,e=Array(d);++c<d;)e[c]=b(a[c],c,a);return e})}function db(){if(hO)return hN;hO=1;var a=function(){if(hM)return hL;hM=1;var a=ac(),b=da(),c=c3(),d=ae(),e=a?a.prototype:void 0,f=e?e.toString:void 0;return hL=function a(e){if("string"==typeof e)return e;if(c(e))return b(e,a)+"";if(d(e))return f?f.call(e):"";var g=e+"";return"0"==g&&1/e==-1/0?"-0":g}}();return hN=function(b){return null==b?"":a(b)}}function dc(){if(hQ)return hP;hQ=1;var a=c3(),b=function(){if(gE)return gD;gE=1;var a=c3(),b=ae(),c=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,d=/^\w*$/;return gD=function(e,f){if(a(e))return!1;var g=typeof e;return!!("number"==g||"symbol"==g||"boolean"==g||null==e||b(e))||d.test(e)||!c.test(e)||null!=f&&e in Object(f)}}(),c=c9(),d=db();return hP=function(e,f){return a(e)?e:b(e,f)?[e]:c(d(e))}}function dd(){if(hS)return hR;hS=1;var a=ae();return hR=function(b){if("string"==typeof b||a(b))return b;var c=b+"";return"0"==c&&1/b==-1/0?"-0":c}}S(c2,{instanceString:function(){return"animation"},hook:function(){var a=this._private;if(!a.hooked){var b=a.target._private.animation;(a.queue?b.queue:b.current).push(this),z(a.target)&&a.target.cy().addToAnimationPool(a.target),a.hooked=!0}return this},play:function(){var a=this._private;return 1===a.progress&&(a.progress=0),a.playing=!0,a.started=!1,a.stopped=!1,this.hook(),this},playing:function(){return this._private.playing},apply:function(){var a=this._private;return a.applying=!0,a.started=!1,a.stopped=!1,this.hook(),this},applying:function(){return this._private.applying},pause:function(){var a=this._private;return a.playing=!1,a.started=!1,this},stop:function(){var a=this._private;return a.playing=!1,a.started=!1,a.stopped=!0,this},rewind:function(){return this.progress(0)},fastforward:function(){return this.progress(1)},time:function(a){var b=this._private;return void 0===a?b.progress*b.duration:this.progress(a/b.duration)},progress:function(a){var b=this._private,c=b.playing;return void 0===a?b.progress:(c&&this.pause(),b.progress=a,b.started=!1,c&&this.play(),this)},completed:function(){return 1===this._private.progress},reverse:function(){var a=this._private,b=a.playing;b&&this.pause(),a.progress=1-a.progress,a.started=!1;var c=function(b,c){var d=a[b];null!=d&&(a[b]=a[c],a[c]=d)};if(c("zoom","startZoom"),c("pan","startPan"),c("position","startPosition"),a.style)for(var d=0;d<a.style.length;d++){var e=a.style[d],f=e.name,g=a.startStyle[f];a.startStyle[f]=e,a.style[d]=g}return b&&this.play(),this},promise:function(a){var b,c=this._private;return b="frame"===a?c.frames:c.completes,new c0(function(a,c){b.push(function(){a()})})}}),c2.complete=c2.completed,c2.run=c2.play,c2.running=c2.playing;var de=_(function(){if(hW)return hV;hW=1;var a=function(){if(hU)return hT;hU=1;var a=dc(),b=dd();return hT=function(c,d){d=a(d,c);for(var e=0,f=d.length;null!=c&&e<f;)c=c[b(d[e++])];return e&&e==f?c:void 0}}();return hV=function(b,c,d){var e=null==b?void 0:a(b,c);return void 0===e?d:e}}()),df=_(function(){if(h6)return h5;h6=1;var a=function(){if(h4)return h3;h4=1;var a=function(){if(h0)return h_;h0=1;var a=function(){if(h$)return hZ;h$=1;var a=function(){if(hY)return hX;hY=1;var a=c4();return hX=function(){try{var b=a(Object,"defineProperty");return b({},"",{}),b}catch(a){}}()}();return hZ=function(b,c,d){"__proto__"==c&&a?a(b,c,{configurable:!0,enumerable:!0,value:d,writable:!0}):b[c]=d}}(),b=c6(),c=Object.prototype.hasOwnProperty;return h_=function(d,e,f){var g=d[e];c.call(d,e)&&b(g,f)&&(void 0!==f||e in d)||a(d,e,f)}}(),b=dc(),c=function(){if(h2)return h1;h2=1;var a=/^(?:0|[1-9]\d*)$/;return h1=function(b,c){var d=typeof b;return!!(c=null==c?0x1fffffffffffff:c)&&("number"==d||"symbol"!=d&&a.test(b))&&b>-1&&b%1==0&&b<c}}(),d=aa(),e=dd();return h3=function(f,g,h,i){if(!d(f))return f;g=b(g,f);for(var j=-1,k=g.length,l=k-1,n=f;null!=n&&++j<k;){var o=e(g[j]),p=h;if("__proto__"===o||"constructor"===o||"prototype"===o)break;if(j!=l){var q=n[o];void 0===(p=i?i(q,o,n):void 0)&&(p=d(q)?q:c(g[j+1])?[]:{})}a(n,o,p),n=n[o]}return f}}();return h5=function(b,c,d){return null==b?b:a(b,c,d)}}()),dg=_(function(){if(ia)return h9;ia=1;var a=da(),b=h8?h7:(h8=1,h7=function(a,b){var c=-1,d=a.length;for(b||(b=Array(d));++c<d;)b[c]=a[c];return b}),c=c3(),d=ae(),e=c9(),f=dd(),g=db();return h9=function(h){return c(h)?a(h,f):d(h)?[h]:b(e(g(h)))}}()),dh={};[{animated:function(){return function(){var a=void 0!==this.length;if(!(this._private.cy||this).styleEnabled())return!1;var b=(a?this:[this])[0];if(b)return b._private.animation.current.length>0}},clearQueue:function(){return function(){var a=void 0!==this.length?this:[this];if(!(this._private.cy||this).styleEnabled())return this;for(var b=0;b<a.length;b++)a[b]._private.animation.queue=[];return this}},delay:function(){return function(a,b){return(this._private.cy||this).styleEnabled()?this.animate({delay:a,duration:a,complete:b}):this}},delayAnimation:function(){return function(a,b){return(this._private.cy||this).styleEnabled()?this.animation({delay:a,duration:a,complete:b}):this}},animation:function(){return function(a,b){var c=void 0!==this.length,d=c?this:[this],e=this._private.cy||this,f=!c,g=!f;if(!e.styleEnabled())return this;var h=e.style();if(0===Object.keys(a=S({},a,b)).length)return new c1(d[0],a);switch(void 0===a.duration&&(a.duration=400),a.duration){case"slow":a.duration=600;break;case"fast":a.duration=200}if(g&&(a.style=h.getPropsList(a.style||a.css),a.css=void 0),g&&null!=a.renderedPosition){var i=a.renderedPosition,j=e.pan(),k=e.zoom();a.position=a3(i,k,j)}if(f&&null!=a.panBy){var l=a.panBy,n=e.pan();a.pan={x:n.x+l.x,y:n.y+l.y}}var o=a.center||a.centre;if(f&&null!=o){var p=e.getCenterPan(o.eles,a.zoom);null!=p&&(a.pan=p)}if(f&&null!=a.fit){var q=a.fit,r=e.getFitViewport(q.eles||q.boundingBox,q.padding);null!=r&&(a.pan=r.pan,a.zoom=r.zoom)}if(f&&w(a.zoom)){var s=e.getZoomedViewport(a.zoom);null!=s?(s.zoomed&&(a.zoom=s.zoom),s.panned&&(a.pan=s.pan)):a.zoom=null}return new c1(d[0],a)}},animate:function(){return function(a,b){var c=void 0!==this.length?this:[this];if(!(this._private.cy||this).styleEnabled())return this;b&&(a=S({},a,b));for(var d=0;d<c.length;d++){var e=c[d],f=e.animated()&&(void 0===a.queue||a.queue);e.animation(a,f?{queue:!0}:void 0).play()}return this}},stop:function(){return function(a,b){var c=void 0!==this.length?this:[this],d=this._private.cy||this;if(!d.styleEnabled())return this;for(var e=0;e<c.length;e++){for(var f=c[e]._private,g=f.animation.current,h=0;h<g.length;h++){var i=g[h]._private;b&&(i.duration=0)}a&&(f.animation.queue=[]),b||(f.animation.current=[])}return d.notify("draw"),this}}},{data:function(a){return a=S({},{field:"data",bindingEvent:"data",allowBinding:!1,allowSetting:!1,allowGetting:!1,settingEvent:"data",settingTriggersEvent:!1,triggerFnName:"trigger",immutableKeys:{},updateStyle:!1,beforeGet:function(a){},beforeSet:function(a,b){},onSet:function(a){},canSet:function(a){return!0}},a),function(b,c){var d,e=a,f=void 0!==this.length,g=f?this:[this],i=f?this[0]:this;if(t(b)){var j,k=-1!==b.indexOf(".")&&dg(b);if(e.allowGetting&&void 0===c)return i&&(e.beforeGet(i),j=k&&void 0===i._private[e.field][b]?de(i._private[e.field],k):i._private[e.field][b]),j;if(e.allowSetting&&void 0!==c&&!e.immutableKeys[b]){var l=h({},b,c);e.beforeSet(this,l);for(var n=0,o=g.length;n<o;n++){var p=g[n];e.canSet(p)&&(k&&void 0===i._private[e.field][b]?df(p._private[e.field],k,c):p._private[e.field][b]=c)}e.updateStyle&&this.updateStyle(),e.onSet(this),e.settingTriggersEvent&&this[e.triggerFnName](e.settingEvent)}}else if(e.allowSetting&&w(b)){var q,r,s=Object.keys(b);e.beforeSet(this,b);for(var v=0;v<s.length;v++)if(r=b[q=s[v]],!e.immutableKeys[q])for(var x=0;x<g.length;x++){var y=g[x];e.canSet(y)&&(y._private[e.field][q]=r)}e.updateStyle&&this.updateStyle(),e.onSet(this),e.settingTriggersEvent&&this[e.triggerFnName](e.settingEvent)}else if(e.allowBinding&&u(b))this.on(e.bindingEvent,b);else if(e.allowGetting&&void 0===b)return i&&(e.beforeGet(i),d=i._private[e.field]),d;return this}},removeData:function(a){return a=S({},{field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!1,immutableKeys:{}},a),function(b){var c=a,d=void 0!==this.length?this:[this];if(t(b)){for(var e=b.split(/\s+/),f=e.length,g=0;g<f;g++){var h=e[g];if(!E(h)&&!c.immutableKeys[h])for(var i=0,j=d.length;i<j;i++)d[i]._private[c.field][h]=void 0}c.triggerEvent&&this[c.triggerFnName](c.event)}else if(void 0===b){for(var k=0,l=d.length;k<l;k++)for(var n=d[k]._private[c.field],o=Object.keys(n),p=0;p<o.length;p++){var q=o[p];c.immutableKeys[q]||(n[q]=void 0)}c.triggerEvent&&this[c.triggerFnName](c.event)}return this}}},{eventAliasesOn:function(a){a.addListener=a.listen=a.bind=a.on,a.unlisten=a.unbind=a.off=a.removeListener,a.trigger=a.emit,a.pon=a.promiseOn=function(a,b){var c=this,d=Array.prototype.slice.call(arguments,0);return new c0(function(a,b){var e=d.concat([function(b){c.off.apply(c,f),a(b)}]),f=e.concat([]);c.on.apply(c,e)})}}}].forEach(function(a){S(dh,a)});var di={animate:dh.animate(),animation:dh.animation(),animated:dh.animated(),clearQueue:dh.clearQueue(),delay:dh.delay(),delayAnimation:dh.delayAnimation(),stop:dh.stop()},dj={classes:function(a){if(void 0===a){var b=[];return this[0]._private.classes.forEach(function(a){return b.push(a)}),b}v(a)||(a=(a||"").match(/\S+/g)||[]);for(var c=[],d=new aQ(a),e=0;e<this.length;e++){for(var f=this[e],g=f._private,h=g.classes,i=!1,j=0;j<a.length;j++){var k=a[j];if(!h.has(k)){i=!0;break}}i||(i=h.size!==a.length),i&&(g.classes=d,c.push(f))}return c.length>0&&this.spawn(c).updateStyle().emit("class"),this},addClass:function(a){return this.toggleClass(a,!0)},hasClass:function(a){var b=this[0];return null!=b&&b._private.classes.has(a)},toggleClass:function(a,b){v(a)||(a=a.match(/\S+/g)||[]);for(var c=void 0===b,d=[],e=0,f=this.length;e<f;e++)for(var g=this[e],h=g._private.classes,i=!1,j=0;j<a.length;j++){var k=a[j],l=h.has(k),n=!1;b||c&&!l?(h.add(k),n=!0):(!b||c&&l)&&(h.delete(k),n=!0),!i&&n&&(d.push(g),i=!0)}return d.length>0&&this.spawn(d).updateStyle().emit("class"),this},removeClass:function(a){return this.toggleClass(a,!1)},flashClass:function(a,b){var c=this;if(null==b)b=250;else if(0===b)return c;return c.addClass(a),setTimeout(function(){c.removeClass(a)},b),c}};dj.className=dj.classNames=dj.classes;var dk={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:"\"(?:\\\\\"|[^\"])*\"|'(?:\\\\'|[^'])*'",number:M,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};for(f4=0,dk.variable="(?:[\\w-.]|(?:\\\\"+dk.metaChar+"))+",dk.className="(?:[\\w-]|(?:\\\\"+dk.metaChar+"))+",dk.value=dk.string+"|"+dk.number,dk.id=dk.variable,f2=dk.comparatorOp.split("|");f4<f2.length;f4++)f3=f2[f4],dk.comparatorOp+="|@"+f3;for(f4=0,f2=dk.comparatorOp.split("|");f4<f2.length;f4++)(f3=f2[f4]).indexOf("!")>=0||"="!==f3&&(dk.comparatorOp+="|\\!"+f3);var dl=function(){return{checks:[]}},dm=[{selector:":selected",matches:function(a){return a.selected()}},{selector:":unselected",matches:function(a){return!a.selected()}},{selector:":selectable",matches:function(a){return a.selectable()}},{selector:":unselectable",matches:function(a){return!a.selectable()}},{selector:":locked",matches:function(a){return a.locked()}},{selector:":unlocked",matches:function(a){return!a.locked()}},{selector:":visible",matches:function(a){return a.visible()}},{selector:":hidden",matches:function(a){return!a.visible()}},{selector:":transparent",matches:function(a){return a.transparent()}},{selector:":grabbed",matches:function(a){return a.grabbed()}},{selector:":free",matches:function(a){return!a.grabbed()}},{selector:":removed",matches:function(a){return a.removed()}},{selector:":inside",matches:function(a){return!a.removed()}},{selector:":grabbable",matches:function(a){return a.grabbable()}},{selector:":ungrabbable",matches:function(a){return!a.grabbable()}},{selector:":animated",matches:function(a){return a.animated()}},{selector:":unanimated",matches:function(a){return!a.animated()}},{selector:":parent",matches:function(a){return a.isParent()}},{selector:":childless",matches:function(a){return a.isChildless()}},{selector:":child",matches:function(a){return a.isChild()}},{selector:":orphan",matches:function(a){return a.isOrphan()}},{selector:":nonorphan",matches:function(a){return a.isChild()}},{selector:":compound",matches:function(a){return a.isNode()?a.isParent():a.source().isParent()||a.target().isParent()}},{selector:":loop",matches:function(a){return a.isLoop()}},{selector:":simple",matches:function(a){return a.isSimple()}},{selector:":active",matches:function(a){return a.active()}},{selector:":inactive",matches:function(a){return!a.active()}},{selector:":backgrounding",matches:function(a){return a.backgrounding()}},{selector:":nonbackgrounding",matches:function(a){return!a.backgrounding()}}].sort(function(a,b){return -1*R(a.selector,b.selector)}),dn=function(){for(var a,b={},c=0;c<dm.length;c++)b[(a=dm[c]).selector]=a.matches;return b}(),dp="("+dm.map(function(a){return a.selector}).join("|")+")",dq=function(a){return a.replace(RegExp("\\\\("+dk.metaChar+")","g"),function(a,b){return b})},dr=function(a,b,c){a[a.length-1]=c},ds=[{name:"group",query:!0,regex:"("+dk.group+")",populate:function(a,b,c){var d=i(c,1)[0];b.checks.push({type:0,value:"*"===d?d:d+"s"})}},{name:"state",query:!0,regex:dp,populate:function(a,b,c){var d=i(c,1)[0];b.checks.push({type:7,value:d})}},{name:"id",query:!0,regex:"\\#("+dk.id+")",populate:function(a,b,c){var d=i(c,1)[0];b.checks.push({type:8,value:dq(d)})}},{name:"className",query:!0,regex:"\\.("+dk.className+")",populate:function(a,b,c){var d=i(c,1)[0];b.checks.push({type:9,value:dq(d)})}},{name:"dataExists",query:!0,regex:"\\[\\s*("+dk.variable+")\\s*\\]",populate:function(a,b,c){var d=i(c,1)[0];b.checks.push({type:4,field:dq(d)})}},{name:"dataCompare",query:!0,regex:"\\[\\s*("+dk.variable+")\\s*("+dk.comparatorOp+")\\s*("+dk.value+")\\s*\\]",populate:function(a,b,c){var d=i(c,3),e=d[0],f=d[1],g=d[2];g=null!=RegExp("^"+dk.string+"$").exec(g)?g.substring(1,g.length-1):parseFloat(g),b.checks.push({type:3,field:dq(e),operator:f,value:g})}},{name:"dataBool",query:!0,regex:"\\[\\s*("+dk.boolOp+")\\s*("+dk.variable+")\\s*\\]",populate:function(a,b,c){var d=i(c,2),e=d[0],f=d[1];b.checks.push({type:5,field:dq(f),operator:e})}},{name:"metaCompare",query:!0,regex:"\\[\\[\\s*("+dk.meta+")\\s*("+dk.comparatorOp+")\\s*("+dk.number+")\\s*\\]\\]",populate:function(a,b,c){var d=i(c,3),e=d[0],f=d[1],g=d[2];b.checks.push({type:6,field:dq(e),operator:f,value:parseFloat(g)})}},{name:"nextQuery",separator:!0,regex:dk.separator,populate:function(a,b){var c=a.currentSubject,d=a.edgeCount,e=a.compoundCount,f=a[a.length-1];return null!=c&&(f.subject=c,a.currentSubject=null),f.edgeCount=d,f.compoundCount=e,a.edgeCount=0,a.compoundCount=0,a[a.length++]=dl()}},{name:"directedEdge",separator:!0,regex:dk.directedEdge,populate:function(a,b){if(null==a.currentSubject){var c=dl(),d=dl();return c.checks.push({type:11,source:b,target:d}),dr(a,b,c),a.edgeCount++,d}var e=dl(),f=dl();return e.checks.push({type:12,source:b,target:f}),dr(a,b,e),a.edgeCount++,f}},{name:"undirectedEdge",separator:!0,regex:dk.undirectedEdge,populate:function(a,b){if(null==a.currentSubject){var c=dl(),d=dl();return c.checks.push({type:10,nodes:[b,d]}),dr(a,b,c),a.edgeCount++,d}var e=dl(),f=dl();return e.checks.push({type:14,node:b,neighbor:f}),dr(a,b,e),f}},{name:"child",separator:!0,regex:dk.child,populate:function(a,b){if(null==a.currentSubject){var c=dl(),d=dl(),e=a[a.length-1];return c.checks.push({type:15,parent:e,child:d}),dr(a,b,c),a.compoundCount++,d}if(a.currentSubject===b){var f=dl(),g=a[a.length-1],h=dl(),i=dl(),j=dl(),k=dl();return f.checks.push({type:19,left:g,right:h,subject:i}),i.checks=b.checks,b.checks=[{type:20}],k.checks.push({type:20}),h.checks.push({type:17,parent:k,child:j}),dr(a,g,f),a.currentSubject=i,a.compoundCount++,j}var l=dl(),n=dl(),o=[{type:17,parent:l,child:n}];return l.checks=b.checks,b.checks=o,a.compoundCount++,n}},{name:"descendant",separator:!0,regex:dk.descendant,populate:function(a,b){if(null==a.currentSubject){var c=dl(),d=dl(),e=a[a.length-1];return c.checks.push({type:16,ancestor:e,descendant:d}),dr(a,b,c),a.compoundCount++,d}if(a.currentSubject===b){var f=dl(),g=a[a.length-1],h=dl(),i=dl(),j=dl(),k=dl();return f.checks.push({type:19,left:g,right:h,subject:i}),i.checks=b.checks,b.checks=[{type:20}],k.checks.push({type:20}),h.checks.push({type:18,ancestor:k,descendant:j}),dr(a,g,f),a.currentSubject=i,a.compoundCount++,j}var l=dl(),n=dl(),o=[{type:18,ancestor:l,descendant:n}];return l.checks=b.checks,b.checks=o,a.compoundCount++,n}},{name:"subject",modifier:!0,regex:dk.subject,populate:function(a,b){if(null!=a.currentSubject&&a.currentSubject!==b)return aC("Redefinition of subject in selector `"+a.toString()+"`"),!1;a.currentSubject=b;var c=a[a.length-1].checks[0],d=null==c?null:c.type;11===d?c.type=13:10===d&&(c.type=14,c.node=c.nodes[1],c.neighbor=c.nodes[0],c.nodes=null)}}];ds.forEach(function(a){return a.regexObj=RegExp("^"+a.regex)});var dt=function(a){for(var b,c,d,e=0;e<ds.length;e++){var f=ds[e],g=f.name,h=a.match(f.regexObj);if(null!=h){c=h,b=f,d=g;var i=h[0];a=a.substring(i.length);break}}return{expr:b,match:c,name:d,remaining:a}},du=function(a){var b=a.match(/^\s+/);if(b){var c=b[0];a=a.substring(c.length)}return a},dv=function(a,b,c){var d,e,f,g=t(a),h=x(a),i=t(c),j=!1,k=!1,l=!1;switch(b.indexOf("!")>=0&&(b=b.replace("!",""),k=!0),b.indexOf("@")>=0&&(b=b.replace("@",""),j=!0),(g||i||j)&&(e=g||h?""+a:"",f=""+c),j&&(a=e=e.toLowerCase(),c=f=f.toLowerCase()),b){case"*=":d=e.indexOf(f)>=0;break;case"$=":d=e.indexOf(f,e.length-f.length)>=0;break;case"^=":d=0===e.indexOf(f);break;case"=":d=a===c;break;case">":l=!0,d=a>c;break;case">=":l=!0,d=a>=c;break;case"<":l=!0,d=a<c;break;case"<=":l=!0,d=a<=c;break;default:d=!1}return k&&(null!=a||!l)&&(d=!d),d},dw=function(a,b){switch(b){case"?":return!!a;case"!":return!a;case"^":return void 0===a}},dx=function(a,b){return a.data(b)},dy=[],dz=function(a,b){return a.checks.every(function(a){return dy[a.type](a,b)})};dy[0]=function(a,b){var c=a.value;return"*"===c||c===b.group()},dy[7]=function(a,b){var c;return c=a.value,dn[c](b)},dy[8]=function(a,b){var c=a.value;return b.id()===c},dy[9]=function(a,b){var c=a.value;return b.hasClass(c)},dy[6]=function(a,b){var c=a.field,d=a.operator,e=a.value;return dv(b[c](),d,e)},dy[3]=function(a,b){var c=a.field,d=a.operator,e=a.value;return dv(dx(b,c),d,e)},dy[5]=function(a,b){var c=a.field,d=a.operator;return dw(dx(b,c),d)},dy[4]=function(a,b){var c=a.field;return a.operator,void 0!==dx(b,c)},dy[10]=function(a,b){var c=a.nodes[0],d=a.nodes[1],e=b.source(),f=b.target();return dz(c,e)&&dz(d,f)||dz(d,e)&&dz(c,f)},dy[14]=function(a,b){return dz(a.node,b)&&b.neighborhood().some(function(b){return b.isNode()&&dz(a.neighbor,b)})},dy[11]=function(a,b){return dz(a.source,b.source())&&dz(a.target,b.target())},dy[12]=function(a,b){return dz(a.source,b)&&b.outgoers().some(function(b){return b.isNode()&&dz(a.target,b)})},dy[13]=function(a,b){return dz(a.target,b)&&b.incomers().some(function(b){return b.isNode()&&dz(a.source,b)})},dy[15]=function(a,b){return dz(a.child,b)&&dz(a.parent,b.parent())},dy[17]=function(a,b){return dz(a.parent,b)&&b.children().some(function(b){return dz(a.child,b)})},dy[16]=function(a,b){return dz(a.descendant,b)&&b.ancestors().some(function(b){return dz(a.ancestor,b)})},dy[18]=function(a,b){return dz(a.ancestor,b)&&b.descendants().some(function(b){return dz(a.descendant,b)})},dy[19]=function(a,b){return dz(a.subject,b)&&dz(a.left,b)&&dz(a.right,b)},dy[20]=function(){return!0},dy[1]=function(a,b){return a.value.has(b)},dy[2]=function(a,b){return(0,a.value)(b)};var dA=function(a){this.inputText=a,this.currentSubject=null,this.compoundCount=0,this.edgeCount=0,this.length=0,null==a||t(a)&&a.match(/^\s*$/)||(z(a)?this.addQuery({checks:[{type:1,value:a.collection()}]}):u(a)?this.addQuery({checks:[{type:2,value:a}]}):t(a)?this.parse(a)||(this.invalid=!0):aA("A selector must be created from a string; found "))},dB=dA.prototype;[{parse:function(a){var b=this.inputText=a,c=this[0]=dl();for(this.length=1,b=du(b);;){var d=dt(b);if(null==d.expr)return aC("The selector `"+a+"`is invalid"),!1;var e=d.match.slice(1),f=d.expr.populate(this,c,e);if(!1===f)return!1;if(null!=f&&(c=f),(b=d.remaining).match(/^\s*$/))break}var g=this[this.length-1];null!=this.currentSubject&&(g.subject=this.currentSubject),g.edgeCount=this.edgeCount,g.compoundCount=this.compoundCount;for(var h=0;h<this.length;h++){var i=this[h];if(i.compoundCount>0&&i.edgeCount>0)return aC("The selector `"+a+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(i.edgeCount>1)return aC("The selector `"+a+"` is invalid because it uses multiple edge selectors"),!1;1===i.edgeCount&&aC("The selector `"+a+"` is deprecated. Edge selectors do not take effect on changes to source and target nodes after an edge is added, for performance reasons. Use a class or data selector on edges instead, updating the class or data of an edge when your app detects a change in source or target nodes.")}return!0},toString:function(){if(null!=this.toStringCache)return this.toStringCache;for(var a=function(a){return null==a?"":a},b=function(b){return t(b)?'"'+b+'"':a(b)},c=function(a){return" "+a+" "},d=function(d,f){var g=d.type,h=d.value;switch(g){case 0:var i=a(h);return i.substring(0,i.length-1);case 3:return"["+d.field+c(a(d.operator))+b(h)+"]";case 5:var j=d.operator,k=d.field;return"["+a(j)+k+"]";case 4:return"["+d.field+"]";case 6:var l=d.operator;return"[["+d.field+c(a(l))+b(h)+"]]";case 7:return h;case 8:return"#"+h;case 9:return"."+h;case 17:case 15:return e(d.parent,f)+c(">")+e(d.child,f);case 18:case 16:return e(d.ancestor,f)+" "+e(d.descendant,f);case 19:var n=e(d.left,f),o=e(d.subject,f),p=e(d.right,f);return n+(n.length>0?" ":"")+o+p;case 20:return""}},e=function(a,b){return a.checks.reduce(function(c,e,f){return c+(b===a&&0===f?"$":"")+d(e,b)},"")},f="",g=0;g<this.length;g++){var h=this[g];f+=e(h,h.subject),this.length>1&&g<this.length-1&&(f+=", ")}return this.toStringCache=f,f}},{matches:function(a){for(var b=0;b<this.length;b++)if(dz(this[b],a))return!0;return!1},filter:function(a){var b=this;if(1===b.length&&1===b[0].checks.length&&8===b[0].checks[0].type)return a.getElementById(b[0].checks[0].value).collection();var c=function(a){for(var c=0;c<b.length;c++)if(dz(b[c],a))return!0;return!1};return null==b.text()&&(c=function(){return!0}),a.filter(c)}}].forEach(function(a){return S(dB,a)}),dB.text=function(){return this.inputText},dB.size=function(){return this.length},dB.eq=function(a){return this[a]},dB.sameText=function(a){return!this.invalid&&!a.invalid&&this.text()===a.text()},dB.addQuery=function(a){this[this.length++]=a},dB.selector=dB.toString;var dC={allAre:function(a){var b=new dA(a);return this.every(function(a){return b.matches(a)})},is:function(a){var b=new dA(a);return this.some(function(a){return b.matches(a)})},some:function(a,b){for(var c=0;c<this.length;c++)if(b?a.apply(b,[this[c],c,this]):a(this[c],c,this))return!0;return!1},every:function(a,b){for(var c=0;c<this.length;c++)if(!(b?a.apply(b,[this[c],c,this]):a(this[c],c,this)))return!1;return!0},same:function(a){if(this===a)return!0;a=this.cy().collection(a);var b=this.length;return b===a.length&&(1===b?this[0]===a[0]:this.every(function(b){return a.hasElementWithId(b.id())}))},anySame:function(a){return a=this.cy().collection(a),this.some(function(b){return a.hasElementWithId(b.id())})},allAreNeighbors:function(a){a=this.cy().collection(a);var b=this.neighborhood();return a.every(function(a){return b.hasElementWithId(a.id())})},contains:function(a){a=this.cy().collection(a);var b=this;return a.every(function(a){return b.hasElementWithId(a.id())})}};dC.allAreNeighbours=dC.allAreNeighbors,dC.has=dC.contains,dC.equal=dC.equals=dC.same;var dD=function(a,b){return function(c,d,e,f){if(null==c?g="":z(c)&&1===c.length&&(g=c.id()),1!==this.length||!g)return a.call(this,c,d,e,f);var g,h=this[0]._private,i=h.traversalCache=h.traversalCache||{},j=i[b]=i[b]||[],k=ap(g),l=j[k];return l||(j[k]=a.call(this,c,d,e,f))}},dE={parent:function(a){var b=[];if(1===this.length){var c=this[0]._private.parent;if(c)return c}for(var d=0;d<this.length;d++){var e=this[d]._private.parent;e&&b.push(e)}return this.spawn(b,!0).filter(a)},parents:function(a){for(var b=[],c=this.parent();c.nonempty();){for(var d=0;d<c.length;d++){var e=c[d];b.push(e)}c=c.parent()}return this.spawn(b,!0).filter(a)},commonAncestors:function(a){for(var b,c=0;c<this.length;c++){var d=this[c].parents();b=(b=b||d).intersect(d)}return b.filter(a)},orphans:function(a){return this.stdFilter(function(a){return a.isOrphan()}).filter(a)},nonorphans:function(a){return this.stdFilter(function(a){return a.isChild()}).filter(a)},children:dD(function(a){for(var b=[],c=0;c<this.length;c++)for(var d=this[c]._private.children,e=0;e<d.length;e++)b.push(d[e]);return this.spawn(b,!0).filter(a)},"children"),siblings:function(a){return this.parent().children().not(this).filter(a)},isParent:function(){var a=this[0];if(a)return a.isNode()&&0!==a._private.children.length},isChildless:function(){var a=this[0];if(a)return a.isNode()&&0===a._private.children.length},isChild:function(){var a=this[0];if(a)return a.isNode()&&null!=a._private.parent},isOrphan:function(){var a=this[0];if(a)return a.isNode()&&null==a._private.parent},descendants:function(a){var b=[];return!function a(c){for(var d=0;d<c.length;d++){var e=c[d];b.push(e),e.children().nonempty()&&a(e.children())}}(this.children()),this.spawn(b,!0).filter(a)}};function dF(a,b,c,d){for(var e=[],f=new aQ,g=a.cy().hasCompoundNodes(),h=0;h<a.length;h++){var i=a[h];c?e.push(i):g&&d(e,f,i)}for(;e.length>0;){var j=e.shift();b(j),f.add(j.id()),g&&d(e,f,j)}return a}function dG(a,b,c){if(c.isParent())for(var d=c._private.children,e=0;e<d.length;e++){var f=d[e];b.has(f.id())||a.push(f)}}function dH(a,b,c){if(c.isChild()){var d=c._private.parent;b.has(d.id())||a.push(d)}}function dI(a,b,c){dH(a,b,c),dG(a,b,c)}dE.forEachDown=function(a){var b=!(arguments.length>1)||void 0===arguments[1]||arguments[1];return dF(this,a,b,dG)},dE.forEachUp=function(a){var b=!(arguments.length>1)||void 0===arguments[1]||arguments[1];return dF(this,a,b,dH)},dE.forEachUpAndDown=function(a){var b=!(arguments.length>1)||void 0===arguments[1]||arguments[1];return dF(this,a,b,dI)},dE.ancestors=dE.parents,(ib=ic={data:dh.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),removeData:dh.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),scratch:dh.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:dh.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),rscratch:dh.data({field:"rscratch",allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!0}),removeRscratch:dh.removeData({field:"rscratch",triggerEvent:!1}),id:function(){var a=this[0];if(a)return a._private.data.id}}).attr=ib.data,ib.removeAttr=ib.removeData;var dJ={};function dK(a){return function(b){if(void 0===b&&(b=!0),0!==this.length)if(!this.isNode()||this.removed())return;else{for(var c=0,d=this[0],e=d._private.edges,f=0;f<e.length;f++){var g=e[f];!b&&g.isLoop()||(c+=a(d,g))}return c}}}function dL(a,b){return function(c){for(var d,e=this.nodes(),f=0;f<e.length;f++){var g=e[f][a](c);void 0!==g&&(void 0===d||b(g,d))&&(d=g)}return d}}S(dJ,{degree:dK(function(a,b){return b.source().same(b.target())?2:1}),indegree:dK(function(a,b){return+!!b.target().same(a)}),outdegree:dK(function(a,b){return+!!b.source().same(a)})}),S(dJ,{minDegree:dL("degree",function(a,b){return a<b}),maxDegree:dL("degree",function(a,b){return a>b}),minIndegree:dL("indegree",function(a,b){return a<b}),maxIndegree:dL("indegree",function(a,b){return a>b}),minOutdegree:dL("outdegree",function(a,b){return a<b}),maxOutdegree:dL("outdegree",function(a,b){return a>b})}),S(dJ,{totalDegree:function(a){for(var b=0,c=this.nodes(),d=0;d<c.length;d++)b+=c[d].degree(a);return b}});var dM=function(a,b,c){for(var d=0;d<a.length;d++){var e=a[d];if(!e.locked()){var f=e._private.position,g={x:null!=b.x?b.x-f.x:0,y:null!=b.y?b.y-f.y:0};e.isParent()&&(0!==g.x||0!==g.y)&&e.children().shift(g,c),e.dirtyBoundingBoxCache()}}},dN={field:"position",bindingEvent:"position",allowBinding:!0,allowSetting:!0,settingEvent:"position",settingTriggersEvent:!0,triggerFnName:"emitAndNotify",allowGetting:!0,validKeys:["x","y"],beforeGet:function(a){a.updateCompoundBounds()},beforeSet:function(a,b){dM(a,b,!1)},onSet:function(a){a.dirtyCompoundBoundsCache()},canSet:function(a){return!a.locked()}};(id=ie={position:dh.data(dN),silentPosition:dh.data(S({},dN,{allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!1,beforeSet:function(a,b){dM(a,b,!0)},onSet:function(a){a.dirtyCompoundBoundsCache()}})),positions:function(a,b){if(w(a))b?this.silentPosition(a):this.position(a);else if(u(a)){var c=this.cy();c.startBatch();for(var d=0;d<this.length;d++){var e=this[d],f=void 0;(f=a(e,d))&&(b?e.silentPosition(f):e.position(f))}c.endBatch()}return this},silentPositions:function(a){return this.positions(a,!0)},shift:function(a,b,c){var d;if(w(a)?(d={x:x(a.x)?a.x:0,y:x(a.y)?a.y:0},c=b):t(a)&&x(b)&&((d={x:0,y:0})[a]=b),null!=d){var e=this.cy();e.startBatch();for(var f=0;f<this.length;f++){var g=this[f];if(!(e.hasCompoundNodes()&&g.isChild()&&g.ancestors().anySame(this))){var h=g.position(),i={x:h.x+d.x,y:h.y+d.y};c?g.silentPosition(i):g.position(i)}}e.endBatch()}return this},silentShift:function(a,b){return w(a)?this.shift(a,!0):t(a)&&x(b)&&this.shift(a,b,!0),this},renderedPosition:function(a,b){var c=this[0],d=this.cy(),e=d.zoom(),f=d.pan(),g=w(a)?a:void 0,h=void 0!==g||void 0!==b&&t(a);if(c&&c.isNode())if(!h)return(g=a2(c.position(),e,f),void 0===a)?g:g[a];else for(var i=0;i<this.length;i++){var j=this[i];void 0!==b?j.position(a,(b-f[a])/e):void 0!==g&&j.position(a3(g,e,f))}else if(!h)return;return this},relativePosition:function(a,b){var c=this[0],d=this.cy(),e=w(a)?a:void 0,f=void 0!==e||void 0!==b&&t(a),g=d.hasCompoundNodes();if(c&&c.isNode())if(f)for(var h=0;h<this.length;h++){var i=this[h],j=g?i.parent():null,k=j&&j.length>0;k&&(j=j[0]);var l=k?j.position():{x:0,y:0};void 0!==b?i.position(a,b+l[a]):void 0!==e&&i.position({x:e.x+l.x,y:e.y+l.y})}else{var n=c.position(),o=g?c.parent():null,p=o&&o.length>0;p&&(o=o[0]);var q=p?o.position():{x:0,y:0};return(e={x:n.x-q.x,y:n.y-q.y},void 0===a)?e:e[a]}else if(!f)return;return this}}).modelPosition=id.point=id.position,id.modelPositions=id.points=id.positions,id.renderedPoint=id.renderedPosition,id.relativePoint=id.relativePosition,ig=ih={},ih.renderedBoundingBox=function(a){var b=this.boundingBox(a),c=this.cy(),d=c.zoom(),e=c.pan(),f=b.x1*d+e.x,g=b.x2*d+e.x,h=b.y1*d+e.y,i=b.y2*d+e.y;return{x1:f,x2:g,y1:h,y2:i,w:g-f,h:i-h}},ih.dirtyCompoundBoundsCache=function(){var a=arguments.length>0&&void 0!==arguments[0]&&arguments[0],b=this.cy();return b.styleEnabled()&&b.hasCompoundNodes()&&this.forEachUp(function(b){if(b.isParent()){var c=b._private;c.compoundBoundsClean=!1,c.bbCache=null,a||b.emitAndNotify("bounds")}}),this},ih.updateCompoundBounds=function(){var a=arguments.length>0&&void 0!==arguments[0]&&arguments[0],b=this.cy();if(!b.styleEnabled()||!b.hasCompoundNodes()||!a&&b.batching())return this;for(var c=0;c<this.length;c++){var d=this[c],e=d._private;(!e.compoundBoundsClean||a)&&(!function(a){if(a.isParent()){var b=a._private,c=a.children(),d="include"===a.pstyle("compound-sizing-wrt-labels").value,e={width:{val:a.pstyle("min-width").pfValue,left:a.pstyle("min-width-bias-left"),right:a.pstyle("min-width-bias-right")},height:{val:a.pstyle("min-height").pfValue,top:a.pstyle("min-height-bias-top"),bottom:a.pstyle("min-height-bias-bottom")}},f=c.boundingBox({includeLabels:d,includeOverlays:!1,useCache:!1}),g=b.position;(0===f.w||0===f.h)&&((f={w:a.pstyle("width").pfValue,h:a.pstyle("height").pfValue}).x1=g.x-f.w/2,f.x2=g.x+f.w/2,f.y1=g.y-f.h/2,f.y2=g.y+f.h/2);var h=e.width.left.value;"px"===e.width.left.units&&e.width.val>0&&(h=100*h/e.width.val);var i=e.width.right.value;"px"===e.width.right.units&&e.width.val>0&&(i=100*i/e.width.val);var j=e.height.top.value;"px"===e.height.top.units&&e.height.val>0&&(j=100*j/e.height.val);var k=e.height.bottom.value;"px"===e.height.bottom.units&&e.height.val>0&&(k=100*k/e.height.val);var l=s(e.width.val-f.w,h,i),n=l.biasDiff,o=l.biasComplementDiff,p=s(e.height.val-f.h,j,k),q=p.biasDiff,r=p.biasComplementDiff;b.autoPadding=function(a,b,c,d){if("%"===c.units)switch(d){case"width":return a>0?c.pfValue*a:0;case"height":return b>0?c.pfValue*b:0;case"average":return a>0&&b>0?c.pfValue*(a+b)/2:0;case"min":return a>0&&b>0?a>b?c.pfValue*b:c.pfValue*a:0;case"max":return a>0&&b>0?a>b?c.pfValue*a:c.pfValue*b:0;default:return 0}return"px"===c.units?c.pfValue:0}(f.w,f.h,a.pstyle("padding"),a.pstyle("padding-relative-to").value),b.autoWidth=Math.max(f.w,e.width.val),g.x=(-n+f.x1+f.x2+o)/2,b.autoHeight=Math.max(f.h,e.height.val),g.y=(-q+f.y1+f.y2+r)/2}function s(a,b,c){var d=0,e=0,f=b+c;return a>0&&f>0&&(d=b/f*a,e=c/f*a),{biasDiff:d,biasComplementDiff:e}}}(d),b.batching()||(e.compoundBoundsClean=!0))}return this};var dO=function(a){return a===1/0||a===-1/0?0:a},dP=function(a,b,c,d,e){d-b==0||e-c==0||null!=b&&null!=c&&null!=d&&null!=e&&(a.x1=b<a.x1?b:a.x1,a.x2=d>a.x2?d:a.x2,a.y1=c<a.y1?c:a.y1,a.y2=e>a.y2?e:a.y2,a.w=a.x2-a.x1,a.h=a.y2-a.y1)},dQ=function(a,b){return null==b?a:dP(a,b.x1,b.y1,b.x2,b.y2)},dR=function(a,b,c){return aL(a,b,c)},dS=function(a,b,c){if(!b.cy().headless()){var d,e,f=b._private,g=f.rstyle,h=g.arrowWidth/2;if("none"!==b.pstyle(c+"-arrow-shape").value){"source"===c?(d=g.srcX,e=g.srcY):"target"===c?(d=g.tgtX,e=g.tgtY):(d=g.midX,e=g.midY);var i=f.arrowBounds=f.arrowBounds||{},j=i[c]=i[c]||{};j.x1=d-h,j.y1=e-h,j.x2=d+h,j.y2=e+h,j.w=j.x2-j.x1,j.h=j.y2-j.y1,bn(j,1),dP(a,j.x1,j.y1,j.x2,j.y2)}}},dT=function(a,b,c){if(!b.cy().headless()){f=c?c+"-":"";var d=b._private,e=d.rstyle;if(b.pstyle(f+"label").strValue){var f,g,h,i,j,k=b.pstyle("text-halign"),l=b.pstyle("text-valign"),n=dR(e,"labelWidth",c),o=dR(e,"labelHeight",c),p=dR(e,"labelX",c),q=dR(e,"labelY",c),r=b.pstyle(f+"text-margin-x").pfValue,s=b.pstyle(f+"text-margin-y").pfValue,t=b.isEdge(),u=b.pstyle(f+"text-rotation"),v=b.pstyle("text-outline-width").pfValue,w=b.pstyle("text-border-width").pfValue/2,x=b.pstyle("text-background-padding").pfValue,y=n/2,z=o/2;if(t)g=p-y,h=p+y,i=q-z,j=q+z;else{switch(k.value){case"left":g=p-n,h=p;break;case"center":g=p-y,h=p+y;break;case"right":g=p,h=p+n}switch(l.value){case"top":i=q-o,j=q;break;case"center":i=q-z,j=q+z;break;case"bottom":i=q,j=q+o}}var A=r-Math.max(v,w)-x-2,B=r+Math.max(v,w)+x+2,C=s-Math.max(v,w)-x-2,D=s+Math.max(v,w)+x+2;g+=A,h+=B,i+=C,j+=D;var E=c||"main",F=d.labelBounds,G=F[E]=F[E]||{};G.x1=g,G.y1=i,G.x2=h,G.y2=j,G.w=h-g,G.h=j-i,G.leftPad=A,G.rightPad=B,G.topPad=C,G.botPad=D;var H=t&&"autorotate"===u.strValue,I=null!=u.pfValue&&0!==u.pfValue;if(H||I){var J=H?dR(d.rstyle,"labelAngle",c):u.pfValue,K=Math.cos(J),L=Math.sin(J),M=(g+h)/2,N=(i+j)/2;if(!t){switch(k.value){case"left":M=h;break;case"right":M=g}switch(l.value){case"top":N=j;break;case"bottom":N=i}}var O=function(a,b){return{x:(a-=M)*K-(b-=N)*L+M,y:a*L+b*K+N}},P=O(g,i),Q=O(g,j),R=O(h,i),S=O(h,j);g=Math.min(P.x,Q.x,R.x,S.x),h=Math.max(P.x,Q.x,R.x,S.x),i=Math.min(P.y,Q.y,R.y,S.y),j=Math.max(P.y,Q.y,R.y,S.y)}var T=E+"Rot",U=F[T]=F[T]||{};U.x1=g,U.y1=i,U.x2=h,U.y2=j,U.w=h-g,U.h=j-i,dP(a,g,i,h,j),dP(d.labelBounds.all,g,i,h,j)}return a}},dU=function(a,b){if(!b.cy().headless()){var c=b.pstyle("outline-opacity").value,d=b.pstyle("outline-width").value+b.pstyle("outline-offset").value;dV(a,b,c,d,"outside",d/2)}},dV=function(a,b,c,d,e,f){if(0!==c&&!(d<=0)&&"inside"!==e){var g=b.cy(),h=b.pstyle("shape").value,i=g.renderer().nodeShapes[h],j=b.position(),k=j.x,l=j.y,n=b.width(),o=b.height();i.hasMiterBounds?("center"===e&&(d/=2),dQ(a,i.miterBounds(k,l,n,o,d))):null!=f&&f>0&&bo(a,[f,f,f,f])}},dW=function(a,b){if(!b.cy().headless()){var c=b.pstyle("border-opacity").value,d=b.pstyle("border-width").pfValue,e=b.pstyle("border-position").value;dV(a,b,c,d,e)}},dX=function(a,b){var c=a._private.cy,d=c.styleEnabled(),e=c.headless(),f=bj(),g=a._private,h=a.isNode(),i=a.isEdge(),j=g.rstyle,k=h&&d?a.pstyle("bounds-expansion").pfValue:[0],l=function(a){return"none"!==a.pstyle("display").value},n=!d||l(a)&&(!i||l(a.source())&&l(a.target()));if(n){var o=0;d&&b.includeOverlays&&0!==a.pstyle("overlay-opacity").value&&(o=a.pstyle("overlay-padding").value);var p=0;d&&b.includeUnderlays&&0!==a.pstyle("underlay-opacity").value&&(p=a.pstyle("underlay-padding").value);var q=Math.max(o,p),r=0;if(d&&(r=a.pstyle("width").pfValue/2),h&&b.includeNodes){var s=a.position();z=s.x,A=s.y;var t=a.outerWidth()/2,u=a.outerHeight()/2;v=z-t,w=z+t,dP(f,v,x=A-u,w,y=A+u),d&&dU(f,a),d&&b.includeOutlines&&!e&&dU(f,a),d&&dW(f,a)}else if(i&&b.includeEdges)if(d&&!e){var v,w,x,y,z,A,B,C=a.pstyle("curve-style").strValue;if(v=Math.min(j.srcX,j.midX,j.tgtX),w=Math.max(j.srcX,j.midX,j.tgtX),x=Math.min(j.srcY,j.midY,j.tgtY),y=Math.max(j.srcY,j.midY,j.tgtY),v-=r,w+=r,dP(f,v,x-=r,w,y+=r),"haystack"===C){var D=j.haystackPts;if(D&&2===D.length){if(v=D[0].x,x=D[0].y,w=D[1].x,y=D[1].y,v>w){var E=v;v=w,w=E}if(x>y){var F=x;x=y,y=F}dP(f,v-r,x-r,w+r,y+r)}}else if("bezier"===C||"unbundled-bezier"===C||L(C,"segments")||L(C,"taxi")){switch(C){case"bezier":case"unbundled-bezier":B=j.bezierPts;break;case"segments":case"taxi":case"round-segments":case"round-taxi":B=j.linePts}if(null!=B)for(var G=0;G<B.length;G++){var H=B[G];v=H.x-r,w=H.x+r,dP(f,v,x=H.y-r,w,y=H.y+r)}}}else{var I=a.source().position(),J=a.target().position();if(v=I.x,w=J.x,x=I.y,y=J.y,v>w){var K=v;v=w,w=K}if(x>y){var M=x;x=y,y=M}v-=r,w+=r,dP(f,v,x-=r,w,y+=r)}if(d&&b.includeEdges&&i&&(dS(f,a,"mid-source"),dS(f,a,"mid-target"),dS(f,a,"source"),dS(f,a,"target")),d&&"yes"===a.pstyle("ghost").value){var N=a.pstyle("ghost-offset-x").pfValue,O=a.pstyle("ghost-offset-y").pfValue;dP(f,f.x1+N,f.y1+O,f.x2+N,f.y2+O)}var P=g.bodyBounds=g.bodyBounds||{};bp(P,f),bo(P,k),bn(P,1),d&&(v=f.x1,w=f.x2,x=f.y1,y=f.y2,dP(f,v-q,x-q,w+q,y+q));var Q=g.overlayBounds=g.overlayBounds||{};bp(Q,f),bo(Q,k),bn(Q,1);var R=g.labelBounds=g.labelBounds||{};null!=R.all?bk(R.all):R.all=bj(),d&&b.includeLabels&&(b.includeMainLabels&&dT(f,a,null),i&&(b.includeSourceLabels&&dT(f,a,"source"),b.includeTargetLabels&&dT(f,a,"target")))}return f.x1=dO(f.x1),f.y1=dO(f.y1),f.x2=dO(f.x2),f.y2=dO(f.y2),f.w=dO(f.x2-f.x1),f.h=dO(f.y2-f.y1),f.w>0&&f.h>0&&n&&(bo(f,k),bn(f,1)),f},dY=function(a){var b=0,c=function(a){return!!a<<b++};return 0+c(a.incudeNodes)+c(a.includeEdges)+c(a.includeLabels)+c(a.includeMainLabels)+c(a.includeSourceLabels)+c(a.includeTargetLabels)+c(a.includeOverlays)+c(a.includeOutlines)},dZ=function(a){var b=function(a){return Math.round(a)};if(a.isEdge()){var c=a.source().position(),d=a.target().position();return ao([b(c.x),b(c.y),b(d.x),b(d.y)])}var e=a.position();return ao([b(e.x),b(e.y)])},d$=function(a,b){var c,d=a._private,e=a.isEdge(),f=null==b?d0:dY(b);if(null==d.bbCache?(d.bbCache=c=dX(a,d_),d.bbCachePosKey=dZ(a)):c=d.bbCache,f!==d0){var g=a.isNode();c=bj(),(b.includeNodes&&g||b.includeEdges&&!g)&&(b.includeOverlays?dQ(c,d.overlayBounds):dQ(c,d.bodyBounds)),b.includeLabels&&(b.includeMainLabels&&(!e||b.includeSourceLabels&&b.includeTargetLabels)?dQ(c,d.labelBounds.all):(b.includeMainLabels&&dQ(c,d.labelBounds.mainRot),b.includeSourceLabels&&dQ(c,d.labelBounds.sourceRot),b.includeTargetLabels&&dQ(c,d.labelBounds.targetRot))),c.w=c.x2-c.x1,c.h=c.y2-c.y1}return c},d_={includeNodes:!0,includeEdges:!0,includeLabels:!0,includeMainLabels:!0,includeSourceLabels:!0,includeTargetLabels:!0,includeOverlays:!0,includeUnderlays:!0,includeOutlines:!0,useCache:!0},d0=dY(d_),d1=aH(d_);ih.boundingBox=function(a){var b,c=void 0===a||void 0===a.useCache||!0===a.useCache,d=G(function(a){var b=a._private;return null==b.bbCache||b.styleDirty||b.bbCachePosKey!==dZ(a)},function(a){return a.id()});if(c&&1===this.length&&!d(this[0]))a=void 0===a?d_:d1(a),b=d$(this[0],a);else{b=bj();var e=d1(a=a||d_),f=this.cy().styleEnabled();this.edges().forEach(d),this.nodes().forEach(d),f&&this.recalculateRenderedStyle(c),this.updateCompoundBounds(!c);for(var g=0;g<this.length;g++){var h=this[g];d(h)&&h.dirtyBoundingBoxCache(),dQ(b,d$(h,e))}}return b.x1=dO(b.x1),b.y1=dO(b.y1),b.x2=dO(b.x2),b.y2=dO(b.y2),b.w=dO(b.x2-b.x1),b.h=dO(b.y2-b.y1),b},ih.dirtyBoundingBoxCache=function(){for(var a=0;a<this.length;a++){var b=this[a]._private;b.bbCache=null,b.bbCachePosKey=null,b.bodyBounds=null,b.overlayBounds=null,b.labelBounds.all=null,b.labelBounds.source=null,b.labelBounds.target=null,b.labelBounds.main=null,b.labelBounds.sourceRot=null,b.labelBounds.targetRot=null,b.labelBounds.mainRot=null,b.arrowBounds.source=null,b.arrowBounds.target=null,b.arrowBounds["mid-source"]=null,b.arrowBounds["mid-target"]=null}return this.emitAndNotify("bounds"),this},ih.boundingBoxAt=function(a){var b,c=this.nodes(),d=this.cy(),e=d.hasCompoundNodes(),f=d.collection();if(e&&(f=c.filter(function(a){return a.isParent()}),c=c.not(f)),w(a)){var g=a;a=function(){return g}}d.startBatch(),c.forEach(function(b,c){return b._private.bbAtOldPos=a(b,c)}).silentPositions(a),e&&(f.dirtyCompoundBoundsCache(),f.dirtyBoundingBoxCache(),f.updateCompoundBounds(!0));var h={x1:(b=this.boundingBox({useCache:!1})).x1,x2:b.x2,w:b.w,y1:b.y1,y2:b.y2,h:b.h};return c.silentPositions(function(a){return a._private.bbAtOldPos}),e&&(f.dirtyCompoundBoundsCache(),f.dirtyBoundingBoxCache(),f.updateCompoundBounds(!0)),d.endBatch(),h},ig.boundingbox=ig.bb=ig.boundingBox,ig.renderedBoundingbox=ig.renderedBoundingBox,ii=ij={};var d2=function(a){a.uppercaseName=K(a.name),a.autoName="auto"+a.uppercaseName,a.labelName="label"+a.uppercaseName,a.outerName="outer"+a.uppercaseName,a.uppercaseOuterName=K(a.outerName),ii[a.name]=function(){var b=this[0],c=b._private,d=c.cy._private.styleEnabled;if(b)if(!d)return 1;else{if(b.isParent())return b.updateCompoundBounds(),c[a.autoName]||0;var e=b.pstyle(a.name);return"label"===e.strValue?(b.recalculateRenderedStyle(),c.rstyle[a.labelName]||0):e.pfValue}},ii["outer"+a.uppercaseName]=function(){var b=this[0],c=b._private.cy._private.styleEnabled;if(b)if(!c)return 1;else{var d=b[a.name](),e=b.pstyle("border-position").value;return d+("center"===e?b.pstyle("border-width").pfValue:"outside"===e?2*b.pstyle("border-width").pfValue:0)+2*b.padding()}},ii["rendered"+a.uppercaseName]=function(){var b=this[0];if(b)return b[a.name]()*this.cy().zoom()},ii["rendered"+a.uppercaseOuterName]=function(){var b=this[0];if(b)return b[a.outerName]()*this.cy().zoom()}};d2({name:"width"}),d2({name:"height"}),ij.padding=function(){var a=this[0],b=a._private;return a.isParent()&&(a.updateCompoundBounds(),void 0!==b.autoPadding)?b.autoPadding:a.pstyle("padding").pfValue},ij.paddedHeight=function(){var a=this[0];return a.height()+2*a.padding()},ij.paddedWidth=function(){var a=this[0];return a.width()+2*a.padding()};var d3=function(a,b){if(a.isEdge()&&a.takesUpSpace())return b(a)},d4=function(a,b){if(a.isEdge()&&a.takesUpSpace()){var c=a.cy();return a2(b(a),c.zoom(),c.pan())}},d5=function(a,b){if(a.isEdge()&&a.takesUpSpace()){var c=a.cy(),d=c.pan(),e=c.zoom();return b(a).map(function(a){return a2(a,e,d)})}},d6={controlPoints:{get:function(a){return a.renderer().getControlPoints(a)},mult:!0},segmentPoints:{get:function(a){return a.renderer().getSegmentPoints(a)},mult:!0},sourceEndpoint:{get:function(a){return a.renderer().getSourceEndpoint(a)}},targetEndpoint:{get:function(a){return a.renderer().getTargetEndpoint(a)}},midpoint:{get:function(a){return a.renderer().getEdgeMidpoint(a)}}},d7=S({},ie,ih,ij,Object.keys(d6).reduce(function(a,b){var c=d6[b],d="rendered"+b[0].toUpperCase()+b.substr(1);return a[b]=function(){return d3(this,c.get)},c.mult?a[d]=function(){return d5(this,c.get)}:a[d]=function(){return d4(this,c.get)},a},{})),d8=function(a,b){this.recycle(a,b)};function d9(){return!1}function ea(){return!0}d8.prototype={instanceString:function(){return"event"},recycle:function(a,b){if(this.isImmediatePropagationStopped=this.isPropagationStopped=this.isDefaultPrevented=d9,null!=a&&a.preventDefault?(this.type=a.type,this.isDefaultPrevented=a.defaultPrevented?ea:d9):null!=a&&a.type?b=a:this.type=a,null!=b&&(this.originalEvent=b.originalEvent,this.type=null!=b.type?b.type:this.type,this.cy=b.cy,this.target=b.target,this.position=b.position,this.renderedPosition=b.renderedPosition,this.namespace=b.namespace,this.layout=b.layout),null!=this.cy&&null!=this.position&&null==this.renderedPosition){var c=this.position,d=this.cy.zoom(),e=this.cy.pan();this.renderedPosition={x:c.x*d+e.x,y:c.y*d+e.y}}this.timeStamp=a&&a.timeStamp||Date.now()},preventDefault:function(){this.isDefaultPrevented=ea;var a=this.originalEvent;a&&a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.isPropagationStopped=ea;var a=this.originalEvent;a&&a.stopPropagation&&a.stopPropagation()},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=ea,this.stopPropagation()},isDefaultPrevented:d9,isPropagationStopped:d9,isImmediatePropagationStopped:d9};var eb=/^([^.]+)(\.(?:[^.]+))?$/,ec={qualifierCompare:function(a,b){return a===b},eventMatches:function(){return!0},addEventFields:function(){},callbackContext:function(a){return a},beforeEmit:function(){},afterEmit:function(){},bubble:function(){return!1},parent:function(){return null},context:null},ed=Object.keys(ec),ee={};function ef(){for(var a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:ee,b=arguments.length>1?arguments[1]:void 0,c=0;c<ed.length;c++){var d=ed[c];this[d]=a[d]||ec[d]}this.context=b||this.context,this.listeners=[],this.emitting=0}var eg=ef.prototype,eh=function(a,b,c,d,e,f,g){u(d)&&(e=d,d=null),g&&(f=null==f?g:S({},f,g));for(var h=v(c)?c:c.split(/\s+/),i=0;i<h.length;i++){var j=h[i];if(!E(j)){var k=j.match(eb);if(k&&!1===b(a,j,k[1],k[2]?k[2]:null,d,e,f))break}}},ei=function(a,b){return a.addEventFields(a.context,b),new d8(b.type,b)},ej=function(a,b,c){if("event"===s(c))return void b(a,c);if(w(c))return void b(a,ei(a,c));for(var d=v(c)?c:c.split(/\s+/),e=0;e<d.length;e++){var f=d[e];if(!E(f)){var g=f.match(eb);if(g){var h=ei(a,{type:g[1],namespace:g[2]?g[2]:null,target:a.context});b(a,h)}}}};eg.on=eg.addListener=function(a,b,c,d,e){return eh(this,function(a,b,c,d,e,f,g){u(f)&&a.listeners.push({event:b,callback:f,type:c,namespace:d,qualifier:e,conf:g})},a,b,c,d,e),this},eg.one=function(a,b,c,d){return this.on(a,b,c,d,{one:!0})},eg.removeListener=eg.off=function(a,b,c,d){var e=this;0!==this.emitting&&(this.listeners=this.listeners.slice());for(var f=this.listeners,g=function(g){var h=f[g];eh(e,function(b,c,d,e,i,j){if((h.type===d||"*"===a)&&(!e&&".*"!==h.namespace||h.namespace===e)&&(!i||b.qualifierCompare(h.qualifier,i))&&(!j||h.callback===j))return f.splice(g,1),!1},a,b,c,d)},h=f.length-1;h>=0;h--)g(h);return this},eg.removeAllListeners=function(){return this.removeListener("*")},eg.emit=eg.trigger=function(a,b,c){var d=this.listeners,e=d.length;return this.emitting++,v(b)||(b=[b]),ej(this,function(a,f){null!=c&&(e=(d=[{event:f.event,type:f.type,namespace:f.namespace,callback:c}]).length);for(var g=0;g<e;g++)!function(){var c=d[g];if(c.type===f.type&&(!c.namespace||c.namespace===f.namespace||".*"===c.namespace)&&a.eventMatches(a.context,c,f)){var e=[f];null!=b&&aK(e,b),a.beforeEmit(a.context,c,f),c.conf&&c.conf.one&&(a.listeners=a.listeners.filter(function(a){return a!==c}));var h=a.callbackContext(a.context,c,f),i=c.callback.apply(h,e);a.afterEmit(a.context,c,f),!1===i&&(f.stopPropagation(),f.preventDefault())}}();a.bubble(a.context)&&!f.isPropagationStopped()&&a.parent(a.context).emit(f,b)},a),this.emitting--,this};var ek={qualifierCompare:function(a,b){return null==a||null==b?null==a&&null==b:a.sameText(b)},eventMatches:function(a,b,c){var d=b.qualifier;return null==d||a!==c.target&&A(c.target)&&d.matches(c.target)},addEventFields:function(a,b){b.cy=a.cy(),b.target=a},callbackContext:function(a,b,c){return null!=b.qualifier?c.target:a},beforeEmit:function(a,b){b.conf&&b.conf.once&&b.conf.onceCollection.removeListener(b.event,b.qualifier,b.callback)},bubble:function(){return!0},parent:function(a){return a.isChild()?a.parent():a.cy()}},el=function(a){return t(a)?new dA(a):a},em={createEmitter:function(){for(var a=0;a<this.length;a++){var b=this[a],c=b._private;c.emitter||(c.emitter=new ef(ek,b))}return this},emitter:function(){return this._private.emitter},on:function(a,b,c){for(var d=el(b),e=0;e<this.length;e++)this[e].emitter().on(a,d,c);return this},removeListener:function(a,b,c){for(var d=el(b),e=0;e<this.length;e++)this[e].emitter().removeListener(a,d,c);return this},removeAllListeners:function(){for(var a=0;a<this.length;a++)this[a].emitter().removeAllListeners();return this},one:function(a,b,c){for(var d=el(b),e=0;e<this.length;e++)this[e].emitter().one(a,d,c);return this},once:function(a,b,c){for(var d=el(b),e=0;e<this.length;e++)this[e].emitter().on(a,d,c,{once:!0,onceCollection:this})},emit:function(a,b){for(var c=0;c<this.length;c++)this[c].emitter().emit(a,b);return this},emitAndNotify:function(a,b){if(0!==this.length)return this.cy().notify(a,this),this.emit(a,b),this}};dh.eventAliasesOn(em);var en={nodes:function(a){return this.filter(function(a){return a.isNode()}).filter(a)},edges:function(a){return this.filter(function(a){return a.isEdge()}).filter(a)},byGroup:function(){for(var a=this.spawn(),b=this.spawn(),c=0;c<this.length;c++){var d=this[c];d.isNode()?a.push(d):b.push(d)}return{nodes:a,edges:b}},filter:function(a,b){if(void 0===a)return this;if(t(a)||z(a))return new dA(a).filter(this);if(u(a)){for(var c=this.spawn(),d=0;d<this.length;d++){var e=this[d];(b?a.apply(b,[e,d,this]):a(e,d,this))&&c.push(e)}return c}return this.spawn()},not:function(a){if(!a)return this;t(a)&&(a=this.filter(a));for(var b=this.spawn(),c=0;c<this.length;c++){var d=this[c];a.has(d)||b.push(d)}return b},absoluteComplement:function(){return this.cy().mutableElements().not(this)},intersect:function(a){if(t(a))return this.filter(a);for(var b=this.spawn(),c=this.length<a.length,d=c?this:a,e=c?a:this,f=0;f<d.length;f++){var g=d[f];e.has(g)&&b.push(g)}return b},xor:function(a){var b=this._private.cy;t(a)&&(a=b.$(a));var c=this.spawn(),d=a,e=function(a,b){for(var d=0;d<a.length;d++){var e=a[d],f=e._private.data.id;b.hasElementWithId(f)||c.push(e)}};return e(this,d),e(d,this),c},diff:function(a){var b=this._private.cy;t(a)&&(a=b.$(a));var c=this.spawn(),d=this.spawn(),e=this.spawn(),f=a,g=function(a,b,c){for(var d=0;d<a.length;d++){var f=a[d],g=f._private.data.id;b.hasElementWithId(g)?e.merge(f):c.push(f)}};return g(this,f,c),g(f,this,d),{left:c,right:d,both:e}},add:function(a){var b=this._private.cy;if(!a)return this;if(t(a)){var c=a;a=b.mutableElements().filter(c)}for(var d=this.spawnSelf(),e=0;e<a.length;e++){var f=a[e];this.has(f)||d.push(f)}return d},merge:function(a){var b=this._private,c=b.cy;if(!a)return this;if(a&&t(a)){var d=a;a=c.mutableElements().filter(d)}for(var e=b.map,f=0;f<a.length;f++){var g=a[f],h=g._private.data.id;if(!e.has(h)){var i=this.length++;this[i]=g,e.set(h,{ele:g,index:i})}}return this},unmergeAt:function(a){var b=this[a].id(),c=this._private.map;this[a]=void 0,c.delete(b);var d=a===this.length-1;if(this.length>1&&!d){var e=this.length-1,f=this[e],g=f._private.data.id;this[e]=void 0,this[a]=f,c.set(g,{ele:f,index:a})}return this.length--,this},unmergeOne:function(a){a=a[0];var b=this._private,c=a._private.data.id,d=b.map.get(c);if(!d)return this;var e=d.index;return this.unmergeAt(e),this},unmerge:function(a){var b=this._private.cy;if(!a)return this;if(a&&t(a)){var c=a;a=b.mutableElements().filter(c)}for(var d=0;d<a.length;d++)this.unmergeOne(a[d]);return this},unmergeBy:function(a){for(var b=this.length-1;b>=0;b--)a(this[b])&&this.unmergeAt(b);return this},map:function(a,b){for(var c=[],d=0;d<this.length;d++){var e=this[d],f=b?a.apply(b,[e,d,this]):a(e,d,this);c.push(f)}return c},reduce:function(a,b){for(var c=b,d=0;d<this.length;d++)c=a(c,this[d],d,this);return c},max:function(a,b){for(var c,d=-1/0,e=0;e<this.length;e++){var f=this[e],g=b?a.apply(b,[f,e,this]):a(f,e,this);g>d&&(d=g,c=f)}return{value:d,ele:c}},min:function(a,b){for(var c,d=1/0,e=0;e<this.length;e++){var f=this[e],g=b?a.apply(b,[f,e,this]):a(f,e,this);g<d&&(d=g,c=f)}return{value:d,ele:c}}};en.u=en["|"]=en["+"]=en.union=en.or=en.add,en["\\"]=en["!"]=en["-"]=en.difference=en.relativeComplement=en.subtract=en.not,en.n=en["&"]=en["."]=en.and=en.intersection=en.intersect,en["^"]=en["(+)"]=en["(-)"]=en.symmetricDifference=en.symdiff=en.xor,en.fnFilter=en.filterFn=en.stdFilter=en.filter,en.complement=en.abscomp=en.absoluteComplement;var eo=function(a,b){var c=a.cy().hasCompoundNodes();function d(a){var b=a.pstyle("z-compound-depth");return"auto"===b.value?c?a.zDepth():0:"bottom"===b.value?-1:"top"===b.value?av:0}var e=d(a)-d(b);if(0!==e)return e;function f(a){return"auto"===a.pstyle("z-index-compare").value?+!!a.isNode():0}var g=f(a)-f(b);if(0!==g)return g;var h=a.pstyle("z-index").value-b.pstyle("z-index").value;return 0!==h?h:a.poolIndex()-b.poolIndex()},ep={forEach:function(a,b){if(u(a))for(var c=this.length,d=0;d<c;d++){var e=this[d];if(!1===(b?a.apply(b,[e,d,this]):a(e,d,this)))break}return this},toArray:function(){for(var a=[],b=0;b<this.length;b++)a.push(this[b]);return a},slice:function(a,b){var c=[],d=this.length;null==b&&(b=d),null==a&&(a=0),a<0&&(a=d+a),b<0&&(b=d+b);for(var e=a;e>=0&&e<b&&e<d;e++)c.push(this[e]);return this.spawn(c)},size:function(){return this.length},eq:function(a){return this[a]||this.spawn()},first:function(){return this[0]||this.spawn()},last:function(){return this[this.length-1]||this.spawn()},empty:function(){return 0===this.length},nonempty:function(){return!this.empty()},sort:function(a){if(!u(a))return this;var b=this.toArray().sort(a);return this.spawn(b)},sortByZIndex:function(){return this.sort(eo)},zDepth:function(){var a=this[0];if(a){var b=a._private;if("nodes"===b.group){var c=b.data.parent?a.parents().size():0;return a.isParent()?c:av-1}var d=b.source,e=b.target;return Math.max(d.zDepth(),e.zDepth(),0)}}};ep.each=ep.forEach,("u"<typeof Symbol?"undefined":l(Symbol))!="undefined"&&"undefined"!=l(Symbol.iterator)&&(ep[Symbol.iterator]=function(){var a=this,b={value:void 0,done:!1},c=0,d=this.length;return h({next:function(){return c<d?b.value=a[c++]:(b.value=void 0,b.done=!0),b}},Symbol.iterator,function(){return this})});var eq=aH({nodeDimensionsIncludeLabels:!1}),er={layoutDimensions:function(a){if(a=eq(a),this.takesUpSpace())if(a.nodeDimensionsIncludeLabels){var b,c=this.boundingBox();b={w:c.w,h:c.h}}else b={w:this.outerWidth(),h:this.outerHeight()};else b={w:0,h:0};return(0===b.w||0===b.h)&&(b.w=b.h=1),b},layoutPositions:function(a,b,c){var d=this.nodes().filter(function(a){return!a.isParent()}),e=this.cy(),f=b.eles,g=function(a){return a.id()},h=G(c,g);a.emit({type:"layoutstart",layout:a}),a.animations=[];var i=function(a,b,c){var d={x:b.x1+b.w/2,y:b.y1+b.h/2},e={x:(c.x-d.x)*a,y:(c.y-d.y)*a};return{x:d.x+e.x,y:d.y+e.y}},j=b.spacingFactor&&1!==b.spacingFactor,k=function(){if(!j)return null;for(var a=bj(),b=0;b<d.length;b++){var c=h(d[b],b);bm(a,c.x,c.y)}return a}(),l=G(function(a,c){var d=h(a,c);return j&&(d=i(Math.abs(b.spacingFactor),k,d)),null!=b.transform&&(d=b.transform(a,d)),d},g);if(b.animate){for(var n=0;n<d.length;n++){var o=d[n],p=l(o,n);if(null==b.animateFilter||b.animateFilter(o,n)){var q=o.animation({position:p,duration:b.animationDuration,easing:b.animationEasing});a.animations.push(q)}else o.position(p)}if(b.fit){var r=e.animation({fit:{boundingBox:f.boundingBoxAt(l),padding:b.padding},duration:b.animationDuration,easing:b.animationEasing});a.animations.push(r)}else if(void 0!==b.zoom&&void 0!==b.pan){var s=e.animation({zoom:b.zoom,pan:b.pan,duration:b.animationDuration,easing:b.animationEasing});a.animations.push(s)}a.animations.forEach(function(a){return a.play()}),a.one("layoutready",b.ready),a.emit({type:"layoutready",layout:a}),c0.all(a.animations.map(function(a){return a.promise()})).then(function(){a.one("layoutstop",b.stop),a.emit({type:"layoutstop",layout:a})})}else d.positions(l),b.fit&&e.fit(b.eles,b.padding),null!=b.zoom&&e.zoom(b.zoom),b.pan&&e.pan(b.pan),a.one("layoutready",b.ready),a.emit({type:"layoutready",layout:a}),a.one("layoutstop",b.stop),a.emit({type:"layoutstop",layout:a});return this},layout:function(a){return this.cy().makeLayout(S({},a,{eles:this}))}};function es(a,b,c){var d,e=c._private,f=e.styleCache=e.styleCache||[];return null!=(d=f[a])?d:d=f[a]=b(c)}function et(a,b){return a=ap(a),function(c){return es(a,b,c)}}function eu(a,b){a=ap(a);var c=function(a){return b.call(a)};return function(){var b=this[0];if(b)return es(a,c,b)}}er.createLayout=er.makeLayout=er.layout;var ev={recalculateRenderedStyle:function(a){var b=this.cy(),c=b.renderer(),d=b.styleEnabled();return c&&d&&c.recalculateRenderedStyle(this,a),this},dirtyStyleCache:function(){var a,b=this.cy(),c=function(a){return a._private.styleCache=null};return b.hasCompoundNodes()?((a=this.spawnSelf().merge(this.descendants()).merge(this.parents())).merge(a.connectedEdges()),a.forEach(c)):this.forEach(function(a){c(a),a.connectedEdges().forEach(c)}),this},updateStyle:function(a){var b=this._private.cy;if(!b.styleEnabled())return this;if(b.batching())return b._private.batchStyleEles.merge(this),this;var c=b.hasCompoundNodes(),d=this;a=!!a||void 0===a,c&&(d=this.spawnSelf().merge(this.descendants()).merge(this.parents()));var e=d;return a?e.emitAndNotify("style"):e.emit("style"),d.forEach(function(a){return a._private.styleDirty=!0}),this},cleanStyle:function(){var a=this.cy();if(a.styleEnabled())for(var b=0;b<this.length;b++){var c=this[b];c._private.styleDirty&&(c._private.styleDirty=!1,a.style().apply(c))}},parsedStyle:function(a){var b=!(arguments.length>1)||void 0===arguments[1]||arguments[1],c=this[0],d=c.cy();if(d.styleEnabled()&&c){c._private.styleDirty&&(c._private.styleDirty=!1,d.style().apply(c));var e=c._private.style[a];return null!=e?e:b?d.style().getDefaultProperty(a):null}},numericStyle:function(a){var b=this[0];if(b.cy().styleEnabled()&&b){var c=b.pstyle(a);return void 0!==c.pfValue?c.pfValue:c.value}},numericStyleUnits:function(a){var b=this[0];if(b.cy().styleEnabled()&&b)return b.pstyle(a).units},renderedStyle:function(a){var b=this.cy();if(!b.styleEnabled())return this;var c=this[0];if(c)return b.style().getRenderedStyle(c,a)},style:function(a,b){var c=this.cy();if(!c.styleEnabled())return this;var d=c.style();if(w(a))d.applyBypass(this,a,!1),this.emitAndNotify("style");else if(t(a))if(void 0===b){var e=this[0];return e?d.getStylePropertyValue(e,a):void 0}else d.applyBypass(this,a,b,!1),this.emitAndNotify("style");else if(void 0===a){var f=this[0];return f?d.getRawStyle(f):void 0}return this},removeStyle:function(a){var b=this.cy();if(!b.styleEnabled())return this;var c=b.style();if(void 0===a)for(var d=0;d<this.length;d++){var e=this[d];c.removeAllBypasses(e,!1)}else{a=a.split(/\s+/);for(var f=0;f<this.length;f++){var g=this[f];c.removeBypasses(g,a,!1)}}return this.emitAndNotify("style"),this},show:function(){return this.css("display","element"),this},hide:function(){return this.css("display","none"),this},effectiveOpacity:function(){var a=this.cy();if(!a.styleEnabled())return 1;var b=a.hasCompoundNodes(),c=this[0];if(c){var d=c._private,e=c.pstyle("opacity").value;if(!b)return e;var f=d.data.parent?c.parents():null;if(f)for(var g=0;g<f.length;g++)e*=f[g].pstyle("opacity").value;return e}},transparent:function(){if(!this.cy().styleEnabled())return!1;var a=this[0],b=a.cy().hasCompoundNodes();if(a)if(!b)return 0===a.pstyle("opacity").value;else return 0===a.effectiveOpacity()},backgrounding:function(){return!!this.cy().styleEnabled()&&!!this[0]._private.backgrounding}};function ew(a,b){var c=a._private.data.parent?a.parents():null;if(c){for(var d=0;d<c.length;d++)if(!b(c[d]))return!1}return!0}function ex(a){var b=a.ok,c=a.edgeOkViaNode||a.ok,d=a.parentOk||a.ok;return function(){var a=this.cy();if(!a.styleEnabled())return!0;var e=this[0],f=a.hasCompoundNodes();if(e){var g=e._private;if(!b(e))return!1;if(e.isNode())return!f||ew(e,d);var h=g.source,i=g.target;return c(h)&&(!f||ew(h,c))&&(h===i||c(i)&&(!f||ew(i,c)))}}}var ey=et("eleTakesUpSpace",function(a){return"element"===a.pstyle("display").value&&0!==a.width()&&(!a.isNode()||0!==a.height())});ev.takesUpSpace=eu("takesUpSpace",ex({ok:ey})),ev.interactive=eu("interactive",ex({ok:et("eleInteractive",function(a){return"yes"===a.pstyle("events").value&&"visible"===a.pstyle("visibility").value&&ey(a)}),parentOk:et("parentInteractive",function(a){return"visible"===a.pstyle("visibility").value&&ey(a)}),edgeOkViaNode:ey})),ev.noninteractive=function(){var a=this[0];if(a)return!a.interactive()},ev.visible=eu("visible",ex({ok:et("eleVisible",function(a){return"visible"===a.pstyle("visibility").value&&0!==a.pstyle("opacity").pfValue&&ey(a)}),edgeOkViaNode:ey})),ev.hidden=function(){var a=this[0];if(a)return!a.visible()},ev.isBundledBezier=eu("isBundledBezier",function(){return!!this.cy().styleEnabled()&&!this.removed()&&"bezier"===this.pstyle("curve-style").value&&this.takesUpSpace()}),ev.bypass=ev.css=ev.style,ev.renderedCss=ev.renderedStyle,ev.removeBypass=ev.removeCss=ev.removeStyle,ev.pstyle=ev.parsedStyle;var ez={};function eA(a){return function(){var b=arguments,c=[];if(2===b.length){var d=b[0],e=b[1];this.on(a.event,d,e)}else if(1===b.length&&u(b[0])){var f=b[0];this.on(a.event,f)}else if(0===b.length||1===b.length&&v(b[0])){for(var g=1===b.length?b[0]:null,h=0;h<this.length;h++){var i=this[h],j=!a.ableField||i._private[a.ableField],k=i._private[a.field]!=a.value;if(a.overrideAble){var l=a.overrideAble(i);if(void 0!==l&&(j=l,!l))return this}j&&(i._private[a.field]=a.value,k&&c.push(i))}var n=this.spawn(c);n.updateStyle(),n.emit(a.event),g&&n.emit(g)}return this}}function eB(a){ez[a.field]=function(){var b=this[0];if(b){if(a.overrideField){var c=a.overrideField(b);if(void 0!==c)return c}return b._private[a.field]}},ez[a.on]=eA({event:a.on,field:a.field,ableField:a.ableField,overrideAble:a.overrideAble,value:!0}),ez[a.off]=eA({event:a.off,field:a.field,ableField:a.ableField,overrideAble:a.overrideAble,value:!1})}eB({field:"locked",overrideField:function(a){return!!a.cy().autolock()||void 0},on:"lock",off:"unlock"}),eB({field:"grabbable",overrideField:function(a){return!(a.cy().autoungrabify()||a.pannable())&&void 0},on:"grabify",off:"ungrabify"}),eB({field:"selected",ableField:"selectable",overrideAble:function(a){return!a.cy().autounselectify()&&void 0},on:"select",off:"unselect"}),eB({field:"selectable",overrideField:function(a){return!a.cy().autounselectify()&&void 0},on:"selectify",off:"unselectify"}),ez.deselect=ez.unselect,ez.grabbed=function(){var a=this[0];if(a)return a._private.grabbed},eB({field:"active",on:"activate",off:"unactivate"}),eB({field:"pannable",on:"panify",off:"unpanify"}),ez.inactive=function(){var a=this[0];if(a)return!a._private.active};var eC={},eD=function(a){return function(b){for(var c=[],d=0;d<this.length;d++){var e=this[d];if(e.isNode()){for(var f=!1,g=e.connectedEdges(),h=0;h<g.length;h++){var i=g[h],j=i.source(),k=i.target();if(a.noIncomingEdges&&k===e&&j!==e||a.noOutgoingEdges&&j===e&&k!==e){f=!0;break}}f||c.push(e)}}return this.spawn(c,!0).filter(b)}},eE=function(a){return function(b){for(var c=[],d=0;d<this.length;d++){var e=this[d];if(e.isNode())for(var f=e.connectedEdges(),g=0;g<f.length;g++){var h=f[g],i=h.source(),j=h.target();a.outgoing&&i===e?(c.push(h),c.push(j)):a.incoming&&j===e&&(c.push(h),c.push(i))}}return this.spawn(c,!0).filter(b)}},eF=function(a){return function(b){for(var c=this,d=[],e={};;){var f=a.outgoing?c.outgoers():c.incomers();if(0===f.length)break;for(var g=!1,h=0;h<f.length;h++){var i=f[h],j=i.id();e[j]||(e[j]=!0,d.push(i),g=!0)}if(!g)break;c=f}return this.spawn(d,!0).filter(b)}};function eG(a){return function(b){for(var c=[],d=0;d<this.length;d++){var e=this[d]._private[a.attr];e&&c.push(e)}return this.spawn(c,!0).filter(b)}}function eH(a){return function(b){var c=[],d=this._private.cy,e=a||{};t(b)&&(b=d.$(b));for(var f=0;f<b.length;f++)for(var g=b[f]._private.edges,h=0;h<g.length;h++){var i=g[h],j=i._private.data,k=this.hasElementWithId(j.source)&&b.hasElementWithId(j.target),l=b.hasElementWithId(j.source)&&this.hasElementWithId(j.target);if(k||l){if((e.thisIsSrc||e.thisIsTgt)&&(e.thisIsSrc&&!k||e.thisIsTgt&&!l))continue;c.push(i)}}return this.spawn(c,!0)}}function eI(a){return a=S({},{codirected:!1},a),function(b){for(var c=[],d=this.edges(),e=a,f=0;f<d.length;f++)for(var g=d[f]._private,h=g.source,i=h._private.data.id,j=g.data.target,k=h._private.edges,l=0;l<k.length;l++){var n=k[l],o=n._private.data,p=o.target,q=o.source,r=p===j&&q===i,s=i===p&&j===q;(e.codirected&&r||!e.codirected&&(r||s))&&c.push(n)}return this.spawn(c,!0).filter(b)}}eC.clearTraversalCache=function(){for(var a=0;a<this.length;a++)this[a]._private.traversalCache=null},S(eC,{roots:eD({noIncomingEdges:!0}),leaves:eD({noOutgoingEdges:!0}),outgoers:dD(eE({outgoing:!0}),"outgoers"),successors:eF({outgoing:!0}),incomers:dD(eE({incoming:!0}),"incomers"),predecessors:eF({})}),S(eC,{neighborhood:dD(function(a){for(var b=[],c=this.nodes(),d=0;d<c.length;d++)for(var e=c[d],f=e.connectedEdges(),g=0;g<f.length;g++){var h=f[g],i=h.source(),j=h.target(),k=e===i?j:i;k.length>0&&b.push(k[0]),b.push(h[0])}return this.spawn(b,!0).filter(a)},"neighborhood"),closedNeighborhood:function(a){return this.neighborhood().add(this).filter(a)},openNeighborhood:function(a){return this.neighborhood(a)}}),eC.neighbourhood=eC.neighborhood,eC.closedNeighbourhood=eC.closedNeighborhood,eC.openNeighbourhood=eC.openNeighborhood,S(eC,{source:dD(function(a){var b,c=this[0];return c&&(b=c._private.source||c.cy().collection()),b&&a?b.filter(a):b},"source"),target:dD(function(a){var b,c=this[0];return c&&(b=c._private.target||c.cy().collection()),b&&a?b.filter(a):b},"target"),sources:eG({attr:"source"}),targets:eG({attr:"target"})}),S(eC,{edgesWith:dD(eH(),"edgesWith"),edgesTo:dD(eH({thisIsSrc:!0}),"edgesTo")}),S(eC,{connectedEdges:dD(function(a){for(var b=[],c=0;c<this.length;c++){var d=this[c];if(d.isNode())for(var e=d._private.edges,f=0;f<e.length;f++){var g=e[f];b.push(g)}}return this.spawn(b,!0).filter(a)},"connectedEdges"),connectedNodes:dD(function(a){for(var b=[],c=0;c<this.length;c++){var d=this[c];d.isEdge()&&(b.push(d.source()[0]),b.push(d.target()[0]))}return this.spawn(b,!0).filter(a)},"connectedNodes"),parallelEdges:dD(eI(),"parallelEdges"),codirectedEdges:dD(eI({codirected:!0}),"codirectedEdges")}),S(eC,{components:function(a){var b=this,c=b.cy(),d=c.collection(),e=null==a?b.nodes():a.nodes(),f=[];null!=a&&e.empty()&&(e=a.sources());var g=function(a,b){d.merge(a),e.unmerge(a),b.merge(a)};if(e.empty())return b.spawn();do!function(){var a=c.collection();f.push(a);var d=e[0];g(d,a),b.bfs({directed:!1,roots:d,visit:function(b){return g(b,a)}}),a.forEach(function(c){c.connectedEdges().forEach(function(c){b.has(c)&&a.has(c.source())&&a.has(c.target())&&a.merge(c)})})}();while(e.length>0);return f},component:function(){var a=this[0];return a.cy().mutableElements().components(a)[0]}}),eC.componentsOf=eC.components;var eJ=function(a,b){var c=arguments.length>2&&void 0!==arguments[2]&&arguments[2],d=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(void 0===a)return void aA("A collection must have a reference to the core");var e=new aO,f=!1;if(b){if(b.length>0&&w(b[0])&&!A(b[0])){f=!0;for(var g=[],h=new aQ,i=0,j=b.length;i<j;i++){var k=b[i];null==k.data&&(k.data={});var l=k.data;if(null==l.id)l.id=aE();else if(a.hasElementWithId(l.id)||h.has(l.id))continue;var n=new aR(a,k,!1);g.push(n),h.add(l.id)}b=g}}else b=[];this.length=0;for(var o=0,p=b.length;o<p;o++){var q=b[o][0];if(null!=q){var r=q._private.data.id;(!c||!e.has(r))&&(c&&e.set(r,{index:this.length,ele:q}),this[this.length]=q,this.length++)}}this._private={eles:this,cy:a,get map(){return null==this.lazyMap&&this.rebuildMap(),this.lazyMap},set map(m){this.lazyMap=m},rebuildMap:function(){for(var a=this.lazyMap=new aO,b=this.eles,c=0;c<b.length;c++){var d=b[c];a.set(d.id(),{index:c,ele:d})}}},c&&(this._private.map=e),f&&!d&&this.restore()},eK=aR.prototype=eJ.prototype=Object.create(Array.prototype);eK.instanceString=function(){return"collection"},eK.spawn=function(a,b){return new eJ(this.cy(),a,b)},eK.spawnSelf=function(){return this.spawn(this)},eK.cy=function(){return this._private.cy},eK.renderer=function(){return this._private.cy.renderer()},eK.element=function(){return this[0]},eK.collection=function(){return B(this)?this:new eJ(this._private.cy,[this])},eK.unique=function(){return new eJ(this._private.cy,this,!0)},eK.hasElementWithId=function(a){return a=""+a,this._private.map.has(a)},eK.getElementById=function(a){a=""+a;var b=this._private.cy,c=this._private.map.get(a);return c?c.ele:new eJ(b)},eK.$id=eK.getElementById,eK.poolIndex=function(){var a=this._private.cy._private.elements,b=this[0]._private.data.id;return a._private.map.get(b).index},eK.indexOf=function(a){var b=a[0]._private.data.id;return this._private.map.get(b).index},eK.indexOfId=function(a){return a=""+a,this._private.map.get(a).index},eK.json=function(a){var b=this.element(),c=this.cy();if(null==b&&a)return this;if(null!=b){var d=b._private;if(w(a)){if(c.startBatch(),a.data){b.data(a.data);var e=d.data;if(b.isEdge()){var f=!1,g={},h=a.data.source,i=a.data.target;null!=h&&h!=e.source&&(g.source=""+h,f=!0),null!=i&&i!=e.target&&(g.target=""+i,f=!0),f&&(b=b.move(g))}else{var j="parent"in a.data,k=a.data.parent;j&&(null!=k||null!=e.parent)&&k!=e.parent&&(void 0===k&&(k=null),null!=k&&(k=""+k),b=b.move({parent:k}))}}a.position&&b.position(a.position);var l=function(c,e,f){var g=a[c];null!=g&&g!==d[c]&&(g?b[e]():b[f]())};return l("removed","remove","restore"),l("selected","select","unselect"),l("selectable","selectify","unselectify"),l("locked","lock","unlock"),l("grabbable","grabify","ungrabify"),l("pannable","panify","unpanify"),null!=a.classes&&b.classes(a.classes),c.endBatch(),this}if(void 0===a){var n={data:aD(d.data),position:aD(d.position),group:d.group,removed:d.removed,selected:d.selected,selectable:d.selectable,locked:d.locked,grabbable:d.grabbable,pannable:d.pannable,classes:null};n.classes="";var o=0;return d.classes.forEach(function(a){return n.classes+=0==o++?a:" "+a}),n}}},eK.jsons=function(){for(var a=[],b=0;b<this.length;b++){var c=this[b].json();a.push(c)}return a},eK.clone=function(){for(var a=this.cy(),b=[],c=0;c<this.length;c++){var d=new aR(a,this[c].json(),!1);b.push(d)}return new eJ(a,b)},eK.copy=eK.clone,eK.restore=function(){for(var a=!(arguments.length>0)||void 0===arguments[0]||arguments[0],b=!(arguments.length>1)||void 0===arguments[1]||arguments[1],c=this.cy(),d=c._private,e=[],f=[],g=0,h=this.length;g<h;g++){var i=this[g];(!b||i.removed())&&(i.isNode()?e.push(i):f.push(i))}I=e.concat(f);var j=function(){I.splice(J,1),J--};for(J=0;J<I.length;J++){var k=I[J],l=k._private,n=l.data;if(k.clearTraversalCache(),b||l.removed){if(void 0===n.id)n.id=aE();else if(x(n.id))n.id=""+n.id;else if(E(n.id)||!t(n.id)){aA("Can not create element with invalid string ID `"+n.id+"`"),j();continue}else if(c.hasElementWithId(n.id)){aA("Can not create second element with ID `"+n.id+"`"),j();continue}}var o=n.id;if(k.isNode()){var p=l.position;null==p.x&&(p.x=0),null==p.y&&(p.y=0)}if(k.isEdge()){for(var q=["source","target"],r=q.length,s=!1,u=0;u<r;u++){var v=q[u],w=n[v];x(w)&&(w=n[v]=""+n[v]),null==w||""===w?(aA("Can not create edge `"+o+"` with unspecified "+v),s=!0):c.hasElementWithId(w)||(aA("Can not create edge `"+o+"` with nonexistant "+v+" `"+w+"`"),s=!0)}if(s){j();continue}var y=c.getElementById(n.source),z=c.getElementById(n.target);y.same(z)?y._private.edges.push(k):(y._private.edges.push(k),z._private.edges.push(k)),k._private.source=y,k._private.target=z}l.map=new aO,l.map.set(o,{ele:k,index:0}),l.removed=!1,b&&c.addToPool(k)}for(var A=0;A<e.length;A++){var B=e[A],C=B._private.data;x(C.parent)&&(C.parent=""+C.parent);var D=C.parent;if(null!=D||B._private.parent){var F=B._private.parent?c.collection().merge(B._private.parent):c.getElementById(D);if(F.empty())C.parent=void 0;else if(F[0].removed())aC("Node added with missing parent, reference to parent removed"),C.parent=void 0,B._private.parent=null;else{for(var G=!1,H=F;!H.empty();){if(B.same(H)){G=!0,C.parent=void 0;break}H=H.parent()}G||(F[0]._private.children.push(B),B._private.parent=F[0],d.hasCompoundNodes=!0)}}}if(I.length>0){for(var I,J,K,L=I.length===this.length?this:new eJ(c,I),M=0;M<L.length;M++){var N=L[M];N.isNode()||(N.parallelEdges().clearTraversalCache(),N.source().clearTraversalCache(),N.target().clearTraversalCache())}(d.hasCompoundNodes?c.collection().merge(L).merge(L.connectedNodes()).merge(L.parent()):L).dirtyCompoundBoundsCache().dirtyBoundingBoxCache().updateStyle(a),a?L.emitAndNotify("add"):b&&L.emit("add")}return this},eK.removed=function(){var a=this[0];return a&&a._private.removed},eK.inside=function(){var a=this[0];return a&&!a._private.removed},eK.remove=function(){for(var a=!(arguments.length>0)||void 0===arguments[0]||arguments[0],b=!(arguments.length>1)||void 0===arguments[1]||arguments[1],c=[],d={},e=this._private.cy,f=0,g=this.length;f<g;f++)!function a(e){var f=d[e.id()];if(!(b&&e.removed())&&!f)if(d[e.id()]=!0,e.isNode()){c.push(e);for(var g=e._private.edges,h=0;h<g.length;h++)a(g[h]);for(var i=e._private.children,j=0;j<i.length;j++)a(i[j])}else c.unshift(e)}(this[f]);function h(a,b){aI(a._private.edges,b),a.clearTraversalCache()}var i=[];i.ids={},this.dirtyCompoundBoundsCache(),b&&e.removeFromPool(c);for(var j=0;j<c.length;j++){var k=c[j];if(k.isEdge()){var l=k.source()[0],n=k.target()[0];h(l,k),h(n,k);for(var o=k.parallelEdges(),p=0;p<o.length;p++){var q=o[p];q.clearTraversalCache(),q.isBundledBezier()&&q.dirtyBoundingBoxCache()}}else{var r=k.parent();0!==r.length&&function(a,b){b=b[0];var c=(a=a[0])._private.children,d=a.id();aI(c,b),b._private.parent=null,i.ids[d]||(i.ids[d]=!0,i.push(a))}(r,k)}b&&(k._private.removed=!0)}var s=e._private.elements;e._private.hasCompoundNodes=!1;for(var t=0;t<s.length;t++)if(s[t].isParent()){e._private.hasCompoundNodes=!0;break}var u=new eJ(this.cy(),c);u.size()>0&&(a?u.emitAndNotify("remove"):b&&u.emit("remove"));for(var v=0;v<i.length;v++){var w=i[v];b&&w.removed()||w.updateStyle()}return u},eK.move=function(a){var b=this._private.cy,c=this,d=function(a){return null==a?a:""+a};if(void 0!==a.source||void 0!==a.target){var e=d(a.source),f=d(a.target),g=null!=e&&b.hasElementWithId(e),h=null!=f&&b.hasElementWithId(f);(g||h)&&(b.batch(function(){c.remove(!1,!1),c.emitAndNotify("moveout");for(var a=0;a<c.length;a++){var b=c[a],d=b._private.data;b.isEdge()&&(g&&(d.source=e),h&&(d.target=f))}c.restore(!1,!1)}),c.emitAndNotify("move"))}else if(void 0!==a.parent){var i=d(a.parent);if(null===i||b.hasElementWithId(i)){var j=null===i?void 0:i;b.batch(function(){var a=c.remove(!1,!1);a.emitAndNotify("moveout");for(var b=0;b<c.length;b++){var d=c[b],e=d._private.data;d.isNode()&&(e.parent=j)}a.restore(!1,!1)}),c.emitAndNotify("move")}}return this},[cV,di,dj,dC,dE,ic,dJ,d7,em,en,{isNode:function(){return"nodes"===this.group()},isEdge:function(){return"edges"===this.group()},isLoop:function(){return this.isEdge()&&this.source()[0]===this.target()[0]},isSimple:function(){return this.isEdge()&&this.source()[0]!==this.target()[0]},group:function(){var a=this[0];if(a)return a._private.group}},ep,er,ev,ez,eC].forEach(function(a){S(eK,a)});var eL=function(){function a(a){return-a.tension*a.x-a.friction*a.v}function b(b,c,d){var e={x:b.x+d.dx*c,v:b.v+d.dv*c,tension:b.tension,friction:b.friction};return{dx:e.v,dv:a(e)}}return function c(d,e,f){var g,h,i,j,k,l,n,o,p,q,r,s={x:-1,v:0,tension:null,friction:null},t=[0],u=0;for(d=parseFloat(d)||500,e=parseFloat(e)||20,f=f||null,s.tension=d,s.friction=e,q=(p=null!==f)?(u=c(d,e))/f*.016:.016;g=r||s,h=q,i={dx:g.v,dv:a(g)},j=b(g,.5*h,i),k=b(g,.5*h,j),l=b(g,h,k),n=1/6*(i.dx+2*(j.dx+k.dx)+l.dx),o=1/6*(i.dv+2*(j.dv+k.dv)+l.dv),g.x=g.x+n*h,g.v=g.v+o*h,r=g,t.push(1+r.x),u+=16,Math.abs(r.x)>1e-4&&Math.abs(r.v)>1e-4;);return p?function(a){return t[a*(t.length-1)|0]}:u}}(),eM=function(a,b,c,d){var e=function(a,b,c,d){var e="u">typeof Float32Array;if(4!=arguments.length)return!1;for(var f=0;f<4;++f)if("number"!=typeof arguments[f]||isNaN(arguments[f])||!isFinite(arguments[f]))return!1;a=Math.min(a,1),c=Math.min(c,1),a=Math.max(a,0),c=Math.max(c,0);var g=e?new Float32Array(11):Array(11);function h(a,b,c){return(((1-3*c+3*b)*a+(3*c-6*b))*a+3*b)*a}function i(a,b,c){return 3*(1-3*c+3*b)*a*a+2*(3*c-6*b)*a+3*b}var j=!1,k=function(e){return(j||(j=!0,(a!==b||c!==d)&&function(){for(var b=0;b<11;++b)g[b]=h(.1*b,a,c)}()),a===b&&c===d)?e:0===e?0:1===e?1:h(function(b){for(var d=0,e=1;10!==e&&g[e]<=b;++e)d+=.1;var f=d+(b-g[--e])/(g[e+1]-g[e])*.1,j=i(f,a,c);if(j>=.001){for(var k=f,l=0;l<4;++l){var n=i(k,a,c);if(0===n)break;var o=h(k,a,c)-b;k-=o/n}return k}return 0===j?f:function(b,d,e){var f,g,i=0;do(f=h(g=d+(e-d)/2,a,c)-b)>0?e=g:d=g;while(Math.abs(f)>1e-7&&++i<10);return g}(b,d,d+.1)}(e),b,d)};k.getControlPoints=function(){return[{x:a,y:b},{x:c,y:d}]};var l="generateBezier("+[a,b,c,d]+")";return k.toString=function(){return l},k}(a,b,c,d);return function(a,b,c){return a+(b-a)*e(c)}},eN={linear:function(a,b,c){return a+(b-a)*c},ease:eM(.25,.1,.25,1),"ease-in":eM(.42,0,1,1),"ease-out":eM(0,0,.58,1),"ease-in-out":eM(.42,0,.58,1),"ease-in-sine":eM(.47,0,.745,.715),"ease-out-sine":eM(.39,.575,.565,1),"ease-in-out-sine":eM(.445,.05,.55,.95),"ease-in-quad":eM(.55,.085,.68,.53),"ease-out-quad":eM(.25,.46,.45,.94),"ease-in-out-quad":eM(.455,.03,.515,.955),"ease-in-cubic":eM(.55,.055,.675,.19),"ease-out-cubic":eM(.215,.61,.355,1),"ease-in-out-cubic":eM(.645,.045,.355,1),"ease-in-quart":eM(.895,.03,.685,.22),"ease-out-quart":eM(.165,.84,.44,1),"ease-in-out-quart":eM(.77,0,.175,1),"ease-in-quint":eM(.755,.05,.855,.06),"ease-out-quint":eM(.23,1,.32,1),"ease-in-out-quint":eM(.86,0,.07,1),"ease-in-expo":eM(.95,.05,.795,.035),"ease-out-expo":eM(.19,1,.22,1),"ease-in-out-expo":eM(1,0,0,1),"ease-in-circ":eM(.6,.04,.98,.335),"ease-out-circ":eM(.075,.82,.165,1),"ease-in-out-circ":eM(.785,.135,.15,.86),spring:function(a,b,c){if(0===c)return eN.linear;var d=eL(a,b,c);return function(a,b,c){return a+(b-a)*d(c)}},"cubic-bezier":eM};function eO(a,b,c,d,e){if(1===d||b===c)return c;var f=e(b,c,d);return null==a||((a.roundValue||a.color)&&(f=Math.round(f)),void 0!==a.min&&(f=Math.max(f,a.min)),void 0!==a.max&&(f=Math.min(f,a.max))),f}function eP(a,b){return null==a.pfValue&&null==a.value?a:null!=a.pfValue&&(null==b||"%"!==b.type.units)?a.pfValue:a.value}function eQ(a,b,c,d,e){var f=null!=e?e.type:null;c<0?c=0:c>1&&(c=1);var g=eP(a,e),h=eP(b,e);if(x(g)&&x(h))return eO(f,g,h,c,d);if(v(g)&&v(h)){for(var i=[],j=0;j<h.length;j++){var k=g[j],l=h[j];if(null!=k&&null!=l){var n=eO(f,k,l,c,d);i.push(n)}else i.push(l)}return i}}function eR(a,b){return null!=a&&null!=b&&(!!(x(a)&&x(b))||!!a&&!!b)}function eS(a,b){var c=b._private.aniEles,d=[];function e(b,c){var e=b._private,f=e.animation.current,g=e.animation.queue,h=!1;if(0===f.length){var i=g.shift();i&&f.push(i)}for(var j=function(a){for(var b=a.length-1;b>=0;b--)(0,a[b])();a.splice(0,a.length)},k=f.length-1;k>=0;k--){var l=f[k],n=l._private;if(n.stopped){f.splice(k,1),n.hooked=!1,n.playing=!1,n.started=!1,j(n.frames);continue}(n.playing||n.applying)&&(n.playing&&n.applying&&(n.applying=!1),n.started||function(a,b,c,d){var e=b._private;e.started=!0,e.startTime=c-e.progress*e.duration}(0,l,a),function(a,b,c,d){var e,f,g,h,i=!d,j=a._private,k=b._private,l=k.easing,n=k.startTime,o=(d?a:a.cy()).style();k.easingImpl||(null==l?k.easingImpl=eN.linear:(e=t(l)?o.parse("transition-timing-function",l).value:l,t(e)?(f=e,g=[]):(f=e[1],g=e.slice(2).map(function(a){return+a})),g.length>0?("spring"===f&&g.push(k.duration),k.easingImpl=eN[f].apply(null,g)):k.easingImpl=eN[f]));var p=k.easingImpl;if(h=0===k.duration?1:(c-n)/k.duration,k.applying&&(h=k.progress),h<0?h=0:h>1&&(h=1),null==k.delay){var q=k.startPosition,r=k.position;if(r&&i&&!a.locked()){var s={};eR(q.x,r.x)&&(s.x=eQ(q.x,r.x,h,p)),eR(q.y,r.y)&&(s.y=eQ(q.y,r.y,h,p)),a.position(s)}var u=k.startPan,v=k.pan,w=j.pan,x=null!=v&&d;x&&(eR(u.x,v.x)&&(w.x=eQ(u.x,v.x,h,p)),eR(u.y,v.y)&&(w.y=eQ(u.y,v.y,h,p)),a.emit("pan"));var y=k.startZoom,z=k.zoom,A=null!=z&&d;A&&(eR(y,z)&&(j.zoom=bi(j.minZoom,eQ(y,z,h,p),j.maxZoom)),a.emit("zoom")),(x||A)&&a.emit("viewport");var B=k.style;if(B&&B.length>0&&i){for(var C=0;C<B.length;C++){var D=B[C],E=D.name,F=k.startStyle[E],G=o.properties[F.name],H=eQ(F,D,h,p,G);o.overrideBypass(a,E,H)}a.emit("style")}}k.progress=h}(b,l,a,c),n.applying&&(n.applying=!1),j(n.frames),null!=n.step&&n.step(a),l.completed()&&(f.splice(k,1),n.hooked=!1,n.playing=!1,n.started=!1,j(n.completes)),h=!0)}return c||0!==f.length||0!==g.length||d.push(b),h}for(var f=!1,g=0;g<c.length;g++){var h=e(c[g]);f=f||h}var i=e(b,!0);(f||i)&&(c.length>0?b.notify("draw",c):b.notify("draw")),c.unmerge(d),b.emit("step")}var eT={animate:dh.animate(),animation:dh.animation(),animated:dh.animated(),clearQueue:dh.clearQueue(),delay:dh.delay(),delayAnimation:dh.delayAnimation(),stop:dh.stop(),addToAnimationPool:function(a){this.styleEnabled()&&this._private.aniEles.merge(a)},stopAnimationLoop:function(){this._private.animationsRunning=!1},startAnimationLoop:function(){var a=this;if(a._private.animationsRunning=!0,a.styleEnabled()){var b=a.renderer();b&&b.beforeRender?b.beforeRender(function(b,c){eS(c,a)},b.beforeRenderPriorities.animations):function b(){a._private.animationsRunning&&ai(function(c){eS(c,a),b()})}()}}},eU={qualifierCompare:function(a,b){return null==a||null==b?null==a&&null==b:a.sameText(b)},eventMatches:function(a,b,c){var d=b.qualifier;return null==d||a!==c.target&&A(c.target)&&d.matches(c.target)},addEventFields:function(a,b){b.cy=a,b.target=a},callbackContext:function(a,b,c){return null!=b.qualifier?c.target:a}},eV=function(a){return t(a)?new dA(a):a},eW={createEmitter:function(){var a=this._private;return a.emitter||(a.emitter=new ef(eU,this)),this},emitter:function(){return this._private.emitter},on:function(a,b,c){return this.emitter().on(a,eV(b),c),this},removeListener:function(a,b,c){return this.emitter().removeListener(a,eV(b),c),this},removeAllListeners:function(){return this.emitter().removeAllListeners(),this},one:function(a,b,c){return this.emitter().one(a,eV(b),c),this},once:function(a,b,c){return this.emitter().one(a,eV(b),c),this},emit:function(a,b){return this.emitter().emit(a,b),this},emitAndNotify:function(a,b){return this.emit(a),this.notify(a,b),this}};dh.eventAliasesOn(eW);var eX={png:function(a){return a=a||{},this._private.renderer.png(a)},jpg:function(a){var b=this._private.renderer;return(a=a||{}).bg=a.bg||"#fff",b.jpg(a)}};eX.jpeg=eX.jpg;var eY={layout:function(a){if(null==a)return void aA("Layout options must be specified to make a layout");if(null==a.name)return void aA("A `name` must be specified to make a layout");var b,c=a.name,d=this.extension("layout",c);return null==d?void aA("No such layout `"+c+"` found. Did you forget to import it and `cytoscape.use()` it?"):(b=t(a.eles)?this.$(a.eles):null!=a.eles?a.eles:this.$(),new d(S({},a,{cy:this,eles:b})))}};eY.createLayout=eY.makeLayout=eY.layout;var eZ=aH({hideEdgesOnViewport:!1,textureOnViewport:!1,motionBlur:!1,motionBlurOpacity:.05,pixelRatio:void 0,desktopTapThreshold:4,touchTapThreshold:8,wheelSensitivity:1,debug:!1,showFps:!1,webgl:!1,webglDebug:!1,webglDebugShowAtlases:!1,webglTexSize:2048,webglTexRows:36,webglTexRowsNodes:18,webglBatchSize:2048,webglTexPerBatch:14,webglBgColor:[255,255,255]}),e$={renderTo:function(a,b,c,d){return this._private.renderer.renderTo(a,b,c,d),this},renderer:function(){return this._private.renderer},forceRender:function(){return this.notify("draw"),this},resize:function(){return this.invalidateSize(),this.emitAndNotify("resize"),this},initRenderer:function(a){var b=this.extension("renderer",a.name);if(null==b)return void aA("Can not initialise: No such renderer `".concat(a.name,"` found. Did you forget to import it and `cytoscape.use()` it?"));void 0!==a.wheelSensitivity&&aC("You have set a custom wheel sensitivity. This will make your app zoom unnaturally when using mainstream mice. You should change this value from the default only if you can guarantee that all your users will use the same hardware and OS configuration as your current machine.");var c=eZ(a);c.cy=this,this._private.renderer=new b(c),this.notify("init")},destroyRenderer:function(){this.notify("destroy");var a=this.container();if(a)for(a._cyreg=null;a.childNodes.length>0;)a.removeChild(a.childNodes[0]);this._private.renderer=null,this.mutableElements().forEach(function(a){var b=a._private;b.rscratch={},b.rstyle={},b.animation.current=[],b.animation.queue=[]})},onRender:function(a){return this.on("render",a)},offRender:function(a){return this.off("render",a)}};e$.invalidateDimensions=e$.resize;var e_={collection:function(a,b){return t(a)?this.$(a):z(a)?a.collection():v(a)?(b||(b={}),new eJ(this,a,b.unique,b.removed)):new eJ(this)},nodes:function(a){var b=this.$(function(a){return a.isNode()});return a?b.filter(a):b},edges:function(a){var b=this.$(function(a){return a.isEdge()});return a?b.filter(a):b},$:function(a){var b=this._private.elements;return a?b.filter(a):b.spawnSelf()},mutableElements:function(){return this._private.elements}};e_.elements=e_.filter=e_.$;var e0={};e0.apply=function(a){for(var b=this._private.cy.collection(),c=0;c<a.length;c++){var d=a[c],e=this.getContextMeta(d);if(!e.empty){var f=this.getContextStyle(e),g=this.applyContextStyle(e,f,d);d._private.appliedInitStyle?this.updateTransitions(d,g.diffProps):d._private.appliedInitStyle=!0,this.updateStyleHints(d)&&b.push(d)}}return b},e0.getPropertiesDiff=function(a,b){var c=this._private.propDiffs=this._private.propDiffs||{},d=a+"-"+b,e=c[d];if(e)return e;for(var f=[],g={},h=0;h<this.length;h++){var i=this[h],j="t"===a[h],k="t"===b[h],l=j!==k,n=i.mappedProperties.length>0;if(l||k&&n){var o=void 0;l&&n||l?o=i.properties:n&&(o=i.mappedProperties);for(var p=0;p<o.length;p++){for(var q=o[p],r=q.name,s=!1,t=h+1;t<this.length;t++){var u=this[t];if("t"===b[t]&&(s=null!=u.properties[q.name]))break}g[r]||s||(g[r]=!0,f.push(r))}}}return c[d]=f,f},e0.getContextMeta=function(a){for(var b,c="",d=a._private.styleCxtKey||"",e=0;e<this.length;e++){var f=this[e];f.selector&&f.selector.matches(a)?c+="t":c+="f"}return b=this.getPropertiesDiff(d,c),a._private.styleCxtKey=c,{key:c,diffPropNames:b,empty:0===b.length}},e0.getContextStyle=function(a){var b=a.key,c=this._private.contextStyles=this._private.contextStyles||{};if(c[b])return c[b];for(var d={_private:{key:b}},e=0;e<this.length;e++){var f=this[e];if("t"===b[e])for(var g=0;g<f.properties.length;g++){var h=f.properties[g];d[h.name]=h}}return c[b]=d,d},e0.applyContextStyle=function(a,b,c){for(var d=a.diffPropNames,e={},f=this.types,g=0;g<d.length;g++){var h=d[g],i=b[h],j=c.pstyle(h);if(!i)if(!j)continue;else i=j.bypass?{name:h,deleteBypassed:!0}:{name:h,delete:!0};if(j!==i){if(i.mapped===f.fn&&null!=j&&null!=j.mapping&&j.mapping.value===i.value){var k=j.mapping;if((k.fnValue=i.value(c))===k.prevFnValue)continue}var l=e[h]={prev:j};this.applyParsedProperty(c,i),l.next=c.pstyle(h),l.next&&l.next.bypass&&(l.next=l.next.bypassed)}}return{diffProps:e}},e0.updateStyleHints=function(a){var b=a._private,c=this,d=c.propertyGroupNames,e=c.propertyGroupKeys,f=function(a,b,d){return c.getPropertiesHash(a,b,d)},g=b.styleKey;if(a.removed())return!1;var h="nodes"===b.group,i=a._private.style;d=Object.keys(i);for(var j=0;j<e.length;j++){var k=e[j];b.styleKeys[k]=[9261,5381]}for(var l=function(a,c){return b.styleKeys[c][0]=ak(a,b.styleKeys[c][0])},n=function(a,c){return b.styleKeys[c][1]=al(a,b.styleKeys[c][1])},o=function(a,b){for(var c=0;c<a.length;c++){var d=a.charCodeAt(c);l(d,b),n(d,b)}},p=0;p<d.length;p++){var q=d[p],r=i[q];if(null!=r){var s,t,u=this.properties[q],v=u.type,w=u.groupKey,x=void 0;null!=u.hashOverride?x=u.hashOverride(a,r):null!=r.pfValue&&(x=r.pfValue);var y=null==u.enums?r.value:null,z=null!=x,A=null!=y,B=z||A,C=r.units;v.number&&B&&!v.multiple?(l(t=-128<(s=z?x:y)&&s<128&&Math.floor(s)!==s?2e9-(1024*s|0):s,w),n(t,w),z||null==C||o(C,w)):o(r.strValue,w)}}for(var D=[9261,5381],E=0;E<e.length;E++){var F=e[E],G=b.styleKeys[F];D[0]=ak(G[0],D[0]),D[1]=al(G[1],D[1])}b.styleKey=2097152*D[0]+D[1];var H=b.styleKeys;b.labelDimsKey=am(H.labelDimensions);var I=f(a,["label"],H.labelDimensions);if(b.labelKey=am(I),b.labelStyleKey=am(an(H.commonLabel,I)),!h){var J=f(a,["source-label"],H.labelDimensions);b.sourceLabelKey=am(J),b.sourceLabelStyleKey=am(an(H.commonLabel,J));var K=f(a,["target-label"],H.labelDimensions);b.targetLabelKey=am(K),b.targetLabelStyleKey=am(an(H.commonLabel,K))}if(h){var L=b.styleKeys,M=L.nodeBody,N=L.nodeBorder,O=L.nodeOutline,P=L.backgroundImage,Q=L.compound,R=L.pie,S=L.stripe;b.nodeKey=am([M,N,O,P,Q,R,S].filter(function(a){return null!=a}).reduce(an,[9261,5381])),b.hasPie=null!=R&&9261!==R[0]&&5381!==R[1],b.hasStripe=null!=S&&9261!==S[0]&&5381!==S[1]}return g!==b.styleKey},e0.clearStyleHints=function(a){var b=a._private;b.styleCxtKey="",b.styleKeys={},b.styleKey=null,b.labelKey=null,b.labelStyleKey=null,b.sourceLabelKey=null,b.sourceLabelStyleKey=null,b.targetLabelKey=null,b.targetLabelStyleKey=null,b.nodeKey=null,b.hasPie=null,b.hasStripe=null},e0.applyParsedProperty=function(a,b){var c=this,d=b,e=a._private.style,f=c.types,g=c.properties[d.name].type,h=d.bypass,i=e[d.name],j=i&&i.bypass,k=a._private,l="mapping",n=function(a){return null==a?null:null!=a.pfValue?a.pfValue:a.value},o=function(){var b=n(i),e=n(d);c.checkTriggers(a,d.name,b,e)};if("curve-style"===b.name&&a.isEdge()&&("bezier"!==b.value&&a.isLoop()||"haystack"===b.value&&(a.source().isParent()||a.target().isParent()))&&(d=b=this.parse(b.name,"bezier",h)),d.delete)return e[d.name]=void 0,o(),!0;if(d.deleteBypassed)if(!i)return o(),!0;else if(i.bypass)return i.bypassed=void 0,o(),!0;else return!1;if(d.deleteBypass)if(!i)return o(),!0;else if(i.bypass)return e[d.name]=i.bypassed,o(),!0;else return!1;var p=function(){aC("Do not assign mappings to elements without corresponding data (i.e. ele `"+a.id()+"` has no mapping for property `"+d.name+"` with data field `"+d.field+"`); try a `["+d.field+"]` selector to limit scope to elements with `"+d.field+"` defined")};switch(d.mapped){case f.mapData:for(var q,r,s=d.field.split("."),t=k.data,u=0;u<s.length&&t;u++)t=t[s[u]];if(null==t)return p(),!1;if(!x(t))return aC("Do not use continuous mappers without specifying numeric data (i.e. `"+d.field+": "+t+"` for `"+a.id()+"` is non-numeric)"),!1;var v=d.fieldMax-d.fieldMin;if((r=0===v?0:(t-d.fieldMin)/v)<0?r=0:r>1&&(r=1),g.color){var w=d.valueMin[0],y=d.valueMax[0],z=d.valueMin[1],A=d.valueMax[1],B=d.valueMin[2],C=d.valueMax[2],D=null==d.valueMin[3]?1:d.valueMin[3],E=[Math.round(w+(y-w)*r),Math.round(z+(A-z)*r),Math.round(B+(C-B)*r),Math.round(D+((null==d.valueMax[3]?1:d.valueMax[3])-D)*r)];q={bypass:d.bypass,name:d.name,value:E,strValue:"rgb("+E[0]+", "+E[1]+", "+E[2]+")"}}else{if(!g.number)return!1;var F=d.valueMin+(d.valueMax-d.valueMin)*r;q=this.parse(d.name,F,d.bypass,l)}if(!q)return p(),!1;q.mapping=d,d=q;break;case f.data:for(var G=d.field.split("."),H=k.data,I=0;I<G.length&&H;I++)H=H[G[I]];if(null!=H&&(q=this.parse(d.name,H,d.bypass,l)),!q)return p(),!1;q.mapping=d,d=q;break;case f.fn:var J=d.value,K=null!=d.fnValue?d.fnValue:J(a);if(d.prevFnValue=K,null==K)return aC("Custom function mappers may not return null (i.e. `"+d.name+"` for ele `"+a.id()+"` is null)"),!1;if(!(q=this.parse(d.name,K,d.bypass,l)))return aC("Custom function mappers may not return invalid values for the property type (i.e. `"+d.name+"` for ele `"+a.id()+"` is invalid)"),!1;q.mapping=aD(d),d=q;break;case void 0:break;default:return!1}return h?(j?d.bypassed=i.bypassed:d.bypassed=i,e[d.name]=d):j?i.bypassed=d:e[d.name]=d,o(),!0},e0.cleanElements=function(a,b){for(var c=0;c<a.length;c++){var d=a[c];if(this.clearStyleHints(d),d.dirtyCompoundBoundsCache(),d.dirtyBoundingBoxCache(),b)for(var e=d._private.style,f=Object.keys(e),g=0;g<f.length;g++){var h=f[g],i=e[h];null!=i&&(i.bypass?i.bypassed=null:e[h]=null)}else d._private.style={}}},e0.update=function(){this._private.cy.mutableElements().updateStyle()},e0.updateTransitions=function(a,b){var c=this,d=a._private,e=a.pstyle("transition-property").value,f=a.pstyle("transition-duration").pfValue,g=a.pstyle("transition-delay").pfValue;if(e.length>0&&f>0){for(var h={},i=!1,j=0;j<e.length;j++){var k=e[j],l=a.pstyle(k),n=b[k];if(n){var o=n.prev,p=null!=n.next?n.next:l,q=!1,r=void 0;o&&(x(o.pfValue)&&x(p.pfValue)?(q=p.pfValue-o.pfValue,r=o.pfValue+1e-6*q):x(o.value)&&x(p.value)?(q=p.value-o.value,r=o.value+1e-6*q):v(o.value)&&v(p.value)&&(q=o.value[0]!==p.value[0]||o.value[1]!==p.value[1]||o.value[2]!==p.value[2],r=o.strValue),q&&(h[k]=p.strValue,this.applyBypass(a,k,r),i=!0))}}if(!i)return;d.transitioning=!0,new c0(function(b){g>0?a.delayAnimation(g).play().promise().then(b):b()}).then(function(){return a.animation({style:h,duration:f,easing:a.pstyle("transition-timing-function").value,queue:!1}).play().promise()}).then(function(){c.removeBypasses(a,e),a.emitAndNotify("style"),d.transitioning=!1})}else d.transitioning&&(this.removeBypasses(a,e),a.emitAndNotify("style"),d.transitioning=!1)},e0.checkTrigger=function(a,b,c,d,e,f){var g=this.properties[b],h=e(g);!a.removed()&&null!=h&&h(c,d,a)&&f(g)},e0.checkZOrderTrigger=function(a,b,c,d){var e=this;this.checkTrigger(a,b,c,d,function(a){return a.triggersZOrder},function(){e._private.cy.notify("zorder",a)})},e0.checkBoundsTrigger=function(a,b,c,d){this.checkTrigger(a,b,c,d,function(a){return a.triggersBounds},function(b){a.dirtyCompoundBoundsCache(),a.dirtyBoundingBoxCache()})},e0.checkConnectedEdgesBoundsTrigger=function(a,b,c,d){this.checkTrigger(a,b,c,d,function(a){return a.triggersBoundsOfConnectedEdges},function(b){a.connectedEdges().forEach(function(a){a.dirtyBoundingBoxCache()})})},e0.checkParallelEdgesBoundsTrigger=function(a,b,c,d){this.checkTrigger(a,b,c,d,function(a){return a.triggersBoundsOfParallelEdges},function(b){a.parallelEdges().forEach(function(a){a.dirtyBoundingBoxCache()})})},e0.checkTriggers=function(a,b,c,d){a.dirtyStyleCache(),this.checkZOrderTrigger(a,b,c,d),this.checkBoundsTrigger(a,b,c,d),this.checkConnectedEdgesBoundsTrigger(a,b,c,d),this.checkParallelEdgesBoundsTrigger(a,b,c,d)};var e1={};e1.applyBypass=function(a,b,c,d){var e=[];if("*"===b||"**"===b){if(void 0!==c)for(var f=0;f<this.properties.length;f++){var g=this.properties[f].name,h=this.parse(g,c,!0);h&&e.push(h)}}else if(t(b)){var i=this.parse(b,c,!0);i&&e.push(i)}else{if(!w(b))return!1;d=c;for(var j=Object.keys(b),k=0;k<j.length;k++){var l=j[k],n=b[l];if(void 0===n&&(n=b[I(l)]),void 0!==n){var o=this.parse(l,n,!0);o&&e.push(o)}}}if(0===e.length)return!1;for(var p=!1,q=0;q<a.length;q++){for(var r=a[q],s={},u=void 0,v=0;v<e.length;v++){var x=e[v];if(d){var y=r.pstyle(x.name);u=s[x.name]={prev:y}}p=this.applyParsedProperty(r,aD(x))||p,d&&(u.next=r.pstyle(x.name))}p&&this.updateStyleHints(r),d&&this.updateTransitions(r,s,!0)}return p},e1.overrideBypass=function(a,b,c){b=H(b);for(var d=0;d<a.length;d++){var e=a[d],f=e._private.style[b],g=this.properties[b].type,h=g.color,i=g.mutiple,j=f?null!=f.pfValue?f.pfValue:f.value:null;f&&f.bypass?(f.value=c,null!=f.pfValue&&(f.pfValue=c),h?f.strValue="rgb("+c.join(",")+")":i?f.strValue=c.join(" "):f.strValue=""+c,this.updateStyleHints(e)):this.applyBypass(e,b,c),this.checkTriggers(e,b,j,c)}},e1.removeAllBypasses=function(a,b){return this.removeBypasses(a,this.propertyNames,b)},e1.removeBypasses=function(a,b,c){for(var d=0;d<a.length;d++){for(var e=a[d],f={},g=0;g<b.length;g++){var h=b[g],i=this.properties[h],j=e.pstyle(i.name);if(j&&j.bypass){var k=this.parse(h,"",!0),l=f[i.name]={prev:j};this.applyParsedProperty(e,k),l.next=e.pstyle(i.name)}}this.updateStyleHints(e),c&&this.updateTransitions(e,f,!0)}};var e2={};e2.getEmSizeInPixels=function(){var a=this.containerCss("font-size");return null!=a?parseFloat(a):1},e2.containerCss=function(a){var b=this._private.cy,c=b.container(),d=b.window();if(d&&c&&d.getComputedStyle)return d.getComputedStyle(c).getPropertyValue(a)};var e3={};e3.getRenderedStyle=function(a,b){return b?this.getStylePropertyValue(a,b,!0):this.getRawStyle(a,!0)},e3.getRawStyle=function(a,b){if(a=a[0]){for(var c={},d=0;d<this.properties.length;d++){var e=this.properties[d],f=this.getStylePropertyValue(a,e.name,b);null!=f&&(c[e.name]=f,c[I(e.name)]=f)}return c}},e3.getIndexedStyle=function(a,b,c,d){var e=a.pstyle(b)[c][d];return null!=e?e:a.cy().style().getDefaultProperty(b)[c][0]},e3.getStylePropertyValue=function(a,b,c){if(a=a[0]){var d=this.properties[b];d.alias&&(d=d.pointsTo);var e=d.type,f=a.pstyle(d.name);if(f){var g=f.value,h=f.units,i=f.strValue;if(c&&e.number&&null!=g&&x(g)){var j=a.cy().zoom(),k=function(a){return a*j},l=function(a,b){return k(a)+b},n=v(g);if(n?h.every(function(a){return null!=a}):null!=h)if(n)return g.map(function(a,b){return l(a,h[b])}).join(" ");else return l(g,h);return n?g.map(function(a){return t(a)?a:""+k(a)}).join(" "):""+k(g)}if(null!=i)return i}return null}},e3.getAnimationStartStyle=function(a,b){for(var c={},d=0;d<b.length;d++){var e=b[d].name,f=a.pstyle(e);void 0!==f&&(f=w(f)?this.parse(e,f.strValue):this.parse(e,f)),f&&(c[e]=f)}return c},e3.getPropsList=function(a){var b=[],c=this.properties;if(a)for(var d=Object.keys(a),e=0;e<d.length;e++){var f=d[e],g=a[f],h=c[f]||c[H(f)],i=this.parse(h.name,g);i&&b.push(i)}return b},e3.getNonDefaultPropertiesHash=function(a,b,c){var d,e,f,g,h,i,j=c.slice();for(h=0;h<b.length;h++)if(d=b[h],null!=(e=a.pstyle(d,!1)))if(null!=e.pfValue)j[0]=ak(g,j[0]),j[1]=al(g,j[1]);else for(i=0,f=e.strValue;i<f.length;i++)g=f.charCodeAt(i),j[0]=ak(g,j[0]),j[1]=al(g,j[1]);return j},e3.getPropertiesHash=e3.getNonDefaultPropertiesHash;var e4={};e4.appendFromJson=function(a){for(var b=0;b<a.length;b++){var c=a[b],d=c.selector,e=c.style||c.css,f=Object.keys(e);this.selector(d);for(var g=0;g<f.length;g++){var h=f[g],i=e[h];this.css(h,i)}}return this},e4.fromJson=function(a){return this.resetToDefault(),this.appendFromJson(a),this},e4.json=function(){for(var a=[],b=this.defaultLength;b<this.length;b++){for(var c=this[b],d=c.selector,e=c.properties,f={},g=0;g<e.length;g++){var h=e[g];f[h.name]=h.strValue}a.push({selector:d?d.toString():"core",style:f})}return a};var e5={};e5.appendFromString=function(a){var b,c,d,e=""+a;function f(){e=e.length>b.length?e.substr(b.length):""}function g(){c=c.length>d.length?c.substr(d.length):""}for(e=e.replace(/[/][*](\s|.)+?[*][/]/g,"");!e.match(/^\s*$/);){var h=e.match(/^\s*((?:.|\s)+?)\s*\{((?:.|\s)+?)\}/);if(!h){aC("Halting stylesheet parsing: String stylesheet contains more to parse but no selector and block found in: "+e);break}b=h[0];var i=h[1];if("core"!==i&&new dA(i).invalid){aC("Skipping parsing of block: Invalid selector found in string stylesheet: "+i),f();continue}var j=h[2],k=!1;c=j;for(var l=[];!c.match(/^\s*$/);){var n=c.match(/^\s*(.+?)\s*:\s*(.+?)(?:\s*;|\s*$)/);if(!n){aC("Skipping parsing of block: Invalid formatting of style property and value definitions found in:"+j),k=!0;break}d=n[0];var o=n[1],p=n[2];if(!this.properties[o]){aC("Skipping property: Invalid property name in: "+d),g();continue}if(!this.parse(o,p)){aC("Skipping property: Invalid property definition in: "+d),g();continue}l.push({name:o,val:p}),g()}if(k){f();break}this.selector(i);for(var q=0;q<l.length;q++){var r=l[q];this.css(r.name,r.val)}f()}return this},e5.fromString=function(a){return this.resetToDefault(),this.appendFromString(a),this};var e6={};!function(){var a=function(a){return"^"+a+"\\s*\\(\\s*([\\w\\.]+)\\s*\\)$"},b=function(a){var b=M+"|\\w+|"+O+"|"+Q+"|\\#[0-9a-fA-F]{3}|\\#[0-9a-fA-F]{6}";return"^"+a+"\\s*\\(([\\w\\.]+)\\s*\\,\\s*("+M+")\\s*\\,\\s*("+M+")\\s*,\\s*("+b+")\\s*\\,\\s*("+b+")\\)$"},c=["^url\\s*\\(\\s*['\"]?(.+?)['\"]?\\s*\\)$","^(none)$","^(.+)$"];e6.types={time:{number:!0,min:0,units:"s|ms",implicitUnits:"ms"},percent:{number:!0,min:0,max:100,units:"%",implicitUnits:"%"},percentages:{number:!0,min:0,max:100,units:"%",implicitUnits:"%",multiple:!0},zeroOneNumber:{number:!0,min:0,max:1,unitless:!0},zeroOneNumbers:{number:!0,min:0,max:1,unitless:!0,multiple:!0},nOneOneNumber:{number:!0,min:-1,max:1,unitless:!0},nonNegativeInt:{number:!0,min:0,integer:!0,unitless:!0},nonNegativeNumber:{number:!0,min:0,unitless:!0},position:{enums:["parent","origin"]},nodeSize:{number:!0,min:0,enums:["label"]},number:{number:!0,unitless:!0},numbers:{number:!0,unitless:!0,multiple:!0},positiveNumber:{number:!0,unitless:!0,min:0,strictMin:!0},size:{number:!0,min:0},bidirectionalSize:{number:!0},bidirectionalSizeMaybePercent:{number:!0,allowPercent:!0},bidirectionalSizes:{number:!0,multiple:!0},sizeMaybePercent:{number:!0,min:0,allowPercent:!0},axisDirection:{enums:["horizontal","leftward","rightward","vertical","upward","downward","auto"]},axisDirectionExplicit:{enums:["leftward","rightward","upward","downward"]},axisDirectionPrimary:{enums:["horizontal","vertical"]},paddingRelativeTo:{enums:["width","height","average","min","max"]},bgWH:{number:!0,min:0,allowPercent:!0,enums:["auto"],multiple:!0},bgPos:{number:!0,allowPercent:!0,multiple:!0},bgRelativeTo:{enums:["inner","include-padding"],multiple:!0},bgRepeat:{enums:["repeat","repeat-x","repeat-y","no-repeat"],multiple:!0},bgFit:{enums:["none","contain","cover"],multiple:!0},bgCrossOrigin:{enums:["anonymous","use-credentials","null"],multiple:!0},bgClip:{enums:["none","node"],multiple:!0},bgContainment:{enums:["inside","over"],multiple:!0},boxSelection:{enums:["contain","overlap","none"]},color:{color:!0},colors:{color:!0,multiple:!0},fill:{enums:["solid","linear-gradient","radial-gradient"]},bool:{enums:["yes","no"]},bools:{enums:["yes","no"],multiple:!0},lineStyle:{enums:["solid","dotted","dashed"]},lineCap:{enums:["butt","round","square"]},linePosition:{enums:["center","inside","outside"]},lineJoin:{enums:["round","bevel","miter"]},borderStyle:{enums:["solid","dotted","dashed","double"]},curveStyle:{enums:["bezier","unbundled-bezier","haystack","segments","straight","straight-triangle","taxi","round-segments","round-taxi"]},radiusType:{enums:["arc-radius","influence-radius"],multiple:!0},fontFamily:{regex:'^([\\w- \\"]+(?:\\s*,\\s*[\\w- \\"]+)*)$'},fontStyle:{enums:["italic","normal","oblique"]},fontWeight:{enums:["normal","bold","bolder","lighter","100","200","300","400","500","600","800","900",100,200,300,400,500,600,700,800,900]},textDecoration:{enums:["none","underline","overline","line-through"]},textTransform:{enums:["none","uppercase","lowercase"]},textWrap:{enums:["none","wrap","ellipsis"]},textOverflowWrap:{enums:["whitespace","anywhere"]},textBackgroundShape:{enums:["rectangle","roundrectangle","round-rectangle","circle"]},nodeShape:{enums:["rectangle","roundrectangle","round-rectangle","cutrectangle","cut-rectangle","bottomroundrectangle","bottom-round-rectangle","barrel","ellipse","triangle","round-triangle","square","pentagon","round-pentagon","hexagon","round-hexagon","concavehexagon","concave-hexagon","heptagon","round-heptagon","octagon","round-octagon","tag","round-tag","star","diamond","round-diamond","vee","rhomboid","right-rhomboid","polygon"]},overlayShape:{enums:["roundrectangle","round-rectangle","ellipse"]},cornerRadius:{number:!0,min:0,units:"px|em",implicitUnits:"px",enums:["auto"]},compoundIncludeLabels:{enums:["include","exclude"]},arrowShape:{enums:["tee","triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","square","circle","diamond","chevron","none"]},arrowFill:{enums:["filled","hollow"]},arrowWidth:{number:!0,units:"%|px|em",implicitUnits:"px",enums:["match-line"]},display:{enums:["element","none"]},visibility:{enums:["hidden","visible"]},zCompoundDepth:{enums:["bottom","orphan","auto","top"]},zIndexCompare:{enums:["auto","manual"]},valign:{enums:["top","center","bottom"]},halign:{enums:["left","center","right"]},justification:{enums:["left","center","right","auto"]},text:{string:!0},data:{mapping:!0,regex:a("data")},layoutData:{mapping:!0,regex:a("layoutData")},scratch:{mapping:!0,regex:a("scratch")},mapData:{mapping:!0,regex:b("mapData")},mapLayoutData:{mapping:!0,regex:b("mapLayoutData")},mapScratch:{mapping:!0,regex:b("mapScratch")},fn:{mapping:!0,fn:!0},url:{regexes:c,singleRegexMatchValue:!0},urls:{regexes:c,singleRegexMatchValue:!0,multiple:!0},propList:{propList:!0},angle:{number:!0,units:"deg|rad",implicitUnits:"rad"},textRotation:{number:!0,units:"deg|rad",implicitUnits:"rad",enums:["none","autorotate"]},polygonPointList:{number:!0,multiple:!0,evenMultiple:!0,min:-1,max:1,unitless:!0},edgeDistances:{enums:["intersection","node-position","endpoints"]},edgeEndpoint:{number:!0,multiple:!0,units:"%|px|em|deg|rad",implicitUnits:"px",enums:["inside-to-node","outside-to-node","outside-to-node-or-label","outside-to-line","outside-to-line-or-label"],singleEnum:!0,validate:function(a,b){switch(a.length){case 2:return"deg"!==b[0]&&"rad"!==b[0]&&"deg"!==b[1]&&"rad"!==b[1];case 1:return t(a[0])||"deg"===b[0]||"rad"===b[0];default:return!1}}},easing:{regexes:["^(spring)\\s*\\(\\s*("+M+")\\s*,\\s*("+M+")\\s*\\)$","^(cubic-bezier)\\s*\\(\\s*("+M+")\\s*,\\s*("+M+")\\s*,\\s*("+M+")\\s*,\\s*("+M+")\\s*\\)$"],enums:["linear","ease","ease-in","ease-out","ease-in-out","ease-in-sine","ease-out-sine","ease-in-out-sine","ease-in-quad","ease-out-quad","ease-in-out-quad","ease-in-cubic","ease-out-cubic","ease-in-out-cubic","ease-in-quart","ease-out-quart","ease-in-out-quart","ease-in-quint","ease-out-quint","ease-in-out-quint","ease-in-expo","ease-out-expo","ease-in-out-expo","ease-in-circ","ease-out-circ","ease-in-out-circ"]},gradientDirection:{enums:["to-bottom","to-top","to-left","to-right","to-bottom-right","to-bottom-left","to-top-right","to-top-left","to-right-bottom","to-left-bottom","to-right-top","to-left-top"]},boundsExpansion:{number:!0,multiple:!0,min:0,validate:function(a){var b=a.length;return 1===b||2===b||4===b}}};var d=function(a,b){return(null==a||null==b)&&a!==b||0==a&&0!=b||0!=a&&0==b},e=function(a,b){return a!=b},f=e6.types,g=[{name:"label",type:f.text,triggersBounds:e,triggersZOrder:function(a,b){var c=E(a),d=E(b);return c&&!d||!c&&d}},{name:"text-rotation",type:f.textRotation,triggersBounds:e},{name:"text-margin-x",type:f.bidirectionalSize,triggersBounds:e},{name:"text-margin-y",type:f.bidirectionalSize,triggersBounds:e}],h=[{name:"source-label",type:f.text,triggersBounds:e},{name:"source-text-rotation",type:f.textRotation,triggersBounds:e},{name:"source-text-margin-x",type:f.bidirectionalSize,triggersBounds:e},{name:"source-text-margin-y",type:f.bidirectionalSize,triggersBounds:e},{name:"source-text-offset",type:f.size,triggersBounds:e}],i=[{name:"target-label",type:f.text,triggersBounds:e},{name:"target-text-rotation",type:f.textRotation,triggersBounds:e},{name:"target-text-margin-x",type:f.bidirectionalSize,triggersBounds:e},{name:"target-text-margin-y",type:f.bidirectionalSize,triggersBounds:e},{name:"target-text-offset",type:f.size,triggersBounds:e}],j=[{name:"font-family",type:f.fontFamily,triggersBounds:e},{name:"font-style",type:f.fontStyle,triggersBounds:e},{name:"font-weight",type:f.fontWeight,triggersBounds:e},{name:"font-size",type:f.size,triggersBounds:e},{name:"text-transform",type:f.textTransform,triggersBounds:e},{name:"text-wrap",type:f.textWrap,triggersBounds:e},{name:"text-overflow-wrap",type:f.textOverflowWrap,triggersBounds:e},{name:"text-max-width",type:f.size,triggersBounds:e},{name:"text-outline-width",type:f.size,triggersBounds:e},{name:"line-height",type:f.positiveNumber,triggersBounds:e}],k=[{name:"text-valign",type:f.valign,triggersBounds:e},{name:"text-halign",type:f.halign,triggersBounds:e},{name:"color",type:f.color},{name:"text-outline-color",type:f.color},{name:"text-outline-opacity",type:f.zeroOneNumber},{name:"text-background-color",type:f.color},{name:"text-background-opacity",type:f.zeroOneNumber},{name:"text-background-padding",type:f.size,triggersBounds:e},{name:"text-border-opacity",type:f.zeroOneNumber},{name:"text-border-color",type:f.color},{name:"text-border-width",type:f.size,triggersBounds:e},{name:"text-border-style",type:f.borderStyle,triggersBounds:e},{name:"text-background-shape",type:f.textBackgroundShape,triggersBounds:e},{name:"text-justification",type:f.justification},{name:"box-select-labels",type:f.bool,triggersBounds:e}],l=[{name:"events",type:f.bool,triggersZOrder:e},{name:"text-events",type:f.bool,triggersZOrder:e},{name:"box-selection",type:f.boxSelection,triggersZOrder:e}],n=[{name:"display",type:f.display,triggersZOrder:e,triggersBounds:e,triggersBoundsOfConnectedEdges:e,triggersBoundsOfParallelEdges:function(a,b,c){return a!==b&&"bezier"===c.pstyle("curve-style").value}},{name:"visibility",type:f.visibility,triggersZOrder:e},{name:"opacity",type:f.zeroOneNumber,triggersZOrder:d},{name:"text-opacity",type:f.zeroOneNumber},{name:"min-zoomed-font-size",type:f.size},{name:"z-compound-depth",type:f.zCompoundDepth,triggersZOrder:e},{name:"z-index-compare",type:f.zIndexCompare,triggersZOrder:e},{name:"z-index",type:f.number,triggersZOrder:e}],o=[{name:"overlay-padding",type:f.size,triggersBounds:e},{name:"overlay-color",type:f.color},{name:"overlay-opacity",type:f.zeroOneNumber,triggersBounds:d},{name:"overlay-shape",type:f.overlayShape,triggersBounds:e},{name:"overlay-corner-radius",type:f.cornerRadius}],p=[{name:"underlay-padding",type:f.size,triggersBounds:e},{name:"underlay-color",type:f.color},{name:"underlay-opacity",type:f.zeroOneNumber,triggersBounds:d},{name:"underlay-shape",type:f.overlayShape,triggersBounds:e},{name:"underlay-corner-radius",type:f.cornerRadius}],q=[{name:"transition-property",type:f.propList},{name:"transition-duration",type:f.time},{name:"transition-delay",type:f.time},{name:"transition-timing-function",type:f.easing}],r=function(a,b){return"label"===b.value?-a.poolIndex():b.pfValue},s=[{name:"height",type:f.nodeSize,triggersBounds:e,hashOverride:r},{name:"width",type:f.nodeSize,triggersBounds:e,hashOverride:r},{name:"shape",type:f.nodeShape,triggersBounds:e},{name:"shape-polygon-points",type:f.polygonPointList,triggersBounds:e},{name:"corner-radius",type:f.cornerRadius},{name:"background-color",type:f.color},{name:"background-fill",type:f.fill},{name:"background-opacity",type:f.zeroOneNumber},{name:"background-blacken",type:f.nOneOneNumber},{name:"background-gradient-stop-colors",type:f.colors},{name:"background-gradient-stop-positions",type:f.percentages},{name:"background-gradient-direction",type:f.gradientDirection},{name:"padding",type:f.sizeMaybePercent,triggersBounds:e},{name:"padding-relative-to",type:f.paddingRelativeTo,triggersBounds:e},{name:"bounds-expansion",type:f.boundsExpansion,triggersBounds:e}],u=[{name:"border-color",type:f.color},{name:"border-opacity",type:f.zeroOneNumber},{name:"border-width",type:f.size,triggersBounds:e},{name:"border-style",type:f.borderStyle},{name:"border-cap",type:f.lineCap},{name:"border-join",type:f.lineJoin},{name:"border-dash-pattern",type:f.numbers},{name:"border-dash-offset",type:f.number},{name:"border-position",type:f.linePosition}],v=[{name:"outline-color",type:f.color},{name:"outline-opacity",type:f.zeroOneNumber},{name:"outline-width",type:f.size,triggersBounds:e},{name:"outline-style",type:f.borderStyle},{name:"outline-offset",type:f.size,triggersBounds:e}],w=[{name:"background-image",type:f.urls},{name:"background-image-crossorigin",type:f.bgCrossOrigin},{name:"background-image-opacity",type:f.zeroOneNumbers},{name:"background-image-containment",type:f.bgContainment},{name:"background-image-smoothing",type:f.bools},{name:"background-position-x",type:f.bgPos},{name:"background-position-y",type:f.bgPos},{name:"background-width-relative-to",type:f.bgRelativeTo},{name:"background-height-relative-to",type:f.bgRelativeTo},{name:"background-repeat",type:f.bgRepeat},{name:"background-fit",type:f.bgFit},{name:"background-clip",type:f.bgClip},{name:"background-width",type:f.bgWH},{name:"background-height",type:f.bgWH},{name:"background-offset-x",type:f.bgPos},{name:"background-offset-y",type:f.bgPos}],x=[{name:"position",type:f.position,triggersBounds:e},{name:"compound-sizing-wrt-labels",type:f.compoundIncludeLabels,triggersBounds:e},{name:"min-width",type:f.size,triggersBounds:e},{name:"min-width-bias-left",type:f.sizeMaybePercent,triggersBounds:e},{name:"min-width-bias-right",type:f.sizeMaybePercent,triggersBounds:e},{name:"min-height",type:f.size,triggersBounds:e},{name:"min-height-bias-top",type:f.sizeMaybePercent,triggersBounds:e},{name:"min-height-bias-bottom",type:f.sizeMaybePercent,triggersBounds:e}],y=[{name:"line-style",type:f.lineStyle},{name:"line-color",type:f.color},{name:"line-fill",type:f.fill},{name:"line-cap",type:f.lineCap},{name:"line-opacity",type:f.zeroOneNumber},{name:"line-dash-pattern",type:f.numbers},{name:"line-dash-offset",type:f.number},{name:"line-outline-width",type:f.size},{name:"line-outline-color",type:f.color},{name:"line-gradient-stop-colors",type:f.colors},{name:"line-gradient-stop-positions",type:f.percentages},{name:"curve-style",type:f.curveStyle,triggersBounds:e,triggersBoundsOfParallelEdges:function(a,b){return a!==b&&("bezier"===a||"bezier"===b)}},{name:"haystack-radius",type:f.zeroOneNumber,triggersBounds:e},{name:"source-endpoint",type:f.edgeEndpoint,triggersBounds:e},{name:"target-endpoint",type:f.edgeEndpoint,triggersBounds:e},{name:"control-point-step-size",type:f.size,triggersBounds:e},{name:"control-point-distances",type:f.bidirectionalSizes,triggersBounds:e},{name:"control-point-weights",type:f.numbers,triggersBounds:e},{name:"segment-distances",type:f.bidirectionalSizes,triggersBounds:e},{name:"segment-weights",type:f.numbers,triggersBounds:e},{name:"segment-radii",type:f.numbers,triggersBounds:e},{name:"radius-type",type:f.radiusType,triggersBounds:e},{name:"taxi-turn",type:f.bidirectionalSizeMaybePercent,triggersBounds:e},{name:"taxi-turn-min-distance",type:f.size,triggersBounds:e},{name:"taxi-direction",type:f.axisDirection,triggersBounds:e},{name:"taxi-radius",type:f.number,triggersBounds:e},{name:"edge-distances",type:f.edgeDistances,triggersBounds:e},{name:"arrow-scale",type:f.positiveNumber,triggersBounds:e},{name:"loop-direction",type:f.angle,triggersBounds:e},{name:"loop-sweep",type:f.angle,triggersBounds:e},{name:"source-distance-from-node",type:f.size,triggersBounds:e},{name:"target-distance-from-node",type:f.size,triggersBounds:e}],z=[{name:"ghost",type:f.bool,triggersBounds:e},{name:"ghost-offset-x",type:f.bidirectionalSize,triggersBounds:e},{name:"ghost-offset-y",type:f.bidirectionalSize,triggersBounds:e},{name:"ghost-opacity",type:f.zeroOneNumber}],A=[{name:"selection-box-color",type:f.color},{name:"selection-box-opacity",type:f.zeroOneNumber},{name:"selection-box-border-color",type:f.color},{name:"selection-box-border-width",type:f.size},{name:"active-bg-color",type:f.color},{name:"active-bg-opacity",type:f.zeroOneNumber},{name:"active-bg-size",type:f.size},{name:"outside-texture-bg-color",type:f.color},{name:"outside-texture-bg-opacity",type:f.zeroOneNumber}],B=[];e6.pieBackgroundN=16,B.push({name:"pie-size",type:f.sizeMaybePercent}),B.push({name:"pie-hole",type:f.sizeMaybePercent}),B.push({name:"pie-start-angle",type:f.angle});for(var C=1;C<=e6.pieBackgroundN;C++)B.push({name:"pie-"+C+"-background-color",type:f.color}),B.push({name:"pie-"+C+"-background-size",type:f.percent}),B.push({name:"pie-"+C+"-background-opacity",type:f.zeroOneNumber});var D=[];e6.stripeBackgroundN=16,D.push({name:"stripe-size",type:f.sizeMaybePercent}),D.push({name:"stripe-direction",type:f.axisDirectionPrimary});for(var F=1;F<=e6.stripeBackgroundN;F++)D.push({name:"stripe-"+F+"-background-color",type:f.color}),D.push({name:"stripe-"+F+"-background-size",type:f.percent}),D.push({name:"stripe-"+F+"-background-opacity",type:f.zeroOneNumber});var G=[],H=e6.arrowPrefixes=["source","mid-source","target","mid-target"];[{name:"arrow-shape",type:f.arrowShape,triggersBounds:e},{name:"arrow-color",type:f.color},{name:"arrow-fill",type:f.arrowFill},{name:"arrow-width",type:f.arrowWidth}].forEach(function(a){H.forEach(function(b){var c=b+"-"+a.name,d=a.type,e=a.triggersBounds;G.push({name:c,type:d,triggersBounds:e})})},{});var I=e6.properties=[].concat(l,q,n,o,p,z,k,j,g,h,i,s,u,v,w,B,D,x,y,G,A),J=e6.propertyGroups={behavior:l,transition:q,visibility:n,overlay:o,underlay:p,ghost:z,commonLabel:k,labelDimensions:j,mainLabel:g,sourceLabel:h,targetLabel:i,nodeBody:s,nodeBorder:u,nodeOutline:v,backgroundImage:w,pie:B,stripe:D,compound:x,edgeLine:y,edgeArrow:G,core:A},K=e6.propertyGroupNames={};(e6.propertyGroupKeys=Object.keys(J)).forEach(function(a){K[a]=J[a].map(function(a){return a.name}),J[a].forEach(function(b){return b.groupKey=a})});var L=e6.aliases=[{name:"content",pointsTo:"label"},{name:"control-point-distance",pointsTo:"control-point-distances"},{name:"control-point-weight",pointsTo:"control-point-weights"},{name:"segment-distance",pointsTo:"segment-distances"},{name:"segment-weight",pointsTo:"segment-weights"},{name:"segment-radius",pointsTo:"segment-radii"},{name:"edge-text-rotation",pointsTo:"text-rotation"},{name:"padding-left",pointsTo:"padding"},{name:"padding-right",pointsTo:"padding"},{name:"padding-top",pointsTo:"padding"},{name:"padding-bottom",pointsTo:"padding"}];e6.propertyNames=I.map(function(a){return a.name});for(var N=0;N<I.length;N++){var P=I[N];I[P.name]=P}for(var R=0;R<L.length;R++){var S=L[R],T=I[S.pointsTo],U={name:S.name,alias:!0,pointsTo:T};I.push(U),I[S.name]=U}}(),e6.getDefaultProperty=function(a){return this.getDefaultProperties()[a]},e6.getDefaultProperties=function(){var a=this._private;if(null!=a.defaultProperties)return a.defaultProperties;for(var b=S({"selection-box-color":"#ddd","selection-box-opacity":.65,"selection-box-border-color":"#aaa","selection-box-border-width":1,"active-bg-color":"black","active-bg-opacity":.15,"active-bg-size":30,"outside-texture-bg-color":"#000","outside-texture-bg-opacity":.125,events:"yes","text-events":"no","text-valign":"top","text-halign":"center","text-justification":"auto","line-height":1,color:"#000","box-selection":"contain","text-outline-color":"#000","text-outline-width":0,"text-outline-opacity":1,"text-opacity":1,"text-decoration":"none","text-transform":"none","text-wrap":"none","text-overflow-wrap":"whitespace","text-max-width":9999,"text-background-color":"#000","text-background-opacity":0,"text-background-shape":"rectangle","text-background-padding":0,"text-border-opacity":0,"text-border-width":0,"text-border-style":"solid","text-border-color":"#000","font-family":"Helvetica Neue, Helvetica, sans-serif","font-style":"normal","font-weight":"normal","font-size":16,"min-zoomed-font-size":0,"text-rotation":"none","source-text-rotation":"none","target-text-rotation":"none",visibility:"visible",display:"element",opacity:1,"z-compound-depth":"auto","z-index-compare":"auto","z-index":0,label:"","text-margin-x":0,"text-margin-y":0,"source-label":"","source-text-offset":0,"source-text-margin-x":0,"source-text-margin-y":0,"target-label":"","target-text-offset":0,"target-text-margin-x":0,"target-text-margin-y":0,"overlay-opacity":0,"overlay-color":"#000","overlay-padding":10,"overlay-shape":"round-rectangle","overlay-corner-radius":"auto","underlay-opacity":0,"underlay-color":"#000","underlay-padding":10,"underlay-shape":"round-rectangle","underlay-corner-radius":"auto","transition-property":"none","transition-duration":0,"transition-delay":0,"transition-timing-function":"linear","box-select-labels":"no","background-blacken":0,"background-color":"#999","background-fill":"solid","background-opacity":1,"background-image":"none","background-image-crossorigin":"anonymous","background-image-opacity":1,"background-image-containment":"inside","background-image-smoothing":"yes","background-position-x":"50%","background-position-y":"50%","background-offset-x":0,"background-offset-y":0,"background-width-relative-to":"include-padding","background-height-relative-to":"include-padding","background-repeat":"no-repeat","background-fit":"none","background-clip":"node","background-width":"auto","background-height":"auto","border-color":"#000","border-opacity":1,"border-width":0,"border-style":"solid","border-dash-pattern":[4,2],"border-dash-offset":0,"border-cap":"butt","border-join":"miter","border-position":"center","outline-color":"#999","outline-opacity":1,"outline-width":0,"outline-offset":0,"outline-style":"solid",height:30,width:30,shape:"ellipse","shape-polygon-points":"-1, -1, 1, -1, 1, 1, -1, 1","corner-radius":"auto","bounds-expansion":0,"background-gradient-direction":"to-bottom","background-gradient-stop-colors":"#999","background-gradient-stop-positions":"0%",ghost:"no","ghost-offset-y":0,"ghost-offset-x":0,"ghost-opacity":0,padding:0,"padding-relative-to":"width",position:"origin","compound-sizing-wrt-labels":"include","min-width":0,"min-width-bias-left":0,"min-width-bias-right":0,"min-height":0,"min-height-bias-top":0,"min-height-bias-bottom":0},{"pie-size":"100%","pie-hole":0,"pie-start-angle":"0deg"},[{name:"pie-{{i}}-background-color",value:"black"},{name:"pie-{{i}}-background-size",value:"0%"},{name:"pie-{{i}}-background-opacity",value:1}].reduce(function(a,b){for(var c=1;c<=e6.pieBackgroundN;c++){var d=b.name.replace("{{i}}",c),e=b.value;a[d]=e}return a},{}),{"stripe-size":"100%","stripe-direction":"horizontal"},[{name:"stripe-{{i}}-background-color",value:"black"},{name:"stripe-{{i}}-background-size",value:"0%"},{name:"stripe-{{i}}-background-opacity",value:1}].reduce(function(a,b){for(var c=1;c<=e6.stripeBackgroundN;c++){var d=b.name.replace("{{i}}",c),e=b.value;a[d]=e}return a},{}),{"line-style":"solid","line-color":"#999","line-fill":"solid","line-cap":"butt","line-opacity":1,"line-outline-width":0,"line-outline-color":"#000","line-gradient-stop-colors":"#999","line-gradient-stop-positions":"0%","control-point-step-size":40,"control-point-weights":.5,"segment-weights":.5,"segment-distances":20,"segment-radii":15,"radius-type":"arc-radius","taxi-turn":"50%","taxi-radius":15,"taxi-turn-min-distance":10,"taxi-direction":"auto","edge-distances":"intersection","curve-style":"haystack","haystack-radius":0,"arrow-scale":1,"loop-direction":"-45deg","loop-sweep":"-90deg","source-distance-from-node":0,"target-distance-from-node":0,"source-endpoint":"outside-to-node","target-endpoint":"outside-to-node","line-dash-pattern":[6,3],"line-dash-offset":0},[{name:"arrow-shape",value:"none"},{name:"arrow-color",value:"#999"},{name:"arrow-fill",value:"filled"},{name:"arrow-width",value:1}].reduce(function(a,b){return e6.arrowPrefixes.forEach(function(c){var d=c+"-"+b.name,e=b.value;a[d]=e}),a},{})),c={},d=0;d<this.properties.length;d++){var e=this.properties[d];if(!e.pointsTo){var f=e.name,g=b[f],h=this.parse(f,g);c[f]=h}}return a.defaultProperties=c,a.defaultProperties},e6.addDefaultStylesheet=function(){this.selector(":parent").css({shape:"rectangle",padding:10,"background-color":"#eee","border-color":"#ccc","border-width":1}).selector("edge").css({width:3}).selector(":loop").css({"curve-style":"bezier"}).selector("edge:compound").css({"curve-style":"bezier","source-endpoint":"outside-to-line","target-endpoint":"outside-to-line"}).selector(":selected").css({"background-color":"#0169D9","line-color":"#0169D9","source-arrow-color":"#0169D9","target-arrow-color":"#0169D9","mid-source-arrow-color":"#0169D9","mid-target-arrow-color":"#0169D9"}).selector(":parent:selected").css({"background-color":"#CCE1F9","border-color":"#aec8e5"}).selector(":active").css({"overlay-color":"black","overlay-padding":10,"overlay-opacity":.25}),this.defaultLength=this.length};var e7={};e7.parse=function(a,b,c,d){if(u(b))return this.parseImplWarn(a,b,c,d);var e,f=aq(a,""+b,c?"t":"f","mapping"===d||!0===d||!1===d||null==d?"dontcare":d),g=this.propCache=this.propCache||[];return(e=g[f])||(e=g[f]=this.parseImplWarn(a,b,c,d)),(c||"mapping"===d)&&(e=aD(e))&&(e.value=aD(e.value)),e},e7.parseImplWarn=function(a,b,c,d){var e=this.parseImpl(a,b,c,d);return e||null==b||aC("The style property `".concat(a,": ").concat(b,"` is invalid")),e&&("width"===e.name||"height"===e.name)&&"label"===b&&aC("The style value of `label` is deprecated for `"+e.name+"`"),e},e7.parseImpl=function(a,b,c,d){a=H(a);var e=this.properties[a],f=b,g=this.types;if(!e||void 0===b)return null;e.alias&&(a=(e=e.pointsTo).name);var h=t(b);h&&(b=b.trim());var i=e.type;if(!i)return null;if(c&&(""===b||null===b))return{name:a,value:b,bypass:!0,deleteBypass:!0};if(u(b))return{name:a,value:b,strValue:"fn",mapped:g.fn,bypass:c};if(!h||d||b.length<7||"a"!==b[1]);else if(b.length>=7&&"d"===b[0]&&(q=new RegExp(g.data.regex).exec(b))){if(c)return!1;var j=g.data;return{name:a,value:q,strValue:""+b,mapped:j,field:q[1],bypass:c}}else if(b.length>=10&&"m"===b[0]&&(r=new RegExp(g.mapData.regex).exec(b))){if(c||i.multiple)return!1;var k=g.mapData;if(!(i.color||i.number))return!1;var l=this.parse(a,r[4]);if(!l||l.mapped)return!1;var n=this.parse(a,r[5]);if(!n||n.mapped)return!1;if(l.pfValue===n.pfValue||l.strValue===n.strValue)return aC("`"+a+": "+b+"` is not a valid mapper because the output range is zero; converting to `"+a+": "+l.strValue+"`"),this.parse(a,l.strValue);if(i.color){var o=l.value,p=n.value;if(o[0]===p[0]&&o[1]===p[1]&&o[2]===p[2]&&(o[3]===p[3]||(null==o[3]||1===o[3])&&(null==p[3]||1===p[3])))return!1}return{name:a,value:r,strValue:""+b,mapped:k,field:r[1],fieldMin:parseFloat(r[2]),fieldMax:parseFloat(r[3]),valueMin:l.value,valueMax:n.value,bypass:c}}if(i.multiple&&"multiple"!==d){if(s=h?b.split(/\s+/):v(b)?b:[b],i.evenMultiple&&s.length%2!=0)return null;for(var q,r,s,w=[],y=[],z=[],A="",B=!1,C=0;C<s.length;C++){var D=this.parse(a,s[C],c,"multiple");B=B||t(D.value),w.push(D.value),z.push(null!=D.pfValue?D.pfValue:D.value),y.push(D.units),A+=(C>0?" ":"")+D.strValue}if(i.validate&&!i.validate(w,y))return null;if(i.singleEnum&&B)if(1===w.length&&t(w[0]))return{name:a,value:w[0],strValue:w[0],bypass:c};else return null;return{name:a,value:w,pfValue:z,strValue:A,bypass:c,units:y}}var E=function(){for(var d=0;d<i.enums.length;d++)if(i.enums[d]===b)return{name:a,value:b,strValue:""+b,bypass:c};return null};if(i.number){var F,G,I="px";if(i.units&&(G=i.units),i.implicitUnits&&(I=i.implicitUnits),!i.unitless)if(h){var J="px|em"+(i.allowPercent?"|\\%":"");G&&(J=G);var K=b.match("^("+M+")("+J+")?$");K&&(b=K[1],G=K[2]||I)}else(!G||i.implicitUnits)&&(G=I);if(isNaN(b=parseFloat(b))&&void 0===i.enums)return null;if(isNaN(b)&&void 0!==i.enums)return b=f,E();if(i.integer&&!(x(F=b)&&Math.floor(F)===F)||void 0!==i.min&&(b<i.min||i.strictMin&&b===i.min)||void 0!==i.max&&(b>i.max||i.strictMax&&b===i.max))return null;var L={name:a,value:b,strValue:""+b+(G||""),units:G,bypass:c};return i.unitless||"px"!==G&&"em"!==G?L.pfValue=b:L.pfValue="px"!==G&&G?this.getEmSizeInPixels()*b:b,("ms"===G||"s"===G)&&(L.pfValue="ms"===G?b:1e3*b),("deg"===G||"rad"===G)&&(L.pfValue="rad"===G?b:Math.PI*b/180),"%"===G&&(L.pfValue=b/100),L}if(i.propList){var N=[],O=""+b;if("none"===O);else{for(var P=O.split(/\s*,\s*|\s+/),Q=0;Q<P.length;Q++){var R=P[Q].trim();this.properties[R]?N.push(R):aC("`"+R+"` is not a valid property name")}if(0===N.length)return null}return{name:a,value:N,strValue:0===N.length?"none":N.join(" "),bypass:c}}if(i.color){var S=W(b);return S?{name:a,value:S,pfValue:S,strValue:"rgb("+S[0]+","+S[1]+","+S[2]+")",bypass:c}:null}if(i.regex||i.regexes){if(i.enums){var T=E();if(T)return T}for(var U=i.regexes?i.regexes:[i.regex],V=0;V<U.length;V++){var X=new RegExp(U[V]).exec(b);if(X)return{name:a,value:i.singleRegexMatchValue?X[1]:X,strValue:""+b,bypass:c}}return null}if(i.string)return{name:a,value:""+b,strValue:""+b,bypass:c};else if(i.enums)return E();else return null};var e8=function(a){return this instanceof e8?C(a)?void(this._private={cy:a,coreStyle:{}},this.length=0,this.resetToDefault()):void aA("A style must have a core reference"):new e8(a)},e9=e8.prototype;e9.instanceString=function(){return"style"},e9.clear=function(){for(var a=this._private,b=a.cy.elements(),c=0;c<this.length;c++)this[c]=void 0;return this.length=0,a.contextStyles={},a.propDiffs={},this.cleanElements(b,!0),b.forEach(function(a){var b=a[0]._private;b.styleDirty=!0,b.appliedInitStyle=!1}),this},e9.resetToDefault=function(){return this.clear(),this.addDefaultStylesheet(),this},e9.core=function(a){return this._private.coreStyle[a]||this.getDefaultProperty(a)},e9.selector=function(a){var b="core"===a?null:new dA(a),c=this.length++;return this[c]={selector:b,properties:[],mappedProperties:[],index:c},this},e9.css=function(){var a=arguments;if(1===a.length)for(var b=a[0],c=0;c<this.properties.length;c++){var d=this.properties[c],e=b[d.name];void 0===e&&(e=b[I(d.name)]),void 0!==e&&this.cssRule(d.name,e)}else 2===a.length&&this.cssRule(a[0],a[1]);return this},e9.style=e9.css,e9.cssRule=function(a,b){var c=this.parse(a,b);if(c){var d=this.length-1;this[d].properties.push(c),this[d].properties[c.name]=c,c.name.match(/pie-(\d+)-background-size/)&&c.value&&(this._private.hasPie=!0),c.name.match(/stripe-(\d+)-background-size/)&&c.value&&(this._private.hasStripe=!0),c.mapped&&this[d].mappedProperties.push(c),this[d].selector||(this._private.coreStyle[c.name]=c)}return this},e9.append=function(a){return D(a)?a.appendToStyle(this):v(a)?this.appendFromJson(a):t(a)&&this.appendFromString(a),this},e8.fromJson=function(a,b){var c=new e8(a);return c.fromJson(b),c},e8.fromString=function(a,b){return new e8(a).fromString(b)},[e0,e1,e2,e3,e4,e5,e6,e7].forEach(function(a){S(e9,a)}),e8.types=e9.types,e8.properties=e9.properties,e8.propertyGroups=e9.propertyGroups,e8.propertyGroupNames=e9.propertyGroupNames,e8.propertyGroupKeys=e9.propertyGroupKeys;var fa={autolock:function(a){return void 0===a?this._private.autolock:(this._private.autolock=!!a,this)},autoungrabify:function(a){return void 0===a?this._private.autoungrabify:(this._private.autoungrabify=!!a,this)},autounselectify:function(a){return void 0===a?this._private.autounselectify:(this._private.autounselectify=!!a,this)},selectionType:function(a){var b=this._private;return(null==b.selectionType&&(b.selectionType="single"),void 0===a)?b.selectionType:(("additive"===a||"single"===a)&&(b.selectionType=a),this)},panningEnabled:function(a){return void 0===a?this._private.panningEnabled:(this._private.panningEnabled=!!a,this)},userPanningEnabled:function(a){return void 0===a?this._private.userPanningEnabled:(this._private.userPanningEnabled=!!a,this)},zoomingEnabled:function(a){return void 0===a?this._private.zoomingEnabled:(this._private.zoomingEnabled=!!a,this)},userZoomingEnabled:function(a){return void 0===a?this._private.userZoomingEnabled:(this._private.userZoomingEnabled=!!a,this)},boxSelectionEnabled:function(a){return void 0===a?this._private.boxSelectionEnabled:(this._private.boxSelectionEnabled=!!a,this)},pan:function(){var a,b,c,d,e,f=arguments,g=this._private.pan;switch(f.length){case 0:return g;case 1:if(t(f[0]))return g[a=f[0]];if(w(f[0])){if(!this._private.panningEnabled)return this;d=(c=f[0]).x,e=c.y,x(d)&&(g.x=d),x(e)&&(g.y=e),this.emit("pan viewport")}break;case 2:if(!this._private.panningEnabled)return this;a=f[0],b=f[1],("x"===a||"y"===a)&&x(b)&&(g[a]=b),this.emit("pan viewport")}return this.notify("viewport"),this},panBy:function(a,b){var c,d,e,f=arguments,g=this._private.pan;if(!this._private.panningEnabled)return this;switch(f.length){case 1:w(a)&&(d=(c=f[0]).x,e=c.y,x(d)&&(g.x+=d),x(e)&&(g.y+=e),this.emit("pan viewport"));break;case 2:("x"===a||"y"===a)&&x(b)&&(g[a]+=b),this.emit("pan viewport")}return this.notify("viewport"),this},gc:function(){this.notify("gc")},fit:function(a,b){var c=this.getFitViewport(a,b);if(c){var d=this._private;d.zoom=c.zoom,d.pan=c.pan,this.emit("pan zoom viewport"),this.notify("viewport")}return this},getFitViewport:function(a,b){if(x(a)&&void 0===b&&(b=a,a=void 0),this._private.panningEnabled&&this._private.zoomingEnabled){if(t(a)){var c,d,e,f=a;a=this.$(f)}else if(w(c=a)&&x(c.x1)&&x(c.x2)&&x(c.y1)&&x(c.y2)){var g=a;(d={x1:g.x1,y1:g.y1,x2:g.x2,y2:g.y2}).w=d.x2-d.x1,d.h=d.y2-d.y1}else z(a)||(a=this.mutableElements());if(!(z(a)&&a.empty())){d=d||a.boundingBox();var h=this.width(),i=this.height();if(b=x(b)?b:0,!isNaN(h)&&!isNaN(i)&&h>0&&i>0&&!isNaN(d.w)&&!isNaN(d.h)&&d.w>0&&d.h>0){e=(e=(e=Math.min((h-2*b)/d.w,(i-2*b)/d.h))>this._private.maxZoom?this._private.maxZoom:e)<this._private.minZoom?this._private.minZoom:e;var j={x:(h-e*(d.x1+d.x2))/2,y:(i-e*(d.y1+d.y2))/2};return{zoom:e,pan:j}}}}},zoomRange:function(a,b){var c=this._private;if(null==b){var d=a;a=d.min,b=d.max}return x(a)&&x(b)&&a<=b?(c.minZoom=a,c.maxZoom=b):x(a)&&void 0===b&&a<=c.maxZoom?c.minZoom=a:x(b)&&void 0===a&&b>=c.minZoom&&(c.maxZoom=b),this},minZoom:function(a){return void 0===a?this._private.minZoom:this.zoomRange({min:a})},maxZoom:function(a){return void 0===a?this._private.maxZoom:this.zoomRange({max:a})},getZoomedViewport:function(a){var b,c,d=this._private,e=d.pan,f=d.zoom,g=!1;if(d.zoomingEnabled||(g=!0),x(a)?c=a:w(a)&&(c=a.level,null!=a.position?b=a2(a.position,f,e):null!=a.renderedPosition&&(b=a.renderedPosition),null==b||d.panningEnabled||(g=!0)),c=(c=c>d.maxZoom?d.maxZoom:c)<d.minZoom?d.minZoom:c,g||!x(c)||c===f||null!=b&&(!x(b.x)||!x(b.y)))return null;if(null==b)return{zoomed:!0,panned:!1,zoom:c,pan:e};var h=c,i={x:-h/f*(b.x-e.x)+b.x,y:-h/f*(b.y-e.y)+b.y};return{zoomed:!0,panned:!0,zoom:h,pan:i}},zoom:function(a){if(void 0===a)return this._private.zoom;var b=this.getZoomedViewport(a),c=this._private;return null!=b&&b.zoomed&&(c.zoom=b.zoom,b.panned&&(c.pan.x=b.pan.x,c.pan.y=b.pan.y),this.emit("zoom"+(b.panned?" pan":"")+" viewport"),this.notify("viewport")),this},viewport:function(a){var b=this._private,c=!0,d=!0,e=[],f=!1,g=!1;if(!a||(x(a.zoom)||(c=!1),w(a.pan)||(d=!1),!c&&!d))return this;if(c){var h=a.zoom;h<b.minZoom||h>b.maxZoom||!b.zoomingEnabled?f=!0:(b.zoom=h,e.push("zoom"))}if(d&&(!f||!a.cancelOnFailedZoom)&&b.panningEnabled){var i=a.pan;x(i.x)&&(b.pan.x=i.x,g=!1),x(i.y)&&(b.pan.y=i.y,g=!1),g||e.push("pan")}return e.length>0&&(e.push("viewport"),this.emit(e.join(" ")),this.notify("viewport")),this},center:function(a){var b=this.getCenterPan(a);return b&&(this._private.pan=b,this.emit("pan viewport"),this.notify("viewport")),this},getCenterPan:function(a,b){if(this._private.panningEnabled){if(t(a)){var c=a;a=this.mutableElements().filter(c)}else z(a)||(a=this.mutableElements());if(0!==a.length){var d=a.boundingBox(),e=this.width(),f=this.height();return{x:(e-(b=void 0===b?this._private.zoom:b)*(d.x1+d.x2))/2,y:(f-b*(d.y1+d.y2))/2}}}},reset:function(){return this._private.panningEnabled&&this._private.zoomingEnabled&&this.viewport({pan:{x:0,y:0},zoom:1}),this},invalidateSize:function(){this._private.sizeCache=null},size:function(){var a,b,c=this._private,d=c.container;return c.sizeCache=c.sizeCache||(d?(a=this.window().getComputedStyle(d),b=function(b){return parseFloat(a.getPropertyValue(b))},{width:d.clientWidth-b("padding-left")-b("padding-right"),height:d.clientHeight-b("padding-top")-b("padding-bottom")}):{width:1,height:1})},width:function(){return this.size().width},height:function(){return this.size().height},extent:function(){var a=this._private.pan,b=this._private.zoom,c=this.renderedExtent(),d={x1:(c.x1-a.x)/b,x2:(c.x2-a.x)/b,y1:(c.y1-a.y)/b,y2:(c.y2-a.y)/b};return d.w=d.x2-d.x1,d.h=d.y2-d.y1,d},renderedExtent:function(){var a=this.width(),b=this.height();return{x1:0,y1:0,x2:a,y2:b,w:a,h:b}},multiClickDebounceTime:function(a){return a?(this._private.multiClickDebounceTime=a,this):this._private.multiClickDebounceTime}};fa.centre=fa.center,fa.autolockNodes=fa.autolock,fa.autoungrabifyNodes=fa.autoungrabify;var fb={data:dh.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeData:dh.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),scratch:dh.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:dh.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0})};fb.attr=fb.data,fb.removeAttr=fb.removeData;var fc=function(a){var b=this,c=(a=S({},a)).container;c&&!y(c)&&y(c[0])&&(c=c[0]);var d=c?c._cyreg:null;(d=d||{}).cy&&(d.cy.destroy(),d={});var e=d.readies=d.readies||[];c&&(c._cyreg=d),d.cy=b;var f=void 0!==c&&!a.headless,g=a;g.layout=S({name:f?"grid":"null"},g.layout),g.renderer=S({name:f?"canvas":"null"},g.renderer);var h=function(a,b,c){return void 0!==b?b:void 0!==c?c:a},i=this._private={container:c,ready:!1,options:g,elements:new eJ(this),listeners:[],aniEles:new eJ(this),data:g.data||{},scratch:{},layout:null,renderer:null,destroyed:!1,notificationsEnabled:!0,minZoom:1e-50,maxZoom:1e50,zoomingEnabled:h(!0,g.zoomingEnabled),userZoomingEnabled:h(!0,g.userZoomingEnabled),panningEnabled:h(!0,g.panningEnabled),userPanningEnabled:h(!0,g.userPanningEnabled),boxSelectionEnabled:h(!0,g.boxSelectionEnabled),autolock:h(!1,g.autolock,g.autolockNodes),autoungrabify:h(!1,g.autoungrabify,g.autoungrabifyNodes),autounselectify:h(!1,g.autounselectify),styleEnabled:void 0===g.styleEnabled?f:g.styleEnabled,zoom:x(g.zoom)?g.zoom:1,pan:{x:w(g.pan)&&x(g.pan.x)?g.pan.x:0,y:w(g.pan)&&x(g.pan.y)?g.pan.y:0},animation:{current:[],queue:[]},hasCompoundNodes:!1,multiClickDebounceTime:h(250,g.multiClickDebounceTime)};this.createEmitter(),this.selectionType(g.selectionType),this.zoomRange({min:g.minZoom,max:g.maxZoom}),i.styleEnabled&&b.setStyle([]);var j=S({},g,g.renderer);b.initRenderer(j);var k=function(a,c,d){b.notifications(!1);var e=b.mutableElements();e.length>0&&e.remove(),null!=a&&(w(a)||v(a))&&b.add(a),b.one("layoutready",function(a){b.notifications(!0),b.emit(a),b.one("load",c),b.emitAndNotify("load")}).one("layoutstop",function(){b.one("done",d),b.emit("done")});var f=S({},b._private.options.layout);f.eles=b.elements(),b.layout(f).run()};!function(a,b){if(a.some(F))return c0.all(a).then(b);b(a)}([g.style,g.elements],function(a){var c=a[0],f=a[1];i.styleEnabled&&b.style().append(c),k(f,function(){b.startAnimationLoop(),i.ready=!0,u(g.ready)&&b.on("ready",g.ready);for(var a=0;a<e.length;a++){var c=e[a];b.on("ready",c)}d&&(d.readies=[]),b.emit("ready")},g.done)})},fd=fc.prototype;S(fd,{instanceString:function(){return"core"},isReady:function(){return this._private.ready},destroyed:function(){return this._private.destroyed},ready:function(a){return this.isReady()?this.emitter().emit("ready",[],a):this.on("ready",a),this},destroy:function(){if(!this.destroyed())return this.stopAnimationLoop(),this.destroyRenderer(),this.emit("destroy"),this._private.destroyed=!0,this},hasElementWithId:function(a){return this._private.elements.hasElementWithId(a)},getElementById:function(a){return this._private.elements.getElementById(a)},hasCompoundNodes:function(){return this._private.hasCompoundNodes},headless:function(){return this._private.renderer.isHeadless()},styleEnabled:function(){return this._private.styleEnabled},addToPool:function(a){return this._private.elements.merge(a),this},removeFromPool:function(a){return this._private.elements.unmerge(a),this},container:function(){return this._private.container||null},window:function(){if(null==this._private.container)return null;var a=this._private.container.ownerDocument;return void 0===a||null==a?null:a.defaultView||null},mount:function(a){if(null!=a){var b=this._private,c=b.options;return!y(a)&&y(a[0])&&(a=a[0]),this.stopAnimationLoop(),this.destroyRenderer(),b.container=a,b.styleEnabled=!0,this.invalidateSize(),this.initRenderer(S({},c,c.renderer,{name:"null"===c.renderer.name?"canvas":c.renderer.name})),this.startAnimationLoop(),this.style(c.style),this.emit("mount"),this}},unmount:function(){return this.stopAnimationLoop(),this.destroyRenderer(),this.initRenderer({name:"null"}),this.emit("unmount"),this},options:function(){return aD(this._private.options)},json:function(a){var b=this,c=b._private,d=b.mutableElements();if(w(a)){if(b.startBatch(),a.elements){var e={},f=function(a,c){for(var d=[],f=[],g=0;g<a.length;g++){var h=a[g];if(!h.data.id){aC("cy.json() cannot handle elements without an ID attribute");continue}var i=""+h.data.id,j=b.getElementById(i);e[i]=!0,0!==j.length?f.push({ele:j,json:h}):(c&&(h.group=c),d.push(h))}b.add(d);for(var k=0;k<f.length;k++){var l=f[k],n=l.ele,o=l.json;n.json(o)}};if(v(a.elements))f(a.elements);else for(var g=["nodes","edges"],h=0;h<g.length;h++){var i=g[h],j=a.elements[i];v(j)&&f(j,i)}var k=b.collection();d.filter(function(a){return!e[a.id()]}).forEach(function(a){a.isParent()?k.merge(a):a.remove()}),k.forEach(function(a){return a.children().move({parent:null})}),k.forEach(function(a){return b.getElementById(a.id()).remove()})}a.style&&b.style(a.style),null!=a.zoom&&a.zoom!==c.zoom&&b.zoom(a.zoom),a.pan&&(a.pan.x!==c.pan.x||a.pan.y!==c.pan.y)&&b.pan(a.pan),a.data&&b.data(a.data);for(var l=["minZoom","maxZoom","zoomingEnabled","userZoomingEnabled","panningEnabled","userPanningEnabled","boxSelectionEnabled","autolock","autoungrabify","autounselectify","multiClickDebounceTime"],n=0;n<l.length;n++){var o=l[n];null!=a[o]&&b[o](a[o])}return b.endBatch(),this}var p={};a?p.elements=this.elements().map(function(a){return a.json()}):(p.elements={},d.forEach(function(a){var b=a.group();p.elements[b]||(p.elements[b]=[]),p.elements[b].push(a.json())})),this._private.styleEnabled&&(p.style=b.style().json()),p.data=aD(b.data());var q=c.options;return p.zoomingEnabled=c.zoomingEnabled,p.userZoomingEnabled=c.userZoomingEnabled,p.zoom=c.zoom,p.minZoom=c.minZoom,p.maxZoom=c.maxZoom,p.panningEnabled=c.panningEnabled,p.userPanningEnabled=c.userPanningEnabled,p.pan=aD(c.pan),p.boxSelectionEnabled=c.boxSelectionEnabled,p.renderer=aD(q.renderer),p.hideEdgesOnViewport=q.hideEdgesOnViewport,p.textureOnViewport=q.textureOnViewport,p.wheelSensitivity=q.wheelSensitivity,p.motionBlur=q.motionBlur,p.multiClickDebounceTime=q.multiClickDebounceTime,p}}),fd.$id=fd.getElementById,[{add:function(a){var b;if(z(a))if(a._private.cy===this)b=a.restore();else{for(var c=[],d=0;d<a.length;d++){var e=a[d];c.push(e.json())}b=new eJ(this,c)}else if(v(a))b=new eJ(this,a);else if(w(a)&&(v(a.nodes)||v(a.edges))){for(var f=[],g=["nodes","edges"],h=0,i=g.length;h<i;h++){var j=g[h],k=a[j];if(v(k))for(var l=0,n=k.length;l<n;l++){var o=S({group:j},k[l]);f.push(o)}}b=new eJ(this,f)}else b=new aR(this,a).collection();return b},remove:function(a){if(z(a));else if(t(a)){var b=a;a=this.$(b)}return a.remove()}},eT,eW,eX,eY,{notify:function(a,b){var c=this._private;if(this.batching()){c.batchNotifications=c.batchNotifications||{};var d=c.batchNotifications[a]=c.batchNotifications[a]||this.collection();null!=b&&d.merge(b);return}if(c.notificationsEnabled){var e=this.renderer();!this.destroyed()&&e&&e.notify(a,b)}},notifications:function(a){var b=this._private;return void 0===a?b.notificationsEnabled:(b.notificationsEnabled=!!a,this)},noNotifications:function(a){this.notifications(!1),a(),this.notifications(!0)},batching:function(){return this._private.batchCount>0},startBatch:function(){var a=this._private;return null==a.batchCount&&(a.batchCount=0),0===a.batchCount&&(a.batchStyleEles=this.collection(),a.batchNotifications={}),a.batchCount++,this},endBatch:function(){var a=this._private;if(0===a.batchCount)return this;if(a.batchCount--,0===a.batchCount){a.batchStyleEles.updateStyle();var b=this.renderer();Object.keys(a.batchNotifications).forEach(function(c){var d=a.batchNotifications[c];d.empty()?b.notify(c):b.notify(c,d)})}return this},batch:function(a){return this.startBatch(),a(),this.endBatch(),this},batchData:function(a){var b=this;return this.batch(function(){for(var c=Object.keys(a),d=0;d<c.length;d++){var e=c[d],f=a[e];b.getElementById(e).data(f)}})}},e$,e_,{style:function(a){return a&&this.setStyle(a).update(),this._private.style},setStyle:function(a){var b=this._private;return D(a)?b.style=a.generateStyle(this):v(a)?b.style=e8.fromJson(this,a):t(a)?b.style=e8.fromString(this,a):b.style=e8(this),b.style},updateStyle:function(){this.mutableElements().updateStyle()}},fa,fb].forEach(function(a){S(fd,a)});var fe={fit:!0,directed:!1,direction:"downward",padding:30,circle:!1,grid:!1,spacingFactor:1.75,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,roots:void 0,depthSort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(a,b){return!0},ready:void 0,stop:void 0,transform:function(a,b){return b}},ff={maximal:!1,acyclic:!1},fg=function(a){return a.scratch("breadthfirst")},fh=function(a,b){return a.scratch("breadthfirst",b)};function fi(a){this.options=S({},fe,ff,a)}fi.prototype.run=function(){var a,b=this.options,c=b.cy,d=b.eles,e=d.nodes().filter(function(a){return a.isChildless()}),f=b.directed,g=b.acyclic||b.maximal||b.maximalAdjustments>0,h=!!b.boundingBox,i=bj(h?b.boundingBox:structuredClone(c.extent()));if(z(b.roots))a=b.roots;else if(v(b.roots)){for(var j=[],k=0;k<b.roots.length;k++){var l=b.roots[k],n=c.getElementById(l);j.push(n)}a=c.collection(j)}else if(t(b.roots))a=c.$(b.roots);else if(f)a=e.roots();else{var o=d.components();a=c.collection();for(var p=0;p<o.length;p++)!function(){var b=o[p],c=b.maxDegree(!1),d=b.filter(function(a){return a.degree(!1)===c});a=a.add(d)}()}var q=[],r={},s=function(a,b){null==q[b]&&(q[b]=[]);var c=q[b].length;q[b].push(a),fh(a,{index:c,depth:b})},u=function(a,b){var c=fg(a),d=c.depth,e=c.index;q[d][e]=null,a.isChildless()&&s(a,b)};d.bfs({roots:a,directed:b.directed,visit:function(a,b,c,d,e){var f=a[0],g=f.id();f.isChildless()&&s(f,e),r[g]=!0}});for(var w=[],x=0;x<e.length;x++){var y=e[x];r[y.id()]||w.push(y)}var A=function(a){for(var b=q[a],c=0;c<b.length;c++){var d=b[c];if(null==d){b.splice(c,1),c--;continue}fh(d,{depth:a,index:c})}};if(f&&g){var B=[],C={},D=function(a){return B.push(a)};for(e.forEach(function(a){return B.push(a)});B.length>0;){var E=B.shift(),F=function(a,c){for(var e=fg(a),f=a.incomers().filter(function(a){return a.isNode()&&d.has(a)}),g=-1,h=a.id(),i=0;i<f.length;i++)g=Math.max(g,fg(f[i]).depth);if(e.depth<=g){if(!b.acyclic&&c[h])return null;var j=g+1;return u(a,j),c[h]=j,!0}return!1}(E,C);if(F)E.outgoers().filter(function(a){return a.isNode()&&d.has(a)}).forEach(D);else if(null===F){aC("Detected double maximal shift for node `"+E.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}var G=0;if(b.avoidOverlap)for(var H=0;H<e.length;H++){var I=e[H].layoutDimensions(b),J=I.w,K=I.h;G=Math.max(G,J,K)}var L={},M=function(a){if(L[a.id()])return L[a.id()];for(var b=fg(a).depth,c=a.neighborhood(),d=0,f=0,g=0;g<c.length;g++){var h=c[g];if(!(h.isEdge()||h.isParent())&&e.has(h)){var i=fg(h);if(null!=i){var j=i.index,k=i.depth;if(null!=j&&null!=k){var l=q[k].length;k<b&&(d+=j/l,f++)}}}}return d/=f=Math.max(1,f),0===f&&(d=0),L[a.id()]=d,d},N=function(a,b){var c=M(a)-M(b);return 0===c?R(a.id(),b.id()):c};void 0!==b.depthSort&&(N=b.depthSort);for(var O=q.length,P=0;P<O;P++)q[P].sort(N),A(P);for(var Q=[],S=0;S<w.length;S++)Q.push(w[S]);if(Q.length){q.unshift(Q),O=q.length;for(var T=0;T<O;T++)A(T)}for(var U=0,V=0;V<O;V++)U=Math.max(q[V].length,U);var W={x:i.x1+i.w/2,y:i.y1+i.h/2},X=e.reduce(function(a,c){var d;return d=c.boundingBox({includeLabels:b.nodeDimensionsIncludeLabels}),{w:-1===a.w?d.w:(a.w+d.w)/2,h:-1===a.h?d.h:(a.h+d.h)/2}},{w:-1,h:-1}),Y=Math.max(1===O?0:h?(i.h-2*b.padding-X.h)/(O-1):(i.h-2*b.padding-X.h)/(O+1),G),Z=q.reduce(function(a,b){return Math.max(a,b.length)},0),$=function(a){var c=fg(a),d=c.depth,e=c.index;if(b.circle){var f=Math.min(i.w/2/O,i.h/2/O),g=(f=Math.max(f,G))*d+f-(O>0&&q[0].length<=3?f/2:0),j=2*Math.PI/q[d].length*e;return 0===d&&1===q[0].length&&(g=1),{x:W.x+g*Math.cos(j),y:W.y+g*Math.sin(j)}}var k=q[d].length,l=Math.max(1===k?0:h?(i.w-2*b.padding-X.w)/((b.grid?Z:k)-1):(i.w-2*b.padding-X.w)/((b.grid?Z:k)+1),G);return{x:W.x+(e+1-(k+1)/2)*l,y:W.y+(d+1-(O+1)/2)*Y}},_={downward:0,leftward:90,upward:180,rightward:-90};return -1===Object.keys(_).indexOf(b.direction)&&aA("Invalid direction '".concat(b.direction,"' specified for breadthfirst layout. Valid values are: ").concat(Object.keys(_).join(", "))),d.nodes().layoutPositions(this,b,function(a){return function(a,b,c){if(0===c)return a;var d,e,f,g,h=(b.x1+b.x2)/2,i=(b.y1+b.y2)/2,j=b.w/b.h,k=(d=a.x,e=a.y,{x:Math.cos(f=c*Math.PI/180)*(d-h)-Math.sin(f)*(e-i)+h,y:Math.sin(f)*(d-h)+Math.cos(f)*(e-i)+i}),l=(g=k.x,{x:(g-h)*j+h,y:(k.y-i)*(1/j)+i});return{x:l.x,y:l.y}}($(a),i,_[b.direction])}),this};var fj={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,radius:void 0,startAngle:1.5*Math.PI,sweep:void 0,clockwise:!0,sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(a,b){return!0},ready:void 0,stop:void 0,transform:function(a,b){return b}};function fk(a){this.options=S({},fj,a)}fk.prototype.run=function(){var a,b=this.options,c=b.cy,d=b.eles,e=void 0!==b.counterclockwise?!b.counterclockwise:b.clockwise,f=d.nodes().not(":parent");b.sort&&(f=f.sort(b.sort));for(var g=bj(b.boundingBox?b.boundingBox:{x1:0,y1:0,w:c.width(),h:c.height()}),h={x:g.x1+g.w/2,y:g.y1+g.h/2},i=(void 0===b.sweep?2*Math.PI-2*Math.PI/f.length:b.sweep)/Math.max(1,f.length-1),j=0,k=0;k<f.length;k++){var l=f[k].layoutDimensions(b);j=Math.max(j,l.w,l.h)}if(a=x(b.radius)?b.radius:f.length<=1?0:Math.min(g.h,g.w)/2-j,f.length>1&&b.avoidOverlap){var n=Math.cos(i)-1,o=Math.sin(i)-0;a=Math.max(Math.sqrt((j*=1.75)*j/(n*n+o*o)),a)}return d.nodes().layoutPositions(this,b,function(c,d){var f=b.startAngle+d*i*(e?1:-1),g=a*Math.cos(f),j=a*Math.sin(f);return{x:h.x+g,y:h.y+j}}),this};var fl={fit:!0,padding:30,startAngle:1.5*Math.PI,sweep:void 0,clockwise:!0,equidistant:!1,minNodeSpacing:10,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,height:void 0,width:void 0,spacingFactor:void 0,concentric:function(a){return a.degree()},levelWidth:function(a){return a.maxDegree()/4},animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(a,b){return!0},ready:void 0,stop:void 0,transform:function(a,b){return b}};function fm(a){this.options=S({},fl,a)}fm.prototype.run=function(){for(var a=this.options,b=void 0!==a.counterclockwise?!a.counterclockwise:a.clockwise,c=a.cy,d=a.eles,e=d.nodes().not(":parent"),f=bj(a.boundingBox?a.boundingBox:{x1:0,y1:0,w:c.width(),h:c.height()}),g={x:f.x1+f.w/2,y:f.y1+f.h/2},h=[],i=0,j=0;j<e.length;j++){var k=e[j],l=void 0;l=a.concentric(k),h.push({value:l,node:k}),k._private.scratch.concentric=l}e.updateStyle();for(var n=0;n<e.length;n++){var o=e[n].layoutDimensions(a);i=Math.max(i,o.w,o.h)}h.sort(function(a,b){return b.value-a.value});for(var p=a.levelWidth(e),q=[[]],r=q[0],s=0;s<h.length;s++){var t=h[s];r.length>0&&Math.abs(r[0].value-t.value)>=p&&(r=[],q.push(r)),r.push(t)}var u=i+a.minNodeSpacing;if(!a.avoidOverlap){var v=q.length>0&&q[0].length>1,w=(Math.min(f.w,f.h)/2-u)/(q.length+v?1:0);u=Math.min(u,w)}for(var x=0,y=0;y<q.length;y++){var z=q[y],A=void 0===a.sweep?2*Math.PI-2*Math.PI/z.length:a.sweep,B=z.dTheta=A/Math.max(1,z.length-1);if(z.length>1&&a.avoidOverlap){var C=Math.cos(B)-1,D=Math.sin(B)-0;x=Math.max(Math.sqrt(u*u/(C*C+D*D)),x)}z.r=x,x+=u}if(a.equidistant){for(var E=0,F=0,G=0;G<q.length;G++)E=Math.max(E,q[G].r-F);F=0;for(var H=0;H<q.length;H++){var I=q[H];0===H&&(F=I.r),I.r=F,F+=E}}for(var J={},K=0;K<q.length;K++)for(var L=q[K],M=L.dTheta,N=L.r,O=0;O<L.length;O++){var P=L[O],Q=a.startAngle+(b?1:-1)*M*O,R={x:g.x+N*Math.cos(Q),y:g.y+N*Math.sin(Q)};J[P.node.id()]=R}return d.nodes().layoutPositions(this,a,function(a){return J[a.id()]}),this};var fn={ready:function(){},stop:function(){},animate:!0,animationEasing:void 0,animationDuration:void 0,animateFilter:function(a,b){return!0},animationThreshold:250,refresh:20,fit:!0,padding:30,boundingBox:void 0,nodeDimensionsIncludeLabels:!1,randomize:!1,componentSpacing:40,nodeRepulsion:function(a){return 2048},nodeOverlap:4,idealEdgeLength:function(a){return 32},edgeElasticity:function(a){return 32},nestingFactor:1.2,gravity:1,numIter:1e3,initialTemp:1e3,coolingFactor:.99,minTemp:1};function fo(a){this.options=S({},fn,a),this.options.layout=this;var b=this.options.eles.nodes(),c=this.options.eles.edges().filter(function(a){var c=a.source().data("id"),d=a.target().data("id"),e=b.some(function(a){return a.data("id")===c}),f=b.some(function(a){return a.data("id")===d});return!e||!f});this.options.eles=this.options.eles.not(c)}fo.prototype.run=function(){var a=this.options,b=a.cy,c=this;c.stopped=!1,(!0===a.animate||!1===a.animate)&&c.emit({type:"layoutstart",layout:c}),ik=!0===a.debug;var d=fp(b,c,a);ik&&il(d),a.randomize&&fs(d);var e=ag(),f=function(){fu(d,b,a),!0===a.fit&&b.fit(a.padding)},g=function(b){return!c.stopped&&!(b>=a.numIter)&&(fv(d,a),d.temperature=d.temperature*a.coolingFactor,!(d.temperature<a.minTemp))},h=function(){if(!0===a.animate||!1===a.animate)f(),c.one("layoutstop",a.stop),c.emit({type:"layoutstop",layout:c});else{var b=a.eles.nodes(),e=ft(d,a,b);b.layoutPositions(c,a,e)}},i=0,j=!0;if(!0===a.animate){var k=function(){for(var b=0;j&&b<a.refresh;)j=g(i),i++,b++;j?(ag()-e>=a.animationThreshold&&f(),ai(k)):(fH(d,a),h())};k()}else{for(;j;)j=g(i),i++;fH(d,a),h()}return this},fo.prototype.stop=function(){return this.stopped=!0,this.thread&&this.thread.stop(),this.emit("layoutstop"),this},fo.prototype.destroy=function(){return this.thread&&this.thread.stop(),this};var fp=function(a,b,c){for(var d=c.eles.edges(),e=c.eles.nodes(),f=bj(c.boundingBox?c.boundingBox:{x1:0,y1:0,w:a.width(),h:a.height()}),g={isCompound:a.hasCompoundNodes(),layoutNodes:[],idToIndex:{},nodeSize:e.size(),graphSet:[],indexToGraph:[],layoutEdges:[],edgeSize:d.size(),temperature:c.initialTemp,clientWidth:f.w,clientHeight:f.h,boundingBox:f},h=c.eles.components(),i={},j=0;j<h.length;j++)for(var k=h[j],l=0;l<k.length;l++){var n=k[l];i[n.id()]=j}for(var j=0;j<g.nodeSize;j++){var o=e[j],p=o.layoutDimensions(c),q={};q.isLocked=o.locked(),q.id=o.data("id"),q.parentId=o.data("parent"),q.cmptId=i[o.id()],q.children=[],q.positionX=o.position("x"),q.positionY=o.position("y"),q.offsetX=0,q.offsetY=0,q.height=p.w,q.width=p.h,q.maxX=q.positionX+q.width/2,q.minX=q.positionX-q.width/2,q.maxY=q.positionY+q.height/2,q.minY=q.positionY-q.height/2,q.padLeft=parseFloat(o.style("padding")),q.padRight=parseFloat(o.style("padding")),q.padTop=parseFloat(o.style("padding")),q.padBottom=parseFloat(o.style("padding")),q.nodeRepulsion=u(c.nodeRepulsion)?c.nodeRepulsion(o):c.nodeRepulsion,g.layoutNodes.push(q),g.idToIndex[q.id]=j}for(var r=[],s=0,t=-1,v=[],j=0;j<g.nodeSize;j++){var o=g.layoutNodes[j],w=o.parentId;null!=w?g.layoutNodes[g.idToIndex[w]].children.push(o.id):(r[++t]=o.id,v.push(o.id))}for(g.graphSet.push(v);s<=t;){var x=r[s++],y=g.idToIndex[x],n=g.layoutNodes[y],z=n.children;if(z.length>0){g.graphSet.push(z);for(var j=0;j<z.length;j++)r[++t]=z[j]}}for(var j=0;j<g.graphSet.length;j++)for(var A=g.graphSet[j],l=0;l<A.length;l++){var B=g.idToIndex[A[l]];g.indexToGraph[B]=j}for(var j=0;j<g.edgeSize;j++){var C=d[j],D={};D.id=C.data("id"),D.sourceId=C.data("source"),D.targetId=C.data("target");var E=u(c.idealEdgeLength)?c.idealEdgeLength(C):c.idealEdgeLength,F=u(c.edgeElasticity)?c.edgeElasticity(C):c.edgeElasticity,G=g.idToIndex[D.sourceId],H=g.idToIndex[D.targetId];if(g.indexToGraph[G]!=g.indexToGraph[H]){for(var I=fq(D.sourceId,D.targetId,g),J=g.graphSet[I],K=0,q=g.layoutNodes[G];-1===J.indexOf(q.id);)q=g.layoutNodes[g.idToIndex[q.parentId]],K++;for(q=g.layoutNodes[H];-1===J.indexOf(q.id);)q=g.layoutNodes[g.idToIndex[q.parentId]],K++;E*=K*c.nestingFactor}D.idealLength=E,D.elasticity=F,g.layoutEdges.push(D)}return g},fq=function(a,b,c){var d=fr(a,b,0,c);return 2>d.count?0:d.graph},fr=function(a,b,c,d){var e=d.graphSet[c];if(-1<e.indexOf(a)&&-1<e.indexOf(b))return{count:2,graph:c};for(var f=0,g=0;g<e.length;g++){var h=e[g],i=d.idToIndex[h],j=d.layoutNodes[i].children;if(0!==j.length){var k=fr(a,b,d.indexToGraph[d.idToIndex[j[0]]],d);if(0===k.count)continue;if(1!==k.count)return k;if(2==++f)break}}return{count:f,graph:c}},fs=function(a,b){for(var c=a.clientWidth,d=a.clientHeight,e=0;e<a.nodeSize;e++){var f=a.layoutNodes[e];0!==f.children.length||f.isLocked||(f.positionX=Math.random()*c,f.positionY=Math.random()*d)}},ft=function(a,b,c){var d=a.boundingBox,e={x1:1/0,x2:-1/0,y1:1/0,y2:-1/0};return b.boundingBox&&(c.forEach(function(b){var c=a.layoutNodes[a.idToIndex[b.data("id")]];e.x1=Math.min(e.x1,c.positionX),e.x2=Math.max(e.x2,c.positionX),e.y1=Math.min(e.y1,c.positionY),e.y2=Math.max(e.y2,c.positionY)}),e.w=e.x2-e.x1,e.h=e.y2-e.y1),function(c,f){var g=a.layoutNodes[a.idToIndex[c.data("id")]];if(!b.boundingBox)return{x:g.positionX,y:g.positionY};var h=0===e.w?.5:(g.positionX-e.x1)/e.w,i=0===e.h?.5:(g.positionY-e.y1)/e.h;return{x:d.x1+h*d.w,y:d.y1+i*d.h}}},fu=function(a,b,c){var d=c.layout,e=c.eles.nodes(),f=ft(a,c,e);e.positions(f),!0!==a.ready&&(a.ready=!0,d.one("layoutready",c.ready),d.emit({type:"layoutready",layout:this}))},fv=function(a,b,c){fw(a,b),fB(a),fC(a,b),fD(a),fE(a)},fw=function(a,b){for(var c=0;c<a.graphSet.length;c++)for(var d=a.graphSet[c],e=d.length,f=0;f<e;f++)for(var g=a.layoutNodes[a.idToIndex[d[f]]],h=f+1;h<e;h++)fy(g,a.layoutNodes[a.idToIndex[d[h]]],a,b)},fx=function(a){return -1+2*a*Math.random()},fy=function(a,b,c,d){if(a.cmptId===b.cmptId||c.isCompound){var e=b.positionX-a.positionX,f=b.positionY-a.positionY;0===e&&0===f&&(e=fx(1),f=fx(1));var g=fz(a,b,e,f);if(g>0)var h=d.nodeOverlap*g,i=Math.sqrt(e*e+f*f),j=h*e/i,k=h*f/i;else var l=fA(a,e,f),n=fA(b,-1*e,-1*f),o=n.x-l.x,p=n.y-l.y,q=o*o+p*p,i=Math.sqrt(q),h=(a.nodeRepulsion+b.nodeRepulsion)/q,j=h*o/i,k=h*p/i;a.isLocked||(a.offsetX-=j,a.offsetY-=k),b.isLocked||(b.offsetX+=j,b.offsetY+=k)}},fz=function(a,b,c,d){if(c>0)var e=a.maxX-b.minX;else var e=b.maxX-a.minX;if(d>0)var f=a.maxY-b.minY;else var f=b.maxY-a.minY;return e>=0&&f>=0?Math.sqrt(e*e+f*f):0},fA=function(a,b,c){var d=a.positionX,e=a.positionY,f=a.height||1,g=a.width||1,h=c/b,i=f/g,j={};return 0===b&&0<c||0===b&&0>c?(j.x=d,j.y=e+f/2):0<b&&-1*i<=h&&h<=i?(j.x=d+g/2,j.y=e+g*c/2/b):0>b&&-1*i<=h&&h<=i?(j.x=d-g/2,j.y=e-g*c/2/b):0<c&&(h<=-1*i||h>=i)?(j.x=d+f*b/2/c,j.y=e+f/2):0>c&&(h<=-1*i||h>=i)&&(j.x=d-f*b/2/c,j.y=e-f/2),j},fB=function(a,b){for(var c=0;c<a.edgeSize;c++){var d=a.layoutEdges[c],e=a.idToIndex[d.sourceId],f=a.layoutNodes[e],g=a.idToIndex[d.targetId],h=a.layoutNodes[g],i=h.positionX-f.positionX,j=h.positionY-f.positionY;if(0!==i||0!==j){var k=fA(f,i,j),l=fA(h,-1*i,-1*j),n=l.x-k.x,o=l.y-k.y,p=Math.sqrt(n*n+o*o),q=Math.pow(d.idealLength-p,2)/d.elasticity;if(0!==p)var r=q*n/p,s=q*o/p;else var r=0,s=0;f.isLocked||(f.offsetX+=r,f.offsetY+=s),h.isLocked||(h.offsetX-=r,h.offsetY-=s)}}},fC=function(a,b){if(0!==b.gravity)for(var c=0;c<a.graphSet.length;c++){var d=a.graphSet[c],e=d.length;if(0===c)var f=a.clientHeight/2,g=a.clientWidth/2;else var h=a.layoutNodes[a.idToIndex[d[0]]],i=a.layoutNodes[a.idToIndex[h.parentId]],f=i.positionX,g=i.positionY;for(var j=0;j<e;j++){var k=a.layoutNodes[a.idToIndex[d[j]]];if(!k.isLocked){var l=f-k.positionX,n=g-k.positionY,o=Math.sqrt(l*l+n*n);if(o>1){var p=b.gravity*l/o,q=b.gravity*n/o;k.offsetX+=p,k.offsetY+=q}}}}},fD=function(a,b){var c=[],d=0,e=-1;for(c.push.apply(c,a.graphSet[0]),e+=a.graphSet[0].length;d<=e;){var f=c[d++],g=a.idToIndex[f],h=a.layoutNodes[g],i=h.children;if(0<i.length&&!h.isLocked){for(var j=h.offsetX,k=h.offsetY,l=0;l<i.length;l++){var n=a.layoutNodes[a.idToIndex[i[l]]];n.offsetX+=j,n.offsetY+=k,c[++e]=i[l]}h.offsetX=0,h.offsetY=0}}},fE=function(a,b){for(var c=0;c<a.nodeSize;c++){var d=a.layoutNodes[c];0<d.children.length&&(d.maxX=void 0,d.minX=void 0,d.maxY=void 0,d.minY=void 0)}for(var c=0;c<a.nodeSize;c++){var d=a.layoutNodes[c];if(!(0<d.children.length)&&!d.isLocked){var e=fF(d.offsetX,d.offsetY,a.temperature);d.positionX+=e.x,d.positionY+=e.y,d.offsetX=0,d.offsetY=0,d.minX=d.positionX-d.width,d.maxX=d.positionX+d.width,d.minY=d.positionY-d.height,d.maxY=d.positionY+d.height,fG(d,a)}}for(var c=0;c<a.nodeSize;c++){var d=a.layoutNodes[c];0<d.children.length&&!d.isLocked&&(d.positionX=(d.maxX+d.minX)/2,d.positionY=(d.maxY+d.minY)/2,d.width=d.maxX-d.minX,d.height=d.maxY-d.minY)}},fF=function(a,b,c){var d=Math.sqrt(a*a+b*b);if(d>c)var e={x:c*a/d,y:c*b/d};else var e={x:a,y:b};return e},fG=function(a,b){var c=a.parentId;if(null!=c){var d=b.layoutNodes[b.idToIndex[c]],e=!1;if((null==d.maxX||a.maxX+d.padRight>d.maxX)&&(d.maxX=a.maxX+d.padRight,e=!0),(null==d.minX||a.minX-d.padLeft<d.minX)&&(d.minX=a.minX-d.padLeft,e=!0),(null==d.maxY||a.maxY+d.padBottom>d.maxY)&&(d.maxY=a.maxY+d.padBottom,e=!0),(null==d.minY||a.minY-d.padTop<d.minY)&&(d.minY=a.minY-d.padTop,e=!0),e)return fG(d,b)}},fH=function(a,b){for(var c=a.layoutNodes,d=[],e=0;e<c.length;e++){var f=c[e],g=f.cmptId;(d[g]=d[g]||[]).push(f)}for(var h=0,e=0;e<d.length;e++){var i=d[e];if(i){i.x1=1/0,i.x2=-1/0,i.y1=1/0,i.y2=-1/0;for(var j=0;j<i.length;j++){var k=i[j];i.x1=Math.min(i.x1,k.positionX-k.width/2),i.x2=Math.max(i.x2,k.positionX+k.width/2),i.y1=Math.min(i.y1,k.positionY-k.height/2),i.y2=Math.max(i.y2,k.positionY+k.height/2)}i.w=i.x2-i.x1,i.h=i.y2-i.y1,h+=i.w*i.h}}d.sort(function(a,b){return b.w*b.h-a.w*a.h});for(var l=0,n=0,o=0,p=0,q=Math.sqrt(h)*a.clientWidth/a.clientHeight,e=0;e<d.length;e++){var i=d[e];if(i){for(var j=0;j<i.length;j++){var k=i[j];k.isLocked||(k.positionX+=l-i.x1,k.positionY+=n-i.y1)}l+=i.w+b.componentSpacing,o+=i.w+b.componentSpacing,p=Math.max(p,i.h),o>q&&(n+=p+b.componentSpacing,l=0,o=0,p=0)}}},fI={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,avoidOverlapPadding:10,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,condense:!1,rows:void 0,cols:void 0,position:function(a){},sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(a,b){return!0},ready:void 0,stop:void 0,transform:function(a,b){return b}};function fJ(a){this.options=S({},fI,a)}fJ.prototype.run=function(){var a=this.options,b=a.cy,c=a.eles,d=c.nodes().not(":parent");a.sort&&(d=d.sort(a.sort));var e=bj(a.boundingBox?a.boundingBox:{x1:0,y1:0,w:b.width(),h:b.height()});if(0===e.h||0===e.w)c.nodes().layoutPositions(this,a,function(a){return{x:e.x1,y:e.y1}});else{var f=d.size(),g=Math.sqrt(f*e.h/e.w),h=Math.round(g),i=Math.round(e.w/e.h*g),j=function(a){if(null==a)return Math.min(h,i);Math.min(h,i)==h?h=a:i=a},k=function(a){if(null==a)return Math.max(h,i);Math.max(h,i)==h?h=a:i=a},l=a.rows,n=null!=a.cols?a.cols:a.columns;if(null!=l&&null!=n)h=l,i=n;else if(null!=l&&null==n)i=Math.ceil(f/(h=l));else if(null==l&&null!=n)h=Math.ceil(f/(i=n));else if(i*h>f){var o=j(),p=k();(o-1)*p>=f?j(o-1):(p-1)*o>=f&&k(p-1)}else for(;i*h<f;){var q=j(),r=k();(r+1)*q>=f?k(r+1):j(q+1)}var s=e.w/i,t=e.h/h;if(a.condense&&(s=0,t=0),a.avoidOverlap)for(var u=0;u<d.length;u++){var v=d[u],w=v._private.position;(null==w.x||null==w.y)&&(w.x=0,w.y=0);var x=v.layoutDimensions(a),y=a.avoidOverlapPadding,z=x.w+y,A=x.h+y;s=Math.max(s,z),t=Math.max(t,A)}for(var B={},C=function(a,b){return!!B["c-"+a+"-"+b]},D=function(a,b){B["c-"+a+"-"+b]=!0},E=0,F=0,G=function(){++F>=i&&(F=0,E++)},H={},I=0;I<d.length;I++){var J=d[I],K=a.position(J);if(K&&(void 0!==K.row||void 0!==K.col)){var L={row:K.row,col:K.col};if(void 0===L.col)for(L.col=0;C(L.row,L.col);)L.col++;else if(void 0===L.row)for(L.row=0;C(L.row,L.col);)L.row++;H[J.id()]=L,D(L.row,L.col)}}d.layoutPositions(this,a,function(a,b){if(a.locked()||a.isParent())return!1;var c,d,f=H[a.id()];if(f)c=f.col*s+s/2+e.x1,d=f.row*t+t/2+e.y1;else{for(;C(E,F);)G();c=F*s+s/2+e.x1,d=E*t+t/2+e.y1,D(E,F),G()}return{x:c,y:d}})}return this};var fK={ready:function(){},stop:function(){}};function fL(a){this.options=S({},fK,a)}fL.prototype.run=function(){var a=this.options,b=a.eles;return a.cy,this.emit("layoutstart"),b.nodes().positions(function(){return{x:0,y:0}}),this.one("layoutready",a.ready),this.emit("layoutready"),this.one("layoutstop",a.stop),this.emit("layoutstop"),this},fL.prototype.stop=function(){return this};var fM={positions:void 0,zoom:void 0,pan:void 0,fit:!0,padding:30,spacingFactor:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(a,b){return!0},ready:void 0,stop:void 0,transform:function(a,b){return b}};function fN(a){this.options=S({},fM,a)}fN.prototype.run=function(){var a=this.options,b=a.eles.nodes(),c=u(a.positions);return b.layoutPositions(this,a,function(b,d){var e=function(b){if(null==a.positions){var d;return{x:(d=b.position()).x,y:d.y}}if(c)return a.positions(b);var e=a.positions[b._private.data.id];return null==e?null:e}(b);return!b.locked()&&null!=e&&e}),this};var fO={fit:!0,padding:30,boundingBox:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(a,b){return!0},ready:void 0,stop:void 0,transform:function(a,b){return b}};function fP(a){this.options=S({},fO,a)}fP.prototype.run=function(){var a=this.options,b=a.cy,c=a.eles,d=bj(a.boundingBox?a.boundingBox:{x1:0,y1:0,w:b.width(),h:b.height()});return c.nodes().layoutPositions(this,a,function(a,b){return{x:d.x1+Math.round(Math.random()*d.w),y:d.y1+Math.round(Math.random()*d.h)}}),this};var fQ=[{name:"breadthfirst",impl:fi},{name:"circle",impl:fk},{name:"concentric",impl:fm},{name:"cose",impl:fo},{name:"grid",impl:fJ},{name:"null",impl:fL},{name:"preset",impl:fN},{name:"random",impl:fP}];function fR(a){this.options=a,this.notifications=0}var fS=function(){},fT=function(){throw Error("A headless instance can not render images")};fR.prototype={recalculateRenderedStyle:fS,notify:function(){this.notifications++},init:fS,isHeadless:function(){return!0},png:fT,jpg:fT};var fU={};fU.arrowShapeWidth=.3,fU.registerArrowShapes=function(){var a=this.arrowShapes={},b=this,c=function(a,b,c,d,e,f,g){var h=e.x-c/2-g,i=e.x+c/2+g,j=e.y-c/2-g,k=e.y+c/2+g;return h<=a&&a<=i&&j<=b&&b<=k},d=function(a,b,c,d,e){var f=a*Math.cos(d)-b*Math.sin(d),g=a*Math.sin(d)+b*Math.cos(d);return{x:f*c+e.x,y:g*c+e.y}},e=function(a,b,c,e){for(var f=[],g=0;g<a.length;g+=2){var h=a[g],i=a[g+1];f.push(d(h,i,b,c,e))}return f},f=function(a){for(var b=[],c=0;c<a.length;c++){var d=a[c];b.push(d.x,d.y)}return b},g=function(a){return a.pstyle("width").pfValue*a.pstyle("arrow-scale").pfValue*2},h=function(d,h){t(h)&&(h=a[h]),a[d]=S({name:d,points:[-.15,-.3,.15,-.3,.15,.3,-.15,.3],collide:function(a,b,c,d,g,h){return bC(a,b,f(e(this.points,c+2*h,d,g)))},roughCollide:c,draw:function(a,c,d,f){var g=e(this.points,c,d,f);b.arrowShapeImpl("polygon")(a,g)},spacing:function(a){return 0},gap:g},h)};h("none",{collide:ax,roughCollide:ax,draw:az,spacing:ay,gap:ay}),h("triangle",{points:[-.15,-.3,0,0,.15,-.3]}),h("arrow","triangle"),h("triangle-backcurve",{points:a.triangle.points,controlPoint:[0,-.15],roughCollide:c,draw:function(a,c,f,g,h){var i=e(this.points,c,f,g),j=this.controlPoint,k=d(j[0],j[1],c,f,g);b.arrowShapeImpl(this.name)(a,i,k)},gap:function(a){return .8*g(a)}}),h("triangle-tee",{points:[0,0,.15,-.3,-.15,-.3,0,0],pointsTee:[-.15,-.4,-.15,-.5,.15,-.5,.15,-.4],collide:function(a,b,c,d,g,h,i){var j=f(e(this.points,c+2*i,d,g)),k=f(e(this.pointsTee,c+2*i,d,g));return bC(a,b,j)||bC(a,b,k)},draw:function(a,c,d,f,g){var h=e(this.points,c,d,f),i=e(this.pointsTee,c,d,f);b.arrowShapeImpl(this.name)(a,h,i)}}),h("circle-triangle",{radius:.15,pointsTr:[0,-.15,.15,-.45,-.15,-.45,0,-.15],collide:function(a,b,c,d,g,h,i){var j=Math.pow(g.x-a,2)+Math.pow(g.y-b,2)<=Math.pow((c+2*i)*this.radius,2);return bC(a,b,f(e(this.points,c+2*i,d,g)))||j},draw:function(a,c,d,f,g){var h=e(this.pointsTr,c,d,f);b.arrowShapeImpl(this.name)(a,h,f.x,f.y,this.radius*c)},spacing:function(a){return b.getArrowWidth(a.pstyle("width").pfValue,a.pstyle("arrow-scale").value)*this.radius}}),h("triangle-cross",{points:[0,0,.15,-.3,-.15,-.3,0,0],baseCrossLinePts:[-.15,-.4,-.15,-.4,.15,-.4,.15,-.4],crossLinePts:function(a,b){var c=this.baseCrossLinePts.slice(),d=b/a;return c[3]=c[3]-d,c[5]=c[5]-d,c},collide:function(a,b,c,d,g,h,i){var j=f(e(this.points,c+2*i,d,g)),k=f(e(this.crossLinePts(c,h),c+2*i,d,g));return bC(a,b,j)||bC(a,b,k)},draw:function(a,c,d,f,g){var h=e(this.points,c,d,f),i=e(this.crossLinePts(c,g),c,d,f);b.arrowShapeImpl(this.name)(a,h,i)}}),h("vee",{points:[-.15,-.3,0,0,.15,-.3,0,-.15],gap:function(a){return .525*g(a)}}),h("circle",{radius:.15,collide:function(a,b,c,d,e,f,g){return Math.pow(e.x-a,2)+Math.pow(e.y-b,2)<=Math.pow((c+2*g)*this.radius,2)},draw:function(a,c,d,e,f){b.arrowShapeImpl(this.name)(a,e.x,e.y,this.radius*c)},spacing:function(a){return b.getArrowWidth(a.pstyle("width").pfValue,a.pstyle("arrow-scale").value)*this.radius}}),h("tee",{points:[-.15,0,-.15,-.1,.15,-.1,.15,0],spacing:function(a){return 1},gap:function(a){return 1}}),h("square",{points:[-.15,0,.15,0,.15,-.3,-.15,-.3]}),h("diamond",{points:[-.15,-.15,0,-.3,.15,-.15,0,0],gap:function(a){return a.pstyle("width").pfValue*a.pstyle("arrow-scale").value}}),h("chevron",{points:[0,0,-.15,-.15,-.1,-.2,0,-.1,.1,-.2,.15,-.15],gap:function(a){return .95*a.pstyle("width").pfValue*a.pstyle("arrow-scale").value}})};var fV={};fV.projectIntoViewport=function(a,b){var c=this.cy,d=this.findContainerClientCoords(),e=d[0],f=d[1],g=d[4],h=c.pan(),i=c.zoom();return[((a-e)/g-h.x)/i,((b-f)/g-h.y)/i]},fV.findContainerClientCoords=function(){if(this.containerBB)return this.containerBB;var a=this.container,b=a.getBoundingClientRect(),c=this.cy.window().getComputedStyle(a),d=function(a){return parseFloat(c.getPropertyValue(a))},e={left:d("padding-left"),right:d("padding-right"),top:d("padding-top"),bottom:d("padding-bottom")},f={left:d("border-left-width"),right:d("border-right-width"),top:d("border-top-width"),bottom:d("border-bottom-width")},g=a.clientWidth,h=a.clientHeight,i=e.left+e.right,j=e.top+e.bottom,k=f.left+f.right,l=b.width/(g+k),n=b.left+e.left+f.left,o=b.top+e.top+f.top;return this.containerBB=[n,o,g-i,h-j,l]},fV.invalidateContainerClientCoordsCache=function(){this.containerBB=null},fV.findNearestElement=function(a,b,c,d){return this.findNearestElements(a,b,c,d)[0]},fV.findNearestElements=function(a,b,c,d){var e,f,g=this,h=this,i=h.getCachedZSortedEles(),j=[],k=h.cy.zoom(),l=h.cy.hasCompoundNodes(),n=(d?24:8)/k,o=(d?8:2)/k,p=(d?8:2)/k,q=1/0;function r(a,b){if(a.isNode())if(f)return;else f=a,j.push(a);if(a.isEdge()&&(null==b||b<q))if(e){if(e.pstyle("z-compound-depth").value===a.pstyle("z-compound-depth").value&&e.pstyle("z-compound-depth").value===a.pstyle("z-compound-depth").value){for(var c=0;c<j.length;c++)if(j[c].isEdge()){j[c]=a,e=a,q=null!=b?b:q;break}}}else j.push(a),e=a,q=null!=b?b:q}function s(c){var d=c.outerWidth()+2*o,e=c.outerHeight()+2*o,f=d/2,i=e/2,j=c.position(),k="auto"===c.pstyle("corner-radius").value?"auto":c.pstyle("corner-radius").pfValue,l=c._private.rscratch;if(j.x-f<=a&&a<=j.x+f&&j.y-i<=b&&b<=j.y+i&&h.nodeShapes[g.getNodeShape(c)].checkPoint(a,b,0,d,e,j.x,j.y,k,l))return r(c,0),!0}c&&(i=i.interactive);function t(c,d){var e,f=c._private;e=d?d+"-":"",c.boundingBox();var g=f.labelBounds[d||"main"],h=c.pstyle(e+"label").value;if("yes"===c.pstyle("text-events").strValue&&h){var i=aL(f.rscratch,"labelX",d),j=aL(f.rscratch,"labelY",d),k=aL(f.rscratch,"labelAngle",d),l=c.pstyle(e+"text-margin-x").pfValue,n=c.pstyle(e+"text-margin-y").pfValue,o=g.x1-p-l,q=g.x2+p-l,s=g.y1-p-n,t=g.y2+p-n;if(k){var u=Math.cos(k),v=Math.sin(k),w=function(a,b){return{x:(a-=i)*u-(b-=j)*v+i,y:a*v+b*u+j}},x=w(o,s),y=w(o,t),z=w(q,s),A=w(q,t);if(bC(a,b,[x.x+l,x.y+n,z.x+l,z.y+n,A.x+l,A.y+n,y.x+l,y.y+n]))return r(c),!0}else if(br(g,a,b))return r(c),!0}}for(var u=i.length-1;u>=0;u--){var v=i[u];v.isNode()?s(v)||t(v):function(c){var d,e=c._private,f=e.rscratch,i=c.pstyle("width").pfValue,k=c.pstyle("arrow-scale").value,o=i/2+n,p=o*o,q=2*o,t=e.source,u=e.target;if("segments"===f.edgeType||"straight"===f.edgeType||"haystack"===f.edgeType){for(var v=f.allpts,w=0;w+3<v.length;w+=2)if(bw(a,b,v[w],v[w+1],v[w+2],v[w+3],q)&&p>(d=bB(a,b,v[w],v[w+1],v[w+2],v[w+3])))return r(c,d),!0}else if("bezier"===f.edgeType||"multibezier"===f.edgeType||"self"===f.edgeType||"compound"===f.edgeType){for(var v=f.allpts,w=0;w+5<f.allpts.length;w+=4)if(bx(a,b,v[w],v[w+1],v[w+2],v[w+3],v[w+4],v[w+5],q)&&p>(d=bA(a,b,v[w],v[w+1],v[w+2],v[w+3],v[w+4],v[w+5])))return r(c,d),!0}for(var t=t||e.source,u=u||e.target,x=g.getArrowWidth(i,k),y=[{name:"source",x:f.arrowStartX,y:f.arrowStartY,angle:f.srcArrowAngle},{name:"target",x:f.arrowEndX,y:f.arrowEndY,angle:f.tgtArrowAngle},{name:"mid-source",x:f.midX,y:f.midY,angle:f.midsrcArrowAngle},{name:"mid-target",x:f.midX,y:f.midY,angle:f.midtgtArrowAngle}],w=0;w<y.length;w++){var z=y[w],A=h.arrowShapes[c.pstyle(z.name+"-arrow-shape").value],B=c.pstyle("width").pfValue;if(A.roughCollide(a,b,x,z.angle,{x:z.x,y:z.y},B,n)&&A.collide(a,b,x,z.angle,{x:z.x,y:z.y},B,n))return r(c),!0}l&&j.length>0&&(s(t),s(u))}(v)||t(v)||t(v,"source")||t(v,"target")}return j},fV.getAllInBox=function(a,b,c,d){var e=this.getCachedZSortedEles().interactive,f=2/this.cy.zoom(),g=[],h=Math.min(a,c),j=Math.max(a,c),k=Math.min(b,d),l=Math.max(b,d);a=h,c=j;var n=bj({x1:a,y1:b=k,x2:c,y2:d=l}),o=[{x:n.x1,y:n.y1},{x:n.x2,y:n.y1},{x:n.x2,y:n.y2},{x:n.x1,y:n.y2}],p=[[o[0],o[1]],[o[1],o[2]],[o[2],o[3]],[o[3],o[0]]];function q(a,b){var c=a._private;a.boundingBox();var d=c.labelBounds.main;if(!d)return null;var e=aL(c.rscratch,"labelX",b),g=aL(c.rscratch,"labelY",b),h=aL(c.rscratch,"labelAngle",b),i=a.pstyle("text-margin-x").pfValue,j=a.pstyle("text-margin-y").pfValue,k=d.x1-f-i,l=d.x2+f-i,n=d.y1-f-j,o=d.y2+f-j;if(!h)return[{x:k,y:n},{x:l,y:n},{x:l,y:o},{x:k,y:o}];var p=Math.cos(h),q=Math.sin(h),r=function(a,b){return{x:(a-=e)*p-(b-=g)*q+e,y:a*q+b*p+g}};return[r(k,n),r(l,n),r(l,o),r(k,o)]}for(var r=0;r<e.length;r++){var s=e[r];if(s.isNode()){var t="yes"===s.pstyle("text-events").strValue,u=s.pstyle("box-selection").strValue,v="yes"===s.pstyle("box-select-labels").strValue;if("none"===u)continue;var w=("overlap"===u||v)&&t,x=s.boundingBox({includeNodes:!0,includeEdges:!1,includeLabels:w});if("contain"===u){var y=!1;if(v&&t){var z=q(s);z&&bX(z,o)&&(g.push(s),y=!0)}!y&&bt(n,x)&&g.push(s)}else if("overlap"===u&&bq(n,x)){var A=s.boundingBox({includeNodes:!0,includeEdges:!0,includeLabels:!1,includeMainLabels:!1,includeSourceLabels:!1,includeTargetLabels:!1});if(bX([{x:A.x1,y:A.y1},{x:A.x2,y:A.y1},{x:A.x2,y:A.y2},{x:A.x1,y:A.y2}],o))g.push(s);else{var B=q(s);B&&bX(B,o)&&g.push(s)}}}else{var C=s._private,D=C.rscratch,E=s.pstyle("box-selection").strValue;if("none"===E)continue;if("contain"===E){if(null!=D.startX&&null!=D.startY&&!br(n,D.startX,D.startY)||null!=D.endX&&null!=D.endY&&!br(n,D.endX,D.endY))continue;if("bezier"===D.edgeType||"multibezier"===D.edgeType||"self"===D.edgeType||"compound"===D.edgeType||"segments"===D.edgeType||"haystack"===D.edgeType){for(var F=C.rstyle.bezierPts||C.rstyle.linePts||C.rstyle.haystackPts,G=!0,H=0;H<F.length;H++)if(!bs(n,F[H])){G=!1;break}G&&g.push(s)}else"straight"===D.edgeType&&g.push(s)}else if("overlap"===E){var I=!1;if(null!=D.startX&&null!=D.startY&&null!=D.endX&&null!=D.endY&&(br(n,D.startX,D.startY)||br(n,D.endX,D.endY)))g.push(s),I=!0;else if(!I&&"haystack"===D.edgeType){for(var J=C.rstyle.haystackPts,K=0;K<J.length;K++)if(bs(n,J[K])){g.push(s),I=!0;break}}if(!I){var L=C.rstyle.bezierPts||C.rstyle.linePts||C.rstyle.haystackPts;if((!L||L.length<2)&&"straight"===D.edgeType&&null!=D.startX&&null!=D.startY&&null!=D.endX&&null!=D.endY&&(L=[{x:D.startX,y:D.startY},{x:D.endX,y:D.endY}]),!L||L.length<2)continue;for(var M=0;M<L.length-1;M++){for(var N=L[M],O=L[M+1],P=0;P<p.length;P++){var Q=i(p[P],2);if(function(a,b,c,d){function e(a,b,c){return(c.y-a.y)*(b.x-a.x)>(b.y-a.y)*(c.x-a.x)}return e(a,c,d)!==e(b,c,d)&&e(a,b,c)!==e(a,b,d)}(N,O,Q[0],Q[1])){g.push(s),I=!0;break}}if(I)break}}}}}return g};var fW={};fW.calculateArrowAngles=function(a){var b=a._private.rscratch,c="haystack"===b.edgeType,d="bezier"===b.edgeType,e="multibezier"===b.edgeType,f="segments"===b.edgeType,g="compound"===b.edgeType,h="self"===b.edgeType;if(c?(s=b.haystackPts[0],t=b.haystackPts[1],u=b.haystackPts[2],v=b.haystackPts[3]):(s=b.arrowStartX,t=b.arrowStartY,u=b.arrowEndX,v=b.arrowEndY),l=b.midX,n=b.midY,f)q=s-b.segpts[0],r=t-b.segpts[1];else if(e||g||h||d){var i=b.allpts,j=bf(i[0],i[2],i[4],.1),k=bf(i[1],i[3],i[5],.1);q=s-j,r=t-k}else q=s-l,r=t-n;b.srcArrowAngle=a9(q,r);var l=b.midX,n=b.midY;if(c&&(l=(s+u)/2,n=(t+v)/2),q=u-s,r=v-t,f){var i=b.allpts;if(i.length/2%2==0){var o=i.length/2,p=o-2;q=i[o]-i[p],r=i[o+1]-i[p+1]}else if(b.isRound)q=b.midVector[1],r=-b.midVector[0];else{var o=i.length/2-1,p=o-2;q=i[o]-i[p],r=i[o+1]-i[p+1]}}else if(e||g||h){var q,r,s,t,u,v,l,n,w,x,y,z,i=b.allpts;if(b.ctrlpts.length/2%2==0){var A=i.length/2-1,B=A+2,C=B+2;w=bf(i[A],i[B],i[C],0),x=bf(i[A+1],i[B+1],i[C+1],0),y=bf(i[A],i[B],i[C],1e-4),z=bf(i[A+1],i[B+1],i[C+1],1e-4)}else{var B=i.length/2-1,A=B-2,C=B+2;w=bf(i[A],i[B],i[C],.4999),x=bf(i[A+1],i[B+1],i[C+1],.4999),y=bf(i[A],i[B],i[C],.5),z=bf(i[A+1],i[B+1],i[C+1],.5)}q=y-w,r=z-x}if(b.midtgtArrowAngle=a9(q,r),b.midDispX=q,b.midDispY=r,q*=-1,r*=-1,f){var i=b.allpts;if(i.length/2%2==0);else if(!b.isRound){var o=i.length/2-1,D=o+2;q=-(i[D]-i[o]),r=-(i[D+1]-i[o+1])}}if(b.midsrcArrowAngle=a9(q,r),f)q=u-b.segpts[b.segpts.length-2],r=v-b.segpts[b.segpts.length-1];else if(e||g||h||d){var i=b.allpts,E=i.length,j=bf(i[E-6],i[E-4],i[E-2],.9),k=bf(i[E-5],i[E-3],i[E-1],.9);q=u-j,r=v-k}else q=u-l,r=v-n;b.tgtArrowAngle=a9(q,r)},fW.getArrowWidth=fW.getArrowHeight=function(a,b){var c=this.arrowWidthCache=this.arrowWidthCache||{},d=c[a+", "+b];return d||(d=Math.max(Math.pow(13.37*a,.9),29)*b,c[a+", "+b]=d),d};var fX,fY,fZ,f$,f_,f0,f1,f2,f3,f4,f5,f6,f7,f8,f9,ga,gb,gc,gd,ge,gf,gg,gh,gi,gj,gk,gl,gm,gn,go,gp,gq,gr,gs,gt,gu,gv,gw,gx,gy,gz,gA,gB,gC,gD,gE,gF,gG,gH,gI,gJ,gK,gL,gM,gN,gO,gP,gQ,gR,gS,gT,gU,gV,gW,gX,gY,gZ,g$,g_,g0,g1,g2,g3,g4,g5,g6,g7,g8,g9,ha,hb,hc,hd,he,hf,hg,hh,hi,hj,hk,hl,hm,hn,ho,hp,hq,hr,hs,ht,hu,hv,hw,hx,hy,hz,hA,hB,hC,hD,hE,hF,hG,hH,hI,hJ,hK,hL,hM,hN,hO,hP,hQ,hR,hS,hT,hU,hV,hW,hX,hY,hZ,h$,h_,h0,h1,h2,h3,h4,h5,h6,h7,h8,h9,ia,ib,ic,id,ie,ig,ih,ii,ij,ik,il,im,io,ip,iq,ir,is,it,iu,iv,iw,ix,iy,iz={},iA={},iB=function(a,b,c){c.x=b.x-a.x,c.y=b.y-a.y,c.len=Math.sqrt(c.x*c.x+c.y*c.y),c.nx=c.x/c.len,c.ny=c.y/c.len,c.ang=Math.atan2(c.ny,c.nx)},iC=function(a,b){b.x=-1*a.x,b.y=-1*a.y,b.nx=-1*a.nx,b.ny=-1*a.ny,b.ang=a.ang>0?-(Math.PI-a.ang):Math.PI+a.ang},iD=function(a,b,c,d,e){if(a!==f_?iB(b,a,iz):iC(iA,iz),iB(b,c,iA),ip=iz.nx*iA.ny-iz.ny*iA.nx,iq=iz.nx*iA.nx- -(iz.ny*iA.ny),1e-6>Math.abs(it=Math.asin(Math.max(-1,Math.min(1,ip))))){im=b.x,io=b.y,iv=ix=0;return}ir=1,is=!1,iq<0?it<0?it=Math.PI+it:(it=Math.PI-it,ir=-1,is=!0):it>0&&(ir=-1,is=!0),ix=void 0!==b.radius?b.radius:d,iu=it/2,iy=Math.min(iz.len/2,iA.len/2),iv=e?(iw=Math.abs(Math.cos(iu)*ix/Math.sin(iu)))>iy?Math.abs((iw=iy)*Math.sin(iu)/Math.cos(iu)):ix:Math.abs((iw=Math.min(iy,ix))*Math.sin(iu)/Math.cos(iu)),fZ=b.x+iA.nx*iw,f$=b.y+iA.ny*iw,im=fZ-iA.ny*iv*ir,io=f$+iA.nx*iv*ir,fX=b.x+iz.nx*iw,fY=b.y+iz.ny*iw,f_=b};function iE(a,b){0===b.radius?a.lineTo(b.cx,b.cy):a.arc(b.cx,b.cy,b.radius,b.startAngle,b.endAngle,b.counterClockwise)}function iF(a,b,c,d){var e=!(arguments.length>4)||void 0===arguments[4]||arguments[4];return 0===d||0===b.radius?{cx:b.x,cy:b.y,radius:0,startX:b.x,startY:b.y,stopX:b.x,stopY:b.y,startAngle:void 0,endAngle:void 0,counterClockwise:void 0}:(iD(a,b,c,d,e),{cx:im,cy:io,radius:iv,startX:fX,startY:fY,stopX:fZ,stopY:f$,startAngle:iz.ang+Math.PI/2*ir,endAngle:iA.ang-Math.PI/2*ir,counterClockwise:is})}var iG=Math.sqrt(.02),iH={};function iI(a){var b=[];if(null!=a){for(var c=0;c<a.length;c+=2){var d=a[c],e=a[c+1];b.push({x:d,y:e})}return b}}iH.findMidptPtsEtc=function(a,b){var c,d=b.posPts,e=b.intersectionPts,f=b.vectorNormInverse,g=a.pstyle("source-endpoint"),h=a.pstyle("target-endpoint"),j=null!=g.units&&null!=h.units;switch(a.pstyle("edge-distances").value){case"node-position":c=d;break;case"intersection":c=e;break;case"endpoints":if(j){var k,l,n,o=i(this.manualEndptToPx(a.source()[0],g),2),p=o[0],q=o[1],r=i(this.manualEndptToPx(a.target()[0],h),2),s=r[0],t=r[1];k=t-q,n=Math.sqrt((l=s-p)*l+k*k),f={x:-k/n,y:l/n},c={x1:p,y1:q,x2:s,y2:t}}else aC("Edge ".concat(a.id()," has edge-distances:endpoints specified without manual endpoints specified via source-endpoint and target-endpoint. Falling back on edge-distances:intersection (default).")),c=e}return{midptPts:c,vectorNormInverse:f}},iH.findHaystackPoints=function(a){for(var b=0;b<a.length;b++){var c=a[b],d=c._private,e=d.rscratch;if(!e.haystack){var f=2*Math.random()*Math.PI;e.source={x:Math.cos(f),y:Math.sin(f)},e.target={x:Math.cos(f=2*Math.random()*Math.PI),y:Math.sin(f)}}var g=d.source,h=d.target,i=g.position(),j=h.position(),k=g.width(),l=h.width(),n=g.height(),o=h.height(),p=c.pstyle("haystack-radius").value/2;e.haystackPts=e.allpts=[e.source.x*k*p+i.x,e.source.y*n*p+i.y,e.target.x*l*p+j.x,e.target.y*o*p+j.y],e.midX=(e.allpts[0]+e.allpts[2])/2,e.midY=(e.allpts[1]+e.allpts[3])/2,e.edgeType="haystack",e.haystack=!0,this.storeEdgeProjections(c),this.calculateArrowAngles(c),this.recalculateEdgeLabelProjections(c),this.calculateLabelAngles(c)}},iH.findSegmentsPoints=function(a,b){var c=a._private.rscratch,d=a.pstyle("segment-weights"),e=a.pstyle("segment-distances"),f=a.pstyle("segment-radii"),g=a.pstyle("radius-type"),h=Math.min(d.pfValue.length,e.pfValue.length),i=f.pfValue[f.pfValue.length-1],j=g.pfValue[g.pfValue.length-1];c.edgeType="segments",c.segpts=[],c.radii=[],c.isArcRadius=[];for(var k=0;k<h;k++){var l=d.pfValue[k],n=e.pfValue[k],o=1-l,p=this.findMidptPtsEtc(a,b),q=p.midptPts,r=p.vectorNormInverse,s={x:q.x1*o+q.x2*l,y:q.y1*o+q.y2*l};c.segpts.push(s.x+r.x*n,s.y+r.y*n),c.radii.push(void 0!==f.pfValue[k]?f.pfValue[k]:i),c.isArcRadius.push((void 0!==g.pfValue[k]?g.pfValue[k]:j)==="arc-radius")}},iH.findLoopPoints=function(a,b,c,d){var e=a._private.rscratch,f=b.dirCounts,g=b.srcPos,h=a.pstyle("control-point-distances"),i=h?h.pfValue[0]:void 0,j=a.pstyle("loop-direction").pfValue,k=a.pstyle("loop-sweep").pfValue,l=a.pstyle("control-point-step-size").pfValue;e.edgeType="self";var n=c,o=l;d&&(n=0,o=i);var p=j-Math.PI/2,q=p-k/2,r=p+k/2,s=String(j+"_"+k);n=void 0===f[s]?f[s]=0:++f[s],e.ctrlpts=[g.x+1.4*Math.cos(q)*o*(n/3+1),g.y+1.4*Math.sin(q)*o*(n/3+1),g.x+1.4*Math.cos(r)*o*(n/3+1),g.y+1.4*Math.sin(r)*o*(n/3+1)]},iH.findCompoundLoopPoints=function(a,b,c,d){var e=a._private.rscratch;e.edgeType="compound";var f=b.srcPos,g=b.tgtPos,h=b.srcW,i=b.srcH,j=b.tgtW,k=b.tgtH,l=a.pstyle("control-point-step-size").pfValue,n=a.pstyle("control-point-distances"),o=n?n.pfValue[0]:void 0,p=c,q=l;d&&(p=0,q=o);var r={x:f.x-h/2,y:f.y-i/2},s={x:g.x-j/2,y:g.y-k/2},t={x:Math.min(r.x,s.x),y:Math.min(r.y,s.y)},u=Math.max(.5,Math.log(.01*h)),v=Math.max(.5,Math.log(.01*j));e.ctrlpts=[t.x,t.y-1.7995514309304248*q*(p/3+1)*u,t.x-1.7995514309304248*q*(p/3+1)*v,t.y]},iH.findStraightEdgePoints=function(a){a._private.rscratch.edgeType="straight"},iH.findBezierPoints=function(a,b,c,d,e){var f=a._private.rscratch,g=a.pstyle("control-point-step-size").pfValue,h=a.pstyle("control-point-distances"),i=a.pstyle("control-point-weights"),j=h&&i?Math.min(h.value.length,i.value.length):1,k=h?h.pfValue[0]:void 0,l=i.value[0];f.edgeType=d?"multibezier":"bezier",f.ctrlpts=[];for(var n=0;n<j;n++){var o=(.5-b.eles.length/2+c)*g*(e?-1:1),p=void 0,q=bb(o);d&&(k=h?h.pfValue[n]:g,l=i.value[n]);var r=void 0!==(p=d?k:void 0!==k?q*k:void 0)?p:o,s=1-l,t=l,u=this.findMidptPtsEtc(a,b),v=u.midptPts,w=u.vectorNormInverse,x={x:v.x1*s+v.x2*t,y:v.y1*s+v.y2*t};f.ctrlpts.push(x.x+w.x*r,x.y+w.y*r)}},iH.findTaxiPoints=function(a,b){var c,d=a._private.rscratch;d.edgeType="segments";var e="vertical",f="horizontal",g="leftward",h="rightward",i="downward",j="upward",k=b.posPts,l=b.srcW,n=b.srcH,o=b.tgtW,p=b.tgtH,q="node-position"!==a.pstyle("edge-distances").value,r=a.pstyle("taxi-direction").value,s=r,t=a.pstyle("taxi-turn"),u="%"===t.units,v=t.pfValue,w=a.pstyle("taxi-turn-min-distance").pfValue,x=k.x2-k.x1,y=k.y2-k.y1,z=function(a,b){return a>0?Math.max(a-b,0):Math.min(a+b,0)},A=z(x,q?(l+o)/2:0),B=z(y,q?(n+p)/2:0),C=!1;"auto"===s?r=Math.abs(A)>Math.abs(B)?f:e:s===j||s===i?(r=e,C=!0):(s===g||s===h)&&(r=f,C=!0);var D=r===e,E=D?B:A,F=D?y:x,G=bb(F),H=!1;!(C&&(u||v<0))&&(s===i&&F<0||s===j&&F>0||s===g&&F>0||s===h&&F<0)&&(G*=-1,E=G*Math.abs(E),H=!0);var I=function(a){return Math.abs(a)<w||Math.abs(a)>=Math.abs(E)},J=I(c=u?(v<0?1+v:v)*E:(v<0?E:0)+v*G),K=I(Math.abs(E)-Math.abs(c));if((J||K)&&!H)if(D){var L=Math.abs(x)<=o/2;if(Math.abs(F)<=n/2){var M=(k.x1+k.x2)/2;d.segpts=[M,k.y1,M,k.y2]}else if(L){var N=(k.y1+k.y2)/2;d.segpts=[k.x1,N,k.x2,N]}else d.segpts=[k.x1,k.y2]}else{var O=Math.abs(y)<=p/2;if(Math.abs(F)<=l/2){var P=(k.y1+k.y2)/2;d.segpts=[k.x1,P,k.x2,P]}else if(O){var Q=(k.x1+k.x2)/2;d.segpts=[Q,k.y1,Q,k.y2]}else d.segpts=[k.x2,k.y1]}else if(D){var R=k.y1+c+(q?n/2*G:0);d.segpts=[k.x1,R,k.x2,R]}else{var S=k.x1+c+(q?l/2*G:0);d.segpts=[S,k.y1,S,k.y2]}if(d.isRound){var T=a.pstyle("taxi-radius").value,U="arc-radius"===a.pstyle("radius-type").value[0];d.radii=Array(d.segpts.length/2).fill(T),d.isArcRadius=Array(d.segpts.length/2).fill(U)}},iH.tryToCorrectInvalidPoints=function(a,b){var c=a._private.rscratch;if("bezier"===c.edgeType){var d=b.srcPos,e=b.tgtPos,f=b.srcW,g=b.srcH,h=b.tgtW,i=b.tgtH,j=b.srcShape,k=b.tgtShape,l=b.srcCornerRadius,n=b.tgtCornerRadius,o=b.srcRs,p=b.tgtRs,q=!x(c.startX)||!x(c.startY),r=!x(c.arrowStartX)||!x(c.arrowStartY),s=!x(c.endX)||!x(c.endY),t=!x(c.arrowEndX)||!x(c.arrowEndY),u=3*(this.getArrowWidth(a.pstyle("width").pfValue,a.pstyle("arrow-scale").value)*this.arrowShapeWidth),v=bc({x:c.ctrlpts[0],y:c.ctrlpts[1]},{x:c.startX,y:c.startY}),w=v<u,y=bc({x:c.ctrlpts[0],y:c.ctrlpts[1]},{x:c.endX,y:c.endY}),z=y<u,A=!1;if(q||r||w){A=!0;var B={x:c.ctrlpts[0]-d.x,y:c.ctrlpts[1]-d.y},C=Math.sqrt(B.x*B.x+B.y*B.y),D={x:B.x/C,y:B.y/C},E=Math.max(f,g),F={x:c.ctrlpts[0]+2*D.x*E,y:c.ctrlpts[1]+2*D.y*E},G=j.intersectLine(d.x,d.y,f,g,F.x,F.y,0,l,o);w?(c.ctrlpts[0]=c.ctrlpts[0]+D.x*(u-v),c.ctrlpts[1]=c.ctrlpts[1]+D.y*(u-v)):(c.ctrlpts[0]=G[0]+D.x*u,c.ctrlpts[1]=G[1]+D.y*u)}if(s||t||z){A=!0;var H={x:c.ctrlpts[0]-e.x,y:c.ctrlpts[1]-e.y},I=Math.sqrt(H.x*H.x+H.y*H.y),J={x:H.x/I,y:H.y/I},K=Math.max(f,g),L={x:c.ctrlpts[0]+2*J.x*K,y:c.ctrlpts[1]+2*J.y*K},M=k.intersectLine(e.x,e.y,h,i,L.x,L.y,0,n,p);z?(c.ctrlpts[0]=c.ctrlpts[0]+J.x*(u-y),c.ctrlpts[1]=c.ctrlpts[1]+J.y*(u-y)):(c.ctrlpts[0]=M[0]+J.x*u,c.ctrlpts[1]=M[1]+J.y*u)}A&&this.findEndpoints(a)}},iH.storeAllpts=function(a){var b=a._private.rscratch;if("multibezier"===b.edgeType||"bezier"===b.edgeType||"self"===b.edgeType||"compound"===b.edgeType){b.allpts=[],b.allpts.push(b.startX,b.startY);for(var c,d=0;d+1<b.ctrlpts.length;d+=2)b.allpts.push(b.ctrlpts[d],b.ctrlpts[d+1]),d+3<b.ctrlpts.length&&b.allpts.push((b.ctrlpts[d]+b.ctrlpts[d+2])/2,(b.ctrlpts[d+1]+b.ctrlpts[d+3])/2);(b.allpts.push(b.endX,b.endY),b.ctrlpts.length/2%2==0)?(c=b.allpts.length/2-1,b.midX=b.allpts[c],b.midY=b.allpts[c+1]):(c=b.allpts.length/2-3,b.midX=bf(b.allpts[c],b.allpts[c+2],b.allpts[c+4],.5),b.midY=bf(b.allpts[c+1],b.allpts[c+3],b.allpts[c+5],.5))}else if("straight"===b.edgeType)b.allpts=[b.startX,b.startY,b.endX,b.endY],b.midX=(b.startX+b.endX+b.arrowStartX+b.arrowEndX)/4,b.midY=(b.startY+b.endY+b.arrowStartY+b.arrowEndY)/4;else if("segments"===b.edgeType){if(b.allpts=[],b.allpts.push(b.startX,b.startY),b.allpts.push.apply(b.allpts,b.segpts),b.allpts.push(b.endX,b.endY),b.isRound){b.roundCorners=[];for(var e=2;e+3<b.allpts.length;e+=2){var f=b.radii[e/2-1],g=b.isArcRadius[e/2-1];b.roundCorners.push(iF({x:b.allpts[e-2],y:b.allpts[e-1]},{x:b.allpts[e],y:b.allpts[e+1],radius:f},{x:b.allpts[e+2],y:b.allpts[e+3]},f,g))}}if(b.segpts.length%4==0){var h=b.segpts.length/2,i=h-2;b.midX=(b.segpts[i]+b.segpts[h])/2,b.midY=(b.segpts[i+1]+b.segpts[h+1])/2}else{var j=b.segpts.length/2-1;if(b.isRound){var k={x:b.segpts[j],y:b.segpts[j+1]},l=b.roundCorners[j/2];if(0===l.radius){var n={x:b.segpts[j+2],y:b.segpts[j+3]};b.midX=k.x,b.midY=k.y,b.midVector=[k.y-n.y,n.x-k.x]}else{var o=[k.x-l.cx,k.y-l.cy],p=l.radius/Math.sqrt(Math.pow(o[0],2)+Math.pow(o[1],2));o=o.map(function(a){return a*p}),b.midX=l.cx+o[0],b.midY=l.cy+o[1],b.midVector=o}}else b.midX=b.segpts[j],b.midY=b.segpts[j+1]}}},iH.checkForInvalidEdgeWarning=function(a){var b=a[0]._private.rscratch;b.nodesOverlap||x(b.startX)&&x(b.startY)&&x(b.endX)&&x(b.endY)?b.loggedErr=!1:b.loggedErr||(b.loggedErr=!0,aC("Edge `"+a.id()+"` has invalid endpoints and so it is impossible to draw. Adjust your edge style (e.g. control points) accordingly or use an alternative edge type. This is expected behaviour when the source node and the target node overlap."))},iH.findEdgeControlPoints=function(a){var b=this;if(a&&0!==a.length){for(var c=this,d=c.cy.hasCompoundNodes(),e=new aO,f=function(a,b){return[].concat(j(a),[+!!b]).join("-")},g=[],h=[],i=0;i<a.length;i++){var k=a[i],l=k._private,n=k.pstyle("curve-style").value;if(!k.removed()&&k.takesUpSpace()){if("haystack"===n){h.push(k);continue}var o="unbundled-bezier"===n||L(n,"segments")||"straight"===n||"straight-triangle"===n||L(n,"taxi"),p="unbundled-bezier"===n||"bezier"===n,q=l.source,r=l.target,s=[q.poolIndex(),r.poolIndex()].sort(),t=f(s,o),u=e.get(t);null==u&&(u={eles:[]},g.push({pairId:s,edgeIsUnbundled:o}),e.set(t,u)),u.eles.push(k),o&&(u.hasUnbundled=!0),p&&(u.hasBezier=!0)}}for(var v=0;v<g.length;v++)!function(){var a,h=g[v],i=f(h.pairId,h.edgeIsUnbundled),j=e.get(i);if(!j.hasUnbundled){var k=j.eles[0].parallelEdges().filter(function(a){return a.isBundledBezier()});aJ(j.eles),k.forEach(function(a){return j.eles.push(a)}),j.eles.sort(function(a,b){return a.poolIndex()-b.poolIndex()})}var l=j.eles[0],n=l.source(),o=l.target();if(n.poolIndex()>o.poolIndex()){var p=n;n=o,o=p}var q=j.srcPos=n.position(),r=j.tgtPos=o.position(),s=j.srcW=n.outerWidth(),t=j.srcH=n.outerHeight(),u=j.tgtW=o.outerWidth(),w=j.tgtH=o.outerHeight(),y=j.srcShape=c.nodeShapes[b.getNodeShape(n)],z=j.tgtShape=c.nodeShapes[b.getNodeShape(o)],A=j.srcCornerRadius="auto"===n.pstyle("corner-radius").value?"auto":n.pstyle("corner-radius").pfValue,B=j.tgtCornerRadius="auto"===o.pstyle("corner-radius").value?"auto":o.pstyle("corner-radius").pfValue,C=j.tgtRs=o._private.rscratch,D=j.srcRs=n._private.rscratch;j.dirCounts={north:0,west:0,south:0,east:0,northwest:0,southwest:0,northeast:0,southeast:0};for(var E=0;E<j.eles.length;E++){var F=j.eles[E],G=F[0]._private.rscratch,H=F.pstyle("curve-style").value,I="unbundled-bezier"===H||L(H,"segments")||L(H,"taxi"),J=!n.same(F.source());if(!j.calculatedIntersection&&n!==o&&(j.hasBezier||j.hasUnbundled)){j.calculatedIntersection=!0;var K=y.intersectLine(q.x,q.y,s,t,r.x,r.y,0,A,D),M=j.srcIntn=K,N=z.intersectLine(r.x,r.y,u,w,q.x,q.y,0,B,C),O=j.tgtIntn=N,P=j.intersectionPts={x1:K[0],x2:N[0],y1:K[1],y2:N[1]},Q=j.posPts={x1:q.x,x2:r.x,y1:q.y,y2:r.y},R=N[1]-K[1],S=N[0]-K[0],T=Math.sqrt(S*S+R*R);x(T)&&T>=iG||(T=Math.sqrt(Math.max(S*S,.01)+Math.max(R*R,.01)));var U=j.vector={x:S,y:R},V=j.vectorNorm={x:U.x/T,y:U.y/T},W={x:-V.y,y:V.x};j.nodesOverlap=!x(T)||z.checkPoint(K[0],K[1],0,u,w,r.x,r.y,B,C)||y.checkPoint(N[0],N[1],0,s,t,q.x,q.y,A,D),j.vectorNormInverse=W,a={nodesOverlap:j.nodesOverlap,dirCounts:j.dirCounts,calculatedIntersection:!0,hasBezier:j.hasBezier,hasUnbundled:j.hasUnbundled,eles:j.eles,srcPos:r,srcRs:C,tgtPos:q,tgtRs:D,srcW:u,srcH:w,tgtW:s,tgtH:t,srcIntn:O,tgtIntn:M,srcShape:z,tgtShape:y,posPts:{x1:Q.x2,y1:Q.y2,x2:Q.x1,y2:Q.y1},intersectionPts:{x1:P.x2,y1:P.y2,x2:P.x1,y2:P.y1},vector:{x:-U.x,y:-U.y},vectorNorm:{x:-V.x,y:-V.y},vectorNormInverse:{x:-W.x,y:-W.y}}}var X=J?a:j;G.nodesOverlap=X.nodesOverlap,G.srcIntn=X.srcIntn,G.tgtIntn=X.tgtIntn,G.isRound=H.startsWith("round"),d&&(n.isParent()||n.isChild()||o.isParent()||o.isChild())&&(n.parents().anySame(o)||o.parents().anySame(n)||n.same(o)&&n.isParent())?b.findCompoundLoopPoints(F,X,E,I):n===o?b.findLoopPoints(F,X,E,I):H.endsWith("segments")?b.findSegmentsPoints(F,X):H.endsWith("taxi")?b.findTaxiPoints(F,X):"straight"!==H&&(I||j.eles.length%2!=1||E!==Math.floor(j.eles.length/2))?b.findBezierPoints(F,X,E,I,J):b.findStraightEdgePoints(F),b.findEndpoints(F),b.tryToCorrectInvalidPoints(F,X),b.checkForInvalidEdgeWarning(F),b.storeAllpts(F),b.storeEdgeProjections(F),b.calculateArrowAngles(F),b.recalculateEdgeLabelProjections(F),b.calculateLabelAngles(F)}}();this.findHaystackPoints(h)}},iH.getSegmentPoints=function(a){var b=a[0]._private.rscratch;if(this.recalculateRenderedStyle(a),"segments"===b.edgeType)return iI(b.segpts)},iH.getControlPoints=function(a){var b=a[0]._private.rscratch;this.recalculateRenderedStyle(a);var c=b.edgeType;if("bezier"===c||"multibezier"===c||"self"===c||"compound"===c)return iI(b.ctrlpts)},iH.getEdgeMidpoint=function(a){var b=a[0]._private.rscratch;return this.recalculateRenderedStyle(a),{x:b.midX,y:b.midY}};var iJ={};iJ.manualEndptToPx=function(a,b){var c=a.position(),d=a.outerWidth(),e=a.outerHeight(),f=a._private.rscratch;if(2===b.value.length){var g=[b.pfValue[0],b.pfValue[1]];return"%"===b.units[0]&&(g[0]=g[0]*d),"%"===b.units[1]&&(g[1]=g[1]*e),g[0]+=c.x,g[1]+=c.y,g}var h=b.pfValue[0];h=-Math.PI/2+h;var i=2*Math.max(d,e),j=[c.x+Math.cos(h)*i,c.y+Math.sin(h)*i];return this.nodeShapes[this.getNodeShape(a)].intersectLine(c.x,c.y,d,e,j[0],j[1],0,"auto"===a.pstyle("corner-radius").value?"auto":a.pstyle("corner-radius").pfValue,f)},iJ.findEndpoints=function(a){var b,c,d,e,f,g,h,i,j,k=a.source()[0],l=a.target()[0],n=k.position(),o=l.position(),p=a.pstyle("target-arrow-shape").value,q=a.pstyle("source-arrow-shape").value,r=a.pstyle("target-distance-from-node").pfValue,s=a.pstyle("source-distance-from-node").pfValue,t=k._private.rscratch,u=l._private.rscratch,v=a.pstyle("curve-style").value,w=a._private.rscratch,y=w.edgeType,z=L(v,"taxi"),A="self"===y||"compound"===y,B="bezier"===y||"multibezier"===y||A,C="bezier"!==y,D="straight"===y||"segments"===y,E="segments"===y,F=A||z,G=a.pstyle("source-endpoint"),H=F?"outside-to-node":G.value,I="auto"===k.pstyle("corner-radius").value?"auto":k.pstyle("corner-radius").pfValue,J=a.pstyle("target-endpoint"),K=F?"outside-to-node":J.value,M="auto"===l.pstyle("corner-radius").value?"auto":l.pstyle("corner-radius").pfValue;w.srcManEndpt=G,w.tgtManEndpt=J;var N=null!=(b=(null==J||null==(c=J.pfValue)?void 0:c.length)===2?J.pfValue:null)?b:[0,0],O=null!=(d=(null==G||null==(e=G.pfValue)?void 0:e.length)===2?G.pfValue:null)?d:[0,0];if(B){var P=[w.ctrlpts[0],w.ctrlpts[1]];g=C?[w.ctrlpts[w.ctrlpts.length-2],w.ctrlpts[w.ctrlpts.length-1]]:P,h=P}else if(D){var Q=E?w.segpts.slice(0,2):[o.x+N[0],o.y+N[1]];g=E?w.segpts.slice(w.segpts.length-2):[n.x+O[0],n.y+O[1]],h=Q}if("inside-to-node"===K)f=[o.x,o.y];else if(J.units)f=this.manualEndptToPx(l,J);else if("outside-to-line"===K)f=w.tgtIntn;else if("outside-to-node"===K||"outside-to-node-or-label"===K?i=g:("outside-to-line"===K||"outside-to-line-or-label"===K)&&(i=[n.x,n.y]),f=this.nodeShapes[this.getNodeShape(l)].intersectLine(o.x,o.y,l.outerWidth(),l.outerHeight(),i[0],i[1],0,M,u),"outside-to-node-or-label"===K||"outside-to-line-or-label"===K){var R=l._private.rscratch,S=R.labelWidth,T=R.labelHeight,U=R.labelX,V=R.labelY,W=S/2,X=T/2,Y=l.pstyle("text-valign").value;"top"===Y?V-=X:"bottom"===Y&&(V+=X);var Z=l.pstyle("text-halign").value;"left"===Z?U-=W:"right"===Z&&(U+=W);var $=bN(i[0],i[1],[U-W,V-X,U+W,V-X,U+W,V+X,U-W,V+X],o.x,o.y);if($.length>0){var _=bd(n,a4(f)),aa=bd(n,a4($)),ab=_;aa<_&&(f=$,ab=aa),$.length>2&&bd(n,{x:$[2],y:$[3]})<ab&&(f=[$[2],$[3]])}}var ac=bP(f,g,this.arrowShapes[p].spacing(a)+r),ad=bP(f,g,this.arrowShapes[p].gap(a)+r);if(w.endX=ad[0],w.endY=ad[1],w.arrowEndX=ac[0],w.arrowEndY=ac[1],"inside-to-node"===H)f=[n.x,n.y];else if(G.units)f=this.manualEndptToPx(k,G);else if("outside-to-line"===H)f=w.srcIntn;else if("outside-to-node"===H||"outside-to-node-or-label"===H?j=h:("outside-to-line"===H||"outside-to-line-or-label"===H)&&(j=[o.x,o.y]),f=this.nodeShapes[this.getNodeShape(k)].intersectLine(n.x,n.y,k.outerWidth(),k.outerHeight(),j[0],j[1],0,I,t),"outside-to-node-or-label"===H||"outside-to-line-or-label"===H){var ae=k._private.rscratch,af=ae.labelWidth,ag=ae.labelHeight,ah=ae.labelX,ai=ae.labelY,aj=af/2,ak=ag/2,al=k.pstyle("text-valign").value;"top"===al?ai-=ak:"bottom"===al&&(ai+=ak);var am=k.pstyle("text-halign").value;"left"===am?ah-=aj:"right"===am&&(ah+=aj);var an=bN(j[0],j[1],[ah-aj,ai-ak,ah+aj,ai-ak,ah+aj,ai+ak,ah-aj,ai+ak],n.x,n.y);if(an.length>0){var ao=bd(o,a4(f)),ap=bd(o,a4(an)),aq=ao;ap<ao&&(f=[an[0],an[1]],aq=ap),an.length>2&&bd(o,{x:an[2],y:an[3]})<aq&&(f=[an[2],an[3]])}}var ar=bP(f,h,this.arrowShapes[q].spacing(a)+s),as=bP(f,h,this.arrowShapes[q].gap(a)+s);w.startX=as[0],w.startY=as[1],w.arrowStartX=ar[0],w.arrowStartY=ar[1],(B||C||D)&&(x(w.startX)&&x(w.startY)&&x(w.endX)&&x(w.endY)?w.badLine=!1:w.badLine=!0)},iJ.getSourceEndpoint=function(a){var b=a[0]._private.rscratch;return(this.recalculateRenderedStyle(a),"haystack"===b.edgeType)?{x:b.haystackPts[0],y:b.haystackPts[1]}:{x:b.arrowStartX,y:b.arrowStartY}},iJ.getTargetEndpoint=function(a){var b=a[0]._private.rscratch;return(this.recalculateRenderedStyle(a),"haystack"===b.edgeType)?{x:b.haystackPts[2],y:b.haystackPts[3]}:{x:b.arrowEndX,y:b.arrowEndY}};var iK={};iK.storeEdgeProjections=function(a){var b=a._private,c=b.rscratch,d=c.edgeType;if(b.rstyle.bezierPts=null,b.rstyle.linePts=null,b.rstyle.haystackPts=null,"multibezier"===d||"bezier"===d||"self"===d||"compound"===d){b.rstyle.bezierPts=[];for(var e=0;e+5<c.allpts.length;e+=4)!function(a,b,c){for(var d=function(a,b,c,d){return bf(a,b,c,d)},e=b._private.rstyle.bezierPts,f=0;f<a.bezierProjPcts.length;f++){var g=a.bezierProjPcts[f];e.push({x:d(c[0],c[2],c[4],g),y:d(c[1],c[3],c[5],g)})}}(this,a,c.allpts.slice(e,e+6))}else if("segments"===d)for(var f=b.rstyle.linePts=[],e=0;e+1<c.allpts.length;e+=2)f.push({x:c.allpts[e],y:c.allpts[e+1]});else if("haystack"===d){var g=c.haystackPts;b.rstyle.haystackPts=[{x:g[0],y:g[1]},{x:g[2],y:g[3]}]}b.rstyle.arrowWidth=this.getArrowWidth(a.pstyle("width").pfValue,a.pstyle("arrow-scale").value)*this.arrowShapeWidth},iK.recalculateEdgeProjections=function(a){this.findEdgeControlPoints(a)};var iL={};iL.recalculateNodeLabelProjection=function(a){var b,c;if(!E(a.pstyle("label").strValue)){var d=a._private,e=a.width(),f=a.height(),g=a.padding(),h=a.position(),i=a.pstyle("text-halign").strValue,j=a.pstyle("text-valign").strValue,k=d.rscratch,l=d.rstyle;switch(i){case"left":b=h.x-e/2-g;break;case"right":b=h.x+e/2+g;break;default:b=h.x}switch(j){case"top":c=h.y-f/2-g;break;case"bottom":c=h.y+f/2+g;break;default:c=h.y}k.labelX=b,k.labelY=c,l.labelX=b,l.labelY=c,this.calculateLabelAngles(a),this.applyLabelDimensions(a)}};var iM=function(a,b){var c=Math.atan(b/a);return 0===a&&c<0&&(c*=-1),c},iN=function(a,b){return iM(b.x-a.x,b.y-a.y)},iO=function(a,b,c,d){var e=bi(0,d-.001,1),f=bi(0,d+.001,1);return iN(bg(a,b,c,e),bg(a,b,c,f))};iL.recalculateEdgeLabelProjections=function(a){var b,c=a._private,d=c.rscratch,e=this,f={mid:a.pstyle("label").strValue,source:a.pstyle("source-label").strValue,target:a.pstyle("target-label").strValue};if(f.mid||f.source||f.target){b={x:d.midX,y:d.midY};var g=function(a,b,d){aM(c.rscratch,a,b,d),aM(c.rstyle,a,b,d)};g("labelX",null,b.x),g("labelY",null,b.y),g("labelAutoAngle",null,iM(d.midDispX,d.midDispY));var h=function(){if(h.cache)return h.cache;for(var a=[],b=0;b+5<d.allpts.length;b+=4){var f={x:d.allpts[b],y:d.allpts[b+1]},g={x:d.allpts[b+2],y:d.allpts[b+3]},i={x:d.allpts[b+4],y:d.allpts[b+5]};a.push({p0:f,p1:g,p2:i,startDist:0,length:0,segments:[]})}var j=c.rstyle.bezierPts,k=e.bezierProjPcts.length;function l(a,b,c,d,e){var f=bc(b,c),g=a.segments[a.segments.length-1],h={p0:b,p1:c,t0:d,t1:e,startDist:g?g.startDist+g.length:0,length:f};a.segments.push(h),a.length+=f}for(var n=0;n<a.length;n++){var o=a[n],p=a[n-1];p&&(o.startDist=p.startDist+p.length),l(o,o.p0,j[n*k],0,e.bezierProjPcts[0]);for(var q=0;q<k-1;q++)l(o,j[n*k+q],j[n*k+q+1],e.bezierProjPcts[q],e.bezierProjPcts[q+1]);l(o,j[n*k+k-1],o.p2,e.bezierProjPcts[k-1],1)}return h.cache=a},i=function(c){var e="source"===c;if(f[c]){var i=a.pstyle(c+"-text-offset").pfValue;switch(d.edgeType){case"self":case"compound":case"bezier":case"multibezier":for(var j,k,l=h(),n=0,o=0,p=0;p<l.length;p++){for(var q=l[e?p:l.length-1-p],r=0;r<q.segments.length;r++){var s=q.segments[e?r:q.segments.length-1-r],t=p===l.length-1&&r===q.segments.length-1;if(n=o,(o+=s.length)>=i||t){k={cp:q,segment:s};break}}if(k)break}var u=k.cp,v=k.segment,w=(i-n)/v.length,x=v.t1-v.t0,y=e?v.t0+x*w:v.t1-x*w;y=bi(0,y,1),b=bg(u.p0,u.p1,u.p2,y),j=iO(u.p0,u.p1,u.p2,y);break;case"straight":case"segments":case"haystack":for(var z,A,B,C,D=0,E=d.allpts.length,F=0;F+3<E&&(e?(z={x:d.allpts[F],y:d.allpts[F+1]},A={x:d.allpts[F+2],y:d.allpts[F+3]}):(z={x:d.allpts[E-2-F],y:d.allpts[E-1-F]},A={x:d.allpts[E-4-F],y:d.allpts[E-3-F]}),B=bc(z,A),C=D,!((D+=B)>=i));F+=2);var G=(i-C)/B;b=bh(z,A,G=bi(0,G,1)),j=iN(z,A)}g("labelX",c,b.x),g("labelY",c,b.y),g("labelAutoAngle",c,j)}};i("source"),i("target"),this.applyLabelDimensions(a)}},iL.applyLabelDimensions=function(a){this.applyPrefixedLabelDimensions(a),a.isEdge()&&(this.applyPrefixedLabelDimensions(a,"source"),this.applyPrefixedLabelDimensions(a,"target"))},iL.applyPrefixedLabelDimensions=function(a,b){var c=a._private,d=this.getLabelText(a,b),e=ap(d,a._private.labelDimsKey);if(aL(c.rscratch,"prefixedLabelDimsKey",b)!==e){aM(c.rscratch,"prefixedLabelDimsKey",b,e);var f=this.calculateLabelDimensions(a,d),g=a.pstyle("line-height").pfValue,h=a.pstyle("text-wrap").strValue,i=aL(c.rscratch,"labelWrapCachedLines",b)||[],j="wrap"!==h?1:Math.max(i.length,1),k=f.height/j,l=f.width,n=f.height+(j-1)*(g-1)*k;aM(c.rstyle,"labelWidth",b,l),aM(c.rscratch,"labelWidth",b,l),aM(c.rstyle,"labelHeight",b,n),aM(c.rscratch,"labelHeight",b,n),aM(c.rscratch,"labelLineHeight",b,k*g)}},iL.getLabelText=function(a,b){var c=a._private,d=b?b+"-":"",e=a.pstyle(d+"label").strValue,f=a.pstyle("text-transform").value,h=function(a,d){return d?(aM(c.rscratch,a,b,d),d):aL(c.rscratch,a,b)};if(!e)return"";"none"==f||("uppercase"==f?e=e.toUpperCase():"lowercase"==f&&(e=e.toLowerCase()));var i=a.pstyle("text-wrap").value;if("wrap"===i){var j=h("labelKey");if(null!=j&&h("labelWrapKey")===j)return h("labelWrapCachedText");for(var k=e.split("\n"),l=a.pstyle("text-max-width").pfValue,n="anywhere"===a.pstyle("text-overflow-wrap").value,o=[],p=/[\s\u200b]+|$/g,q=0;q<k.length;q++){var r=k[q],s=this.calculateLabelDimensions(a,r).width;if(n&&(r=r.split("").join("")),s>l){var t,u=r.matchAll(p),v="",w=0,x=g(u);try{for(x.s();!(t=x.n()).done;){var y=t.value,z=y[0],A=r.substring(w,y.index);w=y.index+z.length;var B=0===v.length?A:v+A+z;this.calculateLabelDimensions(a,B).width<=l?v+=A+z:(v&&o.push(v),v=A+z)}}catch(a){x.e(a)}finally{x.f()}v.match(/^[\s\u200b]+$/)||o.push(v)}else o.push(r)}h("labelWrapCachedLines",o),e=h("labelWrapCachedText",o.join("\n")),h("labelWrapKey",j)}else if("ellipsis"===i){var C=a.pstyle("text-max-width").pfValue,D="",E=!1;if(this.calculateLabelDimensions(a,e).width<C)return e;for(var F=0;F<e.length&&!(this.calculateLabelDimensions(a,D+e[F]+"…").width>C);F++)D+=e[F],F===e.length-1&&(E=!0);return E||(D+="…"),D}return e},iL.getLabelJustification=function(a){var b=a.pstyle("text-justification").strValue,c=a.pstyle("text-halign").strValue;if("auto"!==b)return b;if(!a.isNode())return"center";switch(c){case"left":return"right";case"right":return"left";default:return"center"}},iL.calculateLabelDimensions=function(a,b){var c=this.cy.window().document,d=a.pstyle("font-style").strValue,e=a.pstyle("font-size").pfValue,f=a.pstyle("font-family").strValue,g=a.pstyle("font-weight").strValue,h=this.labelCalcCanvas,i=this.labelCalcCanvasContext;if(!h){h=this.labelCalcCanvas=c.createElement("canvas"),i=this.labelCalcCanvasContext=h.getContext("2d");var j=h.style;j.position="absolute",j.left="-9999px",j.top="-9999px",j.zIndex="-1",j.visibility="hidden",j.pointerEvents="none"}i.font="".concat(d," ").concat(g," ").concat(e,"px ").concat(f);for(var k=0,l=0,n=b.split("\n"),o=0;o<n.length;o++){var p=n[o];k=Math.max(Math.ceil(i.measureText(p).width),k),l+=e}return{width:k+=0,height:l+=0}},iL.calculateLabelAngle=function(a,b){var c=a._private.rscratch,d=a.isEdge(),e=a.pstyle((b?b+"-":"")+"text-rotation"),f=e.strValue;return"none"===f?0:d&&"autorotate"===f?c.labelAutoAngle:"autorotate"===f?0:e.pfValue},iL.calculateLabelAngles=function(a){var b=a.isEdge(),c=a._private.rscratch;c.labelAngle=this.calculateLabelAngle(a),b&&(c.sourceLabelAngle=this.calculateLabelAngle(a,"source"),c.targetLabelAngle=this.calculateLabelAngle(a,"target"))};var iP={},iQ=!1;iP.getNodeShape=function(a){var b=a.pstyle("shape").value;if("cutrectangle"===b&&(28>a.width()||28>a.height()))return iQ||(aC("The `cutrectangle` node shape can not be used at small sizes so `rectangle` is used instead"),iQ=!0),"rectangle";if(a.isParent())if("rectangle"===b||"roundrectangle"===b||"round-rectangle"===b||"cutrectangle"===b||"cut-rectangle"===b||"barrel"===b)return b;else return"rectangle";if("polygon"===b){var c=a.pstyle("shape-polygon-points").value;return this.nodeShapes.makePolygon(c).name}return b};var iR={};iR.registerCalculationListeners=function(){var a=this.cy,b=a.collection(),c=this,d=function(a){var c=!(arguments.length>1)||void 0===arguments[1]||arguments[1];if(b.merge(a),c)for(var d=0;d<a.length;d++){var e=a[d]._private.rstyle;e.clean=!1,e.cleanConnected=!1}};c.binder(a).on("bounds.* dirty.*",function(a){d(a.target)}).on("style.* background.*",function(a){d(a.target,!1)});var e=function(e){if(e){var f=c.onUpdateEleCalcsFns;b.cleanStyle();for(var g=0;g<b.length;g++){var h=b[g],i=h._private.rstyle;h.isNode()&&!i.cleanConnected&&(d(h.connectedEdges()),i.cleanConnected=!0)}if(f)for(var j=0;j<f.length;j++)(0,f[j])(e,b);c.recalculateRenderedStyle(b),b=a.collection()}};c.flushRenderedStyleQueue=function(){e(!0)},c.beforeRender(e,c.beforeRenderPriorities.eleCalcs)},iR.onUpdateEleCalcs=function(a){(this.onUpdateEleCalcsFns=this.onUpdateEleCalcsFns||[]).push(a)},iR.recalculateRenderedStyle=function(a,b){var c=function(a){return a._private.rstyle.cleanConnected};if(0!==a.length){var d=[],e=[];if(!this.destroyed){void 0===b&&(b=!0);for(var f=0;f<a.length;f++){var g=a[f],h=g._private,i=h.rstyle;!g.isEdge()||c(g.source())&&c(g.target())||(i.clean=!1),g.isEdge()&&g.isBundledBezier()&&g.parallelEdges().some(function(a){return!a._private.rstyle.clean&&a.isBundledBezier()})&&(i.clean=!1),b&&i.clean||g.removed()||"none"!==g.pstyle("display").value&&("nodes"===h.group?e.push(g):d.push(g),i.clean=!0)}for(var j=0;j<e.length;j++){var k=e[j],l=k._private.rstyle,n=k.position();this.recalculateNodeLabelProjection(k),l.nodeX=n.x,l.nodeY=n.y,l.nodeW=k.pstyle("width").pfValue,l.nodeH=k.pstyle("height").pfValue}this.recalculateEdgeProjections(d);for(var o=0;o<d.length;o++){var p=d[o]._private,q=p.rstyle,r=p.rscratch;q.srcX=r.arrowStartX,q.srcY=r.arrowStartY,q.tgtX=r.arrowEndX,q.tgtY=r.arrowEndY,q.midX=r.midX,q.midY=r.midY,q.labelAngle=r.labelAngle,q.sourceLabelAngle=r.sourceLabelAngle,q.targetLabelAngle=r.targetLabelAngle}}}};var iS={};iS.updateCachedGrabbedEles=function(){var a=this.cachedZSortedEles;if(a){a.drag=[],a.nondrag=[];for(var b=[],c=0;c<a.length;c++){var d=a[c],e=d._private.rscratch;d.grabbed()&&!d.isParent()?b.push(d):e.inDragLayer?a.drag.push(d):a.nondrag.push(d)}for(var c=0;c<b.length;c++){var d=b[c];a.drag.push(d)}}},iS.invalidateCachedZSortedEles=function(){this.cachedZSortedEles=null},iS.getCachedZSortedEles=function(a){if(a||!this.cachedZSortedEles){var b=this.cy.mutableElements().toArray();b.sort(eo),b.interactive=b.filter(function(a){return a.interactive()}),this.cachedZSortedEles=b,this.updateCachedGrabbedEles()}else b=this.cachedZSortedEles;return b};var iT={};[fV,fW,iH,iJ,iK,iL,iP,iR,iS].forEach(function(a){S(iT,a)});var iU={};iU.getCachedImage=function(a,b,c){var d=this.imageCache=this.imageCache||{},e=d[a];if(e)return e.image.complete||e.image.addEventListener("load",c),e.image;var f=(e=d[a]=d[a]||{}).image=new Image;f.addEventListener("load",c),f.addEventListener("error",function(){f.error=!0});var g="data:";return a.substring(0,g.length).toLowerCase()!==g&&(f.crossOrigin=b="null"===b?null:b),f.src=a,f};var iV={};iV.registerBinding=function(a,b,c,d){var e=Array.prototype.slice.apply(arguments,[1]);if(Array.isArray(a)){for(var f=[],g=0;g<a.length;g++){var h=a[g];if(void 0!==h){var i=this.binder(h);f.push(i.on.apply(i,e))}}return f}var i=this.binder(a);return i.on.apply(i,e)},iV.binder=function(a){var b=this,c=b.cy.window(),d=a===c||a===c.document||a===c.document.body||!("u"<typeof HTMLElement)&&a instanceof HTMLElement;if(null==b.supportsPassiveEvents){var e=!1;try{var f=Object.defineProperty({},"passive",{get:function(){return e=!0,!0}});c.addEventListener("test",null,f)}catch(a){}b.supportsPassiveEvents=e}var g=function(c,e,f){var g=Array.prototype.slice.call(arguments);return d&&b.supportsPassiveEvents&&(g[2]={capture:null!=f&&f,passive:!1,once:!1}),b.bindings.push({target:a,args:g}),(a.addEventListener||a.on).apply(a,g),this};return{on:g,addEventListener:g,addListener:g,bind:g}},iV.nodeIsDraggable=function(a){return a&&a.isNode()&&!a.locked()&&a.grabbable()},iV.nodeIsGrabbable=function(a){return this.nodeIsDraggable(a)&&a.interactive()},iV.load=function(){var a,b,c,d,e,f,g,h,i,j,k,l,n,o,p,q,r,s,t,u,v,w,y,z,A,B=this,C=B.cy.window(),D=function(a){return a.selected()},E=function(a,b,c,d){null==a&&(a=B.cy);for(var e=0;e<b.length;e++){var f=b[e];a.emit({originalEvent:c,type:f,position:d})}},F=function(a){return a.shiftKey||a.metaKey||a.ctrlKey},G=function(a,b){var c=!0;if(B.cy.hasCompoundNodes()&&a&&a.pannable())for(var d=0;b&&d<b.length;d++){var a=b[d];if(a.isNode()&&a.isParent()&&!a.pannable()){c=!1;break}}else c=!0;return c},H=function(a){a[0]._private.grabbed=!0},I=function(a){a[0]._private.grabbed=!1},J=function(a){a[0]._private.rscratch.inDragLayer=!0},K=function(a){a[0]._private.rscratch.inDragLayer=!1},L=function(a){a[0]._private.rscratch.isGrabTarget=!0},M=function(a){a[0]._private.rscratch.isGrabTarget=!1},N=function(a,b){var c=b.addToList;!c.has(a)&&a.grabbable()&&!a.locked()&&(c.merge(a),H(a))},O=function(a,b){if(a.cy().hasCompoundNodes()&&(null!=b.inDragLayer||null!=b.addToList)){var c=a.descendants();b.inDragLayer&&(c.forEach(J),c.connectedEdges().forEach(J)),b.addToList&&N(c,b)}},P=function(a,b){b=b||{};var c=a.cy().hasCompoundNodes();b.inDragLayer&&(a.forEach(J),a.neighborhood().stdFilter(function(a){return!c||a.isEdge()}).forEach(J)),b.addToList&&a.forEach(function(a){N(a,b)}),O(a,b),R(a,{inDragLayer:b.inDragLayer}),B.updateCachedGrabbedEles()},Q=function(a){a&&(B.getCachedZSortedEles().forEach(function(a){I(a),K(a),M(a)}),B.updateCachedGrabbedEles())},R=function(a,b){if((null!=b.inDragLayer||null!=b.addToList)&&a.cy().hasCompoundNodes()){var c=a.ancestors().orphans();if(!c.same(a)){var d=c.descendants().spawnSelf().merge(c).unmerge(a).unmerge(a.descendants()),e=d.connectedEdges();b.inDragLayer&&(e.forEach(J),d.forEach(J)),b.addToList&&d.forEach(function(a){N(a,b)})}}},S=function(){null!=document.activeElement&&null!=document.activeElement.blur&&document.activeElement.blur()},T="u">typeof MutationObserver,U="u">typeof ResizeObserver;T?(B.removeObserver=new MutationObserver(function(a){for(var b=0;b<a.length;b++){var c=a[b].removedNodes;if(c){for(var d=0;d<c.length;d++)if(c[d]===B.container){B.destroy();break}}}}),B.container.parentNode&&B.removeObserver.observe(B.container.parentNode,{childList:!0})):B.registerBinding(B.container,"DOMNodeRemoved",function(a){B.destroy()});var V=af(function(){B.cy.resize()},100);T&&(B.styleObserver=new MutationObserver(V),B.styleObserver.observe(B.container,{attributes:!0})),B.registerBinding(C,"resize",V),U&&(B.resizeObserver=new ResizeObserver(V),B.resizeObserver.observe(B.container));for(var W=function(){B.invalidateContainerClientCoordsCache()},X=B.container;null!=X;){a=X,B.registerBinding(a,"transitionend",W),B.registerBinding(a,"animationend",W),B.registerBinding(a,"scroll",W),X=X.parentNode}B.registerBinding(B.container,"contextmenu",function(a){a.preventDefault()});var Y=function(a){for(var b=B.findContainerClientCoords(),c=b[0],d=b[1],e=b[2],f=b[3],g=a.touches?a.touches:[a],h=!1,i=0;i<g.length;i++){var j=g[i];if(c<=j.clientX&&j.clientX<=c+e&&d<=j.clientY&&j.clientY<=d+f){h=!0;break}}if(!h)return!1;for(var k=B.container,l=a.target.parentNode,n=!1;l;){if(l===k){n=!0;break}l=l.parentNode}return!!n};B.registerBinding(B.container,"mousedown",function(a){if(Y(a)&&(1!==B.hoverData.which||1===a.which)){a.preventDefault(),S(),B.hoverData.capture=!0,B.hoverData.which=a.which;var b=B.cy,c=[a.clientX,a.clientY],d=B.projectIntoViewport(c[0],c[1]),e=B.selection,f=B.findNearestElements(d[0],d[1],!0,!1),g=f[0],h=B.dragData.possibleDragElements;B.hoverData.mdownPos=d,B.hoverData.mdownGPos=c;var i=function(b){return{originalEvent:a,type:b,position:{x:d[0],y:d[1]}}};if(3==a.which){B.hoverData.cxtStarted=!0;var j={originalEvent:a,type:"cxttapstart",position:{x:d[0],y:d[1]}};g?(g.activate(),g.emit(j),B.hoverData.down=g):b.emit(j),B.hoverData.downTime=new Date().getTime(),B.hoverData.cxtDragged=!1}else if(1==a.which){if(g&&g.activate(),null!=g&&B.nodeIsGrabbable(g)){if(L(g),g.selected()){h=B.dragData.possibleDragElements=b.collection();var k=b.$(function(a){return a.isNode()&&a.selected()&&B.nodeIsGrabbable(a)});P(k,{addToList:h}),g.emit(i("grabon")),k.forEach(function(a){a.emit(i("grab"))})}else P(g,{addToList:h=B.dragData.possibleDragElements=b.collection()}),g.emit(i("grabon")).emit(i("grab"));B.redrawHint("eles",!0),B.redrawHint("drag",!0)}B.hoverData.down=g,B.hoverData.downs=f,B.hoverData.downTime=new Date().getTime(),E(g,["mousedown","tapstart","vmousedown"],a,{x:d[0],y:d[1]}),null==g?(e[4]=1,B.data.bgActivePosistion={x:d[0],y:d[1]},B.redrawHint("select",!0),B.redraw()):g.pannable()&&(e[4]=1),B.hoverData.tapholdCancelled=!1,clearTimeout(B.hoverData.tapholdTimeout),B.hoverData.tapholdTimeout=setTimeout(function(){if(!B.hoverData.tapholdCancelled){var a=B.hoverData.down;a?a.emit(i("taphold")):b.emit(i("taphold"))}},B.tapholdDuration)}e[0]=e[2]=d[0],e[1]=e[3]=d[1]}},!1);var Z=function(a){var b=a.getRootNode();if(b&&11===b.nodeType&&void 0!==b.host)return b}(B.container);B.registerBinding([C,Z],"mousemove",function(a){var b,c;if(B.hoverData.capture||Y(a)){var d=!1,e=B.cy,f=e.zoom(),g=[a.clientX,a.clientY],h=B.projectIntoViewport(g[0],g[1]),i=B.hoverData.mdownPos,j=B.hoverData.mdownGPos,k=B.selection,l=null;B.hoverData.draggingEles||B.hoverData.dragging||B.hoverData.selecting||(l=B.findNearestElement(h[0],h[1],!0,!1));var n=B.hoverData.last,o=B.hoverData.down,p=[h[0]-k[2],h[1]-k[3]],q=B.dragData.possibleDragElements;if(j){var r=g[0]-j[0],s=g[1]-j[1];B.hoverData.isOverThresholdDrag=b=r*r+s*s>=B.desktopTapThreshold2}var t=F(a);b&&(B.hoverData.tapholdCancelled=!0),d=!0,E(l,["mousemove","vmousemove","tapdrag"],a,{x:h[0],y:h[1]});var u=function(b){return{originalEvent:a,type:b,position:{x:h[0],y:h[1]}}},v=function(){B.data.bgActivePosistion=void 0,B.hoverData.selecting||e.emit(u("boxstart")),k[4]=1,B.hoverData.selecting=!0,B.redrawHint("select",!0),B.redraw()};if(3===B.hoverData.which){if(b){var w=u("cxtdrag");o?o.emit(w):e.emit(w),B.hoverData.cxtDragged=!0,(!B.hoverData.cxtOver||l!==B.hoverData.cxtOver)&&(B.hoverData.cxtOver&&B.hoverData.cxtOver.emit(u("cxtdragout")),B.hoverData.cxtOver=l,l&&l.emit(u("cxtdragover")))}}else if(B.hoverData.dragging){if(d=!0,e.panningEnabled()&&e.userPanningEnabled()){if(B.hoverData.justStartedPan){var y=B.hoverData.mdownPos;c={x:(h[0]-y[0])*f,y:(h[1]-y[1])*f},B.hoverData.justStartedPan=!1}else c={x:p[0]*f,y:p[1]*f};e.panBy(c),e.emit(u("dragpan")),B.hoverData.dragged=!0}h=B.projectIntoViewport(a.clientX,a.clientY)}else if(1==k[4]&&(null==o||o.pannable()))b&&(!B.hoverData.dragging&&e.boxSelectionEnabled()&&(t||!e.panningEnabled()||!e.userPanningEnabled())?v():!B.hoverData.selecting&&e.panningEnabled()&&e.userPanningEnabled()&&G(o,B.hoverData.downs)&&(B.hoverData.dragging=!0,B.hoverData.justStartedPan=!0,k[4]=0,B.data.bgActivePosistion=a4(i),B.redrawHint("select",!0),B.redraw()),o&&o.pannable()&&o.active()&&o.unactivate());else{if(o&&o.pannable()&&o.active()&&o.unactivate(),o&&o.grabbed()||l==n||(n&&E(n,["mouseout","tapdragout"],a,{x:h[0],y:h[1]}),l&&E(l,["mouseover","tapdragover"],a,{x:h[0],y:h[1]}),B.hoverData.last=l),o)if(b){if(e.boxSelectionEnabled()&&t)o&&o.grabbed()&&(Q(q),o.emit(u("freeon")),q.emit(u("free")),B.dragData.didDrag&&(o.emit(u("dragfreeon")),q.emit(u("dragfree")))),v();else if(o&&o.grabbed()&&B.nodeIsDraggable(o)){var z,A=!B.dragData.didDrag;A&&B.redrawHint("eles",!0),B.dragData.didDrag=!0,B.hoverData.draggingEles||P(q,{inDragLayer:!0});var C={x:0,y:0};if(x(p[0])&&x(p[1])&&(C.x+=p[0],C.y+=p[1],A)){var D=B.hoverData.dragDelta;D&&x(D[0])&&x(D[1])&&(C.x+=D[0],C.y+=D[1])}B.hoverData.draggingEles=!0,q.silentShift(C).emit(u("position")).emit(u("drag")),B.redrawHint("drag",!0),B.redraw()}}else 0===(z=B.hoverData.dragDelta=B.hoverData.dragDelta||[]).length?(z.push(p[0]),z.push(p[1])):(z[0]+=p[0],z[1]+=p[1]);d=!0}if(k[2]=h[0],k[3]=h[1],d)return a.stopPropagation&&a.stopPropagation(),a.preventDefault&&a.preventDefault(),!1}},!1),B.registerBinding(C,"mouseup",function(a){if((1!==B.hoverData.which||1===a.which||!B.hoverData.capture)&&B.hoverData.capture){B.hoverData.capture=!1;var e=B.cy,f=B.projectIntoViewport(a.clientX,a.clientY),g=B.selection,h=B.findNearestElement(f[0],f[1],!0,!1),i=B.dragData.possibleDragElements,j=B.hoverData.down,k=F(a);B.data.bgActivePosistion&&(B.redrawHint("select",!0),B.redraw()),B.hoverData.tapholdCancelled=!0,B.data.bgActivePosistion=void 0,j&&j.unactivate();var l=function(b){return{originalEvent:a,type:b,position:{x:f[0],y:f[1]}}};if(3===B.hoverData.which){var n=l("cxttapend");if(j?j.emit(n):e.emit(n),!B.hoverData.cxtDragged){var o=l("cxttap");j?j.emit(o):e.emit(o)}B.hoverData.cxtDragged=!1,B.hoverData.which=null}else if(1===B.hoverData.which){if(E(h,["mouseup","tapend","vmouseup"],a,{x:f[0],y:f[1]}),B.dragData.didDrag||B.hoverData.dragged||B.hoverData.selecting||B.hoverData.isOverThresholdDrag||(E(j,["click","tap","vclick"],a,{x:f[0],y:f[1]}),c=!1,a.timeStamp-d<=e.multiClickDebounceTime()?(b&&clearTimeout(b),c=!0,d=null,E(j,["dblclick","dbltap","vdblclick"],a,{x:f[0],y:f[1]})):(b=setTimeout(function(){c||E(j,["oneclick","onetap","voneclick"],a,{x:f[0],y:f[1]})},e.multiClickDebounceTime()),d=a.timeStamp)),null!=j||B.dragData.didDrag||B.hoverData.selecting||B.hoverData.dragged||F(a)||(e.$(D).unselect(["tapunselect"]),i.length>0&&B.redrawHint("eles",!0),B.dragData.possibleDragElements=i=e.collection()),h!=j||B.dragData.didDrag||B.hoverData.selecting||null==h||!h._private.selectable||(B.hoverData.dragging||("additive"===e.selectionType()||k?h.selected()?h.unselect(["tapunselect"]):h.select(["tapselect"]):k||(e.$(D).unmerge(h).unselect(["tapunselect"]),h.select(["tapselect"]))),B.redrawHint("eles",!0)),B.hoverData.selecting){var p=e.collection(B.getAllInBox(g[0],g[1],g[2],g[3]));B.redrawHint("select",!0),p.length>0&&B.redrawHint("eles",!0),e.emit(l("boxend"));"additive"===e.selectionType()||k||e.$(D).unmerge(p).unselect(),p.emit(l("box")).stdFilter(function(a){return a.selectable()&&!a.selected()}).select().emit(l("boxselect")),B.redraw()}if(B.hoverData.dragging&&(B.hoverData.dragging=!1,B.redrawHint("select",!0),B.redrawHint("eles",!0),B.redraw()),!g[4]){B.redrawHint("drag",!0),B.redrawHint("eles",!0);var q=j&&j.grabbed();Q(i),q&&(j.emit(l("freeon")),i.emit(l("free")),B.dragData.didDrag&&(j.emit(l("dragfreeon")),i.emit(l("dragfree"))))}}g[4]=0,B.hoverData.down=null,B.hoverData.cxtStarted=!1,B.hoverData.draggingEles=!1,B.hoverData.selecting=!1,B.hoverData.isOverThresholdDrag=!1,B.dragData.didDrag=!1,B.hoverData.dragged=!1,B.hoverData.dragDelta=[],B.hoverData.mdownPos=null,B.hoverData.mdownGPos=null,B.hoverData.which=null}},!1);var $=[],_=1e5,aa=function(a,b){for(var c=0;c<a.length;c++)if(a[c]%b!=0)return!1;return!0},ab=function(a){for(var b=Math.abs(a[0]),c=1;c<a.length;c++)if(Math.abs(a[c])!==b)return!1;return!0},ac=function(a){var b=!1,c=a.deltaY;if(null==c&&(null!=a.wheelDeltaY?c=a.wheelDeltaY/4:null!=a.wheelDelta&&(c=a.wheelDelta/4)),0!==c){if(null==e)if($.length>=4){if(!(e=aa($,5))){var d=Math.abs($[0]);e=ab($)&&d>5}if(e)for(var f=0;f<$.length;f++)_=Math.min(Math.abs($[f]),_)}else $.push(c),b=!0;else e&&(_=Math.min(Math.abs(c),_));if(!B.scrollingPage){var g=B.cy,h=g.zoom(),i=g.pan(),j=B.projectIntoViewport(a.clientX,a.clientY),k=[j[0]*h+i.x,j[1]*h+i.y];if(B.hoverData.draggingEles||B.hoverData.dragging||B.hoverData.cxtStarted||0!==B.selection[4])return void a.preventDefault();if(g.panningEnabled()&&g.userPanningEnabled()&&g.zoomingEnabled()&&g.userZoomingEnabled()){a.preventDefault(),B.data.wheelZooming=!0,clearTimeout(B.data.wheelTimeout),B.data.wheelTimeout=setTimeout(function(){B.data.wheelZooming=!1,B.redrawHint("eles",!0),B.redraw()},150),b&&Math.abs(c)>5&&(c=5*bb(c)),l=-(c/250),e&&(l/=_,l*=3),l*=B.wheelSensitivity,1===a.deltaMode&&(l*=33);var l,n=g.zoom()*Math.pow(10,l);"gesturechange"===a.type&&(n=B.gestureStartZoom*a.scale),g.zoom({level:n,renderedPosition:{x:k[0],y:k[1]}}),g.emit({type:"gesturechange"===a.type?"pinchzoom":"scrollzoom",originalEvent:a,position:{x:j[0],y:j[1]}})}}}};B.registerBinding(B.container,"wheel",ac,!0),B.registerBinding(C,"scroll",function(a){B.scrollingPage=!0,clearTimeout(B.scrollingPageTimeout),B.scrollingPageTimeout=setTimeout(function(){B.scrollingPage=!1},250)},!0),B.registerBinding(B.container,"gesturestart",function(a){B.gestureStartZoom=B.cy.zoom(),B.hasTouchStarted||a.preventDefault()},!0),B.registerBinding(B.container,"gesturechange",function(a){B.hasTouchStarted||ac(a)},!0),B.registerBinding(B.container,"mouseout",function(a){var b=B.projectIntoViewport(a.clientX,a.clientY);B.cy.emit({originalEvent:a,type:"mouseout",position:{x:b[0],y:b[1]}})},!1),B.registerBinding(B.container,"mouseover",function(a){var b=B.projectIntoViewport(a.clientX,a.clientY);B.cy.emit({originalEvent:a,type:"mouseover",position:{x:b[0],y:b[1]}})},!1);var ad=function(a,b,c,d){return Math.sqrt((c-a)*(c-a)+(d-b)*(d-b))},ae=function(a,b,c,d){return(c-a)*(c-a)+(d-b)*(d-b)};if(B.registerBinding(B.container,"touchstart",t=function(a){if(B.hasTouchStarted=!0,Y(a)){S(),B.touchData.capture=!0,B.data.bgActivePosistion=void 0;var b=B.cy,c=B.touchData.now,d=B.touchData.earlier;if(a.touches[0]){var e=B.projectIntoViewport(a.touches[0].clientX,a.touches[0].clientY);c[0]=e[0],c[1]=e[1]}if(a.touches[1]){var e=B.projectIntoViewport(a.touches[1].clientX,a.touches[1].clientY);c[2]=e[0],c[3]=e[1]}if(a.touches[2]){var e=B.projectIntoViewport(a.touches[2].clientX,a.touches[2].clientY);c[4]=e[0],c[5]=e[1]}var t=function(b){return{originalEvent:a,type:b,position:{x:c[0],y:c[1]}}};if(a.touches[1]){B.touchData.singleTouchMoved=!0,Q(B.dragData.touchDragEles);var u=B.findContainerClientCoords();o=u[0],p=u[1],q=u[2],r=u[3],f=a.touches[0].clientX-o,g=a.touches[0].clientY-p,h=a.touches[1].clientX-o,i=a.touches[1].clientY-p,s=0<=f&&f<=q&&0<=h&&h<=q&&0<=g&&g<=r&&0<=i&&i<=r;var v=b.pan(),w=b.zoom();if(j=ad(f,g,h,i),k=ae(f,g,h,i),n=[((l=[(f+h)/2,(g+i)/2])[0]-v.x)/w,(l[1]-v.y)/w],k<4e4&&!a.touches[2]){var x=B.findNearestElement(c[0],c[1],!0,!0),y=B.findNearestElement(c[2],c[3],!0,!0);x&&x.isNode()?(x.activate().emit(t("cxttapstart")),B.touchData.start=x):y&&y.isNode()?(y.activate().emit(t("cxttapstart")),B.touchData.start=y):b.emit(t("cxttapstart")),B.touchData.start&&(B.touchData.start._private.grabbed=!1),B.touchData.cxt=!0,B.touchData.cxtDragged=!1,B.data.bgActivePosistion=void 0,B.redraw();return}}if(a.touches[2])b.boxSelectionEnabled()&&a.preventDefault();else if(a.touches[1]);else if(a.touches[0]){var z=B.findNearestElements(c[0],c[1],!0,!0),A=z[0];if(null!=A&&(A.activate(),B.touchData.start=A,B.touchData.starts=z,B.nodeIsGrabbable(A))){var C=B.dragData.touchDragEles=b.collection(),D=null;B.redrawHint("eles",!0),B.redrawHint("drag",!0),A.selected()?P(D=b.$(function(a){return a.selected()&&B.nodeIsGrabbable(a)}),{addToList:C}):P(A,{addToList:C}),L(A),A.emit(t("grabon")),D?D.forEach(function(a){a.emit(t("grab"))}):A.emit(t("grab"))}E(A,["touchstart","tapstart","vmousedown"],a,{x:c[0],y:c[1]}),null==A&&(B.data.bgActivePosistion={x:e[0],y:e[1]},B.redrawHint("select",!0),B.redraw()),B.touchData.singleTouchMoved=!1,B.touchData.singleTouchStartTime=+new Date,clearTimeout(B.touchData.tapholdTimeout),B.touchData.tapholdTimeout=setTimeout(function(){!1!==B.touchData.singleTouchMoved||B.pinching||B.touchData.selecting||E(B.touchData.start,["taphold"],a,{x:c[0],y:c[1]})},B.tapholdDuration)}if(a.touches.length>=1){for(var F=B.touchData.startPosition=[null,null,null,null,null,null],G=0;G<c.length;G++)F[G]=d[G]=c[G];var H=a.touches[0];B.touchData.startGPosition=[H.clientX,H.clientY]}}},!1),B.registerBinding(C,"touchmove",u=function(a){var b=B.touchData.capture;if(b||Y(a)){var c=B.selection,d=B.cy,e=B.touchData.now,l=B.touchData.earlier,q=d.zoom();if(a.touches[0]){var r=B.projectIntoViewport(a.touches[0].clientX,a.touches[0].clientY);e[0]=r[0],e[1]=r[1]}if(a.touches[1]){var r=B.projectIntoViewport(a.touches[1].clientX,a.touches[1].clientY);e[2]=r[0],e[3]=r[1]}if(a.touches[2]){var r=B.projectIntoViewport(a.touches[2].clientX,a.touches[2].clientY);e[4]=r[0],e[5]=r[1]}var t=function(b){return{originalEvent:a,type:b,position:{x:e[0],y:e[1]}}},u=B.touchData.startGPosition;if(b&&a.touches[0]&&u){for(var v=[],w=0;w<e.length;w++)v[w]=e[w]-l[w];var y=a.touches[0].clientX-u[0],z=y*y,A=a.touches[0].clientY-u[1];ac=z+A*A>=B.touchTapThreshold2}if(b&&B.touchData.cxt){a.preventDefault();var C=a.touches[0].clientX-o,D=a.touches[0].clientY-p,F=a.touches[1].clientX-o,H=a.touches[1].clientY-p,I=ae(C,D,F,H);if(I/k>=2.25||I>=22500){B.touchData.cxt=!1,B.data.bgActivePosistion=void 0,B.redrawHint("select",!0);var J=t("cxttapend");B.touchData.start?(B.touchData.start.unactivate().emit(J),B.touchData.start=null):d.emit(J)}}if(b&&B.touchData.cxt){var J=t("cxtdrag");B.data.bgActivePosistion=void 0,B.redrawHint("select",!0),B.touchData.start?B.touchData.start.emit(J):d.emit(J),B.touchData.start&&(B.touchData.start._private.grabbed=!1),B.touchData.cxtDragged=!0;var K=B.findNearestElement(e[0],e[1],!0,!0);(!B.touchData.cxtOver||K!==B.touchData.cxtOver)&&(B.touchData.cxtOver&&B.touchData.cxtOver.emit(t("cxtdragout")),B.touchData.cxtOver=K,K&&K.emit(t("cxtdragover")))}else if(b&&a.touches[2]&&d.boxSelectionEnabled())a.preventDefault(),B.data.bgActivePosistion=void 0,this.lastThreeTouch=+new Date,B.touchData.selecting||d.emit(t("boxstart")),B.touchData.selecting=!0,B.touchData.didSelect=!0,c[4]=1,c&&0!==c.length&&void 0!==c[0]?(c[2]=(e[0]+e[2]+e[4])/3,c[3]=(e[1]+e[3]+e[5])/3):(c[0]=(e[0]+e[2]+e[4])/3,c[1]=(e[1]+e[3]+e[5])/3,c[2]=(e[0]+e[2]+e[4])/3+1,c[3]=(e[1]+e[3]+e[5])/3+1),B.redrawHint("select",!0),B.redraw();else if(b&&a.touches[1]&&!B.touchData.didSelect&&d.zoomingEnabled()&&d.panningEnabled()&&d.userZoomingEnabled()&&d.userPanningEnabled()){a.preventDefault(),B.data.bgActivePosistion=void 0,B.redrawHint("select",!0);var L=B.dragData.touchDragEles;if(L){B.redrawHint("drag",!0);for(var M=0;M<L.length;M++){var N=L[M]._private;N.grabbed=!1,N.rscratch.inDragLayer=!1}}var O=B.touchData.start,C=a.touches[0].clientX-o,D=a.touches[0].clientY-p,F=a.touches[1].clientX-o,H=a.touches[1].clientY-p,R=ad(C,D,F,H),S=R/j;if(s){var T=C-f,U=D-g,V=F-h,W=H-i,X=d.zoom(),Z=X*S,$=d.pan(),_=n[0]*X+$.x,aa=n[1]*X+$.y,ab={x:-Z/X*(_-$.x-(T+V)/2)+_,y:-Z/X*(aa-$.y-(U+W)/2)+aa};if(O&&O.active()){var L=B.dragData.touchDragEles;Q(L),B.redrawHint("drag",!0),B.redrawHint("eles",!0),O.unactivate().emit(t("freeon")),L.emit(t("free")),B.dragData.didDrag&&(O.emit(t("dragfreeon")),L.emit(t("dragfree")))}d.viewport({zoom:Z,pan:ab,cancelOnFailedZoom:!0}),d.emit(t("pinchzoom")),j=R,f=C,g=D,h=F,i=H,B.pinching=!0}if(a.touches[0]){var r=B.projectIntoViewport(a.touches[0].clientX,a.touches[0].clientY);e[0]=r[0],e[1]=r[1]}if(a.touches[1]){var r=B.projectIntoViewport(a.touches[1].clientX,a.touches[1].clientY);e[2]=r[0],e[3]=r[1]}if(a.touches[2]){var r=B.projectIntoViewport(a.touches[2].clientX,a.touches[2].clientY);e[4]=r[0],e[5]=r[1]}}else if(a.touches[0]&&!B.touchData.didSelect){var ac,K,af=B.touchData.start,ag=B.touchData.last;if(B.hoverData.draggingEles||B.swipePanning||(K=B.findNearestElement(e[0],e[1],!0,!0)),b&&null!=af&&a.preventDefault(),b&&null!=af&&B.nodeIsDraggable(af))if(ac){var L=B.dragData.touchDragEles,ah=!B.dragData.didDrag;ah&&P(L,{inDragLayer:!0}),B.dragData.didDrag=!0;var ai={x:0,y:0};if(x(v[0])&&x(v[1])&&(ai.x+=v[0],ai.y+=v[1],ah)){B.redrawHint("eles",!0);var aj=B.touchData.dragDelta;aj&&x(aj[0])&&x(aj[1])&&(ai.x+=aj[0],ai.y+=aj[1])}B.hoverData.draggingEles=!0,L.silentShift(ai).emit(t("position")).emit(t("drag")),B.redrawHint("drag",!0),B.touchData.startPosition[0]==l[0]&&B.touchData.startPosition[1]==l[1]&&B.redrawHint("eles",!0),B.redraw()}else{var aj=B.touchData.dragDelta=B.touchData.dragDelta||[];0===aj.length?(aj.push(v[0]),aj.push(v[1])):(aj[0]+=v[0],aj[1]+=v[1])}if(E(af||K,["touchmove","tapdrag","vmousemove"],a,{x:e[0],y:e[1]}),af&&af.grabbed()||K==ag||(ag&&ag.emit(t("tapdragout")),K&&K.emit(t("tapdragover"))),B.touchData.last=K,b)for(var M=0;M<e.length;M++)e[M]&&B.touchData.startPosition[M]&&ac&&(B.touchData.singleTouchMoved=!0);if(b&&(null==af||af.pannable())&&d.panningEnabled()&&d.userPanningEnabled()){G(af,B.touchData.starts)&&(a.preventDefault(),B.data.bgActivePosistion||(B.data.bgActivePosistion=a4(B.touchData.startPosition)),B.swipePanning?(d.panBy({x:v[0]*q,y:v[1]*q}),d.emit(t("dragpan"))):ac&&(B.swipePanning=!0,d.panBy({x:y*q,y:A*q}),d.emit(t("dragpan")),af&&(af.unactivate(),B.redrawHint("select",!0),B.touchData.start=null)));var r=B.projectIntoViewport(a.touches[0].clientX,a.touches[0].clientY);e[0]=r[0],e[1]=r[1]}}for(var w=0;w<e.length;w++)l[w]=e[w];b&&a.touches.length>0&&!B.hoverData.draggingEles&&!B.swipePanning&&null!=B.data.bgActivePosistion&&(B.data.bgActivePosistion=void 0,B.redrawHint("select",!0),B.redraw())}},!1),B.registerBinding(C,"touchcancel",v=function(a){var b=B.touchData.start;B.touchData.capture=!1,b&&b.unactivate()}),B.registerBinding(C,"touchend",w=function(a){var b,c=B.touchData.start;if(B.touchData.capture){0===a.touches.length&&(B.touchData.capture=!1),a.preventDefault();var d=B.selection;B.swipePanning=!1,B.hoverData.draggingEles=!1;var e=B.cy,f=e.zoom(),g=B.touchData.now,h=B.touchData.earlier;if(a.touches[0]){var i=B.projectIntoViewport(a.touches[0].clientX,a.touches[0].clientY);g[0]=i[0],g[1]=i[1]}if(a.touches[1]){var i=B.projectIntoViewport(a.touches[1].clientX,a.touches[1].clientY);g[2]=i[0],g[3]=i[1]}if(a.touches[2]){var i=B.projectIntoViewport(a.touches[2].clientX,a.touches[2].clientY);g[4]=i[0],g[5]=i[1]}var j=function(b){return{originalEvent:a,type:b,position:{x:g[0],y:g[1]}}};if(c&&c.unactivate(),B.touchData.cxt){if(b=j("cxttapend"),c?c.emit(b):e.emit(b),!B.touchData.cxtDragged){var k=j("cxttap");c?c.emit(k):e.emit(k)}B.touchData.start&&(B.touchData.start._private.grabbed=!1),B.touchData.cxt=!1,B.touchData.start=null,B.redraw();return}if(!a.touches[2]&&e.boxSelectionEnabled()&&B.touchData.selecting){B.touchData.selecting=!1;var l=e.collection(B.getAllInBox(d[0],d[1],d[2],d[3]));d[0]=void 0,d[1]=void 0,d[2]=void 0,d[3]=void 0,d[4]=0,B.redrawHint("select",!0),e.emit(j("boxend")),l.emit(j("box")).stdFilter(function(a){return a.selectable()&&!a.selected()}).select().emit(j("boxselect")),l.nonempty()&&B.redrawHint("eles",!0),B.redraw()}if(null!=c&&c.unactivate(),a.touches[2])B.data.bgActivePosistion=void 0,B.redrawHint("select",!0);else if(a.touches[1]);else if(a.touches[0]);else if(!a.touches[0]){B.data.bgActivePosistion=void 0,B.redrawHint("select",!0);var n=B.dragData.touchDragEles;if(null!=c){var o=c._private.grabbed;Q(n),B.redrawHint("drag",!0),B.redrawHint("eles",!0),o&&(c.emit(j("freeon")),n.emit(j("free")),B.dragData.didDrag&&(c.emit(j("dragfreeon")),n.emit(j("dragfree")))),E(c,["touchend","tapend","vmouseup","tapdragout"],a,{x:g[0],y:g[1]}),c.unactivate(),B.touchData.start=null}else E(B.findNearestElement(g[0],g[1],!0,!0),["touchend","tapend","vmouseup","tapdragout"],a,{x:g[0],y:g[1]});var p=B.touchData.startPosition[0]-g[0],q=B.touchData.startPosition[1]-g[1];B.touchData.singleTouchMoved||(c||e.$(":selected").unselect(["tapunselect"]),E(c,["tap","vclick"],a,{x:g[0],y:g[1]}),y=!1,a.timeStamp-A<=e.multiClickDebounceTime()?(z&&clearTimeout(z),y=!0,A=null,E(c,["dbltap","vdblclick"],a,{x:g[0],y:g[1]})):(z=setTimeout(function(){y||E(c,["onetap","voneclick"],a,{x:g[0],y:g[1]})},e.multiClickDebounceTime()),A=a.timeStamp)),null!=c&&!B.dragData.didDrag&&c._private.selectable&&(p*p+q*q)*f*f<B.touchTapThreshold2&&!B.pinching&&("single"===e.selectionType()?(e.$(D).unmerge(c).unselect(["tapunselect"]),c.select(["tapselect"])):c.selected()?c.unselect(["tapunselect"]):c.select(["tapselect"]),B.redrawHint("eles",!0)),B.touchData.singleTouchMoved=!0}for(var r=0;r<g.length;r++)h[r]=g[r];B.dragData.didDrag=!1,0===a.touches.length&&(B.touchData.dragDelta=[],B.touchData.startPosition=[null,null,null,null,null,null],B.touchData.startGPosition=null,B.touchData.didSelect=!1),a.touches.length<2&&(1===a.touches.length&&(B.touchData.startGPosition=[a.touches[0].clientX,a.touches[0].clientY]),B.pinching=!1,B.redrawHint("eles",!0),B.redraw())}},!1),"u"<typeof TouchEvent){var ag=[],ah=function(a){return{clientX:a.clientX,clientY:a.clientY,force:1,identifier:a.pointerId,pageX:a.pageX,pageY:a.pageY,radiusX:a.width/2,radiusY:a.height/2,screenX:a.screenX,screenY:a.screenY,target:a.target}},ai=function(a){ag.push({event:a,touch:ah(a)})},aj=function(a){for(var b=0;b<ag.length;b++)if(ag[b].event.pointerId===a.pointerId)return void ag.splice(b,1)},ak=function(a){var b=ag.filter(function(b){return b.event.pointerId===a.pointerId})[0];b.event=a,b.touch=ah(a)},al=function(a){a.touches=ag.map(function(a){return a.touch})},am=function(a){return"mouse"===a.pointerType||4===a.pointerType};B.registerBinding(B.container,"pointerdown",function(a){am(a)||(a.preventDefault(),ai(a),al(a),t(a))}),B.registerBinding(B.container,"pointerup",function(a){am(a)||(aj(a),al(a),w(a))}),B.registerBinding(B.container,"pointercancel",function(a){am(a)||(aj(a),al(a),v(a))}),B.registerBinding(B.container,"pointermove",function(a){am(a)||(a.preventDefault(),ak(a),al(a),u(a))})}};var iW={};iW.generatePolygon=function(a,b){return this.nodeShapes[a]={renderer:this,name:a,points:b,draw:function(a,b,c,d,e,f){this.renderer.nodeShapeImpl("polygon",a,b,c,d,e,this.points)},intersectLine:function(a,b,c,d,e,f,g,h){return bN(e,f,this.points,a,b,c/2,d/2,g)},checkPoint:function(a,b,c,d,e,f,g,h){return bD(a,b,this.points,f,g,d,e,[0,-1],c)},hasMiterBounds:"rectangle"!==a,miterBounds:function(a,b,c,d,e,f){var g,h,i;return g=this.points,h=function(a,b){if(a.length<3)throw Error("Need at least 3 vertices");var c=function(a,b){return{x:a.x+b.x,y:a.y+b.y}},d=function(a,b){return{x:a.x-b.x,y:a.y-b.y}},e=function(a,b){return{x:a.x*b,y:a.y*b}},f=function(a,b){return a.x*b.y-a.y*b.x},g=a.map(function(a){return{x:a.x,y:a.y}});0>function(a){for(var b=0,c=0;c<a.length;c++){var d=a[c],e=a[(c+1)%a.length];b+=d.x*e.y-e.x*d.y}return b/2}(g)&&g.reverse();for(var h=g.length,i=[],j=0;j<h;j++){var k=g[j],l=d(g[(j+1)%h],k),n=function(a){var b=bu(a.x,a.y);return 0===b?{x:0,y:0}:{x:a.x/b,y:a.y/b}}({x:l.y,y:-l.x});i.push(n)}for(var o=i.map(function(a,d){return{p1:c(g[d],e(a,b)),p2:c(g[(d+1)%h],e(a,b))}}),p=[],q=0;q<h;q++){var r=o[(q-1+h)%h],s=o[q],t=function(a,b,g,h){var i=d(b,a),j=d(h,g),k=f(i,j);if(1e-9>Math.abs(k))return c(a,e(i,.5));var l=f(d(g,a),j)/k;return c(a,e(i,l))}(r.p1,r.p2,s.p1,s.p2);p.push(t)}return p}(bM(g,a,b,c,d),e),i=bj(),h.forEach(function(a){return bm(i,a.x,a.y)}),i}}},iW.generateEllipse=function(){return this.nodeShapes.ellipse={renderer:this,name:"ellipse",draw:function(a,b,c,d,e,f){this.renderer.nodeShapeImpl(this.name,a,b,c,d,e)},intersectLine:function(a,b,c,d,e,f,g,h){return bH(e,f,a,b,c/2+g,d/2+g)},checkPoint:function(a,b,c,d,e,f,g,h){return bI(a,b,d,e,f,g,c)}}},iW.generateRoundPolygon=function(a,b){return this.nodeShapes[a]={renderer:this,name:a,points:b,getOrCreateCorners:function(a,c,d,e,f,g,h){if(void 0!==g[h]&&g[h+"-cx"]===a&&g[h+"-cy"]===c)return g[h];g[h]=Array(b.length/2),g[h+"-cx"]=a,g[h+"-cy"]=c;var i=d/2,j=e/2;f="auto"===f?bU(d,e):f;for(var k=Array(b.length/2),l=0;l<b.length/2;l++)k[l]={x:a+i*b[2*l],y:c+j*b[2*l+1]};var n,o,p,q,r=k.length;for(n=0,o=k[r-1];n<r;n++)p=k[n%r],q=k[(n+1)%r],g[h][n]=iF(o,p,q,f),o=p,p=q;return g[h]},draw:function(a,b,c,d,e,f,g){this.renderer.nodeShapeImpl("round-polygon",a,b,c,d,e,this.points,this.getOrCreateCorners(b,c,d,e,f,g,"drawCorners"))},intersectLine:function(a,b,c,d,e,f,g,h,i){return bO(e,f,this.points,a,b,c,d,g,this.getOrCreateCorners(a,b,c,d,h,i,"corners"))},checkPoint:function(a,b,c,d,e,f,g,h,i){return bE(a,b,this.points,f,g,d,e,this.getOrCreateCorners(f,g,d,e,h,i,"corners"))}}},iW.generateRoundRectangle=function(){return this.nodeShapes["round-rectangle"]=this.nodeShapes.roundrectangle={renderer:this,name:"round-rectangle",points:bQ(4,0),draw:function(a,b,c,d,e,f){this.renderer.nodeShapeImpl(this.name,a,b,c,d,e,this.points,f)},intersectLine:function(a,b,c,d,e,f,g,h){return bv(e,f,a,b,c,d,g,h)},checkPoint:function(a,b,c,d,e,f,g,h){var i=d/2,j=e/2,k=2*(h=Math.min(i,j,h="auto"===h?bT(d,e):h));return!!(bD(a,b,this.points,f,g,d,e-k,[0,-1],c)||bD(a,b,this.points,f,g,d-k,e,[0,-1],c)||bI(a,b,k,k,f-i+h,g-j+h,c)||bI(a,b,k,k,f+i-h,g-j+h,c)||bI(a,b,k,k,f+i-h,g+j-h,c)||bI(a,b,k,k,f-i+h,g+j-h,c))}}},iW.generateCutRectangle=function(){return this.nodeShapes["cut-rectangle"]=this.nodeShapes.cutrectangle={renderer:this,name:"cut-rectangle",cornerLength:bV(),points:bQ(4,0),draw:function(a,b,c,d,e,f){this.renderer.nodeShapeImpl(this.name,a,b,c,d,e,null,f)},generateCutTrianglePts:function(a,b,c,d,e){var f="auto"===e?this.cornerLength:e,g=b/2,h=a/2,i=c-h,j=c+h,k=d-g,l=d+g;return{topLeft:[i,k+f,i+f,k,i+f,k+f],topRight:[j-f,k,j,k+f,j-f,k+f],bottomRight:[j,l-f,j-f,l,j-f,l-f],bottomLeft:[i+f,l,i,l-f,i+f,l-f]}},intersectLine:function(a,b,c,d,e,f,g,h){var i=this.generateCutTrianglePts(c+2*g,d+2*g,a,b,h);return bN(e,f,[].concat.apply([],[i.topLeft.splice(0,4),i.topRight.splice(0,4),i.bottomRight.splice(0,4),i.bottomLeft.splice(0,4)]),a,b)},checkPoint:function(a,b,c,d,e,f,g,h){var i="auto"===h?this.cornerLength:h;if(bD(a,b,this.points,f,g,d,e-2*i,[0,-1],c)||bD(a,b,this.points,f,g,d-2*i,e,[0,-1],c))return!0;var j=this.generateCutTrianglePts(d,e,f,g);return bC(a,b,j.topLeft)||bC(a,b,j.topRight)||bC(a,b,j.bottomRight)||bC(a,b,j.bottomLeft)}}},iW.generateBarrel=function(){return this.nodeShapes.barrel={renderer:this,name:"barrel",points:bQ(4,0),draw:function(a,b,c,d,e,f){this.renderer.nodeShapeImpl(this.name,a,b,c,d,e)},intersectLine:function(a,b,c,d,e,f,g,h){var i=this.generateBarrelBezierPts(c+2*g,d+2*g,a,b),j=function(a){var b=bg({x:a[0],y:a[1]},{x:a[2],y:a[3]},{x:a[4],y:a[5]},.15),c=bg({x:a[0],y:a[1]},{x:a[2],y:a[3]},{x:a[4],y:a[5]},.5),d=bg({x:a[0],y:a[1]},{x:a[2],y:a[3]},{x:a[4],y:a[5]},.85);return[a[0],a[1],b.x,b.y,c.x,c.y,d.x,d.y,a[4],a[5]]};return bN(e,f,[].concat(j(i.topLeft),j(i.topRight),j(i.bottomRight),j(i.bottomLeft)),a,b)},generateBarrelBezierPts:function(a,b,c,d){var e=b/2,f=a/2,g=c-f,h=c+f,i=d-e,j=d+e,k=bW(a,b),l=k.heightOffset,n=k.widthOffset,o=k.ctrlPtOffsetPct*a,p={topLeft:[g,i+l,g+o,i,g+n,i],topRight:[h-n,i,h-o,i,h,i+l],bottomRight:[h,j-l,h-o,j,h-n,j],bottomLeft:[g+n,j,g+o,j,g,j-l]};return p.topLeft.isTop=!0,p.topRight.isTop=!0,p.bottomLeft.isBottom=!0,p.bottomRight.isBottom=!0,p},checkPoint:function(a,b,c,d,e,f,g,h){var i=bW(d,e),j=i.heightOffset,k=i.widthOffset;if(bD(a,b,this.points,f,g,d,e-2*j,[0,-1],c)||bD(a,b,this.points,f,g,d-2*k,e,[0,-1],c))return!0;for(var l=this.generateBarrelBezierPts(d,e,f,g),n=Object.keys(l),o=0;o<n.length;o++){var p=l[n[o]],q=function(a,b,c){var d=c[4],e=c[2],f=c[0],g=c[5],h=c[1],i=Math.min(d,f),j=Math.max(d,f),k=Math.min(g,h),l=Math.max(g,h);if(i<=a&&a<=j&&k<=b&&b<=l){var n=[d-2*e+f,2*(e-d),d],o=by(n[0],n[1],n[2],a).filter(function(a){return 0<=a&&a<=1});if(o.length>0)return o[0]}return null}(a,b,p);if(null!=q){var r=bf(p[5],p[3],p[1],q);if(p.isTop&&r<=b||p.isBottom&&b<=r)return!0}}return!1}}},iW.generateBottomRoundrectangle=function(){return this.nodeShapes["bottom-round-rectangle"]=this.nodeShapes.bottomroundrectangle={renderer:this,name:"bottom-round-rectangle",points:bQ(4,0),draw:function(a,b,c,d,e,f){this.renderer.nodeShapeImpl(this.name,a,b,c,d,e,this.points,f)},intersectLine:function(a,b,c,d,e,f,g,h){var i=a-(c/2+g),j=b-(d/2+g),k=a+(c/2+g),l=bL(e,f,a,b,i,j,k,j,!1);return l.length>0?l:bv(e,f,a,b,c,d,g,h)},checkPoint:function(a,b,c,d,e,f,g,h){var i=2*(h="auto"===h?bT(d,e):h);if(bD(a,b,this.points,f,g,d,e-i,[0,-1],c)||bD(a,b,this.points,f,g,d-i,e,[0,-1],c))return!0;var j=d/2+2*c,k=e/2+2*c;return!!(bC(a,b,[f-j,g-k,f-j,g,f+j,g,f+j,g-k])||bI(a,b,i,i,f+d/2-h,g+e/2-h,c)||bI(a,b,i,i,f-d/2+h,g+e/2-h,c))}}},iW.registerNodeShapes=function(){var a=this.nodeShapes={},b=this;this.generateEllipse(),this.generatePolygon("triangle",bQ(3,0)),this.generateRoundPolygon("round-triangle",bQ(3,0)),this.generatePolygon("rectangle",bQ(4,0)),a.square=a.rectangle,this.generateRoundRectangle(),this.generateCutRectangle(),this.generateBarrel(),this.generateBottomRoundrectangle();var c=[0,1,1,0,0,-1,-1,0];this.generatePolygon("diamond",c),this.generateRoundPolygon("round-diamond",c),this.generatePolygon("pentagon",bQ(5,0)),this.generateRoundPolygon("round-pentagon",bQ(5,0)),this.generatePolygon("hexagon",bQ(6,0)),this.generateRoundPolygon("round-hexagon",bQ(6,0)),this.generatePolygon("heptagon",bQ(7,0)),this.generateRoundPolygon("round-heptagon",bQ(7,0)),this.generatePolygon("octagon",bQ(8,0)),this.generateRoundPolygon("round-octagon",bQ(8,0));var d=Array(20),e=bS(5,0),f=bS(5,Math.PI/5),g=.5*(3-Math.sqrt(5));g*=1.57;for(var h=0;h<f.length/2;h++)f[2*h]*=g,f[2*h+1]*=g;for(var h=0;h<5;h++)d[4*h]=e[2*h],d[4*h+1]=e[2*h+1],d[4*h+2]=f[2*h],d[4*h+3]=f[2*h+1];d=bR(d),this.generatePolygon("star",d),this.generatePolygon("vee",[-1,-1,0,-.333,1,-1,0,1]),this.generatePolygon("rhomboid",[-1,-1,.333,-1,1,1,-.333,1]),this.generatePolygon("right-rhomboid",[-.333,-1,1,-1,.333,1,-1,1]),this.nodeShapes.concavehexagon=this.generatePolygon("concave-hexagon",[-1,-.95,-.75,0,-1,.95,1,.95,.75,0,1,-.95]);var i=[-1,-1,.25,-1,1,0,.25,1,-1,1];this.generatePolygon("tag",i),this.generateRoundPolygon("round-tag",i),a.makePolygon=function(a){var c,d="polygon-"+a.join("$");return(c=this[d])?c:b.generatePolygon(d,a)}};var iX={};iX.timeToRender=function(){return this.redrawTotalTime/this.redrawCount},iX.redraw=function(a){a=a||aG(),void 0===this.averageRedrawTime&&(this.averageRedrawTime=0),void 0===this.lastRedrawTime&&(this.lastRedrawTime=0),void 0===this.lastDrawTime&&(this.lastDrawTime=0),this.requestedFrame=!0,this.renderOptions=a},iX.beforeRender=function(a,b){if(!this.destroyed){null==b&&aA("Priority is not optional for beforeRender");var c=this.beforeRenderCallbacks;c.push({fn:a,priority:b}),c.sort(function(a,b){return b.priority-a.priority})}};var iY=function(a,b,c){for(var d=a.beforeRenderCallbacks,e=0;e<d.length;e++)d[e].fn(b,c)};iX.startRenderLoop=function(){var a=this,b=a.cy;if(!a.renderLoopStarted){a.renderLoopStarted=!0;var c=function(d){if(!a.destroyed){if(b.batching());else if(a.requestedFrame&&!a.skipFrame){iY(a,!0,d);var e=ag();a.render(a.renderOptions);var f=a.lastDrawTime=ag();void 0===a.averageRedrawTime&&(a.averageRedrawTime=f-e),void 0===a.redrawCount&&(a.redrawCount=0),a.redrawCount++,void 0===a.redrawTotalTime&&(a.redrawTotalTime=0);var g=f-e;a.redrawTotalTime+=g,a.lastRedrawTime=g,a.averageRedrawTime=a.averageRedrawTime/2+g/2,a.requestedFrame=!1}else iY(a,!1,d);a.skipFrame=!1,ai(c)}};ai(c)}};var iZ=function(a){this.init(a)},i$=iZ.prototype;i$.clientFunctions=["redrawHint","render","renderTo","matchCanvasSize","nodeShapeImpl","arrowShapeImpl"],i$.init=function(a){this.options=a,this.cy=a.cy;var b=this.container=a.cy.container(),c=this.cy.window();if(c){var d=c.document,e=d.head,f="__________cytoscape_stylesheet",g="__________cytoscape_container",h=null!=d.getElementById(f);if(0>b.className.indexOf(g)&&(b.className=(b.className||"")+" "+g),!h){var i=d.createElement("style");i.id=f,i.textContent="."+g+" { position: relative; }",e.insertBefore(i,e.children[0])}"static"===c.getComputedStyle(b).getPropertyValue("position")&&aC("A Cytoscape container has style position:static and so can not use UI extensions properly")}this.selection=[void 0,void 0,void 0,void 0,0],this.bezierProjPcts=[.05,.225,.4,.5,.6,.775,.95],this.hoverData={down:null,last:null,downTime:null,triggerMode:null,dragging:!1,initialPan:[null,null],capture:!1},this.dragData={possibleDragElements:[]},this.touchData={start:null,capture:!1,startPosition:[null,null,null,null,null,null],singleTouchStartTime:null,singleTouchMoved:!0,now:[null,null,null,null,null,null],earlier:[null,null,null,null,null,null]},this.redraws=0,this.showFps=a.showFps,this.debug=a.debug,this.webgl=a.webgl,this.hideEdgesOnViewport=a.hideEdgesOnViewport,this.textureOnViewport=a.textureOnViewport,this.wheelSensitivity=a.wheelSensitivity,this.motionBlurEnabled=a.motionBlur,this.forcedPixelRatio=x(a.pixelRatio)?a.pixelRatio:null,this.motionBlur=a.motionBlur,this.motionBlurOpacity=a.motionBlurOpacity,this.motionBlurTransparency=1-this.motionBlurOpacity,this.motionBlurPxRatio=1,this.mbPxRBlurry=1,this.minMbLowQualFrames=4,this.fullQualityMb=!1,this.clearedForMotionBlur=[],this.desktopTapThreshold=a.desktopTapThreshold,this.desktopTapThreshold2=a.desktopTapThreshold*a.desktopTapThreshold,this.touchTapThreshold=a.touchTapThreshold,this.touchTapThreshold2=a.touchTapThreshold*a.touchTapThreshold,this.tapholdDuration=500,this.bindings=[],this.beforeRenderCallbacks=[],this.beforeRenderPriorities={animations:400,eleCalcs:300,eleTxrDeq:200,lyrTxrDeq:150,lyrTxrSkip:100},this.registerNodeShapes(),this.registerArrowShapes(),this.registerCalculationListeners()},i$.notify=function(a,b){var c=this.cy;if(!this.destroyed){if("init"===a)return void this.load();if("destroy"===a)return void this.destroy();("add"===a||"remove"===a||"move"===a&&c.hasCompoundNodes()||"load"===a||"zorder"===a||"mount"===a)&&this.invalidateCachedZSortedEles(),"viewport"===a&&this.redrawHint("select",!0),"gc"===a&&this.redrawHint("gc",!0),("load"===a||"resize"===a||"mount"===a)&&(this.invalidateContainerClientCoordsCache(),this.matchCanvasSize(this.container)),this.redrawHint("eles",!0),this.redrawHint("drag",!0),this.startRenderLoop(),this.redraw()}},i$.destroy=function(){this.destroyed=!0,this.cy.stopAnimationLoop();for(var a=0;a<this.bindings.length;a++){var b=this.bindings[a],c=b.target;(c.off||c.removeEventListener).apply(c,b.args)}if(this.bindings=[],this.beforeRenderCallbacks=[],this.onUpdateEleCalcsFns=[],this.removeObserver&&this.removeObserver.disconnect(),this.styleObserver&&this.styleObserver.disconnect(),this.resizeObserver&&this.resizeObserver.disconnect(),this.labelCalcDiv)try{document.body.removeChild(this.labelCalcDiv)}catch(a){}},i$.isHeadless=function(){return!1},[fU,iT,iU,iV,iW,iX].forEach(function(a){S(i$,a)});var i_=1e3/60,i0=function(a){return function(){var b=this,c=this.renderer;if(!b.dequeueingSetup){b.dequeueingSetup=!0;var d=af(function(){c.redrawHint("eles",!0),c.redrawHint("drag",!0),c.redraw()},a.deqRedrawThreshold),e=a.priority||az;c.beforeRender(function(e,f){var g=ag(),h=c.averageRedrawTime,i=c.lastRedrawTime,j=[],k=c.cy.extent(),l=c.getPixelRatio();for(e||c.flushRenderedStyleQueue();;){var n=ag(),o=n-g,p=n-f;if(i<i_){var q=i_-(e?h:0);if(p>=a.deqFastCost*q)break}else if(e){if(o>=a.deqCost*i||o>=a.deqAvgCost*h)break}else if(p>=a.deqNoDrawCost*i_)break;var r=a.deq(b,l,k);if(r.length>0)for(var s=0;s<r.length;s++)j.push(r[s]);else break}j.length>0&&(a.onDeqd(b,j),!e&&a.shouldRedraw(b,j,l,k)&&d())},e(b))}}},i1=f(function a(b){var c=arguments.length>1&&void 0!==arguments[1]?arguments[1]:ax;e(this,a),this.idsByKey=new aO,this.keyForId=new aO,this.cachesByLvl=new aO,this.lvls=[],this.getKey=b,this.doesEleInvalidateKey=c},[{key:"getIdsFor",value:function(a){null==a&&aA("Can not get id list for null key");var b=this.idsByKey,c=this.idsByKey.get(a);return c||(c=new aQ,b.set(a,c)),c}},{key:"addIdForKey",value:function(a,b){null!=a&&this.getIdsFor(a).add(b)}},{key:"deleteIdForKey",value:function(a,b){null!=a&&this.getIdsFor(a).delete(b)}},{key:"getNumberOfIdsForKey",value:function(a){return null==a?0:this.getIdsFor(a).size}},{key:"updateKeyMappingFor",value:function(a){var b=a.id(),c=this.keyForId.get(b),d=this.getKey(a);this.deleteIdForKey(c,b),this.addIdForKey(d,b),this.keyForId.set(b,d)}},{key:"deleteKeyMappingFor",value:function(a){var b=a.id(),c=this.keyForId.get(b);this.deleteIdForKey(c,b),this.keyForId.delete(b)}},{key:"keyHasChangedFor",value:function(a){var b=a.id();return this.keyForId.get(b)!==this.getKey(a)}},{key:"isInvalid",value:function(a){return this.keyHasChangedFor(a)||this.doesEleInvalidateKey(a)}},{key:"getCachesAt",value:function(a){var b=this.cachesByLvl,c=this.lvls,d=b.get(a);return d||(d=new aO,b.set(a,d),c.push(a)),d}},{key:"getCache",value:function(a,b){return this.getCachesAt(b).get(a)}},{key:"get",value:function(a,b){var c=this.getKey(a),d=this.getCache(c,b);return null!=d&&this.updateKeyMappingFor(a),d}},{key:"getForCachedKey",value:function(a,b){var c=this.keyForId.get(a.id());return this.getCache(c,b)}},{key:"hasCache",value:function(a,b){return this.getCachesAt(b).has(a)}},{key:"has",value:function(a,b){var c=this.getKey(a);return this.hasCache(c,b)}},{key:"setCache",value:function(a,b,c){c.key=a,this.getCachesAt(b).set(a,c)}},{key:"set",value:function(a,b,c){var d=this.getKey(a);this.setCache(d,b,c),this.updateKeyMappingFor(a)}},{key:"deleteCache",value:function(a,b){this.getCachesAt(b).delete(a)}},{key:"delete",value:function(a,b){var c=this.getKey(a);this.deleteCache(c,b)}},{key:"invalidateKey",value:function(a){var b=this;this.lvls.forEach(function(c){return b.deleteCache(a,c)})}},{key:"invalidate",value:function(a){var b=a.id(),c=this.keyForId.get(b);this.deleteKeyMappingFor(a);var d=this.doesEleInvalidateKey(a);return d&&this.invalidateKey(c),d||0===this.getNumberOfIdsForKey(c)}}]),i2={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},i3=aH({getKey:null,doesEleInvalidateKey:ax,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:aw,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),i4=function(a,b){this.renderer=a,this.onDequeues=[];var c=i3(b);S(this,c),this.lookup=new i1(c.getKey,c.doesEleInvalidateKey),this.setupDequeueing()},i5=i4.prototype;i5.reasons=i2,i5.getTextureQueue=function(a){return this.eleImgCaches=this.eleImgCaches||{},this.eleImgCaches[a]=this.eleImgCaches[a]||[]},i5.getRetiredTextureQueue=function(a){var b=this.eleImgCaches.retired=this.eleImgCaches.retired||{};return b[a]=b[a]||[]},i5.getElementQueue=function(){return this.eleCacheQueue=this.eleCacheQueue||new aW(function(a,b){return b.reqs-a.reqs})},i5.getElementKeyToQueue=function(){return this.eleKeyToCacheQueue=this.eleKeyToCacheQueue||{}},i5.getElement=function(a,b,c,d,e){var f,g,h,i=this,j=this.renderer,k=j.cy.zoom(),l=this.lookup;if(!b||0===b.w||0===b.h||isNaN(b.w)||isNaN(b.h)||!a.visible()||a.removed()||!i.allowEdgeTxrCaching&&a.isEdge()||!i.allowParentTxrCaching&&a.isParent())return null;if(null==d&&(d=Math.ceil(ba(k*c))),d<-4)d=-4;else if(k>=7.99||d>3)return null;var n=Math.pow(2,d),o=b.h*n,p=b.w*n,q=j.eleTextBiggerThanMin(a,n);if(!this.isVisible(a,q))return null;var r=l.get(a,d);if(r&&r.invalidated&&(r.invalidated=!1,r.texture.invalidatedWidth-=r.width),r)return r;if(f=o<=25?25:o<=50?50:50*Math.ceil(o/50),o>1024||p>1024)return null;var s=i.getTextureQueue(f),t=s[s.length-2],u=function(){return i.recycleTexture(f,p)||i.addTexture(f,p)};t||(t=s[s.length-1]),t||(t=u()),t.width-t.usedWidth<p&&(t=u());for(var v=function(a){return a&&a.scaledLabelShown===q},w=e&&e===i2.dequeue,x=e&&e===i2.highQuality,y=e&&e===i2.downscale,z=d+1;z<=3;z++){var A=l.get(a,z);if(A){g=A;break}}var B=g&&g.level===d+1?g:null,C=function(){t.context.drawImage(B.texture.canvas,B.x,0,B.width,B.height,t.usedWidth,0,p,o)};if(t.context.setTransform(1,0,0,1,0,0),t.context.clearRect(t.usedWidth,0,p,f),v(B))C();else if(v(g))if(!x)return i.queueElement(a,g.level-1),g;else{for(var D=g.level;D>d;D--)B=i.getElement(a,b,c,D,i2.downscale);C()}else{if(!w&&!x&&!y)for(var E=d-1;E>=-4;E--){var F=l.get(a,E);if(F){h=F;break}}if(v(h))return i.queueElement(a,d),h;t.context.translate(t.usedWidth,0),t.context.scale(n,n),this.drawElement(t.context,a,b,q,!1),t.context.scale(1/n,1/n),t.context.translate(-t.usedWidth,0)}return r={x:t.usedWidth,texture:t,level:d,scale:n,width:p,height:o,scaledLabelShown:q},t.usedWidth+=Math.ceil(p+8),t.eleCaches.push(r),l.set(a,d,r),i.checkTextureFullness(t),r},i5.invalidateElements=function(a){for(var b=0;b<a.length;b++)this.invalidateElement(a[b])},i5.invalidateElement=function(a){var b=this.lookup,c=[];if(b.isInvalid(a)){for(var d=-4;d<=3;d++){var e=b.getForCachedKey(a,d);e&&c.push(e)}if(b.invalidate(a))for(var f=0;f<c.length;f++){var g=c[f],h=g.texture;h.invalidatedWidth+=g.width,g.invalidated=!0,this.checkTextureUtility(h)}this.removeFromQueue(a)}},i5.checkTextureUtility=function(a){a.invalidatedWidth>=.2*a.width&&this.retireTexture(a)},i5.checkTextureFullness=function(a){var b=this.getTextureQueue(a.height);a.usedWidth/a.width>.8&&a.fullnessChecks>=10?aI(b,a):a.fullnessChecks++},i5.retireTexture=function(a){var b=a.height,c=this.getTextureQueue(b),d=this.lookup;aI(c,a),a.retired=!0;for(var e=a.eleCaches,f=0;f<e.length;f++){var g=e[f];d.deleteCache(g.key,g.level)}aJ(e),this.getRetiredTextureQueue(b).push(a)},i5.addTexture=function(a,b){var c=this.getTextureQueue(a),d={};return c.push(d),d.eleCaches=[],d.height=a,d.width=Math.max(1024,b),d.usedWidth=0,d.invalidatedWidth=0,d.fullnessChecks=0,d.canvas=this.renderer.makeOffscreenCanvas(d.width,d.height),d.context=d.canvas.getContext("2d"),d},i5.recycleTexture=function(a,b){for(var c=this.getTextureQueue(a),d=this.getRetiredTextureQueue(a),e=0;e<d.length;e++){var f=d[e];if(f.width>=b)return f.retired=!1,f.usedWidth=0,f.invalidatedWidth=0,f.fullnessChecks=0,aJ(f.eleCaches),f.context.setTransform(1,0,0,1,0,0),f.context.clearRect(0,0,f.width,f.height),aI(d,f),c.push(f),f}},i5.queueElement=function(a,b){var c=this.getElementQueue(),d=this.getElementKeyToQueue(),e=this.getKey(a),f=d[e];if(f)f.level=Math.max(f.level,b),f.eles.merge(a),f.reqs++,c.updateItem(f);else{var g={eles:a.spawn().merge(a),level:b,reqs:1,key:e};c.push(g),d[e]=g}},i5.dequeue=function(a){for(var b=this.getElementQueue(),c=this.getElementKeyToQueue(),d=[],e=this.lookup,f=0;f<1;f++)if(b.size()>0){var g=b.pop(),h=g.key,i=g.eles[0],j=e.hasCache(i,g.level);if(c[h]=null,j)continue;d.push(g);var k=this.getBoundingBox(i);this.getElement(i,k,a,g.level,i2.dequeue)}else break;return d},i5.removeFromQueue=function(a){var b=this.getElementQueue(),c=this.getElementKeyToQueue(),d=this.getKey(a),e=c[d];null!=e&&(1===e.eles.length?(e.reqs=av,b.updateItem(e),b.pop(),c[d]=null):e.eles.unmerge(a))},i5.onDequeue=function(a){this.onDequeues.push(a)},i5.offDequeue=function(a){aI(this.onDequeues,a)},i5.setupDequeueing=i0({deqRedrawThreshold:100,deqCost:.15,deqAvgCost:.1,deqNoDrawCost:.9,deqFastCost:.9,deq:function(a,b,c){return a.dequeue(b,c)},onDeqd:function(a,b){for(var c=0;c<a.onDequeues.length;c++)(0,a.onDequeues[c])(b)},shouldRedraw:function(a,b,c,d){for(var e=0;e<b.length;e++)for(var f=b[e].eles,g=0;g<f.length;g++)if(bq(f[g].boundingBox(),d))return!0;return!1},priority:function(a){return a.renderer.beforeRenderPriorities.eleTxrDeq}});var i6=function(a){var b=this,c=b.renderer=a,d=c.cy;b.layersByLevel={},b.firstGet=!0,b.lastInvalidationTime=ag()-500,b.skipping=!1,b.eleTxrDeqs=d.collection(),b.scheduleElementRefinement=af(function(){b.refineElementTextures(b.eleTxrDeqs),b.eleTxrDeqs.unmerge(b.eleTxrDeqs)},50),c.beforeRender(function(a,c){c-b.lastInvalidationTime<=250?b.skipping=!0:b.skipping=!1},c.beforeRenderPriorities.lyrTxrSkip),b.layersQueue=new aW(function(a,b){return b.reqs-a.reqs}),b.setupDequeueing()},i7=i6.prototype,i8=0;i7.makeLayer=function(a,b){var c=Math.pow(2,b),d=Math.ceil(a.w*c),e=Math.ceil(a.h*c),f=this.renderer.makeOffscreenCanvas(d,e),g={id:i8=++i8%0x1fffffffffffff,bb:a,level:b,width:d,height:e,canvas:f,context:f.getContext("2d"),eles:[],elesQueue:[],reqs:0},h=g.context,i=-g.bb.x1,j=-g.bb.y1;return h.scale(c,c),h.translate(i,j),g},i7.getLayers=function(a,b,c){var d,e,f=this,g=f.renderer.cy.zoom(),h=f.firstGet;if(f.firstGet=!1,null==c){if((c=Math.ceil(ba(g*b)))<-4)c=-4;else if(g>=3.99||c>2)return null}f.validateLayersElesOrdering(c,a);var i=f.layersByLevel,j=Math.pow(2,c),k=i[c]=i[c]||[];if(f.levelIsComplete(c,a))return k;var l=function(b){if(f.validateLayersElesOrdering(b,a),f.levelIsComplete(b,a))return e=i[b],!0},n=function(a){if(!e)for(var b=c+a;-4<=b&&b<=2&&!l(b);b+=a);};n(1),n(-1);for(var o=k.length-1;o>=0;o--){var p=k[o];p.invalid&&aI(k,p)}var q=function(){if(!d){d=bj();for(var b=0;b<a.length;b++)bl(d,a[b].boundingBox())}return d};if(f.skipping&&!h)return null;for(var r=null,s=a.length/1,t=!h,u=0;u<a.length;u++){var v=a[u],w=v._private.rscratch,x=w.imgLayerCaches=w.imgLayerCaches||{},y=x[c];if(y){r=y;continue}if((!r||r.eles.length>=s||!bt(r.bb,v.boundingBox()))&&!(r=function(a){var b=(a=a||{}).after;q();var e=Math.ceil(d.w*j),g=Math.ceil(d.h*j);if(e>32767||g>32767||e*g>16e6)return null;var h=f.makeLayer(d,c);if(null!=b){var i=k.indexOf(b)+1;k.splice(i,0,h)}else(void 0===a.insert||a.insert)&&k.unshift(h);return h}({insert:!0,after:r})))return null;e||t?f.queueLayer(r,v):f.drawEleInLayer(r,v,c,b),r.eles.push(v),x[c]=r}return e||(t?null:k)},i7.getEleLevelForLayerLevel=function(a,b){return a},i7.drawEleInLayer=function(a,b,c,d){var e=this.renderer,f=a.context,g=b.boundingBox();0!==g.w&&0!==g.h&&b.visible()&&(c=this.getEleLevelForLayerLevel(c,d),e.setImgSmoothing(f,!1),e.drawCachedElement(f,b,null,null,c,!0),e.setImgSmoothing(f,!0))},i7.levelIsComplete=function(a,b){var c=this.layersByLevel[a];if(!c||0===c.length)return!1;for(var d=0,e=0;e<c.length;e++){var f=c[e];if(f.reqs>0||f.invalid)return!1;d+=f.eles.length}return d===b.length},i7.validateLayersElesOrdering=function(a,b){var c=this.layersByLevel[a];if(c)for(var d=0;d<c.length;d++){for(var e=c[d],f=-1,g=0;g<b.length;g++)if(e.eles[0]===b[g]){f=g;break}if(f<0){this.invalidateLayer(e);continue}for(var h=f,g=0;g<e.eles.length;g++)if(e.eles[g]!==b[h+g]){this.invalidateLayer(e);break}}},i7.updateElementsInLayers=function(a,b){for(var c=A(a[0]),d=0;d<a.length;d++)for(var e=c?null:a[d],f=c?a[d]:a[d].ele,g=f._private.rscratch,h=g.imgLayerCaches=g.imgLayerCaches||{},i=-4;i<=2;i++){var j=h[i];j&&(e&&this.getEleLevelForLayerLevel(j.level)!==e.level||b(j,f,e))}},i7.haveLayers=function(){for(var a=!1,b=-4;b<=2;b++){var c=this.layersByLevel[b];if(c&&c.length>0){a=!0;break}}return a},i7.invalidateElements=function(a){var b=this;0===a.length||(b.lastInvalidationTime=ag(),0!==a.length&&b.haveLayers()&&b.updateElementsInLayers(a,function(a,c,d){b.invalidateLayer(a)}))},i7.invalidateLayer=function(a){if(this.lastInvalidationTime=ag(),!a.invalid){var b=a.level,c=a.eles;aI(this.layersByLevel[b],a),a.elesQueue=[],a.invalid=!0,a.replacement&&(a.replacement.invalid=!0);for(var d=0;d<c.length;d++){var e=c[d]._private.rscratch.imgLayerCaches;e&&(e[b]=null)}}},i7.refineElementTextures=function(a){var b=this;b.updateElementsInLayers(a,function(a,c,d){var e=a.replacement;if(e||((e=a.replacement=b.makeLayer(a.bb,a.level)).replaces=a,e.eles=a.eles),!e.reqs)for(var f=0;f<e.eles.length;f++)b.queueLayer(e,e.eles[f])})},i7.enqueueElementRefinement=function(a){this.eleTxrDeqs.merge(a),this.scheduleElementRefinement()},i7.queueLayer=function(a,b){var c=this.layersQueue,d=a.elesQueue,e=d.hasId=d.hasId||{};if(!a.replacement){if(b){if(e[b.id()])return;d.push(b),e[b.id()]=!0}a.reqs?(a.reqs++,c.updateItem(a)):(a.reqs=1,c.push(a))}},i7.dequeue=function(a){for(var b=this.layersQueue,c=[],d=0;d<1&&0!==b.size();){var e=b.peek();if(e.replacement||e.replaces&&e!==e.replaces.replacement||e.invalid){b.pop();continue}var f=e.elesQueue.shift();f&&(this.drawEleInLayer(e,f,e.level,a),d++),0===c.length&&c.push(!0),0===e.elesQueue.length&&(b.pop(),e.reqs=0,e.replaces&&this.applyLayerReplacement(e),this.requestRedraw())}return c},i7.applyLayerReplacement=function(a){var b=this.layersByLevel[a.level],c=a.replaces,d=b.indexOf(c);if(!(d<0)&&!c.invalid){b[d]=a;for(var e=0;e<a.eles.length;e++){var f=a.eles[e]._private,g=f.imgLayerCaches=f.imgLayerCaches||{};g&&(g[a.level]=a)}this.requestRedraw()}},i7.requestRedraw=af(function(){var a=this.renderer;a.redrawHint("eles",!0),a.redrawHint("drag",!0),a.redraw()},100),i7.setupDequeueing=i0({deqRedrawThreshold:50,deqCost:.15,deqAvgCost:.1,deqNoDrawCost:.9,deqFastCost:.9,deq:function(a,b){return a.dequeue(b)},onDeqd:az,shouldRedraw:aw,priority:function(a){return a.renderer.beforeRenderPriorities.lyrTxrDeq}});var i9={};function ja(a,b){for(var c=0;c<b.length;c++){var d=b[c];a.lineTo(d.x,d.y)}}function jb(a,b,c){for(var d,e=0;e<b.length;e++){var f=b[e];0===e&&(d=f),a.lineTo(f.x,f.y)}a.quadraticCurveTo(c.x,c.y,d.x,d.y)}function jc(a,b,c){a.beginPath&&a.beginPath();for(var d=0;d<b.length;d++){var e=b[d];a.lineTo(e.x,e.y)}var f=c[0];a.moveTo(f.x,f.y);for(var d=1;d<c.length;d++){var e=c[d];a.lineTo(e.x,e.y)}a.closePath&&a.closePath()}function jd(a,b,c,d,e){a.beginPath&&a.beginPath(),a.arc(c,d,e,0,2*Math.PI,!1);var f=b[0];a.moveTo(f.x,f.y);for(var g=0;g<b.length;g++){var h=b[g];a.lineTo(h.x,h.y)}a.closePath&&a.closePath()}function je(a,b,c,d){a.arc(b,c,d,0,2*Math.PI,!1)}i9.arrowShapeImpl=function(a){return(f0||(f0={polygon:ja,"triangle-backcurve":jb,"triangle-tee":jc,"circle-triangle":jd,"triangle-cross":jc,circle:je}))[a]};var jf={};jf.drawElement=function(a,b,c,d,e,f){b.isNode()?this.drawNode(a,b,c,d,e,f):this.drawEdge(a,b,c,d,e,f)},jf.drawElementOverlay=function(a,b){b.isNode()?this.drawNodeOverlay(a,b):this.drawEdgeOverlay(a,b)},jf.drawElementUnderlay=function(a,b){b.isNode()?this.drawNodeUnderlay(a,b):this.drawEdgeUnderlay(a,b)},jf.drawCachedElementPortion=function(a,b,c,d,e,f,g,h){var i=c.getBoundingBox(b);if(0!==i.w&&0!==i.h){var j=c.getElement(b,i,d,e,f);if(null!=j){var k,l,n,o,p,q,r=h(this,b);if(0===r)return;var s=g(this,b),t=i.x1,u=i.y1,v=i.w,w=i.h;if(0!==s){var x=c.getRotationPoint(b);n=x.x,o=x.y,a.translate(n,o),a.rotate(s),(p=this.getImgSmoothing(a))||this.setImgSmoothing(a,!0);var y=c.getRotationOffset(b);k=y.x,l=y.y}else k=t,l=u;1!==r&&(q=a.globalAlpha,a.globalAlpha=q*r),a.drawImage(j.texture.canvas,j.x,0,j.width,j.height,k,l,v,w),1!==r&&(a.globalAlpha=q),0!==s&&(a.rotate(-s),a.translate(-n,-o),p||this.setImgSmoothing(a,!1))}else c.drawElement(a,b)}};var jg=function(){return 0},jh=function(a,b){return a.getTextAngle(b,null)},ji=function(a,b){return a.getTextAngle(b,"source")},jj=function(a,b){return a.getTextAngle(b,"target")},jk=function(a,b){return b.effectiveOpacity()},jl=function(a,b){return b.pstyle("text-opacity").pfValue*b.effectiveOpacity()};jf.drawCachedElement=function(a,b,c,d,e,f){var g=this.data,h=g.eleTxrCache,i=g.lblTxrCache,j=g.slbTxrCache,k=g.tlbTxrCache,l=b.boundingBox(),n=!0===f?h.reasons.highQuality:null;if(0!==l.w&&0!==l.h&&b.visible()&&(!d||bq(l,d))){var o=b.isEdge(),p=b.element()._private.rscratch.badLine;this.drawElementUnderlay(a,b),this.drawCachedElementPortion(a,b,h,c,e,n,jg,jk),o&&p||this.drawCachedElementPortion(a,b,i,c,e,n,jh,jl),o&&!p&&(this.drawCachedElementPortion(a,b,j,c,e,n,ji,jl),this.drawCachedElementPortion(a,b,k,c,e,n,jj,jl)),this.drawElementOverlay(a,b)}},jf.drawElements=function(a,b){for(var c=0;c<b.length;c++){var d=b[c];this.drawElement(a,d)}},jf.drawCachedElements=function(a,b,c,d){for(var e=0;e<b.length;e++){var f=b[e];this.drawCachedElement(a,f,c,d)}},jf.drawCachedNodes=function(a,b,c,d){for(var e=0;e<b.length;e++){var f=b[e];f.isNode()&&this.drawCachedElement(a,f,c,d)}},jf.drawLayeredElements=function(a,b,c,d){var e=this.data.lyrTxrCache.getLayers(b,c);if(e)for(var f=0;f<e.length;f++){var g=e[f],h=g.bb;0!==h.w&&0!==h.h&&a.drawImage(g.canvas,h.x1,h.y1,h.w,h.h)}else this.drawCachedElements(a,b,c,d)};var jm={};jm.drawEdge=function(a,b,c){var d,e=!(arguments.length>3)||void 0===arguments[3]||arguments[3],f=!(arguments.length>4)||void 0===arguments[4]||arguments[4],g=!(arguments.length>5)||void 0===arguments[5]||arguments[5],h=this,i=b._private.rscratch;if((!g||b.visible())&&!(i.badLine||null==i.allpts||isNaN(i.allpts[0]))){c&&(d=c,a.translate(-d.x1,-d.y1));var j=g?b.pstyle("opacity").value:1,k=g?b.pstyle("line-opacity").value:1,l=b.pstyle("curve-style").value,n=b.pstyle("line-style").value,o=b.pstyle("width").pfValue,p=b.pstyle("line-cap").value,q=b.pstyle("line-outline-width").value,r=b.pstyle("line-outline-color").value,s=j*k,t=j*k,u=function(){var c=arguments.length>0&&void 0!==arguments[0]?arguments[0]:s;"straight-triangle"===l?(h.eleStrokeStyle(a,b,c),h.drawEdgeTrianglePath(b,a,i.allpts)):(a.lineWidth=o,a.lineCap=p,h.eleStrokeStyle(a,b,c),h.drawEdgePath(b,a,i.allpts,n),a.lineCap="butt")},v=function(){var c=arguments.length>0&&void 0!==arguments[0]?arguments[0]:t;h.drawArrowheads(a,b,c)};if(a.lineJoin="round","yes"===b.pstyle("ghost").value){var w=b.pstyle("ghost-offset-x").pfValue,x=b.pstyle("ghost-offset-y").pfValue,y=s*b.pstyle("ghost-opacity").value;a.translate(w,x),u(y),v(y),a.translate(-w,-x)}else!function(){var c=arguments.length>0&&void 0!==arguments[0]?arguments[0]:s;if(a.lineWidth=o+q,a.lineCap=p,q>0)h.colorStrokeStyle(a,r[0],r[1],r[2],c);else{a.lineCap="butt";return}"straight-triangle"===l?h.drawEdgeTrianglePath(b,a,i.allpts):(h.drawEdgePath(b,a,i.allpts,n),a.lineCap="butt")}();f&&h.drawEdgeUnderlay(a,b),u(),v(),f&&h.drawEdgeOverlay(a,b),h.drawElementText(a,b,null,e),c&&a.translate(d.x1,d.y1)}};var jn=function(a){if(!["overlay","underlay"].includes(a))throw Error("Invalid state");return function(b,c){if(c.visible()){var d=c.pstyle("".concat(a,"-opacity")).value;if(0!==d){var e=this.usePaths(),f=c._private.rscratch,g=c.pstyle("".concat(a,"-padding")).pfValue,h=c.pstyle("".concat(a,"-color")).value;b.lineWidth=2*g,"self"!==f.edgeType||e?b.lineCap="round":b.lineCap="butt",this.colorStrokeStyle(b,h[0],h[1],h[2],d),this.drawEdgePath(c,b,f.allpts,"solid")}}}};jm.drawEdgeOverlay=jn("overlay"),jm.drawEdgeUnderlay=jn("underlay"),jm.drawEdgePath=function(a,b,c,d){var e=a._private.rscratch,f=b,h=!1,i=this.usePaths(),j=a.pstyle("line-dash-pattern").pfValue,k=a.pstyle("line-dash-offset").pfValue;if(i){var l=c.join("$");e.pathCacheKey&&e.pathCacheKey===l?(p=b=e.pathCache,h=!0):(p=b=new Path2D,e.pathCacheKey=l,e.pathCache=p)}if(f.setLineDash)switch(d){case"dotted":f.setLineDash([1,1]);break;case"dashed":f.setLineDash(j),f.lineDashOffset=k;break;case"solid":f.setLineDash([])}if(!h&&!e.badLine)switch(b.beginPath&&b.beginPath(),b.moveTo(c[0],c[1]),e.edgeType){case"bezier":case"self":case"compound":case"multibezier":for(var n=2;n+3<c.length;n+=4)b.quadraticCurveTo(c[n],c[n+1],c[n+2],c[n+3]);break;case"straight":case"haystack":for(var o=2;o+1<c.length;o+=2)b.lineTo(c[o],c[o+1]);break;case"segments":if(e.isRound){var p,q,r=g(e.roundCorners);try{for(r.s();!(q=r.n()).done;){var s=q.value;iE(b,s)}}catch(a){r.e(a)}finally{r.f()}b.lineTo(c[c.length-2],c[c.length-1])}else for(var t=2;t+1<c.length;t+=2)b.lineTo(c[t],c[t+1])}b=f,i?b.stroke(p):b.stroke(),b.setLineDash&&b.setLineDash([])},jm.drawEdgeTrianglePath=function(a,b,c){b.fillStyle=b.strokeStyle;for(var d=a.pstyle("width").pfValue,e=0;e+1<c.length;e+=2){var f=[c[e+2]-c[e],c[e+3]-c[e+1]],g=Math.sqrt(f[0]*f[0]+f[1]*f[1]),h=[f[1]/g,-f[0]/g],i=[h[0]*d/2,h[1]*d/2];b.beginPath(),b.moveTo(c[e]-i[0],c[e+1]-i[1]),b.lineTo(c[e]+i[0],c[e+1]+i[1]),b.lineTo(c[e+2],c[e+3]),b.closePath(),b.fill()}},jm.drawArrowheads=function(a,b,c){var d=b._private.rscratch,e="haystack"===d.edgeType;e||this.drawArrowhead(a,b,"source",d.arrowStartX,d.arrowStartY,d.srcArrowAngle,c),this.drawArrowhead(a,b,"mid-target",d.midX,d.midY,d.midtgtArrowAngle,c),this.drawArrowhead(a,b,"mid-source",d.midX,d.midY,d.midsrcArrowAngle,c),e||this.drawArrowhead(a,b,"target",d.arrowEndX,d.arrowEndY,d.tgtArrowAngle,c)},jm.drawArrowhead=function(a,b,c,d,e,f,g){if(!(isNaN(d)||null==d||isNaN(e)||null==e||isNaN(f))&&null!=f){var h=b.pstyle(c+"-arrow-shape").value;if("none"!==h){var i="hollow"===b.pstyle(c+"-arrow-fill").value?"both":"filled",j=b.pstyle(c+"-arrow-fill").value,k=b.pstyle("width").pfValue,l=b.pstyle(c+"-arrow-width"),n="match-line"===l.value?k:l.pfValue;"%"===l.units&&(n*=k);var o=b.pstyle("opacity").value;void 0===g&&(g=o);var p=a.globalCompositeOperation;(1!==g||"hollow"===j)&&(a.globalCompositeOperation="destination-out",this.colorFillStyle(a,255,255,255,1),this.colorStrokeStyle(a,255,255,255,1),this.drawArrowShape(b,a,i,k,h,n,d,e,f),a.globalCompositeOperation=p);var q=b.pstyle(c+"-arrow-color").value;this.colorFillStyle(a,q[0],q[1],q[2],g),this.colorStrokeStyle(a,q[0],q[1],q[2],g),this.drawArrowShape(b,a,j,k,h,n,d,e,f)}}},jm.drawArrowShape=function(a,b,c,d,e,f,g,h,i){var j,k=this.usePaths()&&"triangle-cross"!==e,l=!1,n=b,o=a.pstyle("arrow-scale").value,p=this.getArrowWidth(d,o),q=this.arrowShapes[e];if(k){var r=this.arrowPathCache=this.arrowPathCache||[],s=ap(e),t=r[s];null!=t?(j=b=t,l=!0):(j=b=new Path2D,r[s]=j)}!l&&(b.beginPath&&b.beginPath(),k?q.draw(b,1,0,{x:0,y:0},1):q.draw(b,p,i,{x:g,y:h},d),b.closePath&&b.closePath()),b=n,k&&(b.translate(g,h),b.rotate(i),b.scale(p,p)),("filled"===c||"both"===c)&&(k?b.fill(j):b.fill()),("hollow"===c||"both"===c)&&(b.lineWidth=f/(k?p:1),b.lineJoin="miter",k?b.stroke(j):b.stroke()),k&&(b.scale(1/p,1/p),b.rotate(-i),b.translate(-g,-h))};var jo={};jo.safeDrawImage=function(a,b,c,d,e,f,g,h,i,j){if(!(e<=0)&&!(f<=0)&&!(i<=0)&&!(j<=0))try{a.drawImage(b,c,d,e,f,g,h,i,j)}catch(a){aC(a)}},jo.drawInscribedImage=function(a,b,c,d,e){var f=c.position(),g=f.x,h=f.y,i=c.cy().style(),j=i.getIndexedStyle.bind(i),k=j(c,"background-fit","value",d),l=j(c,"background-repeat","value",d),n=c.width(),o=c.height(),p=2*c.padding(),q=n+("inner"===j(c,"background-width-relative-to","value",d)?0:p),r=o+("inner"===j(c,"background-height-relative-to","value",d)?0:p),s=c._private.rscratch,t="node"===j(c,"background-clip","value",d),u=j(c,"background-image-opacity","value",d)*e,v=j(c,"background-image-smoothing","value",d),w=c.pstyle("corner-radius").value;"auto"!==w&&(w=c.pstyle("corner-radius").pfValue);var x=b.width||b.cachedW,y=b.height||b.cachedH;(null==x||null==y)&&(document.body.appendChild(b),x=b.cachedW=b.width||b.offsetWidth,y=b.cachedH=b.height||b.offsetHeight,document.body.removeChild(b));var z=x,A=y;if("auto"!==j(c,"background-width","value",d)&&(z="%"===j(c,"background-width","units",d)?j(c,"background-width","pfValue",d)*q:j(c,"background-width","pfValue",d)),"auto"!==j(c,"background-height","value",d)&&(A="%"===j(c,"background-height","units",d)?j(c,"background-height","pfValue",d)*r:j(c,"background-height","pfValue",d)),0!==z&&0!==A){if("contain"===k){var B=Math.min(q/z,r/A);z*=B,A*=B}else if("cover"===k){var B=Math.max(q/z,r/A);z*=B,A*=B}var C=g-q/2,D=j(c,"background-position-x","units",d),E=j(c,"background-position-x","pfValue",d);"%"===D?C+=(q-z)*E:C+=E;var F=j(c,"background-offset-x","units",d),G=j(c,"background-offset-x","pfValue",d);"%"===F?C+=(q-z)*G:C+=G;var H=h-r/2,I=j(c,"background-position-y","units",d),J=j(c,"background-position-y","pfValue",d);"%"===I?H+=(r-A)*J:H+=J;var K=j(c,"background-offset-y","units",d),L=j(c,"background-offset-y","pfValue",d);"%"===K?H+=(r-A)*L:H+=L,s.pathCache&&(C-=g,H-=h,g=0,h=0);var M=a.globalAlpha;a.globalAlpha=u;var N=this.getImgSmoothing(a),O=!1;if("no"===v&&N?(this.setImgSmoothing(a,!1),O=!0):"yes"!==v||N||(this.setImgSmoothing(a,!0),O=!0),"no-repeat"===l)t&&(a.save(),s.pathCache?a.clip(s.pathCache):(this.nodeShapes[this.getNodeShape(c)].draw(a,g,h,q,r,w,s),a.clip())),this.safeDrawImage(a,b,0,0,x,y,C,H,z,A),t&&a.restore();else{var P=a.createPattern(b,l);a.fillStyle=P,this.nodeShapes[this.getNodeShape(c)].draw(a,g,h,q,r,w,s),a.translate(C,H),a.fill(),a.translate(-C,-H)}a.globalAlpha=M,O&&this.setImgSmoothing(a,N)}};var jp={};function jq(a,b,c,d,e){var f=arguments.length>5&&void 0!==arguments[5]?arguments[5]:5,g=Math.min(f,d/2,e/2);a.beginPath(),a.moveTo(b+g,c),a.lineTo(b+d-g,c),a.quadraticCurveTo(b+d,c,b+d,c+g),a.lineTo(b+d,c+e-g),a.quadraticCurveTo(b+d,c+e,b+d-g,c+e),a.lineTo(b+g,c+e),a.quadraticCurveTo(b,c+e,b,c+e-g),a.lineTo(b,c+g),a.quadraticCurveTo(b,c,b+g,c),a.closePath()}jp.eleTextBiggerThanMin=function(a,b){return b||(b=Math.pow(2,Math.ceil(ba(a.cy().zoom()*this.getPixelRatio())))),!(a.pstyle("font-size").pfValue*b<a.pstyle("min-zoomed-font-size").pfValue)},jp.drawElementText=function(a,b,c,d,e){var f,g=!(arguments.length>5)||void 0===arguments[5]||arguments[5];if(null==d){if(g&&!this.eleTextBiggerThanMin(b))return}else if(!1===d)return;if(b.isNode()){var h=b.pstyle("label");if(!h||!h.value)return;a.textAlign=this.getLabelJustification(b),a.textBaseline="bottom"}else{var i=b.element()._private.rscratch.badLine,j=b.pstyle("label"),k=b.pstyle("source-label"),l=b.pstyle("target-label");if(i||(!j||!j.value)&&(!k||!k.value)&&(!l||!l.value))return;a.textAlign="center",a.textBaseline="bottom"}var n=!c;c&&(f=c,a.translate(-f.x1,-f.y1)),null==e?(this.drawText(a,b,null,n,g),b.isEdge()&&(this.drawText(a,b,"source",n,g),this.drawText(a,b,"target",n,g))):this.drawText(a,b,e,n,g),c&&a.translate(f.x1,f.y1)},jp.getFontCache=function(a){var b;this.fontCaches=this.fontCaches||[];for(var c=0;c<this.fontCaches.length;c++)if((b=this.fontCaches[c]).context===a)return b;return b={context:a},this.fontCaches.push(b),b},jp.setupTextStyle=function(a,b){var c=!(arguments.length>2)||void 0===arguments[2]||arguments[2],d=b.pstyle("font-style").strValue,e=b.pstyle("font-size").pfValue+"px",f=b.pstyle("font-family").strValue,g=b.pstyle("font-weight").strValue,h=c?b.effectiveOpacity()*b.pstyle("text-opacity").value:1,i=b.pstyle("text-outline-opacity").value*h,j=b.pstyle("color").value,k=b.pstyle("text-outline-color").value;a.font=d+" "+g+" "+e+" "+f,a.lineJoin="round",this.colorFillStyle(a,j[0],j[1],j[2],h),this.colorStrokeStyle(a,k[0],k[1],k[2],i)},jp.getTextAngle=function(a,b){var c,d=a._private.rscratch,e=b?b+"-":"",f=a.pstyle(e+"text-rotation");if("autorotate"===f.strValue){var g=aL(d,"labelAngle",b);c=a.isEdge()?g:0}else c="none"===f.strValue?0:f.pfValue;return c},jp.drawText=function(a,b,c){var d=!(arguments.length>3)||void 0===arguments[3]||arguments[3],e=!(arguments.length>4)||void 0===arguments[4]||arguments[4],f=b._private.rscratch,g=e?b.effectiveOpacity():1;if(!e||0!==g&&0!==b.pstyle("text-opacity").value){"main"===c&&(c=null);var h=aL(f,"labelX",c),i=aL(f,"labelY",c),j=this.getLabelText(b,c);if(null!=j&&""!==j&&!isNaN(h)&&!isNaN(i)){this.setupTextStyle(a,b,e);var k,l,n,o=c?c+"-":"",p=aL(f,"labelWidth",c),q=aL(f,"labelHeight",c),r=b.pstyle(o+"text-margin-x").pfValue,s=b.pstyle(o+"text-margin-y").pfValue,t=b.isEdge(),u=b.pstyle("text-halign").value,v=b.pstyle("text-valign").value;switch(t&&(u="center",v="center"),h+=r,i+=s,0!==(n=d?this.getTextAngle(b,c):0)&&(k=h,l=i,a.translate(k,l),a.rotate(n),h=0,i=0),v){case"top":break;case"center":i+=q/2;break;case"bottom":i+=q}var w=b.pstyle("text-background-opacity").value,x=b.pstyle("text-border-opacity").value,y=b.pstyle("text-border-width").pfValue,z=b.pstyle("text-background-padding").pfValue,A=b.pstyle("text-background-shape").strValue,B="round-rectangle"===A||"roundrectangle"===A;if(w>0||y>0&&x>0){var C,D,E=a.fillStyle,F=a.strokeStyle,G=a.lineWidth,H=b.pstyle("text-background-color").value,I=b.pstyle("text-border-color").value,J=b.pstyle("text-border-style").value,K=w>0,L=y>0&&x>0,M=h-z;switch(u){case"left":M-=p;break;case"center":M-=p/2}var N=i-q-z,O=p+2*z,P=q+2*z;if(K&&(a.fillStyle="rgba(".concat(H[0],",").concat(H[1],",").concat(H[2],",").concat(w*g,")")),L&&(a.strokeStyle="rgba(".concat(I[0],",").concat(I[1],",").concat(I[2],",").concat(x*g,")"),a.lineWidth=y,a.setLineDash))switch(J){case"dotted":a.setLineDash([1,1]);break;case"dashed":a.setLineDash([4,2]);break;case"double":a.lineWidth=y/4,a.setLineDash([]);break;default:a.setLineDash([])}if(B?(a.beginPath(),jq(a,M,N,O,P,2)):"circle"===A?(a.beginPath(),C=M,D=Math.min(O,P),a.beginPath(),a.arc(C+O/2,N+P/2,D/2,0,2*Math.PI),a.closePath()):(a.beginPath(),a.rect(M,N,O,P)),K&&a.fill(),L&&a.stroke(),L&&"double"===J){var Q=y/2;a.beginPath(),B?jq(a,M+Q,N+Q,O-2*Q,P-2*Q,2):a.rect(M+Q,N+Q,O-2*Q,P-2*Q),a.stroke()}a.fillStyle=E,a.strokeStyle=F,a.lineWidth=G,a.setLineDash&&a.setLineDash([])}var R=2*b.pstyle("text-outline-width").pfValue;if(R>0&&(a.lineWidth=R),"wrap"===b.pstyle("text-wrap").value){var S=aL(f,"labelWrapCachedLines",c),T=aL(f,"labelLineHeight",c),U=p/2,V=this.getLabelJustification(b);switch("auto"===V||("left"===u?"left"===V?h+=-p:"center"===V&&(h+=-U):"center"===u?"left"===V?h+=-U:"right"===V&&(h+=U):"right"===u&&("center"===V?h+=U:"right"===V&&(h+=p))),v){case"top":case"center":case"bottom":i-=(S.length-1)*T}for(var W=0;W<S.length;W++)R>0&&a.strokeText(S[W],h,i),a.fillText(S[W],h,i),i+=T}else R>0&&a.strokeText(j,h,i),a.fillText(j,h,i);0!==n&&(a.rotate(-n),a.translate(-k,-l))}}};var jr={};jr.drawNode=function(a,b,c){var d,e,f,g,h=!(arguments.length>3)||void 0===arguments[3]||arguments[3],i=!(arguments.length>4)||void 0===arguments[4]||arguments[4],j=!(arguments.length>5)||void 0===arguments[5]||arguments[5],k=this,l=b._private,n=l.rscratch,o=b.position();if(x(o.x)&&x(o.y)&&(!j||b.visible())){var p=j?b.effectiveOpacity():1,q=k.usePaths(),r=!1,s=b.padding();d=b.width()+2*s,e=b.height()+2*s,c&&(g=c,a.translate(-g.x1,-g.y1));for(var t=b.pstyle("background-image").value,u=Array(t.length),v=Array(t.length),w=0,y=0;y<t.length;y++){var z=t[y];if(u[y]=null!=z&&"none"!==z){var A=b.cy().style().getIndexedStyle(b,"background-image-crossorigin","value",y);w++,v[y]=k.getCachedImage(z,A,function(){l.backgroundTimestamp=Date.now(),b.emitAndNotify("background")})}}var B=b.pstyle("background-blacken").value,C=b.pstyle("border-width").pfValue,D=b.pstyle("background-opacity").value*p,E=b.pstyle("border-color").value,F=b.pstyle("border-style").value,G=b.pstyle("border-join").value,H=b.pstyle("border-cap").value,I=b.pstyle("border-position").value,J=b.pstyle("border-dash-pattern").pfValue,K=b.pstyle("border-dash-offset").pfValue,L=b.pstyle("border-opacity").value*p,M=b.pstyle("outline-width").pfValue,N=b.pstyle("outline-color").value,O=b.pstyle("outline-style").value,P=b.pstyle("outline-opacity").value*p,Q=b.pstyle("outline-offset").value,R=b.pstyle("corner-radius").value;"auto"!==R&&(R=b.pstyle("corner-radius").pfValue);var S=function(){var c=arguments.length>0&&void 0!==arguments[0]?arguments[0]:D;k.eleFillStyle(a,b,c)},T=function(){var b=arguments.length>0&&void 0!==arguments[0]?arguments[0]:L;k.colorStrokeStyle(a,E[0],E[1],E[2],b)},U=function(){var b=arguments.length>0&&void 0!==arguments[0]?arguments[0]:P;k.colorStrokeStyle(a,N[0],N[1],N[2],b)},V=function(a,b,c,d){var e,f=k.nodePathCache=k.nodePathCache||[],g=aq("polygon"===c?c+","+d.join(","):c,""+b,""+a,""+R),h=f[g],i=!1;return null!=h?(i=!0,n.pathCache=e=h):(e=new Path2D,f[g]=n.pathCache=e),{path:e,cacheHit:i}},W=b.pstyle("shape").strValue,X=b.pstyle("shape-polygon-points").pfValue;if(q){a.translate(o.x,o.y);var Y=V(d,e,W,X);f=Y.path,r=Y.cacheHit}var Z=function(){if(!r){var c=o;q&&(c={x:0,y:0}),k.nodeShapes[k.getNodeShape(b)].draw(f||a,c.x,c.y,d,e,R,n)}q?a.fill(f):a.fill()},$=function(){for(var c=arguments.length>0&&void 0!==arguments[0]?arguments[0]:p,d=!(arguments.length>1)||void 0===arguments[1]||arguments[1],e=l.backgrounding,f=0,g=0;g<v.length;g++){var h=b.cy().style().getIndexedStyle(b,"background-image-containment","value",g);if(d&&"over"===h||!d&&"inside"===h){f++;continue}u[g]&&v[g].complete&&!v[g].error&&(f++,k.drawInscribedImage(a,v[g],b,g,c))}l.backgrounding=f!==w,e!==l.backgrounding&&b.updateStyle(!1)},_=function(){var c=arguments.length>0&&void 0!==arguments[0]&&arguments[0],f=arguments.length>1&&void 0!==arguments[1]?arguments[1]:p;k.hasPie(b)&&(k.drawPie(a,b,f),c&&!q&&k.nodeShapes[k.getNodeShape(b)].draw(a,o.x,o.y,d,e,R,n))},aa=function(){var c=arguments.length>0&&void 0!==arguments[0]&&arguments[0],f=arguments.length>1&&void 0!==arguments[1]?arguments[1]:p;k.hasStripe(b)&&(a.save(),q?a.clip(n.pathCache):(k.nodeShapes[k.getNodeShape(b)].draw(a,o.x,o.y,d,e,R,n),a.clip()),k.drawStripe(a,b,f),a.restore(),c&&!q&&k.nodeShapes[k.getNodeShape(b)].draw(a,o.x,o.y,d,e,R,n))},ab=function(){var b=arguments.length>0&&void 0!==arguments[0]?arguments[0]:p,c=B>0?0:255;0!==B&&(k.colorFillStyle(a,c,c,c,(B>0?B:-B)*b),q?a.fill(f):a.fill())},ac=function(){if(C>0){if(a.lineWidth=C,a.lineCap=H,a.lineJoin=G,a.setLineDash)switch(F){case"dotted":a.setLineDash([1,1]);break;case"dashed":a.setLineDash(J),a.lineDashOffset=K;break;case"solid":case"double":a.setLineDash([])}if("center"!==I){if(a.save(),a.lineWidth*=2,"inside"===I)q?a.clip(f):a.clip();else{var b=new Path2D;b.rect(-d/2-C,-e/2-C,d+2*C,e+2*C),b.addPath(f),a.clip(b,"evenodd")}q?a.stroke(f):a.stroke(),a.restore()}else q?a.stroke(f):a.stroke();if("double"===F){a.lineWidth=C/3;var c=a.globalCompositeOperation;a.globalCompositeOperation="destination-out",q?a.stroke(f):a.stroke(),a.globalCompositeOperation=c}a.setLineDash&&a.setLineDash([])}},ad=function(){if(M>0){if(a.lineWidth=M,a.lineCap="butt",a.setLineDash)switch(O){case"dotted":a.setLineDash([1,1]);break;case"dashed":a.setLineDash([4,2]);break;case"solid":case"double":a.setLineDash([])}var c=o;q&&(c={x:0,y:0});var f=k.getNodeShape(b),g=C;"inside"===I&&(g=0),"outside"===I&&(g*=2);var h=(d+g+(M+Q))/d,i=(e+g+(M+Q))/e,j=d*h,l=e*i,n=k.nodeShapes[f].points;if(q&&(z=V(j,l,f,n).path),"ellipse"===f)k.drawEllipsePath(z||a,c.x,c.y,j,l);else if(["round-diamond","round-heptagon","round-hexagon","round-octagon","round-pentagon","round-polygon","round-triangle","round-tag"].includes(f)){var p=0,r=0,s=0;"round-diamond"===f?p=(g+Q+M)*1.4:"round-heptagon"===f?(p=(g+Q+M)*1.075,s=-(g/2+Q+M)/35):"round-hexagon"===f?p=(g+Q+M)*1.12:"round-pentagon"===f?(p=(g+Q+M)*1.13,s=-(g/2+Q+M)/15):"round-tag"===f?(p=(g+Q+M)*1.12,r=(g/2+M+Q)*.07):"round-triangle"===f&&(p=Math.PI/2*(g+Q+M),s=-(g+Q/2+M)/Math.PI),0!==p&&(h=(d+p)/d,j=d*h,["round-hexagon","round-tag"].includes(f)||(i=(e+p)/e,l=e*i)),R="auto"===R?bU(j,l):R;for(var t=j/2,u=l/2,v=R+(g+M+Q)/2,w=Array(n.length/2),x=Array(n.length/2),y=0;y<n.length/2;y++)w[y]={x:c.x+r+t*n[2*y],y:c.y+s+u*n[2*y+1]};var z,A,B,D,E,F=w.length;for(A=0,B=w[F-1];A<F;A++)D=w[A%F],E=w[(A+1)%F],x[A]=iF(B,D,E,v),B=D,D=E;k.drawRoundPolygonPath(z||a,c.x+r,c.y+s,d*h,e*i,n,x)}else["roundrectangle","round-rectangle"].includes(f)?(R="auto"===R?bT(j,l):R,k.drawRoundRectanglePath(z||a,c.x,c.y,j,l,R+(g+M+Q)/2)):["cutrectangle","cut-rectangle"].includes(f)?(R="auto"===R?bV():R,k.drawCutRectanglePath(z||a,c.x,c.y,j,l,null,R+(g+M+Q)/4)):["bottomroundrectangle","bottom-round-rectangle"].includes(f)?(R="auto"===R?bT(j,l):R,k.drawBottomRoundRectanglePath(z||a,c.x,c.y,j,l,R+(g+M+Q)/2)):"barrel"===f?k.drawBarrelPath(z||a,c.x,c.y,j,l):(n=f.startsWith("polygon")||["rhomboid","right-rhomboid","round-tag","tag","vee"].includes(f)?bF(bG(n,(g+M+Q)/d)):bF(bG(n,-((g+M+Q)/d))),k.drawPolygonPath(z||a,c.x,c.y,d,e,n));if(q?a.stroke(z):a.stroke(),"double"===O){a.lineWidth=g/3;var G=a.globalCompositeOperation;a.globalCompositeOperation="destination-out",q?a.stroke(z):a.stroke(),a.globalCompositeOperation=G}a.setLineDash&&a.setLineDash([])}};if("yes"===b.pstyle("ghost").value){var ae=b.pstyle("ghost-offset-x").pfValue,af=b.pstyle("ghost-offset-y").pfValue,ag=b.pstyle("ghost-opacity").value,ah=ag*p;a.translate(ae,af),U(),ad(),S(ag*D),Z(),$(ah,!0),T(ag*L),ac(),_(0!==B||0!==C),aa(0!==B||0!==C),$(ah,!1),ab(ah),a.translate(-ae,-af)}q&&a.translate(-o.x,-o.y),i&&k.drawNodeUnderlay(a,b,o,d,e),q&&a.translate(o.x,o.y),U(),ad(),S(),Z(),$(p,!0),T(),ac(),_(0!==B||0!==C),aa(0!==B||0!==C),$(p,!1),ab(),q&&a.translate(-o.x,-o.y),k.drawElementText(a,b,null,h),i&&k.drawNodeOverlay(a,b,o,d,e),c&&a.translate(g.x1,g.y1)}};var js=function(a){if(!["overlay","underlay"].includes(a))throw Error("Invalid state");return function(b,c,d,e,f){if(c.visible()){var g=c.pstyle("".concat(a,"-padding")).pfValue,h=c.pstyle("".concat(a,"-opacity")).value,i=c.pstyle("".concat(a,"-color")).value,j=c.pstyle("".concat(a,"-shape")).value,k=c.pstyle("".concat(a,"-corner-radius")).value;if(h>0){if(d=d||c.position(),null==e||null==f){var l=c.padding();e=c.width()+2*l,f=c.height()+2*l}this.colorFillStyle(b,i[0],i[1],i[2],h),this.nodeShapes[j].draw(b,d.x,d.y,e+2*g,f+2*g,k),b.fill()}}}};jr.drawNodeOverlay=js("overlay"),jr.drawNodeUnderlay=js("underlay"),jr.hasPie=function(a){return(a=a[0])._private.hasPie},jr.hasStripe=function(a){return(a=a[0])._private.hasStripe},jr.drawPie=function(a,b,c,d){b=b[0],d=d||b.position();var e,f=b.cy().style(),g=b.pstyle("pie-size"),h=b.pstyle("pie-hole"),i=b.pstyle("pie-start-angle").pfValue,j=d.x,k=d.y,l=Math.min(b.width(),b.height())/2,n=0;if(this.usePaths()&&(j=0,k=0),"%"===g.units?l*=g.pfValue:void 0!==g.pfValue&&(l=g.pfValue/2),"%"===h.units?e=l*h.pfValue:void 0!==h.pfValue&&(e=h.pfValue/2),!(e>=l))for(var o=1;o<=f.pieBackgroundN;o++){var p=b.pstyle("pie-"+o+"-background-size").value,q=b.pstyle("pie-"+o+"-background-color").value,r=b.pstyle("pie-"+o+"-background-opacity").value*c,s=p/100;s+n>1&&(s=1-n);var t=1.5*Math.PI+2*Math.PI*n,u=2*Math.PI*s,v=(t+=i)+u;0===p||n>=1||n+s>1||(0===e?(a.beginPath(),a.moveTo(j,k),a.arc(j,k,l,t,v)):(a.beginPath(),a.arc(j,k,l,t,v),a.arc(j,k,e,v,t,!0)),a.closePath(),this.colorFillStyle(a,q[0],q[1],q[2],r),a.fill(),n+=s)}},jr.drawStripe=function(a,b,c,d){b=b[0],d=d||b.position();var e=b.cy().style(),f=d.x,g=d.y,h=b.width(),i=b.height(),j=0,k=this.usePaths();a.save();var l=b.pstyle("stripe-direction").value,n=b.pstyle("stripe-size");switch(l){case"vertical":break;case"righward":a.rotate(-Math.PI/2)}var o=h,p=i;"%"===n.units?(o*=n.pfValue,p*=n.pfValue):void 0!==n.pfValue&&(o=n.pfValue,p=n.pfValue),k&&(f=0,g=0),g-=o/2,f-=p/2;for(var q=1;q<=e.stripeBackgroundN;q++){var r=b.pstyle("stripe-"+q+"-background-size").value,s=b.pstyle("stripe-"+q+"-background-color").value,t=b.pstyle("stripe-"+q+"-background-opacity").value*c,u=r/100;u+j>1&&(u=1-j),0===r||j>=1||j+u>1||(a.beginPath(),a.rect(f,g+p*j,o,p*u),a.closePath(),this.colorFillStyle(a,s[0],s[1],s[2],t),a.fill(),j+=u)}a.restore()};var jt={};function ju(a,b,c){var d=a.createShader(b);if(a.shaderSource(d,c),a.compileShader(d),!a.getShaderParameter(d,a.COMPILE_STATUS))throw Error(a.getShaderInfoLog(d));return d}function jv(a,b,c){void 0===c&&(c=b);var d=a.makeOffscreenCanvas(b,c),e=d.context=d.getContext("2d");return d.clear=function(){return e.clearRect(0,0,d.width,d.height)},d.clear(),d}function jw(a){var b=a.pixelRatio,c=a.cy.zoom(),d=a.cy.pan();return{zoom:c*b,pan:{x:d.x*b,y:d.y*b}}}function jx(a){return"solid"===a.pstyle("background-fill").value&&"none"===a.pstyle("background-image").strValue&&(0===a.pstyle("border-width").value||0===a.pstyle("border-opacity").value||"solid"===a.pstyle("border-style").value)}function jy(a,b,c){var d=a[0]/255,e=a[1]/255,f=a[2]/255,g=c||[,,,,];return g[0]=d*b,g[1]=e*b,g[2]=f*b,g[3]=b,g}function jz(a,b){var c=b||[,,,,];return c[0]=(255&a)/255,c[1]=(a>>8&255)/255,c[2]=(a>>16&255)/255,c[3]=(a>>24&255)/255,c}function jA(a,b){switch(b){case"float":return[1,a.FLOAT,4];case"vec2":return[2,a.FLOAT,4];case"vec3":return[3,a.FLOAT,4];case"vec4":return[4,a.FLOAT,4];case"int":return[1,a.INT,4];case"ivec2":return[2,a.INT,4]}}function jB(a,b,c){switch(b){case a.FLOAT:return new Float32Array(c);case a.INT:return new Int32Array(c)}}function jC(a,b,c,d){var e=i(jA(a,c),3),f=e[0],g=e[1],h=e[2],j=jB(a,g,b*f),k=f*h,l=a.createBuffer();a.bindBuffer(a.ARRAY_BUFFER,l),a.bufferData(a.ARRAY_BUFFER,b*k,a.DYNAMIC_DRAW),a.enableVertexAttribArray(d),g===a.FLOAT?a.vertexAttribPointer(d,f,g,!1,k,0):g===a.INT&&a.vertexAttribIPointer(d,f,g,k,0),a.vertexAttribDivisor(d,1),a.bindBuffer(a.ARRAY_BUFFER,null);for(var n=Array(b),o=0;o<b;o++)n[o]=function(a,b,c,d,e,f){switch(b){case a.FLOAT:return new Float32Array(c.buffer,f*d,e);case a.INT:return new Int32Array(c.buffer,f*d,e)}}(a,g,j,k,f,o);return l.dataArray=j,l.stride=k,l.size=f,l.getView=function(a){return n[a]},l.setPoint=function(a,b,c){var d=n[a];d[0]=b,d[1]=c},l.bufferSubData=function(b){a.bindBuffer(a.ARRAY_BUFFER,l),b?a.bufferSubData(a.ARRAY_BUFFER,0,j,0,b*f):a.bufferSubData(a.ARRAY_BUFFER,0,j)},l}jt.getPixelRatio=function(){var a=this.data.contexts[0];if(null!=this.forcedPixelRatio)return this.forcedPixelRatio;var b=this.cy.window(),c=a.backingStorePixelRatio||a.webkitBackingStorePixelRatio||a.mozBackingStorePixelRatio||a.msBackingStorePixelRatio||a.oBackingStorePixelRatio||a.backingStorePixelRatio||1;return(b.devicePixelRatio||1)/c},jt.paintCache=function(a){for(var b,c=this.paintCaches=this.paintCaches||[],d=!0,e=0;e<c.length;e++)if((b=c[e]).context===a){d=!1;break}return d&&(b={context:a},c.push(b)),b},jt.createGradientStyleFor=function(a,b,c,d,e){var f,g=this.usePaths(),h=c.pstyle(b+"-gradient-stop-colors").value,i=c.pstyle(b+"-gradient-stop-positions").pfValue;if("radial-gradient"===d)if(c.isEdge()){var j=c.sourceEndpoint(),k=c.targetEndpoint(),l=c.midpoint(),n=bc(j,l),o=bc(k,l);f=a.createRadialGradient(l.x,l.y,0,l.x,l.y,Math.max(n,o))}else{var p=g?{x:0,y:0}:c.position(),q=c.paddedWidth(),r=c.paddedHeight();f=a.createRadialGradient(p.x,p.y,0,p.x,p.y,Math.max(q,r))}else if(c.isEdge()){var s=c.sourceEndpoint(),t=c.targetEndpoint();f=a.createLinearGradient(s.x,s.y,t.x,t.y)}else{var u=g?{x:0,y:0}:c.position(),v=c.paddedWidth(),w=c.paddedHeight(),x=v/2,y=w/2;switch(c.pstyle("background-gradient-direction").value){case"to-bottom":f=a.createLinearGradient(u.x,u.y-y,u.x,u.y+y);break;case"to-top":f=a.createLinearGradient(u.x,u.y+y,u.x,u.y-y);break;case"to-left":f=a.createLinearGradient(u.x+x,u.y,u.x-x,u.y);break;case"to-right":f=a.createLinearGradient(u.x-x,u.y,u.x+x,u.y);break;case"to-bottom-right":case"to-right-bottom":f=a.createLinearGradient(u.x-x,u.y-y,u.x+x,u.y+y);break;case"to-top-right":case"to-right-top":f=a.createLinearGradient(u.x-x,u.y+y,u.x+x,u.y-y);break;case"to-bottom-left":case"to-left-bottom":f=a.createLinearGradient(u.x+x,u.y-y,u.x-x,u.y+y);break;case"to-top-left":case"to-left-top":f=a.createLinearGradient(u.x+x,u.y+y,u.x-x,u.y-y)}}if(!f)return null;for(var z=i.length===h.length,A=h.length,B=0;B<A;B++)f.addColorStop(z?i[B]:B/(A-1),"rgba("+h[B][0]+","+h[B][1]+","+h[B][2]+","+e+")");return f},jt.gradientFillStyle=function(a,b,c,d){var e=this.createGradientStyleFor(a,"background",b,c,d);if(!e)return null;a.fillStyle=e},jt.colorFillStyle=function(a,b,c,d,e){a.fillStyle="rgba("+b+","+c+","+d+","+e+")"},jt.eleFillStyle=function(a,b,c){var d=b.pstyle("background-fill").value;if("linear-gradient"===d||"radial-gradient"===d)this.gradientFillStyle(a,b,d,c);else{var e=b.pstyle("background-color").value;this.colorFillStyle(a,e[0],e[1],e[2],c)}},jt.gradientStrokeStyle=function(a,b,c,d){var e=this.createGradientStyleFor(a,"line",b,c,d);if(!e)return null;a.strokeStyle=e},jt.colorStrokeStyle=function(a,b,c,d,e){a.strokeStyle="rgba("+b+","+c+","+d+","+e+")"},jt.eleStrokeStyle=function(a,b,c){var d=b.pstyle("line-fill").value;if("linear-gradient"===d||"radial-gradient"===d)this.gradientStrokeStyle(a,b,d,c);else{var e=b.pstyle("line-color").value;this.colorStrokeStyle(a,e[0],e[1],e[2],c)}},jt.matchCanvasSize=function(a){var b,c=this.data,d=this.findContainerClientCoords(),e=d[2],f=d[3],g=this.getPixelRatio(),h=this.motionBlurPxRatio;(a===this.data.bufferCanvases[this.MOTIONBLUR_BUFFER_NODE]||a===this.data.bufferCanvases[this.MOTIONBLUR_BUFFER_DRAG])&&(g=h);var i=e*g,j=f*g;if(i!==this.canvasWidth||j!==this.canvasHeight){this.fontCaches=null;var k=c.canvasContainer;k.style.width=e+"px",k.style.height=f+"px";for(var l=0;l<this.CANVAS_LAYERS;l++)(b=c.canvases[l]).width=i,b.height=j,b.style.width=e+"px",b.style.height=f+"px";for(var l=0;l<this.BUFFER_COUNT;l++)(b=c.bufferCanvases[l]).width=i,b.height=j,b.style.width=e+"px",b.style.height=f+"px";this.textureMult=1,g<=1&&(b=c.bufferCanvases[this.TEXTURE_BUFFER],this.textureMult=2,b.width=i*this.textureMult,b.height=j*this.textureMult),this.canvasWidth=i,this.canvasHeight=j,this.pixelRatio=g}},jt.renderTo=function(a,b,c,d){this.render({forcedContext:a,forcedZoom:b,forcedPan:c,drawAllLayers:!0,forcedPxRatio:d})},jt.clearCanvas=function(){var a=this,b=a.data;function c(b){b.clearRect(0,0,a.canvasWidth,a.canvasHeight)}c(b.contexts[a.NODE]),c(b.contexts[a.DRAG])},jt.render=function(a){var b=this;a=a||aG();var c=b.cy,d=a.forcedContext,e=a.drawAllLayers,f=a.drawOnlyNodeLayer,g=a.forcedZoom,h=a.forcedPan,i=void 0===a.forcedPxRatio?this.getPixelRatio():a.forcedPxRatio,j=b.data,k=j.canvasNeedsRedraw,l=b.textureOnViewport&&!d&&(b.pinching||b.hoverData.dragging||b.swipePanning||b.data.wheelZooming),n=void 0!==a.motionBlur?a.motionBlur:b.motionBlur,o=b.motionBlurPxRatio,p=c.hasCompoundNodes(),q=b.hoverData.draggingEles,r=!!b.hoverData.selecting||!!b.touchData.selecting,s=n=n&&!d&&b.motionBlurEnabled&&!r;d||(b.prevPxRatio!==i&&(b.invalidateContainerClientCoordsCache(),b.matchCanvasSize(b.container),b.redrawHint("eles",!0),b.redrawHint("drag",!0)),b.prevPxRatio=i),!d&&b.motionBlurTimeout&&clearTimeout(b.motionBlurTimeout),n&&(null==b.mbFrames&&(b.mbFrames=0),b.mbFrames++,b.mbFrames<3&&(s=!1),b.mbFrames>b.minMbLowQualFrames&&(b.motionBlurPxRatio=b.mbPxRBlurry)),b.clearingMotionBlur&&(b.motionBlurPxRatio=1),b.textureDrawLastFrame&&!l&&(k[b.NODE]=!0,k[b.SELECT_BOX]=!0);var t=c.style(),u=c.zoom(),v=void 0!==g?g:u,w=c.pan(),x={x:w.x,y:w.y},y={zoom:u,pan:{x:w.x,y:w.y}},z=b.prevViewport;void 0===z||y.zoom!==z.zoom||y.pan.x!==z.pan.x||y.pan.y!==z.pan.y||q&&!p||(b.motionBlurPxRatio=1),h&&(x=h),v*=i,x.x*=i,x.y*=i;var A=b.getCachedZSortedEles();function B(a,c,d,e,f){var g=a.globalCompositeOperation;a.globalCompositeOperation="destination-out",b.colorFillStyle(a,255,255,255,b.motionBlurTransparency),a.fillRect(c,d,e,f),a.globalCompositeOperation=g}function C(a,c){var f,i,k,l;b.clearingMotionBlur||a!==j.bufferContexts[b.MOTIONBLUR_BUFFER_NODE]&&a!==j.bufferContexts[b.MOTIONBLUR_BUFFER_DRAG]?(f=x,i=v,k=b.canvasWidth,l=b.canvasHeight):(f={x:w.x*o,y:w.y*o},i=u*o,k=b.canvasWidth*o,l=b.canvasHeight*o),a.setTransform(1,0,0,1,0,0),"motionBlur"===c?B(a,0,0,k,l):!d&&(void 0===c||c)&&a.clearRect(0,0,k,l),e||(a.translate(f.x,f.y),a.scale(i,i)),h&&a.translate(h.x,h.y),g&&a.scale(g,g)}if(l||(b.textureDrawLastFrame=!1),l){if(b.textureDrawLastFrame=!0,!b.textureCache){b.textureCache={},b.textureCache.bb=c.mutableElements().boundingBox(),b.textureCache.texture=b.data.bufferCanvases[b.TEXTURE_BUFFER];var D=b.data.bufferContexts[b.TEXTURE_BUFFER];D.setTransform(1,0,0,1,0,0),D.clearRect(0,0,b.canvasWidth*b.textureMult,b.canvasHeight*b.textureMult),b.render({forcedContext:D,drawOnlyNodeLayer:!0,forcedPxRatio:i*b.textureMult});var y=b.textureCache.viewport={zoom:c.zoom(),pan:c.pan(),width:b.canvasWidth,height:b.canvasHeight};y.mpan={x:(0-y.pan.x)/y.zoom,y:(0-y.pan.y)/y.zoom}}k[b.DRAG]=!1,k[b.NODE]=!1;var E=j.contexts[b.NODE],F=b.textureCache.texture,y=b.textureCache.viewport;E.setTransform(1,0,0,1,0,0),n?B(E,0,0,y.width,y.height):E.clearRect(0,0,y.width,y.height);var G=t.core("outside-texture-bg-color").value,H=t.core("outside-texture-bg-opacity").value;b.colorFillStyle(E,G[0],G[1],G[2],H),E.fillRect(0,0,y.width,y.height);var u=c.zoom();C(E,!1),E.clearRect(y.mpan.x,y.mpan.y,y.width/y.zoom/i,y.height/y.zoom/i),E.drawImage(F,y.mpan.x,y.mpan.y,y.width/y.zoom/i,y.height/y.zoom/i)}else b.textureOnViewport&&!d&&(b.textureCache=null);var I=c.extent(),J=b.pinching||b.hoverData.dragging||b.swipePanning||b.data.wheelZooming||b.hoverData.draggingEles||b.cy.animated(),K=b.hideEdgesOnViewport&&J,L=[];if(L[b.NODE]=!k[b.NODE]&&n&&!b.clearedForMotionBlur[b.NODE]||b.clearingMotionBlur,L[b.NODE]&&(b.clearedForMotionBlur[b.NODE]=!0),L[b.DRAG]=!k[b.DRAG]&&n&&!b.clearedForMotionBlur[b.DRAG]||b.clearingMotionBlur,L[b.DRAG]&&(b.clearedForMotionBlur[b.DRAG]=!0),k[b.NODE]||e||f||L[b.NODE]){var M=n&&!L[b.NODE]&&1!==o,E=d||(M?b.data.bufferContexts[b.MOTIONBLUR_BUFFER_NODE]:j.contexts[b.NODE]);C(E,n&&!M?"motionBlur":void 0),K?b.drawCachedNodes(E,A.nondrag,i,I):b.drawLayeredElements(E,A.nondrag,i,I),b.debug&&b.drawDebugPoints(E,A.nondrag),e||n||(k[b.NODE]=!1)}if(!f&&(k[b.DRAG]||e||L[b.DRAG])){var M=n&&!L[b.DRAG]&&1!==o,E=d||(M?b.data.bufferContexts[b.MOTIONBLUR_BUFFER_DRAG]:j.contexts[b.DRAG]);C(E,n&&!M?"motionBlur":void 0),K?b.drawCachedNodes(E,A.drag,i,I):b.drawCachedElements(E,A.drag,i,I),b.debug&&b.drawDebugPoints(E,A.drag),e||n||(k[b.DRAG]=!1)}if(this.drawSelectionRectangle(a,C),n&&1!==o){var N=j.contexts[b.NODE],O=b.data.bufferCanvases[b.MOTIONBLUR_BUFFER_NODE],P=j.contexts[b.DRAG],Q=b.data.bufferCanvases[b.MOTIONBLUR_BUFFER_DRAG],R=function(a,c,d){a.setTransform(1,0,0,1,0,0),d||!s?a.clearRect(0,0,b.canvasWidth,b.canvasHeight):B(a,0,0,b.canvasWidth,b.canvasHeight),a.drawImage(c,0,0,b.canvasWidth*o,b.canvasHeight*o,0,0,b.canvasWidth,b.canvasHeight)};(k[b.NODE]||L[b.NODE])&&(R(N,O,L[b.NODE]),k[b.NODE]=!1),(k[b.DRAG]||L[b.DRAG])&&(R(P,Q,L[b.DRAG]),k[b.DRAG]=!1)}b.prevViewport=y,b.clearingMotionBlur&&(b.clearingMotionBlur=!1,b.motionBlurCleared=!0,b.motionBlur=!0),n&&(b.motionBlurTimeout=setTimeout(function(){b.motionBlurTimeout=null,b.clearedForMotionBlur[b.NODE]=!1,b.clearedForMotionBlur[b.DRAG]=!1,b.motionBlur=!1,b.clearingMotionBlur=!l,b.mbFrames=0,k[b.NODE]=!0,k[b.DRAG]=!0,b.redraw()},100)),d||c.emit("render")},jt.drawSelectionRectangle=function(a,b){var c=this.cy,d=this.data,e=c.style(),f=a.drawOnlyNodeLayer,g=a.drawAllLayers,h=d.canvasNeedsRedraw,i=a.forcedContext;if(this.showFps||!f&&h[this.SELECT_BOX]&&!g){var j=i||d.contexts[this.SELECT_BOX];if(b(j),1==this.selection[4]&&(this.hoverData.selecting||this.touchData.selecting)){var k=this.cy.zoom(),l=e.core("selection-box-border-width").value/k;j.lineWidth=l,j.fillStyle="rgba("+e.core("selection-box-color").value[0]+","+e.core("selection-box-color").value[1]+","+e.core("selection-box-color").value[2]+","+e.core("selection-box-opacity").value+")",j.fillRect(this.selection[0],this.selection[1],this.selection[2]-this.selection[0],this.selection[3]-this.selection[1]),l>0&&(j.strokeStyle="rgba("+e.core("selection-box-border-color").value[0]+","+e.core("selection-box-border-color").value[1]+","+e.core("selection-box-border-color").value[2]+","+e.core("selection-box-opacity").value+")",j.strokeRect(this.selection[0],this.selection[1],this.selection[2]-this.selection[0],this.selection[3]-this.selection[1]))}if(d.bgActivePosistion&&!this.hoverData.selecting){var k=this.cy.zoom(),n=d.bgActivePosistion;j.fillStyle="rgba("+e.core("active-bg-color").value[0]+","+e.core("active-bg-color").value[1]+","+e.core("active-bg-color").value[2]+","+e.core("active-bg-opacity").value+")",j.beginPath(),j.arc(n.x,n.y,e.core("active-bg-size").pfValue/k,0,2*Math.PI),j.fill()}var o=this.lastRedrawTime;if(this.showFps&&o){var p=Math.round(1e3/(o=Math.round(o))),q="1 frame = "+o+" ms = "+p+" fps";j.setTransform(1,0,0,1,0,0),j.fillStyle="rgba(255, 0, 0, 0.75)",j.strokeStyle="rgba(255, 0, 0, 0.75)",j.font="30px Arial",f1||(f1=j.measureText(q).actualBoundingBoxAscent),j.fillText(q,0,f1),j.strokeRect(0,f1+10,250,20),j.fillRect(0,f1+10,250*Math.min(p/60,1),20)}g||(h[this.SELECT_BOX]=!1)}};var jD="u">typeof Float32Array?Float32Array:Array;function jE(){var a=new jD(9);return jD!=Float32Array&&(a[1]=0,a[2]=0,a[3]=0,a[5]=0,a[6]=0,a[7]=0),a[0]=1,a[4]=1,a[8]=1,a}function jF(a){return a[0]=1,a[1]=0,a[2]=0,a[3]=0,a[4]=1,a[5]=0,a[6]=0,a[7]=0,a[8]=1,a}function jG(a,b,c){var d=b[0],e=b[1],f=b[2],g=b[3],h=b[4],i=b[5],j=b[6],k=b[7],l=b[8],n=c[0],o=c[1];return a[0]=d,a[1]=e,a[2]=f,a[3]=g,a[4]=h,a[5]=i,a[6]=n*d+o*g+j,a[7]=n*e+o*h+k,a[8]=n*f+o*i+l,a}function jH(a,b,c){var d=b[0],e=b[1],f=b[2],g=b[3],h=b[4],i=b[5],j=b[6],k=b[7],l=b[8],n=Math.sin(c),o=Math.cos(c);return a[0]=o*d+n*g,a[1]=o*e+n*h,a[2]=o*f+n*i,a[3]=o*g-n*d,a[4]=o*h-n*e,a[5]=o*i-n*f,a[6]=j,a[7]=k,a[8]=l,a}function jI(a,b,c){var d=c[0],e=c[1];return a[0]=d*b[0],a[1]=d*b[1],a[2]=d*b[2],a[3]=e*b[3],a[4]=e*b[4],a[5]=e*b[5],a[6]=b[6],a[7]=b[7],a[8]=b[8],a}Math.hypot||(Math.hypot=function(){for(var a=0,b=arguments.length;b--;)a+=arguments[b]*arguments[b];return Math.sqrt(a)});var jJ=f(function a(b,c,d,f){e(this,a),this.debugID=Math.floor(1e4*Math.random()),this.r=b,this.texSize=c,this.texRows=d,this.texHeight=Math.floor(c/d),this.enableWrapping=!0,this.locked=!1,this.texture=null,this.needsBuffer=!0,this.freePointer={x:0,row:0},this.keyToLocation=new Map,this.canvas=f(b,c,c),this.scratch=f(b,c,this.texHeight,"scratch")},[{key:"lock",value:function(){this.locked=!0}},{key:"getKeys",value:function(){return new Set(this.keyToLocation.keys())}},{key:"getScale",value:function(a){var b=a.w,c=a.h,d=this.texHeight,e=this.texSize,f=d/c,g=b*f,h=c*f;return g>e&&(f=e/b,g=b*f,h=c*f),{scale:f,texW:g,texH:h}}},{key:"draw",value:function(a,b,c){var d,e,f,g,h,i,j,k=this;if(this.locked)throw Error("can't draw, atlas is locked");var l=this.texSize,n=this.texRows,o=this.texHeight,p=this.getScale(b),q=p.scale,r=p.texW,s=p.texH,t=function(a,d){if(c&&d){var e=d.context,f=a.x,g=o*a.row;e.save(),e.translate(f,g),e.scale(q,q),c(e,b),e.restore()}},u=[null,null],v=function(){t(k.freePointer,k.canvas),u[0]={x:k.freePointer.x,y:k.freePointer.row*o,w:r,h:s},u[1]={x:k.freePointer.x+r,y:k.freePointer.row*o,w:0,h:s},k.freePointer.x+=r,k.freePointer.x==l&&(k.freePointer.x=0,k.freePointer.row++)},w=function(){k.freePointer.x=0,k.freePointer.row++};if(this.freePointer.x+r<=l)v();else{if(this.freePointer.row>=n-1)return!1;this.freePointer.x===l?(w(),v()):this.enableWrapping?(d=k.scratch,e=k.canvas,d.clear(),t({x:0,row:0},d),g=r-(f=l-k.freePointer.x),h=k.freePointer.x,i=k.freePointer.row*o,e.context.drawImage(d,0,0,f,o,h,i,f,o),u[0]={x:h,y:i,w:f,h:s},j=(k.freePointer.row+1)*o,e&&e.context.drawImage(d,f,0,g,o,0,j,g,o),u[1]={x:0,y:j,w:g,h:s},k.freePointer.x=g,k.freePointer.row++):(w(),v())}return this.keyToLocation.set(a,u),this.needsBuffer=!0,u}},{key:"getOffsets",value:function(a){return this.keyToLocation.get(a)}},{key:"isEmpty",value:function(){return 0===this.freePointer.x&&0===this.freePointer.row}},{key:"canFit",value:function(a){if(this.locked)return!1;var b=this.texSize,c=this.texRows,d=this.getScale(a).texW;return!(this.freePointer.x+d>b)||this.freePointer.row<c-1}},{key:"bufferIfNeeded",value:function(a){var b;this.texture||(this.texture=(this.debugID,(b=a.createTexture()).buffer=function(c){a.bindTexture(a.TEXTURE_2D,b),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_WRAP_S,a.CLAMP_TO_EDGE),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_WRAP_T,a.CLAMP_TO_EDGE),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MAG_FILTER,a.LINEAR),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MIN_FILTER,a.LINEAR_MIPMAP_NEAREST),a.pixelStorei(a.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0),a.texImage2D(a.TEXTURE_2D,0,a.RGBA,a.RGBA,a.UNSIGNED_BYTE,c),a.generateMipmap(a.TEXTURE_2D),a.bindTexture(a.TEXTURE_2D,null)},b.deleteTexture=function(){a.deleteTexture(b)},b)),this.needsBuffer&&(this.texture.buffer(this.canvas),this.needsBuffer=!1,this.locked&&(this.canvas=null,this.scratch=null))}},{key:"dispose",value:function(){this.texture&&(this.texture.deleteTexture(),this.texture=null),this.canvas=null,this.scratch=null,this.locked=!0}}]),jK=f(function a(b,c,d,f){e(this,a),this.r=b,this.texSize=c,this.texRows=d,this.createTextureCanvas=f,this.atlases=[],this.styleKeyToAtlas=new Map,this.markedKeys=new Set},[{key:"getKeys",value:function(){return new Set(this.styleKeyToAtlas.keys())}},{key:"_createAtlas",value:function(){return new jJ(this.r,this.texSize,this.texRows,this.createTextureCanvas)}},{key:"_getScratchCanvas",value:function(){if(!this.scratch){var a=this.r,b=this.texSize,c=this.texRows,d=this.createTextureCanvas,e=Math.floor(b/c);this.scratch=d(a,b,e,"scratch")}return this.scratch}},{key:"draw",value:function(a,b,c){var d=this.styleKeyToAtlas.get(a);return d||((d=this.atlases[this.atlases.length-1])&&d.canFit(b)||(d&&d.lock(),d=this._createAtlas(),this.atlases.push(d)),d.draw(a,b,c),this.styleKeyToAtlas.set(a,d)),d}},{key:"getAtlas",value:function(a){return this.styleKeyToAtlas.get(a)}},{key:"hasAtlas",value:function(a){return this.styleKeyToAtlas.has(a)}},{key:"markKeyForGC",value:function(a){this.markedKeys.add(a)}},{key:"gc",value:function(){var a=this,b=this.markedKeys;if(0===b.size)return void console.log("nothing to garbage collect");var c,d=[],e=new Map,f=null,h=g(this.atlases);try{for(h.s();!(c=h.n()).done;)if(function(){var h=c.value,k=h.getKeys(),l=function(a,b){return a.intersection?a.intersection(b):new Set(j(a).filter(function(a){return b.has(a)}))}(b,k);if(0===l.size)return d.push(h),k.forEach(function(a){return e.set(a,h)}),1;f||(f=a._createAtlas(),d.push(f));var n,o=g(k);try{for(o.s();!(n=o.n()).done;){var p=n.value;if(!l.has(p)){var q=h.getOffsets(p),r=i(q,2),s=r[0],t=r[1];f.canFit({w:s.w+t.w,h:s.h})||(f.lock(),f=a._createAtlas(),d.push(f)),h.canvas&&(a._copyTextureToNewAtlas(p,h,f),e.set(p,f))}}}catch(a){o.e(a)}finally{o.f()}h.dispose()}())continue}catch(a){h.e(a)}finally{h.f()}this.atlases=d,this.styleKeyToAtlas=e,this.markedKeys=new Set}},{key:"_copyTextureToNewAtlas",value:function(a,b,c){var d=i(b.getOffsets(a),2),e=d[0],f=d[1];if(0===f.w)c.draw(a,e,function(a){a.drawImage(b.canvas,e.x,e.y,e.w,e.h,0,0,e.w,e.h)});else{var g=this._getScratchCanvas();g.clear(),g.context.drawImage(b.canvas,e.x,e.y,e.w,e.h,0,0,e.w,e.h),g.context.drawImage(b.canvas,f.x,f.y,f.w,f.h,e.w,0,f.w,f.h);var h=e.w+f.w,j=e.h;c.draw(a,{w:h,h:j},function(a){a.drawImage(g,0,0,h,j,0,0,h,j)})}}},{key:"getCounts",value:function(){return{keyCount:this.styleKeyToAtlas.size,atlasCount:new Set(this.styleKeyToAtlas.values()).size}}}]),jL=f(function a(b,c){e(this,a),this.r=b,this.globalOptions=c,this.atlasSize=c.webglTexSize,this.maxAtlasesPerBatch=c.webglTexPerBatch,this.renderTypes=new Map,this.collections=new Map,this.typeAndIdToKey=new Map},[{key:"getAtlasSize",value:function(){return this.atlasSize}},{key:"addAtlasCollection",value:function(a,b){var c=this.globalOptions,d=c.webglTexSize,e=c.createTextureCanvas,f=b.texRows,g=this._cacheScratchCanvas(e),h=new jK(this.r,d,f,g);this.collections.set(a,h)}},{key:"addRenderType",value:function(a,b){var c=b.collection;if(!this.collections.has(c))throw Error("invalid atlas collection name '".concat(c,"'"));var d=S({type:a,atlasCollection:this.collections.get(c)},b);this.renderTypes.set(a,d)}},{key:"getRenderTypeOpts",value:function(a){return this.renderTypes.get(a)}},{key:"getAtlasCollection",value:function(a){return this.collections.get(a)}},{key:"_cacheScratchCanvas",value:function(a){var b=-1,c=-1,d=null;return function(e,f,g,h){return h?(d&&f==b&&g==c||(b=f,c=g,d=a(e,f,g)),d):a(e,f,g)}}},{key:"_key",value:function(a,b){return"".concat(a,"-").concat(b)}},{key:"invalidate",value:function(a){var b,c=this,d=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},e=d.forceRedraw,f=void 0!==e&&e,h=d.filterEle,i=void 0===h?function(){return!0}:h,j=d.filterType,k=void 0===j?function(){return!0}:j,l=!1,n=!1,o=g(a);try{for(o.s();!(b=o.n()).done;){var p=b.value;if(i(p)){var q,r=g(this.renderTypes.values());try{for(r.s();!(q=r.n()).done;)!function(){var a=q.value,b=a.type;if(k(b)){var d=c.collections.get(a.collection),e=a.getKey(p),g=Array.isArray(e)?e:[e];if(f)g.forEach(function(a){return d.markKeyForGC(a)}),n=!0;else{var h=a.getID?a.getID(p):p.id(),i=c._key(b,h),j=c.typeAndIdToKey.get(i);void 0!==j&&!function(a,b){if(a.length!==b.length)return!1;for(var c=0;c<a.length;c++)if(a[c]!==b[c])return!1;return!0}(g,j)&&(l=!0,c.typeAndIdToKey.delete(i),j.forEach(function(a){return d.markKeyForGC(a)}))}}}()}catch(a){r.e(a)}finally{r.f()}}}}catch(a){o.e(a)}finally{o.f()}return n&&(this.gc(),l=!1),l}},{key:"gc",value:function(){var a,b=g(this.collections.values());try{for(b.s();!(a=b.n()).done;)a.value.gc()}catch(a){b.e(a)}finally{b.f()}}},{key:"getOrCreateAtlas",value:function(a,b,c,d){var e=this.renderTypes.get(b),f=this.collections.get(e.collection),g=!1,h=f.draw(d,c,function(b){e.drawClipped?(b.save(),b.beginPath(),b.rect(0,0,c.w,c.h),b.clip(),e.drawElement(b,a,c,!0,!0),b.restore()):e.drawElement(b,a,c,!0,!0),g=!0});if(g){var i=e.getID?e.getID(a):a.id(),j=this._key(b,i);this.typeAndIdToKey.has(j)?this.typeAndIdToKey.get(j).push(d):this.typeAndIdToKey.set(j,[d])}return h}},{key:"getAtlasInfo",value:function(a,b){var c=this,d=this.renderTypes.get(b),e=d.getKey(a);return(Array.isArray(e)?e:[e]).map(function(e){var f=d.getBoundingBox(a,e),g=c.getOrCreateAtlas(a,b,f,e),h=i(g.getOffsets(e),2),j=h[0];return{atlas:g,tex:j,tex1:j,tex2:h[1],bb:f}})}},{key:"getDebugInfo",value:function(){var a,b=[],c=g(this.collections);try{for(c.s();!(a=c.n()).done;){var d=i(a.value,2),e=d[0],f=d[1].getCounts(),h=f.keyCount,j=f.atlasCount;b.push({type:e,keyCount:h,atlasCount:j})}}catch(a){c.e(a)}finally{c.f()}return b}}]),jM=f(function a(b){e(this,a),this.globalOptions=b,this.atlasSize=b.webglTexSize,this.maxAtlasesPerBatch=b.webglTexPerBatch,this.batchAtlases=[]},[{key:"getMaxAtlasesPerBatch",value:function(){return this.maxAtlasesPerBatch}},{key:"getAtlasSize",value:function(){return this.atlasSize}},{key:"getIndexArray",value:function(){return Array.from({length:this.maxAtlasesPerBatch},function(a,b){return b})}},{key:"startBatch",value:function(){this.batchAtlases=[]}},{key:"getAtlasCount",value:function(){return this.batchAtlases.length}},{key:"getAtlases",value:function(){return this.batchAtlases}},{key:"canAddToCurrentBatch",value:function(a){return this.batchAtlases.length!==this.maxAtlasesPerBatch||this.batchAtlases.includes(a)}},{key:"getAtlasIndexForBatch",value:function(a){var b=this.batchAtlases.indexOf(a);if(b<0){if(this.batchAtlases.length===this.maxAtlasesPerBatch)throw Error("cannot add more atlases to batch");this.batchAtlases.push(a),b=this.batchAtlases.length-1}return b}}]),jN={name:"screen",screen:!0},jO={name:"picking",picking:!0},jP=f(function a(b,c,d){e(this,a),this.r=b,this.gl=c,this.maxInstances=d.webglBatchSize,this.atlasSize=d.webglTexSize,this.bgColor=d.bgColor,this.debug=d.webglDebug,this.batchDebugInfo=[],d.enableWrapping=!0,d.createTextureCanvas=jv,this.atlasManager=new jL(b,d),this.batchManager=new jM(d),this.simpleShapeOptions=new Map,this.program=this._createShaderProgram(jN),this.pickingProgram=this._createShaderProgram(jO),this.vao=this._createVAO()},[{key:"addAtlasCollection",value:function(a,b){this.atlasManager.addAtlasCollection(a,b)}},{key:"addTextureAtlasRenderType",value:function(a,b){this.atlasManager.addRenderType(a,b)}},{key:"addSimpleShapeRenderType",value:function(a,b){this.simpleShapeOptions.set(a,b)}},{key:"invalidate",value:function(a){var b=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},c=b.type,d=this.atlasManager;return c?d.invalidate(a,{filterType:function(a){return a===c},forceRedraw:!0}):d.invalidate(a)}},{key:"gc",value:function(){this.atlasManager.gc()}},{key:"_createShaderProgram",value:function(a){var b=this.gl,c="#version 300 es\n precision highp float;\n\n uniform mat3 uPanZoomMatrix;\n uniform int uAtlasSize;\n \n // instanced\n in vec2 aPosition; // a vertex from the unit square\n \n in mat3 aTransform; // used to transform verticies, eg into a bounding box\n in int aVertType; // the type of thing we are rendering\n\n // the z-index that is output when using picking mode\n in vec4 aIndex;\n \n // For textures\n in int aAtlasId; // which shader unit/atlas to use\n in vec4 aTex; // x/y/w/h of texture in atlas\n\n // for edges\n in vec4 aPointAPointB;\n in vec4 aPointCPointD;\n in vec2 aLineWidth; // also used for node border width\n\n // simple shapes\n in vec4 aCornerRadius; // for round-rectangle [top-right, bottom-right, top-left, bottom-left]\n in vec4 aColor; // also used for edges\n in vec4 aBorderColor; // aLineWidth is used for border width\n\n // output values passed to the fragment shader\n out vec2 vTexCoord;\n out vec4 vColor;\n out vec2 vPosition;\n // flat values are not interpolated\n flat out int vAtlasId; \n flat out int vVertType;\n flat out vec2 vTopRight;\n flat out vec2 vBotLeft;\n flat out vec4 vCornerRadius;\n flat out vec4 vBorderColor;\n flat out vec2 vBorderWidth;\n flat out vec4 vIndex;\n \n void main(void) {\n int vid = gl_VertexID;\n vec2 position = aPosition; // TODO make this a vec3, simplifies some code below\n\n if(aVertType == ".concat(0,") {\n float texX = aTex.x; // texture coordinates\n float texY = aTex.y;\n float texW = aTex.z;\n float texH = aTex.w;\n\n if(vid == 1 || vid == 2 || vid == 4) {\n texX += texW;\n }\n if(vid == 2 || vid == 4 || vid == 5) {\n texY += texH;\n }\n\n float d = float(uAtlasSize);\n vTexCoord = vec2(texX / d, texY / d); // tex coords must be between 0 and 1\n\n gl_Position = vec4(uPanZoomMatrix * aTransform * vec3(position, 1.0), 1.0);\n }\n else if(aVertType == ").concat(4," || aVertType == ").concat(7," \n || aVertType == ").concat(5," || aVertType == ").concat(6,") { // simple shapes\n\n // the bounding box is needed by the fragment shader\n vBotLeft = (aTransform * vec3(0, 0, 1)).xy; // flat\n vTopRight = (aTransform * vec3(1, 1, 1)).xy; // flat\n vPosition = (aTransform * vec3(position, 1)).xy; // will be interpolated\n\n // calculations are done in the fragment shader, just pass these along\n vColor = aColor;\n vCornerRadius = aCornerRadius;\n vBorderColor = aBorderColor;\n vBorderWidth = aLineWidth;\n\n gl_Position = vec4(uPanZoomMatrix * aTransform * vec3(position, 1.0), 1.0);\n }\n else if(aVertType == ").concat(1,") {\n vec2 source = aPointAPointB.xy;\n vec2 target = aPointAPointB.zw;\n\n // adjust the geometry so that the line is centered on the edge\n position.y = position.y - 0.5;\n\n // stretch the unit square into a long skinny rectangle\n vec2 xBasis = target - source;\n vec2 yBasis = normalize(vec2(-xBasis.y, xBasis.x));\n vec2 point = source + xBasis * position.x + yBasis * aLineWidth[0] * position.y;\n\n gl_Position = vec4(uPanZoomMatrix * vec3(point, 1.0), 1.0);\n vColor = aColor;\n } \n else if(aVertType == ").concat(2,") {\n vec2 pointA = aPointAPointB.xy;\n vec2 pointB = aPointAPointB.zw;\n vec2 pointC = aPointCPointD.xy;\n vec2 pointD = aPointCPointD.zw;\n\n // adjust the geometry so that the line is centered on the edge\n position.y = position.y - 0.5;\n\n vec2 p0, p1, p2, pos;\n if(position.x == 0.0) { // The left side of the unit square\n p0 = pointA;\n p1 = pointB;\n p2 = pointC;\n pos = position;\n } else { // The right side of the unit square, use same approach but flip the geometry upside down\n p0 = pointD;\n p1 = pointC;\n p2 = pointB;\n pos = vec2(0.0, -position.y);\n }\n\n vec2 p01 = p1 - p0;\n vec2 p12 = p2 - p1;\n vec2 p21 = p1 - p2;\n\n // Find the normal vector.\n vec2 tangent = normalize(normalize(p12) + normalize(p01));\n vec2 normal = vec2(-tangent.y, tangent.x);\n\n // Find the vector perpendicular to p0 -> p1.\n vec2 p01Norm = normalize(vec2(-p01.y, p01.x));\n\n // Determine the bend direction.\n float sigma = sign(dot(p01 + p21, normal));\n float width = aLineWidth[0];\n\n if(sign(pos.y) == -sigma) {\n // This is an intersecting vertex. Adjust the position so that there's no overlap.\n vec2 point = 0.5 * width * normal * -sigma / dot(normal, p01Norm);\n gl_Position = vec4(uPanZoomMatrix * vec3(p1 + point, 1.0), 1.0);\n } else {\n // This is a non-intersecting vertex. Treat it like a mitre join.\n vec2 point = 0.5 * width * normal * sigma * dot(normal, p01Norm);\n gl_Position = vec4(uPanZoomMatrix * vec3(p1 + point, 1.0), 1.0);\n }\n\n vColor = aColor;\n } \n else if(aVertType == ").concat(3," && vid < 3) {\n // massage the first triangle into an edge arrow\n if(vid == 0)\n position = vec2(-0.15, -0.3);\n if(vid == 1)\n position = vec2( 0.0, 0.0);\n if(vid == 2)\n position = vec2( 0.15, -0.3);\n\n gl_Position = vec4(uPanZoomMatrix * aTransform * vec3(position, 1.0), 1.0);\n vColor = aColor;\n }\n else {\n gl_Position = vec4(2.0, 0.0, 0.0, 1.0); // discard vertex by putting it outside webgl clip space\n }\n\n vAtlasId = aAtlasId;\n vVertType = aVertType;\n vIndex = aIndex;\n }\n "),d=this.batchManager.getIndexArray(),e=function(a,b,c){var d=ju(a,a.VERTEX_SHADER,b),e=ju(a,a.FRAGMENT_SHADER,c),f=a.createProgram();if(a.attachShader(f,d),a.attachShader(f,e),a.linkProgram(f),!a.getProgramParameter(f,a.LINK_STATUS))throw Error("Could not initialize shaders");return f}(b,c,"#version 300 es\n precision highp float;\n\n // declare texture unit for each texture atlas in the batch\n ".concat(d.map(function(a){return"uniform sampler2D uTexture".concat(a,";")}).join("\n "),"\n\n uniform vec4 uBGColor;\n uniform float uZoom;\n\n in vec2 vTexCoord;\n in vec4 vColor;\n in vec2 vPosition; // model coordinates\n\n flat in int vAtlasId;\n flat in vec4 vIndex;\n flat in int vVertType;\n flat in vec2 vTopRight;\n flat in vec2 vBotLeft;\n flat in vec4 vCornerRadius;\n flat in vec4 vBorderColor;\n flat in vec2 vBorderWidth;\n\n out vec4 outColor;\n\n ").concat("\n float circleSD(vec2 p, float r) {\n return distance(vec2(0), p) - r; // signed distance\n }\n","\n ").concat("\n float rectangleSD(vec2 p, vec2 b) {\n vec2 d = abs(p)-b;\n return distance(vec2(0),max(d,0.0)) + min(max(d.x,d.y),0.0);\n }\n","\n ").concat("\n float roundRectangleSD(vec2 p, vec2 b, vec4 cr) {\n cr.xy = (p.x > 0.0) ? cr.xy : cr.zw;\n cr.x = (p.y > 0.0) ? cr.x : cr.y;\n vec2 q = abs(p) - b + cr.x;\n return min(max(q.x, q.y), 0.0) + distance(vec2(0), max(q, 0.0)) - cr.x;\n }\n","\n ").concat("\n float ellipseSD(vec2 p, vec2 ab) {\n p = abs( p ); // symmetry\n\n // find root with Newton solver\n vec2 q = ab*(p-ab);\n float w = (q.x<q.y)? 1.570796327 : 0.0;\n for( int i=0; i<5; i++ ) {\n vec2 cs = vec2(cos(w),sin(w));\n vec2 u = ab*vec2( cs.x,cs.y);\n vec2 v = ab*vec2(-cs.y,cs.x);\n w = w + dot(p-u,v)/(dot(p-u,u)+dot(v,v));\n }\n \n // compute final point and distance\n float d = length(p-ab*vec2(cos(w),sin(w)));\n \n // return signed distance\n return (dot(p/ab,p/ab)>1.0) ? d : -d;\n }\n","\n\n vec4 blend(vec4 top, vec4 bot) { // blend colors with premultiplied alpha\n return vec4( \n top.rgb + (bot.rgb * (1.0 - top.a)),\n top.a + (bot.a * (1.0 - top.a)) \n );\n }\n\n vec4 distInterp(vec4 cA, vec4 cB, float d) { // interpolate color using Signed Distance\n // scale to the zoom level so that borders don't look blurry when zoomed in\n // note 1.5 is an aribitrary value chosen because it looks good\n return mix(cA, cB, 1.0 - smoothstep(0.0, 1.5 / uZoom, abs(d))); \n }\n\n void main(void) {\n if(vVertType == ").concat(0,") {\n // look up the texel from the texture unit\n ").concat(d.map(function(a){return"if(vAtlasId == ".concat(a,") outColor = texture(uTexture").concat(a,", vTexCoord);")}).join("\n else "),"\n } \n else if(vVertType == ").concat(3,") {\n // mimics how canvas renderer uses context.globalCompositeOperation = 'destination-out';\n outColor = blend(vColor, uBGColor);\n outColor.a = 1.0; // make opaque, masks out line under arrow\n }\n else if(vVertType == ").concat(4," && vBorderWidth == vec2(0.0)) { // simple rectangle with no border\n outColor = vColor; // unit square is already transformed to the rectangle, nothing else needs to be done\n }\n else if(vVertType == ").concat(4," || vVertType == ").concat(7," \n || vVertType == ").concat(5," || vVertType == ").concat(6,") { // use SDF\n\n float outerBorder = vBorderWidth[0];\n float innerBorder = vBorderWidth[1];\n float borderPadding = outerBorder * 2.0;\n float w = vTopRight.x - vBotLeft.x - borderPadding;\n float h = vTopRight.y - vBotLeft.y - borderPadding;\n vec2 b = vec2(w/2.0, h/2.0); // half width, half height\n vec2 p = vPosition - vec2(vTopRight.x - b[0] - outerBorder, vTopRight.y - b[1] - outerBorder); // translate to center\n\n float d; // signed distance\n if(vVertType == ").concat(4,") {\n d = rectangleSD(p, b);\n } else if(vVertType == ").concat(7," && w == h) {\n d = circleSD(p, b.x); // faster than ellipse\n } else if(vVertType == ").concat(7,") {\n d = ellipseSD(p, b);\n } else {\n d = roundRectangleSD(p, b, vCornerRadius.wzyx);\n }\n\n // use the distance to interpolate a color to smooth the edges of the shape, doesn't need multisampling\n // we must smooth colors inwards, because we can't change pixels outside the shape's bounding box\n if(d > 0.0) {\n if(d > outerBorder) {\n discard;\n } else {\n outColor = distInterp(vBorderColor, vec4(0), d - outerBorder);\n }\n } else {\n if(d > innerBorder) {\n vec4 outerColor = outerBorder == 0.0 ? vec4(0) : vBorderColor;\n vec4 innerBorderColor = blend(vBorderColor, vColor);\n outColor = distInterp(innerBorderColor, outerColor, d);\n } \n else {\n vec4 outerColor;\n if(innerBorder == 0.0 && outerBorder == 0.0) {\n outerColor = vec4(0);\n } else if(innerBorder == 0.0) {\n outerColor = vBorderColor;\n } else {\n outerColor = blend(vBorderColor, vColor);\n }\n outColor = distInterp(vColor, outerColor, d - innerBorder);\n }\n }\n }\n else {\n outColor = vColor;\n }\n\n ").concat(a.picking?"if(outColor.a == 0.0) discard;\n else outColor = vIndex;":"","\n }\n "));e.aPosition=b.getAttribLocation(e,"aPosition"),e.aIndex=b.getAttribLocation(e,"aIndex"),e.aVertType=b.getAttribLocation(e,"aVertType"),e.aTransform=b.getAttribLocation(e,"aTransform"),e.aAtlasId=b.getAttribLocation(e,"aAtlasId"),e.aTex=b.getAttribLocation(e,"aTex"),e.aPointAPointB=b.getAttribLocation(e,"aPointAPointB"),e.aPointCPointD=b.getAttribLocation(e,"aPointCPointD"),e.aLineWidth=b.getAttribLocation(e,"aLineWidth"),e.aColor=b.getAttribLocation(e,"aColor"),e.aCornerRadius=b.getAttribLocation(e,"aCornerRadius"),e.aBorderColor=b.getAttribLocation(e,"aBorderColor"),e.uPanZoomMatrix=b.getUniformLocation(e,"uPanZoomMatrix"),e.uAtlasSize=b.getUniformLocation(e,"uAtlasSize"),e.uBGColor=b.getUniformLocation(e,"uBGColor"),e.uZoom=b.getUniformLocation(e,"uZoom"),e.uTextures=[];for(var f=0;f<this.batchManager.getMaxAtlasesPerBatch();f++)e.uTextures.push(b.getUniformLocation(e,"uTexture".concat(f)));return e}},{key:"_createVAO",value:function(){var a,b,c,d,e,f,g=[0,0,1,0,1,1,0,0,1,1,0,1];this.vertexCount=g.length/2;var h=this.maxInstances,j=this.gl,k=this.program,l=j.createVertexArray();return j.bindVertexArray(l),a=k.aPosition,c=(b=i(jA(j,"vec2"),2))[0],e=jB(j,d=b[1],g),f=j.createBuffer(),j.bindBuffer(j.ARRAY_BUFFER,f),j.bufferData(j.ARRAY_BUFFER,e,j.STATIC_DRAW),d===j.FLOAT?j.vertexAttribPointer(a,c,d,!1,0,0):d===j.INT&&j.vertexAttribIPointer(a,c,d,0,0),j.enableVertexAttribArray(a),j.bindBuffer(j.ARRAY_BUFFER,null),this.transformBuffer=function(a,b,c){for(var d=new Float32Array(9*b),e=Array(b),f=0;f<b;f++){var g=9*f*4;e[f]=new Float32Array(d.buffer,g,9)}var h=a.createBuffer();a.bindBuffer(a.ARRAY_BUFFER,h),a.bufferData(a.ARRAY_BUFFER,d.byteLength,a.DYNAMIC_DRAW);for(var i=0;i<3;i++){var j=c+i;a.enableVertexAttribArray(j),a.vertexAttribPointer(j,3,a.FLOAT,!1,36,12*i),a.vertexAttribDivisor(j,1)}return a.bindBuffer(a.ARRAY_BUFFER,null),h.getMatrixView=function(a){return e[a]},h.setData=function(a,b){e[b].set(a,0)},h.bufferSubData=function(){a.bindBuffer(a.ARRAY_BUFFER,h),a.bufferSubData(a.ARRAY_BUFFER,0,d)},h}(j,h,k.aTransform),this.indexBuffer=jC(j,h,"vec4",k.aIndex),this.vertTypeBuffer=jC(j,h,"int",k.aVertType),this.atlasIdBuffer=jC(j,h,"int",k.aAtlasId),this.texBuffer=jC(j,h,"vec4",k.aTex),this.pointAPointBBuffer=jC(j,h,"vec4",k.aPointAPointB),this.pointCPointDBuffer=jC(j,h,"vec4",k.aPointCPointD),this.lineWidthBuffer=jC(j,h,"vec2",k.aLineWidth),this.colorBuffer=jC(j,h,"vec4",k.aColor),this.cornerRadiusBuffer=jC(j,h,"vec4",k.aCornerRadius),this.borderColorBuffer=jC(j,h,"vec4",k.aBorderColor),j.bindVertexArray(null),l}},{key:"buffers",get:function(){var a=this;return this._buffers||(this._buffers=Object.keys(this).filter(function(a){return L(a,"Buffer")}).map(function(b){return a[b]})),this._buffers}},{key:"startFrame",value:function(a){var b=arguments.length>1&&void 0!==arguments[1]?arguments[1]:jN;this.panZoomMatrix=a,this.renderTarget=b,this.batchDebugInfo=[],this.wrappedCount=0,this.simpleCount=0,this.startBatch()}},{key:"startBatch",value:function(){this.instanceCount=0,this.batchManager.startBatch()}},{key:"endFrame",value:function(){this.endBatch()}},{key:"_isVisible",value:function(a,b){return!!a.visible()&&(!b||!b.isVisible||b.isVisible(a))}},{key:"drawTexture",value:function(a,b,c){var d=this.atlasManager,e=this.batchManager,f=d.getRenderTypeOpts(c);if(this._isVisible(a,f)&&(!a.isEdge()||this._isValidEdge(a))){if(this.renderTarget.picking&&f.getTexPickingMode){var h=f.getTexPickingMode(a);if(1===h)return;if(2==h)return void this.drawPickingRectangle(a,b,c)}var j,k=g(d.getAtlasInfo(a,c));try{for(k.s();!(j=k.n()).done;){var l=j.value,n=l.atlas,o=l.tex1,p=l.tex2;e.canAddToCurrentBatch(n)||this.endBatch();for(var q=e.getAtlasIndexForBatch(n),r=0,s=[[o,!0],[p,!1]];r<s.length;r++){var t=i(s[r],2),u=t[0],v=t[1];if(0!=u.w){var w=this.instanceCount;this.vertTypeBuffer.getView(w)[0]=0;var x=this.indexBuffer.getView(w);jz(b,x),this.atlasIdBuffer.getView(w)[0]=q;var y=this.texBuffer.getView(w);y[0]=u.x,y[1]=u.y,y[2]=u.w,y[3]=u.h;var z=this.transformBuffer.getMatrixView(w);this.setTransformMatrix(a,z,f,l,v),this.instanceCount++,!v&&this.wrappedCount++,this.instanceCount>=this.maxInstances&&this.endBatch()}}}}catch(a){k.e(a)}finally{k.f()}}}},{key:"setTransformMatrix",value:function(a,b,c,d){var e=!(arguments.length>4)||void 0===arguments[4]||arguments[4],f=0;if(c.shapeProps&&c.shapeProps.padding&&(f=a.pstyle(c.shapeProps.padding).pfValue),d){var g=d.bb,h=d.tex1,i=d.tex2,j=h.w/(h.w+i.w);e||(j=1-j);var k=this._getAdjustedBB(g,f,e,j);this._applyTransformMatrix(b,k,c,a)}else{var l=c.getBoundingBox(a),n=this._getAdjustedBB(l,f,!0,1);this._applyTransformMatrix(b,n,c,a)}}},{key:"_applyTransformMatrix",value:function(a,b,c,d){jF(a);var e,f,g=c.getRotation?c.getRotation(d):0;if(0!==g){var h=c.getRotationPoint(d);jG(a,a,[h.x,h.y]),jH(a,a,g);var i=c.getRotationOffset(d);e=i.x+(b.xOffset||0),f=i.y+(b.yOffset||0)}else e=b.x1,f=b.y1;jG(a,a,[e,f]),jI(a,a,[b.w,b.h])}},{key:"_getAdjustedBB",value:function(a,b,c,d){var e=a.x1,f=a.y1,g=a.w,h=a.h,i=a.yOffset;b&&(e-=b,f-=b,g+=2*b,h+=2*b);var j=0,k=g*d;return c&&d<1?g=k:!c&&d<1&&(e+=j=g-k,g=k),{x1:e,y1:f,w:g,h:h,xOffset:j,yOffset:i}}},{key:"drawPickingRectangle",value:function(a,b,c){var d=this.atlasManager.getRenderTypeOpts(c),e=this.instanceCount;this.vertTypeBuffer.getView(e)[0]=4,jz(b,this.indexBuffer.getView(e)),jy([0,0,0],1,this.colorBuffer.getView(e));var f=this.transformBuffer.getMatrixView(e);this.setTransformMatrix(a,f,d),this.simpleCount++,this.instanceCount++,this.instanceCount>=this.maxInstances&&this.endBatch()}},{key:"drawNode",value:function(a,b,c){var d=this.simpleShapeOptions.get(c);if(this._isVisible(a,d)){var e=d.shapeProps,f=this._getVertTypeForShape(a,e.shape);if(void 0===f||d.isSimple&&!d.isSimple(a))return void this.drawTexture(a,b,c);var g=this.instanceCount;if(this.vertTypeBuffer.getView(g)[0]=f,5===f||6===f){var h=d.getBoundingBox(a),i=this._getCornerRadius(a,e.radius,h),j=this.cornerRadiusBuffer.getView(g);j[0]=i,j[1]=i,j[2]=i,j[3]=i,6===f&&(j[0]=0,j[2]=0)}jz(b,this.indexBuffer.getView(g)),jy(a.pstyle(e.color).value,a.pstyle(e.opacity).value,this.colorBuffer.getView(g));var k=this.lineWidthBuffer.getView(g);if(k[0]=0,k[1]=0,e.border){var l=a.pstyle("border-width").value;if(l>0){jy(a.pstyle("border-color").value,a.pstyle("border-opacity").value,this.borderColorBuffer.getView(g));var n=a.pstyle("border-position").value;if("inside"===n)k[0]=0,k[1]=-l;else if("outside"===n)k[0]=l,k[1]=0;else{var o=l/2;k[0]=o,k[1]=-o}}}var p=this.transformBuffer.getMatrixView(g);this.setTransformMatrix(a,p,d),this.simpleCount++,this.instanceCount++,this.instanceCount>=this.maxInstances&&this.endBatch()}}},{key:"_getVertTypeForShape",value:function(a,b){switch(a.pstyle(b).value){case"rectangle":return 4;case"ellipse":return 7;case"roundrectangle":case"round-rectangle":return 5;case"bottom-round-rectangle":return 6;default:return}}},{key:"_getCornerRadius",value:function(a,b,c){var d=c.w,e=c.h;return"auto"===a.pstyle(b).value?bT(d,e):Math.min(a.pstyle(b).pfValue,e/2,d/2)}},{key:"drawEdgeArrow",value:function(a,b,c){if(a.visible()){var d,e,f,g=a._private.rscratch;if(("source"===c?(d=g.arrowStartX,e=g.arrowStartY,f=g.srcArrowAngle):(d=g.arrowEndX,e=g.arrowEndY,f=g.tgtArrowAngle),!(isNaN(d)||null==d||isNaN(e)||null==e||isNaN(f))&&null!=f)&&"none"!==a.pstyle(c+"-arrow-shape").value){var h=a.pstyle(c+"-arrow-color").value,i=a.pstyle("opacity").value,j=a.pstyle("line-opacity").value,k=a.pstyle("width").pfValue,l=a.pstyle("arrow-scale").value,n=this.r.getArrowWidth(k,l),o=this.instanceCount,p=this.transformBuffer.getMatrixView(o);jF(p),jG(p,p,[d,e]),jI(p,p,[n,n]),jH(p,p,f),this.vertTypeBuffer.getView(o)[0]=3,jz(b,this.indexBuffer.getView(o)),jy(h,i*j,this.colorBuffer.getView(o)),this.instanceCount++,this.instanceCount>=this.maxInstances&&this.endBatch()}}}},{key:"drawEdgeLine",value:function(a,b){if(a.visible()){var c=this._getEdgePoints(a);if(c){var d=a.pstyle("opacity").value,e=a.pstyle("line-opacity").value,f=a.pstyle("width").pfValue,g=a.pstyle("line-color").value,h=d*e;if(c.length/2+this.instanceCount>this.maxInstances&&this.endBatch(),4==c.length){var i=this.instanceCount;this.vertTypeBuffer.getView(i)[0]=1,jz(b,this.indexBuffer.getView(i)),jy(g,h,this.colorBuffer.getView(i)),this.lineWidthBuffer.getView(i)[0]=f;var j=this.pointAPointBBuffer.getView(i);j[0]=c[0],j[1]=c[1],j[2]=c[2],j[3]=c[3],this.instanceCount++,this.instanceCount>=this.maxInstances&&this.endBatch()}else for(var k=0;k<c.length-2;k+=2){var l=this.instanceCount;this.vertTypeBuffer.getView(l)[0]=2,jz(b,this.indexBuffer.getView(l)),jy(g,h,this.colorBuffer.getView(l)),this.lineWidthBuffer.getView(l)[0]=f;var n=c[k-2],o=c[k-1],p=c[k],q=c[k+1],r=c[k+2],s=c[k+3],t=c[k+4],u=c[k+5];0==k&&(n=2*p-r+.001,o=2*q-s+.001),k==c.length-4&&(t=2*r-p+.001,u=2*s-q+.001);var v=this.pointAPointBBuffer.getView(l);v[0]=n,v[1]=o,v[2]=p,v[3]=q;var w=this.pointCPointDBuffer.getView(l);w[0]=r,w[1]=s,w[2]=t,w[3]=u,this.instanceCount++,this.instanceCount>=this.maxInstances&&this.endBatch()}}}}},{key:"_isValidEdge",value:function(a){var b=a._private.rscratch;return!(b.badLine||null==b.allpts||isNaN(b.allpts[0]))}},{key:"_getEdgePoints",value:function(a){var b=a._private.rscratch;if(this._isValidEdge(a)){var c=b.allpts;if(4==c.length)return c;var d=this._getNumSegments(a);return this._getCurveSegmentPoints(c,d)}}},{key:"_getNumSegments",value:function(a){return Math.min(15,this.maxInstances)}},{key:"_getCurveSegmentPoints",value:function(a,b){if(4==a.length)return a;for(var c=Array((b+1)*2),d=0;d<=b;d++)if(0==d)c[0]=a[0],c[1]=a[1];else if(d==b)c[2*d]=a[a.length-2],c[2*d+1]=a[a.length-1];else{var e=d/b;this._setCurvePoint(a,e,c,2*d)}return c}},{key:"_setCurvePoint",value:function(a,b,c,d){if(a.length<=2)c[d]=a[0],c[d+1]=a[1];else{for(var e=Array(a.length-2),f=0;f<e.length;f+=2){var g=(1-b)*a[f]+b*a[f+2],h=(1-b)*a[f+1]+b*a[f+3];e[f]=g,e[f+1]=h}return this._setCurvePoint(e,b,c,d)}}},{key:"endBatch",value:function(){var a=this.gl,b=this.vao,c=this.vertexCount,d=this.instanceCount;if(0!==d){var e,f,h=this.renderTarget.picking?this.pickingProgram:this.program;a.useProgram(h),a.bindVertexArray(b);var i,j=g(this.buffers);try{for(j.s();!(i=j.n()).done;)i.value.bufferSubData(d)}catch(a){j.e(a)}finally{j.f()}for(var k=this.batchManager.getAtlases(),l=0;l<k.length;l++)k[l].bufferIfNeeded(a);for(var n=0;n<k.length;n++)a.activeTexture(a.TEXTURE0+n),a.bindTexture(a.TEXTURE_2D,k[n].texture),a.uniform1i(h.uTextures[n],n);a.uniform1f(h.uZoom,(f=(e=this.r).pixelRatio,e.cy.zoom()*f)),a.uniformMatrix3fv(h.uPanZoomMatrix,!1,this.panZoomMatrix),a.uniform1i(h.uAtlasSize,this.batchManager.getAtlasSize());var o=jy(this.bgColor,1);a.uniform4fv(h.uBGColor,o),a.drawArraysInstanced(a.TRIANGLES,0,c,d),a.bindVertexArray(null),a.bindTexture(a.TEXTURE_2D,null),this.debug&&this.batchDebugInfo.push({count:d,atlasCount:k.length}),this.startBatch()}}},{key:"getDebugInfo",value:function(){var a=this.atlasManager.getDebugInfo(),b=a.reduce(function(a,b){return a+b.atlasCount},0),c=this.batchDebugInfo,d=c.reduce(function(a,b){return a+b.count},0);return{atlasInfo:a,totalAtlases:b,wrappedCount:this.wrappedCount,simpleCount:this.simpleCount,batchCount:c.length,batchInfo:c,totalInstances:d}}}]),jQ={};function jR(a,b){return aL(a._private.rscratch,"labelWrapCachedLines",b)||[]}jQ.initWebgl=function(a,b){var c,d,e,f,h,j,k,l,n=this,o=n.data.contexts[n.WEBGL];a.bgColor=W((c=n.cy.container())&&c.style&&c.style.backgroundColor||"white"),a.webglTexSize=Math.min(a.webglTexSize,o.getParameter(o.MAX_TEXTURE_SIZE)),a.webglTexRows=Math.min(a.webglTexRows,54),a.webglTexRowsNodes=Math.min(a.webglTexRowsNodes,54),a.webglBatchSize=Math.min(a.webglBatchSize,16384),a.webglTexPerBatch=Math.min(a.webglTexPerBatch,o.getParameter(o.MAX_TEXTURE_IMAGE_UNITS)),n.webglDebug=a.webglDebug,n.webglDebugShowAtlases=a.webglDebugShowAtlases,k=o.createFramebuffer(),o.bindFramebuffer(o.FRAMEBUFFER,k),l=o.createTexture(),o.bindTexture(o.TEXTURE_2D,l),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_MIN_FILTER,o.LINEAR),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_S,o.CLAMP_TO_EDGE),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_T,o.CLAMP_TO_EDGE),o.framebufferTexture2D(o.FRAMEBUFFER,o.COLOR_ATTACHMENT0,o.TEXTURE_2D,l,0),o.bindFramebuffer(o.FRAMEBUFFER,null),k.setFramebufferAttachmentSizes=function(a,b){o.bindTexture(o.TEXTURE_2D,l),o.texImage2D(o.TEXTURE_2D,0,o.RGBA,a,b,0,o.RGBA,o.UNSIGNED_BYTE,null)},n.pickingFrameBuffer=k,n.pickingFrameBuffer.needsDraw=!0,n.drawing=new jP(n,o,a);var p=function(a){return function(b){return n.getTextAngle(b,a)}},q=function(a){return function(b){var c=b.pstyle(a);return c&&c.value}},r=function(a){return function(b){return b.pstyle("".concat(a,"-opacity")).value>0}},s=function(a){return"yes"===a.pstyle("text-events").strValue?2:1},t=function(a){var b=a.position(),c=b.x,d=b.y,e=a.outerWidth(),f=a.outerHeight();return{w:e,h:f,x1:c-e/2,y1:d-f/2}};n.drawing.addAtlasCollection("node",{texRows:a.webglTexRowsNodes}),n.drawing.addAtlasCollection("label",{texRows:a.webglTexRows}),n.drawing.addTextureAtlasRenderType("node-body",{collection:"node",getKey:b.getStyleKey,getBoundingBox:b.getElementBox,drawElement:b.drawElement}),n.drawing.addSimpleShapeRenderType("node-body",{getBoundingBox:t,isSimple:jx,shapeProps:{shape:"shape",color:"background-color",opacity:"background-opacity",radius:"corner-radius",border:!0}}),n.drawing.addSimpleShapeRenderType("node-overlay",{getBoundingBox:t,isVisible:r("overlay"),shapeProps:{shape:"overlay-shape",color:"overlay-color",opacity:"overlay-opacity",padding:"overlay-padding",radius:"overlay-corner-radius"}}),n.drawing.addSimpleShapeRenderType("node-underlay",{getBoundingBox:t,isVisible:r("underlay"),shapeProps:{shape:"underlay-shape",color:"underlay-color",opacity:"underlay-opacity",padding:"underlay-padding",radius:"underlay-corner-radius"}}),n.drawing.addTextureAtlasRenderType("label",{collection:"label",getTexPickingMode:s,getKey:jS(b.getLabelKey,null),getBoundingBox:jT(b.getLabelBox,null),drawClipped:!0,drawElement:b.drawLabel,getRotation:p(null),getRotationPoint:b.getLabelRotationPoint,getRotationOffset:b.getLabelRotationOffset,isVisible:q("label")}),n.drawing.addTextureAtlasRenderType("edge-source-label",{collection:"label",getTexPickingMode:s,getKey:jS(b.getSourceLabelKey,"source"),getBoundingBox:jT(b.getSourceLabelBox,"source"),drawClipped:!0,drawElement:b.drawSourceLabel,getRotation:p("source"),getRotationPoint:b.getSourceLabelRotationPoint,getRotationOffset:b.getSourceLabelRotationOffset,isVisible:q("source-label")}),n.drawing.addTextureAtlasRenderType("edge-target-label",{collection:"label",getTexPickingMode:s,getKey:jS(b.getTargetLabelKey,"target"),getBoundingBox:jT(b.getTargetLabelBox,"target"),drawClipped:!0,drawElement:b.drawTargetLabel,getRotation:p("target"),getRotationPoint:b.getTargetLabelRotationPoint,getRotationOffset:b.getTargetLabelRotationOffset,isVisible:q("target-label")});var u=af(function(){console.log("garbage collect flag set"),n.data.gc=!0},1e4);n.onUpdateEleCalcs(function(a,b){var c=!1;b&&b.length>0&&(c|=n.drawing.invalidate(b)),c&&u()}),e=(d=n).render,d.render=function(a){a=a||{};var b,c,f,g,h=d.cy;d.webgl&&(h.zoom()>7.99?((c=(b=d).data.contexts[b.WEBGL]).clear(c.COLOR_BUFFER_BIT|c.DEPTH_BUFFER_BIT),e.call(d,a)):(f=d,(g=function(a){a.save(),a.setTransform(1,0,0,1,0,0),a.clearRect(0,0,f.canvasWidth,f.canvasHeight),a.restore()})(f.data.contexts[f.NODE]),g(f.data.contexts[f.DRAG]),jW(d,a,jN)))},f=d.matchCanvasSize,d.matchCanvasSize=function(a){f.call(d,a),d.pickingFrameBuffer.setFramebufferAttachmentSizes(d.canvasWidth,d.canvasHeight),d.pickingFrameBuffer.needsDraw=!0},d.findNearestElements=function(a,b,c,e){return function(a,b,c){var d,e,f,h=function(a,b,c,d,e){var f=jw(a),g=f.pan,h=f.zoom,j=i((r=b*h+g.x,s=c*h+g.y,[r,s=Math.round(a.canvasHeight-s)]),2),k=j[0],l=j[1],n=a.data.contexts[a.WEBGL];n.bindFramebuffer(n.FRAMEBUFFER,a.pickingFrameBuffer),a.pickingFrameBuffer.needsDraw&&(n.viewport(0,0,n.canvas.width,n.canvas.height),jW(a,null,jO),a.pickingFrameBuffer.needsDraw=!1);var o=new Uint8Array(144);n.readPixels(k-3,l-3,6,6,n.RGBA,n.UNSIGNED_BYTE,o),n.bindFramebuffer(n.FRAMEBUFFER,null);for(var p=new Set,q=0;q<36;q++){var r,s,t,u=(t=o.slice(4*q,4*q+4))[0]+(t[1]<<8)+(t[2]<<16)+(t[3]<<24)-1;u>=0&&p.add(u)}return p}(a,b,c),j=a.getCachedZSortedEles(),k=g(h);try{for(k.s();!(f=k.n()).done;){var l=j[f.value];if(!d&&l.isNode()&&(d=l),!e&&l.isEdge()&&(e=l),d&&e)break}}catch(a){k.e(a)}finally{k.f()}return[d,e].filter(Boolean)}(d,a,b)},h=d.invalidateCachedZSortedEles,d.invalidateCachedZSortedEles=function(){h.call(d),d.pickingFrameBuffer.needsDraw=!0},j=d.notify,d.notify=function(a,b){j.call(d,a,b),"viewport"===a||"bounds"===a?d.pickingFrameBuffer.needsDraw=!0:"background"===a&&d.drawing.invalidate(b,{type:"node-body"})}};var jS=function(a,b){return function(c){var d=a(c),e=jR(c,b);return e.length>1?e.map(function(a,b){return"".concat(d,"_").concat(b)}):d}},jT=function(a,b){return function(c,d){var e=a(c);if("string"==typeof d){var f=d.indexOf("_");if(f>0){var g=Number(d.substring(f+1)),h=jR(c,b),i=e.h/h.length,j=i*g,k=e.y1+j;return{x1:e.x1,w:e.w,y1:k,h:i,yOffset:j}}}return e}};function jU(a,b){var c=a.canvasWidth,d=a.canvasHeight,e=jw(a),f=e.pan,g=e.zoom;b.setTransform(1,0,0,1,0,0),b.clearRect(0,0,c,d),b.translate(f.x,f.y),b.scale(g,g)}function jV(a,b,c){var d=a.drawing;b+=1,c.isNode()?(d.drawNode(c,b,"node-underlay"),d.drawNode(c,b,"node-body"),d.drawTexture(c,b,"label"),d.drawNode(c,b,"node-overlay")):(d.drawEdgeLine(c,b),d.drawEdgeArrow(c,b,"source"),d.drawEdgeArrow(c,b,"target"),d.drawTexture(c,b,"label"),d.drawTexture(c,b,"edge-source-label"),d.drawTexture(c,b,"edge-target-label"))}function jW(a,b,c){a.webglDebug&&(V=performance.now());var d=a.drawing,e=0;if(c.screen&&a.data.canvasNeedsRedraw[a.SELECT_BOX]&&a.drawSelectionRectangle(b,function(b){return jU(a,b)}),a.data.canvasNeedsRedraw[a.NODE]||c.picking){var f,h,i,j,k,l,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M=a.data.contexts[a.WEBGL];c.screen?(M.clearColor(0,0,0,0),M.enable(M.BLEND),M.blendFunc(M.ONE,M.ONE_MINUS_SRC_ALPHA)):M.disable(M.BLEND),M.clear(M.COLOR_BUFFER_BIT|M.DEPTH_BUFFER_BIT),M.viewport(0,0,M.canvas.width,M.canvas.height);var N=(f=a.canvasWidth,h=a.canvasHeight,j=(i=jw(a)).pan,k=i.zoom,jG(l=jE(),l,[j.x,j.y]),jI(l,l,[k,k]),o=n=jE(),o[0]=2/f,o[1]=0,o[2]=0,o[3]=0,o[4]=-2/h,o[5]=0,o[6]=-1,o[7]=1,o[8]=1,q=p=jE(),r=n[0],s=n[1],t=n[2],u=n[3],v=n[4],w=n[5],x=n[6],y=n[7],z=n[8],A=l[0],B=l[1],C=l[2],D=l[3],E=l[4],F=l[5],G=l[6],H=l[7],I=l[8],q[0]=A*r+B*u+C*x,q[1]=A*s+B*v+C*y,q[2]=A*t+B*w+C*z,q[3]=D*r+E*u+F*x,q[4]=D*s+E*v+F*y,q[5]=D*t+E*w+F*z,q[6]=G*r+H*u+I*x,q[7]=G*s+H*v+I*y,q[8]=G*t+H*w+I*z,p),O=a.getCachedZSortedEles();if(e=O.length,d.startFrame(N,c),c.screen){for(var P=0;P<O.nondrag.length;P++)jV(a,P,O.nondrag[P]);for(var Q=0;Q<O.drag.length;Q++)jV(a,Q,O.drag[Q])}else if(c.picking)for(var R=0;R<O.length;R++)jV(a,R,O[R]);d.endFrame(),c.screen&&a.webglDebugShowAtlases&&((J=a.data.contexts[a.NODE]).save(),jU(a,J),J.strokeStyle="rgba(0, 0, 0, 0.3)",J.beginPath(),J.moveTo(-1e3,0),J.lineTo(1e3,0),J.stroke(),J.beginPath(),J.moveTo(0,-1e3),J.lineTo(0,1e3),J.stroke(),J.restore(),L=0,(K=function(b,c,d){for(var e=b.atlasManager.getAtlasCollection(c),f=a.data.contexts[a.NODE],g=e.atlases,h=0;h<g.length;h++){var i=g[h].canvas;if(i){var j=i.width,k=i.height,l=j*h,n=i.height*d;f.save(),f.scale(.4,.4),f.drawImage(i,l,n),f.strokeStyle="black",f.rect(l,n,j,k),f.stroke(),f.restore()}}})(a.drawing,"node",L++),K(a.drawing,"label",L++)),a.data.canvasNeedsRedraw[a.NODE]=!1,a.data.canvasNeedsRedraw[a.DRAG]=!1}if(a.webglDebug){var S=Math.ceil(performance.now()-V),T=d.getDebugInfo(),U=["".concat(e," elements"),"".concat(T.totalInstances," instances"),"".concat(T.batchCount," batches"),"".concat(T.totalAtlases," atlases"),"".concat(T.wrappedCount," wrapped textures"),"".concat(T.simpleCount," simple shapes")].join(", ");console.log("WebGL (".concat(c.name,") - frame time ").concat(S,"ms")),console.log("Totals:"),console.log(" ".concat(U)),console.log("Texture Atlases Used:");var V,W,X=g(T.atlasInfo);try{for(X.s();!(W=X.n()).done;){var Y=W.value;console.log(" ".concat(Y.type,": ").concat(Y.keyCount," keys, ").concat(Y.atlasCount," atlases"))}}catch(a){X.e(a)}finally{X.f()}console.log("")}a.data.gc&&(console.log("Garbage Collect!"),a.data.gc=!1,d.gc())}var jX={};jX.drawPolygonPath=function(a,b,c,d,e,f){var g=d/2,h=e/2;a.beginPath&&a.beginPath(),a.moveTo(b+g*f[0],c+h*f[1]);for(var i=1;i<f.length/2;i++)a.lineTo(b+g*f[2*i],c+h*f[2*i+1]);a.closePath()},jX.drawRoundPolygonPath=function(a,b,c,d,e,f,g){g.forEach(function(b){return iE(a,b)}),a.closePath()},jX.drawRoundRectanglePath=function(a,b,c,d,e,f){var g=d/2,h=e/2,i="auto"===f?bT(d,e):Math.min(f,h,g);a.beginPath&&a.beginPath(),a.moveTo(b,c-h),a.arcTo(b+g,c-h,b+g,c,i),a.arcTo(b+g,c+h,b,c+h,i),a.arcTo(b-g,c+h,b-g,c,i),a.arcTo(b-g,c-h,b,c-h,i),a.lineTo(b,c-h),a.closePath()},jX.drawBottomRoundRectanglePath=function(a,b,c,d,e,f){var g=d/2,h=e/2,i="auto"===f?bT(d,e):f;a.beginPath&&a.beginPath(),a.moveTo(b,c-h),a.lineTo(b+g,c-h),a.lineTo(b+g,c),a.arcTo(b+g,c+h,b,c+h,i),a.arcTo(b-g,c+h,b-g,c,i),a.lineTo(b-g,c-h),a.lineTo(b,c-h),a.closePath()},jX.drawCutRectanglePath=function(a,b,c,d,e,f,g){var h=d/2,i=e/2,j="auto"===g?bV():g;a.beginPath&&a.beginPath(),a.moveTo(b-h+j,c-i),a.lineTo(b+h-j,c-i),a.lineTo(b+h,c-i+j),a.lineTo(b+h,c+i-j),a.lineTo(b+h-j,c+i),a.lineTo(b-h+j,c+i),a.lineTo(b-h,c+i-j),a.lineTo(b-h,c-i+j),a.closePath()},jX.drawBarrelPath=function(a,b,c,d,e){var f=d/2,g=e/2,h=b-f,i=b+f,j=c-g,k=c+g,l=bW(d,e),n=l.widthOffset,o=l.heightOffset,p=l.ctrlPtOffsetPct*n;a.beginPath&&a.beginPath(),a.moveTo(h,j+o),a.lineTo(h,k-o),a.quadraticCurveTo(h+p,k,h+n,k),a.lineTo(i-n,k),a.quadraticCurveTo(i-p,k,i,k-o),a.lineTo(i,j+o),a.quadraticCurveTo(i-p,j,i-n,j),a.lineTo(h+n,j),a.quadraticCurveTo(h+p,j,h,j+o),a.closePath()};for(var jY={},jZ={},j$=Math.PI/40,j_=0*Math.PI;j_<2*Math.PI;j_+=j$)jY[j_]=Math.sin(j_),jZ[j_]=Math.cos(j_);jX.drawEllipsePath=function(a,b,c,d,e){if(a.beginPath&&a.beginPath(),a.ellipse)a.ellipse(b,c,d/2,e/2,0,0,2*Math.PI);else for(var f,g,h=d/2,i=e/2,j=0*Math.PI;j<2*Math.PI;j+=j$)f=b-h*jY[j]*0+h*jZ[j]*1,g=c+i*jZ[j]*0+i*jY[j]*1,0===j?a.moveTo(f,g):a.lineTo(f,g);a.closePath()};var j0={};function j1(a){var b=a.indexOf(",");return a.substr(b+1)}function j2(a,b,c){var d=function(){return b.toDataURL(c,a.quality)};switch(a.output){case"blob-promise":return new c0(function(d,e){try{b.toBlob(function(a){null!=a?d(a):e(Error("`canvas.toBlob()` sent a null value in its callback"))},c,a.quality)}catch(a){e(a)}});case"blob":return function(a,b){for(var c=atob(a),d=new ArrayBuffer(c.length),e=new Uint8Array(d),f=0;f<c.length;f++)e[f]=c.charCodeAt(f);return new Blob([d],{type:b})}(j1(d()),c);case"base64":return j1(d());default:return d()}}j0.createBuffer=function(a,b){var c=document.createElement("canvas");return c.width=a,c.height=b,[c,c.getContext("2d")]},j0.bufferCanvasImage=function(a){var b=this.cy,c=b.mutableElements().boundingBox(),d=this.findContainerClientCoords(),e=a.full?Math.ceil(c.w):d[2],f=a.full?Math.ceil(c.h):d[3],g=x(a.maxWidth)||x(a.maxHeight),h=this.getPixelRatio(),i=1;if(void 0!==a.scale)e*=a.scale,f*=a.scale,i=a.scale;else if(g){var j=1/0,k=1/0;x(a.maxWidth)&&(j=i*a.maxWidth/e),x(a.maxHeight)&&(k=i*a.maxHeight/f),e*=i=Math.min(j,k),f*=i}g||(e*=h,f*=h,i*=h);var l=document.createElement("canvas");l.width=e,l.height=f,l.style.width=e+"px",l.style.height=f+"px";var n=l.getContext("2d");if(e>0&&f>0){n.clearRect(0,0,e,f),n.globalCompositeOperation="source-over";var o=this.getCachedZSortedEles();if(a.full)n.translate(-c.x1*i,-c.y1*i),n.scale(i,i),this.drawElements(n,o),n.scale(1/i,1/i),n.translate(c.x1*i,c.y1*i);else{var p=b.pan(),q={x:p.x*i,y:p.y*i};i*=b.zoom(),n.translate(q.x,q.y),n.scale(i,i),this.drawElements(n,o),n.scale(1/i,1/i),n.translate(-q.x,-q.y)}a.bg&&(n.globalCompositeOperation="destination-over",n.fillStyle=a.bg,n.rect(0,0,e,f),n.fill())}return l},j0.png=function(a){return j2(a,this.bufferCanvasImage(a),"image/png")},j0.jpg=function(a){return j2(a,this.bufferCanvasImage(a),"image/jpeg")};var j3={};j3.nodeShapeImpl=function(a,b,c,d,e,f,g,h){switch(a){case"ellipse":return this.drawEllipsePath(b,c,d,e,f);case"polygon":return this.drawPolygonPath(b,c,d,e,f,g);case"round-polygon":return this.drawRoundPolygonPath(b,c,d,e,f,g,h);case"roundrectangle":case"round-rectangle":return this.drawRoundRectanglePath(b,c,d,e,f,h);case"cutrectangle":case"cut-rectangle":return this.drawCutRectanglePath(b,c,d,e,f,g,h);case"bottomroundrectangle":case"bottom-round-rectangle":return this.drawBottomRoundRectanglePath(b,c,d,e,f,h);case"barrel":return this.drawBarrelPath(b,c,d,e,f)}};var j4=j5.prototype;function j5(a){var b=this,c=b.cy.window().document;a.webgl&&(j4.CANVAS_LAYERS=b.CANVAS_LAYERS=4,console.log("webgl rendering enabled")),b.data={canvases:Array(j4.CANVAS_LAYERS),contexts:Array(j4.CANVAS_LAYERS),canvasNeedsRedraw:Array(j4.CANVAS_LAYERS),bufferCanvases:Array(j4.BUFFER_COUNT),bufferContexts:Array(j4.CANVAS_LAYERS)};var d="-webkit-tap-highlight-color",e="rgba(0,0,0,0)";b.data.canvasContainer=c.createElement("div");var f=b.data.canvasContainer.style;b.data.canvasContainer.style[d]=e,f.position="relative",f.zIndex="0",f.overflow="hidden";var g=a.cy.container();g.appendChild(b.data.canvasContainer),g.style[d]=e;var h={"-webkit-user-select":"none","-moz-user-select":"-moz-none","user-select":"none","-webkit-tap-highlight-color":"rgba(0,0,0,0)","outline-style":"none"};for(var i=0;i<j4.CANVAS_LAYERS;i++){var j=b.data.canvases[i]=c.createElement("canvas"),k=j4.CANVAS_TYPES[i];b.data.contexts[i]=j.getContext(k),b.data.contexts[i]||aA("Could not create canvas of type "+k),Object.keys(h).forEach(function(a){j.style[a]=h[a]}),j.style.position="absolute",j.setAttribute("data-id","layer"+i),j.style.zIndex=String(j4.CANVAS_LAYERS-i),b.data.canvasContainer.appendChild(j),b.data.canvasNeedsRedraw[i]=!1}b.data.topCanvas=b.data.canvases[0],b.data.canvases[j4.NODE].setAttribute("data-id","layer"+j4.NODE+"-node"),b.data.canvases[j4.SELECT_BOX].setAttribute("data-id","layer"+j4.SELECT_BOX+"-selectbox"),b.data.canvases[j4.DRAG].setAttribute("data-id","layer"+j4.DRAG+"-drag"),b.data.canvases[j4.WEBGL]&&b.data.canvases[j4.WEBGL].setAttribute("data-id","layer"+j4.WEBGL+"-webgl");for(var i=0;i<j4.BUFFER_COUNT;i++)b.data.bufferCanvases[i]=c.createElement("canvas"),b.data.bufferContexts[i]=b.data.bufferCanvases[i].getContext("2d"),b.data.bufferCanvases[i].style.position="absolute",b.data.bufferCanvases[i].setAttribute("data-id","buffer"+i),b.data.bufferCanvases[i].style.zIndex=String(-i-1),b.data.bufferCanvases[i].style.visibility="hidden";b.pathsEnabled=!0;var l=bj(),n=function(a){return{x:-a.w/2,y:-a.h/2}},o=function(a){return a[0]._private.nodeKey},p=function(a){return a[0]._private.labelStyleKey},q=function(a){return a[0]._private.sourceLabelStyleKey},r=function(a){return a[0]._private.targetLabelStyleKey},s=function(a,c,d,e,f){return b.drawElement(a,c,d,!1,!1,f)},t=function(a,c,d,e,f){return b.drawElementText(a,c,d,e,"main",f)},u=function(a,c,d,e,f){return b.drawElementText(a,c,d,e,"source",f)},v=function(a,c,d,e,f){return b.drawElementText(a,c,d,e,"target",f)},w=function(a){return a.boundingBox(),a[0]._private.bodyBounds},x=function(a){return a.boundingBox(),a[0]._private.labelBounds.main||l},y=function(a){return a.boundingBox(),a[0]._private.labelBounds.source||l},z=function(a){return a.boundingBox(),a[0]._private.labelBounds.target||l},A=function(a,b){return b},B=function(a){var b;return{x:((b=w(a)).x1+b.x2)/2,y:(b.y1+b.y2)/2}},C=function(a,b,c){var d=a?a+"-":"";return{x:b.x+c.pstyle(d+"text-margin-x").pfValue,y:b.y+c.pstyle(d+"text-margin-y").pfValue}},D=function(a,b,c){var d=a[0]._private.rscratch;return{x:d[b],y:d[c]}},E=function(a){return C("",D(a,"labelX","labelY"),a)},F=function(a){return C("source",D(a,"sourceLabelX","sourceLabelY"),a)},G=function(a){return C("target",D(a,"targetLabelX","targetLabelY"),a)},H=function(a){return n(w(a))},I=function(a){return n(y(a))},J=function(a){return n(z(a))},K=function(a){var b=x(a),c=n(x(a));if(a.isNode()){switch(a.pstyle("text-halign").value){case"left":c.x=-b.w-(b.leftPad||0);break;case"right":c.x=-(b.rightPad||0)}switch(a.pstyle("text-valign").value){case"top":c.y=-b.h-(b.topPad||0);break;case"bottom":c.y=-(b.botPad||0)}}return c},L=b.data.eleTxrCache=new i4(b,{getKey:o,doesEleInvalidateKey:function(a){var b=a[0]._private;return b.oldBackgroundTimestamp!==b.backgroundTimestamp},drawElement:s,getBoundingBox:w,getRotationPoint:B,getRotationOffset:H,allowEdgeTxrCaching:!1,allowParentTxrCaching:!1}),M=b.data.lblTxrCache=new i4(b,{getKey:p,drawElement:t,getBoundingBox:x,getRotationPoint:E,getRotationOffset:K,isVisible:A}),N=b.data.slbTxrCache=new i4(b,{getKey:q,drawElement:u,getBoundingBox:y,getRotationPoint:F,getRotationOffset:I,isVisible:A}),O=b.data.tlbTxrCache=new i4(b,{getKey:r,drawElement:v,getBoundingBox:z,getRotationPoint:G,getRotationOffset:J,isVisible:A}),P=b.data.lyrTxrCache=new i6(b);b.onUpdateEleCalcs(function(a,b){L.invalidateElements(b),M.invalidateElements(b),N.invalidateElements(b),O.invalidateElements(b),P.invalidateElements(b);for(var c=0;c<b.length;c++){var d=b[c]._private;d.oldBackgroundTimestamp=d.backgroundTimestamp}});var Q=function(a){for(var b=0;b<a.length;b++)P.enqueueElementRefinement(a[b].ele)};L.onDequeue(Q),M.onDequeue(Q),N.onDequeue(Q),O.onDequeue(Q),a.webgl&&b.initWebgl(a,{getStyleKey:o,getLabelKey:p,getSourceLabelKey:q,getTargetLabelKey:r,drawElement:s,drawLabel:t,drawSourceLabel:u,drawTargetLabel:v,getElementBox:w,getLabelBox:x,getSourceLabelBox:y,getTargetLabelBox:z,getElementRotationPoint:B,getElementRotationOffset:H,getLabelRotationPoint:E,getSourceLabelRotationPoint:F,getTargetLabelRotationPoint:G,getLabelRotationOffset:K,getSourceLabelRotationOffset:I,getTargetLabelRotationOffset:J})}j4.CANVAS_LAYERS=3,j4.SELECT_BOX=0,j4.DRAG=1,j4.NODE=2,j4.WEBGL=3,j4.CANVAS_TYPES=["2d","2d","2d","webgl2"],j4.BUFFER_COUNT=3,j4.TEXTURE_BUFFER=0,j4.MOTIONBLUR_BUFFER_NODE=1,j4.MOTIONBLUR_BUFFER_DRAG=2,j4.redrawHint=function(a,b){switch(a){case"eles":this.data.canvasNeedsRedraw[j4.NODE]=b;break;case"drag":this.data.canvasNeedsRedraw[j4.DRAG]=b;break;case"select":this.data.canvasNeedsRedraw[j4.SELECT_BOX]=b;break;case"gc":this.data.gc=!0}};var j6="u">typeof Path2D;j4.path2dEnabled=function(a){if(void 0===a)return this.pathsEnabled;this.pathsEnabled=!!a},j4.usePaths=function(){return j6&&this.pathsEnabled},j4.setImgSmoothing=function(a,b){null!=a.imageSmoothingEnabled?a.imageSmoothingEnabled=b:(a.webkitImageSmoothingEnabled=b,a.mozImageSmoothingEnabled=b,a.msImageSmoothingEnabled=b)},j4.getImgSmoothing=function(a){return null!=a.imageSmoothingEnabled?a.imageSmoothingEnabled:a.webkitImageSmoothingEnabled||a.mozImageSmoothingEnabled||a.msImageSmoothingEnabled},j4.makeOffscreenCanvas=function(a,b){var c;return("u"<typeof OffscreenCanvas?"undefined":l(OffscreenCanvas))!=="undefined"?c=new OffscreenCanvas(a,b):((c=this.cy.window().document.createElement("canvas")).width=a,c.height=b),c},[i9,jf,jm,jo,jp,jr,jt,jQ,jX,j0,j3].forEach(function(a){S(j4,a)});var j7=[{name:"null",impl:fR},{name:"base",impl:iZ},{name:"canvas",impl:j5}],j8={},j9={};function ka(a,b,c){var d=c,e=function(c){aC("Can not register `"+b+"` for `"+a+"` since `"+c+"` already exists in the prototype and can not be overridden")};if("core"===a)if(fc.prototype[b])return e(b);else fc.prototype[b]=c;else if("collection"===a)if(eJ.prototype[b])return e(b);else eJ.prototype[b]=c;else if("layout"===a){for(var f=function(a){this.options=a,c.call(this,a),w(this._private)||(this._private={}),this._private.cy=a.cy,this._private.listeners=[],this.createEmitter()},g=f.prototype=Object.create(c.prototype),h=[],i=0;i<h.length;i++){var j=h[i];g[j]=g[j]||function(){return this}}g.start&&!g.run?g.run=function(){return this.start(),this}:!g.start&&g.run&&(g.start=function(){return this.run(),this});var k=c.prototype.stop;g.stop=function(){var a=this.options;if(a&&a.animate){var b=this.animations;if(b)for(var c=0;c<b.length;c++)b[c].stop()}return k?k.call(this):this.emit("layoutstop"),this},g.destroy||(g.destroy=function(){return this}),g.cy=function(){return this._private.cy};var l=function(a){return a._private.cy},n={addEventFields:function(a,b){b.layout=a,b.cy=l(a),b.target=a},bubble:function(){return!0},parent:function(a){return l(a)}};S(g,{createEmitter:function(){return this._private.emitter=new ef(n,this),this},emitter:function(){return this._private.emitter},on:function(a,b){return this.emitter().on(a,b),this},one:function(a,b){return this.emitter().one(a,b),this},once:function(a,b){return this.emitter().one(a,b),this},removeListener:function(a,b){return this.emitter().removeListener(a,b),this},removeAllListeners:function(){return this.emitter().removeAllListeners(),this},emit:function(a,b){return this.emitter().emit(a,b),this}}),dh.eventAliasesOn(g),d=f}else if("renderer"===a&&"null"!==b&&"base"!==b){var o=kb("renderer","base"),p=o.prototype,q=c.prototype,r=function(){o.apply(this,arguments),c.apply(this,arguments)},s=r.prototype;for(var t in p){var u=p[t];if(null!=q[t])return e(t);s[t]=u}for(var v in q)s[v]=q[v];p.clientFunctions.forEach(function(a){s[a]=s[a]||function(){aA("Renderer does not implement `renderer."+a+"()` on its prototype")}}),d=r}else if("__proto__"===a||"constructor"===a||"prototype"===a)return aA(a+" is an illegal type to be registered, possibly lead to prototype pollutions");return Y({map:j8,keys:[a,b],value:d})}function kb(a,b){return Z({map:j8,keys:[a,b]})}function kc(a,b,c,d,e){return Y({map:j9,keys:[a,b,c,d],value:e})}function kd(a,b,c,d){return Z({map:j9,keys:[a,b,c,d]})}var ke=function(){return 2==arguments.length?kb.apply(null,arguments):3==arguments.length?ka.apply(null,arguments):4==arguments.length?kd.apply(null,arguments):5==arguments.length?kc.apply(null,arguments):void aA("Invalid extension access syntax")};fc.prototype.extension=ke,[{type:"layout",extensions:fQ},{type:"renderer",extensions:j7}].forEach(function(a){a.extensions.forEach(function(b){ka(a.type,b.name,b.impl)})});var kf=function(){if(!(this instanceof kf))return new kf;this.length=0},kg=kf.prototype;kg.instanceString=function(){return"stylesheet"},kg.selector=function(a){return this[this.length++]={selector:a,properties:[]},this},kg.css=function(a,b){var c=this.length-1;if(t(a))this[c].properties.push({name:a,value:b});else if(w(a))for(var d=Object.keys(a),e=0;e<d.length;e++){var f=d[e],g=a[f];if(null!=g){var h=e8.properties[f]||e8.properties[I(f)];if(null!=h){var i=h.name;this[c].properties.push({name:i,value:g})}}}return this},kg.style=kg.css,kg.generateStyle=function(a){var b=new e8(a);return this.appendToStyle(b)},kg.appendToStyle=function(a){for(var b=0;b<this.length;b++){var c=this[b],d=c.selector,e=c.properties;a.selector(d);for(var f=0;f<e.length;f++){var g=e[f];a.css(g.name,g.value)}}return a};var kh=function(a){return(void 0===a&&(a={}),w(a))?new fc(a):t(a)?ke.apply(ke,arguments):void 0};kh.use=function(a){var b=Array.prototype.slice.call(arguments,1);return b.unshift(kh),a.apply(null,b),this},kh.warnings=function(a){return aB(a)},kh.version="3.33.1",kh.stylesheet=kh.Stylesheet=kf}};
|