@vectorize-io/hindsight-control-plane 0.1.9
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/bin/cli.js +86 -0
- package/package.json +69 -0
- package/public/favicon.png +0 -0
- package/public/logo.png +0 -0
- package/standalone/.next/BUILD_ID +1 -0
- package/standalone/.next/app-path-routes-manifest.json +24 -0
- package/standalone/.next/build-manifest.json +21 -0
- package/standalone/.next/package.json +1 -0
- package/standalone/.next/prerender-manifest.json +113 -0
- package/standalone/.next/required-server-files.json +317 -0
- package/standalone/.next/routes-manifest.json +193 -0
- package/standalone/.next/server/app/_global-error/page/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/_global-error/page/build-manifest.json +18 -0
- package/standalone/.next/server/app/_global-error/page/next-font-manifest.json +6 -0
- package/standalone/.next/server/app/_global-error/page/react-loadable-manifest.json +1 -0
- package/standalone/.next/server/app/_global-error/page/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/_global-error/page.js +10 -0
- package/standalone/.next/server/app/_global-error/page.js.map +5 -0
- package/standalone/.next/server/app/_global-error/page.js.nft.json +1 -0
- package/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +2 -0
- package/standalone/.next/server/app/_global-error.html +2 -0
- package/standalone/.next/server/app/_global-error.meta +15 -0
- package/standalone/.next/server/app/_global-error.rsc +12 -0
- package/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +5 -0
- package/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +12 -0
- package/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +7 -0
- package/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +4 -0
- package/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -0
- package/standalone/.next/server/app/_not-found/page/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/_not-found/page/build-manifest.json +18 -0
- package/standalone/.next/server/app/_not-found/page/next-font-manifest.json +6 -0
- package/standalone/.next/server/app/_not-found/page/react-loadable-manifest.json +1 -0
- package/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/_not-found/page.js +13 -0
- package/standalone/.next/server/app/_not-found/page.js.map +5 -0
- package/standalone/.next/server/app/_not-found/page.js.nft.json +1 -0
- package/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +2 -0
- package/standalone/.next/server/app/_not-found.html +1 -0
- package/standalone/.next/server/app/_not-found.meta +16 -0
- package/standalone/.next/server/app/_not-found.rsc +16 -0
- package/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +16 -0
- package/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +8 -0
- package/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +7 -0
- package/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +5 -0
- package/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +4 -0
- package/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -0
- package/standalone/.next/server/app/api/banks/route/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/api/banks/route/build-manifest.json +11 -0
- package/standalone/.next/server/app/api/banks/route/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/api/banks/route.js +6 -0
- package/standalone/.next/server/app/api/banks/route.js.map +5 -0
- package/standalone/.next/server/app/api/banks/route.js.nft.json +1 -0
- package/standalone/.next/server/app/api/banks/route_client-reference-manifest.js +2 -0
- package/standalone/.next/server/app/api/chunks/[chunkId]/route/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/api/chunks/[chunkId]/route/build-manifest.json +11 -0
- package/standalone/.next/server/app/api/chunks/[chunkId]/route/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/api/chunks/[chunkId]/route.js +6 -0
- package/standalone/.next/server/app/api/chunks/[chunkId]/route.js.map +5 -0
- package/standalone/.next/server/app/api/chunks/[chunkId]/route.js.nft.json +1 -0
- package/standalone/.next/server/app/api/chunks/[chunkId]/route_client-reference-manifest.js +2 -0
- package/standalone/.next/server/app/api/documents/[documentId]/route/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/api/documents/[documentId]/route/build-manifest.json +11 -0
- package/standalone/.next/server/app/api/documents/[documentId]/route/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/api/documents/[documentId]/route.js +6 -0
- package/standalone/.next/server/app/api/documents/[documentId]/route.js.map +5 -0
- package/standalone/.next/server/app/api/documents/[documentId]/route.js.nft.json +1 -0
- package/standalone/.next/server/app/api/documents/[documentId]/route_client-reference-manifest.js +2 -0
- package/standalone/.next/server/app/api/documents/route/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/api/documents/route/build-manifest.json +11 -0
- package/standalone/.next/server/app/api/documents/route/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/api/documents/route.js +6 -0
- package/standalone/.next/server/app/api/documents/route.js.map +5 -0
- package/standalone/.next/server/app/api/documents/route.js.nft.json +1 -0
- package/standalone/.next/server/app/api/documents/route_client-reference-manifest.js +2 -0
- package/standalone/.next/server/app/api/entities/[entityId]/regenerate/route/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/api/entities/[entityId]/regenerate/route/build-manifest.json +11 -0
- package/standalone/.next/server/app/api/entities/[entityId]/regenerate/route/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/api/entities/[entityId]/regenerate/route.js +6 -0
- package/standalone/.next/server/app/api/entities/[entityId]/regenerate/route.js.map +5 -0
- package/standalone/.next/server/app/api/entities/[entityId]/regenerate/route.js.nft.json +1 -0
- package/standalone/.next/server/app/api/entities/[entityId]/regenerate/route_client-reference-manifest.js +2 -0
- package/standalone/.next/server/app/api/entities/[entityId]/route/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/api/entities/[entityId]/route/build-manifest.json +11 -0
- package/standalone/.next/server/app/api/entities/[entityId]/route/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/api/entities/[entityId]/route.js +6 -0
- package/standalone/.next/server/app/api/entities/[entityId]/route.js.map +5 -0
- package/standalone/.next/server/app/api/entities/[entityId]/route.js.nft.json +1 -0
- package/standalone/.next/server/app/api/entities/[entityId]/route_client-reference-manifest.js +2 -0
- package/standalone/.next/server/app/api/entities/route/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/api/entities/route/build-manifest.json +11 -0
- package/standalone/.next/server/app/api/entities/route/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/api/entities/route.js +6 -0
- package/standalone/.next/server/app/api/entities/route.js.map +5 -0
- package/standalone/.next/server/app/api/entities/route.js.nft.json +1 -0
- package/standalone/.next/server/app/api/entities/route_client-reference-manifest.js +2 -0
- package/standalone/.next/server/app/api/graph/route/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/api/graph/route/build-manifest.json +11 -0
- package/standalone/.next/server/app/api/graph/route/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/api/graph/route.js +6 -0
- package/standalone/.next/server/app/api/graph/route.js.map +5 -0
- package/standalone/.next/server/app/api/graph/route.js.nft.json +1 -0
- package/standalone/.next/server/app/api/graph/route_client-reference-manifest.js +2 -0
- package/standalone/.next/server/app/api/health/route/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/api/health/route/build-manifest.json +11 -0
- package/standalone/.next/server/app/api/health/route/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/api/health/route.js +6 -0
- package/standalone/.next/server/app/api/health/route.js.map +5 -0
- package/standalone/.next/server/app/api/health/route.js.nft.json +1 -0
- package/standalone/.next/server/app/api/health/route_client-reference-manifest.js +2 -0
- package/standalone/.next/server/app/api/list/route/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/api/list/route/build-manifest.json +11 -0
- package/standalone/.next/server/app/api/list/route/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/api/list/route.js +6 -0
- package/standalone/.next/server/app/api/list/route.js.map +5 -0
- package/standalone/.next/server/app/api/list/route.js.nft.json +1 -0
- package/standalone/.next/server/app/api/list/route_client-reference-manifest.js +2 -0
- package/standalone/.next/server/app/api/memories/retain/route/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/api/memories/retain/route/build-manifest.json +11 -0
- package/standalone/.next/server/app/api/memories/retain/route/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/api/memories/retain/route.js +6 -0
- package/standalone/.next/server/app/api/memories/retain/route.js.map +5 -0
- package/standalone/.next/server/app/api/memories/retain/route.js.nft.json +1 -0
- package/standalone/.next/server/app/api/memories/retain/route_client-reference-manifest.js +2 -0
- package/standalone/.next/server/app/api/memories/retain_async/route/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/api/memories/retain_async/route/build-manifest.json +11 -0
- package/standalone/.next/server/app/api/memories/retain_async/route/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/api/memories/retain_async/route.js +6 -0
- package/standalone/.next/server/app/api/memories/retain_async/route.js.map +5 -0
- package/standalone/.next/server/app/api/memories/retain_async/route.js.nft.json +1 -0
- package/standalone/.next/server/app/api/memories/retain_async/route_client-reference-manifest.js +2 -0
- package/standalone/.next/server/app/api/operations/[agentId]/route/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/api/operations/[agentId]/route/build-manifest.json +11 -0
- package/standalone/.next/server/app/api/operations/[agentId]/route/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/api/operations/[agentId]/route.js +6 -0
- package/standalone/.next/server/app/api/operations/[agentId]/route.js.map +5 -0
- package/standalone/.next/server/app/api/operations/[agentId]/route.js.nft.json +1 -0
- package/standalone/.next/server/app/api/operations/[agentId]/route_client-reference-manifest.js +2 -0
- package/standalone/.next/server/app/api/profile/[bankId]/route/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/api/profile/[bankId]/route/build-manifest.json +11 -0
- package/standalone/.next/server/app/api/profile/[bankId]/route/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/api/profile/[bankId]/route.js +6 -0
- package/standalone/.next/server/app/api/profile/[bankId]/route.js.map +5 -0
- package/standalone/.next/server/app/api/profile/[bankId]/route.js.nft.json +1 -0
- package/standalone/.next/server/app/api/profile/[bankId]/route_client-reference-manifest.js +2 -0
- package/standalone/.next/server/app/api/recall/route/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/api/recall/route/build-manifest.json +11 -0
- package/standalone/.next/server/app/api/recall/route/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/api/recall/route.js +6 -0
- package/standalone/.next/server/app/api/recall/route.js.map +5 -0
- package/standalone/.next/server/app/api/recall/route.js.nft.json +1 -0
- package/standalone/.next/server/app/api/recall/route_client-reference-manifest.js +2 -0
- package/standalone/.next/server/app/api/reflect/route/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/api/reflect/route/build-manifest.json +11 -0
- package/standalone/.next/server/app/api/reflect/route/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/api/reflect/route.js +6 -0
- package/standalone/.next/server/app/api/reflect/route.js.map +5 -0
- package/standalone/.next/server/app/api/reflect/route.js.nft.json +1 -0
- package/standalone/.next/server/app/api/reflect/route_client-reference-manifest.js +2 -0
- package/standalone/.next/server/app/api/stats/[agentId]/route/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/api/stats/[agentId]/route/build-manifest.json +11 -0
- package/standalone/.next/server/app/api/stats/[agentId]/route/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/api/stats/[agentId]/route.js +6 -0
- package/standalone/.next/server/app/api/stats/[agentId]/route.js.map +5 -0
- package/standalone/.next/server/app/api/stats/[agentId]/route.js.nft.json +1 -0
- package/standalone/.next/server/app/api/stats/[agentId]/route_client-reference-manifest.js +2 -0
- package/standalone/.next/server/app/banks/[bankId]/page/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/banks/[bankId]/page/build-manifest.json +18 -0
- package/standalone/.next/server/app/banks/[bankId]/page/next-font-manifest.json +6 -0
- package/standalone/.next/server/app/banks/[bankId]/page/react-loadable-manifest.json +1 -0
- package/standalone/.next/server/app/banks/[bankId]/page/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/banks/[bankId]/page.js +15 -0
- package/standalone/.next/server/app/banks/[bankId]/page.js.map +5 -0
- package/standalone/.next/server/app/banks/[bankId]/page.js.nft.json +1 -0
- package/standalone/.next/server/app/banks/[bankId]/page_client-reference-manifest.js +2 -0
- package/standalone/.next/server/app/dashboard/page/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/dashboard/page/build-manifest.json +18 -0
- package/standalone/.next/server/app/dashboard/page/next-font-manifest.json +6 -0
- package/standalone/.next/server/app/dashboard/page/react-loadable-manifest.json +1 -0
- package/standalone/.next/server/app/dashboard/page/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/dashboard/page.js +15 -0
- package/standalone/.next/server/app/dashboard/page.js.map +5 -0
- package/standalone/.next/server/app/dashboard/page.js.nft.json +1 -0
- package/standalone/.next/server/app/dashboard/page_client-reference-manifest.js +2 -0
- package/standalone/.next/server/app/dashboard.html +1 -0
- package/standalone/.next/server/app/dashboard.meta +15 -0
- package/standalone/.next/server/app/dashboard.rsc +20 -0
- package/standalone/.next/server/app/dashboard.segments/_full.segment.rsc +20 -0
- package/standalone/.next/server/app/dashboard.segments/_head.segment.rsc +8 -0
- package/standalone/.next/server/app/dashboard.segments/_index.segment.rsc +7 -0
- package/standalone/.next/server/app/dashboard.segments/_tree.segment.rsc +2 -0
- package/standalone/.next/server/app/dashboard.segments/dashboard/__PAGE__.segment.rsc +9 -0
- package/standalone/.next/server/app/dashboard.segments/dashboard.segment.rsc +4 -0
- package/standalone/.next/server/app/index.html +1 -0
- package/standalone/.next/server/app/index.meta +16 -0
- package/standalone/.next/server/app/index.rsc +17 -0
- package/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +6 -0
- package/standalone/.next/server/app/index.segments/_full.segment.rsc +17 -0
- package/standalone/.next/server/app/index.segments/_head.segment.rsc +8 -0
- package/standalone/.next/server/app/index.segments/_index.segment.rsc +7 -0
- package/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -0
- package/standalone/.next/server/app/page/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/page/build-manifest.json +18 -0
- package/standalone/.next/server/app/page/next-font-manifest.json +6 -0
- package/standalone/.next/server/app/page/react-loadable-manifest.json +1 -0
- package/standalone/.next/server/app/page/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/page.js +16 -0
- package/standalone/.next/server/app/page.js.map +5 -0
- package/standalone/.next/server/app/page.js.nft.json +1 -0
- package/standalone/.next/server/app/page_client-reference-manifest.js +2 -0
- package/standalone/.next/server/app-paths-manifest.json +24 -0
- package/standalone/.next/server/chunks/4ca55_ndsight-control-plane__next-internal_server_app_api_banks_route_actions_99be6b43.js +3 -0
- package/standalone/.next/server/chunks/4ca55_ndsight-control-plane__next-internal_server_app_api_graph_route_actions_01c8a147.js +3 -0
- package/standalone/.next/server/chunks/5512b_dsight-control-plane__next-internal_server_app_api_health_route_actions_9dd1d809.js +3 -0
- package/standalone/.next/server/chunks/5512b_dsight-control-plane__next-internal_server_app_api_recall_route_actions_154c90a0.js +3 -0
- package/standalone/.next/server/chunks/79729_indsight-control-plane__next-internal_server_app_api_list_route_actions_928a8078.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__02a1e7f7._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__0f1b189c._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__228c769f._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__317b54d0._.js +21 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__464d3847._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__5e1d146d._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__6ee44ea3._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__73093267._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__81c0d784._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__9a7529ab._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__9c3dd746._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__bae0f53c._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__be9afc00._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__d2485edb._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__d4b39930._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__d4f9d631._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__e5a6b81d._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__f318615b._.js +3 -0
- package/standalone/.next/server/chunks/[turbopack]_runtime.js +770 -0
- package/standalone/.next/server/chunks/a6ea4_server_app_api_entities_[entityId]_regenerate_route_actions_3253250f.js +3 -0
- package/standalone/.next/server/chunks/e51bf__next-internal_server_app_api_chunks_[chunkId]_route_actions_03be08f6.js +3 -0
- package/standalone/.next/server/chunks/e51bf__next-internal_server_app_api_documents_[documentId]_route_actions_025f2dd6.js +3 -0
- package/standalone/.next/server/chunks/e51bf__next-internal_server_app_api_documents_route_actions_fca16a88.js +3 -0
- package/standalone/.next/server/chunks/e51bf__next-internal_server_app_api_entities_[entityId]_route_actions_c338d0cd.js +3 -0
- package/standalone/.next/server/chunks/e51bf__next-internal_server_app_api_entities_route_actions_f5ea1ca0.js +3 -0
- package/standalone/.next/server/chunks/e51bf__next-internal_server_app_api_memories_retain_async_route_actions_c08bfcdb.js +3 -0
- package/standalone/.next/server/chunks/e51bf__next-internal_server_app_api_memories_retain_route_actions_d10f6a07.js +3 -0
- package/standalone/.next/server/chunks/e51bf__next-internal_server_app_api_operations_[agentId]_route_actions_1f7c4bc6.js +3 -0
- package/standalone/.next/server/chunks/e51bf__next-internal_server_app_api_profile_[bankId]_route_actions_22dd8677.js +3 -0
- package/standalone/.next/server/chunks/e51bf__next-internal_server_app_api_reflect_route_actions_0b8dd978.js +3 -0
- package/standalone/.next/server/chunks/e51bf__next-internal_server_app_api_stats_[agentId]_route_actions_17816f15.js +3 -0
- package/standalone/.next/server/chunks/ssr/4ca55_ndsight-control-plane__next-internal_server_app__not-found_page_actions_a6d92cb7.js +3 -0
- package/standalone/.next/server/chunks/ssr/79729_indsight-control-plane__next-internal_server_app_dashboard_page_actions_aff4b92b.js +3 -0
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__2454dfbf._.js +3 -0
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__3f6f18bb._.js +3 -0
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__6199c710._.js +3 -0
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__655f8d11._.js +6 -0
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__8dd83d7a._.js +3 -0
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__915ad491._.js +3 -0
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__b9356576._.js +4 -0
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__bce2f57e._.js +3 -0
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__d88eb440._.js +3 -0
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__e93b5ed6._.js +3 -0
- package/standalone/.next/server/chunks/ssr/[turbopack]_runtime.js +770 -0
- package/standalone/.next/server/chunks/ssr/_26df66d0._.js +4 -0
- package/standalone/.next/server/chunks/ssr/_3476210c._.js +6 -0
- package/standalone/.next/server/chunks/ssr/_453ded79._.js +3 -0
- package/standalone/.next/server/chunks/ssr/_53a4aa41._.js +4 -0
- package/standalone/.next/server/chunks/ssr/_5e906836._.js +9 -0
- package/standalone/.next/server/chunks/ssr/_8362f37b._.js +6 -0
- package/standalone/.next/server/chunks/ssr/_944e56a6._.js +4 -0
- package/standalone/.next/server/chunks/ssr/_ad0e821a._.js +3 -0
- package/standalone/.next/server/chunks/ssr/e51bf__next-internal_server_app__global-error_page_actions_1e722cdc.js +3 -0
- package/standalone/.next/server/chunks/ssr/e51bf__next-internal_server_app_banks_[bankId]_page_actions_7613b8e1.js +3 -0
- package/standalone/.next/server/chunks/ssr/hindsight-control-plane__next-internal_server_app_page_actions_5b200f30.js +3 -0
- package/standalone/.next/server/chunks/ssr/hindsight-control-plane_src_fe96d618._.js +3 -0
- package/standalone/.next/server/chunks/ssr/node_modules_5363a9de._.js +3 -0
- package/standalone/.next/server/chunks/ssr/node_modules_next_dist_08570d7f._.js +4 -0
- package/standalone/.next/server/chunks/ssr/node_modules_next_dist_cc88faaa._.js +3 -0
- package/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_9774470f._.js +3 -0
- package/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_45780354.js +3 -0
- package/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_ece394eb.js +3 -0
- package/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_15817684.js +3 -0
- package/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_3fe9760a._.js +6 -0
- package/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_89742413.js +4 -0
- package/standalone/.next/server/chunks/ssr/node_modules_next_dist_server_route-modules_app-page_vendored_ssr_8ca85a16._.js +3 -0
- package/standalone/.next/server/functions-config-manifest.json +4 -0
- package/standalone/.next/server/middleware-build-manifest.js +22 -0
- package/standalone/.next/server/middleware-manifest.json +6 -0
- package/standalone/.next/server/next-font-manifest.js +1 -0
- package/standalone/.next/server/next-font-manifest.json +6 -0
- package/standalone/.next/server/pages/404.html +1 -0
- package/standalone/.next/server/pages/500.html +2 -0
- package/standalone/.next/server/pages-manifest.json +4 -0
- package/standalone/.next/server/server-reference-manifest.js +1 -0
- package/standalone/.next/server/server-reference-manifest.json +5 -0
- package/standalone/.next/static/chunks/023d923a37d494fc.js +1 -0
- package/standalone/.next/static/chunks/066a685143de5f7e.js +7 -0
- package/standalone/.next/static/chunks/0e1b9f3295e06ab1.js +1 -0
- package/standalone/.next/static/chunks/247eb132b7f7b574.js +1 -0
- package/standalone/.next/static/chunks/497f7b5edc7d3fce.js +1 -0
- package/standalone/.next/static/chunks/4a2e6ca9bc162ffe.js +4 -0
- package/standalone/.next/static/chunks/5d98431bbd7c934d.js +1 -0
- package/standalone/.next/static/chunks/8edb6029308e90e6.css +1 -0
- package/standalone/.next/static/chunks/9ab4ce518df78558.css +2 -0
- package/standalone/.next/static/chunks/a6dad97d9634a72d.js +1 -0
- package/standalone/.next/static/chunks/b6f4e02e299e89ec.js +1 -0
- package/standalone/.next/static/chunks/b93cf0798d24e38a.js +1 -0
- package/standalone/.next/static/chunks/bc4b7a284f8824f8.js +1 -0
- package/standalone/.next/static/chunks/d0cdc56d06040c69.js +2 -0
- package/standalone/.next/static/chunks/ff1a16fafef87110.js +1 -0
- package/standalone/.next/static/chunks/turbopack-030018f439265ea0.js +3 -0
- package/standalone/.next/static/sW64pgiMutF_hND5cO6Oe/_buildManifest.js +11 -0
- package/standalone/.next/static/sW64pgiMutF_hND5cO6Oe/_clientMiddlewareManifest.json +1 -0
- package/standalone/.next/static/sW64pgiMutF_hND5cO6Oe/_ssgManifest.js +1 -0
- package/standalone/package.json +69 -0
- package/standalone/public/favicon.png +0 -0
- package/standalone/public/logo.png +0 -0
- package/standalone/server.js +38 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[91735,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={assign:function(){return i},searchParamsToUrlQuery:function(){return f},urlQueryToSearchParams:function(){return h}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});function f(a){let b={};for(let[c,d]of a.entries()){let a=b[c];void 0===a?b[c]=d:Array.isArray(a)?a.push(d):b[c]=[a,d]}return b}function g(a){return"string"==typeof a?a:("number"!=typeof a||isNaN(a))&&"boolean"!=typeof a?"":String(a)}function h(a){let b=new URLSearchParams;for(let[c,d]of Object.entries(a))if(Array.isArray(d))for(let a of d)b.append(c,g(a));else b.set(c,g(d));return b}function i(a,...b){for(let c of b){for(let b of c.keys())a.delete(b);for(let[b,d]of c.entries())a.append(b,d)}return a}},43087,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={formatUrl:function(){return h},formatWithValidation:function(){return j},urlObjectKeys:function(){return i}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(46058)._(a.r(91735)),g=/https?|ftp|gopher|file/;function h(a){let{auth:b,hostname:c}=a,d=a.protocol||"",e=a.pathname||"",h=a.hash||"",i=a.query||"",j=!1;b=b?encodeURIComponent(b).replace(/%3A/i,":")+"@":"",a.host?j=b+a.host:c&&(j=b+(~c.indexOf(":")?`[${c}]`:c),a.port&&(j+=":"+a.port)),i&&"object"==typeof i&&(i=String(f.urlQueryToSearchParams(i)));let k=a.search||i&&`?${i}`||"";return d&&!d.endsWith(":")&&(d+=":"),a.slashes||(!d||g.test(d))&&!1!==j?(j="//"+(j||""),e&&"/"!==e[0]&&(e="/"+e)):j||(j=""),h&&"#"!==h[0]&&(h="#"+h),k&&"?"!==k[0]&&(k="?"+k),e=e.replace(/[?#]/g,encodeURIComponent),k=k.replace("#","%23"),`${d}${j}${e}${k}${h}`}let i=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function j(a){return h(a)}},46272,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={DecodeError:function(){return s},MiddlewareNotFoundError:function(){return w},MissingStaticPage:function(){return v},NormalizeError:function(){return t},PageNotFoundError:function(){return u},SP:function(){return q},ST:function(){return r},WEB_VITALS:function(){return f},execOnce:function(){return g},getDisplayName:function(){return l},getLocationOrigin:function(){return j},getURL:function(){return k},isAbsoluteUrl:function(){return i},isResSent:function(){return n},loadGetInitialProps:function(){return p},normalizeRepeatedSlashes:function(){return o},stringifyError:function(){return x}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=["CLS","FCP","FID","INP","LCP","TTFB"];function g(a){let b,c=!1;return(...d)=>(c||(c=!0,b=a(...d)),b)}let h=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,i=a=>h.test(a);function j(){let{protocol:a,hostname:b,port:c}=window.location;return`${a}//${b}${c?":"+c:""}`}function k(){let{href:a}=window.location,b=j();return a.substring(b.length)}function l(a){return"string"==typeof a?a:a.displayName||a.name||"Unknown"}function n(a){return a.finished||a.headersSent}function o(a){let b=a.split("?");return b[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(b[1]?`?${b.slice(1).join("?")}`:"")}async function p(a,b){let c=b.res||b.ctx&&b.ctx.res;if(!a.getInitialProps)return b.ctx&&b.Component?{pageProps:await p(b.Component,b.ctx)}:{};let d=await a.getInitialProps(b);if(c&&n(c))return d;if(!d)throw Object.defineProperty(Error(`"${l(a)}.getInitialProps()" should resolve to an object. But found "${d}" instead.`),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return d}let q="undefined"!=typeof performance,r=q&&["mark","measure","getEntriesByName"].every(a=>"function"==typeof performance[a]);class s extends Error{}class t extends Error{}class u extends Error{constructor(a){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${a}`}}class v extends Error{constructor(a,b){super(),this.message=`Failed to load static file for page: ${a} ${b}`}}class w extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function x(a){return JSON.stringify({message:a.message,stack:a.stack})}},8868,(a,b,c)=>{"use strict";function d(a){let b=a.indexOf("#"),c=a.indexOf("?"),d=c>-1&&(b<0||c<b);return d||b>-1?{pathname:a.substring(0,d?c:b),query:d?a.substring(c,b>-1?b:void 0):"",hash:b>-1?a.slice(b):""}:{pathname:a,query:"",hash:""}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"parsePath",{enumerable:!0,get:function(){return d}})},5407,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"addPathPrefix",{enumerable:!0,get:function(){return e}});let d=a.r(8868);function e(a,b){if(!a.startsWith("/")||!b)return a;let{pathname:c,query:e,hash:f}=(0,d.parsePath)(a);return`${b}${c}${e}${f}`}},46112,(a,b,c)=>{"use strict";function d(a){return a.replace(/\/$/,"")||"/"}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"removeTrailingSlash",{enumerable:!0,get:function(){return d}})},25075,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"normalizePathTrailingSlash",{enumerable:!0,get:function(){return f}});let d=a.r(46112),e=a.r(8868),f=a=>{if(!a.startsWith("/"))return a;let{pathname:b,query:c,hash:f}=(0,e.parsePath)(a);return`${(0,d.removeTrailingSlash)(b)}${c}${f}`};("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},38243,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"addBasePath",{enumerable:!0,get:function(){return f}});let d=a.r(5407),e=a.r(25075);function f(a,b){return(0,e.normalizePathTrailingSlash)((0,d.addPathPrefix)(a,""))}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},10846,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d,e,f,g={FetchStrategy:function(){return k},NavigationResultTag:function(){return i},PrefetchPriority:function(){return j}};for(var h in g)Object.defineProperty(c,h,{enumerable:!0,get:g[h]});var i=((d={})[d.MPA=0]="MPA",d[d.Success=1]="Success",d[d.NoOp=2]="NoOp",d[d.Async=3]="Async",d),j=((e={})[e.Intent=2]="Intent",e[e.Default=1]="Default",e[e.Background=0]="Background",e),k=((f={})[f.LoadingBoundary=0]="LoadingBoundary",f[f.PPR=1]="PPR",f[f.PPRRuntime=2]="PPRRuntime",f[f.Full=3]="Full",f);("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},92702,(a,b,c)=>{"use strict";function d(a,b){let c=new URL(a);return{pathname:c.pathname,search:c.search,nextUrl:b}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"createCacheKey",{enumerable:!0,get:function(){return d}}),("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},76e3,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"HasLoadingBoundary",{enumerable:!0,get:function(){return e}});var d,e=((d={})[d.SegmentHasLoadingBoundary=1]="SegmentHasLoadingBoundary",d[d.SubtreeHasLoadingBoundary=2]="SubtreeHasLoadingBoundary",d[d.SubtreeHasNoLoadingBoundary=3]="SubtreeHasNoLoadingBoundary",d)},30641,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"matchSegment",{enumerable:!0,get:function(){return d}});let d=(a,b)=>"string"==typeof a?"string"==typeof b&&a===b:"string"!=typeof b&&a[0]===b[0]&&a[1]===b[1];("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},37909,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={ACTION_HEADER:function(){return g},FLIGHT_HEADERS:function(){return p},NEXT_ACTION_NOT_FOUND_HEADER:function(){return w},NEXT_DID_POSTPONE_HEADER:function(){return s},NEXT_HMR_REFRESH_HASH_COOKIE:function(){return l},NEXT_HMR_REFRESH_HEADER:function(){return k},NEXT_HTML_REQUEST_ID_HEADER:function(){return y},NEXT_IS_PRERENDER_HEADER:function(){return v},NEXT_REQUEST_ID_HEADER:function(){return x},NEXT_REWRITTEN_PATH_HEADER:function(){return t},NEXT_REWRITTEN_QUERY_HEADER:function(){return u},NEXT_ROUTER_PREFETCH_HEADER:function(){return i},NEXT_ROUTER_SEGMENT_PREFETCH_HEADER:function(){return j},NEXT_ROUTER_STALE_TIME_HEADER:function(){return r},NEXT_ROUTER_STATE_TREE_HEADER:function(){return h},NEXT_RSC_UNION_QUERY:function(){return q},NEXT_URL:function(){return n},RSC_CONTENT_TYPE_HEADER:function(){return o},RSC_HEADER:function(){return f}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f="rsc",g="next-action",h="next-router-state-tree",i="next-router-prefetch",j="next-router-segment-prefetch",k="next-hmr-refresh",l="__next_hmr_refresh_hash__",n="next-url",o="text/x-component",p=[f,h,i,k,j],q="_rsc",r="x-nextjs-stale-time",s="x-nextjs-postponed",t="x-nextjs-rewritten-path",u="x-nextjs-rewritten-query",v="x-nextjs-prerender",w="x-nextjs-action-not-found",x="x-nextjs-request-id",y="x-nextjs-html-request-id";("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},88347,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d,e={ACTION_HMR_REFRESH:function(){return k},ACTION_NAVIGATE:function(){return h},ACTION_REFRESH:function(){return g},ACTION_RESTORE:function(){return i},ACTION_SERVER_ACTION:function(){return l},ACTION_SERVER_PATCH:function(){return j},PrefetchKind:function(){return n}};for(var f in e)Object.defineProperty(c,f,{enumerable:!0,get:e[f]});let g="refresh",h="navigate",i="restore",j="server-patch",k="hmr-refresh",l="server-action";var n=((d={}).AUTO="auto",d.FULL="full",d.TEMPORARY="temporary",d);("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},67009,(a,b,c)=>{"use strict";function d(a){return null!==a&&"object"==typeof a&&"then"in a&&"function"==typeof a.then}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"isThenable",{enumerable:!0,get:function(){return d}})},90841,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={dispatchAppRouterAction:function(){return i},useActionQueue:function(){return j}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(46058)._(a.r(72131)),g=a.r(67009),h=null;function i(a){if(null===h)throw Object.defineProperty(Error("Internal Next.js error: Router action dispatched before initialization."),"__NEXT_ERROR_CODE",{value:"E668",enumerable:!1,configurable:!0});h(a)}function j(a){let[b,c]=f.default.useState(a.state);h=b=>a.dispatch(b,c);let d=(0,f.useMemo)(()=>b,[b]);return(0,g.isThenable)(d)?(0,f.use)(d):d}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},20611,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"callServer",{enumerable:!0,get:function(){return g}});let d=a.r(72131),e=a.r(88347),f=a.r(90841);async function g(a,b){return new Promise((c,g)=>{(0,d.startTransition)(()=>{(0,f.dispatchAppRouterAction)({type:e.ACTION_SERVER_ACTION,actionId:a,actionArgs:b,resolve:c,reject:g})})})}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},1722,(a,b,c)=>{"use strict";let d;Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"findSourceMapURL",{enumerable:!0,get:function(){return d}});("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},58216,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={HEAD_REQUEST_KEY:function(){return h},ROOT_SEGMENT_REQUEST_KEY:function(){return g},appendSegmentRequestKeyPart:function(){return j},convertSegmentPathToStaticExportFilename:function(){return n},createSegmentRequestKeyPart:function(){return i}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(39118),g="",h="/_head";function i(a){if("string"==typeof a)return a.startsWith(f.PAGE_SEGMENT_KEY)?f.PAGE_SEGMENT_KEY:"/_not-found"===a?"_not-found":l(a);let b=a[0];return"$"+a[2]+"$"+l(b)}function j(a,b,c){return a+"/"+("children"===b?c:`@${l(b)}/${c}`)}let k=/^[a-zA-Z0-9\-_@]+$/;function l(a){return k.test(a)?a:"!"+btoa(a).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function n(a){return`__next${a.replace(/\//g,".")}.txt`}},23187,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={doesStaticSegmentAppearInURL:function(){return l},getCacheKeyForDynamicParam:function(){return n},getParamValueFromCacheKey:function(){return p},getRenderedPathname:function(){return j},getRenderedSearch:function(){return i},parseDynamicParamFromURLPart:function(){return k},urlSearchParamsToParsedUrlQuery:function(){return q},urlToUrlWithoutFlightMarker:function(){return o}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(39118),g=a.r(58216),h=a.r(37909);function i(a){let b=a.headers.get(h.NEXT_REWRITTEN_QUERY_HEADER);return null!==b?""===b?"":"?"+b:o(new URL(a.url)).search}function j(a){return a.headers.get(h.NEXT_REWRITTEN_PATH_HEADER)??o(new URL(a.url)).pathname}function k(a,b,c){switch(a){case"c":return c<b.length?b.slice(c).map(a=>encodeURIComponent(a)):[];case"ci(..)(..)":case"ci(.)":case"ci(..)":case"ci(...)":{let d=a.length-2;return c<b.length?b.slice(c).map((a,b)=>0===b?encodeURIComponent(a.slice(d)):encodeURIComponent(a)):[]}case"oc":return c<b.length?b.slice(c).map(a=>encodeURIComponent(a)):null;case"d":if(c>=b.length)return"";return encodeURIComponent(b[c]);case"di(..)(..)":case"di(.)":case"di(..)":case"di(...)":{let d=a.length-2;if(c>=b.length)return"";return encodeURIComponent(b[c].slice(d))}default:return""}}function l(a){return!(a===g.ROOT_SEGMENT_REQUEST_KEY||a.startsWith(f.PAGE_SEGMENT_KEY)||"("===a[0]&&a.endsWith(")"))&&a!==f.DEFAULT_SEGMENT_KEY&&"/_not-found"!==a}function n(a,b){return"string"==typeof a?(0,f.addSearchParamsIfPageSegment)(a,Object.fromEntries(new URLSearchParams(b))):null===a?"":a.join("/")}function o(a){let b=new URL(a);return b.searchParams.delete(h.NEXT_RSC_UNION_QUERY),b}function p(a,b){return"c"===b||"oc"===b?a.split("/"):a}function q(a){let b={};for(let[c,d]of a.entries())void 0===b[c]?b[c]=d:Array.isArray(b[c])?b[c].push(d):b[c]=[b[c],d];return b}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},74685,(a,b,c)=>{"use strict";function d(a,b=!0){return a.pathname+a.search+(b?a.hash:"")}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"createHrefFromUrl",{enumerable:!0,get:function(){return d}}),("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},22129,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={createInitialRSCPayloadFromFallbackPrerender:function(){return j},getFlightDataPartsFromPath:function(){return i},getNextFlightSegmentPath:function(){return k},normalizeFlightData:function(){return l},prepareFlightRouterStateForRequest:function(){return n}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(39118),g=a.r(23187),h=a.r(74685);function i(a){let[b,c,d,e]=a.slice(-4),f=a.slice(0,-4);return{pathToSegment:f.slice(0,-1),segmentPath:f,segment:f[f.length-1]??"",tree:b,seedData:c,head:d,isHeadPartial:e,isRootRender:4===a.length}}function j(a,b){let c=(0,g.getRenderedPathname)(a),d=(0,g.getRenderedSearch)(a),e=(0,h.createHrefFromUrl)(new URL(location.href)),f=b.f[0],i=f[0];return{b:b.b,c:e.split("/"),q:d,i:b.i,f:[[function a(b,c,d,e){let f,h,i=b[0];if("string"==typeof i)f=i,h=(0,g.doesStaticSegmentAppearInURL)(i);else{let a=i[0],b=i[2],j=(0,g.parseDynamicParamFromURLPart)(b,d,e);f=[a,(0,g.getCacheKeyForDynamicParam)(j,c),b],h=!0}let j=h?e+1:e,k=b[1],l={};for(let b in k){let e=k[b];l[b]=a(e,c,d,j)}return[f,l,null,b[3],b[4]]}(i,d,c.split("/").filter(a=>""!==a),0),f[1],f[2],f[2]]],m:b.m,G:b.G,S:b.S}}function k(a){return a.slice(2)}function l(a){return"string"==typeof a?a:a.map(a=>i(a))}function n(a,b){return b?encodeURIComponent(JSON.stringify(a)):encodeURIComponent(JSON.stringify(function a(b){var c,d;let[e,g,h,i,j,k]=b,l="string"==typeof(c=e)&&c.startsWith(f.PAGE_SEGMENT_KEY+"?")?f.PAGE_SEGMENT_KEY:c,n={};for(let[b,c]of Object.entries(g))n[b]=a(c);let o=[l,n,null,(d=i)&&"refresh"!==d?i:null];return void 0!==j&&(o[4]=j),void 0!==k&&(o[5]=k),o}(a)))}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},91377,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={getAppBuildId:function(){return h},setAppBuildId:function(){return g}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f="";function g(a){f=a}function h(){return f}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},16661,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={djb2Hash:function(){return f},hexHash:function(){return g}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});function f(a){let b=5381;for(let c=0;c<a.length;c++)b=(b<<5)+b+a.charCodeAt(c)|0;return b>>>0}function g(a){return f(a).toString(36).slice(0,5)}},35604,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"computeCacheBustingSearchParam",{enumerable:!0,get:function(){return e}});let d=a.r(16661);function e(a,b,c,e){return(void 0===a||"0"===a)&&void 0===b&&void 0===c&&void 0===e?"":(0,d.hexHash)([a||"0",b||"0",c||"0",e||"0"].join(","))}},25744,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={setCacheBustingSearchParam:function(){return h},setCacheBustingSearchParamWithHash:function(){return i}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(35604),g=a.r(37909),h=(a,b)=>{i(a,(0,f.computeCacheBustingSearchParam)(b[g.NEXT_ROUTER_PREFETCH_HEADER],b[g.NEXT_ROUTER_SEGMENT_PREFETCH_HEADER],b[g.NEXT_ROUTER_STATE_TREE_HEADER],b[g.NEXT_URL]))},i=(a,b)=>{let c=a.search,d=(c.startsWith("?")?c.slice(1):c).split("&").filter(a=>a&&!a.startsWith(`${g.NEXT_RSC_UNION_QUERY}=`));b.length>0?d.push(`${g.NEXT_RSC_UNION_QUERY}=${b}`):d.push(`${g.NEXT_RSC_UNION_QUERY}`),a.search=d.length?`?${d.join("&")}`:""};("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},20873,(a,b,c)=>{"use strict";let d;Object.defineProperty(c,"__esModule",{value:!0});var e={createFetch:function(){return u},createFromNextReadableStream:function(){return v},fetchServerResponse:function(){return t}};for(var f in e)Object.defineProperty(c,f,{enumerable:!0,get:e[f]});let g=a.r(38783),h=a.r(37909),i=a.r(20611),j=a.r(1722),k=a.r(88347),l=a.r(22129),n=a.r(91377),o=a.r(25744),p=a.r(23187),q=g.createFromReadableStream,r=g.createFromFetch;function s(a){return(0,p.urlToUrlWithoutFlightMarker)(new URL(a,location.origin)).toString()}async function t(a,b){let{flightRouterState:c,nextUrl:d,prefetchKind:e}=b,f={[h.RSC_HEADER]:"1",[h.NEXT_ROUTER_STATE_TREE_HEADER]:(0,l.prepareFlightRouterStateForRequest)(c,b.isHmrRefresh)};e===k.PrefetchKind.AUTO&&(f[h.NEXT_ROUTER_PREFETCH_HEADER]="1"),d&&(f[h.NEXT_URL]=d);try{let b=e?e===k.PrefetchKind.TEMPORARY?"high":"low":"auto",c=await u(a,f,b,!0),d=(0,p.urlToUrlWithoutFlightMarker)(new URL(c.url)),g=c.redirected?d:a,i=c.headers.get("content-type")||"",j=!!c.headers.get("vary")?.includes(h.NEXT_URL),o=!!c.headers.get(h.NEXT_DID_POSTPONE_HEADER),q=c.headers.get(h.NEXT_ROUTER_STALE_TIME_HEADER),r=null!==q?1e3*parseInt(q,10):-1;if(!i.startsWith(h.RSC_CONTENT_TYPE_HEADER)||!c.ok||!c.body)return a.hash&&(d.hash=a.hash),s(d.toString());let t=c.flightResponse;if(null===t){let a,b=o?(a=c.body.getReader(),new ReadableStream({async pull(b){for(;;){let{done:c,value:d}=await a.read();if(!c){b.enqueue(d);continue}return}}})):c.body;t=v(b,f)}let w=await t;if((0,n.getAppBuildId)()!==w.b)return s(c.url);let x=(0,l.normalizeFlightData)(w.f);if("string"==typeof x)return s(x);return{flightData:x,canonicalUrl:g,renderedSearch:(0,p.getRenderedSearch)(c),couldBeIntercepted:j,prerendered:w.S,postponed:o,staleTime:r,debugInfo:t._debugInfo??null}}catch(b){return console.error(`Failed to fetch RSC payload for ${a}. Falling back to browser navigation.`,b),a.toString()}}async function u(a,b,c,e,f){var g,k;let l=new URL(a);(0,o.setCacheBustingSearchParam)(l,b);let n=fetch(l,{credentials:"same-origin",headers:b,priority:c||void 0,signal:f}),p=e?(g=n,k=b,r(g,{callServer:i.callServer,findSourceMapURL:j.findSourceMapURL,debugChannel:d&&d(k)})):null,q=await n,s=q.redirected,t=new URL(q.url,l);return t.searchParams.delete(h.NEXT_RSC_UNION_QUERY),{url:t.href,redirected:s,ok:q.ok,headers:q.headers,body:q.body,status:q.status,flightResponse:p}}function v(a,b){return q(a,{callServer:i.callServer,findSourceMapURL:j.findSourceMapURL,debugChannel:d&&d(b)})}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},54645,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={deleteFromLru:function(){return l},lruPut:function(){return j},updateLruSize:function(){return k}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(51561),g=null,h=!1,i=0;function j(a){if(g===a)return;let b=a.prev,c=a.next;if(null===c||null===b?(i+=a.size,n()):(b.next=c,c.prev=b),null===g)a.prev=a,a.next=a;else{let b=g.prev;a.prev=b,null!==b&&(b.next=a),a.next=g,g.prev=a}g=a}function k(a,b){let c=a.size;a.size=b,null!==a.next&&(i=i-c+b,n())}function l(a){let b=a.next,c=a.prev;null!==b&&null!==c&&(i-=a.size,a.next=null,a.prev=null,g===a?g=b===g?null:b:(c.next=b,b.prev=c))}function n(){h||i<=0x3200000||(h=!0,p(o))}function o(){h=!1;for(;i>0x2d00000&&null!==g;){let a=g.prev;null!==a&&(0,f.deleteFromCacheMap)(a.value)}}let p="function"==typeof requestIdleCallback?requestIdleCallback:a=>setTimeout(a,0);("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},51561,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={Fallback:function(){return g},createCacheMap:function(){return i},deleteFromCacheMap:function(){return p},getFromCacheMap:function(){return j},isValueExpired:function(){return k},setInCacheMap:function(){return l},setSizeInCacheMap:function(){return r}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(54645),g={},h={};function i(){return{parent:null,key:null,value:null,map:null,prev:null,next:null,size:0}}function j(a,b,c,d,e){let i=function a(b,c,d,e,f,i){let j,l;if(null!==e)j=e.value,l=e.parent;else if(f&&i!==h)j=h,l=null;else return null===d.value?d:k(b,c,d.value)?(q(d),null):d;let n=d.map;if(null!==n){let d=n.get(j);if(void 0!==d){let e=a(b,c,d,l,f,j);if(null!==e)return e}let e=n.get(g);if(void 0!==e)return a(b,c,e,l,f,j)}return null}(a,b,c,d,e,0);return null===i||null===i.value?null:((0,f.lruPut)(i),i.value)}function k(a,b,c){return c.staleAt<=a||c.version<b}function l(a,b,c,d){let e=function(a,b,c){let d=a,e=b,f=null;for(;;){let a=f;if(null!==e)f=e.value,e=e.parent;else if(c&&a!==h){if(null===d.value)return d;f=h}else break;let b=d.map;if(null!==b){let a=b.get(f);if(void 0!==a){d=a;continue}}else b=new Map,d.map=b;let g={parent:d,key:f,value:null,map:null,prev:null,next:null,size:0};b.set(f,g),d=g}return d}(a,b,d);n(e,c),(0,f.lruPut)(e),(0,f.updateLruSize)(e,c.size)}function n(a,b){if(null!==a.value)a.value.ref=null,a.value=null,o(a,b);else o(a,b)}function o(a,b){let c=b.ref;a.value=b,b.ref=a,(0,f.updateLruSize)(a,b.size),null!==c&&c!==a&&c.value===b&&q(c)}function p(a){let b=a.ref;null!==b&&(a.ref=null,q(b))}function q(a){a.value=null,(0,f.deleteFromLru)(a);let b=a.map;if(null===b){let b=a.parent,c=a.key;for(;null!==b;){let a=b.map;if(null!==a&&(a.delete(c),0===a.size)&&(b.map=null,null===b.value)){c=b.key,b=b.parent;continue}break}}else{let c=b.get(h);void 0!==c&&null!==c.value&&n(a,c.value)}}function r(a,b){let c=a.ref;null!==c&&(a.size=b,(0,f.updateLruSize)(c,b))}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},91442,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={appendLayoutVaryPath:function(){return k},clonePageVaryPathWithNewSearchParams:function(){return q},finalizeLayoutVaryPath:function(){return l},finalizeMetadataVaryPath:function(){return o},finalizePageVaryPath:function(){return n},getFulfilledRouteVaryPath:function(){return j},getRouteVaryPath:function(){return i},getSegmentVaryPathForRequest:function(){return p}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(10846),g=a.r(51561),h=a.r(58216);function i(a,b,c){return{value:a,parent:{value:b,parent:{value:c,parent:null}}}}function j(a,b,c,d){return{value:a,parent:{value:b,parent:{value:d?c:g.Fallback,parent:null}}}}function k(a,b){return{value:b,parent:a}}function l(a,b){return{value:a,parent:b}}function n(a,b,c){return{value:a,parent:{value:b,parent:c}}}function o(a,b,c){return{value:a+h.HEAD_REQUEST_KEY,parent:{value:b,parent:c}}}function p(a,b){let c=b.varyPath;if(b.isPage&&a!==f.FetchStrategy.Full&&a!==f.FetchStrategy.PPRRuntime){let a=c.parent.parent;return{value:c.value,parent:{value:g.Fallback,parent:a}}}return c}function q(a,b){let c=a.parent;return{value:a.value,parent:{value:b,parent:c.parent}}}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},19924,(a,b,c)=>{"use strict";function d(a){return a.startsWith("/")?a:`/${a}`}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureLeadingSlash",{enumerable:!0,get:function(){return d}})},53808,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={normalizeAppPath:function(){return h},normalizeRscURL:function(){return i}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(19924),g=a.r(39118);function h(a){return(0,f.ensureLeadingSlash)(a.split("/").reduce((a,b,c,d)=>!b||(0,g.isGroupSegment)(b)||"@"===b[0]||("page"===b||"route"===b)&&c===d.length-1?a:`${a}/${b}`,""))}function i(a){return a.replace(/\.rsc($|\?)/,"$1")}},18099,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={INTERCEPTION_ROUTE_MARKERS:function(){return g},extractInterceptionRouteInformation:function(){return i},isInterceptionRouteAppPath:function(){return h}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(53808),g=["(..)(..)","(.)","(..)","(...)"];function h(a){return void 0!==a.split("/").find(a=>g.find(b=>a.startsWith(b)))}function i(a){let b,c,d;for(let e of a.split("/"))if(c=g.find(a=>e.startsWith(a))){[b,d]=a.split(c,2);break}if(!b||!c||!d)throw Object.defineProperty(Error(`Invalid interception route: ${a}. Must be in the format /<intercepting route>/(..|...|..)(..)/<intercepted route>`),"__NEXT_ERROR_CODE",{value:"E269",enumerable:!1,configurable:!0});switch(b=(0,f.normalizeAppPath)(b),c){case"(.)":d="/"===b?`/${d}`:b+"/"+d;break;case"(..)":if("/"===b)throw Object.defineProperty(Error(`Invalid interception route: ${a}. Cannot use (..) marker at the root level, use (.) instead.`),"__NEXT_ERROR_CODE",{value:"E207",enumerable:!1,configurable:!0});d=b.split("/").slice(0,-1).concat(d).join("/");break;case"(...)":d="/"+d;break;case"(..)(..)":let e=b.split("/");if(e.length<=2)throw Object.defineProperty(Error(`Invalid interception route: ${a}. Cannot use (..)(..) marker at the root level or one level up.`),"__NEXT_ERROR_CODE",{value:"E486",enumerable:!1,configurable:!0});d=e.slice(0,-2).concat(d).join("/");break;default:throw Object.defineProperty(Error("Invariant: unexpected marker"),"__NEXT_ERROR_CODE",{value:"E112",enumerable:!1,configurable:!0})}return{interceptingRoute:b,interceptedRoute:d}}},37042,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={computeChangedPath:function(){return l},extractPathFromFlightRouterState:function(){return k},getSelectedParams:function(){return function a(b,c={}){for(let d of Object.values(b[1])){let b=d[0],e=Array.isArray(b),f=e?b[1]:b;!f||f.startsWith(g.PAGE_SEGMENT_KEY)||(e&&("c"===b[2]||"oc"===b[2])?c[b[0]]=b[1].split("/"):e&&(c[b[0]]=b[1]),c=a(d,c))}return c}}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(18099),g=a.r(39118),h=a.r(30641),i=a=>"string"==typeof a?"children"===a?"":a:a[1];function j(a){return a.reduce((a,b)=>{let c;return""===(b="/"===(c=b)[0]?c.slice(1):c)||(0,g.isGroupSegment)(b)?a:`${a}/${b}`},"")||"/"}function k(a){let b=Array.isArray(a[0])?a[0][1]:a[0];if(b===g.DEFAULT_SEGMENT_KEY||f.INTERCEPTION_ROUTE_MARKERS.some(a=>b.startsWith(a)))return;if(b.startsWith(g.PAGE_SEGMENT_KEY))return"";let c=[i(b)],d=a[1]??{},e=d.children?k(d.children):void 0;if(void 0!==e)c.push(e);else for(let[a,b]of Object.entries(d)){if("children"===a)continue;let d=k(b);void 0!==d&&c.push(d)}return j(c)}function l(a,b){let c=function a(b,c){let[d,e]=b,[g,j]=c,l=i(d),n=i(g);if(f.INTERCEPTION_ROUTE_MARKERS.some(a=>l.startsWith(a)||n.startsWith(a)))return"";if(!(0,h.matchSegment)(d,g))return k(c)??"";for(let b in e)if(j[b]){let c=a(e[b],j[b]);if(null!==c)return`${i(g)}/${c}`}return null}(a,b);return null==c||"/"===c?c:j(c.split("/"))}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},88632,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"handleMutable",{enumerable:!0,get:function(){return f}});let d=a.r(37042);function e(a){return void 0!==a}function f(a,b){let c=b.shouldScroll??!0,f=a.previousNextUrl,g=a.nextUrl;if(e(b.patchedTree)){let c=(0,d.computeChangedPath)(a.tree,b.patchedTree);c?(f=g,g=c):g||(g=a.canonicalUrl)}return{canonicalUrl:b.canonicalUrl??a.canonicalUrl,renderedSearch:b.renderedSearch??a.renderedSearch,pushRef:{pendingPush:e(b.pendingPush)?b.pendingPush:a.pushRef.pendingPush,mpaNavigation:e(b.mpaNavigation)?b.mpaNavigation:a.pushRef.mpaNavigation,preserveCustomHistoryState:e(b.preserveCustomHistoryState)?b.preserveCustomHistoryState:a.pushRef.preserveCustomHistoryState},focusAndScrollRef:{apply:!!c&&(!!e(b?.scrollableSegments)||a.focusAndScrollRef.apply),onlyHashChange:b.onlyHashChange||!1,hashFragment:c?b.hashFragment&&""!==b.hashFragment?decodeURIComponent(b.hashFragment.slice(1)):a.focusAndScrollRef.hashFragment:null,segmentPaths:c?b?.scrollableSegments??a.focusAndScrollRef.segmentPaths:[]},cache:b.cache?b.cache:a.cache,tree:e(b.patchedTree)?b.patchedTree:a.tree,nextUrl:g,previousNextUrl:f,debugInfo:b.collectedDebugInfo??null}}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},70681,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"createRouterCacheKey",{enumerable:!0,get:function(){return e}});let d=a.r(39118);function e(a,b=!1){return Array.isArray(a)?`${a[0]}|${a[1]}|${a[2]}`:b&&a.startsWith(d.PAGE_SEGMENT_KEY)?d.PAGE_SEGMENT_KEY:a}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},71094,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"isNavigatingToNewRootLayout",{enumerable:!0,get:function(){return function a(b,c){let d=b[0],e=c[0];if(Array.isArray(d)&&Array.isArray(e)){if(d[0]!==e[0]||d[2]!==e[2])return!0}else if(d!==e)return!0;if(b[4])return!c[4];if(c[4])return!0;let f=Object.values(b[1])[0],g=Object.values(c[1])[0];return!f||!g||a(f,g)}}}),("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},57051,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={abortTask:function(){return s},listenForDynamicRequest:function(){return r},startPPRNavigation:function(){return n},updateCacheNodeOnPopstateRestoration:function(){return function a(b,c){let d=c[1],e=b.parallelRoutes,f=new Map(e);for(let b in d){let c=d[b],g=c[0],h=(0,i.createRouterCacheKey)(g),j=e.get(b);if(void 0!==j){let d=j.get(h);if(void 0!==d){let e=a(d,c),g=new Map(j);g.set(h,e),f.set(b,g)}}}let g=b.rsc,h=v(g)&&"pending"===g.status;return{lazyData:null,rsc:g,head:b.head,prefetchHead:h?b.prefetchHead:[null,null],prefetchRsc:h?b.prefetchRsc:null,loading:b.loading,parallelRoutes:f,navigatedAt:b.navigatedAt}}}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(39118),g=a.r(30641),h=a.r(74685),i=a.r(70681),j=a.r(71094),k=a.r(23053),l={route:null,node:null,dynamicRequestTree:null,children:null};function n(a,b,c,d,e,j,k,n,q,r){return function a(b,c,d,e,j,k,n,q,r,s,t,u){let v=e[1],w=j[1],x=null!==n?n[1]:null;k||!0===j[4]&&(k=!0);let y=d.parallelRoutes,z=new Map(y),A={},B=null,C=!1,D={};for(let d in w){let e,j=w[d],n=v[d],E=y.get(d),F=null!==x?x[d]:null,G=j[0],H=t.concat([d,G]),I=(0,i.createRouterCacheKey)(G),J=void 0!==n?n[0]:void 0,K=void 0!==E?E.get(I):void 0;if(null!==(e=G===f.DEFAULT_SEGMENT_KEY?void 0!==n?function(a,b){let c;return"refresh"===b[3]?c=b:((c=p(b,b[1]))[2]=(0,h.createHrefFromUrl)(a),c[3]="refresh"),{route:c,node:null,dynamicRequestTree:null,children:null}}(c,n):o(b,n,j,K,k,void 0!==F?F:null,q,r,H,u):s&&0===Object.keys(j[1]).length?o(b,n,j,K,k,void 0!==F?F:null,q,r,H,u):void 0!==n&&void 0!==J&&(0,g.matchSegment)(G,J)&&void 0!==K&&void 0!==n?a(b,c,K,n,j,k,F,q,r,s,H,u):o(b,n,j,K,k,void 0!==F?F:null,q,r,H,u))){if(null===e.route)return l;null===B&&(B=new Map),B.set(d,e);let a=e.node;if(null!==a){let b=new Map(E);b.set(I,a),z.set(d,b)}let b=e.route;A[d]=b;let c=e.dynamicRequestTree;null!==c?(C=!0,D[d]=c):D[d]=b}else A[d]=j,D[d]=j}if(null===B)return null;let E={lazyData:null,rsc:d.rsc,prefetchRsc:d.prefetchRsc,head:d.head,prefetchHead:d.prefetchHead,loading:d.loading,parallelRoutes:z,navigatedAt:b};return{route:p(j,A),node:E,dynamicRequestTree:C?p(j,D):null,children:B}}(a,b,c,d,e,!1,j,k,n,q,[],r)}function o(a,b,c,d,e,f,g,h,n,o){return!e&&(void 0===b||(0,j.isNavigatingToNewRootLayout)(b,c))?l:function a(b,c,d,e,f,g,h,j){let l,n,o,r,s=c[1],t=0===Object.keys(s).length;if(void 0!==d&&d.navigatedAt+k.DYNAMIC_STALETIME_MS>b)l=d.rsc,n=d.loading,o=d.head,r=d.navigatedAt;else if(null===e)return q(b,c,null,f,g,h,j);else if(l=e[0],n=e[2],o=t?f:null,r=b,e[3]||g&&t)return q(b,c,e,f,g,h,j);let u=null!==e?e[1]:null,v=new Map,w=void 0!==d?d.parallelRoutes:null,x=new Map(w),y={},z=!1;if(t)j.push(h);else for(let c in s){let d=s[c],e=null!==u?u[c]:null,k=null!==w?w.get(c):void 0,l=d[0],n=h.concat([c,l]),o=(0,i.createRouterCacheKey)(l),p=a(b,d,void 0!==k?k.get(o):void 0,e,f,g,n,j);v.set(c,p);let q=p.dynamicRequestTree;null!==q?(z=!0,y[c]=q):y[c]=d;let r=p.node;if(null!==r){let a=new Map;a.set(o,r),x.set(c,a)}}return{route:c,node:{lazyData:null,rsc:l,prefetchRsc:null,head:o,prefetchHead:null,loading:n,parallelRoutes:x,navigatedAt:r},dynamicRequestTree:z?p(c,y):null,children:v}}(a,c,d,f,g,h,n,o)}function p(a,b){let c=[a[0],b];return 2 in a&&(c[2]=a[2]),3 in a&&(c[3]=a[3]),4 in a&&(c[4]=a[4]),c}function q(a,b,c,d,e,f,g){let h=p(b,b[1]);return h[3]="refetch",{route:b,node:function a(b,c,d,e,f,g,h){let j=c[1],k=null!==d?d[1]:null,l=new Map;for(let c in j){let d=j[c],n=null!==k?k[c]:null,o=d[0],p=g.concat([c,o]),q=(0,i.createRouterCacheKey)(o),r=a(b,d,void 0===n?null:n,e,f,p,h),s=new Map;s.set(q,r),l.set(c,s)}let n=0===l.size;n&&h.push(g);let o=null!==d?d[0]:null;return{lazyData:null,parallelRoutes:l,prefetchRsc:void 0!==o?o:null,prefetchHead:n?e:[null,null],rsc:w(),head:n?w():null,loading:null!==d?d[2]??null:w(),navigatedAt:b}}(a,b,c,d,e,f,g),dynamicRequestTree:h,children:null}}function r(a,b){b.then(b=>{if("string"==typeof b)return;let{flightData:c,debugInfo:d}=b;for(let b of c){let{segmentPath:c,tree:e,seedData:f,head:h}=b;f&&function(a,b,c,d,e,f){let h=a;for(let a=0;a<b.length;a+=2){let c=b[a],d=b[a+1],e=h.children;if(null!==e){let a=e.get(c);if(void 0!==a){let b=a.route[0];if((0,g.matchSegment)(d,b)){h=a;continue}}}return}!function a(b,c,d,e,f){if(null===b.dynamicRequestTree)return;let h=b.children,j=b.node;if(null===h){null!==j&&(function a(b,c,d,e,f,h){let j=c[1],k=d[1],l=e[1],n=b.parallelRoutes;for(let b in j){let c=j[b],d=k[b],e=l[b],o=n.get(b),p=c[0],q=(0,i.createRouterCacheKey)(p),r=void 0!==o?o.get(q):void 0;void 0!==r&&(void 0!==d&&(0,g.matchSegment)(p,d[0])&&null!=e?a(r,c,d,e,f,h):t(c,r,null,h))}let o=b.rsc,p=e[0];null===o?b.rsc=p:v(o)&&o.resolve(p,h);let q=b.loading;if(v(q)){let a=e[2];q.resolve(a,h)}let r=b.head;v(r)&&r.resolve(f,h)}(j,b.route,c,d,e,f),b.dynamicRequestTree=null);return}let k=c[1],l=d[1];for(let b in c){let c=k[b],d=l[b],i=h.get(b);if(void 0!==i){let b=i.route[0];if((0,g.matchSegment)(c[0],b)&&null!=d)return a(i,c,d,e,f)}}}(h,c,d,e,f)}(a,c,e,f,h,d)}s(a,null,d)},b=>{s(a,b,null)})}function s(a,b,c){let d=a.node;if(null===d)return;let e=a.children;if(null===e)t(a.route,d,b,c);else for(let a of e.values())s(a,b,c);a.dynamicRequestTree=null}function t(a,b,c,d){let e=a[1],f=b.parallelRoutes;for(let a in e){let b=e[a],g=f.get(a);if(void 0===g)continue;let h=b[0],j=(0,i.createRouterCacheKey)(h),k=g.get(j);void 0!==k&&t(b,k,c,d)}let g=b.rsc;v(g)&&(null===c?g.resolve(null,d):g.reject(c,d));let h=b.loading;v(h)&&h.resolve(null,d);let j=b.head;v(j)&&j.resolve(null,d)}let u=Symbol();function v(a){return a&&"object"==typeof a&&a.tag===u}function w(){let a,b,c=[],d=new Promise((c,d)=>{a=c,b=d});return d.status="pending",d.resolve=(b,e)=>{"pending"===d.status&&(d.status="fulfilled",d.value=b,null!==e&&c.push.apply(c,e),a(b))},d.reject=(a,e)=>{"pending"===d.status&&(d.status="rejected",d.reason=a,null!==e&&c.push.apply(c,e),b(a))},d.tag=u,d._debugInfo=c,d}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},37472,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"navigate",{enumerable:!0,get:function(){return k}});let d=a.r(20873),e=a.r(57051),f=a.r(74685),g=a.r(99032),h=a.r(92702),i=a.r(39118),j=a.r(10846);function k(a,b,c,d,e,f,i){let k=Date.now(),n=a.href,r=n===window.location.href,s=(0,h.createCacheKey)(n,e),t=(0,g.readRouteCacheEntry)(k,s);if(null!==t&&t.status===g.EntryStatus.Fulfilled){let g=o(k,t,t.tree),h=g.flightRouterState,i=g.seedData,j=p(k,t),n=j.rsc,q=j.isPartial,s=t.canonicalUrl+a.hash;return l(k,a,b,e,r,c,d,h,i,n,q,s,t.renderedSearch,f,a.hash)}if(null===t||t.status!==g.EntryStatus.Rejected){let h=(0,g.requestOptimisticRouteCacheEntry)(k,a,e);if(null!==h){let g=o(k,h,h.tree),i=g.flightRouterState,j=g.seedData,n=p(k,h),q=n.rsc,s=n.isPartial,t=h.canonicalUrl+a.hash;return l(k,a,b,e,r,c,d,i,j,q,s,t,h.renderedSearch,f,a.hash)}}let u=i.collectedDebugInfo??[];return void 0===i.collectedDebugInfo&&(u=i.collectedDebugInfo=[]),{tag:j.NavigationResultTag.Async,data:q(k,a,b,e,r,c,d,f,a.hash,u)}}function l(a,b,c,f,g,h,i,k,l,o,p,q,r,s,t){let u=[],v=(0,e.startPPRNavigation)(a,c,h,i,k,l,o,p,g,u);if(null!==v){let a=v.dynamicRequestTree;if(null!==a){let c=(0,d.fetchServerResponse)(new URL(q,b.origin),{flightRouterState:a,nextUrl:f});(0,e.listenForDynamicRequest)(v,c)}return n(v,h,q,r,u,s,t)}return{tag:j.NavigationResultTag.NoOp,data:{canonicalUrl:q,shouldScroll:s}}}function n(a,b,c,d,e,f,g){let h=a.route;if(null===h)return{tag:j.NavigationResultTag.MPA,data:c};let i=a.node;return{tag:j.NavigationResultTag.Success,data:{flightRouterState:h,cacheNode:null!==i?i:b,canonicalUrl:c,renderedSearch:d,scrollableSegments:e,shouldScroll:f,hash:g}}}function o(a,b,c){let d={},e={},f=c.slots;if(null!==f)for(let c in f){let g=o(a,b,f[c]);d[c]=g.flightRouterState,e[c]=g.seedData}let h=null,j=null,k=!0,l=(0,g.readSegmentCacheEntry)(a,c.varyPath);if(null!==l)switch(l.status){case g.EntryStatus.Fulfilled:h=l.rsc,j=l.loading,k=l.isPartial;break;case g.EntryStatus.Pending:{let a=(0,g.waitForSegmentCacheEntry)(l);h=a.then(a=>null!==a?a.rsc:null),j=a.then(a=>null!==a?a.loading:null),k=!0}case g.EntryStatus.Empty:case g.EntryStatus.Rejected:}return{flightRouterState:[(0,i.addSearchParamsIfPageSegment)(c.segment,Object.fromEntries(new URLSearchParams(b.renderedSearch))),d,null,null,c.isRootLayout],seedData:[h,e,j,k,!1]}}function p(a,b){let c=null,d=!0,e=(0,g.readSegmentCacheEntry)(a,b.metadata.varyPath);if(null!==e)switch(e.status){case g.EntryStatus.Fulfilled:c=e.rsc,d=e.isPartial;break;case g.EntryStatus.Pending:c=(0,g.waitForSegmentCacheEntry)(e).then(a=>null!==a?a.rsc:null),d=!0;case g.EntryStatus.Empty:case g.EntryStatus.Rejected:}return{rsc:c,isPartial:d}}async function q(a,b,c,g,h,i,k,l,o,p){let q=(0,d.fetchServerResponse)(b,{flightRouterState:k,nextUrl:g}),r=await q;if("string"==typeof r)return{tag:j.NavigationResultTag.MPA,data:r};let{flightData:s,canonicalUrl:t,renderedSearch:u,debugInfo:v}=r;null!==v&&p.push(...v);let w=function(a,b){let c=a;for(let{segmentPath:d,tree:e}of b){let b=c!==a;c=function a(b,c,d,e,f){if(f===d.length)return c;let g=d[f],h=b[1],i={};for(let b in h)if(b===g){let g=h[b];i[b]=a(g,c,d,e,f+2)}else i[b]=h[b];if(e)return b[1]=i,b;let j=[b[0],i];return 2 in b&&(j[2]=b[2]),3 in b&&(j[3]=b[3]),4 in b&&(j[4]=b[4]),j}(c,e,d,b,0)}return c}(k,s),x=[],y=(0,e.startPPRNavigation)(a,c,i,k,w,null,null,!0,h,x);return null!==y?(null!==y.dynamicRequestTree&&(0,e.listenForDynamicRequest)(y,q),n(y,i,(0,f.createHrefFromUrl)(t),u,x,l,o)):{tag:j.NavigationResultTag.NoOp,data:{canonicalUrl:(0,f.createHrefFromUrl)(t),shouldScroll:l}}}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},23053,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={DYNAMIC_STALETIME_MS:function(){return k},STATIC_STALETIME_MS:function(){return l},generateSegmentsFromPatch:function(){return function a(b){let c=[],[d,e]=b;if(0===Object.keys(e).length)return[[d]];for(let[b,f]of Object.entries(e))for(let e of a(f))""===d?c.push([b,...e]):c.push([d,b,...e]);return c}},handleExternalUrl:function(){return n},navigateReducer:function(){return o}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(74685),g=a.r(88632),h=a.r(37472),i=a.r(10846),j=a.r(99032),k=1e3*Number("0"),l=(0,j.getStaleTimeMs)(Number("300"));function n(a,b,c,d){return b.mpaNavigation=!0,b.canonicalUrl=c,b.pendingPush=d,b.scrollableSegments=void 0,(0,g.handleMutable)(a,b)}function o(a,b){let{url:c,isExternalUrl:d,navigateType:e,shouldScroll:j}=b,k={},l=(0,f.createHrefFromUrl)(c),o="push"===e;if(k.preserveCustomHistoryState=!1,k.pendingPush=o,d)return n(a,k,c.toString(),o);if(document.getElementById("__next-page-redirect"))return n(a,k,l,o);let p=new URL(a.canonicalUrl,location.origin),q=(0,h.navigate)(c,p,a.cache,a.tree,a.nextUrl,j,k);return function a(b,c,d,e,f){switch(f.tag){case i.NavigationResultTag.MPA:return n(c,d,f.data,e);case i.NavigationResultTag.NoOp:{d.canonicalUrl=f.data.canonicalUrl;let a=new URL(c.canonicalUrl,b);return b.pathname===a.pathname&&b.search===a.search&&b.hash!==a.hash&&(d.onlyHashChange=!0,d.shouldScroll=f.data.shouldScroll,d.hashFragment=b.hash,d.scrollableSegments=[]),(0,g.handleMutable)(c,d)}case i.NavigationResultTag.Success:return d.cache=f.data.cacheNode,d.patchedTree=f.data.flightRouterState,d.renderedSearch=f.data.renderedSearch,d.canonicalUrl=f.data.canonicalUrl,d.scrollableSegments=f.data.scrollableSegments,d.shouldScroll=f.data.shouldScroll,d.hashFragment=f.data.hash,(0,g.handleMutable)(c,d);case i.NavigationResultTag.Async:return f.data.then(f=>a(b,c,d,e,f),()=>c);default:return c}}(c,a,k,o,q)}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},89239,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={DOC_PREFETCH_RANGE_HEADER_VALUE:function(){return g},doesExportedHtmlMatchBuildId:function(){return j},insertBuildIdComment:function(){return i}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f="<!DOCTYPE html>",g="bytes=0-63";function h(a){return a.slice(0,24).replace(/-/g,"_")}function i(a,b){return b.includes("-->")||!a.startsWith(f)?a:a.replace(f,f+"<!--"+h(b)+"-->")}function j(a,b){return a.startsWith(f+"<!--"+h(b)+"-->")}},99032,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d,e={EntryStatus:function(){return z},canNewFetchStrategyProvideMoreContent:function(){return af},convertRouteTreeToFlightRouterState:function(){return function a(b){let c={};if(null!==b.slots)for(let d in b.slots)c[d]=a(b.slots[d]);return[b.segment,c,null,null,b.isRootLayout]}},createDetachedSegmentCacheEntry:function(){return S},fetchRouteOnCacheMiss:function(){return Z},fetchSegmentOnCacheMiss:function(){return $},fetchSegmentPrefetchesUsingDynamicRequest:function(){return _},getCurrentCacheVersion:function(){return F},getStaleTimeMs:function(){return y},overwriteRevalidatingSegmentCacheEntry:function(){return Q},pingInvalidationListeners:function(){return H},readOrCreateRevalidatingSegmentEntry:function(){return P},readOrCreateRouteCacheEntry:function(){return L},readOrCreateSegmentCacheEntry:function(){return O},readRouteCacheEntry:function(){return I},readSegmentCacheEntry:function(){return J},requestOptimisticRouteCacheEntry:function(){return M},revalidateEntireCache:function(){return G},upgradeToPendingSegment:function(){return T},upsertSegmentEntry:function(){return R},waitForSegmentCacheEntry:function(){return K}};for(var f in e)Object.defineProperty(c,f,{enumerable:!0,get:e[f]});let g=a.r(76e3),h=a.r(37909),i=a.r(20873),j=a.r(42297),k=a.r(91442),l=a.r(91377),n=a.r(74685),o=a.r(92702),p=a.r(23187),q=a.r(51561),r=a.r(58216),s=a.r(22129),t=a.r(23053),u=a.r(16441),v=a.r(39118);a.r(89239);let w=a.r(10846),x=a.r(54427);function y(a){return 1e3*Math.max(a,30)}var z=((d={})[d.Empty=0]="Empty",d[d.Pending=1]="Pending",d[d.Fulfilled=2]="Fulfilled",d[d.Rejected=3]="Rejected",d);let A=["",{},null,"metadata-only"],B=(0,q.createCacheMap)(),C=(0,q.createCacheMap)(),D=null,E=0;function F(){return E}function G(a,b){E++,(0,j.startRevalidationCooldown)(),(0,u.pingVisibleLinks)(a,b),H(a,b)}function H(a,b){if(null!==D){let c=D;for(let d of(D=null,c))(0,j.isPrefetchTaskDirty)(d,a,b)&&function(a){let b=a.onInvalidate;if(null!==b){a.onInvalidate=null;try{b()}catch(a){"function"==typeof reportError?reportError(a):console.error(a)}}}(d)}}function I(a,b){let c=(0,k.getRouteVaryPath)(b.pathname,b.search,b.nextUrl);return(0,q.getFromCacheMap)(a,E,B,c,!1)}function J(a,b){return(0,q.getFromCacheMap)(a,E,C,b,!1)}function K(a){let b=a.promise;return null===b&&(b=a.promise=(0,x.createPromiseWithResolvers)()),b.promise}function L(a,b,c){null!==b.onInvalidate&&(null===D?D=new Set([b]):D.add(b));let d=I(a,c);if(null!==d)return d;let e={canonicalUrl:null,status:0,blockedTasks:null,tree:null,metadata:null,couldBeIntercepted:!0,isPPREnabled:!1,renderedSearch:null,ref:null,size:0,staleAt:1/0,version:E},f=(0,k.getRouteVaryPath)(c.pathname,c.search,c.nextUrl);return(0,q.setInCacheMap)(B,f,e,!1),e}function M(a,b,c){let d=b.search;if(""===d)return null;let e=new URL(b);e.search="";let f=I(a,(0,o.createCacheKey)(e.href,c));if(null===f||2!==f.status)return null;let g=new URL(f.canonicalUrl,b.origin),h=""!==g.search?g.search:d,i=""!==f.renderedSearch?f.renderedSearch:d,j=new URL(f.canonicalUrl,location.origin);return j.search=h,{canonicalUrl:(0,n.createHrefFromUrl)(j),status:2,blockedTasks:null,tree:N(f.tree,i),metadata:N(f.metadata,i),couldBeIntercepted:f.couldBeIntercepted,isPPREnabled:f.isPPREnabled,renderedSearch:i,ref:null,size:0,staleAt:f.staleAt,version:f.version}}function N(a,b){let c=null,d=a.slots;if(null!==d)for(let a in c={},d){let e=d[a];c[a]=N(e,b)}return a.isPage?{requestKey:a.requestKey,segment:a.segment,varyPath:(0,k.clonePageVaryPathWithNewSearchParams)(a.varyPath,b),isPage:!0,slots:c,isRootLayout:a.isRootLayout,hasLoadingBoundary:a.hasLoadingBoundary,hasRuntimePrefetch:a.hasRuntimePrefetch}:{requestKey:a.requestKey,segment:a.segment,varyPath:a.varyPath,isPage:!1,slots:c,isRootLayout:a.isRootLayout,hasLoadingBoundary:a.hasLoadingBoundary,hasRuntimePrefetch:a.hasRuntimePrefetch}}function O(a,b,c,d){let e=J(a,d.varyPath);if(null!==e)return e;let f=(0,k.getSegmentVaryPathForRequest)(b,d),g=S(c.staleAt);return(0,q.setInCacheMap)(C,f,g,!1),g}function P(a,b,c,d){var e;let f=(e=d.varyPath,(0,q.getFromCacheMap)(a,E,C,e,!0));if(null!==f)return f;let g=(0,k.getSegmentVaryPathForRequest)(b,d),h=S(c.staleAt);return(0,q.setInCacheMap)(C,g,h,!0),h}function Q(a,b,c){let d=(0,k.getSegmentVaryPathForRequest)(a,c),e=S(b.staleAt);return(0,q.setInCacheMap)(C,d,e,!0),e}function R(a,b,c){if((0,q.isValueExpired)(a,E,c))return null;let d=J(a,b);if(null!==d){var e;if(c.fetchStrategy!==d.fetchStrategy&&(e=d.fetchStrategy,!(e<c.fetchStrategy))||!d.isPartial&&c.isPartial)return c.status=3,c.loading=null,c.rsc=null,null;(0,q.deleteFromCacheMap)(d)}return(0,q.setInCacheMap)(C,b,c,!1),c}function S(a){return{status:0,fetchStrategy:w.FetchStrategy.PPR,rsc:null,loading:null,isPartial:!0,promise:null,ref:null,size:0,staleAt:a,version:0}}function T(a,b){return a.status=1,a.fetchStrategy=b,a.version=E,a}function U(a){let b=a.blockedTasks;if(null!==b){for(let a of b)(0,j.pingPrefetchTask)(a);a.blockedTasks=null}}function V(a,b,c,d,e,f,h,i){let j={requestKey:r.HEAD_REQUEST_KEY,segment:r.HEAD_REQUEST_KEY,varyPath:c,isPage:!0,slots:null,isRootLayout:!1,hasLoadingBoundary:g.HasLoadingBoundary.SubtreeHasNoLoadingBoundary,hasRuntimePrefetch:!1};return a.status=2,a.tree=b,a.metadata=j,a.staleAt=d,a.couldBeIntercepted=e,a.canonicalUrl=f,a.renderedSearch=h,a.isPPREnabled=i,U(a),a}function W(a,b,c,d,e){return a.status=2,a.rsc=b,a.loading=c,a.staleAt=d,a.isPartial=e,null!==a.promise&&(a.promise.resolve(a),a.promise=null),a}function X(a,b){a.status=3,a.staleAt=b,U(a)}function Y(a,b){a.status=3,a.staleAt=b,null!==a.promise&&(a.promise.resolve(null),a.promise=null)}async function Z(a,b,c){let d=c.pathname,e=c.search,f=c.nextUrl,j={[h.RSC_HEADER]:"1",[h.NEXT_ROUTER_PREFETCH_HEADER]:"1",[h.NEXT_ROUTER_SEGMENT_PREFETCH_HEADER]:"/_tree"};null!==f&&(j[h.NEXT_URL]=f);try{let c,o,u=new URL(d+e,location.origin);if(c=await ad(u,j),o=null!==c&&c.redirected?new URL(c.url):u,!c||!c.ok||204===c.status||!c.body)return X(a,Date.now()+1e4),null;let z=(0,n.createHrefFromUrl)(o),A=c.headers.get("vary"),C=null!==A&&A.includes(h.NEXT_URL),D=(0,x.createPromiseWithResolvers)(),E="2"===c.headers.get(h.NEXT_DID_POSTPONE_HEADER);if(E){let b,d,e=ae(c.body,D.resolve,function(b){(0,q.setSizeInCacheMap)(a,b)}),f=await (0,i.createFromNextReadableStream)(e,j);if(f.buildId!==(0,l.getAppBuildId)())return X(a,Date.now()+1e4),null;let h=(0,p.getRenderedPathname)(c),n=(0,p.getRenderedSearch)(c),o={metadataVaryPath:null},s=(b=h.split("/").filter(a=>""!==a),d=r.ROOT_SEGMENT_REQUEST_KEY,function a(b,c,d,e,f,h,i,j){let l,n,o=null,q=b.slots;if(null!==q)for(let b in l=!1,n=(0,k.finalizeLayoutVaryPath)(e,d),o={},q){let c,g,l,n=q[b],s=n.name,t=n.paramType,u=n.paramKey;if(null!==t){let a=(0,p.parseDynamicParamFromURLPart)(t,f,h),b=null!==u?u:(0,p.getCacheKeyForDynamicParam)(a,"");l=(0,k.appendLayoutVaryPath)(d,b),g=[s,b,t],c=!0}else l=d,g=s,c=(0,p.doesStaticSegmentAppearInURL)(s);let v=c?h+1:h,w=(0,r.createSegmentRequestKeyPart)(g),x=(0,r.appendSegmentRequestKeyPart)(e,b,w);o[b]=a(n,g,l,x,f,v,i,j)}else e.endsWith(v.PAGE_SEGMENT_KEY)?(l=!0,n=(0,k.finalizePageVaryPath)(e,i,d),null===j.metadataVaryPath&&(j.metadataVaryPath=(0,k.finalizeMetadataVaryPath)(e,i,d))):(l=!1,n=(0,k.finalizeLayoutVaryPath)(e,d));return{requestKey:e,segment:c,varyPath:n,isPage:l,slots:o,isRootLayout:b.isRootLayout,hasLoadingBoundary:g.HasLoadingBoundary.SegmentHasLoadingBoundary,hasRuntimePrefetch:b.hasRuntimePrefetch}}(f.tree,d,null,r.ROOT_SEGMENT_REQUEST_KEY,b,0,n,o)),t=o.metadataVaryPath;if(null===t)return X(a,Date.now()+1e4),null;let u=y(f.staleTime);V(a,s,t,Date.now()+u,C,z,n,E)}else{let d=ae(c.body,D.resolve,function(b){(0,q.setSizeInCacheMap)(a,b)}),e=await (0,i.createFromNextReadableStream)(d,j);if(e.b!==(0,l.getAppBuildId)())return X(a,Date.now()+1e4),null;!function(a,b,c,d,e,f,i,j,l){let n=(0,p.getRenderedSearch)(d),o=(0,s.normalizeFlightData)(e.f);if("string"==typeof o||1!==o.length)return X(f,a+1e4);let q=o[0];if(!q.isRootRender)return X(f,a+1e4);let u=q.tree,w="number"==typeof e.rp?.[1]?e.rp[1]:parseInt(d.headers.get(h.NEXT_ROUTER_STALE_TIME_HEADER)??"",10),x=isNaN(w)?t.STATIC_STALETIME_MS:y(w),z="1"===d.headers.get(h.NEXT_DID_POSTPONE_HEADER),A={metadataVaryPath:null},B=function a(b,c,d,e,f){let h,i,j,l,n=b[0];if(Array.isArray(n)){j=!1;let a=n[1];i=(0,k.appendLayoutVaryPath)(d,a),l=(0,k.finalizeLayoutVaryPath)(c,i),h=n}else i=d,c.endsWith(v.PAGE_SEGMENT_KEY)?(j=!0,h=v.PAGE_SEGMENT_KEY,l=(0,k.finalizePageVaryPath)(c,e,i),null===f.metadataVaryPath&&(f.metadataVaryPath=(0,k.finalizeMetadataVaryPath)(c,e,i))):(j=!1,h=n,l=(0,k.finalizeLayoutVaryPath)(c,i));let o=null,p=b[1];for(let b in p){let d=p[b],g=d[0],h=(0,r.createSegmentRequestKeyPart)(g),j=a(d,(0,r.appendSegmentRequestKeyPart)(c,b,h),i,e,f);null===o?o={[b]:j}:o[b]=j}return{requestKey:c,segment:h,varyPath:l,isPage:j,slots:o,isRootLayout:!0===b[4],hasLoadingBoundary:void 0!==b[5]?b[5]:g.HasLoadingBoundary.SubtreeHasNoLoadingBoundary,hasRuntimePrefetch:!1}}(u,r.ROOT_SEGMENT_REQUEST_KEY,null,n,A),C=A.metadataVaryPath;if(null===C)return X(f,a+1e4);let D=V(f,B,C,a+x,i,j,n,l);ab(a,b,c,d,e,z,D,null)}(Date.now(),b,w.FetchStrategy.LoadingBoundary,c,e,a,C,z,E)}if(!C){let b=(0,k.getFulfilledRouteVaryPath)(d,e,f,C);(0,q.setInCacheMap)(B,b,a,!1)}return{value:null,closed:D.promise}}catch(b){return X(a,Date.now()+1e4),null}}async function $(a,b,c,d){let e=new URL(a.canonicalUrl,location.origin),f=c.nextUrl,g=d.requestKey,j=g===r.ROOT_SEGMENT_REQUEST_KEY?"/_index":g,k={[h.RSC_HEADER]:"1",[h.NEXT_ROUTER_PREFETCH_HEADER]:"1",[h.NEXT_ROUTER_SEGMENT_PREFETCH_HEADER]:j};null!==f&&(k[h.NEXT_URL]=f);try{let c=await ad(e,k);if(!c||!c.ok||204===c.status||"2"!==c.headers.get(h.NEXT_DID_POSTPONE_HEADER)||!c.body)return Y(b,Date.now()+1e4),null;let d=(0,x.createPromiseWithResolvers)(),f=ae(c.body,d.resolve,function(a){(0,q.setSizeInCacheMap)(b,a)}),g=await (0,i.createFromNextReadableStream)(f,k);if(g.buildId!==(0,l.getAppBuildId)())return Y(b,Date.now()+1e4),null;return{value:W(b,g.rsc,g.loading,a.staleAt,g.isPartial),closed:d.promise}}catch(a){return Y(b,Date.now()+1e4),null}}async function _(a,b,c,d,e){let f=a.key,g=new URL(b.canonicalUrl,location.origin),j=f.nextUrl;1===e.size&&e.has(b.metadata.requestKey)&&(d=A);let k={[h.RSC_HEADER]:"1",[h.NEXT_ROUTER_STATE_TREE_HEADER]:(0,s.prepareFlightRouterStateForRequest)(d)};switch(null!==j&&(k[h.NEXT_URL]=j),c){case w.FetchStrategy.Full:break;case w.FetchStrategy.PPRRuntime:k[h.NEXT_ROUTER_PREFETCH_HEADER]="2";break;case w.FetchStrategy.LoadingBoundary:k[h.NEXT_ROUTER_PREFETCH_HEADER]="1"}try{let d=await ad(g,k);if(!d||!d.ok||!d.body||(0,p.getRenderedSearch)(d)!==b.renderedSearch)return aa(e,Date.now()+1e4),null;let f=(0,x.createPromiseWithResolvers)(),h=null,j=ae(d.body,f.resolve,function(a){if(null===h)return;let b=a/h.length;for(let a of h)(0,q.setSizeInCacheMap)(a,b)}),l=await (0,i.createFromNextReadableStream)(j,k),n=c===w.FetchStrategy.PPRRuntime&&l.rp?.[0]===!0;return h=ab(Date.now(),a,c,d,l,n,b,e),{value:null,closed:f.promise}}catch(a){return aa(e,Date.now()+1e4),null}}function aa(a,b){let c=[];for(let d of a.values())1===d.status?Y(d,b):2===d.status&&c.push(d);return c}function ab(a,b,c,d,e,f,g,i){if(e.b!==(0,l.getAppBuildId)())return null!==i&&aa(i,a+1e4),null;let j=(0,s.normalizeFlightData)(e.f);if("string"==typeof j)return null;let k="number"==typeof e.rp?.[1]?e.rp[1]:parseInt(d.headers.get(h.NEXT_ROUTER_STALE_TIME_HEADER)??"",10),n=a+(isNaN(k)?t.STATIC_STALETIME_MS:y(k));for(let d of j){let e=d.seedData;if(null!==e){let h=d.segmentPath,j=g.tree;for(let b=0;b<h.length;b+=2){let c=h[b];if(j?.slots?.[c]===void 0)return null!==i&&aa(i,a+1e4),null;j=j.slots[c]}!function a(b,c,d,e,f,g,h,i,j){let k=h[0];ac(b,d,e,k,h[2],null===k||i,g,f,j);let l=f.slots;if(null!==l){let f=h[1];for(let h in l){let k=l[h],n=f[h];null!=n&&a(b,c,d,e,k,g,n,i,j)}}}(a,b,c,g,j,n,e,f,i)}let h=d.head;null!==h&&ac(a,c,g,h,null,d.isHeadPartial,n,g.metadata,i)}return null!==i?aa(i,a+1e4):null}function ac(a,b,c,d,e,f,g,h,i){let j=null!==i?i.get(h.requestKey):void 0;if(void 0!==j)W(j,d,e,g,f);else{let i=O(a,b,c,h);if(0===i.status)W(T(i,b),d,e,g,f);else{let c=W(T(S(g),b),d,e,g,f);R(a,(0,k.getSegmentVaryPathForRequest)(b,h),c)}}}async function ad(a,b){let c=await (0,i.createFetch)(a,b,"low",!1);if(!c.ok)return null;{let a=c.headers.get("content-type");if(!(a&&a.startsWith(h.RSC_CONTENT_TYPE_HEADER)))return null}return c}function ae(a,b,c){let d=0,e=a.getReader();return new ReadableStream({async pull(a){for(;;){let{done:f,value:g}=await e.read();if(!f){a.enqueue(g),c(d+=g.byteLength);continue}b();return}}})}function af(a,b){return a<b}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},42297,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={cancelPrefetchTask:function(){return w},isPrefetchTaskDirty:function(){return y},pingPrefetchTask:function(){return E},reschedulePrefetchTask:function(){return x},schedulePrefetchTask:function(){return v},startRevalidationCooldown:function(){return u}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(76e3),g=a.r(30641),h=a.r(99032),i=a.r(91442),j=a.r(92702),k=a.r(10846),l=a.r(39118),n="function"==typeof queueMicrotask?queueMicrotask:a=>Promise.resolve().then(a).catch(a=>setTimeout(()=>{throw a})),o=[],p=0,q=0,r=!1,s=null,t=null;function u(){null!==t&&clearTimeout(t),t=setTimeout(()=>{t=null,A()},300)}function v(a,b,c,d,e){let f={key:a,treeAtTimeOfPrefetch:b,cacheVersion:(0,h.getCurrentCacheVersion)(),priority:d,phase:1,hasBackgroundWork:!1,spawnedRuntimePrefetches:null,fetchStrategy:c,sortId:q++,isCanceled:!1,onInvalidate:e,_heapIndex:-1};return z(f),Q(o,f),A(),f}function w(a){a.isCanceled=!0,function(a,b){let c=b._heapIndex;if(-1!==c&&(b._heapIndex=-1,0!==a.length)){let d=a.pop();d!==b&&(a[c]=d,d._heapIndex=c,V(a,d,c))}}(o,a)}function x(a,b,c,d){a.isCanceled=!1,a.phase=1,a.sortId=q++,a.priority=a===s?k.PrefetchPriority.Intent:d,a.treeAtTimeOfPrefetch=b,a.fetchStrategy=c,z(a),-1!==a._heapIndex?T(o,a):Q(o,a),A()}function y(a,b,c){let d=(0,h.getCurrentCacheVersion)();return a.cacheVersion!==d||a.treeAtTimeOfPrefetch!==c||a.key.nextUrl!==b}function z(a){a.priority===k.PrefetchPriority.Intent&&a!==s&&(null!==s&&s.priority!==k.PrefetchPriority.Background&&(s.priority=k.PrefetchPriority.Default,T(o,s)),s=a)}function A(){r||(r=!0,n(F))}function B(a){return null===t&&(a.priority===k.PrefetchPriority.Intent?p<12:p<4)}function C(a){return p++,a.then(a=>null===a?(D(),null):(a.closed.then(D),a.value))}function D(){p--,A()}function E(a){a.isCanceled||-1!==a._heapIndex||(Q(o,a),A())}function F(){r=!1;let a=Date.now(),b=R(o);for(;null!==b&&B(b);){b.cacheVersion=(0,h.getCurrentCacheVersion)();let c=function(a,b){let c=b.key,d=(0,h.readOrCreateRouteCacheEntry)(a,b,c),e=function(a,b,c){switch(c.status){case h.EntryStatus.Empty:C((0,h.fetchRouteOnCacheMiss)(c,b,b.key)),c.staleAt=a+6e4,c.status=h.EntryStatus.Pending;case h.EntryStatus.Pending:{let a=c.blockedTasks;return null===a?c.blockedTasks=new Set([b]):a.add(b),1}case h.EntryStatus.Rejected:break;case h.EntryStatus.Fulfilled:{if(0!==b.phase)return 2;if(!B(b))return 0;let i=c.tree,j=b.fetchStrategy===k.FetchStrategy.PPR?c.isPPREnabled?k.FetchStrategy.PPR:k.FetchStrategy.LoadingBoundary:b.fetchStrategy;switch(j){case k.FetchStrategy.PPR:{var d,e,g;if(J(d=a,e=b,g=c,(0,h.readOrCreateSegmentCacheEntry)(d,k.FetchStrategy.PPR,g,g.metadata),e.key,g.metadata),0===function a(b,c,d,e,f){let g=(0,h.readOrCreateSegmentCacheEntry)(b,c.fetchStrategy,d,f);J(b,c,d,g,c.key,f);let i=e[1],j=f.slots;if(null!==j)for(let e in j){if(!B(c))return 0;let f=j[e],g=f.segment,k=i[e],l=k?.[0];if(0===(void 0!==l&&O(d,g,l)?a(b,c,d,k,f):function a(b,c,d,e){if(e.hasRuntimePrefetch)return null===c.spawnedRuntimePrefetches?c.spawnedRuntimePrefetches=new Set([e.requestKey]):c.spawnedRuntimePrefetches.add(e.requestKey),2;let f=(0,h.readOrCreateSegmentCacheEntry)(b,c.fetchStrategy,d,e);if(J(b,c,d,f,c.key,e),null!==e.slots){if(!B(c))return 0;for(let f in e.slots)if(0===a(b,c,d,e.slots[f]))return 0}return 2}(b,c,d,f)))return 0}return 2}(a,b,c,b.treeAtTimeOfPrefetch,i))return 0;let f=b.spawnedRuntimePrefetches;if(null!==f){let d=new Map;H(a,b,c,d,k.FetchStrategy.PPRRuntime);let e=function a(b,c,d,e,f,g){if(f.has(e.requestKey))return I(b,c,d,e,!1,g,k.FetchStrategy.PPRRuntime);let h={},i=e.slots;if(null!==i)for(let e in i){let j=i[e];h[e]=a(b,c,d,j,f,g)}return[e.segment,h,null,null]}(a,b,c,i,f,d);d.size>0&&C((0,h.fetchSegmentPrefetchesUsingDynamicRequest)(b,c,k.FetchStrategy.PPRRuntime,e,d))}return 2}case k.FetchStrategy.Full:case k.FetchStrategy.PPRRuntime:case k.FetchStrategy.LoadingBoundary:{let d=new Map;H(a,b,c,d,j);let e=function a(b,c,d,e,g,i,j){let l=e[1],n=g.slots,o={};if(null!==n)for(let e in n){let g=n[e],p=g.segment,q=l[e],r=q?.[0];if(void 0!==r&&O(d,p,r)){let f=a(b,c,d,q,g,i,j);o[e]=f}else switch(j){case k.FetchStrategy.LoadingBoundary:{let a=g.hasLoadingBoundary!==f.HasLoadingBoundary.SubtreeHasNoLoadingBoundary?function a(b,c,d,e,g,i){let j=null===g?"inside-shared-layout":null,l=(0,h.readOrCreateSegmentCacheEntry)(b,c.fetchStrategy,d,e);switch(l.status){case h.EntryStatus.Empty:i.set(e.requestKey,(0,h.upgradeToPendingSegment)(l,k.FetchStrategy.LoadingBoundary)),"refetch"!==g&&(j=g="refetch");break;case h.EntryStatus.Fulfilled:if(e.hasLoadingBoundary===f.HasLoadingBoundary.SegmentHasLoadingBoundary)return(0,h.convertRouteTreeToFlightRouterState)(e);case h.EntryStatus.Pending:case h.EntryStatus.Rejected:}let n={};if(null!==e.slots)for(let f in e.slots){let h=e.slots[f];n[f]=a(b,c,d,h,g,i)}return[e.segment,n,null,j,e.isRootLayout]}(b,c,d,g,null,i):(0,h.convertRouteTreeToFlightRouterState)(g);o[e]=a;break}case k.FetchStrategy.PPRRuntime:{let a=I(b,c,d,g,!1,i,j);o[e]=a;break}case k.FetchStrategy.Full:{let a=I(b,c,d,g,!1,i,j);o[e]=a}}}return[g.segment,o,null,null,g.isRootLayout]}(a,b,c,b.treeAtTimeOfPrefetch,i,d,j);return d.size>0&&C((0,h.fetchSegmentPrefetchesUsingDynamicRequest)(b,c,j,e,d)),2}}}}return 2}(a,b,d);if(0!==e&&""!==c.search){let d=new URL(c.pathname,location.origin),e=(0,j.createCacheKey)(d.href,c.nextUrl),f=(0,h.readOrCreateRouteCacheEntry)(a,b,e);switch(f.status){case h.EntryStatus.Empty:G(b)&&(f.status=h.EntryStatus.Pending,C((0,h.fetchRouteOnCacheMiss)(f,b,e)));case h.EntryStatus.Pending:case h.EntryStatus.Fulfilled:case h.EntryStatus.Rejected:}}return e}(a,b),d=b.hasBackgroundWork;switch(b.hasBackgroundWork=!1,b.spawnedRuntimePrefetches=null,c){case 0:return;case 1:S(o),b=R(o);continue;case 2:1===b.phase?(b.phase=0,T(o,b)):d?(b.priority=k.PrefetchPriority.Background,T(o,b)):S(o),b=R(o);continue}}}function G(a){return a.priority===k.PrefetchPriority.Background||(a.hasBackgroundWork=!0,!1)}function H(a,b,c,d,e){I(a,b,c,c.metadata,!1,d,e===k.FetchStrategy.LoadingBoundary?k.FetchStrategy.Full:e)}function I(a,b,c,d,e,f,g){let i=(0,h.readOrCreateSegmentCacheEntry)(a,g,c,d),j=null;switch(i.status){case h.EntryStatus.Empty:j=(0,h.upgradeToPendingSegment)(i,g);break;case h.EntryStatus.Fulfilled:i.isPartial&&(0,h.canNewFetchStrategyProvideMoreContent)(i.fetchStrategy,g)&&(j=L(a,c,d,g));break;case h.EntryStatus.Pending:case h.EntryStatus.Rejected:(0,h.canNewFetchStrategyProvideMoreContent)(i.fetchStrategy,g)&&(j=L(a,c,d,g))}let k={};if(null!==d.slots)for(let h in d.slots){let i=d.slots[h];k[h]=I(a,b,c,i,e||null!==j,f,g)}null!==j&&f.set(d.requestKey,j);let l=e||null===j?null:"refetch";return[d.segment,k,null,l,d.isRootLayout]}function J(a,b,c,d,e,f){switch(d.status){case h.EntryStatus.Empty:C((0,h.fetchSegmentOnCacheMiss)(c,(0,h.upgradeToPendingSegment)(d,k.FetchStrategy.PPR),e,f));break;case h.EntryStatus.Pending:switch(d.fetchStrategy){case k.FetchStrategy.PPR:case k.FetchStrategy.PPRRuntime:case k.FetchStrategy.Full:break;case k.FetchStrategy.LoadingBoundary:G(b)&&K(a,c,e,f);break;default:d.fetchStrategy}break;case h.EntryStatus.Rejected:switch(d.fetchStrategy){case k.FetchStrategy.PPR:case k.FetchStrategy.PPRRuntime:case k.FetchStrategy.Full:break;case k.FetchStrategy.LoadingBoundary:K(a,c,e,f);break;default:d.fetchStrategy}case h.EntryStatus.Fulfilled:}}function K(a,b,c,d){let e=(0,h.readOrCreateRevalidatingSegmentEntry)(a,k.FetchStrategy.PPR,b,d);switch(e.status){case h.EntryStatus.Empty:N(C((0,h.fetchSegmentOnCacheMiss)(b,(0,h.upgradeToPendingSegment)(e,k.FetchStrategy.PPR),c,d)),(0,i.getSegmentVaryPathForRequest)(k.FetchStrategy.PPR,d));case h.EntryStatus.Pending:case h.EntryStatus.Fulfilled:case h.EntryStatus.Rejected:}}function L(a,b,c,d){let e=(0,h.readOrCreateRevalidatingSegmentEntry)(a,d,b,c);if(e.status===h.EntryStatus.Empty){let a=(0,h.upgradeToPendingSegment)(e,d);return N((0,h.waitForSegmentCacheEntry)(a),(0,i.getSegmentVaryPathForRequest)(d,c)),a}if((0,h.canNewFetchStrategyProvideMoreContent)(e.fetchStrategy,d)){let a=(0,h.overwriteRevalidatingSegmentCacheEntry)(d,b,c),e=(0,h.upgradeToPendingSegment)(a,d);return N((0,h.waitForSegmentCacheEntry)(e),(0,i.getSegmentVaryPathForRequest)(d,c)),e}switch(e.status){case h.EntryStatus.Pending:case h.EntryStatus.Fulfilled:case h.EntryStatus.Rejected:default:return null}}let M=()=>{};function N(a,b){a.then(a=>{null!==a&&(0,h.upsertSegmentEntry)(Date.now(),b,a)},M)}function O(a,b,c){return c===l.PAGE_SEGMENT_KEY?b===(0,l.addSearchParamsIfPageSegment)(l.PAGE_SEGMENT_KEY,Object.fromEntries(new URLSearchParams(a.renderedSearch))):(0,g.matchSegment)(c,b)}function P(a,b){let c=b.priority-a.priority;if(0!==c)return c;let d=b.phase-a.phase;return 0!==d?d:b.sortId-a.sortId}function Q(a,b){let c=a.length;a.push(b),b._heapIndex=c,U(a,b,c)}function R(a){return 0===a.length?null:a[0]}function S(a){if(0===a.length)return null;let b=a[0];b._heapIndex=-1;let c=a.pop();return c!==b&&(a[0]=c,c._heapIndex=0,V(a,c,0)),b}function T(a,b){let c=b._heapIndex;-1!==c&&(0===c?V(a,b,0):P(a[c-1>>>1],b)>0?U(a,b,c):V(a,b,c))}function U(a,b,c){let d=c;for(;d>0;){let c=d-1>>>1,e=a[c];if(!(P(e,b)>0))return;a[c]=b,b._heapIndex=c,a[d]=e,e._heapIndex=d,d=c}}function V(a,b,c){let d=c,e=a.length,f=e>>>1;for(;d<f;){let c=(d+1)*2-1,f=a[c],g=c+1,h=a[g];if(0>P(f,b))g<e&&0>P(h,f)?(a[d]=h,h._heapIndex=d,a[g]=b,b._heapIndex=g,d=g):(a[d]=f,f._heapIndex=d,a[c]=b,b._heapIndex=c,d=c);else{if(!(g<e&&0>P(h,b)))return;a[d]=h,h._heapIndex=d,a[g]=b,b._heapIndex=g,d=g}}}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},16441,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={IDLE_LINK_STATUS:function(){return l},PENDING_LINK_STATUS:function(){return k},mountFormInstance:function(){return u},mountLinkInstance:function(){return t},onLinkVisibilityChanged:function(){return w},onNavigationIntent:function(){return x},pingVisibleLinks:function(){return z},setLinkForCurrentNavigation:function(){return n},unmountLinkForCurrentNavigation:function(){return o},unmountPrefetchableInstance:function(){return v}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(10846),g=a.r(92702),h=a.r(42297),i=a.r(72131),j=null,k={pending:!0},l={pending:!1};function n(a){(0,i.startTransition)(()=>{j?.setOptimisticLinkStatus(l),a?.setOptimisticLinkStatus(k),j=a})}function o(a){j===a&&(j=null)}let p="function"==typeof WeakMap?new WeakMap:new Map,q=new Set,r="function"==typeof IntersectionObserver?new IntersectionObserver(function(a){for(let b of a){let a=b.intersectionRatio>0;w(b.target,a)}},{rootMargin:"200px"}):null;function s(a,b){void 0!==p.get(a)&&v(a),p.set(a,b),null!==r&&r.observe(a)}function t(a,b,c,d,e,f){if(e){let b=null;if(null!==b){let e={router:c,fetchStrategy:d,isVisible:!1,prefetchTask:null,prefetchHref:b.href,setOptimisticLinkStatus:f};return s(a,e),e}}return{router:c,fetchStrategy:d,isVisible:!1,prefetchTask:null,prefetchHref:null,setOptimisticLinkStatus:f}}function u(a,b,c,d){let e=null;null===e||s(a,{router:c,fetchStrategy:d,isVisible:!1,prefetchTask:null,prefetchHref:e.href,setOptimisticLinkStatus:null})}function v(a){let b=p.get(a);if(void 0!==b){p.delete(a),q.delete(b);let c=b.prefetchTask;null!==c&&(0,h.cancelPrefetchTask)(c)}null!==r&&r.unobserve(a)}function w(a,b){let c=p.get(a);void 0!==c&&(c.isVisible=b,b?q.add(c):q.delete(c),y(c,f.PrefetchPriority.Default))}function x(a,b){let c=p.get(a);void 0!==c&&void 0!==c&&y(c,f.PrefetchPriority.Intent)}function y(a,b){}function z(a,b){for(let c of q){let d=c.prefetchTask;if(null!==d&&!(0,h.isPrefetchTaskDirty)(d,a,b))continue;null!==d&&(0,h.cancelPrefetchTask)(d);let e=(0,g.createCacheKey)(c.prefetchHref,a);c.prefetchTask=(0,h.schedulePrefetchTask)(e,b,c.fetchStrategy,f.PrefetchPriority.Default,null)}}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},11679,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"pathHasPrefix",{enumerable:!0,get:function(){return e}});let d=a.r(8868);function e(a,b){if("string"!=typeof a)return!1;let{pathname:c}=(0,d.parsePath)(a);return c===b||c.startsWith(b+"/")}},78897,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"hasBasePath",{enumerable:!0,get:function(){return e}});let d=a.r(11679);function e(a){return(0,d.pathHasPrefix)(a,"")}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},11762,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"isLocalURL",{enumerable:!0,get:function(){return f}});let d=a.r(46272),e=a.r(78897);function f(a){if(!(0,d.isAbsoluteUrl)(a))return!0;try{let b=(0,d.getLocationOrigin)(),c=new URL(a,b);return c.origin===b&&(0,e.hasBasePath)(c.pathname)}catch(a){return!1}}},9833,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"errorOnce",{enumerable:!0,get:function(){return d}});let d=a=>{}},38246,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={default:function(){return r},useLinkStatus:function(){return t}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(46058),g=a.r(87924),h=f._(a.r(72131)),i=a.r(43087),j=a.r(9270),k=a.r(8591),l=a.r(46272),n=a.r(38243);a.r(92434);let o=a.r(16441);a.r(11762);let p=a.r(10846);function q(a){return"string"==typeof a?a:(0,i.formatUrl)(a)}function r(a){var b;let c,d,e,[f,i]=(0,h.useOptimistic)(o.IDLE_LINK_STATUS),r=(0,h.useRef)(null),{href:t,as:u,children:v,prefetch:w=null,passHref:x,replace:y,shallow:z,scroll:A,onClick:B,onMouseEnter:C,onTouchStart:D,legacyBehavior:E=!1,onNavigate:F,ref:G,unstable_dynamicOnHover:H,...I}=a;c=v,E&&("string"==typeof c||"number"==typeof c)&&(c=(0,g.jsx)("a",{children:c}));let J=h.default.useContext(j.AppRouterContext),K=!1!==w,L=!1!==w?null===(b=w)||"auto"===b?p.FetchStrategy.PPR:p.FetchStrategy.Full:p.FetchStrategy.PPR,{href:M,as:N}=h.default.useMemo(()=>{let a=q(t);return{href:a,as:u?q(u):a}},[t,u]);if(E){if(c?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});d=h.default.Children.only(c)}let O=E?d&&"object"==typeof d&&d.ref:G,P=h.default.useCallback(a=>(null!==J&&(r.current=(0,o.mountLinkInstance)(a,M,J,L,K,i)),()=>{r.current&&((0,o.unmountLinkForCurrentNavigation)(r.current),r.current=null),(0,o.unmountPrefetchableInstance)(a)}),[K,M,J,L,i]),Q={ref:(0,k.useMergedRef)(P,O),onClick(a){if((E||"function"!=typeof B||B(a),E&&d.props&&"function"==typeof d.props.onClick&&d.props.onClick(a),J)&&!a.defaultPrevented);},onMouseEnter(a){E||"function"!=typeof C||C(a),E&&d.props&&"function"==typeof d.props.onMouseEnter&&d.props.onMouseEnter(a),J&&K&&(0,o.onNavigationIntent)(a.currentTarget,!0===H)},onTouchStart:function(a){E||"function"!=typeof D||D(a),E&&d.props&&"function"==typeof d.props.onTouchStart&&d.props.onTouchStart(a),J&&K&&(0,o.onNavigationIntent)(a.currentTarget,!0===H)}};return(0,l.isAbsoluteUrl)(N)?Q.href=N:E&&!x&&("a"!==d.type||"href"in d.props)||(Q.href=(0,n.addBasePath)(N)),e=E?h.default.cloneElement(d,Q):(0,g.jsx)("a",{...I,...Q,children:c}),(0,g.jsx)(s.Provider,{value:f,children:e})}a.r(9833);let s=(0,h.createContext)(o.IDLE_LINK_STATUS),t=()=>(0,h.useContext)(s);("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},73101,a=>{"use strict";let b,c,d;var e,f,g,h,i,j,k,l,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B=a.i(87924),C=a.i(50944),D=a.i(49839),E=a.i(72131),F=a.i(4086),G=a.i(87532),H=a.i(70106);let I=(0,H.default)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]]),J=(0,H.default)("database",[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]]),K=(0,H.default)("file-text",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]),L=(0,H.default)("users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]]),M=(0,H.default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]),N=(0,H.default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]),O=(0,H.default)("box",[["path",{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",key:"hh9hay"}],["path",{d:"m3.3 7 8.7 5 8.7-5",key:"g66t2b"}],["path",{d:"M12 22V12",key:"d0xqtd"}]]);var P=a.i(61474),Q=a.i(38246);function R({currentTab:a,onTabChange:b}){let{currentBank:c}=(0,F.useBank)(),[d,e]=(0,E.useState)(!0);if(!c)return null;let f=[{id:"data",label:"Memories",icon:J},{id:"recall",label:"Recall",icon:G.Search},{id:"reflect",label:"Reflect",icon:I},{id:"documents",label:"Documents",icon:K},{id:"entities",label:"Entities",icon:L},{id:"profile",label:"Memory Bank",icon:O}];return(0,B.jsxs)("aside",{className:(0,P.cn)("bg-card border-r border-border flex flex-col transition-all duration-300",d?"w-16":"w-64"),children:[(0,B.jsx)("nav",{className:"flex-1 p-3 pt-4",children:(0,B.jsx)("ul",{className:"space-y-1",children:f.map(e=>{let f=e.icon,g=a===e.id,h=`/banks/${c}?view=${e.id}`;return(0,B.jsx)("li",{children:(0,B.jsxs)(Q.default,{href:h,onClick:a=>{0!==a.button||a.ctrlKey||a.metaKey||(a.preventDefault(),b(e.id))},className:(0,P.cn)("w-full flex items-center gap-3 px-4 py-3 rounded-lg text-sm font-medium transition-all",g?"bg-primary-gradient text-white shadow-sm":"text-muted-foreground hover:bg-accent hover:text-accent-foreground",d&&"justify-center px-0"),title:d?e.label:void 0,children:[(0,B.jsx)(f,{className:"w-5 h-5 flex-shrink-0"}),!d&&(0,B.jsx)("span",{children:e.label})]})},e.id)})})}),(0,B.jsx)("div",{className:"p-3 border-t border-border",children:(0,B.jsx)("button",{onClick:()=>e(!d),className:(0,P.cn)("w-full flex items-center gap-3 px-4 py-2 rounded-lg text-sm text-muted-foreground hover:bg-accent hover:text-accent-foreground transition-colors",d&&"justify-center px-0"),title:d?"Expand sidebar":"Collapse sidebar",children:d?(0,B.jsx)(N,{className:"w-5 h-5"}):(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(M,{className:"w-5 h-5"}),(0,B.jsx)("span",{children:"Collapse"})]})})})]})}var S=a.i(8334),T=a.i(5205),U=a.i(22027);let V=(0,H.default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);var W=a.i(33441);let X=(0,H.default)("calendar",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]]),Y=(0,H.default)("zoom-in",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["line",{x1:"21",x2:"16.65",y1:"21",y2:"16.65",key:"13gj7c"}],["line",{x1:"11",x2:"11",y1:"8",y2:"14",key:"1vmskp"}],["line",{x1:"8",x2:"14",y1:"11",y2:"11",key:"durymu"}]]),Z=(0,H.default)("zoom-out",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["line",{x1:"21",x2:"16.65",y1:"21",y2:"16.65",key:"13gj7c"}],["line",{x1:"8",x2:"14",y1:"11",y2:"11",key:"durymu"}]]),$=(0,H.default)("chevrons-left",[["path",{d:"m11 17-5-5 5-5",key:"13zhaf"}],["path",{d:"m18 17-5-5 5-5",key:"h8a8et"}]]),_=(0,H.default)("chevrons-right",[["path",{d:"m6 17 5-5-5-5",key:"xnjwq"}],["path",{d:"m13 17 5-5-5-5",key:"17xmmf"}]]),aa=E.forwardRef(({className:a,...b},c)=>(0,B.jsx)("div",{className:"relative w-full overflow-auto",children:(0,B.jsx)("table",{ref:c,className:(0,P.cn)("w-full caption-bottom text-sm",a),...b})}));aa.displayName="Table";let ab=E.forwardRef(({className:a,...b},c)=>(0,B.jsx)("thead",{ref:c,className:(0,P.cn)("[&_tr]:border-b",a),...b}));ab.displayName="TableHeader";let ac=E.forwardRef(({className:a,...b},c)=>(0,B.jsx)("tbody",{ref:c,className:(0,P.cn)("[&_tr:last-child]:border-0",a),...b}));ac.displayName="TableBody",E.forwardRef(({className:a,...b},c)=>(0,B.jsx)("tfoot",{ref:c,className:(0,P.cn)("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",a),...b})).displayName="TableFooter";let ad=E.forwardRef(({className:a,...b},c)=>(0,B.jsx)("tr",{ref:c,className:(0,P.cn)("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",a),...b}));ad.displayName="TableRow";let ae=E.forwardRef(({className:a,...b},c)=>(0,B.jsx)("th",{ref:c,className:(0,P.cn)("h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0",a),...b}));ae.displayName="TableHead";let af=E.forwardRef(({className:a,...b},c)=>(0,B.jsx)("td",{ref:c,className:(0,P.cn)("p-4 align-middle [&:has([role=checkbox])]:pr-0",a),...b}));af.displayName="TableCell",E.forwardRef(({className:a,...b},c)=>(0,B.jsx)("caption",{ref:c,className:(0,P.cn)("mt-4 text-sm text-muted-foreground",a),...b})).displayName="TableCaption";var ag=a.i(35112),ah=a.i(11011),ai=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((a,b)=>{let c=(0,ah.createSlot)(`Primitive.${b}`),d=E.forwardRef((a,d)=>{let{asChild:e,...f}=a;return(0,B.jsx)(e?c:b,{...f,ref:d})});return d.displayName=`Primitive.${b}`,{...a,[b]:d}},{}),aj=E.forwardRef((a,b)=>(0,B.jsx)(ai.label,{...a,ref:b,onMouseDown:b=>{b.target.closest("button, input, select, textarea")||(a.onMouseDown?.(b),!b.defaultPrevented&&b.detail>1&&b.preventDefault())}}));aj.displayName="Label";let ak=(0,a.i(187).cva)("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),al=E.forwardRef(({className:a,...b},c)=>(0,B.jsx)(aj,{ref:c,className:(0,P.cn)(ak(),a),...b}));function am(a,[b,c]){return Math.min(c,Math.max(b,a))}al.displayName=aj.displayName;var an=a.i(7554),ao=a.i(70121),ap=a.i(50104),aq=a.i(25152),ar=E.createContext(void 0);function as(a){let b=E.useContext(ar);return a||b||"ltr"}var at=a.i(77994),au=a.i(3688),av=a.i(30553);function aw(a){var b;let c,d=(b=a,(c=E.forwardRef((a,b)=>{let{children:c,...d}=a;if(E.isValidElement(c)){var e;let a,f,g=(e=c,(f=(a=Object.getOwnPropertyDescriptor(e.props,"ref")?.get)&&"isReactWarning"in a&&a.isReactWarning)?e.ref:(f=(a=Object.getOwnPropertyDescriptor(e,"ref")?.get)&&"isReactWarning"in a&&a.isReactWarning)?e.props.ref:e.props.ref||e.ref),h=function(a,b){let c={...b};for(let d in b){let e=a[d],f=b[d];/^on[A-Z]/.test(d)?e&&f?c[d]=(...a)=>{let b=f(...a);return e(...a),b}:e&&(c[d]=e):"style"===d?c[d]={...e,...f}:"className"===d&&(c[d]=[e,f].filter(Boolean).join(" "))}return{...a,...c}}(d,c.props);return c.type!==E.Fragment&&(h.ref=b?(0,ao.composeRefs)(b,g):g),E.cloneElement(c,h)}return E.Children.count(c)>1?E.Children.only(null):null})).displayName=`${b}.SlotClone`,c),e=E.forwardRef((a,b)=>{let{children:c,...e}=a,f=E.Children.toArray(c),g=f.find(ay);if(g){let a=g.props.children,c=f.map(b=>b!==g?b:E.Children.count(a)>1?E.Children.only(null):E.isValidElement(a)?a.props.children:null);return(0,B.jsx)(d,{...e,ref:b,children:E.isValidElement(a)?E.cloneElement(a,void 0,c):null})}return(0,B.jsx)(d,{...e,ref:b,children:c})});return e.displayName=`${a}.Slot`,e}var ax=Symbol("radix.slottable");function ay(a){return E.isValidElement(a)&&"function"==typeof a.type&&"__radixId"in a.type&&a.type.__radixId===ax}function az(a){let b=a+"CollectionProvider",[c,d]=(0,ap.createContextScope)(b),[e,f]=c(b,{collectionRef:{current:null},itemMap:new Map}),g=a=>{let{scope:b,children:c}=a,d=E.default.useRef(null),f=E.default.useRef(new Map).current;return(0,B.jsx)(e,{scope:b,itemMap:f,collectionRef:d,children:c})};g.displayName=b;let h=a+"CollectionSlot",i=aw(h),j=E.default.forwardRef((a,b)=>{let{scope:c,children:d}=a,e=f(h,c),g=(0,ao.useComposedRefs)(b,e.collectionRef);return(0,B.jsx)(i,{ref:g,children:d})});j.displayName=h;let k=a+"CollectionItemSlot",l="data-radix-collection-item",n=aw(k),o=E.default.forwardRef((a,b)=>{let{scope:c,children:d,...e}=a,g=E.default.useRef(null),h=(0,ao.useComposedRefs)(b,g),i=f(k,c);return E.default.useEffect(()=>(i.itemMap.set(g,{ref:g,...e}),()=>void i.itemMap.delete(g))),(0,B.jsx)(n,{...{[l]:""},ref:h,children:d})});return o.displayName=k,[{Provider:g,Slot:j,ItemSlot:o},function(b){let c=f(a+"CollectionConsumer",b);return E.default.useCallback(()=>{let a=c.collectionRef.current;if(!a)return[];let b=Array.from(a.querySelectorAll(`[${l}]`));return Array.from(c.itemMap.values()).sort((a,c)=>b.indexOf(a.ref.current)-b.indexOf(c.ref.current))},[c.collectionRef,c.itemMap])},d]}var aA=new WeakMap;function aB(a,b){var c,d;let e,f,g;if("at"in Array.prototype)return Array.prototype.at.call(a,b);let h=(c=a,d=b,e=c.length,(g=(f=aC(d))>=0?f:e+f)<0||g>=e?-1:g);return -1===h?void 0:a[h]}function aC(a){return a!=a||0===a?0:Math.trunc(a)}(class a extends Map{#a;constructor(a){super(a),this.#a=[...super.keys()],aA.set(this,!0)}set(a,b){return aA.get(this)&&(this.has(a)?this.#a[this.#a.indexOf(a)]=a:this.#a.push(a)),super.set(a,b),this}insert(a,b,c){let d,e=this.has(b),f=this.#a.length,g=aC(a),h=g>=0?g:f+g,i=h<0||h>=f?-1:h;if(i===this.size||e&&i===this.size-1||-1===i)return this.set(b,c),this;let j=this.size+ +!e;g<0&&h++;let k=[...this.#a],l=!1;for(let a=h;a<j;a++)if(h===a){let f=k[a];k[a]===b&&(f=k[a+1]),e&&this.delete(b),d=this.get(f),this.set(b,c)}else{l||k[a-1]!==b||(l=!0);let c=k[l?a:a-1],e=d;d=this.get(c),this.delete(c),this.set(c,e)}return this}with(b,c,d){let e=new a(this);return e.insert(b,c,d),e}before(a){let b=this.#a.indexOf(a)-1;if(!(b<0))return this.entryAt(b)}setBefore(a,b,c){let d=this.#a.indexOf(a);return -1===d?this:this.insert(d,b,c)}after(a){let b=this.#a.indexOf(a);if(-1!==(b=-1===b||b===this.size-1?-1:b+1))return this.entryAt(b)}setAfter(a,b,c){let d=this.#a.indexOf(a);return -1===d?this:this.insert(d+1,b,c)}first(){return this.entryAt(0)}last(){return this.entryAt(-1)}clear(){return this.#a=[],super.clear()}delete(a){let b=super.delete(a);return b&&this.#a.splice(this.#a.indexOf(a),1),b}deleteAt(a){let b=this.keyAt(a);return void 0!==b&&this.delete(b)}at(a){let b=aB(this.#a,a);if(void 0!==b)return this.get(b)}entryAt(a){let b=aB(this.#a,a);if(void 0!==b)return[b,this.get(b)]}indexOf(a){return this.#a.indexOf(a)}keyAt(a){return aB(this.#a,a)}from(a,b){let c=this.indexOf(a);if(-1===c)return;let d=c+b;return d<0&&(d=0),d>=this.size&&(d=this.size-1),this.at(d)}keyFrom(a,b){let c=this.indexOf(a);if(-1===c)return;let d=c+b;return d<0&&(d=0),d>=this.size&&(d=this.size-1),this.keyAt(d)}find(a,b){let c=0;for(let d of this){if(Reflect.apply(a,b,[d,c,this]))return d;c++}}findIndex(a,b){let c=0;for(let d of this){if(Reflect.apply(a,b,[d,c,this]))return c;c++}return -1}filter(b,c){let d=[],e=0;for(let a of this)Reflect.apply(b,c,[a,e,this])&&d.push(a),e++;return new a(d)}map(b,c){let d=[],e=0;for(let a of this)d.push([a[0],Reflect.apply(b,c,[a,e,this])]),e++;return new a(d)}reduce(...a){let[b,c]=a,d=0,e=c??this.at(0);for(let c of this)e=0===d&&1===a.length?c:Reflect.apply(b,this,[e,c,d,this]),d++;return e}reduceRight(...a){let[b,c]=a,d=c??this.at(-1);for(let c=this.size-1;c>=0;c--){let e=this.at(c);d=c===this.size-1&&1===a.length?e:Reflect.apply(b,this,[d,e,c,this])}return d}toSorted(b){return new a([...this.entries()].sort(b))}toReversed(){let b=new a;for(let a=this.size-1;a>=0;a--){let c=this.keyAt(a),d=this.get(c);b.set(c,d)}return b}toSpliced(...b){let c=[...this.entries()];return c.splice(...b),new a(c)}slice(b,c){let d=new a,e=this.size-1;if(void 0===b)return d;b<0&&(b+=this.size),void 0!==c&&c>0&&(e=c-1);for(let a=b;a<=e;a++){let b=this.keyAt(a),c=this.get(b);d.set(b,c)}return d}every(a,b){let c=0;for(let d of this){if(!Reflect.apply(a,b,[d,c,this]))return!1;c++}return!0}some(a,b){let c=0;for(let d of this){if(Reflect.apply(a,b,[d,c,this]))return!0;c++}return!1}});var aD=["PageUp","PageDown"],aE=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],aF={"from-left":["Home","PageDown","ArrowDown","ArrowLeft"],"from-right":["Home","PageDown","ArrowDown","ArrowRight"],"from-bottom":["Home","PageDown","ArrowDown","ArrowLeft"],"from-top":["Home","PageDown","ArrowUp","ArrowLeft"]},aG="Slider",[aH,aI,aJ]=az(aG),[aK,aL]=(0,ap.createContextScope)(aG,[aJ]),[aM,aN]=aK(aG),aO=E.forwardRef((a,b)=>{let{name:c,min:d=0,max:e=100,step:f=1,orientation:g="horizontal",disabled:h=!1,minStepsBetweenThumbs:i=0,defaultValue:j=[d],value:k,onValueChange:l=()=>{},onValueCommit:n=()=>{},inverted:o=!1,form:p,...q}=a,r=E.useRef(new Set),s=E.useRef(0),t="horizontal"===g,[u=[],v]=(0,aq.useControllableState)({prop:k,defaultProp:j,onChange:a=>{let b=[...r.current];b[s.current]?.focus(),l(a)}}),w=E.useRef(u);function x(a,b,{commit:c}={commit:!1}){let g,h=(String(f).split(".")[1]||"").length,j=am(Math.round((Math.round((a-d)/f)*f+d)*(g=Math.pow(10,h)))/g,[d,e]);v((a=[])=>{let d=function(a=[],b,c){let d=[...a];return d[c]=b,d.sort((a,b)=>a-b)}(a,j,b);if(!function(a,b){if(b>0)return Math.min(...a.slice(0,-1).map((b,c)=>a[c+1]-b))>=b;return!0}(d,i*f))return a;{s.current=d.indexOf(j);let b=String(d)!==String(a);return b&&c&&n(d),b?d:a}})}return(0,B.jsx)(aM,{scope:a.__scopeSlider,name:c,disabled:h,min:d,max:e,valueIndexToChangeRef:s,thumbs:r.current,values:u,orientation:g,form:p,children:(0,B.jsx)(aH.Provider,{scope:a.__scopeSlider,children:(0,B.jsx)(aH.Slot,{scope:a.__scopeSlider,children:(0,B.jsx)(t?aR:aS,{"aria-disabled":h,"data-disabled":h?"":void 0,...q,ref:b,onPointerDown:(0,an.composeEventHandlers)(q.onPointerDown,()=>{h||(w.current=u)}),min:d,max:e,inverted:o,onSlideStart:h?void 0:function(a){let b=function(a,b){if(1===a.length)return 0;let c=a.map(a=>Math.abs(a-b)),d=Math.min(...c);return c.indexOf(d)}(u,a);x(a,b)},onSlideMove:h?void 0:function(a){x(a,s.current)},onSlideEnd:h?void 0:function(){let a=w.current[s.current];u[s.current]!==a&&n(u)},onHomeKeyDown:()=>!h&&x(d,0,{commit:!0}),onEndKeyDown:()=>!h&&x(e,u.length-1,{commit:!0}),onStepKeyDown:({event:a,direction:b})=>{if(!h){let c=aD.includes(a.key)||a.shiftKey&&aE.includes(a.key),d=s.current;x(u[d]+f*(c?10:1)*b,d,{commit:!0})}}})})})})});aO.displayName=aG;var[aP,aQ]=aK(aG,{startEdge:"left",endEdge:"right",size:"width",direction:1}),aR=E.forwardRef((a,b)=>{let{min:c,max:d,dir:e,inverted:f,onSlideStart:g,onSlideMove:h,onSlideEnd:i,onStepKeyDown:j,...k}=a,[l,n]=E.useState(null),o=(0,ao.useComposedRefs)(b,a=>n(a)),p=E.useRef(void 0),q=as(e),r="ltr"===q,s=r&&!f||!r&&f;function t(a){let b=p.current||l.getBoundingClientRect(),e=a1([0,b.width],s?[c,d]:[d,c]);return p.current=b,e(a-b.left)}return(0,B.jsx)(aP,{scope:a.__scopeSlider,startEdge:s?"left":"right",endEdge:s?"right":"left",direction:s?1:-1,size:"width",children:(0,B.jsx)(aT,{dir:q,"data-orientation":"horizontal",...k,ref:o,style:{...k.style,"--radix-slider-thumb-transform":"translateX(-50%)"},onSlideStart:a=>{let b=t(a.clientX);g?.(b)},onSlideMove:a=>{let b=t(a.clientX);h?.(b)},onSlideEnd:()=>{p.current=void 0,i?.()},onStepKeyDown:a=>{let b=aF[s?"from-left":"from-right"].includes(a.key);j?.({event:a,direction:b?-1:1})}})})}),aS=E.forwardRef((a,b)=>{let{min:c,max:d,inverted:e,onSlideStart:f,onSlideMove:g,onSlideEnd:h,onStepKeyDown:i,...j}=a,k=E.useRef(null),l=(0,ao.useComposedRefs)(b,k),n=E.useRef(void 0),o=!e;function p(a){let b=n.current||k.current.getBoundingClientRect(),e=a1([0,b.height],o?[d,c]:[c,d]);return n.current=b,e(a-b.top)}return(0,B.jsx)(aP,{scope:a.__scopeSlider,startEdge:o?"bottom":"top",endEdge:o?"top":"bottom",size:"height",direction:o?1:-1,children:(0,B.jsx)(aT,{"data-orientation":"vertical",...j,ref:l,style:{...j.style,"--radix-slider-thumb-transform":"translateY(50%)"},onSlideStart:a=>{let b=p(a.clientY);f?.(b)},onSlideMove:a=>{let b=p(a.clientY);g?.(b)},onSlideEnd:()=>{n.current=void 0,h?.()},onStepKeyDown:a=>{let b=aF[o?"from-bottom":"from-top"].includes(a.key);i?.({event:a,direction:b?-1:1})}})})}),aT=E.forwardRef((a,b)=>{let{__scopeSlider:c,onSlideStart:d,onSlideMove:e,onSlideEnd:f,onHomeKeyDown:g,onEndKeyDown:h,onStepKeyDown:i,...j}=a,k=aN(aG,c);return(0,B.jsx)(av.Primitive.span,{...j,ref:b,onKeyDown:(0,an.composeEventHandlers)(a.onKeyDown,a=>{"Home"===a.key?(g(a),a.preventDefault()):"End"===a.key?(h(a),a.preventDefault()):aD.concat(aE).includes(a.key)&&(i(a),a.preventDefault())}),onPointerDown:(0,an.composeEventHandlers)(a.onPointerDown,a=>{let b=a.target;b.setPointerCapture(a.pointerId),a.preventDefault(),k.thumbs.has(b)?b.focus():d(a)}),onPointerMove:(0,an.composeEventHandlers)(a.onPointerMove,a=>{a.target.hasPointerCapture(a.pointerId)&&e(a)}),onPointerUp:(0,an.composeEventHandlers)(a.onPointerUp,a=>{let b=a.target;b.hasPointerCapture(a.pointerId)&&(b.releasePointerCapture(a.pointerId),f(a))})})}),aU="SliderTrack",aV=E.forwardRef((a,b)=>{let{__scopeSlider:c,...d}=a,e=aN(aU,c);return(0,B.jsx)(av.Primitive.span,{"data-disabled":e.disabled?"":void 0,"data-orientation":e.orientation,...d,ref:b})});aV.displayName=aU;var aW="SliderRange",aX=E.forwardRef((a,b)=>{let{__scopeSlider:c,...d}=a,e=aN(aW,c),f=aQ(aW,c),g=E.useRef(null),h=(0,ao.useComposedRefs)(b,g),i=e.values.length,j=e.values.map(a=>a0(a,e.min,e.max)),k=i>1?Math.min(...j):0,l=100-Math.max(...j);return(0,B.jsx)(av.Primitive.span,{"data-orientation":e.orientation,"data-disabled":e.disabled?"":void 0,...d,ref:h,style:{...a.style,[f.startEdge]:k+"%",[f.endEdge]:l+"%"}})});aX.displayName=aW;var aY="SliderThumb",aZ=E.forwardRef((a,b)=>{let c=aI(a.__scopeSlider),[d,e]=E.useState(null),f=(0,ao.useComposedRefs)(b,a=>e(a)),g=E.useMemo(()=>d?c().findIndex(a=>a.ref.current===d):-1,[c,d]);return(0,B.jsx)(a$,{...a,ref:f,index:g})}),a$=E.forwardRef((a,b)=>{var c,d,e,f,g;let h,i,{__scopeSlider:j,index:k,name:l,...n}=a,o=aN(aY,j),p=aQ(aY,j),[q,r]=E.useState(null),s=(0,ao.useComposedRefs)(b,a=>r(a)),t=!q||o.form||!!q.closest("form"),u=(0,au.useSize)(q),v=o.values[k],w=void 0===v?0:a0(v,o.min,o.max),x=(c=k,(d=o.values.length)>2?`Value ${c+1} of ${d}`:2===d?["Minimum","Maximum"][c]:void 0),y=u?.[p.size],z=y?(e=y,f=w,g=p.direction,i=a1([0,50],[0,h=e/2]),(h-i(f)*g)*g):0;return E.useEffect(()=>{if(q)return o.thumbs.add(q),()=>{o.thumbs.delete(q)}},[q,o.thumbs]),(0,B.jsxs)("span",{style:{transform:"var(--radix-slider-thumb-transform)",position:"absolute",[p.startEdge]:`calc(${w}% + ${z}px)`},children:[(0,B.jsx)(aH.ItemSlot,{scope:a.__scopeSlider,children:(0,B.jsx)(av.Primitive.span,{role:"slider","aria-label":a["aria-label"]||x,"aria-valuemin":o.min,"aria-valuenow":v,"aria-valuemax":o.max,"aria-orientation":o.orientation,"data-orientation":o.orientation,"data-disabled":o.disabled?"":void 0,tabIndex:o.disabled?void 0:0,...n,ref:s,style:void 0===v?{display:"none"}:a.style,onFocus:(0,an.composeEventHandlers)(a.onFocus,()=>{o.valueIndexToChangeRef.current=k})})}),t&&(0,B.jsx)(a_,{name:l??(o.name?o.name+(o.values.length>1?"[]":""):void 0),form:o.form,value:v},k)]})});aZ.displayName=aY;var a_=E.forwardRef(({__scopeSlider:a,value:b,...c},d)=>{let e=E.useRef(null),f=(0,ao.useComposedRefs)(e,d),g=(0,at.usePrevious)(b);return E.useEffect(()=>{let a=e.current;if(!a)return;let c=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"value").set;if(g!==b&&c){let d=new Event("input",{bubbles:!0});c.call(a,b),a.dispatchEvent(d)}},[g,b]),(0,B.jsx)(av.Primitive.input,{style:{display:"none"},...c,ref:f,defaultValue:b})});function a0(a,b,c){return am(100/(c-b)*(a-b),[0,100])}function a1(a,b){return c=>{if(a[0]===a[1]||b[0]===b[1])return b[0];let d=(b[1]-b[0])/(a[1]-a[0]);return b[0]+d*(c-a[0])}}a_.displayName="RadioBubbleInput";let a2=E.forwardRef(({className:a,...b},c)=>(0,B.jsxs)(aO,{ref:c,className:(0,P.cn)("relative flex w-full touch-none select-none items-center",a),...b,children:[(0,B.jsx)(aV,{className:"relative h-2 w-full grow overflow-hidden rounded-full bg-secondary",children:(0,B.jsx)(aX,{className:"absolute h-full bg-primary"})}),(0,B.jsx)(aZ,{className:"block h-5 w-5 rounded-full border-2 border-primary bg-background ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50"})]}));a2.displayName=aO.displayName;var a3="Switch",[a4,a5]=(0,ap.createContextScope)(a3),[a6,a7]=a4(a3),a8=E.forwardRef((a,b)=>{let{__scopeSwitch:c,name:d,checked:e,defaultChecked:f,required:g,disabled:h,value:i="on",onCheckedChange:j,form:k,...l}=a,[n,o]=E.useState(null),p=(0,ao.useComposedRefs)(b,a=>o(a)),q=E.useRef(!1),r=!n||k||!!n.closest("form"),[s,t]=(0,aq.useControllableState)({prop:e,defaultProp:f??!1,onChange:j,caller:a3});return(0,B.jsxs)(a6,{scope:c,checked:s,disabled:h,children:[(0,B.jsx)(av.Primitive.button,{type:"button",role:"switch","aria-checked":s,"aria-required":g,"data-state":bc(s),"data-disabled":h?"":void 0,disabled:h,value:i,...l,ref:p,onClick:(0,an.composeEventHandlers)(a.onClick,a=>{t(a=>!a),r&&(q.current=a.isPropagationStopped(),q.current||a.stopPropagation())})}),r&&(0,B.jsx)(bb,{control:n,bubbles:!q.current,name:d,value:i,checked:s,required:g,disabled:h,form:k,style:{transform:"translateX(-100%)"}})]})});a8.displayName=a3;var a9="SwitchThumb",ba=E.forwardRef((a,b)=>{let{__scopeSwitch:c,...d}=a,e=a7(a9,c);return(0,B.jsx)(av.Primitive.span,{"data-state":bc(e.checked),"data-disabled":e.disabled?"":void 0,...d,ref:b})});ba.displayName=a9;var bb=E.forwardRef(({__scopeSwitch:a,control:b,checked:c,bubbles:d=!0,...e},f)=>{let g=E.useRef(null),h=(0,ao.useComposedRefs)(g,f),i=(0,at.usePrevious)(c),j=(0,au.useSize)(b);return E.useEffect(()=>{let a=g.current;if(!a)return;let b=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set;if(i!==c&&b){let e=new Event("click",{bubbles:d});b.call(a,c),a.dispatchEvent(e)}},[i,c,d]),(0,B.jsx)("input",{type:"checkbox","aria-hidden":!0,defaultChecked:c,...e,tabIndex:-1,ref:h,style:{...e.style,...j,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});function bc(a){return a?"checked":"unchecked"}bb.displayName="SwitchBubbleInput";let bd=E.forwardRef(({className:a,...b},c)=>(0,B.jsx)(a8,{className:(0,P.cn)("peer inline-flex h-6 w-11 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",a),...b,ref:c,children:(0,B.jsx)(ba,{className:(0,P.cn)("pointer-events-none block h-5 w-5 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0")})}));bd.displayName=a8.displayName;var be=a.i(33508),bf=a.i(85442);function bg({type:a,id:b,onClose:c}){let{currentBank:d}=(0,F.useBank)(),[e,f]=(0,E.useState)(null),[g,h]=(0,E.useState)(!1),[i,j]=(0,E.useState)(null);(0,E.useEffect)(()=>{b&&(async()=>{h(!0),j(null);try{if("document"===a){if(!d)return void j("No bank selected");let a=await S.client.getDocument(b,d);f(a)}else{let a=await S.client.getChunk(b);f(a)}}catch(b){console.error(`Error loading ${a}:`,b),j(b.message)}finally{h(!1)}})()},[b,a,d]);let k=null!==b;return(0,B.jsx)(bf.Dialog,{open:k,onOpenChange:a=>!a&&c(),children:(0,B.jsxs)(bf.DialogContent,{className:"max-w-3xl max-h-[80vh] overflow-hidden flex flex-col",children:[(0,B.jsxs)(bf.DialogHeader,{children:[(0,B.jsx)(bf.DialogTitle,{children:"document"===a?"Document Details":"Chunk Details"}),(0,B.jsx)(bf.DialogDescription,{children:"document"===a?"View the original document text and metadata":"View the chunk text and metadata"})]}),(0,B.jsx)("div",{className:"flex-1 overflow-y-auto",children:g?(0,B.jsx)("div",{className:"flex items-center justify-center py-20",children:(0,B.jsxs)("div",{className:"text-center",children:[(0,B.jsx)("div",{className:"text-4xl mb-2",children:"⏳"}),(0,B.jsxs)("div",{className:"text-sm text-muted-foreground",children:["Loading ",a,"..."]})]})}):i?(0,B.jsx)("div",{className:"flex items-center justify-center py-20",children:(0,B.jsxs)("div",{className:"text-center text-destructive",children:[(0,B.jsx)("div",{className:"text-4xl mb-2",children:"❌"}),(0,B.jsxs)("div",{className:"text-sm",children:["Error: ",i]})]})}):e?(0,B.jsx)("div",{className:"space-y-4",children:"document"===a?(0,B.jsxs)(B.Fragment,{children:[(0,B.jsxs)("div",{className:"space-y-3",children:[(0,B.jsxs)("div",{className:"p-3 bg-muted rounded-lg",children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-1",children:"Document ID"}),(0,B.jsx)("div",{className:"text-sm font-mono break-all text-foreground",children:e.id})]}),e.created_at&&(0,B.jsxs)("div",{className:"grid grid-cols-2 gap-3",children:[(0,B.jsxs)("div",{className:"p-3 bg-muted rounded-lg",children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-1",children:"Created"}),(0,B.jsx)("div",{className:"text-sm text-foreground",children:new Date(e.created_at).toLocaleString()})]}),(0,B.jsxs)("div",{className:"p-3 bg-muted rounded-lg",children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-1",children:"Memory Units"}),(0,B.jsx)("div",{className:"text-sm text-foreground",children:e.memory_unit_count})]})]}),e.original_text&&(0,B.jsxs)("div",{className:"p-3 bg-muted rounded-lg",children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-1",children:"Text Length"}),(0,B.jsxs)("div",{className:"text-sm text-foreground",children:[e.original_text.length.toLocaleString()," characters"]})]})]}),e.original_text&&(0,B.jsxs)("div",{children:[(0,B.jsx)("div",{className:"text-sm font-bold text-foreground mb-2",children:"Original Text"}),(0,B.jsx)("div",{className:"p-4 bg-muted rounded-lg border border-border max-h-[300px] overflow-y-auto",children:(0,B.jsx)("pre",{className:"text-sm whitespace-pre-wrap font-mono text-foreground",children:e.original_text})})]})]}):(0,B.jsxs)(B.Fragment,{children:[(0,B.jsxs)("div",{className:"space-y-3",children:[(0,B.jsxs)("div",{className:"p-3 bg-muted rounded-lg",children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-1",children:"Chunk ID"}),(0,B.jsx)("div",{className:"text-sm font-mono break-all text-foreground",children:e.chunk_id})]}),(0,B.jsxs)("div",{className:"grid grid-cols-2 gap-3",children:[(0,B.jsxs)("div",{className:"p-3 bg-muted rounded-lg",children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-1",children:"Document ID"}),(0,B.jsx)("div",{className:"text-sm font-mono break-all text-foreground",children:e.document_id})]}),(0,B.jsxs)("div",{className:"p-3 bg-muted rounded-lg",children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-1",children:"Chunk Index"}),(0,B.jsx)("div",{className:"text-sm text-foreground",children:e.chunk_index})]})]}),e.created_at&&(0,B.jsxs)("div",{className:"p-3 bg-muted rounded-lg",children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-1",children:"Created"}),(0,B.jsx)("div",{className:"text-sm text-foreground",children:new Date(e.created_at).toLocaleString()})]}),e.chunk_text&&(0,B.jsxs)("div",{className:"p-3 bg-muted rounded-lg",children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-1",children:"Text Length"}),(0,B.jsxs)("div",{className:"text-sm text-foreground",children:[e.chunk_text.length.toLocaleString()," characters"]})]})]}),e.chunk_text&&(0,B.jsxs)("div",{children:[(0,B.jsx)("div",{className:"text-sm font-bold text-foreground mb-2",children:"Chunk Text"}),(0,B.jsx)("div",{className:"p-4 bg-muted rounded-lg border border-border max-h-[300px] overflow-y-auto",children:(0,B.jsx)("pre",{className:"text-sm whitespace-pre-wrap font-mono text-foreground",children:e.chunk_text})})]})]})}):null})]})})}function bh({memory:a,onClose:b,compact:c=!1,inPanel:d=!1}){let[e,f]=(0,E.useState)(null),[g,h]=(0,E.useState)(null),[i,j]=(0,E.useState)(null),k=async a=>{try{await navigator.clipboard.writeText(a),f(a),setTimeout(()=>f(null),2e3)}catch(a){console.error("Failed to copy:",a)}},l=a=>{h("document"),j(a)},n=a=>{h("chunk"),j(a)},o=()=>{h(null),j(null)};if(!a)return null;let p=a.id||a.node_id,q=c?"text-[10px]":"text-xs",r=c?"text-xs":"text-sm";return d?(0,B.jsxs)(B.Fragment,{children:[(0,B.jsxs)("div",{className:"p-5",children:[(0,B.jsxs)("div",{className:"flex justify-between items-center mb-6 pb-4 border-b border-border",children:[(0,B.jsxs)("div",{children:[(0,B.jsx)("h3",{className:"text-xl font-bold text-foreground",children:"Memory Details"}),(0,B.jsx)("p",{className:"text-sm text-muted-foreground mt-1",children:"Full memory content and metadata"})]}),(0,B.jsx)(T.Button,{variant:"secondary",size:"sm",onClick:b,className:"h-8 w-8 p-0",children:(0,B.jsx)(be.X,{className:"h-5 w-5"})})]}),(0,B.jsxs)("div",{className:"space-y-5",children:[(0,B.jsxs)("div",{children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-2",children:"Full Text"}),(0,B.jsx)("div",{className:"text-sm whitespace-pre-wrap leading-relaxed text-foreground",children:a.text})]}),a.context&&(0,B.jsxs)("div",{className:"p-4 bg-muted/50 rounded-lg",children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-2",children:"Context"}),(0,B.jsx)("div",{className:"text-sm text-foreground",children:a.context})]}),(0,B.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,B.jsxs)("div",{className:"p-4 bg-muted/50 rounded-lg",children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-2",children:"Occurred"}),(0,B.jsx)("div",{className:"text-sm font-medium text-foreground",children:a.occurred_start?new Date(a.occurred_start).toLocaleString():"N/A"})]}),(0,B.jsxs)("div",{className:"p-4 bg-muted/50 rounded-lg",children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-2",children:"Mentioned"}),(0,B.jsx)("div",{className:"text-sm font-medium text-foreground",children:a.mentioned_at?new Date(a.mentioned_at).toLocaleString():"N/A"})]})]}),a.entities&&(0,B.jsxs)("div",{children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-3",children:"Entities"}),(0,B.jsx)("div",{className:"flex flex-wrap gap-2",children:(Array.isArray(a.entities)?a.entities:String(a.entities).split(", ")).map((a,b)=>{let c="string"==typeof a?a:a?.name||JSON.stringify(a);return(0,B.jsx)("span",{className:"text-sm px-3 py-1.5 rounded-full bg-primary/10 text-primary font-medium",children:c},b)})})]}),p&&(0,B.jsxs)("div",{className:"p-4 bg-muted/50 rounded-lg",children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-2",children:"Memory ID"}),(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[(0,B.jsx)("code",{className:"text-xs font-mono break-all flex-1 text-muted-foreground",children:p}),(0,B.jsx)(T.Button,{variant:"ghost",size:"sm",className:"h-8 w-8 p-0 flex-shrink-0",onClick:()=>k(p),children:e===p?(0,B.jsx)(W.Check,{className:"h-4 w-4 text-green-600"}):(0,B.jsx)(V,{className:"h-4 w-4"})})]})]}),(a.document_id||a.chunk_id)&&(0,B.jsxs)("div",{className:"flex gap-3 pt-2",children:[a.document_id&&(0,B.jsx)(T.Button,{onClick:()=>l(a.document_id),variant:"secondary",className:"flex-1",children:"View Document"}),a.chunk_id&&(0,B.jsx)(T.Button,{onClick:()=>n(a.chunk_id),variant:"secondary",className:"flex-1",children:"View Chunk"})]})]})]}),g&&i&&(0,B.jsx)(bg,{type:g,id:i,onClose:o})]}):(0,B.jsxs)(B.Fragment,{children:[(0,B.jsxs)("div",{className:`bg-card border-2 border-primary rounded-lg ${c?"p-3":"p-4"} sticky top-4 max-h-[calc(100vh-120px)] overflow-y-auto`,children:[(0,B.jsxs)("div",{className:"flex justify-between items-start mb-4",children:[(0,B.jsxs)("div",{children:[(0,B.jsx)("h3",{className:`${c?"text-sm":"text-lg"} font-bold text-card-foreground`,children:"Memory Details"}),!c&&(0,B.jsx)("p",{className:"text-sm text-muted-foreground",children:"Full memory content and metadata"})]}),(0,B.jsx)(T.Button,{variant:"ghost",size:"sm",onClick:b,className:c?"h-6 w-6 p-0":"h-8 w-8 p-0",children:(0,B.jsx)(be.X,{className:c?"h-3 w-3":"h-4 w-4"})})]}),(0,B.jsxs)("div",{className:c?"space-y-2":"space-y-4",children:[(0,B.jsxs)("div",{className:`${c?"p-2":"p-3"} bg-muted rounded-lg`,children:[(0,B.jsx)("div",{className:`${q} font-bold text-muted-foreground uppercase mb-1`,children:"Full Text"}),(0,B.jsx)("div",{className:`${r} whitespace-pre-wrap`,children:a.text})]}),a.context&&(0,B.jsxs)("div",{className:`${c?"p-2":"p-3"} bg-muted rounded-lg`,children:[(0,B.jsx)("div",{className:`${q} font-bold text-muted-foreground uppercase mb-1`,children:"Context"}),(0,B.jsx)("div",{className:r,children:a.context})]}),(0,B.jsxs)("div",{className:"grid grid-cols-2 gap-2",children:[(0,B.jsxs)("div",{className:`${c?"p-2":"p-3"} bg-muted rounded-lg`,children:[(0,B.jsx)("div",{className:`${q} font-bold text-muted-foreground uppercase mb-1`,children:"Occurred"}),(0,B.jsx)("div",{className:r,children:a.occurred_start?new Date(a.occurred_start).toLocaleString():"N/A"})]}),(0,B.jsxs)("div",{className:`${c?"p-2":"p-3"} bg-muted rounded-lg`,children:[(0,B.jsx)("div",{className:`${q} font-bold text-muted-foreground uppercase mb-1`,children:"Mentioned"}),(0,B.jsx)("div",{className:r,children:a.mentioned_at?new Date(a.mentioned_at).toLocaleString():"N/A"})]})]}),a.entities&&(0,B.jsxs)("div",{className:`${c?"p-2":"p-3"} bg-muted rounded-lg`,children:[(0,B.jsx)("div",{className:`${q} font-bold text-muted-foreground uppercase mb-2`,children:"Entities"}),(0,B.jsx)("div",{className:"flex flex-wrap gap-1",children:(Array.isArray(a.entities)?a.entities:String(a.entities).split(", ")).map((a,b)=>{let d="string"==typeof a?a:a?.name||JSON.stringify(a);return(0,B.jsx)("span",{className:`${c?"text-[10px] px-1.5 py-0.5":"text-xs px-2 py-1"} rounded bg-secondary text-secondary-foreground`,children:d},b)})})]}),p&&(0,B.jsxs)("div",{className:`${c?"p-2":"p-3"} bg-muted rounded-lg`,children:[(0,B.jsx)("div",{className:`${q} font-bold text-muted-foreground uppercase mb-1`,children:"Memory ID"}),(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[(0,B.jsx)("span",{className:`${c?"text-[10px]":"text-sm"} font-mono break-all`,children:p}),(0,B.jsx)(T.Button,{variant:"ghost",size:"sm",className:"h-6 w-6 p-0 flex-shrink-0",onClick:()=>k(p),children:e===p?(0,B.jsx)(W.Check,{className:"h-3 w-3 text-green-600"}):(0,B.jsx)(V,{className:"h-3 w-3"})})]})]}),(a.document_id||a.chunk_id)&&(0,B.jsxs)("div",{className:`flex gap-2 ${c?"pt-1":""}`,children:[a.document_id&&(0,B.jsx)(T.Button,{onClick:()=>l(a.document_id),size:"sm",variant:"secondary",className:`flex-1 ${c?"h-7 text-xs":""}`,children:"View Document"}),a.chunk_id&&(0,B.jsx)(T.Button,{onClick:()=>n(a.chunk_id),size:"sm",variant:"secondary",className:`flex-1 ${c?"h-7 text-xs":""}`,children:"View Chunk"})]})]})]}),g&&i&&(0,B.jsx)(bg,{type:g,id:i,onClose:o})]})}function bi(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 bj(a,b){if(!(a instanceof b))throw TypeError("Cannot call a class as a function")}function bk(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,bp(d.key),d)}}(a.prototype,b),Object.defineProperty(a,"prototype",{writable:!1}),a}function bl(a,b){var c="undefined"!=typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(!c){if(Array.isArray(a)||(c=br(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 bm(a,b,c){return(b=bp(b))in a?Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[b]=c,a}function bn(a,b){return function(a){if(Array.isArray(a))return a}(a)||function(a,b){var c=null==a?null:"undefined"!=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)||br(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 bo(a){return function(a){if(Array.isArray(a))return bi(a)}(a)||function(a){if("undefined"!=typeof Symbol&&null!=a[Symbol.iterator]||null!=a["@@iterator"])return Array.from(a)}(a)||br(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 bp(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 bq(a){return(bq="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 br(a,b){if(a){if("string"==typeof a)return bi(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)?bi(a,b):void 0}}var bs=bq(""),bt=bq({}),bu=bq(function(){}),bv="undefined"==typeof HTMLElement?"undefined":bq(HTMLElement),bw=function(a){return a&&a.instanceString&&by(a.instanceString)?a.instanceString():null},bx=function(a){return null!=a&&bq(a)==bs},by=function(a){return null!=a&&bq(a)===bu},bz=function(a){return!bD(a)&&(Array.isArray?Array.isArray(a):null!=a&&a instanceof Array)},bA=function(a){return null!=a&&bq(a)===bt&&!bz(a)&&a.constructor===Object},bB=function(a){return null!=a&&bq(a)===bq(1)&&!isNaN(a)},bC=function(a){if("undefined"!==bv)return null!=a&&a instanceof HTMLElement},bD=function(a){return bE(a)||bF(a)},bE=function(a){return"collection"===bw(a)&&a._private.single},bF=function(a){return"collection"===bw(a)&&!a._private.single},bG=function(a){return"core"===bw(a)},bH=function(a){return"stylesheet"===bw(a)},bI=function(a){return null==a||!!(""===a||a.match(/^\s+$/))},bJ=function(a){return null!=a&&bq(a)===bt&&by(a.then)},bK=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},bL=bK(function(a){return a.replace(/([A-Z])/g,function(a){return"-"+a.toLowerCase()})}),bM=bK(function(a){return a.replace(/(-\w)/g,function(a){return a[1].toUpperCase()})}),bN=bK(function(a,b){return a+b[0].toUpperCase()+b.substring(1)},function(a,b){return a+"$"+b}),bO=function(a){return bI(a)?a:a.charAt(0).toUpperCase()+a.substring(1)},bP=function(a,b){return a.slice(-1*b.length)===b},bQ="(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))",bR="rgb[a]?\\(("+bQ+"[%]?)\\s*,\\s*("+bQ+"[%]?)\\s*,\\s*("+bQ+"[%]?)(?:\\s*,\\s*("+bQ+"))?\\)",bS="rgb[a]?\\((?:"+bQ+"[%]?)\\s*,\\s*(?:"+bQ+"[%]?)\\s*,\\s*(?:"+bQ+"[%]?)(?:\\s*,\\s*(?:"+bQ+"))?\\)",bT="hsl[a]?\\(("+bQ+")\\s*,\\s*("+bQ+"[%])\\s*,\\s*("+bQ+"[%])(?:\\s*,\\s*("+bQ+"))?\\)",bU="hsl[a]?\\((?:"+bQ+")\\s*,\\s*(?:"+bQ+"[%])\\s*,\\s*(?:"+bQ+"[%])(?:\\s*,\\s*(?:"+bQ+"))?\\)",bV=function(a,b){return a<b?-1:+(a>b)},bW=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},bX=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]}},bY=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("^"+bT+"$").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},bZ=function(a){var b,c=RegExp("^"+bR+"$").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},b$=function(a){return(bz(a)?a:null)||b_[a.toLowerCase()]||bX(a)||bZ(a)||bY(a)},b_={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]},b0=function(a){for(var b=a.map,c=a.keys,d=c.length,e=0;e<d;e++){var f=c[e];if(bA(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}},b1=function(a){for(var b=a.map,c=a.keys,d=c.length,e=0;e<d;e++){var f=c[e];if(bA(f))throw Error("Tried to get map with object key");if(null==(b=b[f]))break}return b},b2="undefined"!=typeof globalThis?globalThis:a.g;function b3(a){return a&&a.__esModule&&Object.prototype.hasOwnProperty.call(a,"default")?a.default:a}function b4(){return hV?hU:(hV=1,hU=function(a){var b=typeof a;return null!=a&&("object"==b||"function"==b)})}function b5(){if(hZ)return hY;hZ=1;var a=hX?hW:(hX=1,hW="object"==typeof b2&&b2&&b2.Object===Object&&b2),b="object"==typeof self&&self&&self.Object===Object&&self;return hY=a||b||Function("return this")()}function b6(){return h5?h4:(h5=1,h4=b5().Symbol)}function b7(){if(ib)return ia;ib=1;var a=b6(),b=function(){if(h7)return h6;h7=1;var a=b6(),b=Object.prototype,c=b.hasOwnProperty,d=b.toString,e=a?a.toStringTag:void 0;return h6=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(h9)return h8;h9=1;var a=Object.prototype.toString;return h8=function(b){return a.call(b)}}(),d=a?a.toStringTag:void 0;return ia=function(a){return null==a?void 0===a?"[object Undefined]":"[object Null]":d&&d in Object(a)?b(a):c(a)}}function b8(){if(ig)return ie;ig=1;var a=b7(),b=id?ic:(id=1,ic=function(a){return null!=a&&"object"==typeof a});return ie=function(c){return"symbol"==typeof c||b(c)&&"[object Symbol]"==a(c)}}var b9=b3(function(){if(ik)return ij;ik=1;var a=b4(),b=function(){if(h_)return h$;h_=1;var a=b5();return h$=function(){return a.Date.now()}}(),c=function(){if(ii)return ih;ii=1;var a=function(){if(h3)return h2;h3=1;var a=function(){if(h1)return h0;h1=1;var a=/\s/;return h0=function(b){for(var c=b.length;c--&&a.test(b.charAt(c)););return c}}(),b=/^\s+/;return h2=function(c){return c?c.slice(0,a(c)+1).replace(b,""):c}}(),b=b4(),c=b8(),d=0/0,e=/^[-+]0x[0-9a-f]+$/i,f=/^0b[01]+$/i,g=/^0o[0-7]+$/i,h=parseInt;return ih=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 ij=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}}()),ca=function(){return Date.now()},cb=function(a){a&&setTimeout(function(){a(ca())},1e3/60)},cc=function(a){return cb(a)},cd=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},ce=function(a){var b=arguments.length>1&&void 0!==arguments[1]?arguments[1]:9261;return 65599*b+a|0},cf=function(a){var b=arguments.length>1&&void 0!==arguments[1]?arguments[1]:5381;return(b<<5)+b+a|0},cg=function(a){return 2097152*a[0]+a[1]},ch=function(a,b){return[ce(a[0],b[0]),cf(a[1],b[1])]},ci=function(a,b){var c={value:0,done:!1},d=0,e=a.length;return cd({next:function(){return d<e?c.value=a[d++]:c.done=!0,c}},b)},cj=function(a,b){var c={value:0,done:!1},d=0,e=a.length;return cd({next:function(){return d<e?c.value=a.charCodeAt(d++):c.done=!0,c}},b)},ck=function(){return cl(arguments)},cl=function(a){for(var b,c=0;c<a.length;c++){var d=a[c];b=0===c?cj(d):cj(d,b)}return b},cm=!0,cn=null!=console.warn,co=null!=console.trace,cp=Number.MAX_SAFE_INTEGER||0x1fffffffffffff,cq=function(){return!0},cr=function(){return!1},cs=function(){return 0},ct=function(){},cu=function(a){throw Error(a)},cv=function(a){if(void 0===a)return cm;cm=!!a},cw=function(a){cv()&&(cn?console.warn(a):(console.log(a),co&&console.trace()))},cx=function(a){return null==a?a:bz(a)?a.slice():bA(a)?bW({},a):a},cy=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},cz={},cA=function(){return cz},cB=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}},cC=function(a,b,c){for(var d=a.length-1;d>=0;d--)a[d]===b&&a.splice(d,1)},cD=function(a){a.splice(0,a.length)},cE=function(a,b){for(var c=0;c<b.length;c++){var d=b[c];a.push(d)}},cF=function(a,b,c){return c&&(b=bN(c,b)),a[b]},cG=function(a,b,c,d){c&&(b=bN(c,b)),a[b]=d},cH=bk(function a(){bj(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]}}]),cI="undefined"!=typeof Map?Map:cH,cJ=bk(function a(b){if(bj(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)}}]),cK=("undefined"==typeof Set?"undefined":bq(Set))!=="undefined"?Set:cJ,cL=function(a,b){var c=!(arguments.length>2)||void 0===arguments[2]||arguments[2];if(void 0===a||void 0===b||!bG(a))return void cu("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 cu("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 cK,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=[];bz(b.classes)?i=b.classes:bx(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&&(cw("Setting a `style` bypass at element creation should be done only when absolutely necessary. Try to use the stylesheet instead."),this.style(n))},cM=function(a){return a={bfs:a.bfs||!a.dfs,dfs:a.dfs||!a.bfs},function(b,c,d){bA(b)&&!bD(b)&&(b=(e=b).roots||e.root,c=e.visit,d=e.directed),d=2!=arguments.length||by(c)?d:c,c=by(c)?c:function(){};for(var e,f,g,h=this._private.cy,i=b=bx(b)?this.filter(b):b,j=[],k=[],l={},n={},o={},p=0,q=this.byGroup(),r=q.nodes,s=q.edges,t=0;t<i.length;t++){var u=i[t],v=u.id();u.isNode()&&(j.unshift(u),a.bfs&&(o[v]=!0,k.push(u)),n[v]=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 w=h.collection(),x=0;x<k.length;x++){var y=k[x],z=l[y.id()];null!=z&&w.push(z),w.push(y)}return{path:h.collection(w),found:h.collection(f)}}},cN={breadthFirstSearch:cM({bfs:!0}),depthFirstSearch:cM({dfs:!0})};cN.bfs=cN.breadthFirstSearch,cN.dfs=cN.depthFirstSearch;var cO={exports:{}},cP=cO.exports,cQ=b3(io?im:(io=1,im=function(){return il?cO.exports:(il=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}(),cO.exports=a}).call(cP),cO.exports)}())),cR=cB({root:null,weight:function(a){return 1},directed:!1}),cS=cB({root:null,goal:null,weight:function(a){return 1},heuristic:function(a){return 0},directed:!1}),cT=cB({weight:function(a){return 1},directed:!1}),cU=cB({weight:function(a){return 1},directed:!1,root:null}),cV=Math.sqrt(2),cW=function(a,b,c){0===c.length&&cu("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},cX=function(a,b,c,d){for(;c>d;)b=cW(Math.floor(Math.random()*b.length),a,b),c--;return b},cY=function(a,b,c){return{x:a.x*b+c.x,y:a.y*b+c.y}},cZ=function(a,b,c){return{x:(a.x-c.x)/b,y:(a.y-c.y)/b}},c$=function(a){return{x:a[0],y:a[1]}},c_=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},c0=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},c1=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},c2=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},c3=function(a,b){return Math.atan2(b,a)-Math.PI/2},c4=Math.log2||function(a){return Math.log(a)/Math.log(2)},c5=function(a){return a>0?1:a<0?-1:0},c6=function(a,b){return Math.sqrt(c7(a,b))},c7=function(a,b){var c=b.x-a.x,d=b.y-a.y;return c*c+d*d},c8=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},c9=function(a,b,c,d){return(1-d)*(1-d)*a+2*(1-d)*d*b+d*d*c},da=function(a,b,c,d){return{x:c9(a.x,b.x,c.x,d),y:c9(a.y,b.y,c.y,d)}},db=function(a,b,c,d){var e={x:b.x-a.x,y:b.y-a.y},f=c6(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}},dc=function(a,b,c){return Math.max(a,Math.min(c,b))},dd=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}}},de=function(a){a.x1=1/0,a.y1=1/0,a.x2=-1/0,a.y2=-1/0,a.w=0,a.h=0},df=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},dg=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},dh=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},di=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=bn(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},dj=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},dk=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},dl=function(a,b,c){return a.x1<=b&&b<=a.x2&&a.y1<=c&&c<=a.y2},dm=function(a,b){return dl(a,b.x,b.y)},dn=function(a,b){return dl(a,b.x1,b.y1)&&dl(a,b.x2,b.y2)},dp=null!=(ip=Math.hypot)?ip:function(a,b){return Math.sqrt(a*a+b*b)},dq=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?dO(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=dG(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=dG(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=dG(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=dG(a,b,c,d,z,A,z,B,!1)).length>0)return h}var C=c-l+k,D=d-n+k;if((i=dE(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=dE(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=dE(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=dE(a,b,c,d,I,J,k+g)).length>0&&i[0]<=I&&i[1]>=J?[i[0],i[1]]:[]},dr=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},ds=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)},dt=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]},du=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)},dv=function(a,b,c,d,e,f,g,h){var i,j=[];du(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},dw=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},dx=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},dy=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 dx(a,b,i>0?dA(dB(k,-i)):k)},dz=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 dx(a,b,i)},dA=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=dG(b,c,d,e,f,g,h,i,!0);j[2*k]=l[0],j[2*k+1]=l[1]}return j},dB=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},dC=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]},dD=function(a,b,c,d,e,f,g){return a-=e,b-=f,(a/=c/2+g)*a+(b/=d/2+g)*b<=1},dE=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]},dF=function(a,b,c){return b<=a&&a<=c||c<=a&&a<=b?a:a<=b&&b<=c||c<=b&&b<=a?b:c},dG=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?[]:dF(a,c,g)===g?[g,h]:dF(a,c,e)===e?[e,f]:dF(e,g,c)===c?[c,d]:[]},dH=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},dI=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?dA(dB(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=dG(a,b,d,e,k,l,n,o)).length&&p.push(i[0],i[1]);return p},dJ=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=dE(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=dG(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},dK=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]]},dL=function(a,b){var c=dN(a,b);return dM(c)},dM=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},dN=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},dO=function(a,b){return Math.min(a/4,b/4,8)},dP=function(a,b){return Math.min(a/10,b/10,8)},dQ=function(){return 8},dR=function(a,b){return{heightOffset:Math.min(15,.05*b),widthOffset:Math.min(100,.25*a),ctrlPtOffsetPct:.05}};function dS(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=bl(a);try{for(f.s();!(c=f.n()).done;){var g=c.value,h=g.x*b.x+g.y*b.y;d=Math.min(d,h),e=Math.max(e,h)}}catch(a){f.e(a)}finally{f.f()}return{min:d,max:e}}var e,f=bl([].concat(bo(c(a)),bo(c(b))));try{for(f.s();!(e=f.n()).done;){var g=e.value,h=d(a,g),i=d(b,g);if(h.max<i.min||i.max<h.min)return!1}}catch(a){f.e(a)}finally{f.f()}return!0}var dT=cB({dampingFactor:.8,precision:1e-6,iterations:200,weight:function(a){return 1}}),dU=cB({root:null,weight:function(a){return 1},directed:!1,alpha:0}),dV={degreeCentralityNormalized:function(a){a=dU(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:(bx(a)&&(a=b.filter(a)),e[a.id()]/g)},outdegree:function(a){return 0===h?0:(bx(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:(bx(a)&&(a=b.filter(a)),n[a.id()]/o)}}},degreeCentrality:function(a){a=dU(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)}}};dV.dc=dV.degreeCentrality,dV.dcn=dV.degreeCentralityNormalised=dV.degreeCentralityNormalized;var dW=cB({harmonic:!0,weight:function(){return 1},directed:!1,root:null}),dX={closenessCentralityNormalized:function(a){for(var b=dW(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=bx(a)?f.filter(a)[0].id():a.id()]/h}}},closenessCentrality:function(a){var b=dW(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}};dX.cc=dX.closenessCentrality,dX.ccn=dX.closenessCentralityNormalised=dX.closenessCentralityNormalized;var dY=cB({weight:null,directed:!1}),dZ={betweennessCentrality:function(a){for(var b=dY(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 cQ(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}};dZ.bc=dZ.betweennessCentrality;var d$=cB({expandFactor:2,inflateFactor:2,multFactor:1,maxIterations:20,attributes:[function(a){return 1}]}),d_=function(a,b){for(var c=0,d=0;d<b.length;d++)c+=b[d](a);return c},d0=function(a,b,c){for(var d=0;d<b;d++)a[d*b+d]=c},d1=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}},d2=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},d3=function(a,b,c){for(var d=a.slice(0),e=1;e<c;e++)a=d2(a,d,b);return a},d4=function(a,b,c){for(var d=Array(b*b),e=0;e<b*b;e++)d[e]=Math.pow(a[e],c);return d1(d,b),d},d5=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},d6=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},d7=function(a,b){for(var c=0;c<a.length;c++)if(!b[c]||a[c].id()!==b[c].id())return!1;return!0},d8=function(a){for(var b=0;b<a.length;b++)for(var c=0;c<a.length;c++)b!=c&&d7(a[b],a[c])&&a.splice(c,1);return a},d9=function(a){for(var b=this.nodes(),c=this.edges(),d=this.cy(),e=d$(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=d_(o,e.attributes);k[p*i+q]+=r,k[q*i+p]+=r}d0(k,i,e.multFactor),d1(k,i);for(var s=!0,t=0;s&&t<e.maxIterations;)s=!1,d5(k=d4(h=d3(k,i,e.expandFactor),i,e.inflateFactor),h,j,4)||(s=!0),t++;var u=d6(k,i,b,d);return d8(u)},ea=function(a){return a},eb=function(a,b){return Math.abs(b-a)},ec=function(a,b,c){return a+eb(b,c)},ed=function(a,b,c){return a+Math.pow(c-b,2)},ee=function(a){return Math.sqrt(a)},ef=function(a,b,c){return Math.max(a,eb(b,c))},eg=function(a,b,c,d,e){for(var f=arguments.length>5&&void 0!==arguments[5]?arguments[5]:ea,g=d,h=0;h<a;h++)g=e(g,b(h),c(h));return f(g)},eh={euclidean:function(a,b,c){return a>=2?eg(a,b,c,0,ed,ee):eg(a,b,c,0,ec)},squaredEuclidean:function(a,b,c){return eg(a,b,c,0,ed)},manhattan:function(a,b,c){return eg(a,b,c,0,ec)},max:function(a,b,c){return eg(a,b,c,-1/0,ef)}};function ei(a,b,c,d,e,f){var g;return(g=by(a)?a:eh[a]||eh.euclidean,0===b&&by(a))?g(e,f):g(b,c,d,e,f)}eh["squared-euclidean"]=eh.squaredEuclidean,eh.squaredeuclidean=eh.squaredEuclidean;var ej=cB({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),ek=function(a){return ej(a)},el=function(a,b,c,d,e){var f="kMedoids"!==e?function(a){return c[a]}:function(a){return d[a](c)};return ei(a,d.length,f,function(a){return d[a](b)},c,b)},em=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},en=function(a,b,c,d,e){for(var f=1/0,g=0,h=0;h<b.length;h++){var i=el(c,a,b[h],d,e);i<f&&(f=i,g=h)}return g},eo=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},ep=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},eq=function(a,b,c){for(var d=0;d<c;d++)if(a===b[d])return!0;return!1},er=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)];eq(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},es=function(a,b,c){for(var d=0,e=0;e<b.length;e++)d+=el("manhattan",b[e],a,c,"kMedoids");return d},et=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}},eu=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(el(e.distance,d[j],c[i],e.attributes,"cmeans")/el(e.distance,d[j],c[k],e.attributes,"cmeans"),h);a[j][i]=1/f}},ev=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},ew=function(a){var b,c,d,e,f=this.cy(),g=this.nodes(),h=ek(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,et(b,g,c,e,h),eu(c,d,b,g,h),ep(c,d,h.sensitivityThreshold)||(r=!0),s++;return{clusters:ev(g,c,h,f),degreeOfMembership:c}},ex=cB({distance:"euclidean",linkage:"min",mode:"threshold",threshold:1/0,addDendrogram:!1,dendrogramDepth:0,attributes:[]}),ey={single:"min",complete:"max"},ez=function(a){var b=ex(a),c=ey[b.linkage];return null!=c&&(b.linkage=c),b},eA=function(a,b,c,d,e){for(var f,g,h=0,i=1/0,j=e.attributes,k=function(a,b){return ei(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},eB=function(a,b,c){a&&(a.value?b.push(a.value):(a.left&&eB(a.left,b),a.right&&eB(a.right,b)))},eC=function(a,b){if(!a)return"";if(a.left&&a.right){var c=eC(a.left,b),d=eC(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()},eD=function(a,b,c){if(!a)return[];var d=[],e=[],f=[];if(0===b)return a.left&&eB(a.left,d),a.right&&eB(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&&eB(a.left,d),a.right&&eB(a.right,e),[c.collection(d),c.collection(e)];return a.value?[c.collection(a.value)]:(a.left&&(d=eD(a.left,b-1,c)),a.right&&(e=eD(a.right,b-1,c)),d.concat(e))},eE=function(a){for(var b,c=this.cy(),d=this.nodes(),e=ez(a),f=e.attributes,g=function(a,b){return ei(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=eA(h,k,i,j,e);r;)r=eA(h,k,i,j,e);return"dendrogram"===e.mode?(b=eD(h[0],e.dendrogramDepth,c),e.addDendrogram&&eC(h[0],c)):(b=Array(h.length),h.forEach(function(a,d){a.key=a.index=null,b[d]=c.collection(a.value)})),b},eF=cB({distance:"euclidean",preference:"median",damping:.8,maxIterations:1e3,minIterations:100,attributes:[]}),eG=function(a){var b=a.damping,c=a.preference;.5<=b&&b<1||cu("Damping must range on [0.5, 1). Got: ".concat(b));var d=["median","mean","min","max"];return d.some(function(a){return a===c})||bB(c)||cu("Preference must be one of [".concat(d.map(function(a){return"'".concat(a,"'")}).join(", "),"] or a number. Got: ").concat(c)),eF(a)},eH=function(a,b,c,d){var e=function(a,b){return d[b](a)};return-ei(a,d.length,function(a){return e(b,a)},function(a){return e(c,a)},b,c)},eI=function(a,b){return"median"===b?c2(a):"mean"===b?c1(a):"min"===b?c_(a):"max"===b?c0(a):b},eJ=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},eK=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},eL=function(a,b,c){for(var d=eK(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 eK(a,b,c)},eM=function(a){for(var b,c,d,e,f,g,h,i=this.cy(),j=this.nodes(),k=eG(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]=eH(k.distance,j[p],j[q],k.attributes));e=eI(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=eJ(b,f,g),S=eL(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},eN=cB({root:void 0,directed:!1}),eO=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}},eP=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}},eQ={};[cN,{dijkstra:function(a){if(!bA(a)){var b=arguments;a={root:b[0],weight:b[1],directed:b[2]}}var c=cR(a),d=c.root,e=c.weight,f=c.directed,g=this,h=bx(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 cQ(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 t=q.pop(),u=p(t);if(k[t.id()]=u,u!==1/0)for(var v=t.neighborhood().intersect(n),w=0;w<v.length;w++){var x=v[w],y=x.id(),z=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}}(t,x),A=u+z.dist;A<p(x)&&(i[x.id()]=A,q.updateItem(x),j[y]={node:t,edge:z.edge})}}return{distanceTo:function(a){return k[(bx(a)?n.filter(a)[0]:a[0]).id()]},pathTo:function(a){var b=bx(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=cS(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 cQ(function(a,b){return o[a.id()]-o[b.id()]}),r=new cK,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=cT(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 t=h[s],u=t.source()[0],v=t.target()[0];if(u!==v){var w=k(u),x=k(v),y=w*i+x,z=d(t);if(n[y]>z&&(n[y]=z,q[y]=x,r[y]=t),!e){var A=x*i+w;!e&&n[A]>z&&(n[A]=z,q[A]=w,r[A]=t)}}}for(var B=0;B<i;B++)for(var C=0;C<i;C++)for(var D=C*i+B,E=0;E<i;E++){var F=C*i+E,G=B*i+E;n[D]+n[G]<n[F]&&(n[F]=n[D]+n[G],q[F]=q[D])}var H=function(a){return k((bx(a)?b.filter(a):a)[0])};return{distance:function(a,b){return n[H(a)*i+H(b)]},path:function(a,c){var d,e=H(a),f=H(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=cU(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 cI,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(bx(a)?h.$(a):a)[0]},t=0;t<l;t++){var u=k[t],v=r(u);u.same(f)?v.dist=0:v.dist=1/0,v.pred=null,v.edge=null}for(var w=!1,x=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,w=!0)},y=1;y<l;y++){w=!1;for(var z=0;z<q;z++){var A=j[z],B=A.source(),C=A.target(),D=d(A),E=r(B),F=r(C);x(B,C,A,E,F,D),e||x(C,B,A,F,E,D)}if(!w)break}if(w)for(var G=[],H=0;H<q;H++){var I=j[H],J=I.source(),K=I.target(),L=d(I),M=r(J).dist,N=r(K).dist;if(M+L<N||!e&&N+L<M)if(o||(cw("Graph contains a negative weight cycle for Bellman-Ford"),o=!0),!1!==a.findNegativeWeightCycles){var O=[];M+L<N&&O.push(J),!e&&N+L<M&&O.push(K);for(var P=O.length,Q=0;Q<P;Q++){var R=O[Q],S=[R];S.push(r(R).edge);for(var T=r(R).pred;-1===S.indexOf(T);)S.push(T),S.push(r(T).edge),T=r(T).pred;for(var U=(S=S.slice(S.indexOf(T)))[0].id(),V=0,W=2;W<S.length;W+=2)S[W].id()<U&&(U=S[W].id(),V=W);(S=S.slice(V).concat(S.slice(0,V))).push(S[0]);var X=S.map(function(a){return a.id()}).join(",");-1===G.indexOf(X)&&(p.push(g.spawn(S)),G.push(X))}}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/cV);if(e<2)return void cu("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=cX(p,i.slice(),e,h),v=u.slice();r(p,q);var w=cX(p,u,h,2),x=cX(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=dT(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]}c8(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)]}}}},dV,dX,dZ,{markovClustering:d9,mcl:d9},{kMeans:function(a){var b,c=this.cy(),d=this.nodes(),e=null,f=ek(a),g=Array(f.k),h={};f.testMode?"number"==typeof f.testCentroids?(f.testCentroids,b=em(d,f.k,f.attributes)):b="object"===bq(f.testCentroids)?f.testCentroids:em(d,f.k,f.attributes):b=em(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()]=en(e,b,f.distance,f.attributes,"kMeans");i=!1;for(var l=0;l<f.k;l++){var n=eo(l,d,h);if(0!==n.length){for(var o=f.attributes.length,p=b[l],q=Array(o),r=Array(o),s=0;s<o;s++){r[s]=0;for(var t,u=0;u<n.length;u++)e=n[u],r[s]+=f.attributes[s](e);q[s]=r[s]/n.length,t=q[s],Math.abs(p[s]-t)<=f.sensitivityThreshold||(i=!0)}b[l]=q,g[l]=c.collection(n)}}j++}return g},kMedoids:function(a){var b,c,d=this.cy(),e=this.nodes(),f=null,g=ek(a),h=Array(g.k),i={},j=Array(g.k);g.testMode?"number"==typeof g.testCentroids||(b="object"===bq(g.testCentroids)?g.testCentroids:er(e,g.k)):b=er(e,g.k);for(var k=!0,l=0;k&&l<g.maxIterations;){for(var n=0;n<e.length;n++)i[(f=e[n]).id()]=en(f,b,g.distance,g.attributes,"kMedoids");k=!1;for(var o=0;o<b.length;o++){var p=eo(o,e,i);if(0!==p.length){j[o]=es(b[o],p,g.attributes);for(var q=0;q<p.length;q++)(c=es(p[q],p,g.attributes))<j[o]&&(j[o]=c,b[o]=p[q],k=!0);h[o]=d.collection(p)}}l++}return h},fuzzyCMeans:ew,fcm:ew},{hierarchicalClustering:eE,hca:eE},{affinityPropagation:eM,ap:eM},{hierholzer:function(a){if(!bA(a)){var b,c,d,e=arguments;a={root:e[0],directed:e[1]}}var f=eN(a),g=f.root,h=f.directed,i=!1;g&&(d=bx(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:eO,htbc:eO,htb:eO,hopcroftTarjanBiconnectedComponents:eO},{tarjanStronglyConnected:eP,tsc:eP,tscc:eP,tarjanStronglyConnectedComponents:eP}].forEach(function(a){bW(eQ,a)});var eR=function(a){if(!(this instanceof eR))return new eR(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))};eR.prototype={fulfill:function(a){return eS(this,1,"fulfillValue",a)},reject:function(a){return eS(this,2,"rejectReason",a)},then:function(a,b){var c=new eR;return this.onFulfilled.push(eV(a,c,"fulfill")),this.onRejected.push(eV(b,c,"reject")),eT(this),c.proxy}};var eS=function(a,b,c,d){return 0===a.state&&(a.state=b,a[c]=d,eT(a)),a},eT=function(a){1===a.state?eU(a,"onFulfilled",a.fulfillValue):2===a.state&&eU(a,"onRejected",a.rejectReason)},eU=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)}},eV=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}eW(b,e)}}},eW=function(a,b){if(a===b||a.proxy===b)return void a.reject(TypeError("cannot resolve promise with itself"));if("object"===bq(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")):eW(a,c))},function(b){d||(d=!0,a.reject(b))})}catch(b){d||a.reject(b)}return}a.fulfill(b)};eR.all=function(a){return new eR(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)})},eR.resolve=function(a){return new eR(function(b,c){b(a)})},eR.reject=function(a){return new eR(function(b,c){c(a)})};var eX="undefined"!=typeof Promise?Promise:eR,eY=function(a,b,c){var d=bG(a),e=this._private=bW({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&&by(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},eZ=eY.prototype;function e$(){return ir?iq:(ir=1,iq=Array.isArray)}function e_(){if(iH)return iG;iH=1;var a=function(){if(iD)return iC;iD=1;var a=function(){if(iv)return iu;iv=1;var a=b7(),b=b4();return iu=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(iz)return iy;iz=1;var a,b=ix?iw:(ix=1,iw=b5()["__core-js_shared__"]),c=(a=/[^.]+$/.exec(b&&b.keys&&b.keys.IE_PROTO||""))?"Symbol(src)_1."+a:"";return iy=function(a){return!!c&&c in a}}(),c=b4(),d=function(){if(iB)return iA;iB=1;var a=Function.prototype.toString;return iA=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 iC=function(f){return!(!c(f)||b(f))&&(a(f)?i:e).test(d(f))}}(),b=iF?iE:(iF=1,iE=function(a,b){return null==a?void 0:a[b]});return iG=function(c,d){var e=b(c,d);return a(e)?e:void 0}}function e0(){return iJ?iI:(iJ=1,iI=e_()(Object,"create"))}function e1(){return iZ?iY:(iZ=1,iY=function(a,b){return a===b||a!=a&&b!=b})}function e2(){if(i_)return i$;i_=1;var a=e1();return i$=function(b,c){for(var d=b.length;d--;)if(a(b[d][0],c))return d;return -1}}function e3(){if(jh)return jg;jh=1;var a=jf?je:(jf=1,je=function(a){var b=typeof a;return"string"==b||"number"==b||"symbol"==b||"boolean"==b?"__proto__"!==a:null===a});return jg=function(b,c){var d=b.__data__;return a(c)?d["string"==typeof c?"string":"hash"]:d.map}}function e4(){if(jx)return jw;jx=1;var a=function(){if(jv)return ju;jv=1;var a=function(){if(jt)return js;jt=1;var a=function(){if(jr)return jq;jr=1;var a=function(){if(jd)return jc;jd=1;var a=function(){if(iV)return iU;iV=1;var a=function(){if(iL)return iK;iL=1;var a=e0();return iK=function(){this.__data__=a?a(null):{},this.size=0}}(),b=iN?iM:(iN=1,iM=function(a){var b=this.has(a)&&delete this.__data__[a];return this.size-=!!b,b}),c=function(){if(iP)return iO;iP=1;var a=e0(),b=Object.prototype.hasOwnProperty;return iO=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(iR)return iQ;iR=1;var a=e0(),b=Object.prototype.hasOwnProperty;return iQ=function(c){var d=this.__data__;return a?void 0!==d[c]:b.call(d,c)}}(),e=function(){if(iT)return iS;iT=1;var a=e0();return iS=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,iU=f}(),b=function(){if(i9)return i8;i9=1;var a=iX?iW:(iX=1,iW=function(){this.__data__=[],this.size=0}),b=function(){if(i1)return i0;i1=1;var a=e2(),b=Array.prototype.splice;return i0=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(i3)return i2;i3=1;var a=e2();return i2=function(b){var c=this.__data__,d=a(c,b);return d<0?void 0:c[d][1]}}(),d=function(){if(i5)return i4;i5=1;var a=e2();return i4=function(b){return a(this.__data__,b)>-1}}(),e=function(){if(i7)return i6;i7=1;var a=e2();return i6=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,i8=f}(),c=jb?ja:(jb=1,ja=e_()(b5(),"Map"));return jc=function(){this.size=0,this.__data__={hash:new a,map:new(c||b),string:new a}}}(),b=function(){if(jj)return ji;jj=1;var a=e3();return ji=function(b){var c=a(this,b).delete(b);return this.size-=!!c,c}}(),c=function(){if(jl)return jk;jl=1;var a=e3();return jk=function(b){return a(this,b).get(b)}}(),d=function(){if(jn)return jm;jn=1;var a=e3();return jm=function(b){return a(this,b).has(b)}}(),e=function(){if(jp)return jo;jp=1;var a=e3();return jo=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,jq=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,js=b}();return ju=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 jw=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 e5(){return jz?jy:(jz=1,jy=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 e6(){if(jD)return jC;jD=1;var a=function(){if(jB)return jA;jB=1;var a=b6(),b=e5(),c=e$(),d=b8(),e=a?a.prototype:void 0,f=e?e.toString:void 0;return jA=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 jC=function(b){return null==b?"":a(b)}}function e7(){if(jF)return jE;jF=1;var a=e$(),b=function(){if(it)return is;it=1;var a=e$(),b=b8(),c=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,d=/^\w*$/;return is=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=e4(),d=e6();return jE=function(e,f){return a(e)?e:b(e,f)?[e]:c(d(e))}}function e8(){if(jH)return jG;jH=1;var a=b8();return jG=function(b){if("string"==typeof b||a(b))return b;var c=b+"";return"0"==c&&1/b==-1/0?"-0":c}}bW(eZ,{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),bD(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 eX(function(a,c){b.push(function(){a()})})}}),eZ.complete=eZ.completed,eZ.run=eZ.play,eZ.running=eZ.playing;var e9=b3(function(){if(jL)return jK;jL=1;var a=function(){if(jJ)return jI;jJ=1;var a=e7(),b=e8();return jI=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 jK=function(b,c,d){var e=null==b?void 0:a(b,c);return void 0===e?d:e}}()),fa=b3(function(){if(jX)return jW;jX=1;var a=function(){if(jV)return jU;jV=1;var a=function(){if(jR)return jQ;jR=1;var a=function(){if(jP)return jO;jP=1;var a=function(){if(jN)return jM;jN=1;var a=e_();return jM=function(){try{var b=a(Object,"defineProperty");return b({},"",{}),b}catch(a){}}()}();return jO=function(b,c,d){"__proto__"==c&&a?a(b,c,{configurable:!0,enumerable:!0,value:d,writable:!0}):b[c]=d}}(),b=e1(),c=Object.prototype.hasOwnProperty;return jQ=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=e7(),c=function(){if(jT)return jS;jT=1;var a=/^(?:0|[1-9]\d*)$/;return jS=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=b4(),e=e8();return jU=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 jW=function(b,c,d){return null==b?b:a(b,c,d)}}()),fb=b3(function(){if(j_)return j$;j_=1;var a=e5(),b=jZ?jY:(jZ=1,jY=function(a,b){var c=-1,d=a.length;for(b||(b=Array(d));++c<d;)b[c]=a[c];return b}),c=e$(),d=b8(),e=e4(),f=e8(),g=e6();return j$=function(h){return c(h)?a(h,f):d(h)?[h]:b(e(g(h)))}}()),fc={};[{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=bW({},a,b)).length)return new eY(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=cZ(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&&bA(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 eY(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=bW({},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=bW({},{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],h=f?this[0]:this;if(bx(b)){var i,j=-1!==b.indexOf(".")&&fb(b);if(e.allowGetting&&void 0===c)return h&&(e.beforeGet(h),i=j&&void 0===h._private[e.field][b]?e9(h._private[e.field],j):h._private[e.field][b]),i;if(e.allowSetting&&void 0!==c&&!e.immutableKeys[b]){var k=bm({},b,c);e.beforeSet(this,k);for(var l=0,n=g.length;l<n;l++){var o=g[l];e.canSet(o)&&(j&&void 0===h._private[e.field][b]?fa(o._private[e.field],j,c):o._private[e.field][b]=c)}e.updateStyle&&this.updateStyle(),e.onSet(this),e.settingTriggersEvent&&this[e.triggerFnName](e.settingEvent)}}else if(e.allowSetting&&bA(b)){var p,q,r=Object.keys(b);e.beforeSet(this,b);for(var s=0;s<r.length;s++)if(q=b[p=r[s]],!e.immutableKeys[p])for(var t=0;t<g.length;t++){var u=g[t];e.canSet(u)&&(u._private[e.field][p]=q)}e.updateStyle&&this.updateStyle(),e.onSet(this),e.settingTriggersEvent&&this[e.triggerFnName](e.settingEvent)}else if(e.allowBinding&&by(b))this.on(e.bindingEvent,b);else if(e.allowGetting&&void 0===b)return h&&(e.beforeGet(h),d=h._private[e.field]),d;return this}},removeData:function(a){return a=bW({},{field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!1,immutableKeys:{}},a),function(b){var c=a,d=void 0!==this.length?this:[this];if(bx(b)){for(var e=b.split(/\s+/),f=e.length,g=0;g<f;g++){var h=e[g];if(!bI(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 eX(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){bW(fc,a)});var fd={animate:fc.animate(),animation:fc.animation(),animated:fc.animated(),clearQueue:fc.clearQueue(),delay:fc.delay(),delayAnimation:fc.delayAnimation(),stop:fc.stop()},fe={classes:function(a){if(void 0===a){var b=[];return this[0]._private.classes.forEach(function(a){return b.push(a)}),b}bz(a)||(a=(a||"").match(/\S+/g)||[]);for(var c=[],d=new cK(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){bz(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}};fe.className=fe.classNames=fe.classes;var ff={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:"\"(?:\\\\\"|[^\"])*\"|'(?:\\\\'|[^'])*'",number:bQ,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};for(hT=0,ff.variable="(?:[\\w-.]|(?:\\\\"+ff.metaChar+"))+",ff.className="(?:[\\w-]|(?:\\\\"+ff.metaChar+"))+",ff.value=ff.string+"|"+ff.number,ff.id=ff.variable,hR=ff.comparatorOp.split("|");hT<hR.length;hT++)hS=hR[hT],ff.comparatorOp+="|@"+hS;for(hT=0,hR=ff.comparatorOp.split("|");hT<hR.length;hT++)(hS=hR[hT]).indexOf("!")>=0||"="!==hS&&(ff.comparatorOp+="|\\!"+hS);var fg=function(){return{checks:[]}},fh=[{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*bV(a.selector,b.selector)}),fi=function(){for(var a,b={},c=0;c<fh.length;c++)b[(a=fh[c]).selector]=a.matches;return b}(),fj="("+fh.map(function(a){return a.selector}).join("|")+")",fk=function(a){return a.replace(RegExp("\\\\("+ff.metaChar+")","g"),function(a,b){return b})},fl=function(a,b,c){a[a.length-1]=c},fm=[{name:"group",query:!0,regex:"("+ff.group+")",populate:function(a,b,c){var d=bn(c,1)[0];b.checks.push({type:0,value:"*"===d?d:d+"s"})}},{name:"state",query:!0,regex:fj,populate:function(a,b,c){var d=bn(c,1)[0];b.checks.push({type:7,value:d})}},{name:"id",query:!0,regex:"\\#("+ff.id+")",populate:function(a,b,c){var d=bn(c,1)[0];b.checks.push({type:8,value:fk(d)})}},{name:"className",query:!0,regex:"\\.("+ff.className+")",populate:function(a,b,c){var d=bn(c,1)[0];b.checks.push({type:9,value:fk(d)})}},{name:"dataExists",query:!0,regex:"\\[\\s*("+ff.variable+")\\s*\\]",populate:function(a,b,c){var d=bn(c,1)[0];b.checks.push({type:4,field:fk(d)})}},{name:"dataCompare",query:!0,regex:"\\[\\s*("+ff.variable+")\\s*("+ff.comparatorOp+")\\s*("+ff.value+")\\s*\\]",populate:function(a,b,c){var d=bn(c,3),e=d[0],f=d[1],g=d[2];g=null!=RegExp("^"+ff.string+"$").exec(g)?g.substring(1,g.length-1):parseFloat(g),b.checks.push({type:3,field:fk(e),operator:f,value:g})}},{name:"dataBool",query:!0,regex:"\\[\\s*("+ff.boolOp+")\\s*("+ff.variable+")\\s*\\]",populate:function(a,b,c){var d=bn(c,2),e=d[0],f=d[1];b.checks.push({type:5,field:fk(f),operator:e})}},{name:"metaCompare",query:!0,regex:"\\[\\[\\s*("+ff.meta+")\\s*("+ff.comparatorOp+")\\s*("+ff.number+")\\s*\\]\\]",populate:function(a,b,c){var d=bn(c,3),e=d[0],f=d[1],g=d[2];b.checks.push({type:6,field:fk(e),operator:f,value:parseFloat(g)})}},{name:"nextQuery",separator:!0,regex:ff.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++]=fg()}},{name:"directedEdge",separator:!0,regex:ff.directedEdge,populate:function(a,b){if(null==a.currentSubject){var c=fg(),d=fg();return c.checks.push({type:11,source:b,target:d}),fl(a,b,c),a.edgeCount++,d}var e=fg(),f=fg();return e.checks.push({type:12,source:b,target:f}),fl(a,b,e),a.edgeCount++,f}},{name:"undirectedEdge",separator:!0,regex:ff.undirectedEdge,populate:function(a,b){if(null==a.currentSubject){var c=fg(),d=fg();return c.checks.push({type:10,nodes:[b,d]}),fl(a,b,c),a.edgeCount++,d}var e=fg(),f=fg();return e.checks.push({type:14,node:b,neighbor:f}),fl(a,b,e),f}},{name:"child",separator:!0,regex:ff.child,populate:function(a,b){if(null==a.currentSubject){var c=fg(),d=fg(),e=a[a.length-1];return c.checks.push({type:15,parent:e,child:d}),fl(a,b,c),a.compoundCount++,d}if(a.currentSubject===b){var f=fg(),g=a[a.length-1],h=fg(),i=fg(),j=fg(),k=fg();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}),fl(a,g,f),a.currentSubject=i,a.compoundCount++,j}var l=fg(),n=fg(),o=[{type:17,parent:l,child:n}];return l.checks=b.checks,b.checks=o,a.compoundCount++,n}},{name:"descendant",separator:!0,regex:ff.descendant,populate:function(a,b){if(null==a.currentSubject){var c=fg(),d=fg(),e=a[a.length-1];return c.checks.push({type:16,ancestor:e,descendant:d}),fl(a,b,c),a.compoundCount++,d}if(a.currentSubject===b){var f=fg(),g=a[a.length-1],h=fg(),i=fg(),j=fg(),k=fg();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}),fl(a,g,f),a.currentSubject=i,a.compoundCount++,j}var l=fg(),n=fg(),o=[{type:18,ancestor:l,descendant:n}];return l.checks=b.checks,b.checks=o,a.compoundCount++,n}},{name:"subject",modifier:!0,regex:ff.subject,populate:function(a,b){if(null!=a.currentSubject&&a.currentSubject!==b)return cw("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)}}];fm.forEach(function(a){return a.regexObj=RegExp("^"+a.regex)});var fn=function(a){for(var b,c,d,e=0;e<fm.length;e++){var f=fm[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}},fo=function(a){var b=a.match(/^\s+/);if(b){var c=b[0];a=a.substring(c.length)}return a},fp=function(a,b,c){var d,e,f,g=bx(a),h=bB(a),i=bx(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},fq=function(a,b){switch(b){case"?":return!!a;case"!":return!a;case"^":return void 0===a}},fr=function(a,b){return a.data(b)},fs=[],ft=function(a,b){return a.checks.every(function(a){return fs[a.type](a,b)})};fs[0]=function(a,b){var c=a.value;return"*"===c||c===b.group()},fs[7]=function(a,b){var c;return c=a.value,fi[c](b)},fs[8]=function(a,b){var c=a.value;return b.id()===c},fs[9]=function(a,b){var c=a.value;return b.hasClass(c)},fs[6]=function(a,b){var c=a.field,d=a.operator,e=a.value;return fp(b[c](),d,e)},fs[3]=function(a,b){var c=a.field,d=a.operator,e=a.value;return fp(fr(b,c),d,e)},fs[5]=function(a,b){var c=a.field,d=a.operator;return fq(fr(b,c),d)},fs[4]=function(a,b){var c=a.field;return a.operator,void 0!==fr(b,c)},fs[10]=function(a,b){var c=a.nodes[0],d=a.nodes[1],e=b.source(),f=b.target();return ft(c,e)&&ft(d,f)||ft(d,e)&&ft(c,f)},fs[14]=function(a,b){return ft(a.node,b)&&b.neighborhood().some(function(b){return b.isNode()&&ft(a.neighbor,b)})},fs[11]=function(a,b){return ft(a.source,b.source())&&ft(a.target,b.target())},fs[12]=function(a,b){return ft(a.source,b)&&b.outgoers().some(function(b){return b.isNode()&&ft(a.target,b)})},fs[13]=function(a,b){return ft(a.target,b)&&b.incomers().some(function(b){return b.isNode()&&ft(a.source,b)})},fs[15]=function(a,b){return ft(a.child,b)&&ft(a.parent,b.parent())},fs[17]=function(a,b){return ft(a.parent,b)&&b.children().some(function(b){return ft(a.child,b)})},fs[16]=function(a,b){return ft(a.descendant,b)&&b.ancestors().some(function(b){return ft(a.ancestor,b)})},fs[18]=function(a,b){return ft(a.ancestor,b)&&b.descendants().some(function(b){return ft(a.descendant,b)})},fs[19]=function(a,b){return ft(a.subject,b)&&ft(a.left,b)&&ft(a.right,b)},fs[20]=function(){return!0},fs[1]=function(a,b){return a.value.has(b)},fs[2]=function(a,b){return(0,a.value)(b)};var fu=function(a){this.inputText=a,this.currentSubject=null,this.compoundCount=0,this.edgeCount=0,this.length=0,null==a||bx(a)&&a.match(/^\s*$/)||(bD(a)?this.addQuery({checks:[{type:1,value:a.collection()}]}):by(a)?this.addQuery({checks:[{type:2,value:a}]}):bx(a)?this.parse(a)||(this.invalid=!0):cu("A selector must be created from a string; found "))},fv=fu.prototype;[{parse:function(a){var b=this.inputText=a,c=this[0]=fg();for(this.length=1,b=fo(b);;){var d=fn(b);if(null==d.expr)return cw("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 cw("The selector `"+a+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(i.edgeCount>1)return cw("The selector `"+a+"` is invalid because it uses multiple edge selectors"),!1;1===i.edgeCount&&cw("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 bx(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(ft(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(ft(b[c],a))return!0;return!1};return null==b.text()&&(c=function(){return!0}),a.filter(c)}}].forEach(function(a){return bW(fv,a)}),fv.text=function(){return this.inputText},fv.size=function(){return this.length},fv.eq=function(a){return this[a]},fv.sameText=function(a){return!this.invalid&&!a.invalid&&this.text()===a.text()},fv.addQuery=function(a){this[this.length++]=a},fv.selector=fv.toString;var fw={allAre:function(a){var b=new fu(a);return this.every(function(a){return b.matches(a)})},is:function(a){var b=new fu(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())})}};fw.allAreNeighbours=fw.allAreNeighbors,fw.has=fw.contains,fw.equal=fw.equals=fw.same;var fx=function(a,b){return function(c,d,e,f){if(null==c?g="":bD(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=cj(g),l=j[k];return l||(j[k]=a.call(this,c,d,e,f))}},fy={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:fx(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 fz(a,b,c,d){for(var e=[],f=new cK,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 fA(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 fB(a,b,c){if(c.isChild()){var d=c._private.parent;b.has(d.id())||a.push(d)}}function fC(a,b,c){fB(a,b,c),fA(a,b,c)}fy.forEachDown=function(a){var b=!(arguments.length>1)||void 0===arguments[1]||arguments[1];return fz(this,a,b,fA)},fy.forEachUp=function(a){var b=!(arguments.length>1)||void 0===arguments[1]||arguments[1];return fz(this,a,b,fB)},fy.forEachUpAndDown=function(a){var b=!(arguments.length>1)||void 0===arguments[1]||arguments[1];return fz(this,a,b,fC)},fy.ancestors=fy.parents,(j0=j1={data:fc.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:fc.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),scratch:fc.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:fc.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),rscratch:fc.data({field:"rscratch",allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!0}),removeRscratch:fc.removeData({field:"rscratch",triggerEvent:!1}),id:function(){var a=this[0];if(a)return a._private.data.id}}).attr=j0.data,j0.removeAttr=j0.removeData;var fD={};function fE(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 fF(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}}bW(fD,{degree:fE(function(a,b){return b.source().same(b.target())?2:1}),indegree:fE(function(a,b){return+!!b.target().same(a)}),outdegree:fE(function(a,b){return+!!b.source().same(a)})}),bW(fD,{minDegree:fF("degree",function(a,b){return a<b}),maxDegree:fF("degree",function(a,b){return a>b}),minIndegree:fF("indegree",function(a,b){return a<b}),maxIndegree:fF("indegree",function(a,b){return a>b}),minOutdegree:fF("outdegree",function(a,b){return a<b}),maxOutdegree:fF("outdegree",function(a,b){return a>b})}),bW(fD,{totalDegree:function(a){for(var b=0,c=this.nodes(),d=0;d<c.length;d++)b+=c[d].degree(a);return b}});var fG=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()}}},fH={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){fG(a,b,!1)},onSet:function(a){a.dirtyCompoundBoundsCache()},canSet:function(a){return!a.locked()}};(j2=j3={position:fc.data(fH),silentPosition:fc.data(bW({},fH,{allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!1,beforeSet:function(a,b){fG(a,b,!0)},onSet:function(a){a.dirtyCompoundBoundsCache()}})),positions:function(a,b){if(bA(a))b?this.silentPosition(a):this.position(a);else if(by(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(bA(a)?(d={x:bB(a.x)?a.x:0,y:bB(a.y)?a.y:0},c=b):bx(a)&&bB(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 bA(a)?this.shift(a,!0):bx(a)&&bB(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=bA(a)?a:void 0,h=void 0!==g||void 0!==b&&bx(a);if(c&&c.isNode())if(!h)return(g=cY(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(cZ(g,e,f))}else if(!h)return;return this},relativePosition:function(a,b){var c=this[0],d=this.cy(),e=bA(a)?a:void 0,f=void 0!==e||void 0!==b&&bx(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=j2.point=j2.position,j2.modelPositions=j2.points=j2.positions,j2.renderedPoint=j2.renderedPosition,j2.relativePoint=j2.relativePosition,j4=j5={},j5.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}},j5.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},j5.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 fI=function(a){return a===1/0||a===-1/0?0:a},fJ=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)},fK=function(a,b){return null==b?a:fJ(a,b.x1,b.y1,b.x2,b.y2)},fL=function(a,b,c){return cF(a,b,c)},fM=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,dh(j,1),fJ(a,j.x1,j.y1,j.x2,j.y2)}}},fN=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=fL(e,"labelWidth",c),o=fL(e,"labelHeight",c),p=fL(e,"labelX",c),q=fL(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?fL(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,fJ(a,g,i,h,j),fJ(d.labelBounds.all,g,i,h,j)}return a}},fO=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;fP(a,b,c,d,"outside",d/2)}},fP=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),fK(a,i.miterBounds(k,l,n,o,d))):null!=f&&f>0&&di(a,[f,f,f,f])}},fQ=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;fP(a,b,c,d,e)}},fR=function(a,b){var c=a._private.cy,d=c.styleEnabled(),e=c.headless(),f=dd(),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,fJ(f,v,x=A-u,w,y=A+u),d&&fO(f,a),d&&b.includeOutlines&&!e&&fO(f,a),d&&fQ(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,fJ(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}fJ(f,v-r,x-r,w+r,y+r)}}else if("bezier"===C||"unbundled-bezier"===C||bP(C,"segments")||bP(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,fJ(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 L=x;x=y,y=L}v-=r,w+=r,fJ(f,v,x-=r,w,y+=r)}if(d&&b.includeEdges&&i&&(fM(f,a,"mid-source"),fM(f,a,"mid-target"),fM(f,a,"source"),fM(f,a,"target")),d&&"yes"===a.pstyle("ghost").value){var M=a.pstyle("ghost-offset-x").pfValue,N=a.pstyle("ghost-offset-y").pfValue;fJ(f,f.x1+M,f.y1+N,f.x2+M,f.y2+N)}var O=g.bodyBounds=g.bodyBounds||{};dj(O,f),di(O,k),dh(O,1),d&&(v=f.x1,w=f.x2,x=f.y1,y=f.y2,fJ(f,v-q,x-q,w+q,y+q));var P=g.overlayBounds=g.overlayBounds||{};dj(P,f),di(P,k),dh(P,1);var Q=g.labelBounds=g.labelBounds||{};null!=Q.all?de(Q.all):Q.all=dd(),d&&b.includeLabels&&(b.includeMainLabels&&fN(f,a,null),i&&(b.includeSourceLabels&&fN(f,a,"source"),b.includeTargetLabels&&fN(f,a,"target")))}return f.x1=fI(f.x1),f.y1=fI(f.y1),f.x2=fI(f.x2),f.y2=fI(f.y2),f.w=fI(f.x2-f.x1),f.h=fI(f.y2-f.y1),f.w>0&&f.h>0&&n&&(di(f,k),dh(f,1)),f},fS=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)},fT=function(a){var b=function(a){return Math.round(a)};if(a.isEdge()){var c=a.source().position(),d=a.target().position();return ci([b(c.x),b(c.y),b(d.x),b(d.y)])}var e=a.position();return ci([b(e.x),b(e.y)])},fU=function(a,b){var c,d=a._private,e=a.isEdge(),f=null==b?fW:fS(b);if(null==d.bbCache?(d.bbCache=c=fR(a,fV),d.bbCachePosKey=fT(a)):c=d.bbCache,f!==fW){var g=a.isNode();c=dd(),(b.includeNodes&&g||b.includeEdges&&!g)&&(b.includeOverlays?fK(c,d.overlayBounds):fK(c,d.bodyBounds)),b.includeLabels&&(b.includeMainLabels&&(!e||b.includeSourceLabels&&b.includeTargetLabels)?fK(c,d.labelBounds.all):(b.includeMainLabels&&fK(c,d.labelBounds.mainRot),b.includeSourceLabels&&fK(c,d.labelBounds.sourceRot),b.includeTargetLabels&&fK(c,d.labelBounds.targetRot))),c.w=c.x2-c.x1,c.h=c.y2-c.y1}return c},fV={includeNodes:!0,includeEdges:!0,includeLabels:!0,includeMainLabels:!0,includeSourceLabels:!0,includeTargetLabels:!0,includeOverlays:!0,includeUnderlays:!0,includeOutlines:!0,useCache:!0},fW=fS(fV),fX=cB(fV);j5.boundingBox=function(a){var b,c=void 0===a||void 0===a.useCache||!0===a.useCache,d=bK(function(a){var b=a._private;return null==b.bbCache||b.styleDirty||b.bbCachePosKey!==fT(a)},function(a){return a.id()});if(c&&1===this.length&&!d(this[0]))a=void 0===a?fV:fX(a),b=fU(this[0],a);else{b=dd();var e=fX(a=a||fV),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(),fK(b,fU(h,e))}}return b.x1=fI(b.x1),b.y1=fI(b.y1),b.x2=fI(b.x2),b.y2=fI(b.y2),b.w=fI(b.x2-b.x1),b.h=fI(b.y2-b.y1),b},j5.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},j5.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)),bA(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},j4.boundingbox=j4.bb=j4.boundingBox,j4.renderedBoundingbox=j4.renderedBoundingBox,j6=j7={};var fY=function(a){a.uppercaseName=bO(a.name),a.autoName="auto"+a.uppercaseName,a.labelName="label"+a.uppercaseName,a.outerName="outer"+a.uppercaseName,a.uppercaseOuterName=bO(a.outerName),j6[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}},j6["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()}},j6["rendered"+a.uppercaseName]=function(){var b=this[0];if(b)return b[a.name]()*this.cy().zoom()},j6["rendered"+a.uppercaseOuterName]=function(){var b=this[0];if(b)return b[a.outerName]()*this.cy().zoom()}};fY({name:"width"}),fY({name:"height"}),j7.padding=function(){var a=this[0],b=a._private;return a.isParent()&&(a.updateCompoundBounds(),void 0!==b.autoPadding)?b.autoPadding:a.pstyle("padding").pfValue},j7.paddedHeight=function(){var a=this[0];return a.height()+2*a.padding()},j7.paddedWidth=function(){var a=this[0];return a.width()+2*a.padding()};var fZ=function(a,b){if(a.isEdge()&&a.takesUpSpace())return b(a)},f$=function(a,b){if(a.isEdge()&&a.takesUpSpace()){var c=a.cy();return cY(b(a),c.zoom(),c.pan())}},f_=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 cY(a,e,d)})}},f0={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)}}},f1=bW({},j3,j5,j7,Object.keys(f0).reduce(function(a,b){var c=f0[b],d="rendered"+b[0].toUpperCase()+b.substr(1);return a[b]=function(){return fZ(this,c.get)},c.mult?a[d]=function(){return f_(this,c.get)}:a[d]=function(){return f$(this,c.get)},a},{})),f2=function(a,b){this.recycle(a,b)};function f3(){return!1}function f4(){return!0}f2.prototype={instanceString:function(){return"event"},recycle:function(a,b){if(this.isImmediatePropagationStopped=this.isPropagationStopped=this.isDefaultPrevented=f3,null!=a&&a.preventDefault?(this.type=a.type,this.isDefaultPrevented=a.defaultPrevented?f4:f3):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=f4;var a=this.originalEvent;a&&a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.isPropagationStopped=f4;var a=this.originalEvent;a&&a.stopPropagation&&a.stopPropagation()},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=f4,this.stopPropagation()},isDefaultPrevented:f3,isPropagationStopped:f3,isImmediatePropagationStopped:f3};var f5=/^([^.]+)(\.(?:[^.]+))?$/,f6={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},f7=Object.keys(f6),f8={};function f9(){for(var a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:f8,b=arguments.length>1?arguments[1]:void 0,c=0;c<f7.length;c++){var d=f7[c];this[d]=a[d]||f6[d]}this.context=b||this.context,this.listeners=[],this.emitting=0}var ga=f9.prototype,gb=function(a,b,c,d,e,f,g){by(d)&&(e=d,d=null),g&&(f=null==f?g:bW({},f,g));for(var h=bz(c)?c:c.split(/\s+/),i=0;i<h.length;i++){var j=h[i];if(!bI(j)){var k=j.match(f5);if(k&&!1===b(a,j,k[1],k[2]?k[2]:null,d,e,f))break}}},gc=function(a,b){return a.addEventFields(a.context,b),new f2(b.type,b)},gd=function(a,b,c){if("event"===bw(c))return void b(a,c);if(bA(c))return void b(a,gc(a,c));for(var d=bz(c)?c:c.split(/\s+/),e=0;e<d.length;e++){var f=d[e];if(!bI(f)){var g=f.match(f5);if(g){var h=gc(a,{type:g[1],namespace:g[2]?g[2]:null,target:a.context});b(a,h)}}}};ga.on=ga.addListener=function(a,b,c,d,e){return gb(this,function(a,b,c,d,e,f,g){by(f)&&a.listeners.push({event:b,callback:f,type:c,namespace:d,qualifier:e,conf:g})},a,b,c,d,e),this},ga.one=function(a,b,c,d){return this.on(a,b,c,d,{one:!0})},ga.removeListener=ga.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];gb(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},ga.removeAllListeners=function(){return this.removeListener("*")},ga.emit=ga.trigger=function(a,b,c){var d=this.listeners,e=d.length;return this.emitting++,bz(b)||(b=[b]),gd(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&&cE(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 ge={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&&bE(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()}},gf=function(a){return bx(a)?new fu(a):a},gg={createEmitter:function(){for(var a=0;a<this.length;a++){var b=this[a],c=b._private;c.emitter||(c.emitter=new f9(ge,b))}return this},emitter:function(){return this._private.emitter},on:function(a,b,c){for(var d=gf(b),e=0;e<this.length;e++)this[e].emitter().on(a,d,c);return this},removeListener:function(a,b,c){for(var d=gf(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=gf(b),e=0;e<this.length;e++)this[e].emitter().one(a,d,c);return this},once:function(a,b,c){for(var d=gf(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}};fc.eventAliasesOn(gg);var gh={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(bx(a)||bD(a))return new fu(a).filter(this);if(by(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;bx(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(bx(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;bx(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;bx(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(bx(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&&bx(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&&bx(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}}};gh.u=gh["|"]=gh["+"]=gh.union=gh.or=gh.add,gh["\\"]=gh["!"]=gh["-"]=gh.difference=gh.relativeComplement=gh.subtract=gh.not,gh.n=gh["&"]=gh["."]=gh.and=gh.intersection=gh.intersect,gh["^"]=gh["(+)"]=gh["(-)"]=gh.symmetricDifference=gh.symdiff=gh.xor,gh.fnFilter=gh.filterFn=gh.stdFilter=gh.filter,gh.complement=gh.abscomp=gh.absoluteComplement;var gi=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?cp: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()},gj={forEach:function(a,b){if(by(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(!by(a))return this;var b=this.toArray().sort(a);return this.spawn(b)},sortByZIndex:function(){return this.sort(gi)},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:cp-1}var d=b.source,e=b.target;return Math.max(d.zDepth(),e.zDepth(),0)}}};gj.each=gj.forEach,("undefined"==typeof Symbol?"undefined":bq(Symbol))!="undefined"&&"undefined"!=bq(Symbol.iterator)&&(gj[Symbol.iterator]=function(){var a=this,b={value:void 0,done:!1},c=0,d=this.length;return bm({next:function(){return c<d?b.value=a[c++]:(b.value=void 0,b.done=!0),b}},Symbol.iterator,function(){return this})});var gk=cB({nodeDimensionsIncludeLabels:!1}),gl={layoutDimensions:function(a){if(a=gk(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=bK(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=dd(),b=0;b<d.length;b++){var c=h(d[b],b);dg(a,c.x,c.y)}return a}(),l=bK(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}),eX.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(bW({},a,{eles:this}))}};function gm(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 gn(a,b){return a=cj(a),function(c){return gm(a,b,c)}}function go(a,b){a=cj(a);var c=function(a){return b.call(a)};return function(){var b=this[0];if(b)return gm(a,c,b)}}gl.createLayout=gl.makeLayout=gl.layout;var gp={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(bA(a))d.applyBypass(this,a,!1),this.emitAndNotify("style");else if(bx(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 gq(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 gr(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||gq(e,d);var h=g.source,i=g.target;return c(h)&&(!f||gq(h,c))&&(h===i||c(i)&&(!f||gq(i,c)))}}}var gs=gn("eleTakesUpSpace",function(a){return"element"===a.pstyle("display").value&&0!==a.width()&&(!a.isNode()||0!==a.height())});gp.takesUpSpace=go("takesUpSpace",gr({ok:gs})),gp.interactive=go("interactive",gr({ok:gn("eleInteractive",function(a){return"yes"===a.pstyle("events").value&&"visible"===a.pstyle("visibility").value&&gs(a)}),parentOk:gn("parentInteractive",function(a){return"visible"===a.pstyle("visibility").value&&gs(a)}),edgeOkViaNode:gs})),gp.noninteractive=function(){var a=this[0];if(a)return!a.interactive()},gp.visible=go("visible",gr({ok:gn("eleVisible",function(a){return"visible"===a.pstyle("visibility").value&&0!==a.pstyle("opacity").pfValue&&gs(a)}),edgeOkViaNode:gs})),gp.hidden=function(){var a=this[0];if(a)return!a.visible()},gp.isBundledBezier=go("isBundledBezier",function(){return!!this.cy().styleEnabled()&&!this.removed()&&"bezier"===this.pstyle("curve-style").value&&this.takesUpSpace()}),gp.bypass=gp.css=gp.style,gp.renderedCss=gp.renderedStyle,gp.removeBypass=gp.removeCss=gp.removeStyle,gp.pstyle=gp.parsedStyle;var gt={};function gu(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&&by(b[0])){var f=b[0];this.on(a.event,f)}else if(0===b.length||1===b.length&&bz(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 gv(a){gt[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]}},gt[a.on]=gu({event:a.on,field:a.field,ableField:a.ableField,overrideAble:a.overrideAble,value:!0}),gt[a.off]=gu({event:a.off,field:a.field,ableField:a.ableField,overrideAble:a.overrideAble,value:!1})}gv({field:"locked",overrideField:function(a){return!!a.cy().autolock()||void 0},on:"lock",off:"unlock"}),gv({field:"grabbable",overrideField:function(a){return!(a.cy().autoungrabify()||a.pannable())&&void 0},on:"grabify",off:"ungrabify"}),gv({field:"selected",ableField:"selectable",overrideAble:function(a){return!a.cy().autounselectify()&&void 0},on:"select",off:"unselect"}),gv({field:"selectable",overrideField:function(a){return!a.cy().autounselectify()&&void 0},on:"selectify",off:"unselectify"}),gt.deselect=gt.unselect,gt.grabbed=function(){var a=this[0];if(a)return a._private.grabbed},gv({field:"active",on:"activate",off:"unactivate"}),gv({field:"pannable",on:"panify",off:"unpanify"}),gt.inactive=function(){var a=this[0];if(a)return!a._private.active};var gw={},gx=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)}},gy=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)}},gz=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 gA(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 gB(a){return function(b){var c=[],d=this._private.cy,e=a||{};bx(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 gC(a){return a=bW({},{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)}}gw.clearTraversalCache=function(){for(var a=0;a<this.length;a++)this[a]._private.traversalCache=null},bW(gw,{roots:gx({noIncomingEdges:!0}),leaves:gx({noOutgoingEdges:!0}),outgoers:fx(gy({outgoing:!0}),"outgoers"),successors:gz({outgoing:!0}),incomers:fx(gy({incoming:!0}),"incomers"),predecessors:gz({})}),bW(gw,{neighborhood:fx(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)}}),gw.neighbourhood=gw.neighborhood,gw.closedNeighbourhood=gw.closedNeighborhood,gw.openNeighbourhood=gw.openNeighborhood,bW(gw,{source:fx(function(a){var b,c=this[0];return c&&(b=c._private.source||c.cy().collection()),b&&a?b.filter(a):b},"source"),target:fx(function(a){var b,c=this[0];return c&&(b=c._private.target||c.cy().collection()),b&&a?b.filter(a):b},"target"),sources:gA({attr:"source"}),targets:gA({attr:"target"})}),bW(gw,{edgesWith:fx(gB(),"edgesWith"),edgesTo:fx(gB({thisIsSrc:!0}),"edgesTo")}),bW(gw,{connectedEdges:fx(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:fx(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:fx(gC(),"parallelEdges"),codirectedEdges:fx(gC({codirected:!0}),"codirectedEdges")}),bW(gw,{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]}}),gw.componentsOf=gw.components;var gD=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 cu("A collection must have a reference to the core");var e=new cI,f=!1;if(b){if(b.length>0&&bA(b[0])&&!bE(b[0])){f=!0;for(var g=[],h=new cK,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=cy();else if(a.hasElementWithId(l.id)||h.has(l.id))continue;var n=new cL(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 cI,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()},gE=cL.prototype=gD.prototype=Object.create(Array.prototype);gE.instanceString=function(){return"collection"},gE.spawn=function(a,b){return new gD(this.cy(),a,b)},gE.spawnSelf=function(){return this.spawn(this)},gE.cy=function(){return this._private.cy},gE.renderer=function(){return this._private.cy.renderer()},gE.element=function(){return this[0]},gE.collection=function(){return bF(this)?this:new gD(this._private.cy,[this])},gE.unique=function(){return new gD(this._private.cy,this,!0)},gE.hasElementWithId=function(a){return a=""+a,this._private.map.has(a)},gE.getElementById=function(a){a=""+a;var b=this._private.cy,c=this._private.map.get(a);return c?c.ele:new gD(b)},gE.$id=gE.getElementById,gE.poolIndex=function(){var a=this._private.cy._private.elements,b=this[0]._private.data.id;return a._private.map.get(b).index},gE.indexOf=function(a){var b=a[0]._private.data.id;return this._private.map.get(b).index},gE.indexOfId=function(a){return a=""+a,this._private.map.get(a).index},gE.json=function(a){var b=this.element(),c=this.cy();if(null==b&&a)return this;if(null!=b){var d=b._private;if(bA(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:cx(d.data),position:cx(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}}},gE.jsons=function(){for(var a=[],b=0;b<this.length;b++){var c=this[b].json();a.push(c)}return a},gE.clone=function(){for(var a=this.cy(),b=[],c=0;c<this.length;c++){var d=new cL(a,this[c].json(),!1);b.push(d)}return new gD(a,b)},gE.copy=gE.clone,gE.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))}F=e.concat(f);var j=function(){F.splice(G,1),G--};for(G=0;G<F.length;G++){var k=F[G],l=k._private,n=l.data;if(k.clearTraversalCache(),b||l.removed){if(void 0===n.id)n.id=cy();else if(bB(n.id))n.id=""+n.id;else if(bI(n.id)||!bx(n.id)){cu("Can not create element with invalid string ID `"+n.id+"`"),j();continue}else if(c.hasElementWithId(n.id)){cu("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,t=0;t<r;t++){var u=q[t],v=n[u];bB(v)&&(v=n[u]=""+n[u]),null==v||""===v?(cu("Can not create edge `"+o+"` with unspecified "+u),s=!0):c.hasElementWithId(v)||(cu("Can not create edge `"+o+"` with nonexistant "+u+" `"+v+"`"),s=!0)}if(s){j();continue}var w=c.getElementById(n.source),x=c.getElementById(n.target);w.same(x)?w._private.edges.push(k):(w._private.edges.push(k),x._private.edges.push(k)),k._private.source=w,k._private.target=x}l.map=new cI,l.map.set(o,{ele:k,index:0}),l.removed=!1,b&&c.addToPool(k)}for(var y=0;y<e.length;y++){var z=e[y],A=z._private.data;bB(A.parent)&&(A.parent=""+A.parent);var B=A.parent;if(null!=B||z._private.parent){var C=z._private.parent?c.collection().merge(z._private.parent):c.getElementById(B);if(C.empty())A.parent=void 0;else if(C[0].removed())cw("Node added with missing parent, reference to parent removed"),A.parent=void 0,z._private.parent=null;else{for(var D=!1,E=C;!E.empty();){if(z.same(E)){D=!0,A.parent=void 0;break}E=E.parent()}D||(C[0]._private.children.push(z),z._private.parent=C[0],d.hasCompoundNodes=!0)}}}if(F.length>0){for(var F,G,H,I=F.length===this.length?this:new gD(c,F),J=0;J<I.length;J++){var K=I[J];K.isNode()||(K.parallelEdges().clearTraversalCache(),K.source().clearTraversalCache(),K.target().clearTraversalCache())}(d.hasCompoundNodes?c.collection().merge(I).merge(I.connectedNodes()).merge(I.parent()):I).dirtyCompoundBoundsCache().dirtyBoundingBoxCache().updateStyle(a),a?I.emitAndNotify("add"):b&&I.emit("add")}return this},gE.removed=function(){var a=this[0];return a&&a._private.removed},gE.inside=function(){var a=this[0];return a&&!a._private.removed},gE.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){cC(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();cC(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 gD(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},gE.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},[eQ,fd,fe,fw,fy,j1,fD,f1,gg,gh,{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}},gj,gl,gp,gt,gw].forEach(function(a){bW(gE,a)});var gF=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}}(),gG=function(a,b,c,d){var e=function(a,b,c,d){var e="undefined"!=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)}},gH={linear:function(a,b,c){return a+(b-a)*c},ease:gG(.25,.1,.25,1),"ease-in":gG(.42,0,1,1),"ease-out":gG(0,0,.58,1),"ease-in-out":gG(.42,0,.58,1),"ease-in-sine":gG(.47,0,.745,.715),"ease-out-sine":gG(.39,.575,.565,1),"ease-in-out-sine":gG(.445,.05,.55,.95),"ease-in-quad":gG(.55,.085,.68,.53),"ease-out-quad":gG(.25,.46,.45,.94),"ease-in-out-quad":gG(.455,.03,.515,.955),"ease-in-cubic":gG(.55,.055,.675,.19),"ease-out-cubic":gG(.215,.61,.355,1),"ease-in-out-cubic":gG(.645,.045,.355,1),"ease-in-quart":gG(.895,.03,.685,.22),"ease-out-quart":gG(.165,.84,.44,1),"ease-in-out-quart":gG(.77,0,.175,1),"ease-in-quint":gG(.755,.05,.855,.06),"ease-out-quint":gG(.23,1,.32,1),"ease-in-out-quint":gG(.86,0,.07,1),"ease-in-expo":gG(.95,.05,.795,.035),"ease-out-expo":gG(.19,1,.22,1),"ease-in-out-expo":gG(1,0,0,1),"ease-in-circ":gG(.6,.04,.98,.335),"ease-out-circ":gG(.075,.82,.165,1),"ease-in-out-circ":gG(.785,.135,.15,.86),spring:function(a,b,c){if(0===c)return gH.linear;var d=gF(a,b,c);return function(a,b,c){return a+(b-a)*d(c)}},"cubic-bezier":gG};function gI(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 gJ(a,b){return null==a.pfValue&&null==a.value?a:null!=a.pfValue&&(null==b||"%"!==b.type.units)?a.pfValue:a.value}function gK(a,b,c,d,e){var f=null!=e?e.type:null;c<0?c=0:c>1&&(c=1);var g=gJ(a,e),h=gJ(b,e);if(bB(g)&&bB(h))return gI(f,g,h,c,d);if(bz(g)&&bz(h)){for(var i=[],j=0;j<h.length;j++){var k=g[j],l=h[j];if(null!=k&&null!=l){var n=gI(f,k,l,c,d);i.push(n)}else i.push(l)}return i}}function gL(a,b){return null!=a&&null!=b&&(!!(bB(a)&&bB(b))||!!a&&!!b)}function gM(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=gH.linear:(e=bx(l)?o.parse("transition-timing-function",l).value:l,bx(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=gH[f].apply(null,g)):k.easingImpl=gH[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={};gL(q.x,r.x)&&(s.x=gK(q.x,r.x,h,p)),gL(q.y,r.y)&&(s.y=gK(q.y,r.y,h,p)),a.position(s)}var t=k.startPan,u=k.pan,v=j.pan,w=null!=u&&d;w&&(gL(t.x,u.x)&&(v.x=gK(t.x,u.x,h,p)),gL(t.y,u.y)&&(v.y=gK(t.y,u.y,h,p)),a.emit("pan"));var x=k.startZoom,y=k.zoom,z=null!=y&&d;z&&(gL(x,y)&&(j.zoom=dc(j.minZoom,gK(x,y,h,p),j.maxZoom)),a.emit("zoom")),(w||z)&&a.emit("viewport");var A=k.style;if(A&&A.length>0&&i){for(var B=0;B<A.length;B++){var C=A[B],D=C.name,E=k.startStyle[D],F=o.properties[E.name],G=gK(E,C,h,p,F);o.overrideBypass(a,D,G)}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 gN={animate:fc.animate(),animation:fc.animation(),animated:fc.animated(),clearQueue:fc.clearQueue(),delay:fc.delay(),delayAnimation:fc.delayAnimation(),stop:fc.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){gM(c,a)},b.beforeRenderPriorities.animations):function b(){a._private.animationsRunning&&cc(function(c){gM(c,a),b()})}()}}},gO={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&&bE(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}},gP=function(a){return bx(a)?new fu(a):a},gQ={createEmitter:function(){var a=this._private;return a.emitter||(a.emitter=new f9(gO,this)),this},emitter:function(){return this._private.emitter},on:function(a,b,c){return this.emitter().on(a,gP(b),c),this},removeListener:function(a,b,c){return this.emitter().removeListener(a,gP(b),c),this},removeAllListeners:function(){return this.emitter().removeAllListeners(),this},one:function(a,b,c){return this.emitter().one(a,gP(b),c),this},once:function(a,b,c){return this.emitter().one(a,gP(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}};fc.eventAliasesOn(gQ);var gR={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)}};gR.jpeg=gR.jpg;var gS={layout:function(a){if(null==a)return void cu("Layout options must be specified to make a layout");if(null==a.name)return void cu("A `name` must be specified to make a layout");var b,c=a.name,d=this.extension("layout",c);return null==d?void cu("No such layout `"+c+"` found. Did you forget to import it and `cytoscape.use()` it?"):(b=bx(a.eles)?this.$(a.eles):null!=a.eles?a.eles:this.$(),new d(bW({},a,{cy:this,eles:b})))}};gS.createLayout=gS.makeLayout=gS.layout;var gT=cB({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]}),gU={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 cu("Can not initialise: No such renderer `".concat(a.name,"` found. Did you forget to import it and `cytoscape.use()` it?"));void 0!==a.wheelSensitivity&&cw("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=gT(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)}};gU.invalidateDimensions=gU.resize;var gV={collection:function(a,b){return bx(a)?this.$(a):bD(a)?a.collection():bz(a)?(b||(b={}),new gD(this,a,b.unique,b.removed)):new gD(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}};gV.elements=gV.filter=gV.$;var gW={};gW.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},gW.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},gW.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}},gW.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},gW.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}},gW.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]=ce(a,b.styleKeys[c][0])},n=function(a,c){return b.styleKeys[c][1]=cf(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]=ce(G[0],D[0]),D[1]=cf(G[1],D[1])}b.styleKey=2097152*D[0]+D[1];var H=b.styleKeys;b.labelDimsKey=cg(H.labelDimensions);var I=f(a,["label"],H.labelDimensions);if(b.labelKey=cg(I),b.labelStyleKey=cg(ch(H.commonLabel,I)),!h){var J=f(a,["source-label"],H.labelDimensions);b.sourceLabelKey=cg(J),b.sourceLabelStyleKey=cg(ch(H.commonLabel,J));var K=f(a,["target-label"],H.labelDimensions);b.targetLabelKey=cg(K),b.targetLabelStyleKey=cg(ch(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=cg([M,N,O,P,Q,R,S].filter(function(a){return null!=a}).reduce(ch,[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},gW.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},gW.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(){cw("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(!bB(t))return cw("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],x=d.valueMax[0],y=d.valueMin[1],z=d.valueMax[1],A=d.valueMin[2],B=d.valueMax[2],C=null==d.valueMin[3]?1:d.valueMin[3],D=[Math.round(w+(x-w)*r),Math.round(y+(z-y)*r),Math.round(A+(B-A)*r),Math.round(C+((null==d.valueMax[3]?1:d.valueMax[3])-C)*r)];q={bypass:d.bypass,name:d.name,value:D,strValue:"rgb("+D[0]+", "+D[1]+", "+D[2]+")"}}else{if(!g.number)return!1;var E=d.valueMin+(d.valueMax-d.valueMin)*r;q=this.parse(d.name,E,d.bypass,l)}if(!q)return p(),!1;q.mapping=d,d=q;break;case f.data:for(var F=d.field.split("."),G=k.data,H=0;H<F.length&&G;H++)G=G[F[H]];if(null!=G&&(q=this.parse(d.name,G,d.bypass,l)),!q)return p(),!1;q.mapping=d,d=q;break;case f.fn:var I=d.value,J=null!=d.fnValue?d.fnValue:I(a);if(d.prevFnValue=J,null==J)return cw("Custom function mappers may not return null (i.e. `"+d.name+"` for ele `"+a.id()+"` is null)"),!1;if(!(q=this.parse(d.name,J,d.bypass,l)))return cw("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=cx(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},gW.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={}}},gW.update=function(){this._private.cy.mutableElements().updateStyle()},gW.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&&(bB(o.pfValue)&&bB(p.pfValue)?(q=p.pfValue-o.pfValue,r=o.pfValue+1e-6*q):bB(o.value)&&bB(p.value)?(q=p.value-o.value,r=o.value+1e-6*q):bz(o.value)&&bz(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 eX(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)},gW.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)},gW.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)})},gW.checkBoundsTrigger=function(a,b,c,d){this.checkTrigger(a,b,c,d,function(a){return a.triggersBounds},function(b){a.dirtyCompoundBoundsCache(),a.dirtyBoundingBoxCache()})},gW.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()})})},gW.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()})})},gW.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 gX={};gX.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(bx(b)){var i=this.parse(b,c,!0);i&&e.push(i)}else{if(!bA(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[bM(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={},t=void 0,u=0;u<e.length;u++){var v=e[u];if(d){var w=r.pstyle(v.name);t=s[v.name]={prev:w}}p=this.applyParsedProperty(r,cx(v))||p,d&&(t.next=r.pstyle(v.name))}p&&this.updateStyleHints(r),d&&this.updateTransitions(r,s,!0)}return p},gX.overrideBypass=function(a,b,c){b=bL(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)}},gX.removeAllBypasses=function(a,b){return this.removeBypasses(a,this.propertyNames,b)},gX.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 gY={};gY.getEmSizeInPixels=function(){var a=this.containerCss("font-size");return null!=a?parseFloat(a):1},gY.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 gZ={};gZ.getRenderedStyle=function(a,b){return b?this.getStylePropertyValue(a,b,!0):this.getRawStyle(a,!0)},gZ.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[bM(e.name)]=f)}return c}},gZ.getIndexedStyle=function(a,b,c,d){var e=a.pstyle(b)[c][d];return null!=e?e:a.cy().style().getDefaultProperty(b)[c][0]},gZ.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&&bB(g)){var j=a.cy().zoom(),k=function(a){return a*j},l=function(a,b){return k(a)+b},n=bz(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 bx(a)?a:""+k(a)}).join(" "):""+k(g)}if(null!=i)return i}return null}},gZ.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=bA(f)?this.parse(e,f.strValue):this.parse(e,f)),f&&(c[e]=f)}return c},gZ.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[bL(f)],i=this.parse(h.name,g);i&&b.push(i)}return b},gZ.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]=ce(g,j[0]),j[1]=cf(g,j[1]);else for(i=0,f=e.strValue;i<f.length;i++)g=f.charCodeAt(i),j[0]=ce(g,j[0]),j[1]=cf(g,j[1]);return j},gZ.getPropertiesHash=gZ.getNonDefaultPropertiesHash;var g$={};g$.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},g$.fromJson=function(a){return this.resetToDefault(),this.appendFromJson(a),this},g$.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 g_={};g_.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){cw("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 fu(i).invalid){cw("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){cw("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]){cw("Skipping property: Invalid property name in: "+d),g();continue}if(!this.parse(o,p)){cw("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},g_.fromString=function(a){return this.resetToDefault(),this.appendFromString(a),this};var g0={};!function(){var a=function(a){return"^"+a+"\\s*\\(\\s*([\\w\\.]+)\\s*\\)$"},b=function(a){var b=bQ+"|\\w+|"+bS+"|"+bU+"|\\#[0-9a-fA-F]{3}|\\#[0-9a-fA-F]{6}";return"^"+a+"\\s*\\(([\\w\\.]+)\\s*\\,\\s*("+bQ+")\\s*\\,\\s*("+bQ+")\\s*,\\s*("+b+")\\s*\\,\\s*("+b+")\\)$"},c=["^url\\s*\\(\\s*['\"]?(.+?)['\"]?\\s*\\)$","^(none)$","^(.+)$"];g0.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 bx(a[0])||"deg"===b[0]||"rad"===b[0];default:return!1}}},easing:{regexes:["^(spring)\\s*\\(\\s*("+bQ+")\\s*,\\s*("+bQ+")\\s*\\)$","^(cubic-bezier)\\s*\\(\\s*("+bQ+")\\s*,\\s*("+bQ+")\\s*,\\s*("+bQ+")\\s*,\\s*("+bQ+")\\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=g0.types,g=[{name:"label",type:f.text,triggersBounds:e,triggersZOrder:function(a,b){var c=bI(a),d=bI(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}],t=[{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}],u=[{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}],v=[{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}],w=[{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}],x=[{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}],y=[{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}],z=[{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}],A=[];g0.pieBackgroundN=16,A.push({name:"pie-size",type:f.sizeMaybePercent}),A.push({name:"pie-hole",type:f.sizeMaybePercent}),A.push({name:"pie-start-angle",type:f.angle});for(var B=1;B<=g0.pieBackgroundN;B++)A.push({name:"pie-"+B+"-background-color",type:f.color}),A.push({name:"pie-"+B+"-background-size",type:f.percent}),A.push({name:"pie-"+B+"-background-opacity",type:f.zeroOneNumber});var C=[];g0.stripeBackgroundN=16,C.push({name:"stripe-size",type:f.sizeMaybePercent}),C.push({name:"stripe-direction",type:f.axisDirectionPrimary});for(var D=1;D<=g0.stripeBackgroundN;D++)C.push({name:"stripe-"+D+"-background-color",type:f.color}),C.push({name:"stripe-"+D+"-background-size",type:f.percent}),C.push({name:"stripe-"+D+"-background-opacity",type:f.zeroOneNumber});var E=[],F=g0.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){F.forEach(function(b){var c=b+"-"+a.name,d=a.type,e=a.triggersBounds;E.push({name:c,type:d,triggersBounds:e})})},{});var G=g0.properties=[].concat(l,q,n,o,p,y,k,j,g,h,i,s,t,u,v,A,C,w,x,E,z),H=g0.propertyGroups={behavior:l,transition:q,visibility:n,overlay:o,underlay:p,ghost:y,commonLabel:k,labelDimensions:j,mainLabel:g,sourceLabel:h,targetLabel:i,nodeBody:s,nodeBorder:t,nodeOutline:u,backgroundImage:v,pie:A,stripe:C,compound:w,edgeLine:x,edgeArrow:E,core:z},I=g0.propertyGroupNames={};(g0.propertyGroupKeys=Object.keys(H)).forEach(function(a){I[a]=H[a].map(function(a){return a.name}),H[a].forEach(function(b){return b.groupKey=a})});var J=g0.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"}];g0.propertyNames=G.map(function(a){return a.name});for(var K=0;K<G.length;K++){var L=G[K];G[L.name]=L}for(var M=0;M<J.length;M++){var N=J[M],O=G[N.pointsTo],P={name:N.name,alias:!0,pointsTo:O};G.push(P),G[N.name]=P}}(),g0.getDefaultProperty=function(a){return this.getDefaultProperties()[a]},g0.getDefaultProperties=function(){var a=this._private;if(null!=a.defaultProperties)return a.defaultProperties;for(var b=bW({"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<=g0.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<=g0.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 g0.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},g0.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 g1={};g1.parse=function(a,b,c,d){if(by(b))return this.parseImplWarn(a,b,c,d);var e,f=ck(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=cx(e))&&(e.value=cx(e.value)),e},g1.parseImplWarn=function(a,b,c,d){var e=this.parseImpl(a,b,c,d);return e||null==b||cw("The style property `".concat(a,": ").concat(b,"` is invalid")),e&&("width"===e.name||"height"===e.name)&&"label"===b&&cw("The style value of `label` is deprecated for `"+e.name+"`"),e},g1.parseImpl=function(a,b,c,d){a=bL(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=bx(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(by(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 cw("`"+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+/):bz(b)?b:[b],i.evenMultiple&&s.length%2!=0)return null;for(var q,r,s,t=[],u=[],v=[],w="",x=!1,y=0;y<s.length;y++){var z=this.parse(a,s[y],c,"multiple");x=x||bx(z.value),t.push(z.value),v.push(null!=z.pfValue?z.pfValue:z.value),u.push(z.units),w+=(y>0?" ":"")+z.strValue}if(i.validate&&!i.validate(t,u))return null;if(i.singleEnum&&x)if(1===t.length&&bx(t[0]))return{name:a,value:t[0],strValue:t[0],bypass:c};else return null;return{name:a,value:t,pfValue:v,strValue:w,bypass:c,units:u}}var A=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 B,C,D="px";if(i.units&&(C=i.units),i.implicitUnits&&(D=i.implicitUnits),!i.unitless)if(h){var E="px|em"+(i.allowPercent?"|\\%":"");C&&(E=C);var F=b.match("^("+bQ+")("+E+")?$");F&&(b=F[1],C=F[2]||D)}else(!C||i.implicitUnits)&&(C=D);if(isNaN(b=parseFloat(b))&&void 0===i.enums)return null;if(isNaN(b)&&void 0!==i.enums)return b=f,A();if(i.integer&&!(bB(B=b)&&Math.floor(B)===B)||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 G={name:a,value:b,strValue:""+b+(C||""),units:C,bypass:c};return i.unitless||"px"!==C&&"em"!==C?G.pfValue=b:G.pfValue="px"!==C&&C?this.getEmSizeInPixels()*b:b,("ms"===C||"s"===C)&&(G.pfValue="ms"===C?b:1e3*b),("deg"===C||"rad"===C)&&(G.pfValue="rad"===C?b:Math.PI*b/180),"%"===C&&(G.pfValue=b/100),G}if(i.propList){var H=[],I=""+b;if("none"===I);else{for(var J=I.split(/\s*,\s*|\s+/),K=0;K<J.length;K++){var L=J[K].trim();this.properties[L]?H.push(L):cw("`"+L+"` is not a valid property name")}if(0===H.length)return null}return{name:a,value:H,strValue:0===H.length?"none":H.join(" "),bypass:c}}if(i.color){var M=b$(b);return M?{name:a,value:M,pfValue:M,strValue:"rgb("+M[0]+","+M[1]+","+M[2]+")",bypass:c}:null}if(i.regex||i.regexes){if(i.enums){var N=A();if(N)return N}for(var O=i.regexes?i.regexes:[i.regex],P=0;P<O.length;P++){var Q=new RegExp(O[P]).exec(b);if(Q)return{name:a,value:i.singleRegexMatchValue?Q[1]:Q,strValue:""+b,bypass:c}}return null}if(i.string)return{name:a,value:""+b,strValue:""+b,bypass:c};else if(i.enums)return A();else return null};var g2=function(a){return this instanceof g2?bG(a)?void(this._private={cy:a,coreStyle:{}},this.length=0,this.resetToDefault()):void cu("A style must have a core reference"):new g2(a)},g3=g2.prototype;g3.instanceString=function(){return"style"},g3.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},g3.resetToDefault=function(){return this.clear(),this.addDefaultStylesheet(),this},g3.core=function(a){return this._private.coreStyle[a]||this.getDefaultProperty(a)},g3.selector=function(a){var b="core"===a?null:new fu(a),c=this.length++;return this[c]={selector:b,properties:[],mappedProperties:[],index:c},this},g3.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[bM(d.name)]),void 0!==e&&this.cssRule(d.name,e)}else 2===a.length&&this.cssRule(a[0],a[1]);return this},g3.style=g3.css,g3.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},g3.append=function(a){return bH(a)?a.appendToStyle(this):bz(a)?this.appendFromJson(a):bx(a)&&this.appendFromString(a),this},g2.fromJson=function(a,b){var c=new g2(a);return c.fromJson(b),c},g2.fromString=function(a,b){return new g2(a).fromString(b)},[gW,gX,gY,gZ,g$,g_,g0,g1].forEach(function(a){bW(g3,a)}),g2.types=g3.types,g2.properties=g3.properties,g2.propertyGroups=g3.propertyGroups,g2.propertyGroupNames=g3.propertyGroupNames,g2.propertyGroupKeys=g3.propertyGroupKeys;var g4={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(bx(f[0]))return g[a=f[0]];if(bA(f[0])){if(!this._private.panningEnabled)return this;d=(c=f[0]).x,e=c.y,bB(d)&&(g.x=d),bB(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)&&bB(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:bA(a)&&(d=(c=f[0]).x,e=c.y,bB(d)&&(g.x+=d),bB(e)&&(g.y+=e),this.emit("pan viewport"));break;case 2:("x"===a||"y"===a)&&bB(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(bB(a)&&void 0===b&&(b=a,a=void 0),this._private.panningEnabled&&this._private.zoomingEnabled){if(bx(a)){var c,d,e,f=a;a=this.$(f)}else if(bA(c=a)&&bB(c.x1)&&bB(c.x2)&&bB(c.y1)&&bB(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 bD(a)||(a=this.mutableElements());if(!(bD(a)&&a.empty())){d=d||a.boundingBox();var h=this.width(),i=this.height();if(b=bB(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 bB(a)&&bB(b)&&a<=b?(c.minZoom=a,c.maxZoom=b):bB(a)&&void 0===b&&a<=c.maxZoom?c.minZoom=a:bB(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),bB(a)?c=a:bA(a)&&(c=a.level,null!=a.position?b=cY(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||!bB(c)||c===f||null!=b&&(!bB(b.x)||!bB(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;if(!a||(bB(a.zoom)||(c=!1),bA(a.pan)||(d=!1),!c&&!d))return this;if(c){var g=a.zoom;g<b.minZoom||g>b.maxZoom||!b.zoomingEnabled?f=!0:(b.zoom=g,e.push("zoom"))}if(d&&(!f||!a.cancelOnFailedZoom)&&b.panningEnabled){var h=a.pan;bB(h.x)&&(b.pan.x=h.x),bB(h.y)&&(b.pan.y=h.y),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(bx(a)){var c=a;a=this.mutableElements().filter(c)}else bD(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}};g4.centre=g4.center,g4.autolockNodes=g4.autolock,g4.autoungrabifyNodes=g4.autoungrabify;var g5={data:fc.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeData:fc.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),scratch:fc.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:fc.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0})};g5.attr=g5.data,g5.removeAttr=g5.removeData;var g6=function(a){var b=this,c=(a=bW({},a)).container;c&&!bC(c)&&bC(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=bW({name:f?"grid":"null"},g.layout),g.renderer=bW({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 gD(this),listeners:[],aniEles:new gD(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:bB(g.zoom)?g.zoom:1,pan:{x:bA(g.pan)&&bB(g.pan.x)?g.pan.x:0,y:bA(g.pan)&&bB(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=bW({},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&&(bA(a)||bz(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=bW({},b._private.options.layout);f.eles=b.elements(),b.layout(f).run()};!function(a,b){if(a.some(bJ))return eX.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,by(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)})},g7=g6.prototype;bW(g7,{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!bC(a)&&bC(a[0])&&(a=a[0]),this.stopAnimationLoop(),this.destroyRenderer(),b.container=a,b.styleEnabled=!0,this.invalidateSize(),this.initRenderer(bW({},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 cx(this._private.options)},json:function(a){var b=this,c=b._private,d=b.mutableElements();if(bA(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){cw("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(bz(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];bz(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=cx(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=cx(c.pan),p.boxSelectionEnabled=c.boxSelectionEnabled,p.renderer=cx(q.renderer),p.hideEdgesOnViewport=q.hideEdgesOnViewport,p.textureOnViewport=q.textureOnViewport,p.wheelSensitivity=q.wheelSensitivity,p.motionBlur=q.motionBlur,p.multiClickDebounceTime=q.multiClickDebounceTime,p}}),g7.$id=g7.getElementById,[{add:function(a){var b;if(bD(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 gD(this,c)}else if(bz(a))b=new gD(this,a);else if(bA(a)&&(bz(a.nodes)||bz(a.edges))){for(var f=[],g=["nodes","edges"],h=0,i=g.length;h<i;h++){var j=g[h],k=a[j];if(bz(k))for(var l=0,n=k.length;l<n;l++){var o=bW({group:j},k[l]);f.push(o)}}b=new gD(this,f)}else b=new cL(this,a).collection();return b},remove:function(a){if(bD(a));else if(bx(a)){var b=a;a=this.$(b)}return a.remove()}},gN,gQ,gR,gS,{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)}})}},gU,gV,{style:function(a){return a&&this.setStyle(a).update(),this._private.style},setStyle:function(a){var b=this._private;return bH(a)?b.style=a.generateStyle(this):bz(a)?b.style=g2.fromJson(this,a):bx(a)?b.style=g2.fromString(this,a):b.style=g2(this),b.style},updateStyle:function(){this.mutableElements().updateStyle()}},g4,g5].forEach(function(a){bW(g7,a)});var g8={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}},g9={maximal:!1,acyclic:!1},ha=function(a){return a.scratch("breadthfirst")},hb=function(a,b){return a.scratch("breadthfirst",b)};function hc(a){this.options=bW({},g8,g9,a)}hc.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=dd(h?b.boundingBox:structuredClone(c.extent()));if(bD(b.roots))a=b.roots;else if(bz(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(bx(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),hb(a,{index:c,depth:b})},t=function(a,b){var c=ha(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 u=[],v=0;v<e.length;v++){var w=e[v];r[w.id()]||u.push(w)}var x=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}hb(d,{depth:a,index:c})}};if(f&&g){var y=[],z={},A=function(a){return y.push(a)};for(e.forEach(function(a){return y.push(a)});y.length>0;){var B=y.shift(),C=function(a,c){for(var e=ha(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,ha(f[i]).depth);if(e.depth<=g){if(!b.acyclic&&c[h])return null;var j=g+1;return t(a,j),c[h]=j,!0}return!1}(B,z);if(C)B.outgoers().filter(function(a){return a.isNode()&&d.has(a)}).forEach(A);else if(null===C){cw("Detected double maximal shift for node `"+B.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}var D=0;if(b.avoidOverlap)for(var E=0;E<e.length;E++){var F=e[E].layoutDimensions(b),G=F.w,H=F.h;D=Math.max(D,G,H)}var I={},J=function(a){if(I[a.id()])return I[a.id()];for(var b=ha(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=ha(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),I[a.id()]=d,d},K=function(a,b){var c=J(a)-J(b);return 0===c?bV(a.id(),b.id()):c};void 0!==b.depthSort&&(K=b.depthSort);for(var L=q.length,M=0;M<L;M++)q[M].sort(K),x(M);for(var N=[],O=0;O<u.length;O++)N.push(u[O]);if(N.length){q.unshift(N),L=q.length;for(var P=0;P<L;P++)x(P)}for(var Q=0,R=0;R<L;R++)Q=Math.max(q[R].length,Q);var S={x:i.x1+i.w/2,y:i.y1+i.h/2},T=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}),U=Math.max(1===L?0:h?(i.h-2*b.padding-T.h)/(L-1):(i.h-2*b.padding-T.h)/(L+1),D),V=q.reduce(function(a,b){return Math.max(a,b.length)},0),W=function(a){var c=ha(a),d=c.depth,e=c.index;if(b.circle){var f=Math.min(i.w/2/L,i.h/2/L),g=(f=Math.max(f,D))*d+f-(L>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:S.x+g*Math.cos(j),y:S.y+g*Math.sin(j)}}var k=q[d].length,l=Math.max(1===k?0:h?(i.w-2*b.padding-T.w)/((b.grid?V:k)-1):(i.w-2*b.padding-T.w)/((b.grid?V:k)+1),D);return{x:S.x+(e+1-(k+1)/2)*l,y:S.y+(d+1-(L+1)/2)*U}},X={downward:0,leftward:90,upward:180,rightward:-90};return -1===Object.keys(X).indexOf(b.direction)&&cu("Invalid direction '".concat(b.direction,"' specified for breadthfirst layout. Valid values are: ").concat(Object.keys(X).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}}(W(a),i,X[b.direction])}),this};var hd={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 he(a){this.options=bW({},hd,a)}he.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=dd(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=bB(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 hf={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 hg(a){this.options=bW({},hf,a)}hg.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=dd(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 hh={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 hi(a){this.options=bW({},hh,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)}hi.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}),j8=!0===a.debug;var d=hj(b,c,a);j8&&j9(d),a.randomize&&hm(d);var e=ca(),f=function(){ho(d,b,a),!0===a.fit&&b.fit(a.padding)},g=function(b){return!c.stopped&&!(b>=a.numIter)&&(hp(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=hn(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?(ca()-e>=a.animationThreshold&&f(),cc(k)):(hB(d,a),h())};k()}else{for(;j;)j=g(i),i++;hB(d,a),h()}return this},hi.prototype.stop=function(){return this.stopped=!0,this.thread&&this.thread.stop(),this.emit("layoutstop"),this},hi.prototype.destroy=function(){return this.thread&&this.thread.stop(),this};var hj=function(a,b,c){for(var d=c.eles.edges(),e=c.eles.nodes(),f=dd(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=by(c.nodeRepulsion)?c.nodeRepulsion(o):c.nodeRepulsion,g.layoutNodes.push(q),g.idToIndex[q.id]=j}for(var r=[],s=0,t=-1,u=[],j=0;j<g.nodeSize;j++){var o=g.layoutNodes[j],v=o.parentId;null!=v?g.layoutNodes[g.idToIndex[v]].children.push(o.id):(r[++t]=o.id,u.push(o.id))}for(g.graphSet.push(u);s<=t;){var w=r[s++],x=g.idToIndex[w],n=g.layoutNodes[x],y=n.children;if(y.length>0){g.graphSet.push(y);for(var j=0;j<y.length;j++)r[++t]=y[j]}}for(var j=0;j<g.graphSet.length;j++)for(var z=g.graphSet[j],l=0;l<z.length;l++){var A=g.idToIndex[z[l]];g.indexToGraph[A]=j}for(var j=0;j<g.edgeSize;j++){var B=d[j],C={};C.id=B.data("id"),C.sourceId=B.data("source"),C.targetId=B.data("target");var D=by(c.idealEdgeLength)?c.idealEdgeLength(B):c.idealEdgeLength,E=by(c.edgeElasticity)?c.edgeElasticity(B):c.edgeElasticity,F=g.idToIndex[C.sourceId],G=g.idToIndex[C.targetId];if(g.indexToGraph[F]!=g.indexToGraph[G]){for(var H=hk(C.sourceId,C.targetId,g),I=g.graphSet[H],J=0,q=g.layoutNodes[F];-1===I.indexOf(q.id);)q=g.layoutNodes[g.idToIndex[q.parentId]],J++;for(q=g.layoutNodes[G];-1===I.indexOf(q.id);)q=g.layoutNodes[g.idToIndex[q.parentId]],J++;D*=J*c.nestingFactor}C.idealLength=D,C.elasticity=E,g.layoutEdges.push(C)}return g},hk=function(a,b,c){var d=hl(a,b,0,c);return 2>d.count?0:d.graph},hl=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=hl(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}},hm=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)}},hn=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}}},ho=function(a,b,c){var d=c.layout,e=c.eles.nodes(),f=hn(a,c,e);e.positions(f),!0!==a.ready&&(a.ready=!0,d.one("layoutready",c.ready),d.emit({type:"layoutready",layout:this}))},hp=function(a,b,c){hq(a,b),hv(a),hw(a,b),hx(a),hy(a)},hq=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++)hs(g,a.layoutNodes[a.idToIndex[d[h]]],a,b)},hr=function(a){return -1+2*a*Math.random()},hs=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=hr(1),f=hr(1));var g=ht(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=hu(a,e,f),n=hu(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)}},ht=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},hu=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},hv=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=hu(f,i,j),l=hu(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)}}},hw=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}}}}},hx=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}}},hy=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=hz(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,hA(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)}},hz=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},hA=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 hA(d,b)}},hB=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)}}},hC={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 hD(a){this.options=bW({},hC,a)}hD.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=dd(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 hE={ready:function(){},stop:function(){}};function hF(a){this.options=bW({},hE,a)}hF.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},hF.prototype.stop=function(){return this};var hG={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 hH(a){this.options=bW({},hG,a)}hH.prototype.run=function(){var a=this.options,b=a.eles.nodes(),c=by(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 hI={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 hJ(a){this.options=bW({},hI,a)}hJ.prototype.run=function(){var a=this.options,b=a.cy,c=a.eles,d=dd(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 hK=[{name:"breadthfirst",impl:hc},{name:"circle",impl:he},{name:"concentric",impl:hg},{name:"cose",impl:hi},{name:"grid",impl:hD},{name:"null",impl:hF},{name:"preset",impl:hH},{name:"random",impl:hJ}];function hL(a){this.options=a,this.notifications=0}var hM=function(){},hN=function(){throw Error("A headless instance can not render images")};hL.prototype={recalculateRenderedStyle:hM,notify:function(){this.notifications++},init:hM,isHeadless:function(){return!0},png:hN,jpg:hN};var hO={};hO.arrowShapeWidth=.3,hO.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){bx(h)&&(h=a[h]),a[d]=bW({name:d,points:[-.15,-.3,.15,-.3,.15,.3,-.15,.3],collide:function(a,b,c,d,g,h){return dx(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:cr,roughCollide:cr,draw:ct,spacing:cs,gap:cs}),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 dx(a,b,j)||dx(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 dx(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 dx(a,b,j)||dx(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 hP={};hP.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]},hP.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]},hP.invalidateContainerClientCoordsCache=function(){this.containerBB=null},hP.findNearestElement=function(a,b,c,d){return this.findNearestElements(a,b,c,d)[0]},hP.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=cF(f.rscratch,"labelX",d),j=cF(f.rscratch,"labelY",d),k=cF(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(dx(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(dl(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(dr(a,b,v[w],v[w+1],v[w+2],v[w+3],q)&&p>(d=dw(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(ds(a,b,v[w],v[w+1],v[w+2],v[w+3],v[w+4],v[w+5],q)&&p>(d=dv(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},hP.getAllInBox=function(a,b,c,d){var e=this.getCachedZSortedEles().interactive,f=2/this.cy.zoom(),g=[],h=Math.min(a,c),i=Math.max(a,c),j=Math.min(b,d),k=Math.max(b,d);a=h,c=i;var l=dd({x1:a,y1:b=j,x2:c,y2:d=k}),n=[{x:l.x1,y:l.y1},{x:l.x2,y:l.y1},{x:l.x2,y:l.y2},{x:l.x1,y:l.y2}],o=[[n[0],n[1]],[n[1],n[2]],[n[2],n[3]],[n[3],n[0]]];function p(a,b){var c=a._private;a.boundingBox();var d=c.labelBounds.main;if(!d)return null;var e=cF(c.rscratch,"labelX",b),g=cF(c.rscratch,"labelY",b),h=cF(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 q=0;q<e.length;q++){var r=e[q];if(r.isNode()){var s="yes"===r.pstyle("text-events").strValue,t=r.pstyle("box-selection").strValue,u="yes"===r.pstyle("box-select-labels").strValue;if("none"===t)continue;var v=("overlap"===t||u)&&s,w=r.boundingBox({includeNodes:!0,includeEdges:!1,includeLabels:v});if("contain"===t){var x=!1;if(u&&s){var y=p(r);y&&dS(y,n)&&(g.push(r),x=!0)}!x&&dn(l,w)&&g.push(r)}else if("overlap"===t&&dk(l,w)){var z=r.boundingBox({includeNodes:!0,includeEdges:!0,includeLabels:!1,includeMainLabels:!1,includeSourceLabels:!1,includeTargetLabels:!1});if(dS([{x:z.x1,y:z.y1},{x:z.x2,y:z.y1},{x:z.x2,y:z.y2},{x:z.x1,y:z.y2}],n))g.push(r);else{var A=p(r);A&&dS(A,n)&&g.push(r)}}}else{var B=r._private,C=B.rscratch,D=r.pstyle("box-selection").strValue;if("none"===D)continue;if("contain"===D){if(null!=C.startX&&null!=C.startY&&!dl(l,C.startX,C.startY)||null!=C.endX&&null!=C.endY&&!dl(l,C.endX,C.endY))continue;if("bezier"===C.edgeType||"multibezier"===C.edgeType||"self"===C.edgeType||"compound"===C.edgeType||"segments"===C.edgeType||"haystack"===C.edgeType){for(var E=B.rstyle.bezierPts||B.rstyle.linePts||B.rstyle.haystackPts,F=!0,G=0;G<E.length;G++)if(!dm(l,E[G])){F=!1;break}F&&g.push(r)}else"straight"===C.edgeType&&g.push(r)}else if("overlap"===D){var H=!1;if(null!=C.startX&&null!=C.startY&&null!=C.endX&&null!=C.endY&&(dl(l,C.startX,C.startY)||dl(l,C.endX,C.endY)))g.push(r),H=!0;else if(!H&&"haystack"===C.edgeType){for(var I=B.rstyle.haystackPts,J=0;J<I.length;J++)if(dm(l,I[J])){g.push(r),H=!0;break}}if(!H){var K=B.rstyle.bezierPts||B.rstyle.linePts||B.rstyle.haystackPts;if((!K||K.length<2)&&"straight"===C.edgeType&&null!=C.startX&&null!=C.startY&&null!=C.endX&&null!=C.endY&&(K=[{x:C.startX,y:C.startY},{x:C.endX,y:C.endY}]),!K||K.length<2)continue;for(var L=0;L<K.length-1;L++){for(var M=K[L],N=K[L+1],O=0;O<o.length;O++){var P=bn(o[O],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)}(M,N,P[0],P[1])){g.push(r),H=!0;break}}if(H)break}}}}}return g};var hQ={};hQ.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=c9(i[0],i[2],i[4],.1),k=c9(i[1],i[3],i[5],.1);q=s-j,r=t-k}else q=s-l,r=t-n;b.srcArrowAngle=c3(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=c9(i[A],i[B],i[C],0),x=c9(i[A+1],i[B+1],i[C+1],0),y=c9(i[A],i[B],i[C],1e-4),z=c9(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=c9(i[A],i[B],i[C],.4999),x=c9(i[A+1],i[B+1],i[C+1],.4999),y=c9(i[A],i[B],i[C],.5),z=c9(i[A+1],i[B+1],i[C+1],.5)}q=y-w,r=z-x}if(b.midtgtArrowAngle=c3(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=c3(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=c9(i[E-6],i[E-4],i[E-2],.9),k=c9(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=c3(q,r)},hQ.getArrowWidth=hQ.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 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,iC,iD,iE,iF,iG,iH,iI,iJ,iK,iL,iM,iN,iO,iP,iQ,iR,iS,iT,iU,iV,iW,iX,iY,iZ,i$,i_,i0,i1,i2,i3,i4,i5,i6,i7,i8,i9,ja,jb,jc,jd,je,jf,jg,jh,ji,jj,jk,jl,jm,jn,jo,jp,jq,jr,js,jt,ju,jv,jw,jx,jy,jz,jA,jB,jC,jD,jE,jF,jG,jH,jI,jJ,jK,jL,jM,jN,jO,jP,jQ,jR,jS,jT,jU,jV,jW,jX,jY,jZ,j$,j_,j0,j1,j2,j3,j4,j5,j6,j7,j8,j9,ka,kb,kc,kd,ke,kf,kg,kh,ki,kj,kk,kl,km={},kn={},ko=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)},kp=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},kq=function(a,b,c,d,j){if(a!==i?ko(b,a,km):kp(kn,km),ko(b,c,kn),kc=km.nx*kn.ny-km.ny*kn.nx,kd=km.nx*kn.nx- -(km.ny*kn.ny),1e-6>Math.abs(kg=Math.asin(Math.max(-1,Math.min(1,kc))))){ka=b.x,kb=b.y,ki=kk=0;return}ke=1,kf=!1,kd<0?kg<0?kg=Math.PI+kg:(kg=Math.PI-kg,ke=-1,kf=!0):kg>0&&(ke=-1,kf=!0),kk=void 0!==b.radius?b.radius:d,kh=kg/2,kl=Math.min(km.len/2,kn.len/2),ki=j?(kj=Math.abs(Math.cos(kh)*kk/Math.sin(kh)))>kl?Math.abs((kj=kl)*Math.sin(kh)/Math.cos(kh)):kk:Math.abs((kj=Math.min(kl,kk))*Math.sin(kh)/Math.cos(kh)),g=b.x+kn.nx*kj,h=b.y+kn.ny*kj,ka=g-kn.ny*ki*ke,kb=h+kn.nx*ki*ke,e=b.x+km.nx*kj,f=b.y+km.ny*kj,i=b};function kr(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 ks(a,b,c,d){var i=!(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}:(kq(a,b,c,d,i),{cx:ka,cy:kb,radius:ki,startX:e,startY:f,stopX:g,stopY:h,startAngle:km.ang+Math.PI/2*ke,endAngle:kn.ang-Math.PI/2*ke,counterClockwise:kf})}var kt=Math.sqrt(.02),ku={};function kv(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}}ku.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"),i=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(i){var j,k,l,n=bn(this.manualEndptToPx(a.source()[0],g),2),o=n[0],p=n[1],q=bn(this.manualEndptToPx(a.target()[0],h),2),r=q[0],s=q[1];j=s-p,l=Math.sqrt((k=r-o)*k+j*j),f={x:-j/l,y:k/l},c={x1:o,y1:p,x2:r,y2:s}}else cw("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}},ku.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)}},ku.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")}},ku.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)]},ku.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]},ku.findStraightEdgePoints=function(a){a._private.rscratch.edgeType="straight"},ku.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=c5(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)}},ku.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=c5(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)}},ku.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=!bB(c.startX)||!bB(c.startY),r=!bB(c.arrowStartX)||!bB(c.arrowStartY),s=!bB(c.endX)||!bB(c.endY),t=!bB(c.arrowEndX)||!bB(c.arrowEndY),u=3*(this.getArrowWidth(a.pstyle("width").pfValue,a.pstyle("arrow-scale").value)*this.arrowShapeWidth),v=c6({x:c.ctrlpts[0],y:c.ctrlpts[1]},{x:c.startX,y:c.startY}),w=v<u,x=c6({x:c.ctrlpts[0],y:c.ctrlpts[1]},{x:c.endX,y:c.endY}),y=x<u,z=!1;if(q||r||w){z=!0;var A={x:c.ctrlpts[0]-d.x,y:c.ctrlpts[1]-d.y},B=Math.sqrt(A.x*A.x+A.y*A.y),C={x:A.x/B,y:A.y/B},D=Math.max(f,g),E={x:c.ctrlpts[0]+2*C.x*D,y:c.ctrlpts[1]+2*C.y*D},F=j.intersectLine(d.x,d.y,f,g,E.x,E.y,0,l,o);w?(c.ctrlpts[0]=c.ctrlpts[0]+C.x*(u-v),c.ctrlpts[1]=c.ctrlpts[1]+C.y*(u-v)):(c.ctrlpts[0]=F[0]+C.x*u,c.ctrlpts[1]=F[1]+C.y*u)}if(s||t||y){z=!0;var G={x:c.ctrlpts[0]-e.x,y:c.ctrlpts[1]-e.y},H=Math.sqrt(G.x*G.x+G.y*G.y),I={x:G.x/H,y:G.y/H},J=Math.max(f,g),K={x:c.ctrlpts[0]+2*I.x*J,y:c.ctrlpts[1]+2*I.y*J},L=k.intersectLine(e.x,e.y,h,i,K.x,K.y,0,n,p);y?(c.ctrlpts[0]=c.ctrlpts[0]+I.x*(u-x),c.ctrlpts[1]=c.ctrlpts[1]+I.y*(u-x)):(c.ctrlpts[0]=L[0]+I.x*u,c.ctrlpts[1]=L[1]+I.y*u)}z&&this.findEndpoints(a)}},ku.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=c9(b.allpts[c],b.allpts[c+2],b.allpts[c+4],.5),b.midY=c9(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(ks({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]}}},ku.checkForInvalidEdgeWarning=function(a){var b=a[0]._private.rscratch;b.nodesOverlap||bB(b.startX)&&bB(b.startY)&&bB(b.endX)&&bB(b.endY)?b.loggedErr=!1:b.loggedErr||(b.loggedErr=!0,cw("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."))},ku.findEdgeControlPoints=function(a){var b=this;if(a&&0!==a.length){for(var c=this,d=c.cy.hasCompoundNodes(),e=new cI,f=function(a,b){return[].concat(bo(a),[+!!b]).join("-")},g=[],h=[],i=0;i<a.length;i++){var j=a[i],k=j._private,l=j.pstyle("curve-style").value;if(!j.removed()&&j.takesUpSpace()){if("haystack"===l){h.push(j);continue}var n="unbundled-bezier"===l||bP(l,"segments")||"straight"===l||"straight-triangle"===l||bP(l,"taxi"),o="unbundled-bezier"===l||"bezier"===l,p=k.source,q=k.target,r=[p.poolIndex(),q.poolIndex()].sort(),s=f(r,n),t=e.get(s);null==t&&(t={eles:[]},g.push({pairId:r,edgeIsUnbundled:n}),e.set(s,t)),t.eles.push(j),n&&(t.hasUnbundled=!0),o&&(t.hasBezier=!0)}}for(var u=0;u<g.length;u++)!function(){var a,h=g[u],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()});cD(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(),v=j.tgtW=o.outerWidth(),w=j.tgtH=o.outerHeight(),x=j.srcShape=c.nodeShapes[b.getNodeShape(n)],y=j.tgtShape=c.nodeShapes[b.getNodeShape(o)],z=j.srcCornerRadius="auto"===n.pstyle("corner-radius").value?"auto":n.pstyle("corner-radius").pfValue,A=j.tgtCornerRadius="auto"===o.pstyle("corner-radius").value?"auto":o.pstyle("corner-radius").pfValue,B=j.tgtRs=o._private.rscratch,C=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 D=0;D<j.eles.length;D++){var E=j.eles[D],F=E[0]._private.rscratch,G=E.pstyle("curve-style").value,H="unbundled-bezier"===G||bP(G,"segments")||bP(G,"taxi"),I=!n.same(E.source());if(!j.calculatedIntersection&&n!==o&&(j.hasBezier||j.hasUnbundled)){j.calculatedIntersection=!0;var J=x.intersectLine(q.x,q.y,s,t,r.x,r.y,0,z,C),K=j.srcIntn=J,L=y.intersectLine(r.x,r.y,v,w,q.x,q.y,0,A,B),M=j.tgtIntn=L,N=j.intersectionPts={x1:J[0],x2:L[0],y1:J[1],y2:L[1]},O=j.posPts={x1:q.x,x2:r.x,y1:q.y,y2:r.y},P=L[1]-J[1],Q=L[0]-J[0],R=Math.sqrt(Q*Q+P*P);bB(R)&&R>=kt||(R=Math.sqrt(Math.max(Q*Q,.01)+Math.max(P*P,.01)));var S=j.vector={x:Q,y:P},T=j.vectorNorm={x:S.x/R,y:S.y/R},U={x:-T.y,y:T.x};j.nodesOverlap=!bB(R)||y.checkPoint(J[0],J[1],0,v,w,r.x,r.y,A,B)||x.checkPoint(L[0],L[1],0,s,t,q.x,q.y,z,C),j.vectorNormInverse=U,a={nodesOverlap:j.nodesOverlap,dirCounts:j.dirCounts,calculatedIntersection:!0,hasBezier:j.hasBezier,hasUnbundled:j.hasUnbundled,eles:j.eles,srcPos:r,srcRs:B,tgtPos:q,tgtRs:C,srcW:v,srcH:w,tgtW:s,tgtH:t,srcIntn:M,tgtIntn:K,srcShape:y,tgtShape:x,posPts:{x1:O.x2,y1:O.y2,x2:O.x1,y2:O.y1},intersectionPts:{x1:N.x2,y1:N.y2,x2:N.x1,y2:N.y1},vector:{x:-S.x,y:-S.y},vectorNorm:{x:-T.x,y:-T.y},vectorNormInverse:{x:-U.x,y:-U.y}}}var V=I?a:j;F.nodesOverlap=V.nodesOverlap,F.srcIntn=V.srcIntn,F.tgtIntn=V.tgtIntn,F.isRound=G.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(E,V,D,H):n===o?b.findLoopPoints(E,V,D,H):G.endsWith("segments")?b.findSegmentsPoints(E,V):G.endsWith("taxi")?b.findTaxiPoints(E,V):"straight"!==G&&(H||j.eles.length%2!=1||D!==Math.floor(j.eles.length/2))?b.findBezierPoints(E,V,D,H,I):b.findStraightEdgePoints(E),b.findEndpoints(E),b.tryToCorrectInvalidPoints(E,V),b.checkForInvalidEdgeWarning(E),b.storeAllpts(E),b.storeEdgeProjections(E),b.calculateArrowAngles(E),b.recalculateEdgeLabelProjections(E),b.calculateLabelAngles(E)}}();this.findHaystackPoints(h)}},ku.getSegmentPoints=function(a){var b=a[0]._private.rscratch;if(this.recalculateRenderedStyle(a),"segments"===b.edgeType)return kv(b.segpts)},ku.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 kv(b.ctrlpts)},ku.getEdgeMidpoint=function(a){var b=a[0]._private.rscratch;return this.recalculateRenderedStyle(a),{x:b.midX,y:b.midY}};var kw={};kw.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)},kw.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,x=w.edgeType,y=bP(v,"taxi"),z="self"===x||"compound"===x,A="bezier"===x||"multibezier"===x||z,B="bezier"!==x,C="straight"===x||"segments"===x,D="segments"===x,E=z||y,F=a.pstyle("source-endpoint"),G=E?"outside-to-node":F.value,H="auto"===k.pstyle("corner-radius").value?"auto":k.pstyle("corner-radius").pfValue,I=a.pstyle("target-endpoint"),J=E?"outside-to-node":I.value,K="auto"===l.pstyle("corner-radius").value?"auto":l.pstyle("corner-radius").pfValue;w.srcManEndpt=F,w.tgtManEndpt=I;var L=null!=(b=(null==I||null==(c=I.pfValue)?void 0:c.length)===2?I.pfValue:null)?b:[0,0],M=null!=(d=(null==F||null==(e=F.pfValue)?void 0:e.length)===2?F.pfValue:null)?d:[0,0];if(A){var N=[w.ctrlpts[0],w.ctrlpts[1]];g=B?[w.ctrlpts[w.ctrlpts.length-2],w.ctrlpts[w.ctrlpts.length-1]]:N,h=N}else if(C){var O=D?w.segpts.slice(0,2):[o.x+L[0],o.y+L[1]];g=D?w.segpts.slice(w.segpts.length-2):[n.x+M[0],n.y+M[1]],h=O}if("inside-to-node"===J)f=[o.x,o.y];else if(I.units)f=this.manualEndptToPx(l,I);else if("outside-to-line"===J)f=w.tgtIntn;else if("outside-to-node"===J||"outside-to-node-or-label"===J?i=g:("outside-to-line"===J||"outside-to-line-or-label"===J)&&(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,K,u),"outside-to-node-or-label"===J||"outside-to-line-or-label"===J){var P=l._private.rscratch,Q=P.labelWidth,R=P.labelHeight,S=P.labelX,T=P.labelY,U=Q/2,V=R/2,W=l.pstyle("text-valign").value;"top"===W?T-=V:"bottom"===W&&(T+=V);var X=l.pstyle("text-halign").value;"left"===X?S-=U:"right"===X&&(S+=U);var Y=dI(i[0],i[1],[S-U,T-V,S+U,T-V,S+U,T+V,S-U,T+V],o.x,o.y);if(Y.length>0){var Z=c7(n,c$(f)),$=c7(n,c$(Y)),_=Z;$<Z&&(f=Y,_=$),Y.length>2&&c7(n,{x:Y[2],y:Y[3]})<_&&(f=[Y[2],Y[3]])}}var aa=dK(f,g,this.arrowShapes[p].spacing(a)+r),ab=dK(f,g,this.arrowShapes[p].gap(a)+r);if(w.endX=ab[0],w.endY=ab[1],w.arrowEndX=aa[0],w.arrowEndY=aa[1],"inside-to-node"===G)f=[n.x,n.y];else if(F.units)f=this.manualEndptToPx(k,F);else if("outside-to-line"===G)f=w.srcIntn;else if("outside-to-node"===G||"outside-to-node-or-label"===G?j=h:("outside-to-line"===G||"outside-to-line-or-label"===G)&&(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,H,t),"outside-to-node-or-label"===G||"outside-to-line-or-label"===G){var ac=k._private.rscratch,ad=ac.labelWidth,ae=ac.labelHeight,af=ac.labelX,ag=ac.labelY,ah=ad/2,ai=ae/2,aj=k.pstyle("text-valign").value;"top"===aj?ag-=ai:"bottom"===aj&&(ag+=ai);var ak=k.pstyle("text-halign").value;"left"===ak?af-=ah:"right"===ak&&(af+=ah);var al=dI(j[0],j[1],[af-ah,ag-ai,af+ah,ag-ai,af+ah,ag+ai,af-ah,ag+ai],n.x,n.y);if(al.length>0){var am=c7(o,c$(f)),an=c7(o,c$(al)),ao=am;an<am&&(f=[al[0],al[1]],ao=an),al.length>2&&c7(o,{x:al[2],y:al[3]})<ao&&(f=[al[2],al[3]])}}var ap=dK(f,h,this.arrowShapes[q].spacing(a)+s),aq=dK(f,h,this.arrowShapes[q].gap(a)+s);w.startX=aq[0],w.startY=aq[1],w.arrowStartX=ap[0],w.arrowStartY=ap[1],(A||B||C)&&(bB(w.startX)&&bB(w.startY)&&bB(w.endX)&&bB(w.endY)?w.badLine=!1:w.badLine=!0)},kw.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}},kw.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 kx={};kx.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 c9(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},kx.recalculateEdgeProjections=function(a){this.findEdgeControlPoints(a)};var ky={};ky.recalculateNodeLabelProjection=function(a){var b,c;if(!bI(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 kz=function(a,b){var c=Math.atan(b/a);return 0===a&&c<0&&(c*=-1),c},kA=function(a,b){return kz(b.x-a.x,b.y-a.y)},kB=function(a,b,c,d){var e=dc(0,d-.001,1),f=dc(0,d+.001,1);return kA(da(a,b,c,e),da(a,b,c,f))};ky.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){cG(c.rscratch,a,b,d),cG(c.rstyle,a,b,d)};g("labelX",null,b.x),g("labelY",null,b.y),g("labelAutoAngle",null,kz(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=c6(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=dc(0,y,1),b=da(u.p0,u.p1,u.p2,y),j=kB(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=c6(z,A),C=D,!((D+=B)>=i));F+=2);var G=(i-C)/B;b=db(z,A,G=dc(0,G,1)),j=kA(z,A)}g("labelX",c,b.x),g("labelY",c,b.y),g("labelAutoAngle",c,j)}};i("source"),i("target"),this.applyLabelDimensions(a)}},ky.applyLabelDimensions=function(a){this.applyPrefixedLabelDimensions(a),a.isEdge()&&(this.applyPrefixedLabelDimensions(a,"source"),this.applyPrefixedLabelDimensions(a,"target"))},ky.applyPrefixedLabelDimensions=function(a,b){var c=a._private,d=this.getLabelText(a,b),e=cj(d,a._private.labelDimsKey);if(cF(c.rscratch,"prefixedLabelDimsKey",b)!==e){cG(c.rscratch,"prefixedLabelDimsKey",b,e);var f=this.calculateLabelDimensions(a,d),g=a.pstyle("line-height").pfValue,h=a.pstyle("text-wrap").strValue,i=cF(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;cG(c.rstyle,"labelWidth",b,l),cG(c.rscratch,"labelWidth",b,l),cG(c.rstyle,"labelHeight",b,n),cG(c.rscratch,"labelHeight",b,n),cG(c.rscratch,"labelLineHeight",b,k*g)}},ky.getLabelText=function(a,b){var c=a._private,d=b?b+"-":"",e=a.pstyle(d+"label").strValue,f=a.pstyle("text-transform").value,g=function(a,d){return d?(cG(c.rscratch,a,b,d),d):cF(c.rscratch,a,b)};if(!e)return"";"none"==f||("uppercase"==f?e=e.toUpperCase():"lowercase"==f&&(e=e.toLowerCase()));var h=a.pstyle("text-wrap").value;if("wrap"===h){var i=g("labelKey");if(null!=i&&g("labelWrapKey")===i)return g("labelWrapCachedText");for(var j=e.split("\n"),k=a.pstyle("text-max-width").pfValue,l="anywhere"===a.pstyle("text-overflow-wrap").value,n=[],o=/[\s\u200b]+|$/g,p=0;p<j.length;p++){var q=j[p],r=this.calculateLabelDimensions(a,q).width;if(l&&(q=q.split("").join("")),r>k){var s,t=q.matchAll(o),u="",v=0,w=bl(t);try{for(w.s();!(s=w.n()).done;){var x=s.value,y=x[0],z=q.substring(v,x.index);v=x.index+y.length;var A=0===u.length?z:u+z+y;this.calculateLabelDimensions(a,A).width<=k?u+=z+y:(u&&n.push(u),u=z+y)}}catch(a){w.e(a)}finally{w.f()}u.match(/^[\s\u200b]+$/)||n.push(u)}else n.push(q)}g("labelWrapCachedLines",n),e=g("labelWrapCachedText",n.join("\n")),g("labelWrapKey",i)}else if("ellipsis"===h){var B=a.pstyle("text-max-width").pfValue,C="",D=!1;if(this.calculateLabelDimensions(a,e).width<B)return e;for(var E=0;E<e.length&&!(this.calculateLabelDimensions(a,C+e[E]+"…").width>B);E++)C+=e[E],E===e.length-1&&(D=!0);return D||(C+="…"),C}return e},ky.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"}},ky.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}},ky.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},ky.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 kC={},kD=!1;kC.getNodeShape=function(a){var b=a.pstyle("shape").value;if("cutrectangle"===b&&(28>a.width()||28>a.height()))return kD||(cw("The `cutrectangle` node shape can not be used at small sizes so `rectangle` is used instead"),kD=!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 kE={};kE.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)},kE.onUpdateEleCalcs=function(a){(this.onUpdateEleCalcsFns=this.onUpdateEleCalcsFns||[]).push(a)},kE.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 kF={};kF.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)}}},kF.invalidateCachedZSortedEles=function(){this.cachedZSortedEles=null},kF.getCachedZSortedEles=function(a){if(a||!this.cachedZSortedEles){var b=this.cy.mutableElements().toArray();b.sort(gi),b.interactive=b.filter(function(a){return a.interactive()}),this.cachedZSortedEles=b,this.updateCachedGrabbedEles()}else b=this.cachedZSortedEles;return b};var kG={};[hP,hQ,ku,kw,kx,ky,kC,kE,kF].forEach(function(a){bW(kG,a)});var kH={};kH.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 kI={};kI.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)},kI.binder=function(a){var b=this,c=b.cy.window(),d=a===c||a===c.document||a===c.document.body||"undefined"!=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}},kI.nodeIsDraggable=function(a){return a&&a.isNode()&&!a.locked()&&a.grabbable()},kI.nodeIsGrabbable=function(a){return this.nodeIsDraggable(a)&&a.interactive()},kI.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,x,y,z,A=this,B=A.cy.window(),C=function(a){return a.selected()},D=function(a,b,c,d){null==a&&(a=A.cy);for(var e=0;e<b.length;e++){var f=b[e];a.emit({originalEvent:c,type:f,position:d})}},E=function(a){return a.shiftKey||a.metaKey||a.ctrlKey},F=function(a,b){var c=!0;if(A.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},G=function(a){a[0]._private.grabbed=!0},H=function(a){a[0]._private.grabbed=!1},I=function(a){a[0]._private.rscratch.inDragLayer=!0},J=function(a){a[0]._private.rscratch.inDragLayer=!1},K=function(a){a[0]._private.rscratch.isGrabTarget=!0},L=function(a){a[0]._private.rscratch.isGrabTarget=!1},M=function(a,b){var c=b.addToList;!c.has(a)&&a.grabbable()&&!a.locked()&&(c.merge(a),G(a))},N=function(a,b){if(a.cy().hasCompoundNodes()&&(null!=b.inDragLayer||null!=b.addToList)){var c=a.descendants();b.inDragLayer&&(c.forEach(I),c.connectedEdges().forEach(I)),b.addToList&&M(c,b)}},O=function(a,b){b=b||{};var c=a.cy().hasCompoundNodes();b.inDragLayer&&(a.forEach(I),a.neighborhood().stdFilter(function(a){return!c||a.isEdge()}).forEach(I)),b.addToList&&a.forEach(function(a){M(a,b)}),N(a,b),Q(a,{inDragLayer:b.inDragLayer}),A.updateCachedGrabbedEles()},P=function(a){a&&(A.getCachedZSortedEles().forEach(function(a){H(a),J(a),L(a)}),A.updateCachedGrabbedEles())},Q=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(I),d.forEach(I)),b.addToList&&d.forEach(function(a){M(a,b)})}}},R=function(){null!=document.activeElement&&null!=document.activeElement.blur&&document.activeElement.blur()},S="undefined"!=typeof MutationObserver,T="undefined"!=typeof ResizeObserver;S?(A.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]===A.container){A.destroy();break}}}}),A.container.parentNode&&A.removeObserver.observe(A.container.parentNode,{childList:!0})):A.registerBinding(A.container,"DOMNodeRemoved",function(a){A.destroy()});var U=b9(function(){A.cy.resize()},100);S&&(A.styleObserver=new MutationObserver(U),A.styleObserver.observe(A.container,{attributes:!0})),A.registerBinding(B,"resize",U),T&&(A.resizeObserver=new ResizeObserver(U),A.resizeObserver.observe(A.container));for(var V=function(){A.invalidateContainerClientCoordsCache()},W=A.container;null!=W;){a=W,A.registerBinding(a,"transitionend",V),A.registerBinding(a,"animationend",V),A.registerBinding(a,"scroll",V),W=W.parentNode}A.registerBinding(A.container,"contextmenu",function(a){a.preventDefault()});var X=function(a){for(var b=A.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=A.container,l=a.target.parentNode,n=!1;l;){if(l===k){n=!0;break}l=l.parentNode}return!!n};A.registerBinding(A.container,"mousedown",function(a){if(X(a)&&(1!==A.hoverData.which||1===a.which)){a.preventDefault(),R(),A.hoverData.capture=!0,A.hoverData.which=a.which;var b=A.cy,c=[a.clientX,a.clientY],d=A.projectIntoViewport(c[0],c[1]),e=A.selection,f=A.findNearestElements(d[0],d[1],!0,!1),g=f[0],h=A.dragData.possibleDragElements;A.hoverData.mdownPos=d,A.hoverData.mdownGPos=c;var i=function(b){return{originalEvent:a,type:b,position:{x:d[0],y:d[1]}}};if(3==a.which){A.hoverData.cxtStarted=!0;var j={originalEvent:a,type:"cxttapstart",position:{x:d[0],y:d[1]}};g?(g.activate(),g.emit(j),A.hoverData.down=g):b.emit(j),A.hoverData.downTime=new Date().getTime(),A.hoverData.cxtDragged=!1}else if(1==a.which){if(g&&g.activate(),null!=g&&A.nodeIsGrabbable(g)){if(K(g),g.selected()){h=A.dragData.possibleDragElements=b.collection();var k=b.$(function(a){return a.isNode()&&a.selected()&&A.nodeIsGrabbable(a)});O(k,{addToList:h}),g.emit(i("grabon")),k.forEach(function(a){a.emit(i("grab"))})}else O(g,{addToList:h=A.dragData.possibleDragElements=b.collection()}),g.emit(i("grabon")).emit(i("grab"));A.redrawHint("eles",!0),A.redrawHint("drag",!0)}A.hoverData.down=g,A.hoverData.downs=f,A.hoverData.downTime=new Date().getTime(),D(g,["mousedown","tapstart","vmousedown"],a,{x:d[0],y:d[1]}),null==g?(e[4]=1,A.data.bgActivePosistion={x:d[0],y:d[1]},A.redrawHint("select",!0),A.redraw()):g.pannable()&&(e[4]=1),A.hoverData.tapholdCancelled=!1,clearTimeout(A.hoverData.tapholdTimeout),A.hoverData.tapholdTimeout=setTimeout(function(){if(!A.hoverData.tapholdCancelled){var a=A.hoverData.down;a?a.emit(i("taphold")):b.emit(i("taphold"))}},A.tapholdDuration)}e[0]=e[2]=d[0],e[1]=e[3]=d[1]}},!1);var Y=function(a){var b=a.getRootNode();if(b&&11===b.nodeType&&void 0!==b.host)return b}(A.container);A.registerBinding([B,Y],"mousemove",function(a){var b,c;if(A.hoverData.capture||X(a)){var d=!1,e=A.cy,f=e.zoom(),g=[a.clientX,a.clientY],h=A.projectIntoViewport(g[0],g[1]),i=A.hoverData.mdownPos,j=A.hoverData.mdownGPos,k=A.selection,l=null;A.hoverData.draggingEles||A.hoverData.dragging||A.hoverData.selecting||(l=A.findNearestElement(h[0],h[1],!0,!1));var n=A.hoverData.last,o=A.hoverData.down,p=[h[0]-k[2],h[1]-k[3]],q=A.dragData.possibleDragElements;if(j){var r=g[0]-j[0],s=g[1]-j[1];A.hoverData.isOverThresholdDrag=b=r*r+s*s>=A.desktopTapThreshold2}var t=E(a);b&&(A.hoverData.tapholdCancelled=!0),d=!0,D(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(){A.data.bgActivePosistion=void 0,A.hoverData.selecting||e.emit(u("boxstart")),k[4]=1,A.hoverData.selecting=!0,A.redrawHint("select",!0),A.redraw()};if(3===A.hoverData.which){if(b){var w=u("cxtdrag");o?o.emit(w):e.emit(w),A.hoverData.cxtDragged=!0,(!A.hoverData.cxtOver||l!==A.hoverData.cxtOver)&&(A.hoverData.cxtOver&&A.hoverData.cxtOver.emit(u("cxtdragout")),A.hoverData.cxtOver=l,l&&l.emit(u("cxtdragover")))}}else if(A.hoverData.dragging){if(d=!0,e.panningEnabled()&&e.userPanningEnabled()){if(A.hoverData.justStartedPan){var x=A.hoverData.mdownPos;c={x:(h[0]-x[0])*f,y:(h[1]-x[1])*f},A.hoverData.justStartedPan=!1}else c={x:p[0]*f,y:p[1]*f};e.panBy(c),e.emit(u("dragpan")),A.hoverData.dragged=!0}h=A.projectIntoViewport(a.clientX,a.clientY)}else if(1==k[4]&&(null==o||o.pannable()))b&&(!A.hoverData.dragging&&e.boxSelectionEnabled()&&(t||!e.panningEnabled()||!e.userPanningEnabled())?v():!A.hoverData.selecting&&e.panningEnabled()&&e.userPanningEnabled()&&F(o,A.hoverData.downs)&&(A.hoverData.dragging=!0,A.hoverData.justStartedPan=!0,k[4]=0,A.data.bgActivePosistion=c$(i),A.redrawHint("select",!0),A.redraw()),o&&o.pannable()&&o.active()&&o.unactivate());else{if(o&&o.pannable()&&o.active()&&o.unactivate(),o&&o.grabbed()||l==n||(n&&D(n,["mouseout","tapdragout"],a,{x:h[0],y:h[1]}),l&&D(l,["mouseover","tapdragover"],a,{x:h[0],y:h[1]}),A.hoverData.last=l),o)if(b){if(e.boxSelectionEnabled()&&t)o&&o.grabbed()&&(P(q),o.emit(u("freeon")),q.emit(u("free")),A.dragData.didDrag&&(o.emit(u("dragfreeon")),q.emit(u("dragfree")))),v();else if(o&&o.grabbed()&&A.nodeIsDraggable(o)){var y,z=!A.dragData.didDrag;z&&A.redrawHint("eles",!0),A.dragData.didDrag=!0,A.hoverData.draggingEles||O(q,{inDragLayer:!0});var B={x:0,y:0};if(bB(p[0])&&bB(p[1])&&(B.x+=p[0],B.y+=p[1],z)){var C=A.hoverData.dragDelta;C&&bB(C[0])&&bB(C[1])&&(B.x+=C[0],B.y+=C[1])}A.hoverData.draggingEles=!0,q.silentShift(B).emit(u("position")).emit(u("drag")),A.redrawHint("drag",!0),A.redraw()}}else 0===(y=A.hoverData.dragDelta=A.hoverData.dragDelta||[]).length?(y.push(p[0]),y.push(p[1])):(y[0]+=p[0],y[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),A.registerBinding(B,"mouseup",function(a){if((1!==A.hoverData.which||1===a.which||!A.hoverData.capture)&&A.hoverData.capture){A.hoverData.capture=!1;var e=A.cy,f=A.projectIntoViewport(a.clientX,a.clientY),g=A.selection,h=A.findNearestElement(f[0],f[1],!0,!1),i=A.dragData.possibleDragElements,j=A.hoverData.down,k=E(a);A.data.bgActivePosistion&&(A.redrawHint("select",!0),A.redraw()),A.hoverData.tapholdCancelled=!0,A.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===A.hoverData.which){var n=l("cxttapend");if(j?j.emit(n):e.emit(n),!A.hoverData.cxtDragged){var o=l("cxttap");j?j.emit(o):e.emit(o)}A.hoverData.cxtDragged=!1,A.hoverData.which=null}else if(1===A.hoverData.which){if(D(h,["mouseup","tapend","vmouseup"],a,{x:f[0],y:f[1]}),A.dragData.didDrag||A.hoverData.dragged||A.hoverData.selecting||A.hoverData.isOverThresholdDrag||(D(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,D(j,["dblclick","dbltap","vdblclick"],a,{x:f[0],y:f[1]})):(b=setTimeout(function(){c||D(j,["oneclick","onetap","voneclick"],a,{x:f[0],y:f[1]})},e.multiClickDebounceTime()),d=a.timeStamp)),null!=j||A.dragData.didDrag||A.hoverData.selecting||A.hoverData.dragged||E(a)||(e.$(C).unselect(["tapunselect"]),i.length>0&&A.redrawHint("eles",!0),A.dragData.possibleDragElements=i=e.collection()),h!=j||A.dragData.didDrag||A.hoverData.selecting||null==h||!h._private.selectable||(A.hoverData.dragging||("additive"===e.selectionType()||k?h.selected()?h.unselect(["tapunselect"]):h.select(["tapselect"]):k||(e.$(C).unmerge(h).unselect(["tapunselect"]),h.select(["tapselect"]))),A.redrawHint("eles",!0)),A.hoverData.selecting){var p=e.collection(A.getAllInBox(g[0],g[1],g[2],g[3]));A.redrawHint("select",!0),p.length>0&&A.redrawHint("eles",!0),e.emit(l("boxend"));"additive"===e.selectionType()||k||e.$(C).unmerge(p).unselect(),p.emit(l("box")).stdFilter(function(a){return a.selectable()&&!a.selected()}).select().emit(l("boxselect")),A.redraw()}if(A.hoverData.dragging&&(A.hoverData.dragging=!1,A.redrawHint("select",!0),A.redrawHint("eles",!0),A.redraw()),!g[4]){A.redrawHint("drag",!0),A.redrawHint("eles",!0);var q=j&&j.grabbed();P(i),q&&(j.emit(l("freeon")),i.emit(l("free")),A.dragData.didDrag&&(j.emit(l("dragfreeon")),i.emit(l("dragfree"))))}}g[4]=0,A.hoverData.down=null,A.hoverData.cxtStarted=!1,A.hoverData.draggingEles=!1,A.hoverData.selecting=!1,A.hoverData.isOverThresholdDrag=!1,A.dragData.didDrag=!1,A.hoverData.dragged=!1,A.hoverData.dragDelta=[],A.hoverData.mdownPos=null,A.hoverData.mdownGPos=null,A.hoverData.which=null}},!1);var Z=[],$=1e5,_=function(a,b){for(var c=0;c<a.length;c++)if(a[c]%b!=0)return!1;return!0},aa=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},ab=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(Z.length>=4){if(!(e=_(Z,5))){var d=Math.abs(Z[0]);e=aa(Z)&&d>5}if(e)for(var f=0;f<Z.length;f++)$=Math.min(Math.abs(Z[f]),$)}else Z.push(c),b=!0;else e&&($=Math.min(Math.abs(c),$));if(!A.scrollingPage){var g=A.cy,h=g.zoom(),i=g.pan(),j=A.projectIntoViewport(a.clientX,a.clientY),k=[j[0]*h+i.x,j[1]*h+i.y];if(A.hoverData.draggingEles||A.hoverData.dragging||A.hoverData.cxtStarted||0!==A.selection[4])return void a.preventDefault();if(g.panningEnabled()&&g.userPanningEnabled()&&g.zoomingEnabled()&&g.userZoomingEnabled()){a.preventDefault(),A.data.wheelZooming=!0,clearTimeout(A.data.wheelTimeout),A.data.wheelTimeout=setTimeout(function(){A.data.wheelZooming=!1,A.redrawHint("eles",!0),A.redraw()},150),b&&Math.abs(c)>5&&(c=5*c5(c)),l=-(c/250),e&&(l/=$,l*=3),l*=A.wheelSensitivity,1===a.deltaMode&&(l*=33);var l,n=g.zoom()*Math.pow(10,l);"gesturechange"===a.type&&(n=A.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]}})}}}};A.registerBinding(A.container,"wheel",ab,!0),A.registerBinding(B,"scroll",function(a){A.scrollingPage=!0,clearTimeout(A.scrollingPageTimeout),A.scrollingPageTimeout=setTimeout(function(){A.scrollingPage=!1},250)},!0),A.registerBinding(A.container,"gesturestart",function(a){A.gestureStartZoom=A.cy.zoom(),A.hasTouchStarted||a.preventDefault()},!0),A.registerBinding(A.container,"gesturechange",function(a){A.hasTouchStarted||ab(a)},!0),A.registerBinding(A.container,"mouseout",function(a){var b=A.projectIntoViewport(a.clientX,a.clientY);A.cy.emit({originalEvent:a,type:"mouseout",position:{x:b[0],y:b[1]}})},!1),A.registerBinding(A.container,"mouseover",function(a){var b=A.projectIntoViewport(a.clientX,a.clientY);A.cy.emit({originalEvent:a,type:"mouseover",position:{x:b[0],y:b[1]}})},!1);var ac=function(a,b,c,d){return Math.sqrt((c-a)*(c-a)+(d-b)*(d-b))},ad=function(a,b,c,d){return(c-a)*(c-a)+(d-b)*(d-b)};if(A.registerBinding(A.container,"touchstart",t=function(a){if(A.hasTouchStarted=!0,X(a)){R(),A.touchData.capture=!0,A.data.bgActivePosistion=void 0;var b=A.cy,c=A.touchData.now,d=A.touchData.earlier;if(a.touches[0]){var e=A.projectIntoViewport(a.touches[0].clientX,a.touches[0].clientY);c[0]=e[0],c[1]=e[1]}if(a.touches[1]){var e=A.projectIntoViewport(a.touches[1].clientX,a.touches[1].clientY);c[2]=e[0],c[3]=e[1]}if(a.touches[2]){var e=A.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]){A.touchData.singleTouchMoved=!0,P(A.dragData.touchDragEles);var u=A.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=ac(f,g,h,i),k=ad(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=A.findNearestElement(c[0],c[1],!0,!0),y=A.findNearestElement(c[2],c[3],!0,!0);x&&x.isNode()?(x.activate().emit(t("cxttapstart")),A.touchData.start=x):y&&y.isNode()?(y.activate().emit(t("cxttapstart")),A.touchData.start=y):b.emit(t("cxttapstart")),A.touchData.start&&(A.touchData.start._private.grabbed=!1),A.touchData.cxt=!0,A.touchData.cxtDragged=!1,A.data.bgActivePosistion=void 0,A.redraw();return}}if(a.touches[2])b.boxSelectionEnabled()&&a.preventDefault();else if(a.touches[1]);else if(a.touches[0]){var z=A.findNearestElements(c[0],c[1],!0,!0),B=z[0];if(null!=B&&(B.activate(),A.touchData.start=B,A.touchData.starts=z,A.nodeIsGrabbable(B))){var C=A.dragData.touchDragEles=b.collection(),E=null;A.redrawHint("eles",!0),A.redrawHint("drag",!0),B.selected()?O(E=b.$(function(a){return a.selected()&&A.nodeIsGrabbable(a)}),{addToList:C}):O(B,{addToList:C}),K(B),B.emit(t("grabon")),E?E.forEach(function(a){a.emit(t("grab"))}):B.emit(t("grab"))}D(B,["touchstart","tapstart","vmousedown"],a,{x:c[0],y:c[1]}),null==B&&(A.data.bgActivePosistion={x:e[0],y:e[1]},A.redrawHint("select",!0),A.redraw()),A.touchData.singleTouchMoved=!1,A.touchData.singleTouchStartTime=+new Date,clearTimeout(A.touchData.tapholdTimeout),A.touchData.tapholdTimeout=setTimeout(function(){!1!==A.touchData.singleTouchMoved||A.pinching||A.touchData.selecting||D(A.touchData.start,["taphold"],a,{x:c[0],y:c[1]})},A.tapholdDuration)}if(a.touches.length>=1){for(var F=A.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];A.touchData.startGPosition=[H.clientX,H.clientY]}}},!1),A.registerBinding(B,"touchmove",u=function(a){var b=A.touchData.capture;if(b||X(a)){var c=A.selection,d=A.cy,e=A.touchData.now,l=A.touchData.earlier,q=d.zoom();if(a.touches[0]){var r=A.projectIntoViewport(a.touches[0].clientX,a.touches[0].clientY);e[0]=r[0],e[1]=r[1]}if(a.touches[1]){var r=A.projectIntoViewport(a.touches[1].clientX,a.touches[1].clientY);e[2]=r[0],e[3]=r[1]}if(a.touches[2]){var r=A.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=A.touchData.startGPosition;if(b&&a.touches[0]&&u){for(var v=[],w=0;w<e.length;w++)v[w]=e[w]-l[w];var x=a.touches[0].clientX-u[0],y=x*x,z=a.touches[0].clientY-u[1];ab=y+z*z>=A.touchTapThreshold2}if(b&&A.touchData.cxt){a.preventDefault();var B=a.touches[0].clientX-o,C=a.touches[0].clientY-p,E=a.touches[1].clientX-o,G=a.touches[1].clientY-p,H=ad(B,C,E,G);if(H/k>=2.25||H>=22500){A.touchData.cxt=!1,A.data.bgActivePosistion=void 0,A.redrawHint("select",!0);var I=t("cxttapend");A.touchData.start?(A.touchData.start.unactivate().emit(I),A.touchData.start=null):d.emit(I)}}if(b&&A.touchData.cxt){var I=t("cxtdrag");A.data.bgActivePosistion=void 0,A.redrawHint("select",!0),A.touchData.start?A.touchData.start.emit(I):d.emit(I),A.touchData.start&&(A.touchData.start._private.grabbed=!1),A.touchData.cxtDragged=!0;var J=A.findNearestElement(e[0],e[1],!0,!0);(!A.touchData.cxtOver||J!==A.touchData.cxtOver)&&(A.touchData.cxtOver&&A.touchData.cxtOver.emit(t("cxtdragout")),A.touchData.cxtOver=J,J&&J.emit(t("cxtdragover")))}else if(b&&a.touches[2]&&d.boxSelectionEnabled())a.preventDefault(),A.data.bgActivePosistion=void 0,this.lastThreeTouch=+new Date,A.touchData.selecting||d.emit(t("boxstart")),A.touchData.selecting=!0,A.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),A.redrawHint("select",!0),A.redraw();else if(b&&a.touches[1]&&!A.touchData.didSelect&&d.zoomingEnabled()&&d.panningEnabled()&&d.userZoomingEnabled()&&d.userPanningEnabled()){a.preventDefault(),A.data.bgActivePosistion=void 0,A.redrawHint("select",!0);var K=A.dragData.touchDragEles;if(K){A.redrawHint("drag",!0);for(var L=0;L<K.length;L++){var M=K[L]._private;M.grabbed=!1,M.rscratch.inDragLayer=!1}}var N=A.touchData.start,B=a.touches[0].clientX-o,C=a.touches[0].clientY-p,E=a.touches[1].clientX-o,G=a.touches[1].clientY-p,Q=ac(B,C,E,G),R=Q/j;if(s){var S=B-f,T=C-g,U=E-h,V=G-i,W=d.zoom(),Y=W*R,Z=d.pan(),$=n[0]*W+Z.x,_=n[1]*W+Z.y,aa={x:-Y/W*($-Z.x-(S+U)/2)+$,y:-Y/W*(_-Z.y-(T+V)/2)+_};if(N&&N.active()){var K=A.dragData.touchDragEles;P(K),A.redrawHint("drag",!0),A.redrawHint("eles",!0),N.unactivate().emit(t("freeon")),K.emit(t("free")),A.dragData.didDrag&&(N.emit(t("dragfreeon")),K.emit(t("dragfree")))}d.viewport({zoom:Y,pan:aa,cancelOnFailedZoom:!0}),d.emit(t("pinchzoom")),j=Q,f=B,g=C,h=E,i=G,A.pinching=!0}if(a.touches[0]){var r=A.projectIntoViewport(a.touches[0].clientX,a.touches[0].clientY);e[0]=r[0],e[1]=r[1]}if(a.touches[1]){var r=A.projectIntoViewport(a.touches[1].clientX,a.touches[1].clientY);e[2]=r[0],e[3]=r[1]}if(a.touches[2]){var r=A.projectIntoViewport(a.touches[2].clientX,a.touches[2].clientY);e[4]=r[0],e[5]=r[1]}}else if(a.touches[0]&&!A.touchData.didSelect){var ab,J,ae=A.touchData.start,af=A.touchData.last;if(A.hoverData.draggingEles||A.swipePanning||(J=A.findNearestElement(e[0],e[1],!0,!0)),b&&null!=ae&&a.preventDefault(),b&&null!=ae&&A.nodeIsDraggable(ae))if(ab){var K=A.dragData.touchDragEles,ag=!A.dragData.didDrag;ag&&O(K,{inDragLayer:!0}),A.dragData.didDrag=!0;var ah={x:0,y:0};if(bB(v[0])&&bB(v[1])&&(ah.x+=v[0],ah.y+=v[1],ag)){A.redrawHint("eles",!0);var ai=A.touchData.dragDelta;ai&&bB(ai[0])&&bB(ai[1])&&(ah.x+=ai[0],ah.y+=ai[1])}A.hoverData.draggingEles=!0,K.silentShift(ah).emit(t("position")).emit(t("drag")),A.redrawHint("drag",!0),A.touchData.startPosition[0]==l[0]&&A.touchData.startPosition[1]==l[1]&&A.redrawHint("eles",!0),A.redraw()}else{var ai=A.touchData.dragDelta=A.touchData.dragDelta||[];0===ai.length?(ai.push(v[0]),ai.push(v[1])):(ai[0]+=v[0],ai[1]+=v[1])}if(D(ae||J,["touchmove","tapdrag","vmousemove"],a,{x:e[0],y:e[1]}),ae&&ae.grabbed()||J==af||(af&&af.emit(t("tapdragout")),J&&J.emit(t("tapdragover"))),A.touchData.last=J,b)for(var L=0;L<e.length;L++)e[L]&&A.touchData.startPosition[L]&&ab&&(A.touchData.singleTouchMoved=!0);if(b&&(null==ae||ae.pannable())&&d.panningEnabled()&&d.userPanningEnabled()){F(ae,A.touchData.starts)&&(a.preventDefault(),A.data.bgActivePosistion||(A.data.bgActivePosistion=c$(A.touchData.startPosition)),A.swipePanning?(d.panBy({x:v[0]*q,y:v[1]*q}),d.emit(t("dragpan"))):ab&&(A.swipePanning=!0,d.panBy({x:x*q,y:z*q}),d.emit(t("dragpan")),ae&&(ae.unactivate(),A.redrawHint("select",!0),A.touchData.start=null)));var r=A.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&&!A.hoverData.draggingEles&&!A.swipePanning&&null!=A.data.bgActivePosistion&&(A.data.bgActivePosistion=void 0,A.redrawHint("select",!0),A.redraw())}},!1),A.registerBinding(B,"touchcancel",v=function(a){var b=A.touchData.start;A.touchData.capture=!1,b&&b.unactivate()}),A.registerBinding(B,"touchend",w=function(a){var b,c=A.touchData.start;if(A.touchData.capture){0===a.touches.length&&(A.touchData.capture=!1),a.preventDefault();var d=A.selection;A.swipePanning=!1,A.hoverData.draggingEles=!1;var e=A.cy,f=e.zoom(),g=A.touchData.now,h=A.touchData.earlier;if(a.touches[0]){var i=A.projectIntoViewport(a.touches[0].clientX,a.touches[0].clientY);g[0]=i[0],g[1]=i[1]}if(a.touches[1]){var i=A.projectIntoViewport(a.touches[1].clientX,a.touches[1].clientY);g[2]=i[0],g[3]=i[1]}if(a.touches[2]){var i=A.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(),A.touchData.cxt){if(b=j("cxttapend"),c?c.emit(b):e.emit(b),!A.touchData.cxtDragged){var k=j("cxttap");c?c.emit(k):e.emit(k)}A.touchData.start&&(A.touchData.start._private.grabbed=!1),A.touchData.cxt=!1,A.touchData.start=null,A.redraw();return}if(!a.touches[2]&&e.boxSelectionEnabled()&&A.touchData.selecting){A.touchData.selecting=!1;var l=e.collection(A.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,A.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()&&A.redrawHint("eles",!0),A.redraw()}if(null!=c&&c.unactivate(),a.touches[2])A.data.bgActivePosistion=void 0,A.redrawHint("select",!0);else if(a.touches[1]);else if(a.touches[0]);else if(!a.touches[0]){A.data.bgActivePosistion=void 0,A.redrawHint("select",!0);var n=A.dragData.touchDragEles;if(null!=c){var o=c._private.grabbed;P(n),A.redrawHint("drag",!0),A.redrawHint("eles",!0),o&&(c.emit(j("freeon")),n.emit(j("free")),A.dragData.didDrag&&(c.emit(j("dragfreeon")),n.emit(j("dragfree")))),D(c,["touchend","tapend","vmouseup","tapdragout"],a,{x:g[0],y:g[1]}),c.unactivate(),A.touchData.start=null}else D(A.findNearestElement(g[0],g[1],!0,!0),["touchend","tapend","vmouseup","tapdragout"],a,{x:g[0],y:g[1]});var p=A.touchData.startPosition[0]-g[0],q=A.touchData.startPosition[1]-g[1];A.touchData.singleTouchMoved||(c||e.$(":selected").unselect(["tapunselect"]),D(c,["tap","vclick"],a,{x:g[0],y:g[1]}),x=!1,a.timeStamp-z<=e.multiClickDebounceTime()?(y&&clearTimeout(y),x=!0,z=null,D(c,["dbltap","vdblclick"],a,{x:g[0],y:g[1]})):(y=setTimeout(function(){x||D(c,["onetap","voneclick"],a,{x:g[0],y:g[1]})},e.multiClickDebounceTime()),z=a.timeStamp)),null!=c&&!A.dragData.didDrag&&c._private.selectable&&(p*p+q*q)*f*f<A.touchTapThreshold2&&!A.pinching&&("single"===e.selectionType()?(e.$(C).unmerge(c).unselect(["tapunselect"]),c.select(["tapselect"])):c.selected()?c.unselect(["tapunselect"]):c.select(["tapselect"]),A.redrawHint("eles",!0)),A.touchData.singleTouchMoved=!0}for(var r=0;r<g.length;r++)h[r]=g[r];A.dragData.didDrag=!1,0===a.touches.length&&(A.touchData.dragDelta=[],A.touchData.startPosition=[null,null,null,null,null,null],A.touchData.startGPosition=null,A.touchData.didSelect=!1),a.touches.length<2&&(1===a.touches.length&&(A.touchData.startGPosition=[a.touches[0].clientX,a.touches[0].clientY]),A.pinching=!1,A.redrawHint("eles",!0),A.redraw())}},!1),"undefined"==typeof TouchEvent){var ae=[],af=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}},ag=function(a){ae.push({event:a,touch:af(a)})},ah=function(a){for(var b=0;b<ae.length;b++)if(ae[b].event.pointerId===a.pointerId)return void ae.splice(b,1)},ai=function(a){var b=ae.filter(function(b){return b.event.pointerId===a.pointerId})[0];b.event=a,b.touch=af(a)},aj=function(a){a.touches=ae.map(function(a){return a.touch})},ak=function(a){return"mouse"===a.pointerType||4===a.pointerType};A.registerBinding(A.container,"pointerdown",function(a){ak(a)||(a.preventDefault(),ag(a),aj(a),t(a))}),A.registerBinding(A.container,"pointerup",function(a){ak(a)||(ah(a),aj(a),w(a))}),A.registerBinding(A.container,"pointercancel",function(a){ak(a)||(ah(a),aj(a),v(a))}),A.registerBinding(A.container,"pointermove",function(a){ak(a)||(a.preventDefault(),ai(a),aj(a),u(a))})}};var kJ={};kJ.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 dI(e,f,this.points,a,b,c/2,d/2,g)},checkPoint:function(a,b,c,d,e,f,g,h){return dy(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=dp(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}(dH(g,a,b,c,d),e),i=dd(),h.forEach(function(a){return dg(i,a.x,a.y)}),i}}},kJ.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 dC(e,f,a,b,c/2+g,d/2+g)},checkPoint:function(a,b,c,d,e,f,g,h){return dD(a,b,d,e,f,g,c)}}},kJ.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?dP(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]=ks(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 dJ(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 dz(a,b,this.points,f,g,d,e,this.getOrCreateCorners(f,g,d,e,h,i,"corners"))}}},kJ.generateRoundRectangle=function(){return this.nodeShapes["round-rectangle"]=this.nodeShapes.roundrectangle={renderer:this,name:"round-rectangle",points:dL(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 dq(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?dO(d,e):h));return!!(dy(a,b,this.points,f,g,d,e-k,[0,-1],c)||dy(a,b,this.points,f,g,d-k,e,[0,-1],c)||dD(a,b,k,k,f-i+h,g-j+h,c)||dD(a,b,k,k,f+i-h,g-j+h,c)||dD(a,b,k,k,f+i-h,g+j-h,c)||dD(a,b,k,k,f-i+h,g+j-h,c))}}},kJ.generateCutRectangle=function(){return this.nodeShapes["cut-rectangle"]=this.nodeShapes.cutrectangle={renderer:this,name:"cut-rectangle",cornerLength:dQ(),points:dL(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 dI(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(dy(a,b,this.points,f,g,d,e-2*i,[0,-1],c)||dy(a,b,this.points,f,g,d-2*i,e,[0,-1],c))return!0;var j=this.generateCutTrianglePts(d,e,f,g);return dx(a,b,j.topLeft)||dx(a,b,j.topRight)||dx(a,b,j.bottomRight)||dx(a,b,j.bottomLeft)}}},kJ.generateBarrel=function(){return this.nodeShapes.barrel={renderer:this,name:"barrel",points:dL(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=da({x:a[0],y:a[1]},{x:a[2],y:a[3]},{x:a[4],y:a[5]},.15),c=da({x:a[0],y:a[1]},{x:a[2],y:a[3]},{x:a[4],y:a[5]},.5),d=da({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 dI(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=dR(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=dR(d,e),j=i.heightOffset,k=i.widthOffset;if(dy(a,b,this.points,f,g,d,e-2*j,[0,-1],c)||dy(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=dt(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=c9(p[5],p[3],p[1],q);if(p.isTop&&r<=b||p.isBottom&&b<=r)return!0}}return!1}}},kJ.generateBottomRoundrectangle=function(){return this.nodeShapes["bottom-round-rectangle"]=this.nodeShapes.bottomroundrectangle={renderer:this,name:"bottom-round-rectangle",points:dL(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=dG(e,f,a,b,i,j,k,j,!1);return l.length>0?l:dq(e,f,a,b,c,d,g,h)},checkPoint:function(a,b,c,d,e,f,g,h){var i=2*(h="auto"===h?dO(d,e):h);if(dy(a,b,this.points,f,g,d,e-i,[0,-1],c)||dy(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!!(dx(a,b,[f-j,g-k,f-j,g,f+j,g,f+j,g-k])||dD(a,b,i,i,f+d/2-h,g+e/2-h,c)||dD(a,b,i,i,f-d/2+h,g+e/2-h,c))}}},kJ.registerNodeShapes=function(){var a=this.nodeShapes={},b=this;this.generateEllipse(),this.generatePolygon("triangle",dL(3,0)),this.generateRoundPolygon("round-triangle",dL(3,0)),this.generatePolygon("rectangle",dL(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",dL(5,0)),this.generateRoundPolygon("round-pentagon",dL(5,0)),this.generatePolygon("hexagon",dL(6,0)),this.generateRoundPolygon("round-hexagon",dL(6,0)),this.generatePolygon("heptagon",dL(7,0)),this.generateRoundPolygon("round-heptagon",dL(7,0)),this.generatePolygon("octagon",dL(8,0)),this.generateRoundPolygon("round-octagon",dL(8,0));var d=Array(20),e=dN(5,0),f=dN(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=dM(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 kK={};kK.timeToRender=function(){return this.redrawTotalTime/this.redrawCount},kK.redraw=function(a){a=a||cA(),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},kK.beforeRender=function(a,b){if(!this.destroyed){null==b&&cu("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 kL=function(a,b,c){for(var d=a.beforeRenderCallbacks,e=0;e<d.length;e++)d[e].fn(b,c)};kK.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){kL(a,!0,d);var e=ca();a.render(a.renderOptions);var f=a.lastDrawTime=ca();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 kL(a,!1,d);a.skipFrame=!1,cc(c)}};cc(c)}};var kM=function(a){this.init(a)},kN=kM.prototype;kN.clientFunctions=["redrawHint","render","renderTo","matchCanvasSize","nodeShapeImpl","arrowShapeImpl"],kN.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")&&cw("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=bB(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()},kN.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()}},kN.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){}},kN.isHeadless=function(){return!1},[hO,kG,kH,kI,kJ,kK].forEach(function(a){bW(kN,a)});var kO=1e3/60,kP=function(a){return function(){var b=this,c=this.renderer;if(!b.dequeueingSetup){b.dequeueingSetup=!0;var d=b9(function(){c.redrawHint("eles",!0),c.redrawHint("drag",!0),c.redraw()},a.deqRedrawThreshold),e=a.priority||ct;c.beforeRender(function(e,f){var g=ca(),h=c.averageRedrawTime,i=c.lastRedrawTime,j=[],k=c.cy.extent(),l=c.getPixelRatio();for(e||c.flushRenderedStyleQueue();;){var n=ca(),o=n-g,p=n-f;if(i<kO){var q=kO-(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*kO)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))}}},kQ=bk(function a(b){var c=arguments.length>1&&void 0!==arguments[1]?arguments[1]:cr;bj(this,a),this.idsByKey=new cI,this.keyForId=new cI,this.cachesByLvl=new cI,this.lvls=[],this.getKey=b,this.doesEleInvalidateKey=c},[{key:"getIdsFor",value:function(a){null==a&&cu("Can not get id list for null key");var b=this.idsByKey,c=this.idsByKey.get(a);return c||(c=new cK,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 cI,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)}}]),kR={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},kS=cB({getKey:null,doesEleInvalidateKey:cr,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:cq,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),kT=function(a,b){this.renderer=a,this.onDequeues=[];var c=kS(b);bW(this,c),this.lookup=new kQ(c.getKey,c.doesEleInvalidateKey),this.setupDequeueing()},kU=kT.prototype;kU.reasons=kR,kU.getTextureQueue=function(a){return this.eleImgCaches=this.eleImgCaches||{},this.eleImgCaches[a]=this.eleImgCaches[a]||[]},kU.getRetiredTextureQueue=function(a){var b=this.eleImgCaches.retired=this.eleImgCaches.retired||{};return b[a]=b[a]||[]},kU.getElementQueue=function(){return this.eleCacheQueue=this.eleCacheQueue||new cQ(function(a,b){return b.reqs-a.reqs})},kU.getElementKeyToQueue=function(){return this.eleKeyToCacheQueue=this.eleKeyToCacheQueue||{}},kU.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(c4(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===kR.dequeue,x=e&&e===kR.highQuality,y=e&&e===kR.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,kR.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},kU.invalidateElements=function(a){for(var b=0;b<a.length;b++)this.invalidateElement(a[b])},kU.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)}},kU.checkTextureUtility=function(a){a.invalidatedWidth>=.2*a.width&&this.retireTexture(a)},kU.checkTextureFullness=function(a){var b=this.getTextureQueue(a.height);a.usedWidth/a.width>.8&&a.fullnessChecks>=10?cC(b,a):a.fullnessChecks++},kU.retireTexture=function(a){var b=a.height,c=this.getTextureQueue(b),d=this.lookup;cC(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)}cD(e),this.getRetiredTextureQueue(b).push(a)},kU.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},kU.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,cD(f.eleCaches),f.context.setTransform(1,0,0,1,0,0),f.context.clearRect(0,0,f.width,f.height),cC(d,f),c.push(f),f}},kU.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}},kU.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,kR.dequeue)}else break;return d},kU.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=cp,b.updateItem(e),b.pop(),c[d]=null):e.eles.unmerge(a))},kU.onDequeue=function(a){this.onDequeues.push(a)},kU.offDequeue=function(a){cC(this.onDequeues,a)},kU.setupDequeueing=kP({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(dk(f[g].boundingBox(),d))return!0;return!1},priority:function(a){return a.renderer.beforeRenderPriorities.eleTxrDeq}});var kV=function(a){var b=this,c=b.renderer=a,d=c.cy;b.layersByLevel={},b.firstGet=!0,b.lastInvalidationTime=ca()-500,b.skipping=!1,b.eleTxrDeqs=d.collection(),b.scheduleElementRefinement=b9(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 cQ(function(a,b){return b.reqs-a.reqs}),b.setupDequeueing()},kW=kV.prototype,kX=0;kW.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:kX=++kX%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},kW.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(c4(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&&cC(k,p)}var q=function(){if(!d){d=dd();for(var b=0;b<a.length;b++)df(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||!dn(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)},kW.getEleLevelForLayerLevel=function(a,b){return a},kW.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))},kW.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},kW.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}}},kW.updateElementsInLayers=function(a,b){for(var c=bE(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))}},kW.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},kW.invalidateElements=function(a){var b=this;0===a.length||(b.lastInvalidationTime=ca(),0!==a.length&&b.haveLayers()&&b.updateElementsInLayers(a,function(a,c,d){b.invalidateLayer(a)}))},kW.invalidateLayer=function(a){if(this.lastInvalidationTime=ca(),!a.invalid){var b=a.level,c=a.eles;cC(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)}}},kW.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])})},kW.enqueueElementRefinement=function(a){this.eleTxrDeqs.merge(a),this.scheduleElementRefinement()},kW.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))}},kW.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},kW.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()}},kW.requestRedraw=b9(function(){var a=this.renderer;a.redrawHint("eles",!0),a.redrawHint("drag",!0),a.redraw()},100),kW.setupDequeueing=kP({deqRedrawThreshold:50,deqCost:.15,deqAvgCost:.1,deqNoDrawCost:.9,deqFastCost:.9,deq:function(a,b){return a.dequeue(b)},onDeqd:ct,shouldRedraw:cq,priority:function(a){return a.renderer.beforeRenderPriorities.lyrTxrDeq}});var kY={};function kZ(a,b){for(var c=0;c<b.length;c++){var d=b[c];a.lineTo(d.x,d.y)}}function k$(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 k_(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 k0(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 k1(a,b,c,d){a.arc(b,c,d,0,2*Math.PI,!1)}kY.arrowShapeImpl=function(a){return(j||(j={polygon:kZ,"triangle-backcurve":k$,"triangle-tee":k_,"circle-triangle":k0,"triangle-cross":k_,circle:k1}))[a]};var k2={};k2.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)},k2.drawElementOverlay=function(a,b){b.isNode()?this.drawNodeOverlay(a,b):this.drawEdgeOverlay(a,b)},k2.drawElementUnderlay=function(a,b){b.isNode()?this.drawNodeUnderlay(a,b):this.drawEdgeUnderlay(a,b)},k2.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 k3=function(){return 0},k4=function(a,b){return a.getTextAngle(b,null)},k5=function(a,b){return a.getTextAngle(b,"source")},k6=function(a,b){return a.getTextAngle(b,"target")},k7=function(a,b){return b.effectiveOpacity()},k8=function(a,b){return b.pstyle("text-opacity").pfValue*b.effectiveOpacity()};k2.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||dk(l,d))){var o=b.isEdge(),p=b.element()._private.rscratch.badLine;this.drawElementUnderlay(a,b),this.drawCachedElementPortion(a,b,h,c,e,n,k3,k7),o&&p||this.drawCachedElementPortion(a,b,i,c,e,n,k4,k8),o&&!p&&(this.drawCachedElementPortion(a,b,j,c,e,n,k5,k8),this.drawCachedElementPortion(a,b,k,c,e,n,k6,k8)),this.drawElementOverlay(a,b)}},k2.drawElements=function(a,b){for(var c=0;c<b.length;c++){var d=b[c];this.drawElement(a,d)}},k2.drawCachedElements=function(a,b,c,d){for(var e=0;e<b.length;e++){var f=b[e];this.drawCachedElement(a,f,c,d)}},k2.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)}},k2.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 k9={};k9.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 la=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")}}}};k9.drawEdgeOverlay=la("overlay"),k9.drawEdgeUnderlay=la("underlay"),k9.drawEdgePath=function(a,b,c,d){var e=a._private.rscratch,f=b,g=!1,h=this.usePaths(),i=a.pstyle("line-dash-pattern").pfValue,j=a.pstyle("line-dash-offset").pfValue;if(h){var k=c.join("$");e.pathCacheKey&&e.pathCacheKey===k?(o=b=e.pathCache,g=!0):(o=b=new Path2D,e.pathCacheKey=k,e.pathCache=o)}if(f.setLineDash)switch(d){case"dotted":f.setLineDash([1,1]);break;case"dashed":f.setLineDash(i),f.lineDashOffset=j;break;case"solid":f.setLineDash([])}if(!g&&!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 l=2;l+3<c.length;l+=4)b.quadraticCurveTo(c[l],c[l+1],c[l+2],c[l+3]);break;case"straight":case"haystack":for(var n=2;n+1<c.length;n+=2)b.lineTo(c[n],c[n+1]);break;case"segments":if(e.isRound){var o,p,q=bl(e.roundCorners);try{for(q.s();!(p=q.n()).done;){var r=p.value;kr(b,r)}}catch(a){q.e(a)}finally{q.f()}b.lineTo(c[c.length-2],c[c.length-1])}else for(var s=2;s+1<c.length;s+=2)b.lineTo(c[s],c[s+1])}b=f,h?b.stroke(o):b.stroke(),b.setLineDash&&b.setLineDash([])},k9.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()}},k9.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)},k9.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)}}},k9.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=cj(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 lb={};lb.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){cw(a)}},lb.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 lc={};function ld(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()}lc.eleTextBiggerThanMin=function(a,b){return b||(b=Math.pow(2,Math.ceil(c4(a.cy().zoom()*this.getPixelRatio())))),!(a.pstyle("font-size").pfValue*b<a.pstyle("min-zoomed-font-size").pfValue)},lc.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)},lc.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},lc.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)},lc.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=cF(d,"labelAngle",b);c=a.isEdge()?g:0}else c="none"===f.strValue?0:f.pfValue;return c},lc.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=cF(f,"labelX",c),i=cF(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=cF(f,"labelWidth",c),q=cF(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(),ld(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?ld(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=cF(f,"labelWrapCachedLines",c),T=cF(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 le={};le.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(bB(o.x)&&bB(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,x=0;x<t.length;x++){var y=t[x];if(u[x]=null!=y&&"none"!==y){var z=b.cy().style().getIndexedStyle(b,"background-image-crossorigin","value",x);w++,v[x]=k.getCachedImage(y,z,function(){l.backgroundTimestamp=Date.now(),b.emitAndNotify("background")})}}var A=b.pstyle("background-blacken").value,B=b.pstyle("border-width").pfValue,C=b.pstyle("background-opacity").value*p,D=b.pstyle("border-color").value,E=b.pstyle("border-style").value,F=b.pstyle("border-join").value,G=b.pstyle("border-cap").value,H=b.pstyle("border-position").value,I=b.pstyle("border-dash-pattern").pfValue,J=b.pstyle("border-dash-offset").pfValue,K=b.pstyle("border-opacity").value*p,L=b.pstyle("outline-width").pfValue,M=b.pstyle("outline-color").value,N=b.pstyle("outline-style").value,O=b.pstyle("outline-opacity").value*p,P=b.pstyle("outline-offset").value,Q=b.pstyle("corner-radius").value;"auto"!==Q&&(Q=b.pstyle("corner-radius").pfValue);var R=function(){var c=arguments.length>0&&void 0!==arguments[0]?arguments[0]:C;k.eleFillStyle(a,b,c)},S=function(){var b=arguments.length>0&&void 0!==arguments[0]?arguments[0]:K;k.colorStrokeStyle(a,D[0],D[1],D[2],b)},T=function(){var b=arguments.length>0&&void 0!==arguments[0]?arguments[0]:O;k.colorStrokeStyle(a,M[0],M[1],M[2],b)},U=function(a,b,c,d){var e,f=k.nodePathCache=k.nodePathCache||[],g=ck("polygon"===c?c+","+d.join(","):c,""+b,""+a,""+Q),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}},V=b.pstyle("shape").strValue,W=b.pstyle("shape-polygon-points").pfValue;if(q){a.translate(o.x,o.y);var X=U(d,e,V,W);f=X.path,r=X.cacheHit}var Y=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,Q,n)}q?a.fill(f):a.fill()},Z=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,Q,n))},_=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,Q,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,Q,n))},aa=function(){var b=arguments.length>0&&void 0!==arguments[0]?arguments[0]:p,c=A>0?0:255;0!==A&&(k.colorFillStyle(a,c,c,c,(A>0?A:-A)*b),q?a.fill(f):a.fill())},ab=function(){if(B>0){if(a.lineWidth=B,a.lineCap=G,a.lineJoin=F,a.setLineDash)switch(E){case"dotted":a.setLineDash([1,1]);break;case"dashed":a.setLineDash(I),a.lineDashOffset=J;break;case"solid":case"double":a.setLineDash([])}if("center"!==H){if(a.save(),a.lineWidth*=2,"inside"===H)q?a.clip(f):a.clip();else{var b=new Path2D;b.rect(-d/2-B,-e/2-B,d+2*B,e+2*B),b.addPath(f),a.clip(b,"evenodd")}q?a.stroke(f):a.stroke(),a.restore()}else q?a.stroke(f):a.stroke();if("double"===E){a.lineWidth=B/3;var c=a.globalCompositeOperation;a.globalCompositeOperation="destination-out",q?a.stroke(f):a.stroke(),a.globalCompositeOperation=c}a.setLineDash&&a.setLineDash([])}},ac=function(){if(L>0){if(a.lineWidth=L,a.lineCap="butt",a.setLineDash)switch(N){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=B;"inside"===H&&(g=0),"outside"===H&&(g*=2);var h=(d+g+(L+P))/d,i=(e+g+(L+P))/e,j=d*h,l=e*i,n=k.nodeShapes[f].points;if(q&&(z=U(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+P+L)*1.4:"round-heptagon"===f?(p=(g+P+L)*1.075,s=-(g/2+P+L)/35):"round-hexagon"===f?p=(g+P+L)*1.12:"round-pentagon"===f?(p=(g+P+L)*1.13,s=-(g/2+P+L)/15):"round-tag"===f?(p=(g+P+L)*1.12,r=(g/2+L+P)*.07):"round-triangle"===f&&(p=Math.PI/2*(g+P+L),s=-(g+P/2+L)/Math.PI),0!==p&&(h=(d+p)/d,j=d*h,["round-hexagon","round-tag"].includes(f)||(i=(e+p)/e,l=e*i)),Q="auto"===Q?dP(j,l):Q;for(var t=j/2,u=l/2,v=Q+(g+L+P)/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,C,D,E,F=w.length;for(A=0,C=w[F-1];A<F;A++)D=w[A%F],E=w[(A+1)%F],x[A]=ks(C,D,E,v),C=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)?(Q="auto"===Q?dO(j,l):Q,k.drawRoundRectanglePath(z||a,c.x,c.y,j,l,Q+(g+L+P)/2)):["cutrectangle","cut-rectangle"].includes(f)?(Q="auto"===Q?dQ():Q,k.drawCutRectanglePath(z||a,c.x,c.y,j,l,null,Q+(g+L+P)/4)):["bottomroundrectangle","bottom-round-rectangle"].includes(f)?(Q="auto"===Q?dO(j,l):Q,k.drawBottomRoundRectanglePath(z||a,c.x,c.y,j,l,Q+(g+L+P)/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)?dA(dB(n,(g+L+P)/d)):dA(dB(n,-((g+L+P)/d))),k.drawPolygonPath(z||a,c.x,c.y,d,e,n));if(q?a.stroke(z):a.stroke(),"double"===N){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 ad=b.pstyle("ghost-offset-x").pfValue,ae=b.pstyle("ghost-offset-y").pfValue,af=b.pstyle("ghost-opacity").value,ag=af*p;a.translate(ad,ae),T(),ac(),R(af*C),Y(),Z(ag,!0),S(af*K),ab(),$(0!==A||0!==B),_(0!==A||0!==B),Z(ag,!1),aa(ag),a.translate(-ad,-ae)}q&&a.translate(-o.x,-o.y),i&&k.drawNodeUnderlay(a,b,o,d,e),q&&a.translate(o.x,o.y),T(),ac(),R(),Y(),Z(p,!0),S(),ab(),$(0!==A||0!==B),_(0!==A||0!==B),Z(p,!1),aa(),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 lf=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()}}}};le.drawNodeOverlay=lf("overlay"),le.drawNodeUnderlay=lf("underlay"),le.hasPie=function(a){return(a=a[0])._private.hasPie},le.hasStripe=function(a){return(a=a[0])._private.hasStripe},le.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)}},le.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 lg={};function lh(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 li(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 lj(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 lk(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 ll(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 lm(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 ln(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 lo(a,b,c){switch(b){case a.FLOAT:return new Float32Array(c);case a.INT:return new Int32Array(c)}}function lp(a,b,c,d){var e=bn(ln(a,c),3),f=e[0],g=e[1],h=e[2],i=lo(a,g,b*f),j=f*h,k=a.createBuffer();a.bindBuffer(a.ARRAY_BUFFER,k),a.bufferData(a.ARRAY_BUFFER,b*j,a.DYNAMIC_DRAW),a.enableVertexAttribArray(d),g===a.FLOAT?a.vertexAttribPointer(d,f,g,!1,j,0):g===a.INT&&a.vertexAttribIPointer(d,f,g,j,0),a.vertexAttribDivisor(d,1),a.bindBuffer(a.ARRAY_BUFFER,null);for(var l=Array(b),n=0;n<b;n++)l[n]=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,i,j,f,n);return k.dataArray=i,k.stride=j,k.size=f,k.getView=function(a){return l[a]},k.setPoint=function(a,b,c){var d=l[a];d[0]=b,d[1]=c},k.bufferSubData=function(b){a.bindBuffer(a.ARRAY_BUFFER,k),b?a.bufferSubData(a.ARRAY_BUFFER,0,i,0,b*f):a.bufferSubData(a.ARRAY_BUFFER,0,i)},k}lg.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},lg.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},lg.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=c6(j,l),o=c6(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},lg.gradientFillStyle=function(a,b,c,d){var e=this.createGradientStyleFor(a,"background",b,c,d);if(!e)return null;a.fillStyle=e},lg.colorFillStyle=function(a,b,c,d,e){a.fillStyle="rgba("+b+","+c+","+d+","+e+")"},lg.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)}},lg.gradientStrokeStyle=function(a,b,c,d){var e=this.createGradientStyleFor(a,"line",b,c,d);if(!e)return null;a.strokeStyle=e},lg.colorStrokeStyle=function(a,b,c,d,e){a.strokeStyle="rgba("+b+","+c+","+d+","+e+")"},lg.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)}},lg.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}},lg.renderTo=function(a,b,c,d){this.render({forcedContext:a,forcedZoom:b,forcedPan:c,drawAllLayers:!0,forcedPxRatio:d})},lg.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])},lg.render=function(a){var b=this;a=a||cA();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")},lg.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 l=this.cy.zoom(),n=e.core("selection-box-border-width").value/l;j.lineWidth=n,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]),n>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 l=this.cy.zoom(),o=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(o.x,o.y,e.core("active-bg-size").pfValue/l,0,2*Math.PI),j.fill()}var p=this.lastRedrawTime;if(this.showFps&&p){var q=Math.round(1e3/(p=Math.round(p))),r="1 frame = "+p+" ms = "+q+" 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",k||(k=j.measureText(r).actualBoundingBoxAscent),j.fillText(r,0,k),j.strokeRect(0,k+10,250,20),j.fillRect(0,k+10,250*Math.min(q/60,1),20)}g||(h[this.SELECT_BOX]=!1)}};var lq="undefined"!=typeof Float32Array?Float32Array:Array;function lr(){var a=new lq(9);return lq!=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 ls(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 lt(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 lu(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 lv(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 lw=bk(function a(b,c,d,e){bj(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=e(b,c,c),this.scratch=e(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}}]),lx=bk(function a(b,c,d,e){bj(this,a),this.r=b,this.texSize=c,this.texRows=d,this.createTextureCanvas=e,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 lw(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,g=bl(this.atlases);try{for(g.s();!(c=g.n()).done;)if(function(){var g=c.value,h=g.getKeys(),i=function(a,b){return a.intersection?a.intersection(b):new Set(bo(a).filter(function(a){return b.has(a)}))}(b,h);if(0===i.size)return d.push(g),h.forEach(function(a){return e.set(a,g)}),1;f||(f=a._createAtlas(),d.push(f));var j,k=bl(h);try{for(k.s();!(j=k.n()).done;){var l=j.value;if(!i.has(l)){var n=g.getOffsets(l),o=bn(n,2),p=o[0],q=o[1];f.canFit({w:p.w+q.w,h:p.h})||(f.lock(),f=a._createAtlas(),d.push(f)),g.canvas&&(a._copyTextureToNewAtlas(l,g,f),e.set(l,f))}}}catch(a){k.e(a)}finally{k.f()}g.dispose()}())continue}catch(a){g.e(a)}finally{g.f()}this.atlases=d,this.styleKeyToAtlas=e,this.markedKeys=new Set}},{key:"_copyTextureToNewAtlas",value:function(a,b,c){var d=bn(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,i=e.h;c.draw(a,{w:h,h:i},function(a){a.drawImage(g,0,0,h,i,0,0,h,i)})}}},{key:"getCounts",value:function(){return{keyCount:this.styleKeyToAtlas.size,atlasCount:new Set(this.styleKeyToAtlas.values()).size}}}]),ly=bk(function a(b,c){bj(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 lx(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=bW({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,g=d.filterEle,h=void 0===g?function(){return!0}:g,i=d.filterType,j=void 0===i?function(){return!0}:i,k=!1,l=!1,n=bl(a);try{for(n.s();!(b=n.n()).done;){var o=b.value;if(h(o)){var p,q=bl(this.renderTypes.values());try{for(q.s();!(p=q.n()).done;)!function(){var a=p.value,b=a.type;if(j(b)){var d=c.collections.get(a.collection),e=a.getKey(o),g=Array.isArray(e)?e:[e];if(f)g.forEach(function(a){return d.markKeyForGC(a)}),l=!0;else{var h=a.getID?a.getID(o):o.id(),i=c._key(b,h),n=c.typeAndIdToKey.get(i);void 0!==n&&!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,n)&&(k=!0,c.typeAndIdToKey.delete(i),n.forEach(function(a){return d.markKeyForGC(a)}))}}}()}catch(a){q.e(a)}finally{q.f()}}}}catch(a){n.e(a)}finally{n.f()}return l&&(this.gc(),k=!1),k}},{key:"gc",value:function(){var a,b=bl(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=bn(g.getOffsets(e),2),i=h[0];return{atlas:g,tex:i,tex1:i,tex2:h[1],bb:f}})}},{key:"getDebugInfo",value:function(){var a,b=[],c=bl(this.collections);try{for(c.s();!(a=c.n()).done;){var d=bn(a.value,2),e=d[0],f=d[1].getCounts(),g=f.keyCount,h=f.atlasCount;b.push({type:e,keyCount:g,atlasCount:h})}}catch(a){c.e(a)}finally{c.f()}return b}}]),lz=bk(function a(b){bj(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}}]),lA={name:"screen",screen:!0},lB={name:"picking",picking:!0},lC=bk(function a(b,c,d){bj(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=li,this.atlasManager=new ly(b,d),this.batchManager=new lz(d),this.simpleShapeOptions=new Map,this.program=this._createShaderProgram(lA),this.pickingProgram=this._createShaderProgram(lB),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=lh(a,a.VERTEX_SHADER,b),e=lh(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,i=this.gl,j=this.program,k=i.createVertexArray();return i.bindVertexArray(k),a=j.aPosition,c=(b=bn(ln(i,"vec2"),2))[0],e=lo(i,d=b[1],g),f=i.createBuffer(),i.bindBuffer(i.ARRAY_BUFFER,f),i.bufferData(i.ARRAY_BUFFER,e,i.STATIC_DRAW),d===i.FLOAT?i.vertexAttribPointer(a,c,d,!1,0,0):d===i.INT&&i.vertexAttribIPointer(a,c,d,0,0),i.enableVertexAttribArray(a),i.bindBuffer(i.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}(i,h,j.aTransform),this.indexBuffer=lp(i,h,"vec4",j.aIndex),this.vertTypeBuffer=lp(i,h,"int",j.aVertType),this.atlasIdBuffer=lp(i,h,"int",j.aAtlasId),this.texBuffer=lp(i,h,"vec4",j.aTex),this.pointAPointBBuffer=lp(i,h,"vec4",j.aPointAPointB),this.pointCPointDBuffer=lp(i,h,"vec4",j.aPointCPointD),this.lineWidthBuffer=lp(i,h,"vec2",j.aLineWidth),this.colorBuffer=lp(i,h,"vec4",j.aColor),this.cornerRadiusBuffer=lp(i,h,"vec4",j.aCornerRadius),this.borderColorBuffer=lp(i,h,"vec4",j.aBorderColor),i.bindVertexArray(null),k}},{key:"buffers",get:function(){var a=this;return this._buffers||(this._buffers=Object.keys(this).filter(function(a){return bP(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]:lA;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 g=f.getTexPickingMode(a);if(1===g)return;if(2==g)return void this.drawPickingRectangle(a,b,c)}var h,i=bl(d.getAtlasInfo(a,c));try{for(i.s();!(h=i.n()).done;){var j=h.value,k=j.atlas,l=j.tex1,n=j.tex2;e.canAddToCurrentBatch(k)||this.endBatch();for(var o=e.getAtlasIndexForBatch(k),p=0,q=[[l,!0],[n,!1]];p<q.length;p++){var r=bn(q[p],2),s=r[0],t=r[1];if(0!=s.w){var u=this.instanceCount;this.vertTypeBuffer.getView(u)[0]=0;var v=this.indexBuffer.getView(u);lm(b,v),this.atlasIdBuffer.getView(u)[0]=o;var w=this.texBuffer.getView(u);w[0]=s.x,w[1]=s.y,w[2]=s.w,w[3]=s.h;var x=this.transformBuffer.getMatrixView(u);this.setTransformMatrix(a,x,f,j,t),this.instanceCount++,!t&&this.wrappedCount++,this.instanceCount>=this.maxInstances&&this.endBatch()}}}}catch(a){i.e(a)}finally{i.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){ls(a);var e,f,g=c.getRotation?c.getRotation(d):0;if(0!==g){var h=c.getRotationPoint(d);lt(a,a,[h.x,h.y]),lu(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;lt(a,a,[e,f]),lv(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,lm(b,this.indexBuffer.getView(e)),ll([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)}lm(b,this.indexBuffer.getView(g)),ll(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){ll(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?dO(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);ls(p),lt(p,p,[d,e]),lv(p,p,[n,n]),lu(p,p,f),this.vertTypeBuffer.getView(o)[0]=3,lm(b,this.indexBuffer.getView(o)),ll(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,lm(b,this.indexBuffer.getView(i)),ll(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,lm(b,this.indexBuffer.getView(l)),ll(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,g=this.renderTarget.picking?this.pickingProgram:this.program;a.useProgram(g),a.bindVertexArray(b);var h,i=bl(this.buffers);try{for(i.s();!(h=i.n()).done;)h.value.bufferSubData(d)}catch(a){i.e(a)}finally{i.f()}for(var j=this.batchManager.getAtlases(),k=0;k<j.length;k++)j[k].bufferIfNeeded(a);for(var l=0;l<j.length;l++)a.activeTexture(a.TEXTURE0+l),a.bindTexture(a.TEXTURE_2D,j[l].texture),a.uniform1i(g.uTextures[l],l);a.uniform1f(g.uZoom,(f=(e=this.r).pixelRatio,e.cy.zoom()*f)),a.uniformMatrix3fv(g.uPanZoomMatrix,!1,this.panZoomMatrix),a.uniform1i(g.uAtlasSize,this.batchManager.getAtlasSize());var n=ll(this.bgColor,1);a.uniform4fv(g.uBGColor,n),a.drawArraysInstanced(a.TRIANGLES,0,c,d),a.bindVertexArray(null),a.bindTexture(a.TEXTURE_2D,null),this.debug&&this.batchDebugInfo.push({count:d,atlasCount:j.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}}}]),lD={};function lE(a,b){return cF(a._private.rscratch,"labelWrapCachedLines",b)||[]}lD.initWebgl=function(a,b){var c,d,e,f,g,h,i,j,k=this,l=k.data.contexts[k.WEBGL];a.bgColor=b$((c=k.cy.container())&&c.style&&c.style.backgroundColor||"white"),a.webglTexSize=Math.min(a.webglTexSize,l.getParameter(l.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,l.getParameter(l.MAX_TEXTURE_IMAGE_UNITS)),k.webglDebug=a.webglDebug,k.webglDebugShowAtlases=a.webglDebugShowAtlases,i=l.createFramebuffer(),l.bindFramebuffer(l.FRAMEBUFFER,i),j=l.createTexture(),l.bindTexture(l.TEXTURE_2D,j),l.texParameteri(l.TEXTURE_2D,l.TEXTURE_MIN_FILTER,l.LINEAR),l.texParameteri(l.TEXTURE_2D,l.TEXTURE_WRAP_S,l.CLAMP_TO_EDGE),l.texParameteri(l.TEXTURE_2D,l.TEXTURE_WRAP_T,l.CLAMP_TO_EDGE),l.framebufferTexture2D(l.FRAMEBUFFER,l.COLOR_ATTACHMENT0,l.TEXTURE_2D,j,0),l.bindFramebuffer(l.FRAMEBUFFER,null),i.setFramebufferAttachmentSizes=function(a,b){l.bindTexture(l.TEXTURE_2D,j),l.texImage2D(l.TEXTURE_2D,0,l.RGBA,a,b,0,l.RGBA,l.UNSIGNED_BYTE,null)},k.pickingFrameBuffer=i,k.pickingFrameBuffer.needsDraw=!0,k.drawing=new lC(k,l,a);var n=function(a){return function(b){return k.getTextAngle(b,a)}},o=function(a){return function(b){var c=b.pstyle(a);return c&&c.value}},p=function(a){return function(b){return b.pstyle("".concat(a,"-opacity")).value>0}},q=function(a){return"yes"===a.pstyle("text-events").strValue?2:1},r=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}};k.drawing.addAtlasCollection("node",{texRows:a.webglTexRowsNodes}),k.drawing.addAtlasCollection("label",{texRows:a.webglTexRows}),k.drawing.addTextureAtlasRenderType("node-body",{collection:"node",getKey:b.getStyleKey,getBoundingBox:b.getElementBox,drawElement:b.drawElement}),k.drawing.addSimpleShapeRenderType("node-body",{getBoundingBox:r,isSimple:lk,shapeProps:{shape:"shape",color:"background-color",opacity:"background-opacity",radius:"corner-radius",border:!0}}),k.drawing.addSimpleShapeRenderType("node-overlay",{getBoundingBox:r,isVisible:p("overlay"),shapeProps:{shape:"overlay-shape",color:"overlay-color",opacity:"overlay-opacity",padding:"overlay-padding",radius:"overlay-corner-radius"}}),k.drawing.addSimpleShapeRenderType("node-underlay",{getBoundingBox:r,isVisible:p("underlay"),shapeProps:{shape:"underlay-shape",color:"underlay-color",opacity:"underlay-opacity",padding:"underlay-padding",radius:"underlay-corner-radius"}}),k.drawing.addTextureAtlasRenderType("label",{collection:"label",getTexPickingMode:q,getKey:lF(b.getLabelKey,null),getBoundingBox:lG(b.getLabelBox,null),drawClipped:!0,drawElement:b.drawLabel,getRotation:n(null),getRotationPoint:b.getLabelRotationPoint,getRotationOffset:b.getLabelRotationOffset,isVisible:o("label")}),k.drawing.addTextureAtlasRenderType("edge-source-label",{collection:"label",getTexPickingMode:q,getKey:lF(b.getSourceLabelKey,"source"),getBoundingBox:lG(b.getSourceLabelBox,"source"),drawClipped:!0,drawElement:b.drawSourceLabel,getRotation:n("source"),getRotationPoint:b.getSourceLabelRotationPoint,getRotationOffset:b.getSourceLabelRotationOffset,isVisible:o("source-label")}),k.drawing.addTextureAtlasRenderType("edge-target-label",{collection:"label",getTexPickingMode:q,getKey:lF(b.getTargetLabelKey,"target"),getBoundingBox:lG(b.getTargetLabelBox,"target"),drawClipped:!0,drawElement:b.drawTargetLabel,getRotation:n("target"),getRotationPoint:b.getTargetLabelRotationPoint,getRotationOffset:b.getTargetLabelRotationOffset,isVisible:o("target-label")});var s=b9(function(){console.log("garbage collect flag set"),k.data.gc=!0},1e4);k.onUpdateEleCalcs(function(a,b){var c=!1;b&&b.length>0&&(c|=k.drawing.invalidate(b)),c&&s()}),e=(d=k).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]),lJ(d,a,lA)))},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,g=function(a,b,c,d,e){var f=lj(a),g=f.pan,h=f.zoom,i=bn((q=b*h+g.x,r=c*h+g.y,[q,r=Math.round(a.canvasHeight-r)]),2),j=i[0],k=i[1],l=a.data.contexts[a.WEBGL];l.bindFramebuffer(l.FRAMEBUFFER,a.pickingFrameBuffer),a.pickingFrameBuffer.needsDraw&&(l.viewport(0,0,l.canvas.width,l.canvas.height),lJ(a,null,lB),a.pickingFrameBuffer.needsDraw=!1);var n=new Uint8Array(144);l.readPixels(j-3,k-3,6,6,l.RGBA,l.UNSIGNED_BYTE,n),l.bindFramebuffer(l.FRAMEBUFFER,null);for(var o=new Set,p=0;p<36;p++){var q,r,s,t=(s=n.slice(4*p,4*p+4))[0]+(s[1]<<8)+(s[2]<<16)+(s[3]<<24)-1;t>=0&&o.add(t)}return o}(a,b,c),h=a.getCachedZSortedEles(),i=bl(g);try{for(i.s();!(f=i.n()).done;){var j=h[f.value];if(!d&&j.isNode()&&(d=j),!e&&j.isEdge()&&(e=j),d&&e)break}}catch(a){i.e(a)}finally{i.f()}return[d,e].filter(Boolean)}(d,a,b)},g=d.invalidateCachedZSortedEles,d.invalidateCachedZSortedEles=function(){g.call(d),d.pickingFrameBuffer.needsDraw=!0},h=d.notify,d.notify=function(a,b){h.call(d,a,b),"viewport"===a||"bounds"===a?d.pickingFrameBuffer.needsDraw=!0:"background"===a&&d.drawing.invalidate(b,{type:"node-body"})}};var lF=function(a,b){return function(c){var d=a(c),e=lE(c,b);return e.length>1?e.map(function(a,b){return"".concat(d,"_").concat(b)}):d}},lG=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=lE(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 lH(a,b){var c=a.canvasWidth,d=a.canvasHeight,e=lj(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 lI(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 lJ(a,b,c){a.webglDebug&&(U=performance.now());var d=a.drawing,e=0;if(c.screen&&a.data.canvasNeedsRedraw[a.SELECT_BOX]&&a.drawSelectionRectangle(b,function(b){return lH(a,b)}),a.data.canvasNeedsRedraw[a.NODE]||c.picking){var f,g,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=a.data.contexts[a.WEBGL];c.screen?(L.clearColor(0,0,0,0),L.enable(L.BLEND),L.blendFunc(L.ONE,L.ONE_MINUS_SRC_ALPHA)):L.disable(L.BLEND),L.clear(L.COLOR_BUFFER_BIT|L.DEPTH_BUFFER_BIT),L.viewport(0,0,L.canvas.width,L.canvas.height);var M=(f=a.canvasWidth,g=a.canvasHeight,i=(h=lj(a)).pan,j=h.zoom,lt(k=lr(),k,[i.x,i.y]),lv(k,k,[j,j]),n=l=lr(),n[0]=2/f,n[1]=0,n[2]=0,n[3]=0,n[4]=-2/g,n[5]=0,n[6]=-1,n[7]=1,n[8]=1,p=o=lr(),q=l[0],r=l[1],s=l[2],t=l[3],u=l[4],v=l[5],w=l[6],x=l[7],y=l[8],z=k[0],A=k[1],B=k[2],C=k[3],D=k[4],E=k[5],F=k[6],G=k[7],H=k[8],p[0]=z*q+A*t+B*w,p[1]=z*r+A*u+B*x,p[2]=z*s+A*v+B*y,p[3]=C*q+D*t+E*w,p[4]=C*r+D*u+E*x,p[5]=C*s+D*v+E*y,p[6]=F*q+G*t+H*w,p[7]=F*r+G*u+H*x,p[8]=F*s+G*v+H*y,o),N=a.getCachedZSortedEles();if(e=N.length,d.startFrame(M,c),c.screen){for(var O=0;O<N.nondrag.length;O++)lI(a,O,N.nondrag[O]);for(var P=0;P<N.drag.length;P++)lI(a,P,N.drag[P])}else if(c.picking)for(var Q=0;Q<N.length;Q++)lI(a,Q,N[Q]);d.endFrame(),c.screen&&a.webglDebugShowAtlases&&((I=a.data.contexts[a.NODE]).save(),lH(a,I),I.strokeStyle="rgba(0, 0, 0, 0.3)",I.beginPath(),I.moveTo(-1e3,0),I.lineTo(1e3,0),I.stroke(),I.beginPath(),I.moveTo(0,-1e3),I.lineTo(0,1e3),I.stroke(),I.restore(),K=0,(J=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",K++),J(a.drawing,"label",K++)),a.data.canvasNeedsRedraw[a.NODE]=!1,a.data.canvasNeedsRedraw[a.DRAG]=!1}if(a.webglDebug){var R=Math.ceil(performance.now()-U),S=d.getDebugInfo(),T=["".concat(e," elements"),"".concat(S.totalInstances," instances"),"".concat(S.batchCount," batches"),"".concat(S.totalAtlases," atlases"),"".concat(S.wrappedCount," wrapped textures"),"".concat(S.simpleCount," simple shapes")].join(", ");console.log("WebGL (".concat(c.name,") - frame time ").concat(R,"ms")),console.log("Totals:"),console.log(" ".concat(T)),console.log("Texture Atlases Used:");var U,V,W=bl(S.atlasInfo);try{for(W.s();!(V=W.n()).done;){var X=V.value;console.log(" ".concat(X.type,": ").concat(X.keyCount," keys, ").concat(X.atlasCount," atlases"))}}catch(a){W.e(a)}finally{W.f()}console.log("")}a.data.gc&&(console.log("Garbage Collect!"),a.data.gc=!1,d.gc())}var lK={};lK.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()},lK.drawRoundPolygonPath=function(a,b,c,d,e,f,g){g.forEach(function(b){return kr(a,b)}),a.closePath()},lK.drawRoundRectanglePath=function(a,b,c,d,e,f){var g=d/2,h=e/2,i="auto"===f?dO(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()},lK.drawBottomRoundRectanglePath=function(a,b,c,d,e,f){var g=d/2,h=e/2,i="auto"===f?dO(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()},lK.drawCutRectanglePath=function(a,b,c,d,e,f,g){var h=d/2,i=e/2,j="auto"===g?dQ():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()},lK.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=dR(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 lL={},lM={},lN=Math.PI/40,lO=0*Math.PI;lO<2*Math.PI;lO+=lN)lL[lO]=Math.sin(lO),lM[lO]=Math.cos(lO);lK.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+=lN)f=b-h*lL[j]*0+h*lM[j]*1,g=c+i*lM[j]*0+i*lL[j]*1,0===j?a.moveTo(f,g):a.lineTo(f,g);a.closePath()};var lP={};function lQ(a){var b=a.indexOf(",");return a.substr(b+1)}function lR(a,b,c){var d=function(){return b.toDataURL(c,a.quality)};switch(a.output){case"blob-promise":return new eX(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})}(lQ(d()),c);case"base64":return lQ(d());default:return d()}}lP.createBuffer=function(a,b){var c=document.createElement("canvas");return c.width=a,c.height=b,[c,c.getContext("2d")]},lP.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=bB(a.maxWidth)||bB(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;bB(a.maxWidth)&&(j=i*a.maxWidth/e),bB(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},lP.png=function(a){return lR(a,this.bufferCanvasImage(a),"image/png")},lP.jpg=function(a){return lR(a,this.bufferCanvasImage(a),"image/jpeg")};var lS={};lS.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 lT=lU.prototype;function lU(a){var b=this,c=b.cy.window().document;a.webgl&&(lT.CANVAS_LAYERS=b.CANVAS_LAYERS=4,console.log("webgl rendering enabled")),b.data={canvases:Array(lT.CANVAS_LAYERS),contexts:Array(lT.CANVAS_LAYERS),canvasNeedsRedraw:Array(lT.CANVAS_LAYERS),bufferCanvases:Array(lT.BUFFER_COUNT),bufferContexts:Array(lT.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;for(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"},i=0;i<lT.CANVAS_LAYERS;i++){var j=b.data.canvases[i]=c.createElement("canvas"),k=lT.CANVAS_TYPES[i];b.data.contexts[i]=j.getContext(k),b.data.contexts[i]||cu("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(lT.CANVAS_LAYERS-i),b.data.canvasContainer.appendChild(j),b.data.canvasNeedsRedraw[i]=!1}b.data.topCanvas=b.data.canvases[0],b.data.canvases[lT.NODE].setAttribute("data-id","layer"+lT.NODE+"-node"),b.data.canvases[lT.SELECT_BOX].setAttribute("data-id","layer"+lT.SELECT_BOX+"-selectbox"),b.data.canvases[lT.DRAG].setAttribute("data-id","layer"+lT.DRAG+"-drag"),b.data.canvases[lT.WEBGL]&&b.data.canvases[lT.WEBGL].setAttribute("data-id","layer"+lT.WEBGL+"-webgl");for(var i=0;i<lT.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=dd(),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 kT(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 kT(b,{getKey:p,drawElement:t,getBoundingBox:x,getRotationPoint:E,getRotationOffset:K,isVisible:A}),N=b.data.slbTxrCache=new kT(b,{getKey:q,drawElement:u,getBoundingBox:y,getRotationPoint:F,getRotationOffset:I,isVisible:A}),O=b.data.tlbTxrCache=new kT(b,{getKey:r,drawElement:v,getBoundingBox:z,getRotationPoint:G,getRotationOffset:J,isVisible:A}),P=b.data.lyrTxrCache=new kV(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})}lT.CANVAS_LAYERS=3,lT.SELECT_BOX=0,lT.DRAG=1,lT.NODE=2,lT.WEBGL=3,lT.CANVAS_TYPES=["2d","2d","2d","webgl2"],lT.BUFFER_COUNT=3,lT.TEXTURE_BUFFER=0,lT.MOTIONBLUR_BUFFER_NODE=1,lT.MOTIONBLUR_BUFFER_DRAG=2,lT.redrawHint=function(a,b){switch(a){case"eles":this.data.canvasNeedsRedraw[lT.NODE]=b;break;case"drag":this.data.canvasNeedsRedraw[lT.DRAG]=b;break;case"select":this.data.canvasNeedsRedraw[lT.SELECT_BOX]=b;break;case"gc":this.data.gc=!0}};var lV="undefined"!=typeof Path2D;lT.path2dEnabled=function(a){if(void 0===a)return this.pathsEnabled;this.pathsEnabled=!!a},lT.usePaths=function(){return lV&&this.pathsEnabled},lT.setImgSmoothing=function(a,b){null!=a.imageSmoothingEnabled?a.imageSmoothingEnabled=b:(a.webkitImageSmoothingEnabled=b,a.mozImageSmoothingEnabled=b,a.msImageSmoothingEnabled=b)},lT.getImgSmoothing=function(a){return null!=a.imageSmoothingEnabled?a.imageSmoothingEnabled:a.webkitImageSmoothingEnabled||a.mozImageSmoothingEnabled||a.msImageSmoothingEnabled},lT.makeOffscreenCanvas=function(a,b){var c;return("undefined"==typeof OffscreenCanvas?"undefined":bq(OffscreenCanvas))!=="undefined"?c=new OffscreenCanvas(a,b):((c=this.cy.window().document.createElement("canvas")).width=a,c.height=b),c},[kY,k2,k9,lb,lc,le,lg,lD,lK,lP,lS].forEach(function(a){bW(lT,a)});var lW=[{name:"null",impl:hL},{name:"base",impl:kM},{name:"canvas",impl:lU}],lX={},lY={};function lZ(a,b,c){var d=c,e=function(c){cw("Can not register `"+b+"` for `"+a+"` since `"+c+"` already exists in the prototype and can not be overridden")};if("core"===a)if(g6.prototype[b])return e(b);else g6.prototype[b]=c;else if("collection"===a)if(gD.prototype[b])return e(b);else gD.prototype[b]=c;else if("layout"===a){for(var f=function(a){this.options=a,c.call(this,a),bA(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)}};bW(g,{createEmitter:function(){return this._private.emitter=new f9(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}}),fc.eventAliasesOn(g),d=f}else if("renderer"===a&&"null"!==b&&"base"!==b){var o=l$("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(){cu("Renderer does not implement `renderer."+a+"()` on its prototype")}}),d=r}else if("__proto__"===a||"constructor"===a||"prototype"===a)return cu(a+" is an illegal type to be registered, possibly lead to prototype pollutions");return b0({map:lX,keys:[a,b],value:d})}function l$(a,b){return b1({map:lX,keys:[a,b]})}function l_(a,b,c,d,e){return b0({map:lY,keys:[a,b,c,d],value:e})}function l0(a,b,c,d){return b1({map:lY,keys:[a,b,c,d]})}var l1=function(){return 2==arguments.length?l$.apply(null,arguments):3==arguments.length?lZ.apply(null,arguments):4==arguments.length?l0.apply(null,arguments):5==arguments.length?l_.apply(null,arguments):void cu("Invalid extension access syntax")};g6.prototype.extension=l1,[{type:"layout",extensions:hK},{type:"renderer",extensions:lW}].forEach(function(a){a.extensions.forEach(function(b){lZ(a.type,b.name,b.impl)})});var l2=function(){if(!(this instanceof l2))return new l2;this.length=0},l3=l2.prototype;l3.instanceString=function(){return"stylesheet"},l3.selector=function(a){return this[this.length++]={selector:a,properties:[]},this},l3.css=function(a,b){var c=this.length-1;if(bx(a))this[c].properties.push({name:a,value:b});else if(bA(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=g2.properties[f]||g2.properties[bM(f)];if(null!=h){var i=h.name;this[c].properties.push({name:i,value:g})}}}return this},l3.style=l3.css,l3.generateStyle=function(a){var b=new g2(a);return this.appendToStyle(b)},l3.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 l4=function(a){return(void 0===a&&(a={}),bA(a))?new g6(a):bx(a)?l1.apply(l1,arguments):void 0};l4.use=function(a){var b=Array.prototype.slice.call(arguments,1);return b.unshift(l4),a.apply(null,b),this},l4.warnings=function(a){return cv(a)},l4.version="3.33.1",l4.stylesheet=l4.Stylesheet=l2;let l5="#0074d9",l6="#0074d9";function l7({data:a,height:b=600,showLabels:c=!0,onNodeClick:d,onNodeHover:e,nodeColorFn:f,nodeSizeFn:g,linkColorFn:h,linkWidthFn:i,maxNodes:j}){let k,l=(0,E.useRef)(null),n=(0,E.useRef)(null),[o,p]=(0,E.useState)(null),[q,r]=(0,E.useState)(null),[s,t]=(0,E.useState)(null),[u,v]=(0,E.useState)(!0),w=function(){let[a,b]=(0,E.useState)(!1);return(0,E.useEffect)(()=>{let a=()=>{b(document.documentElement.classList.contains("dark"))};a();let c=new MutationObserver(a);return c.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]}),()=>c.disconnect()},[]),a}(),x=(0,E.useRef)(d),y=(0,E.useRef)(e),z=(0,E.useRef)(a),A=(0,E.useRef)(f),C=(0,E.useRef)(h);x.current=d,y.current=e,z.current=a,A.current=f,C.current=h;let D=(0,E.useMemo)(()=>{let b=[...a.nodes];j&&b.length>j&&(b=b.slice(0,j));let c=new Set(b.map(a=>a.id));return{nodes:b,links:a.links.filter(a=>c.has(a.source)&&c.has(a.target))}},[a,j]),F=(0,E.useMemo)(()=>[...D.nodes.map(a=>({data:{id:a.id,label:a.label||a.id.substring(0,8),color:f?f(a):a.color||l5,size:g?g(a):a.size||20,originalNode:a}})),...D.links.map((a,b)=>({data:{id:`edge-${b}`,source:a.source,target:a.target,color:h?h(a):a.color||l6,width:i?i(a):a.width||1,type:a.type,entity:a.entity,weight:a.weight,originalLink:a}}))],[D,f,g,h,i]);return(0,E.useEffect)(()=>{if(!l.current)return;if(0===F.length)return void v(!1);v(!0);let a=l4({container:l.current,elements:F,style:[{selector:"node",style:{"background-fill":"radial-gradient","background-gradient-stop-colors":["#0074d9","#005bb5"],"background-gradient-stop-positions":["0%","100%"],width:"data(size)",height:"data(size)",label:c?"data(label)":"",color:w?"#ffffff":"#1f2937","text-valign":"bottom","text-halign":"center","font-size":"8px","font-weight":500,"text-margin-y":3,"text-wrap":"wrap","text-max-width":"80px","text-background-color":w?"rgba(0,0,0,0.8)":"rgba(255,255,255,0.9)","text-background-opacity":.9,"text-background-padding":"2px","text-background-shape":"roundrectangle","border-width":0,"z-index":0}},{selector:"node:selected",style:{"border-width":3,"border-color":"#0074d9","border-opacity":1}},{selector:"node:active",style:{"overlay-opacity":0}},{selector:"edge",style:{width:"data(width)","line-color":"data(color)","target-arrow-color":"data(color)","curve-style":"bezier",opacity:w?.5:.6,"z-index":1}},{selector:"edge:selected",style:{opacity:1,width:3}},{selector:".dimmed",style:{opacity:.15}},{selector:"node.highlighted",style:{opacity:1,"border-width":3,"border-color":"#0074d9","border-opacity":1}},{selector:"edge.highlighted",style:{opacity:.9,width:2}}],layout:{name:"cose",animate:!1,randomize:!0,nodeRepulsion:()=>1e5,idealEdgeLength:()=>300,edgeElasticity:()=>20,nestingFactor:.1,gravity:.01,numIter:2500,coolingFactor:.95,minTemp:1,nodeOverlap:20,nodeDimensionsIncludeLabels:!0,padding:50},minZoom:.1,maxZoom:5,wheelSensitivity:.3});return n.current=a,a.on("tap","node",b=>{let c=b.target,d=c.data("originalNode");x.current&&d&&x.current(d);let e=z.current,f=d.id,g=e.links.filter(a=>a.source===f||a.target===f),h=new Set;g.forEach(a=>{h.add(a.source),h.add(a.target)});let i=new Set(a.nodes().map(a=>a.id())),j=[],k=[];h.forEach(a=>{if(!i.has(a)){let b=e.nodes.find(b=>b.id===a);b&&j.push({group:"nodes",data:{id:b.id,label:b.label||b.id.substring(0,8),color:A.current?A.current(b):b.color||l5,size:b.size||20,originalNode:b,isTemporary:!0}})}});let l=new Set(a.edges().map(a=>`${a.data("source")}-${a.data("target")}`));if(g.forEach((a,b)=>{let c=`${a.source}-${a.target}`,d=`${a.target}-${a.source}`;l.has(c)||l.has(d)||k.push({group:"edges",data:{id:`temp-edge-${b}-${Date.now()}`,source:a.source,target:a.target,color:C.current?C.current(a):a.color||l6,width:a.width||1,type:a.type,isTemporary:!0}})}),j.length>0||k.length>0){a.add([...j,...k]);let b=c.position();a.nodes("[?isTemporary]").forEach((a,c)=>{let d=2*Math.PI*c/j.length;a.position({x:b.x+150*Math.cos(d),y:b.y+150*Math.sin(d)})})}let n=c.neighborhood().add(c);a.elements().addClass("dimmed"),n.removeClass("dimmed"),n.addClass("highlighted"),a.animate({fit:{eles:n,padding:50}},{duration:400})}),a.on("tap",b=>{b.target===a&&(a.elements("[?isTemporary]").remove(),a.elements().removeClass("dimmed highlighted"),a.animate({fit:{eles:a.elements(),padding:50}},{duration:400}))}),a.on("mouseover","node",a=>{let b=a.target.data("originalNode");p(b),y.current&&b&&y.current(b),l.current.style.cursor="pointer"}),a.on("mouseout","node",()=>{p(null),y.current&&y.current(null),l.current.style.cursor="default"}),a.on("mouseover","edge",a=>{let b=a.target,c=b.data("originalLink");if(c){r(c);let a=b.renderedMidpoint();t({x:a.x,y:a.y})}l.current.style.cursor="pointer"}),a.on("mouseout","edge",()=>{r(null),t(null),l.current.style.cursor="default"}),a.layout({name:"cose",animate:!1,randomize:!0,nodeRepulsion:()=>1e5,idealEdgeLength:()=>300,edgeElasticity:()=>20,nestingFactor:.1,gravity:.01,numIter:2500,coolingFactor:.95,minTemp:1,nodeOverlap:20,nodeDimensionsIncludeLabels:!0,padding:50}).run(),a.fit(void 0,50),v(!1),()=>{a.destroy()}},[F,c,w]),(0,E.useEffect)(()=>{let a=()=>{n.current&&(n.current.resize(),n.current.fit(void 0,50))};return window.addEventListener("resize",a),()=>window.removeEventListener("resize",a)},[]),(0,B.jsxs)("div",{className:"relative w-full rounded-lg overflow-hidden border border-border",style:{height:b},children:[u&&(0,B.jsx)("div",{className:"absolute inset-0 flex items-center justify-center bg-background z-10",children:(0,B.jsxs)("div",{className:"text-center",children:[(0,B.jsx)("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary mx-auto mb-4"}),(0,B.jsx)("p",{className:"text-sm text-muted-foreground",children:"Loading graph..."})]})}),(0,B.jsx)("div",{ref:l,className:"w-full h-full",style:{background:w?"radial-gradient(circle at 1px 1px, rgba(255,255,255,0.08) 1px, transparent 0)":"radial-gradient(circle at 1px 1px, rgba(0,0,0,0.06) 1px, transparent 0)",backgroundSize:"20px 20px",backgroundColor:w?"#0f1419":"#f8fafc"}}),!u&&0===D.nodes.length&&(0,B.jsx)("div",{className:"absolute inset-0 flex items-center justify-center",children:(0,B.jsx)("div",{className:"text-center",children:(0,B.jsx)("p",{className:"text-muted-foreground",children:"No memories to display"})})}),q&&s&&(0,B.jsx)("div",{className:"absolute z-30 pointer-events-none",style:{left:s.x,top:s.y,transform:"translate(-50%, -100%) translateY(-8px)"},children:(0,B.jsxs)("div",{className:`px-3 py-2 rounded-lg shadow-lg text-sm ${w?"bg-gray-800 text-white":"bg-white text-gray-900 border border-gray-200"}`,children:[(0,B.jsx)("div",{className:"font-medium capitalize mb-1",children:["causes","caused_by","enables","prevents"].includes(k=q.type||"semantic")?`Causal (${k.replace("_"," ")})`:`${k} link`}),q.entity&&(0,B.jsxs)("div",{className:"text-xs opacity-80",children:["Entity: ",(0,B.jsx)("span",{className:"font-medium",children:q.entity})]}),void 0!==q.weight&&(0,B.jsxs)("div",{className:"text-xs opacity-80",children:["Weight: ",(0,B.jsx)("span",{className:"font-medium",children:q.weight.toFixed(3)})]})]})}),(0,B.jsx)("div",{className:"absolute bottom-4 right-4 text-xs text-muted-foreground/60 z-20",children:"Drag to pan • Scroll to zoom • Click node to focus"})]})}function l8({factType:a}){let b,c,d,e,{currentBank:f}=(0,F.useBank)(),[g,h]=(0,E.useState)("graph"),[i,j]=(0,E.useState)(null),[k,l]=(0,E.useState)(!1),[n,o]=(0,E.useState)(""),[p,q]=(0,E.useState)(null),[r,s]=(0,E.useState)(1),[t,u]=(0,E.useState)(null),[v,w]=(0,E.useState)(null),[x,y]=(0,E.useState)(!0),[z,A]=(0,E.useState)(50),[C,D]=(0,E.useState)(!0),[G,H]=(0,E.useState)(new Set(["semantic","temporal","entity","causal"])),I=a=>{H(b=>{let c=new Set(b);return c.has(a)?c.delete(a):c.add(a),c})};(0,E.useEffect)(()=>{let a=a=>{"Escape"===a.key&&t&&u(null)};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[t]);let J=async a=>{try{await navigator.clipboard.writeText(a),q(a),setTimeout(()=>q(null),2e3)}catch(a){console.error("Failed to copy:",a)}},K=async()=>{if(f){l(!0);try{let b=await S.client.getGraph({bank_id:f,type:a});j(b)}catch(b){console.error("Error loading data:",b),alert(`Error loading ${a} data: `+b.message)}finally{l(!1)}}},L=(0,E.useMemo)(()=>{if(!i?.table_rows)return[];if(!n)return i.table_rows;let a=n.toLowerCase();return i.table_rows.filter(b=>b.text?.toLowerCase().includes(a))},[i,n]),O=(0,E.useMemo)(()=>new Set(L.map(a=>a.id)),[L]),P=(0,E.useMemo)(()=>{if(!i)return{nodes:[],links:[]};let a={nodes:(i.nodes||[]).map(a=>{let b=i.table_rows?.find(b=>b.id===a.data.id),c=a.data.label;return!c&&b?.text&&(c=b.text.length>40?b.text.substring(0,40)+"...":b.text),c||(c=a.data.id.substring(0,8)),{id:a.data.id,label:c,color:a.data.color,metadata:b}}),links:(i.edges||[]).map(a=>({source:a.data.source,target:a.data.target,color:a.data.color,type:a.data.linkType||("dashed"===a.data.lineStyle?"temporal":"semantic"),entity:a.data.entityName,weight:a.data.weight??a.data.similarity}))},b=a.nodes,c=a.links;if(n){let d=a.nodes.filter(a=>O.has(a.id)),e=new Set(d.map(a=>a.id));b=d,c=a.links.filter(a=>e.has(a.source)&&e.has(a.target))}return{nodes:b,links:c=c.filter(a=>{var b;let c=(b=a.type)?"semantic"===b||"temporal"===b||"entity"===b?b:["causes","caused_by","enables","prevents"].includes(b)?"causal":"semantic":"semantic";return G.has(c)})}},[i,n,O,G]),Q=(0,E.useMemo)(()=>{let a=0,b=0,c=0,d=0,e=0,f={};return P.links.forEach(g=>{e++;let h=g.type||"unknown";"semantic"===h?a++:"temporal"===h?b++:"entity"===h?c++:"causes"===h||"caused_by"===h||"enables"===h||"prevents"===h?d++:f[h]=(f[h]||0)+1}),{semantic:a,temporal:b,entity:c,causal:d,total:e,otherTypes:f}},[P]),R=(0,E.useCallback)(a=>{let b=i?.table_rows?.find(b=>b.id===a.id);b&&u(b)},[i]),X=(0,E.useCallback)(a=>a.color||"#0074d9",[]),Y=(0,E.useCallback)(a=>"temporal"===a.type?"#009296":"entity"===a.type?"#f59e0b":"causes"===a.type||"caused_by"===a.type||"enables"===a.type||"prevents"===a.type?"#8b5cf6":"#0074d9",[]);return(0,E.useEffect)(()=>{s(1)},[n]),(0,E.useEffect)(()=>{f&&K()},[a,f]),(0,B.jsx)("div",{children:k?(0,B.jsx)("div",{className:"flex items-center justify-center py-20",children:(0,B.jsxs)("div",{className:"text-center",children:[(0,B.jsx)("div",{className:"text-4xl mb-2",children:"⏳"}),(0,B.jsx)("div",{className:"text-sm text-muted-foreground",children:"Loading memories..."})]})}):i?(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)("div",{className:"mb-4",children:(0,B.jsx)(U.Input,{type:"text",value:n,onChange:a=>o(a.target.value),placeholder:"Filter memories by text...",className:"max-w-md"})}),(0,B.jsxs)("div",{className:"flex items-center justify-between mb-6",children:[(0,B.jsx)("div",{className:"text-sm text-muted-foreground",children:n?`${L.length} of ${i.total_units} memories`:`${i.total_units} total memories`}),(0,B.jsxs)("div",{className:"flex items-center gap-2 bg-muted rounded-lg p-1",children:[(0,B.jsx)("button",{onClick:()=>h("graph"),className:`px-4 py-2 rounded-md text-sm font-medium transition-all ${"graph"===g?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"}`,children:"Graph View"}),(0,B.jsx)("button",{onClick:()=>h("table"),className:`px-4 py-2 rounded-md text-sm font-medium transition-all ${"table"===g?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"}`,children:"Table View"}),(0,B.jsx)("button",{onClick:()=>h("timeline"),className:`px-4 py-2 rounded-md text-sm font-medium transition-all ${"timeline"===g?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"}`,children:"Timeline View"})]})]}),"graph"===g&&(0,B.jsxs)("div",{className:"flex gap-0",children:[(0,B.jsx)("div",{className:"flex-1 min-w-0",children:(0,B.jsx)(l7,{data:P,height:700,showLabels:x,onNodeClick:R,maxNodes:z,nodeColorFn:X,linkColorFn:Y})}),(0,B.jsx)("button",{onClick:()=>D(!C),className:"flex-shrink-0 w-5 h-[700px] bg-transparent hover:bg-muted/50 flex items-center justify-center transition-colors",title:C?"Hide panel":"Show panel",children:C?(0,B.jsx)(N,{className:"w-3 h-3 text-muted-foreground/60"}):(0,B.jsx)(M,{className:"w-3 h-3 text-muted-foreground/60"})}),(0,B.jsx)("div",{className:`${C?"w-80":"w-0"} transition-all duration-300 overflow-hidden flex-shrink-0`,children:(0,B.jsx)("div",{className:"w-80 h-[700px] bg-card border-l border-border overflow-y-auto",children:t?(0,B.jsx)(bh,{memory:t,onClose:()=>u(null),inPanel:!0}):(0,B.jsxs)("div",{className:"p-4 space-y-5",children:[(0,B.jsxs)("div",{children:[(0,B.jsx)("h3",{className:"text-sm font-semibold mb-3 text-foreground",children:"Graph"}),(0,B.jsxs)("div",{className:"space-y-2",children:[(0,B.jsxs)("div",{className:"flex items-center justify-between text-sm",children:[(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[(0,B.jsx)("div",{className:"w-3 h-3 rounded-full",style:{backgroundColor:"#0074d9"}}),(0,B.jsx)("span",{className:"text-foreground",children:"Nodes"})]}),(0,B.jsxs)("span",{className:"font-mono text-foreground",children:[Math.min(z??P.nodes.length,P.nodes.length),"/",P.nodes.length]})]}),(0,B.jsxs)("div",{className:"text-xs font-medium text-muted-foreground mt-2 mb-1",children:["Links (",Q.total,")"," ",(0,B.jsx)("span",{className:"text-muted-foreground/60",children:"· click to filter"})]}),(0,B.jsxs)("button",{onClick:()=>I("semantic"),className:`w-full flex items-center justify-between text-sm px-2 py-1 rounded transition-all ${G.has("semantic")?"hover:bg-muted":"opacity-40 hover:opacity-60"}`,children:[(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[(0,B.jsx)("div",{className:"w-4 h-0.5 bg-[#0074d9]"}),(0,B.jsx)("span",{className:"text-foreground",children:"Semantic"})]}),(0,B.jsx)("span",{className:`font-mono ${0===Q.semantic?"text-destructive":"text-foreground"}`,children:Q.semantic})]}),(0,B.jsxs)("button",{onClick:()=>I("temporal"),className:`w-full flex items-center justify-between text-sm px-2 py-1 rounded transition-all ${G.has("temporal")?"hover:bg-muted":"opacity-40 hover:opacity-60"}`,children:[(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[(0,B.jsx)("div",{className:"w-4 h-0.5 bg-[#009296]"}),(0,B.jsx)("span",{className:"text-foreground",children:"Temporal"})]}),(0,B.jsx)("span",{className:`font-mono ${0===Q.temporal?"text-destructive":"text-foreground"}`,children:Q.temporal})]}),(0,B.jsxs)("button",{onClick:()=>I("entity"),className:`w-full flex items-center justify-between text-sm px-2 py-1 rounded transition-all ${G.has("entity")?"hover:bg-muted":"opacity-40 hover:opacity-60"}`,children:[(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[(0,B.jsx)("div",{className:"w-4 h-0.5 bg-[#f59e0b]"}),(0,B.jsx)("span",{className:"text-foreground",children:"Entity"})]}),(0,B.jsx)("span",{className:"font-mono text-foreground",children:Q.entity})]}),(0,B.jsxs)("button",{onClick:()=>I("causal"),className:`w-full flex items-center justify-between text-sm px-2 py-1 rounded transition-all ${G.has("causal")?"hover:bg-muted":"opacity-40 hover:opacity-60"}`,children:[(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[(0,B.jsx)("div",{className:"w-4 h-0.5 bg-[#8b5cf6]"}),(0,B.jsx)("span",{className:"text-foreground",children:"Causal"})]}),(0,B.jsx)("span",{className:`font-mono ${0===Q.causal?"text-muted-foreground":"text-foreground"}`,children:Q.causal})]}),Object.entries(Q.otherTypes||{}).map(([a,b])=>(0,B.jsxs)("div",{className:"flex items-center justify-between text-sm",children:[(0,B.jsx)("span",{className:"text-muted-foreground capitalize ml-6",children:a}),(0,B.jsx)("span",{className:"font-mono text-muted-foreground",children:b})]},a))]})]}),(0,B.jsx)("div",{className:"border-t border-border"}),(0,B.jsxs)("div",{children:[(0,B.jsx)("h3",{className:"text-sm font-semibold mb-3 text-foreground",children:"Display"}),(0,B.jsx)("div",{className:"space-y-4",children:(0,B.jsxs)("div",{className:"flex items-center justify-between",children:[(0,B.jsx)(al,{htmlFor:"show-labels",className:"text-sm text-foreground",children:"Show labels"}),(0,B.jsx)(bd,{id:"show-labels",checked:x,onCheckedChange:y})]})})]}),(0,B.jsx)("div",{className:"border-t border-border"}),(0,B.jsxs)("div",{children:[(0,B.jsx)("h3",{className:"text-sm font-semibold mb-3 text-foreground",children:"Performance"}),(0,B.jsxs)("div",{className:"space-y-4",children:[(0,B.jsxs)("div",{children:[(0,B.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,B.jsx)(al,{className:"text-sm text-foreground",children:"Max nodes"}),(0,B.jsxs)("span",{className:"text-xs text-muted-foreground",children:[z??"All"," / ",P.nodes.length]})]}),(0,B.jsx)(a2,{value:[z??P.nodes.length],min:10,max:Math.max(P.nodes.length,10),step:10,onValueChange:([a])=>A(a>=P.nodes.length?void 0:a),className:"w-full"})]}),(0,B.jsx)("p",{className:"text-xs text-muted-foreground",children:"All links between visible nodes are shown."})]})]}),(0,B.jsx)("div",{className:"border-t border-border"}),(0,B.jsx)("div",{className:"text-xs text-muted-foreground/60 text-center pt-2",children:"Click a node to see details"})]})})})]}),"table"===g&&(0,B.jsxs)("div",{children:[(0,B.jsx)("div",{className:"w-full",children:(0,B.jsx)("div",{className:"pb-4",children:L.length>0?(b=Math.ceil(L.length/100),d=(c=(r-1)*100)+100,e=L.slice(c,d),(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)("div",{className:"border rounded-lg overflow-hidden",children:(0,B.jsxs)(aa,{className:"table-fixed",children:[(0,B.jsx)(ab,{children:(0,B.jsxs)(ad,{className:"bg-muted/50",children:[(0,B.jsx)(ae,{className:"w-[45%]",children:"Memory"}),(0,B.jsx)(ae,{className:"w-[20%]",children:"Entities"}),(0,B.jsx)(ae,{className:"w-[15%]",children:"Occurred"}),(0,B.jsx)(ae,{className:"w-[15%]",children:"Mentioned"}),(0,B.jsx)(ae,{className:"w-[5%]"})]})}),(0,B.jsx)(ac,{children:e.map((a,b)=>{let c=a.occurred_start?new Date(a.occurred_start).toLocaleDateString("en-US",{month:"short",day:"numeric"}):null,d=a.mentioned_at?new Date(a.mentioned_at).toLocaleDateString("en-US",{month:"short",day:"numeric"}):null;return(0,B.jsxs)(ad,{onClick:()=>w(a),className:`cursor-pointer hover:bg-muted/50 ${v?.id===a.id?"bg-primary/10":""}`,children:[(0,B.jsxs)(af,{className:"py-2",children:[(0,B.jsx)("div",{className:"line-clamp-2 text-sm leading-snug text-foreground",children:a.text}),a.context&&(0,B.jsx)("div",{className:"text-xs text-muted-foreground mt-0.5 truncate",children:a.context})]}),(0,B.jsx)(af,{className:"py-2",children:a.entities?(0,B.jsxs)("div",{className:"flex gap-1 flex-wrap",children:[a.entities.split(", ").slice(0,2).map((a,b)=>(0,B.jsx)("span",{className:"text-[10px] px-1.5 py-0.5 rounded-full bg-primary/10 text-primary font-medium",children:a},b)),a.entities.split(", ").length>2&&(0,B.jsxs)("span",{className:"text-[10px] text-muted-foreground",children:["+",a.entities.split(", ").length-2]})]}):(0,B.jsx)("span",{className:"text-xs text-muted-foreground",children:"-"})}),(0,B.jsx)(af,{className:"text-xs py-2 text-foreground",children:c||(0,B.jsx)("span",{className:"text-muted-foreground",children:"-"})}),(0,B.jsx)(af,{className:"text-xs py-2 text-foreground",children:d||(0,B.jsx)("span",{className:"text-muted-foreground",children:"-"})}),(0,B.jsx)(af,{className:"py-2",children:(0,B.jsx)(T.Button,{onClick:b=>{b.stopPropagation(),J(a.id)},size:"sm",variant:"secondary",className:"h-6 w-6 p-0",title:"Copy ID",children:p===a.id?(0,B.jsx)(W.Check,{className:"h-3 w-3 text-green-600"}):(0,B.jsx)(V,{className:"h-3 w-3"})})})]},a.id||b)})})]})}),b>1&&(0,B.jsxs)("div",{className:"flex items-center justify-between mt-3 pt-3 border-t",children:[(0,B.jsxs)("div",{className:"text-xs text-muted-foreground",children:[c+1,"-",Math.min(d,L.length)," of"," ",L.length]}),(0,B.jsxs)("div",{className:"flex items-center gap-1",children:[(0,B.jsx)(T.Button,{variant:"outline",size:"sm",onClick:()=>s(1),disabled:1===r,className:"h-7 w-7 p-0",children:(0,B.jsx)($,{className:"h-3 w-3"})}),(0,B.jsx)(T.Button,{variant:"outline",size:"sm",onClick:()=>s(a=>Math.max(1,a-1)),disabled:1===r,className:"h-7 w-7 p-0",children:(0,B.jsx)(M,{className:"h-3 w-3"})}),(0,B.jsxs)("span",{className:"text-xs px-2",children:[r," / ",b]}),(0,B.jsx)(T.Button,{variant:"outline",size:"sm",onClick:()=>s(a=>Math.min(b,a+1)),disabled:r===b,className:"h-7 w-7 p-0",children:(0,B.jsx)(N,{className:"h-3 w-3"})}),(0,B.jsx)(T.Button,{variant:"outline",size:"sm",onClick:()=>s(b),disabled:r===b,className:"h-7 w-7 p-0",children:(0,B.jsx)(_,{className:"h-3 w-3"})})]})]})]})):(0,B.jsx)("div",{className:"text-center py-12 text-muted-foreground",children:i.table_rows?.length>0?"No memories match your filter":"No memories found"})})}),v&&(0,B.jsx)("div",{className:"fixed right-0 top-0 h-screen w-[420px] bg-card border-l-2 border-primary shadow-2xl z-50 overflow-y-auto animate-in slide-in-from-right duration-300 ease-out",children:(0,B.jsx)(bh,{memory:v,onClose:()=>w(null),inPanel:!0})})]}),"timeline"===g&&(0,B.jsx)(l9,{data:i,filteredRows:L})]}):(0,B.jsx)("div",{className:"flex items-center justify-center py-20",children:(0,B.jsxs)("div",{className:"text-center",children:[(0,B.jsx)("div",{className:"text-4xl mb-2",children:"📊"}),(0,B.jsx)("div",{className:"text-sm text-muted-foreground",children:"No data available"})]})})})}function l9({data:a,filteredRows:b}){let[c,d]=(0,E.useState)(null),[e,f]=(0,E.useState)("month"),[g,h]=(0,E.useState)(0),i=(0,E.useRef)(null),{sortedItems:j,itemsWithoutDates:k}=(0,E.useMemo)(()=>b&&0!==b.length?{sortedItems:b.filter(a=>a.occurred_start).sort((a,b)=>new Date(a.occurred_start).getTime()-new Date(b.occurred_start).getTime()),itemsWithoutDates:b.filter(a=>!a.occurred_start)}:{sortedItems:[],itemsWithoutDates:[]},[b]),l=(0,E.useMemo)(()=>{if(0===j.length)return[];let a={};return j.forEach(b=>{let c=new Date(b.occurred_start),d=(a=>{let b=a.getFullYear(),c=a.getMonth(),d=a.getDate();switch(e){case"year":return`${b}`;case"month":return`${b}-${String(c+1).padStart(2,"0")}`;case"week":let f=new Date(a);return f.setDate(d-a.getDay()),`${f.getFullYear()}-W${String(Math.ceil(f.getDate()/7)).padStart(2,"0")}-${String(f.getMonth()+1).padStart(2,"0")}-${String(f.getDate()).padStart(2,"0")}`;case"day":return`${b}-${String(c+1).padStart(2,"0")}-${String(d).padStart(2,"0")}`}})(c);if(!a[d]){let b=c;if("week"===e){let a=d.split("-");b=new Date(parseInt(a[0]),parseInt(a[2])-1,parseInt(a[3]))}a[d]={items:[],date:b}}a[d].items.push(b)}),Object.entries(a).sort(([a],[b])=>a.localeCompare(b)).map(([a,{items:b,date:c}])=>({key:a,label:((a,b)=>{switch(e){case"year":return a;case"month":return b.toLocaleDateString("en-US",{year:"numeric",month:"short"});case"week":let c=new Date(b);return c.setDate(b.getDate()+6),`${b.toLocaleDateString("en-US",{month:"short",day:"numeric"})} - ${c.toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})}`;case"day":return b.toLocaleDateString("en-US",{weekday:"short",month:"short",day:"numeric",year:"numeric"})}})(a,c),items:b,date:c}))},[j,e]),n=(0,E.useMemo)(()=>0===j.length?null:{first:new Date(j[0].occurred_start),last:new Date(j[j.length-1].occurred_start)},[j]),o=a=>{let b=Math.max(0,Math.min(a,l.length-1));h(b);let c=document.getElementById(`timeline-group-${b}`);c?.scrollIntoView({behavior:"smooth",block:"start"})};if(0===j.length)return(0,B.jsxs)("div",{className:"flex flex-col items-center justify-center py-12",children:[(0,B.jsx)(X,{className:"w-12 h-12 text-muted-foreground mb-3"}),(0,B.jsx)("div",{className:"text-base font-medium text-foreground mb-1",children:"No Timeline Data"}),(0,B.jsxs)("div",{className:"text-xs text-muted-foreground text-center max-w-md",children:["No memories have occurred_at dates.",k.length>0&&(0,B.jsxs)("span",{className:"block mt-1",children:[k.length," memories without dates in Table View."]})]})]});let p=a=>{let b=new Date(a);return{date:b.toLocaleDateString("en-US",{month:"short",day:"numeric"}),time:b.toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit",hour12:!1})}};return(0,B.jsxs)("div",{className:"px-4",children:[(0,B.jsxs)("div",{children:[(0,B.jsxs)("div",{className:"flex items-center justify-between mb-3 gap-4",children:[(0,B.jsxs)("div",{className:"text-xs text-muted-foreground",children:[j.length," memories",k.length>0&&` \xb7 ${k.length} without dates`,n&&(0,B.jsxs)("span",{className:"ml-2 text-foreground",children:["(",n.first.toLocaleDateString("en-US",{month:"short",year:"numeric"})," ","→ ",n.last.toLocaleDateString("en-US",{month:"short",year:"numeric"}),")"]})]}),(0,B.jsxs)("div",{className:"flex items-center gap-1",children:[(0,B.jsxs)("div",{className:"flex items-center border border-border rounded mr-2",children:[(0,B.jsx)(T.Button,{variant:"secondary",size:"sm",onClick:()=>{let a=["year","month","week","day"],b=a.indexOf(e);b>0&&f(a[b-1])},disabled:"year"===e,className:"h-7 w-7 p-0",title:"Zoom out",children:(0,B.jsx)(Z,{className:"h-3 w-3"})}),(0,B.jsx)("span",{className:"text-[10px] px-2 min-w-[50px] text-center border-x border-border text-foreground",children:{year:"Year",month:"Month",week:"Week",day:"Day"}[e]}),(0,B.jsx)(T.Button,{variant:"secondary",size:"sm",onClick:()=>{let a=["year","month","week","day"],b=a.indexOf(e);b<a.length-1&&f(a[b+1])},disabled:"day"===e,className:"h-7 w-7 p-0",title:"Zoom in",children:(0,B.jsx)(Y,{className:"h-3 w-3"})})]}),(0,B.jsxs)("div",{className:"flex items-center border border-border rounded",children:[(0,B.jsx)(T.Button,{variant:"secondary",size:"sm",onClick:()=>o(0),disabled:l.length<=1,className:"h-7 w-7 p-0",title:"First",children:(0,B.jsx)($,{className:"h-3 w-3"})}),(0,B.jsx)(T.Button,{variant:"secondary",size:"sm",onClick:()=>o(g-1),disabled:0===g,className:"h-7 w-7 p-0",title:"Previous",children:(0,B.jsx)(M,{className:"h-3 w-3"})}),(0,B.jsxs)("span",{className:"text-[10px] px-2 min-w-[60px] text-center border-x border-border text-foreground",children:[g+1," / ",l.length]}),(0,B.jsx)(T.Button,{variant:"secondary",size:"sm",onClick:()=>o(g+1),disabled:g>=l.length-1,className:"h-7 w-7 p-0",title:"Next",children:(0,B.jsx)(N,{className:"h-3 w-3"})}),(0,B.jsx)(T.Button,{variant:"secondary",size:"sm",onClick:()=>o(l.length-1),disabled:l.length<=1,className:"h-7 w-7 p-0",title:"Last",children:(0,B.jsx)(_,{className:"h-3 w-3"})})]})]})]}),(0,B.jsxs)("div",{ref:i,className:"relative max-h-[550px] overflow-y-auto pr-2",children:[(0,B.jsx)("div",{className:"absolute left-[60px] top-0 bottom-0 w-0.5 bg-border"}),l.map((a,b)=>(0,B.jsxs)("div",{id:`timeline-group-${b}`,className:"mb-4",children:[(0,B.jsxs)("div",{className:"flex items-center mb-2 cursor-pointer hover:opacity-80",onClick:()=>h(b),children:[(0,B.jsx)("div",{className:"w-[60px] text-right pr-3",children:(0,B.jsx)("span",{className:"text-xs font-semibold text-primary",children:a.label})}),(0,B.jsx)("div",{className:"w-2 h-2 rounded-full bg-primary z-10"}),(0,B.jsxs)("span",{className:"ml-2 text-[10px] text-muted-foreground",children:[a.items.length," ",1===a.items.length?"item":"items"]})]}),(0,B.jsx)("div",{className:"space-y-1",children:a.items.map((a,b)=>(0,B.jsxs)("div",{onClick:()=>d(a),className:`flex items-start cursor-pointer group ${c?.id===a.id?"opacity-100":"hover:opacity-80"}`,children:[(0,B.jsxs)("div",{className:"w-[60px] text-right pr-3 pt-1 flex-shrink-0",children:[(0,B.jsx)("div",{className:"text-[10px] text-muted-foreground",children:p(a.occurred_start).date}),(0,B.jsx)("div",{className:"text-[9px] text-muted-foreground/70",children:p(a.occurred_start).time})]}),(0,B.jsx)("div",{className:"flex-shrink-0 pt-2",children:(0,B.jsx)("div",{className:`w-1.5 h-1.5 rounded-full z-10 ${c?.id===a.id?"bg-primary":"bg-muted-foreground/50 group-hover:bg-primary"}`})}),(0,B.jsxs)("div",{className:`ml-3 flex-1 p-2 rounded border transition-colors ${c?.id===a.id?"bg-primary/10 border-primary":"bg-card border-border hover:border-primary/50"}`,children:[(0,B.jsx)("p",{className:"text-xs text-foreground line-clamp-2 leading-relaxed",children:a.text}),a.context&&(0,B.jsx)("p",{className:"text-[10px] text-muted-foreground mt-1 truncate",children:a.context}),a.entities&&(0,B.jsxs)("div",{className:"flex gap-1 mt-1 flex-wrap",children:[a.entities.split(", ").slice(0,3).map((a,b)=>(0,B.jsx)("span",{className:"text-[9px] px-1.5 py-0.5 rounded-full bg-primary/10 text-primary font-medium",children:a},b)),a.entities.split(", ").length>3&&(0,B.jsxs)("span",{className:"text-[9px] text-muted-foreground",children:["+",a.entities.split(", ").length-3]})]})]})]},a.id||b))})]},a.key))]})]}),c&&(0,B.jsx)("div",{className:"fixed right-0 top-0 h-screen w-[420px] bg-card border-l-2 border-primary shadow-2xl z-50 overflow-y-auto animate-in slide-in-from-right duration-300 ease-out",children:(0,B.jsx)(bh,{memory:c,onClose:()=>d(null),inPanel:!0})})]})}function ma(){let{currentBank:a}=(0,F.useBank)(),[b,c]=(0,E.useState)([]),[d,e]=(0,E.useState)(!1),[f,g]=(0,E.useState)(""),[h,i]=(0,E.useState)(0),[j,k]=(0,E.useState)(null),[l,n]=(0,E.useState)(!1),o=async()=>{if(a){e(!0);try{let b=await S.client.listDocuments({bank_id:a,q:f,limit:100});c(b.items||[]),i(b.total||0)}catch(a){console.error("Error loading documents:",a),alert("Error loading documents: "+a.message)}finally{e(!1)}}},p=async b=>{if(a){n(!0),k({id:b});try{let c=await S.client.getDocument(b,a);k(c)}catch(a){console.error("Error loading document:",a),alert("Error loading document: "+a.message),k(null)}finally{n(!1)}}};return(0,E.useEffect)(()=>{a&&o()},[a]),(0,B.jsxs)("div",{children:[d?(0,B.jsx)("div",{className:"flex items-center justify-center py-20",children:(0,B.jsxs)("div",{className:"text-center",children:[(0,B.jsx)("div",{className:"text-4xl mb-2",children:"⏳"}),(0,B.jsx)("div",{className:"text-sm text-muted-foreground",children:"Loading documents..."})]})}):b.length>0?(0,B.jsxs)("div",{className:"mb-4 text-sm text-muted-foreground",children:[h," total documents"]}):(0,B.jsx)("div",{className:"flex items-center justify-center py-20",children:(0,B.jsxs)("div",{className:"text-center",children:[(0,B.jsx)("div",{className:"text-4xl mb-2",children:"📄"}),(0,B.jsx)("div",{className:"text-sm text-muted-foreground",children:"No documents found"})]})}),b.length>0&&(0,B.jsxs)(B.Fragment,{children:[(0,B.jsxs)("div",{className:"w-full",children:[(0,B.jsx)("div",{className:"px-5 mb-4",children:(0,B.jsx)(U.Input,{type:"text",value:f,onChange:a=>g(a.target.value),placeholder:"Search documents (ID)...",className:"max-w-2xl"})}),(0,B.jsx)("div",{className:"overflow-x-auto px-5 pb-5",children:(0,B.jsxs)(aa,{children:[(0,B.jsx)(ab,{children:(0,B.jsxs)(ad,{children:[(0,B.jsx)(ae,{children:"Document ID"}),(0,B.jsx)(ae,{children:"Created"}),(0,B.jsx)(ae,{children:"Context"}),(0,B.jsx)(ae,{children:"Text Length"}),(0,B.jsx)(ae,{children:"Memory Units"}),(0,B.jsx)(ae,{children:"Actions"})]})}),(0,B.jsx)(ac,{children:b.length>0?b.map(a=>(0,B.jsxs)(ad,{className:`cursor-pointer hover:bg-muted/50 ${j?.id===a.id?"bg-primary/10":""}`,onClick:()=>p(a.id),children:[(0,B.jsx)(af,{title:a.id,className:"text-card-foreground",children:a.id.length>30?a.id.substring(0,30)+"...":a.id}),(0,B.jsx)(af,{className:"text-card-foreground",children:a.created_at?new Date(a.created_at).toLocaleString():"N/A"}),(0,B.jsx)(af,{className:"text-card-foreground",children:a.retain_params?.context||"-"}),(0,B.jsxs)(af,{className:"text-card-foreground",children:[a.text_length?.toLocaleString()," chars"]}),(0,B.jsx)(af,{className:"text-card-foreground",children:a.memory_unit_count}),(0,B.jsx)(af,{children:(0,B.jsx)(T.Button,{onClick:b=>{b.stopPropagation(),p(a.id)},size:"sm",variant:j?.id===a.id?"default":"secondary",title:"View original text",children:"View Text"})})]},a.id)):(0,B.jsx)(ad,{children:(0,B.jsx)(af,{colSpan:6,className:"text-center",children:'Click "Load Documents" to view data'})})})]})})]}),j&&(0,B.jsx)("div",{className:"fixed right-0 top-0 h-screen w-[420px] bg-card border-l-2 border-primary shadow-2xl z-50 overflow-y-auto animate-in slide-in-from-right duration-300 ease-out",children:(0,B.jsxs)("div",{className:"p-5",children:[(0,B.jsxs)("div",{className:"flex justify-between items-center mb-6 pb-4 border-b border-border",children:[(0,B.jsxs)("div",{children:[(0,B.jsx)("h3",{className:"text-xl font-bold text-foreground",children:"Document Details"}),(0,B.jsx)("p",{className:"text-sm text-muted-foreground mt-1",children:"Original document text and metadata"})]}),(0,B.jsxs)(T.Button,{variant:"secondary",size:"sm",onClick:()=>k(null),className:"h-9 px-3 gap-2",children:[(0,B.jsx)(be.X,{className:"h-4 w-4"}),"Close"]})]}),l?(0,B.jsx)("div",{className:"flex items-center justify-center py-20",children:(0,B.jsxs)("div",{className:"text-center",children:[(0,B.jsx)("div",{className:"text-4xl mb-2",children:"⏳"}),(0,B.jsx)("div",{className:"text-sm text-muted-foreground",children:"Loading document..."})]})}):(0,B.jsxs)("div",{className:"space-y-5",children:[(0,B.jsxs)("div",{className:"p-4 bg-muted/50 rounded-lg",children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-2",children:"Document ID"}),(0,B.jsx)("div",{className:"text-sm font-mono break-all text-card-foreground",children:j.id})]}),j.created_at&&(0,B.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,B.jsxs)("div",{className:"p-4 bg-muted/50 rounded-lg",children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-2",children:"Created"}),(0,B.jsx)("div",{className:"text-sm font-medium text-card-foreground",children:new Date(j.created_at).toLocaleString()})]}),(0,B.jsxs)("div",{className:"p-4 bg-muted/50 rounded-lg",children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-2",children:"Memory Units"}),(0,B.jsx)("div",{className:"text-sm font-medium text-card-foreground",children:j.memory_unit_count})]})]}),j.original_text&&(0,B.jsxs)("div",{className:"p-4 bg-muted/50 rounded-lg",children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-2",children:"Text Length"}),(0,B.jsxs)("div",{className:"text-sm font-medium text-card-foreground",children:[j.original_text.length.toLocaleString()," characters"]})]}),j.retain_params&&(0,B.jsxs)("div",{className:"p-4 bg-muted/50 rounded-lg",children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-2",children:"Retain Parameters"}),(0,B.jsxs)("div",{className:"text-sm space-y-2 text-card-foreground",children:[j.retain_params.context&&(0,B.jsxs)("div",{children:[(0,B.jsx)("span",{className:"font-semibold",children:"Context:"})," ",j.retain_params.context]}),j.retain_params.event_date&&(0,B.jsxs)("div",{children:[(0,B.jsx)("span",{className:"font-semibold",children:"Event Date:"})," ",new Date(j.retain_params.event_date).toLocaleString()]}),j.retain_params.metadata&&(0,B.jsxs)("div",{className:"mt-2",children:[(0,B.jsx)("span",{className:"font-semibold",children:"Metadata:"}),(0,B.jsx)("pre",{className:"mt-1 text-xs bg-background p-2 rounded text-card-foreground",children:JSON.stringify(j.retain_params.metadata,null,2)})]})]})]}),j.original_text&&(0,B.jsxs)("div",{children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-2",children:"Original Text"}),(0,B.jsx)("div",{className:"p-4 bg-muted/50 rounded-lg border border-border max-h-[400px] overflow-y-auto",children:(0,B.jsx)("pre",{className:"text-sm whitespace-pre-wrap font-mono leading-relaxed text-card-foreground",children:j.original_text})})]})]})]})})]})]})}function mb(){let{currentBank:a}=(0,F.useBank)(),[b,c]=(0,E.useState)([]),[d,e]=(0,E.useState)(!1),[f,g]=(0,E.useState)(null),[h,i]=(0,E.useState)(!1),[j,k]=(0,E.useState)(!1),l=async()=>{if(a){e(!0);try{let b=await S.client.listEntities({bank_id:a,limit:100});c(b.items||[])}catch(a){console.error("Error loading entities:",a),alert("Error loading entities: "+a.message)}finally{e(!1)}}},n=async b=>{if(a){i(!0);try{let c=await S.client.getEntity(b,a);g(c)}catch(a){console.error("Error loading entity detail:",a),alert("Error loading entity detail: "+a.message)}finally{i(!1)}}},o=async()=>{if(a&&f){k(!0);try{await S.client.regenerateEntityObservations(f.id,a),await n(f.id)}catch(a){console.error("Error regenerating observations:",a),alert("Error regenerating observations: "+a.message)}finally{k(!1)}}};(0,E.useEffect)(()=>{a&&(l(),g(null))},[a]);let p=a=>a?new Date(a).toLocaleDateString():"N/A";return(0,B.jsxs)("div",{children:[(0,B.jsx)("div",{children:d?(0,B.jsx)("div",{className:"flex items-center justify-center py-20",children:(0,B.jsxs)("div",{className:"text-center",children:[(0,B.jsx)("div",{className:"text-4xl mb-2",children:"⏳"}),(0,B.jsx)("div",{className:"text-sm text-muted-foreground",children:"Loading entities..."})]})}):b.length>0?(0,B.jsxs)(B.Fragment,{children:[(0,B.jsxs)("div",{className:"mb-4 text-sm text-muted-foreground",children:[b.length," entities"]}),(0,B.jsx)("div",{className:"overflow-x-auto",children:(0,B.jsxs)(aa,{children:[(0,B.jsx)(ab,{children:(0,B.jsxs)(ad,{children:[(0,B.jsx)(ae,{children:"Name"}),(0,B.jsx)(ae,{children:"Mentions"}),(0,B.jsx)(ae,{children:"First Seen"}),(0,B.jsx)(ae,{children:"Last Seen"})]})}),(0,B.jsx)(ac,{children:b.map(a=>(0,B.jsxs)(ad,{onClick:()=>n(a.id),className:`cursor-pointer hover:bg-muted/50 ${f?.id===a.id?"bg-primary/10":""}`,children:[(0,B.jsx)(af,{className:"font-medium text-card-foreground",children:a.canonical_name}),(0,B.jsx)(af,{className:"text-card-foreground",children:a.mention_count}),(0,B.jsx)(af,{className:"text-card-foreground",children:p(a.first_seen)}),(0,B.jsx)(af,{className:"text-card-foreground",children:p(a.last_seen)})]},a.id))})]})})]}):(0,B.jsx)("div",{className:"flex items-center justify-center py-20",children:(0,B.jsxs)("div",{className:"text-center",children:[(0,B.jsx)("div",{className:"text-4xl mb-2",children:"👥"}),(0,B.jsx)("div",{className:"text-sm text-muted-foreground",children:"No entities found"}),(0,B.jsx)("div",{className:"text-xs text-muted-foreground mt-1",children:"Entities are extracted from facts when memories are added."})]})})}),f&&(0,B.jsx)("div",{className:"fixed right-0 top-0 h-screen w-[420px] bg-card border-l-2 border-primary shadow-2xl z-50 overflow-y-auto animate-in slide-in-from-right duration-300 ease-out",children:(0,B.jsxs)("div",{className:"p-5",children:[(0,B.jsxs)("div",{className:"flex justify-between items-center mb-6 pb-4 border-b border-border",children:[(0,B.jsxs)("div",{children:[(0,B.jsx)("h3",{className:"text-xl font-bold text-card-foreground",children:f.canonical_name}),(0,B.jsx)("p",{className:"text-sm text-muted-foreground mt-1",children:"Entity details"})]}),(0,B.jsx)(T.Button,{variant:"ghost",size:"sm",onClick:()=>g(null),className:"h-8 w-8 p-0",children:(0,B.jsx)("span",{className:"text-lg",children:"×"})})]}),(0,B.jsxs)("div",{className:"space-y-5",children:[(0,B.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,B.jsxs)("div",{className:"p-4 bg-muted/50 rounded-lg",children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-2",children:"Mentions"}),(0,B.jsx)("div",{className:"text-lg font-semibold text-card-foreground",children:f.mention_count})]}),(0,B.jsxs)("div",{className:"p-4 bg-muted/50 rounded-lg",children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-2",children:"First Seen"}),(0,B.jsx)("div",{className:"text-sm font-medium text-card-foreground",children:p(f.first_seen)})]})]}),(0,B.jsxs)("div",{className:"p-4 bg-muted/50 rounded-lg",children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase mb-2",children:"Entity ID"}),(0,B.jsx)("code",{className:"text-xs font-mono break-all text-muted-foreground",children:f.id})]}),(0,B.jsxs)("div",{children:[(0,B.jsxs)("div",{className:"flex justify-between items-center mb-3",children:[(0,B.jsx)("div",{className:"text-xs font-bold text-muted-foreground uppercase",children:"Observations"}),(0,B.jsx)(T.Button,{onClick:o,disabled:j,variant:"outline",size:"sm",children:j?"Regenerating...":"Regenerate"})]}),h?(0,B.jsx)("div",{className:"text-muted-foreground text-sm",children:"Loading observations..."}):f.observations&&f.observations.length>0?(0,B.jsx)("ul",{className:"space-y-2",children:f.observations.map((a,b)=>(0,B.jsxs)("li",{className:"p-3 bg-muted/50 rounded-lg",children:[(0,B.jsx)("div",{className:"text-sm text-card-foreground",children:a.text}),a.mentioned_at&&(0,B.jsx)("div",{className:"text-xs text-muted-foreground mt-2",children:p(a.mentioned_at)})]},b))}):(0,B.jsx)("div",{className:"text-muted-foreground text-sm p-4 bg-muted/50 rounded-lg",children:'No observations yet. Click "Regenerate" to generate observations from facts.'})]})]})]})})]})}var mc=a.i(6219),md=a.i(96743),me=a.i(86228),mf=a.i(22297),mg=a.i(92843),mh=a.i(4691),mi=a.i(92616),mj=Symbol("radix.slottable");function mk(a){return E.isValidElement(a)&&"function"==typeof a.type&&"__radixId"in a.type&&a.type.__radixId===mj}var ml=a.i(46872),mm=a.i(72752),mn=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"});E.forwardRef((a,b)=>(0,B.jsx)(av.Primitive.span,{...a,ref:b,style:{...mn,...a.style}})).displayName="VisuallyHidden";var mo=a.i(41852),mp=a.i(52081),mq=[" ","Enter","ArrowUp","ArrowDown"],mr=[" ","Enter"],ms="Select",[mt,mu,mv]=az(ms),[mw,mx]=(0,ap.createContextScope)(ms,[mv,mh.createPopperScope]),my=(0,mh.createPopperScope)(),[mz,mA]=mw(ms),[mB,mC]=mw(ms),mD=a=>{let{__scopeSelect:b,children:c,open:d,defaultOpen:e,onOpenChange:f,value:g,defaultValue:h,onValueChange:i,dir:j,name:k,autoComplete:l,disabled:n,required:o,form:p}=a,q=my(b),[r,s]=E.useState(null),[t,u]=E.useState(null),[v,w]=E.useState(!1),x=as(j),[y,z]=(0,aq.useControllableState)({prop:d,defaultProp:e??!1,onChange:f,caller:ms}),[A,C]=(0,aq.useControllableState)({prop:g,defaultProp:h,onChange:i,caller:ms}),D=E.useRef(null),F=!r||p||!!r.closest("form"),[G,H]=E.useState(new Set),I=Array.from(G).map(a=>a.props.value).join(";");return(0,B.jsx)(mh.Root,{...q,children:(0,B.jsxs)(mz,{required:o,scope:b,trigger:r,onTriggerChange:s,valueNode:t,onValueNodeChange:u,valueNodeHasChildren:v,onValueNodeHasChildrenChange:w,contentId:(0,mg.useId)(),value:A,onValueChange:C,open:y,onOpenChange:z,dir:x,triggerPointerDownPosRef:D,disabled:n,children:[(0,B.jsx)(mt.Provider,{scope:b,children:(0,B.jsx)(mB,{scope:a.__scopeSelect,onNativeOptionAdd:E.useCallback(a=>{H(b=>new Set(b).add(a))},[]),onNativeOptionRemove:E.useCallback(a=>{H(b=>{let c=new Set(b);return c.delete(a),c})},[]),children:c})}),F?(0,B.jsxs)(ne,{"aria-hidden":!0,required:o,tabIndex:-1,name:k,autoComplete:l,value:A,onChange:a=>C(a.target.value),disabled:n,form:p,children:[void 0===A?(0,B.jsx)("option",{value:""}):null,Array.from(G)]},I):null]})})};mD.displayName=ms;var mE="SelectTrigger",mF=E.forwardRef((a,b)=>{let{__scopeSelect:c,disabled:d=!1,...e}=a,f=my(c),g=mA(mE,c),h=g.disabled||d,i=(0,ao.useComposedRefs)(b,g.onTriggerChange),j=mu(c),k=E.useRef("touch"),[l,n,o]=ng(a=>{let b=j().filter(a=>!a.disabled),c=b.find(a=>a.value===g.value),d=nh(b,a,c);void 0!==d&&g.onValueChange(d.value)}),p=a=>{h||(g.onOpenChange(!0),o()),a&&(g.triggerPointerDownPosRef.current={x:Math.round(a.pageX),y:Math.round(a.pageY)})};return(0,B.jsx)(mh.Anchor,{asChild:!0,...f,children:(0,B.jsx)(av.Primitive.button,{type:"button",role:"combobox","aria-controls":g.contentId,"aria-expanded":g.open,"aria-required":g.required,"aria-autocomplete":"none",dir:g.dir,"data-state":g.open?"open":"closed",disabled:h,"data-disabled":h?"":void 0,"data-placeholder":nf(g.value)?"":void 0,...e,ref:i,onClick:(0,an.composeEventHandlers)(e.onClick,a=>{a.currentTarget.focus(),"mouse"!==k.current&&p(a)}),onPointerDown:(0,an.composeEventHandlers)(e.onPointerDown,a=>{k.current=a.pointerType;let b=a.target;b.hasPointerCapture(a.pointerId)&&b.releasePointerCapture(a.pointerId),0===a.button&&!1===a.ctrlKey&&"mouse"===a.pointerType&&(p(a),a.preventDefault())}),onKeyDown:(0,an.composeEventHandlers)(e.onKeyDown,a=>{let b=""!==l.current;a.ctrlKey||a.altKey||a.metaKey||1!==a.key.length||n(a.key),(!b||" "!==a.key)&&mq.includes(a.key)&&(p(),a.preventDefault())})})})});mF.displayName=mE;var mG="SelectValue",mH=E.forwardRef((a,b)=>{let{__scopeSelect:c,className:d,style:e,children:f,placeholder:g="",...h}=a,i=mA(mG,c),{onValueNodeHasChildrenChange:j}=i,k=void 0!==f,l=(0,ao.useComposedRefs)(b,i.onValueNodeChange);return(0,mm.useLayoutEffect)(()=>{j(k)},[j,k]),(0,B.jsx)(av.Primitive.span,{...h,ref:l,style:{pointerEvents:"none"},children:nf(i.value)?(0,B.jsx)(B.Fragment,{children:g}):f})});mH.displayName=mG;var mI=E.forwardRef((a,b)=>{let{__scopeSelect:c,children:d,...e}=a;return(0,B.jsx)(av.Primitive.span,{"aria-hidden":!0,...e,ref:b,children:d||"▼"})});mI.displayName="SelectIcon";var mJ=a=>(0,B.jsx)(mi.Portal,{asChild:!0,...a});mJ.displayName="SelectPortal";var mK="SelectContent",mL=E.forwardRef((a,b)=>{let c=mA(mK,a.__scopeSelect),[d,e]=E.useState();return((0,mm.useLayoutEffect)(()=>{e(new DocumentFragment)},[]),c.open)?(0,B.jsx)(mP,{...a,ref:b}):d?ag.createPortal((0,B.jsx)(mM,{scope:a.__scopeSelect,children:(0,B.jsx)(mt.Slot,{scope:a.__scopeSelect,children:(0,B.jsx)("div",{children:a.children})})}),d):null});mL.displayName=mK;var[mM,mN]=mw(mK),mO=((d=E.forwardRef((a,b)=>{let{children:c,...d}=a;if(E.isValidElement(c)){var e;let a,f,g=(e=c,(f=(a=Object.getOwnPropertyDescriptor(e.props,"ref")?.get)&&"isReactWarning"in a&&a.isReactWarning)?e.ref:(f=(a=Object.getOwnPropertyDescriptor(e,"ref")?.get)&&"isReactWarning"in a&&a.isReactWarning)?e.props.ref:e.props.ref||e.ref),h=function(a,b){let c={...b};for(let d in b){let e=a[d],f=b[d];/^on[A-Z]/.test(d)?e&&f?c[d]=(...a)=>{let b=f(...a);return e(...a),b}:e&&(c[d]=e):"style"===d?c[d]={...e,...f}:"className"===d&&(c[d]=[e,f].filter(Boolean).join(" "))}return{...a,...c}}(d,c.props);return c.type!==E.Fragment&&(h.ref=b?(0,ao.composeRefs)(b,g):g),E.cloneElement(c,h)}return E.Children.count(c)>1?E.Children.only(null):null})).displayName="SelectContent.RemoveScroll.SlotClone",b=d,(c=E.forwardRef((a,c)=>{let{children:d,...e}=a,f=E.Children.toArray(d),g=f.find(mk);if(g){let a=g.props.children,d=f.map(b=>b!==g?b:E.Children.count(a)>1?E.Children.only(null):E.isValidElement(a)?a.props.children:null);return(0,B.jsx)(b,{...e,ref:c,children:E.isValidElement(a)?E.cloneElement(a,void 0,d):null})}return(0,B.jsx)(b,{...e,ref:c,children:d})})).displayName="SelectContent.RemoveScroll.Slot",c),mP=E.forwardRef((a,b)=>{let{__scopeSelect:c,position:d="item-aligned",onCloseAutoFocus:e,onEscapeKeyDown:f,onPointerDownOutside:g,side:h,sideOffset:i,align:j,alignOffset:k,arrowPadding:l,collisionBoundary:n,collisionPadding:o,sticky:p,hideWhenDetached:q,avoidCollisions:r,...s}=a,t=mA(mK,c),[u,v]=E.useState(null),[w,x]=E.useState(null),y=(0,ao.useComposedRefs)(b,a=>v(a)),[z,A]=E.useState(null),[C,D]=E.useState(null),F=mu(c),[G,H]=E.useState(!1),I=E.useRef(!1);E.useEffect(()=>{if(u)return(0,mo.hideOthers)(u)},[u]),(0,me.useFocusGuards)();let J=E.useCallback(a=>{let[b,...c]=F().map(a=>a.ref.current),[d]=c.slice(-1),e=document.activeElement;for(let c of a)if(c===e||(c?.scrollIntoView({block:"nearest"}),c===b&&w&&(w.scrollTop=0),c===d&&w&&(w.scrollTop=w.scrollHeight),c?.focus(),document.activeElement!==e))return},[F,w]),K=E.useCallback(()=>J([z,u]),[J,z,u]);E.useEffect(()=>{G&&K()},[G,K]);let{onOpenChange:L,triggerPointerDownPosRef:M}=t;E.useEffect(()=>{if(u){let a={x:0,y:0},b=b=>{a={x:Math.abs(Math.round(b.pageX)-(M.current?.x??0)),y:Math.abs(Math.round(b.pageY)-(M.current?.y??0))}},c=c=>{a.x<=10&&a.y<=10?c.preventDefault():u.contains(c.target)||L(!1),document.removeEventListener("pointermove",b),M.current=null};return null!==M.current&&(document.addEventListener("pointermove",b),document.addEventListener("pointerup",c,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",b),document.removeEventListener("pointerup",c,{capture:!0})}}},[u,L,M]),E.useEffect(()=>{let a=()=>L(!1);return window.addEventListener("blur",a),window.addEventListener("resize",a),()=>{window.removeEventListener("blur",a),window.removeEventListener("resize",a)}},[L]);let[N,O]=ng(a=>{let b=F().filter(a=>!a.disabled),c=b.find(a=>a.ref.current===document.activeElement),d=nh(b,a,c);d&&setTimeout(()=>d.ref.current.focus())}),P=E.useCallback((a,b,c)=>{let d=!I.current&&!c;(void 0!==t.value&&t.value===b||d)&&(A(a),d&&(I.current=!0))},[t.value]),Q=E.useCallback(()=>u?.focus(),[u]),R=E.useCallback((a,b,c)=>{let d=!I.current&&!c;(void 0!==t.value&&t.value===b||d)&&D(a)},[t.value]),S="popper"===d?mR:mQ,T=S===mR?{side:h,sideOffset:i,align:j,alignOffset:k,arrowPadding:l,collisionBoundary:n,collisionPadding:o,sticky:p,hideWhenDetached:q,avoidCollisions:r}:{};return(0,B.jsx)(mM,{scope:c,content:u,viewport:w,onViewportChange:x,itemRefCallback:P,selectedItem:z,onItemLeave:Q,itemTextRefCallback:R,focusSelectedItem:K,selectedItemText:C,position:d,isPositioned:G,searchRef:N,children:(0,B.jsx)(mp.RemoveScroll,{as:mO,allowPinchZoom:!0,children:(0,B.jsx)(mf.FocusScope,{asChild:!0,trapped:t.open,onMountAutoFocus:a=>{a.preventDefault()},onUnmountAutoFocus:(0,an.composeEventHandlers)(e,a=>{t.trigger?.focus({preventScroll:!0}),a.preventDefault()}),children:(0,B.jsx)(md.DismissableLayer,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:f,onPointerDownOutside:g,onFocusOutside:a=>a.preventDefault(),onDismiss:()=>t.onOpenChange(!1),children:(0,B.jsx)(S,{role:"listbox",id:t.contentId,"data-state":t.open?"open":"closed",dir:t.dir,onContextMenu:a=>a.preventDefault(),...s,...T,onPlaced:()=>H(!0),ref:y,style:{display:"flex",flexDirection:"column",outline:"none",...s.style},onKeyDown:(0,an.composeEventHandlers)(s.onKeyDown,a=>{let b=a.ctrlKey||a.altKey||a.metaKey;if("Tab"===a.key&&a.preventDefault(),b||1!==a.key.length||O(a.key),["ArrowUp","ArrowDown","Home","End"].includes(a.key)){let b=F().filter(a=>!a.disabled).map(a=>a.ref.current);if(["ArrowUp","End"].includes(a.key)&&(b=b.slice().reverse()),["ArrowUp","ArrowDown"].includes(a.key)){let c=a.target,d=b.indexOf(c);b=b.slice(d+1)}setTimeout(()=>J(b)),a.preventDefault()}})})})})})})});mP.displayName="SelectContentImpl";var mQ=E.forwardRef((a,b)=>{let{__scopeSelect:c,onPlaced:d,...e}=a,f=mA(mK,c),g=mN(mK,c),[h,i]=E.useState(null),[j,k]=E.useState(null),l=(0,ao.useComposedRefs)(b,a=>k(a)),n=mu(c),o=E.useRef(!1),p=E.useRef(!0),{viewport:q,selectedItem:r,selectedItemText:s,focusSelectedItem:t}=g,u=E.useCallback(()=>{if(f.trigger&&f.valueNode&&h&&j&&q&&r&&s){let a=f.trigger.getBoundingClientRect(),b=j.getBoundingClientRect(),c=f.valueNode.getBoundingClientRect(),e=s.getBoundingClientRect();if("rtl"!==f.dir){let d=e.left-b.left,f=c.left-d,g=a.left-f,i=a.width+g,j=Math.max(i,b.width),k=am(f,[10,Math.max(10,window.innerWidth-10-j)]);h.style.minWidth=i+"px",h.style.left=k+"px"}else{let d=b.right-e.right,f=window.innerWidth-c.right-d,g=window.innerWidth-a.right-f,i=a.width+g,j=Math.max(i,b.width),k=am(f,[10,Math.max(10,window.innerWidth-10-j)]);h.style.minWidth=i+"px",h.style.right=k+"px"}let g=n(),i=window.innerHeight-20,k=q.scrollHeight,l=window.getComputedStyle(j),p=parseInt(l.borderTopWidth,10),t=parseInt(l.paddingTop,10),u=parseInt(l.borderBottomWidth,10),v=p+t+k+parseInt(l.paddingBottom,10)+u,w=Math.min(5*r.offsetHeight,v),x=window.getComputedStyle(q),y=parseInt(x.paddingTop,10),z=parseInt(x.paddingBottom,10),A=a.top+a.height/2-10,B=r.offsetHeight/2,C=p+t+(r.offsetTop+B);if(C<=A){let a=g.length>0&&r===g[g.length-1].ref.current;h.style.bottom="0px";let b=Math.max(i-A,B+(a?z:0)+(j.clientHeight-q.offsetTop-q.offsetHeight)+u);h.style.height=C+b+"px"}else{let a=g.length>0&&r===g[0].ref.current;h.style.top="0px";let b=Math.max(A,p+q.offsetTop+(a?y:0)+B);h.style.height=b+(v-C)+"px",q.scrollTop=C-A+q.offsetTop}h.style.margin="10px 0",h.style.minHeight=w+"px",h.style.maxHeight=i+"px",d?.(),requestAnimationFrame(()=>o.current=!0)}},[n,f.trigger,f.valueNode,h,j,q,r,s,f.dir,d]);(0,mm.useLayoutEffect)(()=>u(),[u]);let[v,w]=E.useState();(0,mm.useLayoutEffect)(()=>{j&&w(window.getComputedStyle(j).zIndex)},[j]);let x=E.useCallback(a=>{a&&!0===p.current&&(u(),t?.(),p.current=!1)},[u,t]);return(0,B.jsx)(mS,{scope:c,contentWrapper:h,shouldExpandOnScrollRef:o,onScrollButtonChange:x,children:(0,B.jsx)("div",{ref:i,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:v},children:(0,B.jsx)(av.Primitive.div,{...e,ref:l,style:{boxSizing:"border-box",maxHeight:"100%",...e.style}})})})});mQ.displayName="SelectItemAlignedPosition";var mR=E.forwardRef((a,b)=>{let{__scopeSelect:c,align:d="start",collisionPadding:e=10,...f}=a,g=my(c);return(0,B.jsx)(mh.Content,{...g,...f,ref:b,align:d,collisionPadding:e,style:{boxSizing:"border-box",...f.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});mR.displayName="SelectPopperPosition";var[mS,mT]=mw(mK,{}),mU="SelectViewport",mV=E.forwardRef((a,b)=>{let{__scopeSelect:c,nonce:d,...e}=a,f=mN(mU,c),g=mT(mU,c),h=(0,ao.useComposedRefs)(b,f.onViewportChange),i=E.useRef(0);return(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:d}),(0,B.jsx)(mt.Slot,{scope:c,children:(0,B.jsx)(av.Primitive.div,{"data-radix-select-viewport":"",role:"presentation",...e,ref:h,style:{position:"relative",flex:1,overflow:"hidden auto",...e.style},onScroll:(0,an.composeEventHandlers)(e.onScroll,a=>{let b=a.currentTarget,{contentWrapper:c,shouldExpandOnScrollRef:d}=g;if(d?.current&&c){let a=Math.abs(i.current-b.scrollTop);if(a>0){let d=window.innerHeight-20,e=Math.max(parseFloat(c.style.minHeight),parseFloat(c.style.height));if(e<d){let f=e+a,g=Math.min(d,f),h=f-g;c.style.height=g+"px","0px"===c.style.bottom&&(b.scrollTop=h>0?h:0,c.style.justifyContent="flex-end")}}}i.current=b.scrollTop})})})]})});mV.displayName=mU;var mW="SelectGroup",[mX,mY]=mw(mW);E.forwardRef((a,b)=>{let{__scopeSelect:c,...d}=a,e=(0,mg.useId)();return(0,B.jsx)(mX,{scope:c,id:e,children:(0,B.jsx)(av.Primitive.div,{role:"group","aria-labelledby":e,...d,ref:b})})}).displayName=mW;var mZ="SelectLabel",m$=E.forwardRef((a,b)=>{let{__scopeSelect:c,...d}=a,e=mY(mZ,c);return(0,B.jsx)(av.Primitive.div,{id:e.id,...d,ref:b})});m$.displayName=mZ;var m_="SelectItem",[m0,m1]=mw(m_),m2=E.forwardRef((a,b)=>{let{__scopeSelect:c,value:d,disabled:e=!1,textValue:f,...g}=a,h=mA(m_,c),i=mN(m_,c),j=h.value===d,[k,l]=E.useState(f??""),[n,o]=E.useState(!1),p=(0,ao.useComposedRefs)(b,a=>i.itemRefCallback?.(a,d,e)),q=(0,mg.useId)(),r=E.useRef("touch"),s=()=>{e||(h.onValueChange(d),h.onOpenChange(!1))};if(""===d)throw Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return(0,B.jsx)(m0,{scope:c,value:d,disabled:e,textId:q,isSelected:j,onItemTextChange:E.useCallback(a=>{l(b=>b||(a?.textContent??"").trim())},[]),children:(0,B.jsx)(mt.ItemSlot,{scope:c,value:d,disabled:e,textValue:k,children:(0,B.jsx)(av.Primitive.div,{role:"option","aria-labelledby":q,"data-highlighted":n?"":void 0,"aria-selected":j&&n,"data-state":j?"checked":"unchecked","aria-disabled":e||void 0,"data-disabled":e?"":void 0,tabIndex:e?void 0:-1,...g,ref:p,onFocus:(0,an.composeEventHandlers)(g.onFocus,()=>o(!0)),onBlur:(0,an.composeEventHandlers)(g.onBlur,()=>o(!1)),onClick:(0,an.composeEventHandlers)(g.onClick,()=>{"mouse"!==r.current&&s()}),onPointerUp:(0,an.composeEventHandlers)(g.onPointerUp,()=>{"mouse"===r.current&&s()}),onPointerDown:(0,an.composeEventHandlers)(g.onPointerDown,a=>{r.current=a.pointerType}),onPointerMove:(0,an.composeEventHandlers)(g.onPointerMove,a=>{r.current=a.pointerType,e?i.onItemLeave?.():"mouse"===r.current&&a.currentTarget.focus({preventScroll:!0})}),onPointerLeave:(0,an.composeEventHandlers)(g.onPointerLeave,a=>{a.currentTarget===document.activeElement&&i.onItemLeave?.()}),onKeyDown:(0,an.composeEventHandlers)(g.onKeyDown,a=>{(i.searchRef?.current===""||" "!==a.key)&&(mr.includes(a.key)&&s()," "===a.key&&a.preventDefault())})})})})});m2.displayName=m_;var m3="SelectItemText",m4=E.forwardRef((a,b)=>{let{__scopeSelect:c,className:d,style:e,...f}=a,g=mA(m3,c),h=mN(m3,c),i=m1(m3,c),j=mC(m3,c),[k,l]=E.useState(null),n=(0,ao.useComposedRefs)(b,a=>l(a),i.onItemTextChange,a=>h.itemTextRefCallback?.(a,i.value,i.disabled)),o=k?.textContent,p=E.useMemo(()=>(0,B.jsx)("option",{value:i.value,disabled:i.disabled,children:o},i.value),[i.disabled,i.value,o]),{onNativeOptionAdd:q,onNativeOptionRemove:r}=j;return(0,mm.useLayoutEffect)(()=>(q(p),()=>r(p)),[q,r,p]),(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(av.Primitive.span,{id:i.textId,...f,ref:n}),i.isSelected&&g.valueNode&&!g.valueNodeHasChildren?ag.createPortal(f.children,g.valueNode):null]})});m4.displayName=m3;var m5="SelectItemIndicator",m6=E.forwardRef((a,b)=>{let{__scopeSelect:c,...d}=a;return m1(m5,c).isSelected?(0,B.jsx)(av.Primitive.span,{"aria-hidden":!0,...d,ref:b}):null});m6.displayName=m5;var m7="SelectScrollUpButton",m8=E.forwardRef((a,b)=>{let c=mN(m7,a.__scopeSelect),d=mT(m7,a.__scopeSelect),[e,f]=E.useState(!1),g=(0,ao.useComposedRefs)(b,d.onScrollButtonChange);return(0,mm.useLayoutEffect)(()=>{if(c.viewport&&c.isPositioned){let a=function(){f(b.scrollTop>0)},b=c.viewport;return a(),b.addEventListener("scroll",a),()=>b.removeEventListener("scroll",a)}},[c.viewport,c.isPositioned]),e?(0,B.jsx)(nb,{...a,ref:g,onAutoScroll:()=>{let{viewport:a,selectedItem:b}=c;a&&b&&(a.scrollTop=a.scrollTop-b.offsetHeight)}}):null});m8.displayName=m7;var m9="SelectScrollDownButton",na=E.forwardRef((a,b)=>{let c=mN(m9,a.__scopeSelect),d=mT(m9,a.__scopeSelect),[e,f]=E.useState(!1),g=(0,ao.useComposedRefs)(b,d.onScrollButtonChange);return(0,mm.useLayoutEffect)(()=>{if(c.viewport&&c.isPositioned){let a=function(){let a=b.scrollHeight-b.clientHeight;f(Math.ceil(b.scrollTop)<a)},b=c.viewport;return a(),b.addEventListener("scroll",a),()=>b.removeEventListener("scroll",a)}},[c.viewport,c.isPositioned]),e?(0,B.jsx)(nb,{...a,ref:g,onAutoScroll:()=>{let{viewport:a,selectedItem:b}=c;a&&b&&(a.scrollTop=a.scrollTop+b.offsetHeight)}}):null});na.displayName=m9;var nb=E.forwardRef((a,b)=>{let{__scopeSelect:c,onAutoScroll:d,...e}=a,f=mN("SelectScrollButton",c),g=E.useRef(null),h=mu(c),i=E.useCallback(()=>{null!==g.current&&(window.clearInterval(g.current),g.current=null)},[]);return E.useEffect(()=>()=>i(),[i]),(0,mm.useLayoutEffect)(()=>{let a=h().find(a=>a.ref.current===document.activeElement);a?.ref.current?.scrollIntoView({block:"nearest"})},[h]),(0,B.jsx)(av.Primitive.div,{"aria-hidden":!0,...e,ref:b,style:{flexShrink:0,...e.style},onPointerDown:(0,an.composeEventHandlers)(e.onPointerDown,()=>{null===g.current&&(g.current=window.setInterval(d,50))}),onPointerMove:(0,an.composeEventHandlers)(e.onPointerMove,()=>{f.onItemLeave?.(),null===g.current&&(g.current=window.setInterval(d,50))}),onPointerLeave:(0,an.composeEventHandlers)(e.onPointerLeave,()=>{i()})})}),nc=E.forwardRef((a,b)=>{let{__scopeSelect:c,...d}=a;return(0,B.jsx)(av.Primitive.div,{"aria-hidden":!0,...d,ref:b})});nc.displayName="SelectSeparator";var nd="SelectArrow";E.forwardRef((a,b)=>{let{__scopeSelect:c,...d}=a,e=my(c),f=mA(nd,c),g=mN(nd,c);return f.open&&"popper"===g.position?(0,B.jsx)(mh.Arrow,{...e,...d,ref:b}):null}).displayName=nd;var ne=E.forwardRef(({__scopeSelect:a,value:b,...c},d)=>{let e=E.useRef(null),f=(0,ao.useComposedRefs)(d,e),g=(0,at.usePrevious)(b);return E.useEffect(()=>{let a=e.current;if(!a)return;let c=Object.getOwnPropertyDescriptor(window.HTMLSelectElement.prototype,"value").set;if(g!==b&&c){let d=new Event("change",{bubbles:!0});c.call(a,b),a.dispatchEvent(d)}},[g,b]),(0,B.jsx)(av.Primitive.select,{...c,style:{...mn,...c.style},ref:f,defaultValue:b})});function nf(a){return""===a||void 0===a}function ng(a){let b=(0,ml.useCallbackRef)(a),c=E.useRef(""),d=E.useRef(0),e=E.useCallback(a=>{let e=c.current+a;b(e),function a(b){c.current=b,window.clearTimeout(d.current),""!==b&&(d.current=window.setTimeout(()=>a(""),1e3))}(e)},[b]),f=E.useCallback(()=>{c.current="",window.clearTimeout(d.current)},[]);return E.useEffect(()=>()=>window.clearTimeout(d.current),[]),[c,e,f]}function nh(a,b,c){var d,e;let f=b.length>1&&Array.from(b).every(a=>a===b[0])?b[0]:b,g=c?a.indexOf(c):-1,h=(d=a,e=Math.max(g,0),d.map((a,b)=>d[(e+b)%d.length]));1===f.length&&(h=h.filter(a=>a!==c));let i=h.find(a=>a.textValue.toLowerCase().startsWith(f.toLowerCase()));return i!==c?i:void 0}ne.displayName="SelectBubbleInput";let ni=(0,H.default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]),nj=(0,H.default)("chevron-up",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]),nk=E.forwardRef(({className:a,children:b,...c},d)=>(0,B.jsxs)(mF,{ref:d,className:(0,P.cn)("flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background data-[placeholder]:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",a),...c,children:[b,(0,B.jsx)(mI,{asChild:!0,children:(0,B.jsx)(ni,{className:"h-4 w-4 opacity-50"})})]}));nk.displayName=mF.displayName;let nl=E.forwardRef(({className:a,...b},c)=>(0,B.jsx)(m8,{ref:c,className:(0,P.cn)("flex cursor-default items-center justify-center py-1",a),...b,children:(0,B.jsx)(nj,{className:"h-4 w-4"})}));nl.displayName=m8.displayName;let nm=E.forwardRef(({className:a,...b},c)=>(0,B.jsx)(na,{ref:c,className:(0,P.cn)("flex cursor-default items-center justify-center py-1",a),...b,children:(0,B.jsx)(ni,{className:"h-4 w-4"})}));nm.displayName=na.displayName;let nn=E.forwardRef(({className:a,children:b,position:c="popper",...d},e)=>(0,B.jsx)(mJ,{children:(0,B.jsxs)(mL,{ref:e,className:(0,P.cn)("relative z-50 max-h-[--radix-select-content-available-height] min-w-[8rem] overflow-y-auto overflow-x-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 origin-[--radix-select-content-transform-origin]","popper"===c&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",a),position:c,...d,children:[(0,B.jsx)(nl,{}),(0,B.jsx)(mV,{className:(0,P.cn)("p-1","popper"===c&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:b}),(0,B.jsx)(nm,{})]})}));nn.displayName=mL.displayName,E.forwardRef(({className:a,...b},c)=>(0,B.jsx)(m$,{ref:c,className:(0,P.cn)("py-1.5 pl-8 pr-2 text-sm font-semibold",a),...b})).displayName=m$.displayName;let no=E.forwardRef(({className:a,children:b,...c},d)=>(0,B.jsxs)(m2,{ref:d,className:(0,P.cn)("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",a),...c,children:[(0,B.jsx)("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:(0,B.jsx)(m6,{children:(0,B.jsx)(W.Check,{className:"h-4 w-4"})})}),(0,B.jsx)(m4,{children:b})]}));no.displayName=m2.displayName,E.forwardRef(({className:a,...b},c)=>(0,B.jsx)(nc,{ref:c,className:(0,P.cn)("-mx-1 my-1 h-px bg-muted",a),...b})).displayName=nc.displayName;var np=a.i(4212);let nq=E.forwardRef(({className:a,...b},c)=>(0,B.jsx)("div",{ref:c,className:(0,P.cn)("rounded-lg border bg-card text-card-foreground shadow-sm",a),...b}));nq.displayName="Card";let nr=E.forwardRef(({className:a,...b},c)=>(0,B.jsx)("div",{ref:c,className:(0,P.cn)("flex flex-col space-y-1.5 p-6",a),...b}));nr.displayName="CardHeader";let ns=E.forwardRef(({className:a,...b},c)=>(0,B.jsx)("div",{ref:c,className:(0,P.cn)("text-2xl font-semibold leading-none tracking-tight",a),...b}));ns.displayName="CardTitle";let nt=E.forwardRef(({className:a,...b},c)=>(0,B.jsx)("div",{ref:c,className:(0,P.cn)("text-sm text-muted-foreground",a),...b}));nt.displayName="CardDescription";let nu=E.forwardRef(({className:a,...b},c)=>(0,B.jsx)("div",{ref:c,className:(0,P.cn)("p-6 pt-0",a),...b}));nu.displayName="CardContent",E.forwardRef(({className:a,...b},c)=>(0,B.jsx)("div",{ref:c,className:(0,P.cn)("flex items-center p-6 pt-0",a),...b})).displayName="CardFooter";let nv=(0,H.default)("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]);"function"==typeof SuppressedError&&SuppressedError;var nw=function(){var a=document.getSelection();if(!a.rangeCount)return function(){};for(var b=document.activeElement,c=[],d=0;d<a.rangeCount;d++)c.push(a.getRangeAt(d));switch(b.tagName.toUpperCase()){case"INPUT":case"TEXTAREA":b.blur();break;default:b=null}return a.removeAllRanges(),function(){"Caret"===a.type&&a.removeAllRanges(),a.rangeCount||c.forEach(function(b){a.addRange(b)}),b&&b.focus()}},nx={"text/plain":"Text","text/html":"Url",default:"Text"},ny=function(a,b){var c,d,e,f,g,h,i,j,k=!1;b||(b={}),e=b.debug||!1;try{if(g=nw(),h=document.createRange(),i=document.getSelection(),(j=document.createElement("span")).textContent=a,j.ariaHidden="true",j.style.all="unset",j.style.position="fixed",j.style.top=0,j.style.clip="rect(0, 0, 0, 0)",j.style.whiteSpace="pre",j.style.webkitUserSelect="text",j.style.MozUserSelect="text",j.style.msUserSelect="text",j.style.userSelect="text",j.addEventListener("copy",function(c){if(c.stopPropagation(),b.format)if(c.preventDefault(),void 0===c.clipboardData){e&&console.warn("unable to use e.clipboardData"),e&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var d=nx[b.format]||nx.default;window.clipboardData.setData(d,a)}else c.clipboardData.clearData(),c.clipboardData.setData(b.format,a);b.onCopy&&(c.preventDefault(),b.onCopy(c.clipboardData))}),document.body.appendChild(j),h.selectNodeContents(j),i.addRange(h),!document.execCommand("copy"))throw Error("copy command was unsuccessful");k=!0}catch(g){e&&console.error("unable to copy using execCommand: ",g),e&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(b.format||"text",a),b.onCopy&&b.onCopy(window.clipboardData),k=!0}catch(g){e&&console.error("unable to copy using clipboardData: ",g),e&&console.error("falling back to prompt"),c="message"in b?b.message:"Copy to clipboard: #{key}, Enter",d=(/mac os x/i.test(navigator.userAgent)?"⌘":"Ctrl")+"+C",f=c.replace(/#{\s*key\s*}/g,d),window.prompt(f,a)}}finally{i&&("function"==typeof i.removeRange?i.removeRange(h):i.removeAllRanges()),j&&document.body.removeChild(j),g()}return k};function nz(a){return"[object Object]"===Object.prototype.toString.call(a)}function nA(a){return Array.isArray(a)?a.length:nz(a)?Object.keys(a).length:0}function nB(a,b,c,d,e,f){if(f&&void 0!==f.collapsed)return!!f.collapsed;if("boolean"==typeof d)return d;if("number"==typeof d&&b>d)return!0;let g=nA(a);if("function"==typeof d){let e=nE(d,[{node:a,depth:b,indexOrName:c,size:g}]);if("boolean"==typeof e)return e}return!!(Array.isArray(a)&&g>e||nz(a)&&g>e)}function nC(a,b,c,d,e,f){if(f&&void 0!==f.collapsed)return!!f.collapsed;if("boolean"==typeof d)return d;if("number"==typeof d&&b>d)return!0;let g=Math.ceil(a.length/100);if("function"==typeof d){let e=nE(d,[{node:a,depth:b,indexOrName:c,size:g}]);if("boolean"==typeof e)return e}return!!(Array.isArray(a)&&g>e||nz(a)&&g>e)}function nD(a,b,c){return"boolean"==typeof a?a:"number"==typeof a&&!!(b>a)||"collapsed"===a&&!!c||"expanded"===a&&!c}function nE(a,b){try{return a(...b)}catch(a){reportError(a)}}function nF(a){if(!0===a||nz(a)&&!0===a.add)return!0}function nG(a){if(!0===a||nz(a)&&!0===a.edit)return!0}function nH(a){if(!0===a||nz(a)&&!0===a.delete)return!0}function nI(a){return!a||void 0===a.add||!!a.add}function nJ(a){return!a||void 0===a.edit||!!a.edit}function nK(a){return!a||void 0===a.delete||!!a.delete}function nL(a){return!a||void 0===a.enableClipboard||!!a.enableClipboard}function nM(){return(nM=Object.assign.bind()).apply(this,arguments)}var nN=function(a){return E.createElement("svg",nM({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},a),l||(l=E.createElement("path",{fill:"currentColor",d:"M12.473 5.806a.666.666 0 0 0-.946 0L8.473 8.86a.667.667 0 0 1-.946 0L4.473 5.806a.667.667 0 1 0-.946.94l3.06 3.06a2 2 0 0 0 2.826 0l3.06-3.06a.667.667 0 0 0 0-.94Z"})))};function nO(){return(nO=Object.assign.bind()).apply(this,arguments)}var nP=function(a){return E.createElement("svg",nO({xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"none",viewBox:"0 0 24 24"},a),n||(n=E.createElement("path",{fill:"currentColor",d:"M17.542 2.5h-4.75a3.963 3.963 0 0 0-3.959 3.958v4.75a3.963 3.963 0 0 0 3.959 3.959h4.75a3.963 3.963 0 0 0 3.958-3.959v-4.75A3.963 3.963 0 0 0 17.542 2.5Zm2.375 8.708a2.378 2.378 0 0 1-2.375 2.375h-4.75a2.378 2.378 0 0 1-2.375-2.375v-4.75a2.378 2.378 0 0 1 2.375-2.375h4.75a2.378 2.378 0 0 1 2.375 2.375v4.75Zm-4.75 6.334a3.963 3.963 0 0 1-3.959 3.958h-4.75A3.963 3.963 0 0 1 2.5 17.542v-4.75a3.963 3.963 0 0 1 3.958-3.959.791.791 0 1 1 0 1.584 2.378 2.378 0 0 0-2.375 2.375v4.75a2.378 2.378 0 0 0 2.375 2.375h4.75a2.378 2.378 0 0 0 2.375-2.375.792.792 0 1 1 1.584 0Z"})))};function nQ(){return(nQ=Object.assign.bind()).apply(this,arguments)}var nR=function(a){return E.createElement("svg",nQ({xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"none",viewBox:"0 0 24 24"},a),o||(o=E.createElement("path",{fill:"currentColor",d:"M17.25 3H6.75A3.755 3.755 0 0 0 3 6.75v10.5A3.754 3.754 0 0 0 6.75 21h10.5A3.754 3.754 0 0 0 21 17.25V6.75A3.755 3.755 0 0 0 17.25 3Zm2.25 14.25a2.25 2.25 0 0 1-2.25 2.25H6.75a2.25 2.25 0 0 1-2.25-2.25V6.75A2.25 2.25 0 0 1 6.75 4.5h10.5a2.25 2.25 0 0 1 2.25 2.25v10.5Z"})),p||(p=E.createElement("path",{fill:"#14C786",d:"M10.312 14.45 7.83 11.906a.625.625 0 0 0-.896 0 .659.659 0 0 0 0 .918l2.481 2.546a1.264 1.264 0 0 0 .896.381 1.237 1.237 0 0 0 .895-.38l5.858-6.011a.658.658 0 0 0 0-.919.625.625 0 0 0-.896 0l-5.857 6.01Z"})))};function nS({node:a,nodeMeta:b}){let{customizeCopy:c,CopyComponent:d,CopiedComponent:e}=(0,E.useContext)(oa),[f,g]=(0,E.useState)(!1),h=d=>{d.stopPropagation();let e=c(a,b);"string"==typeof e&&e&&function(a){var b,c,d,e;b=this,c=void 0,d=void 0,e=function*(){try{yield navigator.clipboard.writeText(a)}catch(b){ny(a)}},new(d||(d=Promise))(function(a,f){function g(a){try{i(e.next(a))}catch(a){f(a)}}function h(a){try{i(e.throw(a))}catch(a){f(a)}}function i(b){var c;b.done?a(b.value):((c=b.value)instanceof d?c:new d(function(a){a(c)})).then(g,h)}i((e=e.apply(b,c||[])).next())})}(e),g(!0),setTimeout(()=>g(!1),3e3)};return f?"function"==typeof e?(0,B.jsx)(e,{className:"json-view--copy",style:{display:"inline-block"}}):(0,B.jsx)(nR,{className:"json-view--copy",style:{display:"inline-block"}}):"function"==typeof d?(0,B.jsx)(d,{onClick:h,className:"json-view--copy"}):(0,B.jsx)(nP,{onClick:h,className:"json-view--copy"})}function nT({indexOrName:a,value:b,depth:c,deleteHandle:d,editHandle:e,parent:f,parentPath:g}){let{displayArrayIndex:h}=(0,E.useContext)(oa),i=Array.isArray(f);return(0,B.jsxs)("div",Object.assign({className:"json-view--pair"},{children:[!i||i&&h?(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)("span",Object.assign({className:"number"==typeof a?"json-view--index":"json-view--property"},{children:a})),":"," "]}):(0,B.jsx)(B.Fragment,{}),(0,B.jsx)(n8,{node:b,depth:c+1,deleteHandle:(a,b)=>d(a,b),editHandle:(a,b,c,d)=>e(a,b,c,d),parent:f,indexOrName:a,parentPath:g})]}))}function nU(){return(nU=Object.assign.bind()).apply(this,arguments)}var nV=function(a){return E.createElement("svg",nU({xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"none",viewBox:"0 0 24 24"},a),q||(q=E.createElement("path",{fill:"currentColor",d:"M18.75 6h-2.325a3.757 3.757 0 0 0-3.675-3h-1.5a3.757 3.757 0 0 0-3.675 3H5.25a.75.75 0 0 0 0 1.5H6v9.75A3.754 3.754 0 0 0 9.75 21h4.5A3.754 3.754 0 0 0 18 17.25V7.5h.75a.75.75 0 1 0 0-1.5Zm-7.5-1.5h1.5A2.255 2.255 0 0 1 14.872 6H9.128a2.255 2.255 0 0 1 2.122-1.5Zm5.25 12.75a2.25 2.25 0 0 1-2.25 2.25h-4.5a2.25 2.25 0 0 1-2.25-2.25V7.5h9v9.75Z"})),r||(r=E.createElement("path",{fill:"#DA0000",d:"M10.5 16.5a.75.75 0 0 0 .75-.75v-4.5a.75.75 0 1 0-1.5 0v4.5a.75.75 0 0 0 .75.75ZM13.5 16.5a.75.75 0 0 0 .75-.75v-4.5a.75.75 0 1 0-1.5 0v4.5a.75.75 0 0 0 .75.75Z"})))};function nW(){return(nW=Object.assign.bind()).apply(this,arguments)}var nX=function(a){return E.createElement("svg",nW({xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"none",viewBox:"0 0 24 24"},a),s||(s=E.createElement("path",{fill:"currentColor",d:"M21 6.75v10.5A3.754 3.754 0 0 1 17.25 21H6.75A3.754 3.754 0 0 1 3 17.25V6.75A3.754 3.754 0 0 1 6.75 3h10.5A3.754 3.754 0 0 1 21 6.75Zm-1.5 0c0-1.24-1.01-2.25-2.25-2.25H6.75C5.51 4.5 4.5 5.51 4.5 6.75v10.5c0 1.24 1.01 2.25 2.25 2.25h10.5c1.24 0 2.25-1.01 2.25-2.25V6.75Z"})),t||(t=E.createElement("path",{fill:"#14C786",d:"M15 12.75a.75.75 0 1 0 0-1.5h-2.25V9a.75.75 0 1 0-1.5 0v2.25H9a.75.75 0 1 0 0 1.5h2.25V15a.75.75 0 1 0 1.5 0v-2.25H15Z"})))};function nY(){return(nY=Object.assign.bind()).apply(this,arguments)}var nZ=function(a){return E.createElement("svg",nY({xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"none",viewBox:"0 0 24 24"},a),u||(u=E.createElement("path",{fill:"currentColor",d:"M12 3a9 9 0 1 0 9 9 9.01 9.01 0 0 0-9-9Zm0 16.5a7.5 7.5 0 1 1 7.5-7.5 7.509 7.509 0 0 1-7.5 7.5Z"})),v||(v=E.createElement("path",{fill:"#14C786",d:"m10.85 13.96-1.986-2.036a.5.5 0 0 0-.716 0 .527.527 0 0 0 0 .735l1.985 2.036a1.01 1.01 0 0 0 .717.305.99.99 0 0 0 .716-.305l4.686-4.808a.526.526 0 0 0 0-.735.5.5 0 0 0-.716 0l-4.687 4.809Z"})))};function n$(){return(n$=Object.assign.bind()).apply(this,arguments)}var n_=function(a){return E.createElement("svg",n$({xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"none",viewBox:"0 0 24 24"},a),w||(w=E.createElement("path",{fill:"#DA0000",d:"M15 9a.75.75 0 0 0-1.06 0L12 10.94 10.06 9A.75.75 0 0 0 9 10.06L10.94 12 9 13.94A.75.75 0 0 0 10.06 15L12 13.06 13.94 15A.75.75 0 0 0 15 13.94L13.06 12 15 10.06A.75.75 0 0 0 15 9Z"})),x||(x=E.createElement("path",{fill:"currentColor",d:"M12 3a9 9 0 1 0 9 9 9.01 9.01 0 0 0-9-9Zm0 16.5a7.5 7.5 0 1 1 7.5-7.5 7.509 7.509 0 0 1-7.5 7.5Z"})))};function n0({originNode:a,node:b,depth:c,index:d,deleteHandle:e,customOptions:f,startIndex:g,parent:h,parentPath:i}){let{enableClipboard:j,src:k,onEdit:l,onChange:n,forceUpdate:o,displaySize:p,CustomOperation:q}=(0,E.useContext)(oa),r=[...i,String(d)],[s,t]=(0,E.useState)(!0),u=(0,E.useCallback)((b,d,e)=>{a[b]=d,l&&l({newValue:d,oldValue:e,depth:c,src:k,indexOrName:b,parentType:"array",parentPath:i}),n&&n({type:"edit",depth:c,src:k,indexOrName:b,parentType:"array",parentPath:i}),o()},[b,l,n,o]),v=b=>{a.splice(b,1),e&&e(b,i),o()},w=(0,B.jsxs)(B.Fragment,{children:[!s&&(0,B.jsxs)("span",Object.assign({onClick:()=>t(!0),className:"jv-size-chevron"},{children:[nD(p,c,s)&&(0,B.jsxs)("span",Object.assign({className:"jv-size"},{children:[nA(b)," Items"]})),(0,B.jsx)(nN,{className:"jv-chevron"})]})),!s&&j&&nL(f)&&(0,B.jsx)(nS,{node:b,nodeMeta:{depth:c,indexOrName:d,parent:h,parentPath:i,currentPath:r}}),"function"==typeof q?(0,B.jsx)(q,{node:b}):null]});return(0,B.jsxs)("div",{children:[(0,B.jsx)("span",{children:"["}),w,s?(0,B.jsxs)("button",Object.assign({onClick:()=>t(!1),className:"jv-button"},{children:[g," ... ",g+b.length-1]})):(0,B.jsx)("div",Object.assign({className:"jv-indent"},{children:b.map((a,e)=>(0,B.jsx)(nT,{indexOrName:e+g,value:a,depth:c,parent:b,deleteHandle:v,editHandle:u,parentPath:i},String(d)+String(e)))})),(0,B.jsx)("span",{children:"]"})]})}function n1({node:a,depth:b,deleteHandle:c,indexOrName:d,customOptions:e,parent:f,parentPath:g}){let h=void 0!==d?[...g,String(d)]:g,i=[];for(let b=0;b<a.length;b+=100)i.push(a.slice(b,b+100));let{collapsed:j,enableClipboard:k,collapseObjectsAfterLength:l,editable:n,onDelete:o,src:p,onAdd:q,CustomOperation:r,onChange:s,forceUpdate:t,displaySize:u}=(0,E.useContext)(oa),[v,w]=(0,E.useState)(nC(a,b,d,j,l,e));(0,E.useEffect)(()=>{w(nC(a,b,d,j,l,e))},[j,l]);let[x,y]=(0,E.useState)(!1),[z,A]=(0,E.useState)(!1),C=()=>{a.push(null),q&&q({indexOrName:a.length-1,depth:b,src:p,parentType:"array",parentPath:g}),s&&s({type:"add",indexOrName:a.length-1,depth:b,src:p,parentType:"array",parentPath:g}),t()},D=x||z,F=(0,B.jsxs)(B.Fragment,{children:[!v&&!D&&(0,B.jsxs)("span",Object.assign({onClick:()=>w(!0),className:"jv-size-chevron"},{children:[nD(u,b,v)&&(0,B.jsxs)("span",Object.assign({className:"jv-size"},{children:[a.length," Items"]})),(0,B.jsx)(nN,{className:"jv-chevron"})]})),D&&(0,B.jsx)(nZ,{className:"json-view--edit",style:{display:"inline-block"},onClick:z?C:()=>{y(!1),c&&c(d,g),o&&o({value:a,depth:b,src:p,indexOrName:d,parentType:"array",parentPath:g}),s&&s({type:"delete",depth:b,src:p,indexOrName:d,parentType:"array",parentPath:g})}}),D&&(0,B.jsx)(n_,{className:"json-view--edit",style:{display:"inline-block"},onClick:()=>{y(!1),A(!1)}}),!v&&!D&&k&&nL(e)&&(0,B.jsx)(nS,{node:a,nodeMeta:{depth:b,indexOrName:d,parent:f,parentPath:g,currentPath:h}}),!v&&!D&&nF(n)&&nI(e)&&(0,B.jsx)(nX,{className:"json-view--edit",onClick:()=>{C()}}),!v&&!D&&nH(n)&&nK(e)&&c&&(0,B.jsx)(nV,{className:"json-view--edit",onClick:()=>y(!0)}),"function"==typeof r?(0,B.jsx)(r,{node:a}):null]});return(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)("span",{children:"["}),F,v?(0,B.jsx)("button",Object.assign({onClick:()=>w(!1),className:"jv-button"},{children:"..."})):(0,B.jsx)("div",Object.assign({className:"jv-indent"},{children:i.map((f,h)=>(0,B.jsx)(n0,{originNode:a,node:f,depth:b,index:h,startIndex:100*h,deleteHandle:c,customOptions:e,parentPath:g},String(d)+String(h)))})),(0,B.jsx)("span",{children:"]"}),v&&nD(u,b,v)&&(0,B.jsxs)("span",Object.assign({onClick:()=>w(!1),className:"jv-size"},{children:[a.length," Items"]}))]})}function n2({node:a,depth:b,indexOrName:c,deleteHandle:d,customOptions:e,parent:f,parentPath:g}){let{collapsed:h,onCollapse:i,enableClipboard:j,ignoreLargeArray:k,collapseObjectsAfterLength:l,editable:n,onDelete:o,src:p,onAdd:q,onEdit:r,onChange:s,forceUpdate:t,displaySize:u,CustomOperation:v}=(0,E.useContext)(oa),w=void 0!==c?[...g,String(c)]:g;if(!k&&Array.isArray(a)&&a.length>100)return(0,B.jsx)(n1,{node:a,depth:b,indexOrName:c,deleteHandle:d,customOptions:e,parentPath:w});let x=nz(a),[y,z]=(0,E.useState)(nB(a,b,c,h,l,e)),A=d=>{null==i||i({isCollapsing:!d,node:a,depth:b,indexOrName:c}),z(d)};(0,E.useEffect)(()=>{A(nB(a,b,c,h,l,e))},[h,l]);let C=(0,E.useCallback)((c,d,e)=>{Array.isArray(a)?a[+c]=d:a&&(a[c]=d),r&&r({newValue:d,oldValue:e,depth:b,src:p,indexOrName:c,parentType:x?"object":"array",parentPath:w}),s&&s({type:"edit",depth:b,src:p,indexOrName:c,parentType:x?"object":"array",parentPath:w}),t()},[a,r,s,t]),D=b=>{Array.isArray(a)?a.splice(+b,1):a&&delete a[b],t()},[F,G]=(0,E.useState)(!1),[H,I]=(0,E.useState)(!1),J=(0,E.useRef)(null),K=()=>{var c;if(x){let d=null==(c=J.current)?void 0:c.value;d&&(a[d]=null,J.current&&(J.current.value=""),I(!1),q&&q({indexOrName:d,depth:b,src:p,parentType:"object",parentPath:w}),s&&s({type:"add",indexOrName:d,depth:b,src:p,parentType:"object",parentPath:w}))}else Array.isArray(a)&&(a.push(null),q&&q({indexOrName:a.length-1,depth:b,src:p,parentType:"array",parentPath:w}),s&&s({type:"add",indexOrName:a.length-1,depth:b,src:p,parentType:"array",parentPath:w}));t()},L=F||H,M=()=>{G(!1),I(!1)},N=(0,B.jsxs)(B.Fragment,{children:[!y&&!L&&(0,B.jsxs)("span",Object.assign({onClick:()=>A(!0),className:"jv-size-chevron"},{children:[nD(u,b,y)&&(0,B.jsxs)("span",Object.assign({className:"jv-size"},{children:[nA(a)," Items"]})),(0,B.jsx)(nN,{className:"jv-chevron"})]})),H&&x&&(0,B.jsx)("input",{className:"json-view--input",placeholder:"property",ref:J,onKeyDown:a=>{"Enter"===a.key?(a.preventDefault(),K()):"Escape"===a.key&&M()}}),L&&(0,B.jsx)(nZ,{className:"json-view--edit",style:{display:"inline-block"},onClick:H?K:()=>{G(!1),d&&d(c,w),o&&o({value:a,depth:b,src:p,indexOrName:c,parentType:x?"object":"array",parentPath:w}),s&&s({type:"delete",depth:b,src:p,indexOrName:c,parentType:x?"object":"array",parentPath:w})}}),L&&(0,B.jsx)(n_,{className:"json-view--edit",style:{display:"inline-block"},onClick:M}),!y&&!L&&j&&nL(e)&&(0,B.jsx)(nS,{node:a,nodeMeta:{depth:b,indexOrName:c,parent:f,parentPath:g,currentPath:w}}),!y&&!L&&nF(n)&&nI(e)&&(0,B.jsx)(nX,{className:"json-view--edit",onClick:()=>{x?(I(!0),setTimeout(()=>{var a;return null==(a=J.current)?void 0:a.focus()})):K()}}),!y&&!L&&nH(n)&&nK(e)&&d&&(0,B.jsx)(nV,{className:"json-view--edit",onClick:()=>G(!0)}),"function"==typeof v?(0,B.jsx)(v,{node:a}):null]});return Array.isArray(a)?(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)("span",{children:"["}),N,y?(0,B.jsx)("button",Object.assign({onClick:()=>A(!1),className:"jv-button"},{children:"..."})):(0,B.jsx)("div",Object.assign({className:"jv-indent"},{children:a.map((d,e)=>(0,B.jsx)(nT,{indexOrName:e,value:d,depth:b,parent:a,deleteHandle:D,editHandle:C,parentPath:w},String(c)+String(e)))})),(0,B.jsx)("span",{children:"]"}),y&&nD(u,b,y)&&(0,B.jsxs)("span",Object.assign({onClick:()=>A(!1),className:"jv-size"},{children:[nA(a)," Items"]}))]}):x?(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)("span",{children:"{"}),N,y?(0,B.jsx)("button",Object.assign({onClick:()=>A(!1),className:"jv-button"},{children:"..."})):(0,B.jsx)("div",Object.assign({className:"jv-indent"},{children:Object.entries(a).map(([d,e])=>(0,B.jsx)(nT,{indexOrName:d,value:e,depth:b,parent:a,deleteHandle:D,editHandle:C,parentPath:w},String(c)+String(d)))})),(0,B.jsx)("span",{children:"}"}),y&&nD(u,b,y)&&(0,B.jsxs)("span",Object.assign({onClick:()=>A(!1),className:"jv-size"},{children:[nA(a)," Items"]}))]}):(0,B.jsx)("span",{children:String(a)})}let n3=E.default.forwardRef(({str:a,className:b,ctrlClick:c},d)=>{let{collapseStringMode:e,collapseStringsAfterLength:f,customizeCollapseStringUI:g}=(0,E.useContext)(oa),[h,i]=(0,E.useState)(!0),j=(0,E.useRef)(null);f=f>0?f:0;let k=a.replace(/\s+/g," "),l="function"==typeof g?g(k,h):"string"==typeof g?g:"...",n=a=>{var b;if((a.ctrlKey||a.metaKey)&&c)c(a);else{let a=window.getSelection();if(a&&a.anchorOffset!==a.focusOffset&&(null==(b=a.anchorNode)?void 0:b.parentElement)===j.current)return;i(!h)}};if(a.length<=f)return(0,B.jsxs)("span",Object.assign({ref:j,className:b,onClick:c},{children:['"',a,'"']}));if("address"===e)return a.length<=10?(0,B.jsxs)("span",Object.assign({ref:j,className:b,onClick:c},{children:['"',a,'"']})):(0,B.jsxs)("span",Object.assign({ref:j,onClick:n,className:b+" cursor-pointer"},{children:['"',h?[k.slice(0,6),l,k.slice(-4)]:a,'"']}));if("directly"===e)return(0,B.jsxs)("span",Object.assign({ref:j,onClick:n,className:b+" cursor-pointer"},{children:['"',h?[k.slice(0,f),l]:a,'"']}));if("word"===e){let c=f,d=f+1,e=k,g=1;for(;;){if(/\W/.test(a[c])){e=a.slice(0,c);break}if(/\W/.test(a[d])){e=a.slice(0,d);break}if(6===g){e=a.slice(0,f);break}g++,c--,d++}return(0,B.jsxs)("span",Object.assign({ref:j,onClick:n,className:b+" cursor-pointer"},{children:['"',h?[e,l]:a,'"']}))}return(0,B.jsxs)("span",Object.assign({ref:j,className:b},{children:['"',a,'"']}))});function n4(){return(n4=Object.assign.bind()).apply(this,arguments)}var n5=function(a){return E.createElement("svg",n4({xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"none",viewBox:"0 0 24 24"},a),y||(y=E.createElement("path",{fill:"currentColor",d:"M17.25 3H6.75A3.754 3.754 0 0 0 3 6.75v10.5A3.754 3.754 0 0 0 6.75 21h10.5A3.754 3.754 0 0 0 21 17.25V6.75A3.754 3.754 0 0 0 17.25 3Zm2.25 14.25c0 1.24-1.01 2.25-2.25 2.25H6.75c-1.24 0-2.25-1.01-2.25-2.25V6.75c0-1.24 1.01-2.25 2.25-2.25h10.5c1.24 0 2.25 1.01 2.25 2.25v10.5Zm-6.09-9.466-5.031 5.03a2.981 2.981 0 0 0-.879 2.121v1.19c0 .415.336.75.75.75h1.19c.8 0 1.554-.312 2.12-.879l5.03-5.03a2.252 2.252 0 0 0 0-3.182c-.85-.85-2.331-.85-3.18 0Zm-2.91 7.151c-.28.28-.666.44-1.06.44H9v-.44c0-.4.156-.777.44-1.06l3.187-3.188 1.06 1.061-3.187 3.188Zm5.03-5.03-.782.783-1.06-1.061.782-.782a.766.766 0 0 1 1.06 0 .75.75 0 0 1 0 1.06Z"})))};function n6(){return(n6=Object.assign.bind()).apply(this,arguments)}var n7=function(a){return E.createElement("svg",n6({xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"none",viewBox:"0 0 24 24"},a),z||(z=E.createElement("path",{fill:"currentColor",d:"M6.75 3h5.5v1.5h-5.5C5.51 4.5 4.5 5.51 4.5 6.75v10.5c0 1.24 1.01 2.25 2.25 2.25h10.5c1.24 0 2.25-1.01 2.25-2.25v-5.5H21v5.5A3.754 3.754 0 0 1 17.25 21H6.75A3.754 3.754 0 0 1 3 17.25V6.75A3.754 3.754 0 0 1 6.75 3Z"})),A||(A=E.createElement("path",{fill:"currentColor",d:"M20.013 3h-3.946a.987.987 0 0 0 0 1.973h1.564l-6.342 6.342a1.004 1.004 0 0 0 0 1.396 1.004 1.004 0 0 0 1.396 0l6.342-6.342v1.564a.987.987 0 0 0 1.973 0V3.987A.987.987 0 0 0 20.013 3Z"})))};function n8({node:a,depth:b,deleteHandle:c,indexOrName:d,parent:e,editHandle:f,parentPath:g}){let h,{collapseStringsAfterLength:i,enableClipboard:j,editable:k,src:l,onDelete:n,onChange:o,customizeNode:p,matchesURL:q,urlRegExp:r,EditComponent:s,DoneComponent:t,CancelComponent:u,CustomOperation:v}=(0,E.useContext)(oa);if("function"==typeof p&&(h=nE(p,[{node:a,depth:b,indexOrName:d}])),h){if((0,E.isValidElement)(h))return h;else if("function"==typeof h){let c=h;return(0,B.jsx)(c,{node:a,depth:b,indexOrName:d})}}if(Array.isArray(a)||nz(a))return(0,B.jsx)(n2,{parent:e,node:a,depth:b,indexOrName:d,deleteHandle:c,parentPath:g,customOptions:"object"==typeof h?h:void 0});{var w;let p=typeof a,x=void 0!==d?[...g,String(d)]:g,[y,z]=(0,E.useState)(!1),[A,C]=(0,E.useState)(!1),D=(0,E.useRef)(null),F=()=>{z(!0),setTimeout(()=>{var a,b;null==(a=window.getSelection())||a.selectAllChildren(D.current),null==(b=D.current)||b.focus()})},G=(0,E.useCallback)(()=>{let b=D.current.innerText;try{let c=JSON.parse(b);f&&f(d,c,a,g)}catch(e){let c="string"===p?b.trim().replace(/^\"([\s\S]+?)\"$/,"$1"):b;f&&f(d,c,a,g)}z(!1)},[f,d,a,g,p]),H=()=>{z(!1),C(!1)},I=()=>{C(!1),c&&c(d,g),n&&n({value:a,depth:b,src:l,indexOrName:d,parentType:Array.isArray(e)?"array":"object",parentPath:g}),o&&o({depth:b,src:l,indexOrName:d,parentType:Array.isArray(e)?"array":"object",type:"delete",parentPath:g})},J=(0,E.useCallback)(a=>{"Enter"===a.key?(a.preventDefault(),G()):"Escape"===a.key&&H()},[G]),K=y||A,L=!K&&nG(k)&&nJ(h)&&f?a=>{(a.ctrlKey||a.metaKey)&&F()}:void 0,M=(0,B.jsxs)(B.Fragment,{children:[K&&("function"==typeof t?(0,B.jsx)(t,{className:"json-view--edit",style:{display:"inline-block"},onClick:A?I:G}):(0,B.jsx)(nZ,{className:"json-view--edit",style:{display:"inline-block"},onClick:A?I:G})),K&&("function"==typeof u?(0,B.jsx)(u,{className:"json-view--edit",style:{display:"inline-block"},onClick:H}):(0,B.jsx)(n_,{className:"json-view--edit",style:{display:"inline-block"},onClick:H})),!K&&j&&nL(h)&&(0,B.jsx)(nS,{node:a,nodeMeta:{depth:b,indexOrName:d,parent:e,parentPath:g,currentPath:x}}),!K&&q&&"string"===p&&r.test(a)&&(!(w=h)||void 0===w.matchesURL||!!w.matchesURL)&&(0,B.jsx)("a",Object.assign({href:a,target:"_blank",className:"json-view--link"},{children:(0,B.jsx)(n7,{})})),!K&&nG(k)&&nJ(h)&&f&&("function"==typeof s?(0,B.jsx)(s,{className:"json-view--edit",onClick:F}):(0,B.jsx)(n5,{className:"json-view--edit",onClick:F})),!K&&nH(k)&&nK(h)&&c&&(0,B.jsx)(nV,{className:"json-view--edit",onClick:()=>C(!0)}),"function"==typeof v?(0,B.jsx)(v,{node:a}):null]}),N="json-view--string";switch(p){case"number":case"bigint":N="json-view--number";break;case"boolean":N="json-view--boolean";break;case"object":N="json-view--null"}"string"==typeof(null==h?void 0:h.className)&&(N+=" "+h.className),A&&(N+=" json-view--deleting");let O=String(a);"bigint"===p&&(O+="n");let P=(0,E.useMemo)(()=>(0,B.jsx)("span",{contentEditable:!0,className:N,dangerouslySetInnerHTML:{__html:"string"===p?`"${O}"`:O},ref:D,onKeyDown:J}),[O,p,J]);return"string"===p?(0,B.jsxs)(B.Fragment,{children:[y?P:a.length>i?(0,B.jsx)(n3,{str:a,ref:D,className:N,ctrlClick:L}):(0,B.jsxs)("span",Object.assign({className:N,onClick:L},{children:['"',O,'"']})),M]}):(0,B.jsxs)(B.Fragment,{children:[y?P:(0,B.jsx)("span",Object.assign({className:N,onClick:L},{children:O})),M]})}}let n9=/^(((ht|f)tps?):\/\/)?([^!@#$%^&*?.\s-]([^!@#$%^&*?.\s]{0,63}[^!@#$%^&*?.\s])?\.)+[a-z]{2,6}\/?/,oa=(0,E.createContext)({src:void 0,collapseStringsAfterLength:99,collapseStringMode:"directly",customizeCollapseStringUI:void 0,collapseObjectsAfterLength:20,collapsed:!1,onCollapse:void 0,enableClipboard:!0,editable:!1,onEdit:void 0,onDelete:void 0,onAdd:void 0,onChange:void 0,forceUpdate:()=>{},customizeNode:void 0,customizeCopy:()=>{},displaySize:void 0,displayArrayIndex:!0,matchesURL:!1,urlRegExp:n9,ignoreLargeArray:!1,CopyComponent:void 0,CopiedComponent:void 0,EditComponent:void 0,CancelComponent:void 0,DoneComponent:void 0,CustomOperation:void 0});function ob({src:a,collapseStringsAfterLength:b=99,collapseStringMode:c="directly",customizeCollapseStringUI:d,collapseObjectsAfterLength:e=99,collapsed:f,onCollapse:g,enableClipboard:h=!0,editable:i=!1,onEdit:j,onDelete:k,onAdd:l,onChange:n,dark:o=!1,theme:p="default",customizeNode:q,customizeCopy:r=a=>(function(a,b){if("string"==typeof a)return a;try{return JSON.stringify(a,(a,b)=>{switch(typeof b){case"bigint":return String(b)+"n";case"number":case"boolean":case"object":case"string":return b;default:return String(b)}},void 0)}catch(a){return`${a.name}: ${a.message}`||"JSON.stringify failed"}})(a),displaySize:s,displayArrayIndex:t=!0,style:u,className:v,matchesURL:w=!1,urlRegExp:x=n9,ignoreLargeArray:y=!1,CopyComponent:z,CopiedComponent:A,EditComponent:C,CancelComponent:D,DoneComponent:F,CustomOperation:G}){let[H,I]=(0,E.useState)(0),J=(0,E.useCallback)(()=>I(a=>++a),[]),[K,L]=(0,E.useState)(a);return(0,E.useEffect)(()=>L(a),[a]),(0,B.jsx)(oa.Provider,Object.assign({value:{src:K,collapseStringsAfterLength:b,collapseStringMode:c,customizeCollapseStringUI:d,collapseObjectsAfterLength:e,collapsed:f,onCollapse:g,enableClipboard:h,editable:i,onEdit:j,onDelete:k,onAdd:l,onChange:n,forceUpdate:J,customizeNode:q,customizeCopy:r,displaySize:s,displayArrayIndex:t,matchesURL:w,urlRegExp:x,ignoreLargeArray:y,CopyComponent:z,CopiedComponent:A,EditComponent:C,CancelComponent:D,DoneComponent:F,CustomOperation:G}},{children:(0,B.jsx)("code",Object.assign({className:"json-view"+(o?" dark":"")+(p&&"default"!==p?" json-view_"+p:"")+(v?" "+v:""),style:u},{children:(0,B.jsx)(n8,{node:K,depth:1,editHandle:(a,b,c,d)=>{L(b),j&&j({newValue:b,oldValue:c,depth:1,src:K,indexOrName:a,parentType:null,parentPath:d}),n&&n({type:"edit",depth:1,src:K,indexOrName:a,parentType:null,parentPath:d})},deleteHandle:(a,b)=>{L(void 0),k&&k({value:K,depth:1,src:K,indexOrName:a,parentType:null,parentPath:b}),n&&n({depth:1,src:K,indexOrName:a,parentType:null,type:"delete",parentPath:b})},parentPath:[]})}))}))}function oc(){let a,b,c,{currentBank:d}=(0,F.useBank)(),[e,f]=(0,E.useState)(""),[g,h]=(0,E.useState)(""),[i,j]=(0,E.useState)("mid"),[k,l]=(0,E.useState)(!0),[n,o]=(0,E.useState)(!1),[p,q]=(0,E.useState)(null),[r,s]=(0,E.useState)(!1),t=async()=>{if(d&&e){s(!0),o(!1);try{let a=await S.client.reflect({bank_id:d,query:e,budget:i,context:g||void 0,include_facts:k});q(a)}catch(a){console.error("Error running reflect:",a),alert("Error running reflect: "+a.message)}finally{s(!1)}}};return(0,B.jsxs)("div",{className:"max-w-6xl",children:[(0,B.jsx)(nq,{children:(0,B.jsxs)(nu,{className:"p-5 space-y-4",children:[(0,B.jsxs)("div",{className:"flex gap-4 items-end flex-wrap",children:[(0,B.jsxs)("div",{className:"flex-1 min-w-[300px]",children:[(0,B.jsx)("label",{className:"font-bold block mb-2 text-card-foreground",children:"Question:"}),(0,B.jsx)(U.Input,{type:"text",value:e,onChange:a=>f(a.target.value),placeholder:"Enter your question...",onKeyDown:a=>"Enter"===a.key&&t()})]}),(0,B.jsxs)("div",{children:[(0,B.jsx)("label",{className:"font-bold block mb-2 text-card-foreground",children:"Budget:"}),(0,B.jsxs)(mD,{value:i,onValueChange:a=>j(a),children:[(0,B.jsx)(nk,{className:"w-24",children:(0,B.jsx)(mH,{})}),(0,B.jsxs)(nn,{children:[(0,B.jsx)(no,{value:"low",children:"Low"}),(0,B.jsx)(no,{value:"mid",children:"Mid"}),(0,B.jsx)(no,{value:"high",children:"High"})]})]})]}),(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[(0,B.jsx)(np.Checkbox,{id:"include-facts",checked:k,onCheckedChange:a=>l(a)}),(0,B.jsx)("label",{htmlFor:"include-facts",className:"text-sm cursor-pointer",children:"Include Facts"})]}),(0,B.jsxs)(T.Button,{onClick:t,disabled:r||!e,children:[(0,B.jsx)(I,{className:"w-4 h-4 mr-2"}),"Reflect"]})]}),(0,B.jsxs)("div",{children:[(0,B.jsx)("label",{className:"font-bold block mb-2 text-card-foreground",children:"Context (optional):"}),(0,B.jsx)(mc.Textarea,{value:g,onChange:a=>h(a.target.value),placeholder:"Additional context for the LLM (not used in search)...",rows:3})]})]})}),r&&(0,B.jsx)(nq,{className:"mt-6",children:(0,B.jsxs)(nu,{className:"text-center py-10",children:[(0,B.jsx)(I,{className:"w-12 h-12 mx-auto mb-3 text-muted-foreground animate-pulse"}),(0,B.jsx)("div",{className:"text-lg text-muted-foreground",children:"Reflecting..."})]})}),p&&!r&&(0,B.jsxs)("div",{className:"mt-6 space-y-6",children:[(0,B.jsxs)(nq,{children:[(0,B.jsx)(nr,{children:(0,B.jsx)(ns,{children:"Answer"})}),(0,B.jsx)(nu,{children:(0,B.jsx)("div",{className:"p-4 bg-muted rounded-lg border-l-4 border-primary text-base leading-relaxed whitespace-pre-wrap",children:p.text})})]}),(0,B.jsxs)(nq,{children:[(0,B.jsx)(nr,{children:(0,B.jsxs)("div",{className:"flex items-center justify-between",children:[(0,B.jsxs)("div",{children:[(0,B.jsx)(ns,{children:"Details"}),(0,B.jsx)(nt,{children:"View facts and raw response"})]}),(0,B.jsxs)("div",{className:"flex gap-2",children:[(0,B.jsx)(T.Button,{variant:n?"outline":"default",size:"sm",onClick:()=>o(!1),children:"Based On"}),(0,B.jsx)(T.Button,{variant:n?"default":"outline",size:"sm",onClick:()=>o(!0),children:"Raw JSON"})]})]})}),(0,B.jsx)(nu,{children:n?(0,B.jsx)("div",{className:"bg-muted p-4 rounded border border-border overflow-auto max-h-[600px]",children:(0,B.jsx)(ob,{src:p,collapsed:1,theme:"default"})}):k&&p.based_on&&p.based_on.length>0?(a=p.based_on.filter(a=>"world"===a.type),b=p.based_on.filter(a=>"experience"===a.type),c=p.based_on.filter(a=>"opinion"===a.type),(0,B.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-4",children:[(0,B.jsxs)(nq,{children:[(0,B.jsxs)(nr,{className:"pb-3",children:[(0,B.jsx)(ns,{className:"text-base",children:"World Facts"}),(0,B.jsx)(nt,{className:"text-xs",children:"General Knowledge"})]}),(0,B.jsx)(nu,{children:a.length>0?(0,B.jsx)("ul",{className:"text-sm space-y-2",children:a.map((a,b)=>(0,B.jsxs)("li",{className:"p-2 bg-muted rounded",children:[a.text,a.context&&(0,B.jsx)("div",{className:"text-xs text-muted-foreground mt-1",children:a.context})]},b))}):(0,B.jsx)("p",{className:"text-muted-foreground text-sm",children:"None"})})]}),(0,B.jsxs)(nq,{children:[(0,B.jsxs)(nr,{className:"pb-3",children:[(0,B.jsx)(ns,{className:"text-base",children:"Experience"}),(0,B.jsx)(nt,{className:"text-xs",children:"Conversations & Events"})]}),(0,B.jsx)(nu,{children:b.length>0?(0,B.jsx)("ul",{className:"text-sm space-y-2",children:b.map((a,b)=>(0,B.jsxs)("li",{className:"p-2 bg-muted rounded",children:[a.text,a.context&&(0,B.jsx)("div",{className:"text-xs text-muted-foreground mt-1",children:a.context})]},b))}):(0,B.jsx)("p",{className:"text-muted-foreground text-sm",children:"None"})})]}),(0,B.jsxs)(nq,{children:[(0,B.jsxs)(nr,{className:"pb-3",children:[(0,B.jsx)(ns,{className:"text-base",children:"Opinions"}),(0,B.jsx)(nt,{className:"text-xs",children:"Beliefs & Preferences"})]}),(0,B.jsx)(nu,{children:c.length>0?(0,B.jsx)("ul",{className:"text-sm space-y-2",children:c.map((a,b)=>(0,B.jsxs)("li",{className:"p-2 bg-muted rounded",children:[a.text,a.context&&(0,B.jsx)("div",{className:"text-xs text-muted-foreground mt-1",children:a.context})]},b))}):(0,B.jsx)("p",{className:"text-muted-foreground text-sm",children:"None"})})]})]})):k?(0,B.jsxs)("div",{className:"flex items-start gap-3 p-4 bg-amber-50 dark:bg-amber-950 border border-amber-200 dark:border-amber-800 rounded-lg",children:[(0,B.jsx)(nv,{className:"w-5 h-5 text-amber-600 dark:text-amber-400 mt-0.5 flex-shrink-0"}),(0,B.jsxs)("div",{children:[(0,B.jsx)("p",{className:"font-semibold text-amber-900 dark:text-amber-100",children:"No facts found"}),(0,B.jsx)("p",{className:"text-sm text-amber-700 dark:text-amber-300 mt-1",children:"No memories were found or used to generate this answer."})]})]}):(0,B.jsxs)("div",{className:"flex items-start gap-3 p-4 bg-amber-50 dark:bg-amber-950 border border-amber-200 dark:border-amber-800 rounded-lg",children:[(0,B.jsx)(nv,{className:"w-5 h-5 text-amber-600 dark:text-amber-400 mt-0.5 flex-shrink-0"}),(0,B.jsxs)("div",{children:[(0,B.jsx)("p",{className:"font-semibold text-amber-900 dark:text-amber-100",children:"Facts not included"}),(0,B.jsx)("p",{className:"text-sm text-amber-700 dark:text-amber-300 mt-1",children:'Enable "Include Facts" above to see which memories were used to generate this answer.'})]})]})})]}),p.new_opinions&&p.new_opinions.length>0&&(0,B.jsxs)(nq,{className:"border-green-200 dark:border-green-800",children:[(0,B.jsxs)(nr,{className:"bg-green-50 dark:bg-green-950",children:[(0,B.jsxs)(ns,{className:"flex items-center gap-2",children:[(0,B.jsx)(I,{className:"w-5 h-5"}),"New Opinions Formed"]}),(0,B.jsx)(nt,{children:"New beliefs generated from this interaction"})]}),(0,B.jsx)(nu,{className:"pt-6",children:(0,B.jsx)("div",{className:"space-y-3",children:p.new_opinions.map((a,b)=>(0,B.jsxs)("div",{className:"p-3 bg-muted rounded-lg border border-border",children:[(0,B.jsx)("div",{className:"font-semibold text-foreground",children:a.text}),(0,B.jsxs)("div",{className:"text-sm text-muted-foreground mt-1",children:["Confidence: ",a.confidence?.toFixed(2)]})]},b))})})]})]})]})}let od=(0,H.default)("clock",[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]),oe=(0,H.default)("zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]),of=(0,H.default)("arrow-down",[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]]);function og(){let a,b,c,d,e,f,g,h,i,j,k,l,n,o,{currentBank:p}=(0,F.useBank)(),[q,r]=(0,E.useState)(""),[s,t]=(0,E.useState)(["world"]),[u,v]=(0,E.useState)("mid"),[w,x]=(0,E.useState)(4096),[y,z]=(0,E.useState)(""),[A,C]=(0,E.useState)(!1),[D,H]=(0,E.useState)(!1),[I,M]=(0,E.useState)(null),[O,P]=(0,E.useState)(null),[Q,R]=(0,E.useState)(null),[V,W]=(0,E.useState)(null),[X,Y]=(0,E.useState)(!1),[Z,$]=(0,E.useState)("results"),[_,aa]=(0,E.useState)(null),[ab,ac]=(0,E.useState)(new Set),[ad,ae]=(0,E.useState)(new Set),af=a=>{ac(b=>{let c=new Set(b);return c.has(a)?c.delete(a):c.add(a),c})},ag=a=>{ae(b=>{let c=new Set(b);return c.has(a)?c.delete(a):c.add(a),c})},ah=async()=>{if(!p)return void alert("Please select a memory bank first");if(!q||0===s.length){0===s.length&&alert("Please select at least one fact type");return}Y(!0);try{let a={bank_id:p,query:q,types:s,budget:u,max_tokens:w,trace:!0,include:{entities:D?{max_tokens:500}:null,chunks:A?{max_tokens:8192}:null},...y&&{query_timestamp:y}},b=await S.client.recall(a);M(b.results||[]),P(b.entities||null),R(b.chunks||null),W(b.trace||null),$("results")}catch(a){console.error("Error running search:",a),alert("Error running search: "+a.message)}finally{Y(!1)}};return p?(0,B.jsxs)("div",{className:"space-y-6",children:[(0,B.jsx)(nq,{children:(0,B.jsxs)(nu,{className:"pt-6",children:[(0,B.jsxs)("div",{className:"flex gap-3",children:[(0,B.jsxs)("div",{className:"flex-1 relative",children:[(0,B.jsx)(G.Search,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),(0,B.jsx)(U.Input,{type:"text",value:q,onChange:a=>r(a.target.value),placeholder:"What would you like to recall?",className:"pl-10 h-12 text-lg",onKeyDown:a=>"Enter"===a.key&&ah()})]}),(0,B.jsx)(T.Button,{onClick:ah,disabled:X||!q,className:"h-12 px-8",children:X?"Searching...":"Recall"})]}),(0,B.jsxs)("div",{className:"flex flex-wrap items-center gap-6 mt-4 pt-4 border-t",children:[(0,B.jsxs)("div",{className:"flex items-center gap-4",children:[(0,B.jsx)("span",{className:"text-sm font-medium text-muted-foreground",children:"Types:"}),(0,B.jsx)("div",{className:"flex gap-3",children:["world","experience","opinion"].map(a=>(0,B.jsxs)("label",{className:"flex items-center gap-2 cursor-pointer",children:[(0,B.jsx)(np.Checkbox,{checked:s.includes(a),onCheckedChange:()=>{t(b=>b.includes(a)?b.filter(b=>b!==a):[...b,a])}}),(0,B.jsx)("span",{className:"text-sm capitalize",children:a})]},a))})]}),(0,B.jsx)("div",{className:"h-6 w-px bg-border"}),(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[(0,B.jsx)(oe,{className:"h-4 w-4 text-muted-foreground"}),(0,B.jsxs)(mD,{value:u,onValueChange:a=>v(a),children:[(0,B.jsx)(nk,{className:"w-24 h-8",children:(0,B.jsx)(mH,{})}),(0,B.jsxs)(nn,{children:[(0,B.jsx)(no,{value:"low",children:"Low"}),(0,B.jsx)(no,{value:"mid",children:"Mid"}),(0,B.jsx)(no,{value:"high",children:"High"})]})]})]}),(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[(0,B.jsx)("span",{className:"text-sm text-muted-foreground",children:"Tokens:"}),(0,B.jsx)(U.Input,{type:"number",value:w,onChange:a=>x(parseInt(a.target.value)),className:"w-24 h-8"})]}),(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[(0,B.jsx)(od,{className:"h-4 w-4 text-muted-foreground"}),(0,B.jsx)(U.Input,{type:"datetime-local",value:y,onChange:a=>z(a.target.value),className:"h-8",placeholder:"Query date"})]}),(0,B.jsx)("div",{className:"h-6 w-px bg-border"}),(0,B.jsxs)("div",{className:"flex items-center gap-4",children:[(0,B.jsxs)("label",{className:"flex items-center gap-2 cursor-pointer",children:[(0,B.jsx)(np.Checkbox,{checked:A,onCheckedChange:a=>C(a)}),(0,B.jsx)(K,{className:"h-4 w-4 text-muted-foreground"}),(0,B.jsx)("span",{className:"text-sm",children:"Chunks"})]}),(0,B.jsxs)("label",{className:"flex items-center gap-2 cursor-pointer",children:[(0,B.jsx)(np.Checkbox,{checked:D,onCheckedChange:a=>H(a)}),(0,B.jsx)(L,{className:"h-4 w-4 text-muted-foreground"}),(0,B.jsx)("span",{className:"text-sm",children:"Entities"})]})]})]})]})}),X&&(0,B.jsx)(nq,{children:(0,B.jsxs)(nu,{className:"flex flex-col items-center justify-center py-16",children:[(0,B.jsx)("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary mb-4"}),(0,B.jsx)("p",{className:"text-muted-foreground",children:"Searching memories..."})]})}),!X&&I&&(0,B.jsxs)("div",{className:"space-y-4",children:[V?.summary&&(0,B.jsxs)("div",{className:"flex items-center gap-6 text-sm",children:[(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[(0,B.jsx)("span",{className:"text-muted-foreground",children:"Results:"}),(0,B.jsx)("span",{className:"font-semibold",children:I.length})]}),(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[(0,B.jsx)("span",{className:"text-muted-foreground",children:"Duration:"}),(0,B.jsxs)("span",{className:"font-semibold",children:[V.summary.total_duration_seconds?.toFixed(2),"s"]})]}),(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[(0,B.jsx)("span",{className:"text-muted-foreground",children:"Nodes visited:"}),(0,B.jsx)("span",{className:"font-semibold",children:V.summary.total_nodes_visited})]}),(0,B.jsx)("div",{className:"flex-1"}),(0,B.jsx)("div",{className:"flex gap-1 bg-muted p-1 rounded-lg",children:["results","trace","json"].map(a=>(0,B.jsx)("button",{onClick:()=>$(a),className:`px-3 py-1.5 text-sm font-medium rounded-md transition-colors ${Z===a?"bg-background shadow-sm":"text-muted-foreground hover:text-foreground"}`,children:"results"===a?"Results":"trace"===a?"Trace":"JSON"},a))})]}),"results"===Z&&(0,B.jsx)("div",{className:"space-y-3",children:0===I.length?(0,B.jsx)(nq,{children:(0,B.jsxs)(nu,{className:"flex flex-col items-center justify-center py-12",children:[(0,B.jsx)(G.Search,{className:"h-12 w-12 text-muted-foreground mb-4"}),(0,B.jsx)("p",{className:"text-muted-foreground",children:"No memories found for this query."})]})}):I.map((a,b)=>{let c=V?.visits?.find(b=>b.node_id===a.id),d=c?c.weights.final_weight:a.score||0;return(0,B.jsx)(nq,{className:"cursor-pointer hover:border-primary/50 transition-colors",onClick:()=>aa(a),children:(0,B.jsx)(nu,{className:"py-4",children:(0,B.jsxs)("div",{className:"flex items-start gap-4",children:[(0,B.jsx)("div",{className:"flex-shrink-0 w-8 h-8 rounded-full bg-primary/10 flex items-center justify-center",children:(0,B.jsx)("span",{className:"text-sm font-semibold text-primary",children:b+1})}),(0,B.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,B.jsx)("p",{className:"text-foreground",children:a.text}),(0,B.jsxs)("div",{className:"flex items-center gap-4 mt-2 text-xs text-muted-foreground",children:[(0,B.jsx)("span",{className:"px-2 py-0.5 rounded bg-muted capitalize",children:a.type||"world"}),a.context&&(0,B.jsx)("span",{className:"truncate max-w-xs",children:a.context}),a.occurred_start&&(0,B.jsx)("span",{children:new Date(a.occurred_start).toLocaleDateString()})]})]}),(0,B.jsxs)("div",{className:"flex-shrink-0 text-right",children:[(0,B.jsx)("div",{className:"text-sm font-semibold",children:d.toFixed(3)}),(0,B.jsx)("div",{className:"text-xs text-muted-foreground",children:"score"})]}),(0,B.jsx)(N,{className:"h-5 w-5 text-muted-foreground flex-shrink-0"})]})})},b)})}),"trace"===Z&&V&&(0,B.jsxs)("div",{className:"space-y-4",children:[V.retrieval_results&&V.retrieval_results.length>0&&(a={},V.retrieval_results.forEach(b=>{let c=b.fact_type||"all";a[c]||(a[c]=[]),a[c].push(b)}),b=Object.keys(a),(0,B.jsxs)("div",{children:[(0,B.jsxs)("div",{className:"text-xs font-medium text-muted-foreground mb-3 flex items-center gap-2",children:[(0,B.jsx)("div",{className:"flex-1 h-px bg-border"}),(0,B.jsx)("span",{children:"PARALLEL RETRIEVAL"}),(0,B.jsx)("div",{className:"flex-1 h-px bg-border"})]}),(0,B.jsx)("div",{className:"space-y-2",children:b.map((b,c)=>{let d=a[b],e=`lane-${b}`,f=ab.has(e),g=d.reduce((a,b)=>a+(b.results?.length||0),0),h=Math.max(...d.map(a=>a.duration_seconds||0)),i={world:{bg:"bg-blue-500/10",text:"text-blue-500",border:"border-blue-500/30"},experience:{bg:"bg-green-500/10",text:"text-green-500",border:"border-green-500/30"},opinion:{bg:"bg-purple-500/10",text:"text-purple-500",border:"border-purple-500/30"},all:{bg:"bg-gray-500/10",text:"text-gray-500",border:"border-gray-500/30"}},j=i[b]||i.all;return(0,B.jsx)(nq,{className:`transition-colors ${f?"border-primary":j.border}`,children:(0,B.jsxs)(nu,{className:"py-3 px-4",children:[(0,B.jsxs)("div",{className:"flex items-center gap-3 cursor-pointer",onClick:()=>af(e),children:[(0,B.jsx)("div",{className:`w-8 h-8 rounded-lg ${j.bg} flex items-center justify-center`,children:(0,B.jsx)("span",{className:`text-sm font-bold ${j.text} capitalize`,children:b.charAt(0).toUpperCase()})}),(0,B.jsxs)("div",{className:"flex-1",children:[(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[(0,B.jsx)("span",{className:"font-semibold text-foreground capitalize",children:b}),(0,B.jsxs)("span",{className:"text-xs text-muted-foreground",children:[d.length," methods"]})]}),(0,B.jsx)("div",{className:"flex gap-1.5 mt-1",children:d.map((a,b)=>(0,B.jsxs)("span",{className:"text-[10px] px-2 py-0.5 rounded-full bg-muted text-muted-foreground capitalize",children:[a.method_name,": ",a.results?.length||0]},b))})]}),(0,B.jsxs)("div",{className:"text-right",children:[(0,B.jsx)("div",{className:"text-2xl font-bold text-foreground",children:g}),(0,B.jsxs)("div",{className:"text-[10px] text-muted-foreground",children:[h.toFixed(2),"s"]})]}),f?(0,B.jsx)(ni,{className:"h-5 w-5 text-muted-foreground"}):(0,B.jsx)(N,{className:"h-5 w-5 text-muted-foreground"})]}),f&&(0,B.jsx)("div",{className:"mt-4 pt-4 border-t border-border",children:(0,B.jsx)("div",{className:`grid gap-3 ${1===d.length?"grid-cols-1":2===d.length?"grid-cols-2":3===d.length?"grid-cols-3":"grid-cols-4"}`,children:d.map((a,b)=>{let c,d,f,g,h=`${e}-method-${b}`,i=ab.has(h),j=a.results||[];return(0,B.jsxs)("div",{className:"flex flex-col",children:[(0,B.jsxs)("div",{className:`p-3 rounded-lg cursor-pointer transition-colors ${i?"bg-primary/10 border border-primary":"bg-muted/50 hover:bg-muted"}`,onClick:a=>{a.stopPropagation(),af(h)},children:[(0,B.jsxs)("div",{className:"flex items-center justify-between mb-1",children:[(0,B.jsx)("span",{className:"font-medium text-sm text-foreground capitalize",children:a.method_name}),i?(0,B.jsx)(ni,{className:"h-3 w-3 text-muted-foreground"}):(0,B.jsx)(N,{className:"h-3 w-3 text-muted-foreground"})]}),(0,B.jsxs)("div",{className:"flex items-end justify-between",children:[(0,B.jsx)("div",{className:"text-2xl font-bold text-foreground",children:j.length}),(0,B.jsxs)("div",{className:"text-[10px] text-muted-foreground",children:[a.duration_seconds?.toFixed(2),"s"]})]})]}),i&&j.length>0&&(c=`results-${h}`,f=(d=ad.has(c))?j:j.slice(0,5),g=j.length>5,(0,B.jsxs)("div",{className:"mt-2 space-y-1.5 max-h-[300px] overflow-y-auto",children:[f.map((a,b)=>(0,B.jsx)("div",{className:"p-2 bg-background rounded cursor-pointer hover:bg-muted/50 transition-colors border border-border",onClick:b=>{b.stopPropagation(),aa(a)},children:(0,B.jsxs)("div",{className:"flex items-start gap-2",children:[(0,B.jsx)("span",{className:"text-[10px] font-mono text-muted-foreground mt-0.5",children:b+1}),(0,B.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,B.jsx)("p",{className:"text-xs text-foreground line-clamp-2",children:a.text}),(0,B.jsx)("div",{className:"flex items-center gap-2 mt-1",children:(0,B.jsx)("span",{className:"text-[10px] text-muted-foreground",children:(a.score||a.similarity||0).toFixed(4)})})]})]})},b)),g&&(0,B.jsx)("button",{className:"w-full text-[10px] text-primary hover:text-primary/80 py-1.5 hover:bg-muted/50 rounded transition-colors",onClick:a=>{a.stopPropagation(),ag(c)},children:d?"Show less":`View all ${j.length} results`})]}))]},h)})})})]})},e)})}),(0,B.jsx)("div",{className:"flex justify-center py-2",children:(0,B.jsx)("div",{className:"flex items-center gap-2",children:b.map((a,b)=>{let c={world:"bg-blue-500",experience:"bg-green-500",opinion:"bg-purple-500",all:"bg-gray-500"};return(0,B.jsx)("div",{className:"flex flex-col items-center",children:(0,B.jsx)("div",{className:`w-1 h-4 ${c[a]||c.all} rounded-full opacity-50`})},b)})})}),(0,B.jsx)("div",{className:"flex justify-center",children:(0,B.jsx)(of,{className:"h-5 w-5 text-muted-foreground/50"})})]})),V.rrf_merged&&(c="rrf-merge",d=ab.has(c),(0,B.jsxs)("div",{children:[(0,B.jsx)(nq,{className:`cursor-pointer transition-colors ${d?"border-primary":"hover:border-primary/50"}`,onClick:()=>af(c),children:(0,B.jsx)(nu,{className:"py-4",children:(0,B.jsxs)("div",{className:"flex items-center gap-4",children:[(0,B.jsx)("div",{className:"flex-shrink-0 w-10 h-10 rounded-full bg-purple-500/10 flex items-center justify-center",children:(0,B.jsx)("span",{className:"text-sm font-bold text-purple-500",children:"∪"})}),(0,B.jsxs)("div",{className:"flex-1",children:[(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[(0,B.jsx)("span",{className:"font-semibold text-foreground",children:"RRF Fusion"}),(0,B.jsx)("span",{className:"text-xs px-2 py-0.5 rounded bg-muted text-muted-foreground",children:"merge"})]}),(0,B.jsx)("div",{className:"text-sm text-muted-foreground mt-0.5",children:"Reciprocal Rank Fusion of all retrieval results"})]}),(0,B.jsx)("div",{className:"text-2xl font-bold text-foreground",children:V.rrf_merged.length}),d?(0,B.jsx)(ni,{className:"h-5 w-5 text-muted-foreground"}):(0,B.jsx)(N,{className:"h-5 w-5 text-muted-foreground"})]})})}),d&&V.rrf_merged.length>0&&(e="results-rrf",g=(f=ad.has(e))?V.rrf_merged:V.rrf_merged.slice(0,5),h=V.rrf_merged.length>5,(0,B.jsxs)("div",{className:"ml-6 mt-2 space-y-2 border-l-2 border-muted pl-4 max-h-[400px] overflow-y-auto",children:[g.map((a,b)=>(0,B.jsx)("div",{className:"p-3 bg-muted/30 rounded-lg cursor-pointer hover:bg-muted/50 transition-colors",onClick:b=>{b.stopPropagation(),aa(a)},children:(0,B.jsxs)("div",{className:"flex items-start gap-3",children:[(0,B.jsx)("span",{className:"text-xs font-mono text-muted-foreground",children:b+1}),(0,B.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,B.jsx)("p",{className:"text-sm text-foreground line-clamp-2",children:a.text}),(0,B.jsxs)("div",{className:"text-xs text-muted-foreground mt-1",children:["RRF Score: ",(a.rrf_score||a.score||0).toFixed(4)]})]})]})},b)),h&&(0,B.jsx)("button",{className:"w-full text-xs text-primary hover:text-primary/80 py-2 hover:bg-muted/50 rounded transition-colors",onClick:a=>{a.stopPropagation(),ag(e)},children:f?"Show less":`View all ${V.rrf_merged.length} results`})]})),(0,B.jsx)("div",{className:"flex justify-center py-2",children:(0,B.jsx)(of,{className:"h-4 w-4 text-muted-foreground/50"})})]})),V.reranked&&(i="reranking",j=ab.has(i),(0,B.jsxs)("div",{children:[(0,B.jsx)(nq,{className:`cursor-pointer transition-colors ${j?"border-primary":"hover:border-primary/50"}`,onClick:()=>af(i),children:(0,B.jsx)(nu,{className:"py-4",children:(0,B.jsxs)("div",{className:"flex items-center gap-4",children:[(0,B.jsx)("div",{className:"flex-shrink-0 w-10 h-10 rounded-full bg-amber-500/10 flex items-center justify-center",children:(0,B.jsx)("span",{className:"text-sm font-bold text-amber-500",children:"⚡"})}),(0,B.jsxs)("div",{className:"flex-1",children:[(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[(0,B.jsx)("span",{className:"font-semibold text-foreground",children:"Combined Scoring"}),(0,B.jsx)("span",{className:"text-xs px-2 py-0.5 rounded bg-muted text-muted-foreground",children:"rerank"})]}),(0,B.jsx)("div",{className:"text-sm text-muted-foreground mt-0.5",children:(0,B.jsx)("span",{className:"font-mono text-xs",children:"0.6×cross_encoder + 0.2×rrf + 0.1×temporal + 0.1×recency"})})]}),(0,B.jsx)("div",{className:"text-2xl font-bold text-foreground",children:V.reranked.length}),j?(0,B.jsx)(ni,{className:"h-5 w-5 text-muted-foreground"}):(0,B.jsx)(N,{className:"h-5 w-5 text-muted-foreground"})]})})}),j&&V.reranked.length>0&&(k="results-rerank",n=(l=ad.has(k))?V.reranked:V.reranked.slice(0,5),o=V.reranked.length>5,(0,B.jsxs)("div",{className:"ml-6 mt-2 space-y-2 border-l-2 border-muted pl-4 max-h-[400px] overflow-y-auto",children:[n.map((a,b)=>{let c=a.score_components||{};return(0,B.jsx)("div",{className:"p-3 bg-muted/30 rounded-lg cursor-pointer hover:bg-muted/50 transition-colors",onClick:b=>{b.stopPropagation(),aa(a)},children:(0,B.jsxs)("div",{className:"flex items-start gap-3",children:[(0,B.jsx)("span",{className:"text-xs font-mono text-muted-foreground",children:b+1}),(0,B.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,B.jsx)("p",{className:"text-sm text-foreground line-clamp-2",children:a.text}),(0,B.jsxs)("div",{className:"flex flex-wrap gap-x-3 gap-y-1 mt-2 text-[10px] text-muted-foreground font-mono",children:[(0,B.jsxs)("span",{className:"font-semibold text-foreground",children:["= ",(a.rerank_score||a.score||0).toFixed(4)]}),void 0!==c.cross_encoder_score_normalized&&(0,B.jsxs)("span",{title:"Cross-encoder (60%)",children:["CE: ",c.cross_encoder_score_normalized.toFixed(3)]}),void 0!==c.rrf_normalized&&(0,B.jsxs)("span",{title:`RRF normalized (20%) - raw: ${c.rrf_score?.toFixed(4)||"N/A"}`,children:["RRF: ",c.rrf_normalized.toFixed(3)]}),void 0!==c.temporal&&(0,B.jsxs)("span",{title:"Temporal proximity (10%)",children:["Tmp: ",c.temporal.toFixed(3)]}),void 0!==c.recency&&(0,B.jsxs)("span",{title:"Recency (10%)",children:["Rec: ",c.recency.toFixed(3)]})]})]})]})},b)}),o&&(0,B.jsx)("button",{className:"w-full text-xs text-primary hover:text-primary/80 py-2 hover:bg-muted/50 rounded transition-colors",onClick:a=>{a.stopPropagation(),ag(k)},children:l?"Show less":`View all ${V.reranked.length} results`})]})),(0,B.jsx)("div",{className:"flex justify-center py-2",children:(0,B.jsx)(of,{className:"h-4 w-4 text-muted-foreground/50"})})]})),(0,B.jsx)(nq,{className:"border-primary bg-primary/5",children:(0,B.jsx)(nu,{className:"py-4",children:(0,B.jsxs)("div",{className:"flex items-center gap-4",children:[(0,B.jsx)("div",{className:"flex-shrink-0 w-10 h-10 rounded-full bg-primary/20 flex items-center justify-center",children:(0,B.jsx)("span",{className:"text-sm font-bold text-primary",children:"✓"})}),(0,B.jsxs)("div",{className:"flex-1",children:[(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[(0,B.jsx)("span",{className:"font-semibold text-foreground",children:"Final Results"}),(0,B.jsx)("span",{className:"text-xs px-2 py-0.5 rounded bg-primary/20 text-primary",children:"output"})]}),(0,B.jsx)("div",{className:"text-sm text-muted-foreground mt-0.5",children:"Top results after all processing steps"})]}),(0,B.jsx)("div",{className:"text-2xl font-bold text-primary",children:I?.length||0})]})})})]}),"json"===Z&&(0,B.jsxs)(nq,{children:[(0,B.jsx)(nr,{children:(0,B.jsx)(ns,{className:"text-lg",children:"Raw Response"})}),(0,B.jsx)(nu,{children:(0,B.jsx)("div",{className:"bg-muted p-4 rounded-lg overflow-auto max-h-[600px]",children:(0,B.jsx)(ob,{src:{results:I,...O&&{entities:O},...Q&&{chunks:Q},trace:V},collapsed:2,theme:"default"})})})]})]}),!X&&!I&&(0,B.jsx)(nq,{className:"border-dashed",children:(0,B.jsxs)(nu,{className:"flex flex-col items-center justify-center py-16",children:[(0,B.jsx)(G.Search,{className:"h-12 w-12 text-muted-foreground mb-4"}),(0,B.jsx)("h3",{className:"text-lg font-semibold mb-2",children:"Ready to Recall"}),(0,B.jsx)("p",{className:"text-muted-foreground text-center max-w-md",children:"Enter a query above to search through your memories. Use filters to narrow down by fact type, budget, and more."})]})}),_&&(0,B.jsx)("div",{className:"fixed right-0 top-0 h-screen w-[420px] bg-card border-l shadow-2xl z-50 overflow-y-auto",children:(0,B.jsx)(bh,{memory:_,onClose:()=>aa(null),inPanel:!0})})]}):(0,B.jsx)(nq,{className:"border-dashed",children:(0,B.jsxs)(nu,{className:"flex flex-col items-center justify-center py-16",children:[(0,B.jsx)(J,{className:"h-12 w-12 text-muted-foreground mb-4"}),(0,B.jsx)("h3",{className:"text-xl font-semibold mb-2",children:"No Bank Selected"}),(0,B.jsx)("p",{className:"text-muted-foreground",children:"Select a memory bank to start recalling."})]})})}let oh=(0,H.default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]),oi=(0,H.default)("save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]]),oj=(0,H.default)("brain",[["path",{d:"M12 18V5",key:"adv99a"}],["path",{d:"M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4",key:"1e3is1"}],["path",{d:"M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5",key:"1gqd8o"}],["path",{d:"M17.997 5.125a4 4 0 0 1 2.526 5.77",key:"iwvgf7"}],["path",{d:"M18 18a4 4 0 0 0 2-7.464",key:"efp6ie"}],["path",{d:"M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517",key:"1gq6am"}],["path",{d:"M6 18a4 4 0 0 1-2-7.464",key:"k1g0md"}],["path",{d:"M6.003 5.125a4 4 0 0 0-2.526 5.77",key:"q97ue3"}]]),ok=(0,H.default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]),ol=(0,H.default)("circle-check-big",[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]]),om=(0,H.default)("link-2",[["path",{d:"M9 17H7A5 5 0 0 1 7 7h2",key:"8i5ue5"}],["path",{d:"M15 7h2a5 5 0 1 1 0 10h-2",key:"1b9ql8"}],["line",{x1:"8",x2:"16",y1:"12",y2:"12",key:"1jonct"}]]),on=(0,H.default)("folder-open",[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]]),oo=(0,H.default)("activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]),op={skepticism:{label:"Skepticism",shortLabel:"S",description:"How skeptical vs trusting when forming opinions",lowLabel:"Trusting",highLabel:"Skeptical"},literalism:{label:"Literalism",shortLabel:"L",description:"How literally to interpret information when forming opinions",lowLabel:"Flexible",highLabel:"Literal"},empathy:{label:"Empathy",shortLabel:"E",description:"How much to consider emotional context when forming opinions",lowLabel:"Detached",highLabel:"Empathetic"}};function oq({disposition:a,editMode:b,editDisposition:c,onEditChange:d}){let e=b?c:a;return(0,B.jsx)("div",{className:"space-y-4",children:Object.keys(op).map(a=>(0,B.jsxs)("div",{className:"space-y-2",children:[(0,B.jsxs)("div",{className:"flex justify-between items-center",children:[(0,B.jsxs)("div",{children:[(0,B.jsx)("label",{className:"text-sm font-medium text-foreground",children:op[a].label}),(0,B.jsx)("p",{className:"text-xs text-muted-foreground",children:op[a].description})]}),(0,B.jsxs)("span",{className:"text-sm font-bold text-primary",children:[e[a],"/5"]})]}),b?(0,B.jsxs)(B.Fragment,{children:[(0,B.jsxs)("div",{className:"flex justify-between text-[10px] text-muted-foreground",children:[(0,B.jsx)("span",{children:op[a].lowLabel}),(0,B.jsx)("span",{children:op[a].highLabel})]}),(0,B.jsx)("input",{type:"range",min:"1",max:"5",step:"1",value:c[a],onChange:b=>d(a,parseInt(b.target.value)),className:"w-full h-2 bg-muted rounded-lg appearance-none cursor-pointer accent-primary"})]}):(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[(0,B.jsx)("span",{className:"text-xs text-muted-foreground",children:op[a].lowLabel}),(0,B.jsx)("div",{className:"flex-1 h-2 bg-muted rounded-full overflow-hidden",children:(0,B.jsx)("div",{className:"h-full bg-primary rounded-full transition-all",style:{width:`${(e[a]-1)/4*100}%`}})}),(0,B.jsx)("span",{className:"text-xs text-muted-foreground",children:op[a].highLabel})]})]},a))})}function or(){let{currentBank:a}=(0,F.useBank)(),[b,c]=(0,E.useState)(null),[d,e]=(0,E.useState)(null),[f,g]=(0,E.useState)([]),[h,i]=(0,E.useState)(!1),[j,k]=(0,E.useState)(!1),[l,n]=(0,E.useState)(!1),[o,p]=(0,E.useState)(""),[q,r]=(0,E.useState)({skepticism:3,literalism:3,empathy:3}),s=async()=>{if(a){i(!0);try{let[b,d,f]=await Promise.all([S.client.getBankProfile(a),S.client.getBankStats(a),S.client.listOperations(a)]);c(b),e(d),g(f?.operations||[]),p(b.background),r(b.disposition)}catch(a){console.error("Error loading bank profile:",a),alert("Error loading bank profile: "+a.message)}finally{i(!1)}}},t=async()=>{if(a){k(!0);try{await S.client.updateBankProfile(a,{background:o,disposition:q}),await s(),n(!1)}catch(a){console.error("Error saving bank profile:",a),alert("Error saving bank profile: "+a.message)}finally{k(!1)}}};return((0,E.useEffect)(()=>{if(a){s();let a=setInterval(s,5e3);return()=>clearInterval(a)}},[a]),a)?h&&!b?(0,B.jsx)(nq,{children:(0,B.jsxs)(nu,{className:"text-center py-10",children:[(0,B.jsx)(od,{className:"w-12 h-12 mx-auto mb-3 text-muted-foreground animate-pulse"}),(0,B.jsx)("div",{className:"text-lg text-muted-foreground",children:"Loading profile..."})]})}):(0,B.jsxs)("div",{className:"space-y-6",children:[(0,B.jsxs)("div",{className:"flex justify-between items-center",children:[(0,B.jsxs)("div",{children:[(0,B.jsx)("h2",{className:"text-2xl font-bold text-foreground",children:b?.name||a}),(0,B.jsx)("p",{className:"text-sm text-muted-foreground font-mono",children:a})]}),(0,B.jsx)("div",{className:"flex gap-2",children:l?(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(T.Button,{onClick:()=>{b&&(p(b.background),r(b.disposition)),n(!1)},variant:"secondary",disabled:j,children:"Cancel"}),(0,B.jsx)(T.Button,{onClick:t,disabled:j,children:j?(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(oh,{className:"w-4 h-4 mr-2 animate-spin"}),"Saving..."]}):(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(oi,{className:"w-4 h-4 mr-2"}),"Save Changes"]})})]}):(0,B.jsxs)(B.Fragment,{children:[(0,B.jsxs)(T.Button,{onClick:s,variant:"secondary",size:"sm",children:[(0,B.jsx)(oh,{className:"w-4 h-4 mr-2"}),"Refresh"]}),(0,B.jsx)(T.Button,{onClick:()=>n(!0),size:"sm",children:"Edit Profile"})]})})]}),d&&(0,B.jsxs)("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-4",children:[(0,B.jsx)(nq,{className:"bg-gradient-to-br from-blue-500/10 to-blue-600/5 border-blue-500/20",children:(0,B.jsx)(nu,{className:"p-4",children:(0,B.jsxs)("div",{className:"flex items-center gap-3",children:[(0,B.jsx)("div",{className:"p-2 rounded-lg bg-blue-500/20",children:(0,B.jsx)(J,{className:"w-5 h-5 text-blue-500"})}),(0,B.jsxs)("div",{children:[(0,B.jsx)("p",{className:"text-xs text-muted-foreground font-medium",children:"Memories"}),(0,B.jsx)("p",{className:"text-2xl font-bold text-foreground",children:d.total_nodes})]})]})})}),(0,B.jsx)(nq,{className:"bg-gradient-to-br from-purple-500/10 to-purple-600/5 border-purple-500/20",children:(0,B.jsx)(nu,{className:"p-4",children:(0,B.jsxs)("div",{className:"flex items-center gap-3",children:[(0,B.jsx)("div",{className:"p-2 rounded-lg bg-purple-500/20",children:(0,B.jsx)(om,{className:"w-5 h-5 text-purple-500"})}),(0,B.jsxs)("div",{children:[(0,B.jsx)("p",{className:"text-xs text-muted-foreground font-medium",children:"Links"}),(0,B.jsx)("p",{className:"text-2xl font-bold text-foreground",children:d.total_links})]})]})})}),(0,B.jsx)(nq,{className:"bg-gradient-to-br from-emerald-500/10 to-emerald-600/5 border-emerald-500/20",children:(0,B.jsx)(nu,{className:"p-4",children:(0,B.jsxs)("div",{className:"flex items-center gap-3",children:[(0,B.jsx)("div",{className:"p-2 rounded-lg bg-emerald-500/20",children:(0,B.jsx)(on,{className:"w-5 h-5 text-emerald-500"})}),(0,B.jsxs)("div",{children:[(0,B.jsx)("p",{className:"text-xs text-muted-foreground font-medium",children:"Documents"}),(0,B.jsx)("p",{className:"text-2xl font-bold text-foreground",children:d.total_documents})]})]})})}),(0,B.jsx)(nq,{className:`bg-gradient-to-br ${d.pending_operations>0?"from-amber-500/10 to-amber-600/5 border-amber-500/20":"from-slate-500/10 to-slate-600/5 border-slate-500/20"}`,children:(0,B.jsx)(nu,{className:"p-4",children:(0,B.jsxs)("div",{className:"flex items-center gap-3",children:[(0,B.jsx)("div",{className:`p-2 rounded-lg ${d.pending_operations>0?"bg-amber-500/20":"bg-slate-500/20"}`,children:(0,B.jsx)(oo,{className:`w-5 h-5 ${d.pending_operations>0?"text-amber-500 animate-pulse":"text-slate-500"}`})}),(0,B.jsxs)("div",{children:[(0,B.jsx)("p",{className:"text-xs text-muted-foreground font-medium",children:"Pending"}),(0,B.jsx)("p",{className:"text-2xl font-bold text-foreground",children:d.pending_operations})]})]})})})]}),d&&(0,B.jsxs)("div",{className:"grid grid-cols-3 gap-3",children:[(0,B.jsxs)("div",{className:"bg-blue-500/10 border border-blue-500/20 rounded-xl p-4 text-center",children:[(0,B.jsx)("p",{className:"text-xs text-blue-600 dark:text-blue-400 font-semibold uppercase tracking-wide",children:"World Facts"}),(0,B.jsx)("p",{className:"text-2xl font-bold text-blue-600 dark:text-blue-400 mt-1",children:d.nodes_by_fact_type?.world||0})]}),(0,B.jsxs)("div",{className:"bg-purple-500/10 border border-purple-500/20 rounded-xl p-4 text-center",children:[(0,B.jsx)("p",{className:"text-xs text-purple-600 dark:text-purple-400 font-semibold uppercase tracking-wide",children:"Experience"}),(0,B.jsx)("p",{className:"text-2xl font-bold text-purple-600 dark:text-purple-400 mt-1",children:d.nodes_by_fact_type?.experience||0})]}),(0,B.jsxs)("div",{className:"bg-amber-500/10 border border-amber-500/20 rounded-xl p-4 text-center",children:[(0,B.jsx)("p",{className:"text-xs text-amber-600 dark:text-amber-400 font-semibold uppercase tracking-wide",children:"Opinions"}),(0,B.jsx)("p",{className:"text-2xl font-bold text-amber-600 dark:text-amber-400 mt-1",children:d.nodes_by_fact_type?.opinion||0})]})]}),(0,B.jsxs)("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6",children:[(0,B.jsxs)(nq,{children:[(0,B.jsxs)(nr,{className:"pb-2",children:[(0,B.jsxs)(ns,{className:"flex items-center gap-2 text-lg",children:[(0,B.jsx)(oj,{className:"w-5 h-5 text-primary"}),"Disposition Profile"]}),(0,B.jsx)(nt,{children:"Traits that shape how opinions are formed via Reflect"})]}),(0,B.jsx)(nu,{children:b&&(0,B.jsx)(oq,{disposition:b.disposition,editMode:l,editDisposition:q,onEditChange:(a,b)=>r(c=>({...c,[a]:b}))})})]}),(0,B.jsx)("div",{className:"space-y-6",children:(0,B.jsxs)(nq,{children:[(0,B.jsxs)(nr,{className:"pb-2",children:[(0,B.jsxs)(ns,{className:"flex items-center gap-2 text-lg",children:[(0,B.jsx)(K,{className:"w-5 h-5 text-primary"}),"Background"]}),(0,B.jsx)(nt,{children:"Context used when forming opinions via Reflect"})]}),(0,B.jsx)(nu,{children:l?(0,B.jsx)(mc.Textarea,{value:o,onChange:a=>p(a.target.value),placeholder:"Enter background information...",rows:5,className:"resize-none"}):(0,B.jsx)("p",{className:"text-sm text-foreground whitespace-pre-wrap leading-relaxed",children:b?.background||"No background information provided."})})]})})]}),(0,B.jsxs)(nq,{children:[(0,B.jsx)(nr,{className:"pb-2",children:(0,B.jsxs)("div",{className:"flex items-center justify-between",children:[(0,B.jsxs)("div",{children:[(0,B.jsxs)(ns,{className:"flex items-center gap-2 text-lg",children:[(0,B.jsx)(oo,{className:"w-5 h-5 text-primary"}),"Background Operations"]}),(0,B.jsx)(nt,{children:"Async tasks processing memories"})]}),d&&(d.pending_operations>0||d.failed_operations>0)&&(0,B.jsxs)("div",{className:"flex gap-3",children:[d.pending_operations>0&&(0,B.jsxs)("div",{className:"flex items-center gap-1.5 px-2.5 py-1 rounded-full bg-amber-500/10 border border-amber-500/20",children:[(0,B.jsx)(od,{className:"w-3.5 h-3.5 text-amber-500"}),(0,B.jsxs)("span",{className:"text-xs font-semibold text-amber-600 dark:text-amber-400",children:[d.pending_operations," pending"]})]}),d.failed_operations>0&&(0,B.jsxs)("div",{className:"flex items-center gap-1.5 px-2.5 py-1 rounded-full bg-red-500/10 border border-red-500/20",children:[(0,B.jsx)(ok,{className:"w-3.5 h-3.5 text-red-500"}),(0,B.jsxs)("span",{className:"text-xs font-semibold text-red-600 dark:text-red-400",children:[d.failed_operations," failed"]})]})]})]})}),(0,B.jsx)(nu,{children:f.length>0?(0,B.jsx)("div",{className:"overflow-x-auto",children:(0,B.jsxs)(aa,{children:[(0,B.jsx)(ab,{children:(0,B.jsxs)(ad,{children:[(0,B.jsx)(ae,{className:"w-[100px]",children:"ID"}),(0,B.jsx)(ae,{children:"Type"}),(0,B.jsx)(ae,{className:"text-center",children:"Items"}),(0,B.jsx)(ae,{children:"Document"}),(0,B.jsx)(ae,{children:"Created"}),(0,B.jsx)(ae,{children:"Status"})]})}),(0,B.jsx)(ac,{children:f.slice(0,10).map(a=>(0,B.jsxs)(ad,{className:"failed"===a.status?"bg-red-500/5":"",children:[(0,B.jsx)(af,{className:"font-mono text-xs text-muted-foreground",children:a.id.substring(0,8)}),(0,B.jsx)(af,{className:"font-medium",children:a.task_type}),(0,B.jsx)(af,{className:"text-center",children:a.items_count}),(0,B.jsx)(af,{className:"font-mono text-xs text-muted-foreground",children:a.document_id?a.document_id.substring(0,12)+"...":"—"}),(0,B.jsx)(af,{className:"text-sm text-muted-foreground",children:new Date(a.created_at).toLocaleString()}),(0,B.jsxs)(af,{children:["pending"===a.status&&(0,B.jsxs)("span",{className:"inline-flex items-center gap-1.5 px-2 py-0.5 rounded-full text-xs font-medium bg-amber-500/10 text-amber-600 dark:text-amber-400 border border-amber-500/20",children:[(0,B.jsx)(od,{className:"w-3 h-3"}),"pending"]}),"failed"===a.status&&(0,B.jsxs)("span",{className:"inline-flex items-center gap-1.5 px-2 py-0.5 rounded-full text-xs font-medium bg-red-500/10 text-red-600 dark:text-red-400 border border-red-500/20",title:a.error_message,children:[(0,B.jsx)(ok,{className:"w-3 h-3"}),"failed"]}),"completed"===a.status&&(0,B.jsxs)("span",{className:"inline-flex items-center gap-1.5 px-2 py-0.5 rounded-full text-xs font-medium bg-emerald-500/10 text-emerald-600 dark:text-emerald-400 border border-emerald-500/20",children:[(0,B.jsx)(ol,{className:"w-3 h-3"}),"done"]})]})]},a.id))})]})}):(0,B.jsx)("p",{className:"text-muted-foreground text-center py-8 text-sm",children:"No background operations"})})]})]}):(0,B.jsx)(nq,{children:(0,B.jsxs)(nu,{className:"p-10 text-center",children:[(0,B.jsx)("h3",{className:"text-xl font-semibold mb-2 text-card-foreground",children:"No Bank Selected"}),(0,B.jsx)("p",{className:"text-muted-foreground",children:"Please select a memory bank from the dropdown above to view its profile."})]})})}function os(){let a=(0,C.useParams)(),b=(0,C.useRouter)(),c=(0,C.useSearchParams)(),d=a.bankId,e=c.get("view")||"profile",f=c.get("subTab")||"world",g=a=>{b.push(`/banks/${d}?view=data&subTab=${a}`)};return(0,B.jsxs)("div",{className:"min-h-screen bg-background flex flex-col",children:[(0,B.jsx)(D.BankSelector,{}),(0,B.jsxs)("div",{className:"flex flex-1 overflow-hidden",children:[(0,B.jsx)(R,{currentTab:e,onTabChange:a=>{b.push(`/banks/${d}?view=${a}`)}}),(0,B.jsx)("main",{className:"flex-1 overflow-y-auto",children:(0,B.jsxs)("div",{className:"p-6",children:["profile"===e&&(0,B.jsxs)("div",{children:[(0,B.jsx)("h1",{className:"text-3xl font-bold mb-2 text-foreground",children:"Bank Profile"}),(0,B.jsx)("p",{className:"text-muted-foreground mb-6",children:"View and edit the memory bank profile, disposition traits, and background information."}),(0,B.jsx)(or,{})]}),"recall"===e&&(0,B.jsxs)("div",{children:[(0,B.jsx)("h1",{className:"text-3xl font-bold mb-2 text-foreground",children:"Recall Analyzer"}),(0,B.jsx)("p",{className:"text-muted-foreground mb-6",children:"Analyze memory recall with detailed trace information and retrieval methods."}),(0,B.jsx)(og,{})]}),"reflect"===e&&(0,B.jsxs)("div",{children:[(0,B.jsx)("h1",{className:"text-3xl font-bold mb-2 text-foreground",children:"Reflect"}),(0,B.jsx)("p",{className:"text-muted-foreground mb-6",children:"Ask questions and get AI-powered answers based on stored memories."}),(0,B.jsx)(oc,{})]}),"data"===e&&(0,B.jsxs)("div",{children:[(0,B.jsx)("h1",{className:"text-3xl font-bold mb-2 text-foreground",children:"Memories"}),(0,B.jsx)("p",{className:"text-muted-foreground mb-6",children:"View and explore different types of memories stored in this memory bank."}),(0,B.jsx)("div",{className:"mb-6 border-b border-border",children:(0,B.jsxs)("div",{className:"flex gap-1",children:[(0,B.jsxs)("button",{onClick:()=>g("world"),className:`px-6 py-3 font-semibold text-sm transition-all relative ${"world"===f?"text-primary":"text-muted-foreground hover:text-foreground"}`,children:["World Facts","world"===f&&(0,B.jsx)("div",{className:"absolute bottom-0 left-0 right-0 h-0.5 bg-primary"})]}),(0,B.jsxs)("button",{onClick:()=>g("experience"),className:`px-6 py-3 font-semibold text-sm transition-all relative ${"experience"===f?"text-primary":"text-muted-foreground hover:text-foreground"}`,children:["Experience","experience"===f&&(0,B.jsx)("div",{className:"absolute bottom-0 left-0 right-0 h-0.5 bg-primary"})]}),(0,B.jsxs)("button",{onClick:()=>g("opinion"),className:`px-6 py-3 font-semibold text-sm transition-all relative ${"opinion"===f?"text-primary":"text-muted-foreground hover:text-foreground"}`,children:["Opinions","opinion"===f&&(0,B.jsx)("div",{className:"absolute bottom-0 left-0 right-0 h-0.5 bg-primary"})]})]})}),(0,B.jsxs)("div",{children:["world"===f&&(0,B.jsx)(l8,{factType:"world"},"world"),"experience"===f&&(0,B.jsx)(l8,{factType:"experience"},"experience"),"opinion"===f&&(0,B.jsx)(l8,{factType:"opinion"},"opinion")]})]}),"documents"===e&&(0,B.jsxs)("div",{children:[(0,B.jsx)("h1",{className:"text-3xl font-bold mb-2 text-foreground",children:"Documents"}),(0,B.jsx)("p",{className:"text-muted-foreground mb-6",children:"Manage documents and retain new memories."}),(0,B.jsx)(ma,{})]}),"entities"===e&&(0,B.jsxs)("div",{children:[(0,B.jsx)("h1",{className:"text-3xl font-bold mb-2 text-foreground",children:"Entities"}),(0,B.jsx)("p",{className:"text-muted-foreground mb-6",children:"Explore entities (people, organizations, places) mentioned in memories."}),(0,B.jsx)(mb,{})]})]})})]})]})}a.s(["default",()=>os],73101)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=_ad0e821a._.js.map
|