ocean-brain 0.8.2 → 0.10.0
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/README.md +2 -0
- package/dist/mcp.js +47 -75
- package/package.json +3 -2
- package/server/client/dist/assets/{ArrowRight.es-g2YZTklZ.js → ArrowRight.es-Bm-ZXpEC.js} +1 -1
- package/server/client/dist/assets/Calendar-BsNs3NzO.js +25 -0
- package/server/client/dist/assets/{Callout-B_IPSF_5.js → Callout-CviyPHKO.js} +1 -1
- package/server/client/dist/assets/{Copy.es-CNxe4ujr.js → Copy.es-BPreRnP9.js} +1 -1
- package/server/client/dist/assets/{Graph-D9GeO71k.js → Graph-vXQQ0a-Q.js} +1 -1
- package/server/client/dist/assets/Graph-yPE3ljW0.js +46 -0
- package/server/client/dist/assets/{Image.es-DnON8cv2.js → Image.es-DnR3qc_c.js} +1 -1
- package/server/client/dist/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
- package/server/client/dist/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
- package/server/client/dist/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
- package/server/client/dist/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
- package/server/client/dist/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
- package/server/client/dist/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
- package/server/client/dist/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
- package/server/client/dist/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
- package/server/client/dist/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
- package/server/client/dist/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
- package/server/client/dist/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
- package/server/client/dist/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
- package/server/client/dist/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
- package/server/client/dist/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
- package/server/client/dist/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
- package/server/client/dist/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
- package/server/client/dist/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
- package/server/client/dist/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
- package/server/client/dist/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
- package/server/client/dist/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
- package/server/client/dist/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
- package/server/client/dist/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
- package/server/client/dist/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
- package/server/client/dist/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
- package/server/client/dist/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
- package/server/client/dist/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
- package/server/client/dist/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
- package/server/client/dist/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
- package/server/client/dist/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
- package/server/client/dist/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
- package/server/client/dist/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
- package/server/client/dist/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
- package/server/client/dist/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
- package/server/client/dist/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
- package/server/client/dist/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
- package/server/client/dist/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
- package/server/client/dist/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
- package/server/client/dist/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
- package/server/client/dist/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
- package/server/client/dist/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
- package/server/client/dist/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
- package/server/client/dist/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
- package/server/client/dist/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
- package/server/client/dist/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
- package/server/client/dist/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
- package/server/client/dist/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
- package/server/client/dist/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
- package/server/client/dist/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
- package/server/client/dist/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
- package/server/client/dist/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
- package/server/client/dist/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
- package/server/client/dist/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
- package/server/client/dist/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
- package/server/client/dist/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
- package/server/client/dist/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
- package/server/client/dist/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
- package/server/client/dist/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
- package/server/client/dist/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
- package/server/client/dist/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
- package/server/client/dist/assets/Note-CmreVzvQ.js +25 -0
- package/server/client/dist/assets/{NotePropertiesPanel-2DgXEM4B.js → NotePropertiesPanel-DXYgE8h2.js} +2 -2
- package/server/client/dist/assets/PencilLine.es-B9V6u64t.js +1 -0
- package/server/client/dist/assets/{Plus.es-CQ8wn2is.js → Plus.es-CRRp2u5J.js} +1 -1
- package/server/client/dist/assets/Reminders-BOtfNeYD.js +1 -0
- package/server/client/dist/assets/Search-C-FB3pKf.js +1 -0
- package/server/client/dist/assets/SurfaceCard-GMt5xM7v.js +1 -0
- package/server/client/dist/assets/Tag-lBxDRE77.js +1 -0
- package/server/client/dist/assets/TagNotes-Bgorp_rC.js +1 -0
- package/server/client/dist/assets/{Trash.es-0aPpA-3S.js → Trash.es-svHOb5LN.js} +1 -1
- package/server/client/dist/assets/ViewNotes-C7d10VFf.js +1 -0
- package/server/client/dist/assets/ViewSectionDialog-Bhw-ILop.js +102 -0
- package/server/client/dist/assets/Views-C7V3saUo.js +1 -0
- package/server/client/dist/assets/abnfDiagram-VRR7QNED-CWlV5dXw.js +1 -0
- package/server/client/dist/assets/app-DQBV36r_.js +50 -0
- package/server/client/dist/assets/app-ZgwR5t_I.css +1 -0
- package/server/client/dist/assets/arc-BV-n6RUX.js +1 -0
- package/server/client/dist/assets/architectureDiagram-ZJ3FMSHR-CekzMXdu.js +36 -0
- package/server/client/dist/assets/blockDiagram-677ZJIJ3-B49yHoxq.js +132 -0
- package/server/client/dist/assets/c4Diagram-LMCZKHZV-0AfB9NBC.js +10 -0
- package/server/client/dist/assets/channel-CigOulR-.js +1 -0
- package/server/client/dist/assets/chunk-2Q5K7J3B-DaPQAU1q.js +1 -0
- package/server/client/dist/assets/chunk-32BRIVSS-CfL3kZAg.js +1 -0
- package/server/client/dist/assets/chunk-5VM5RSS4-DeOwWPE_.js +15 -0
- package/server/client/dist/assets/chunk-EX3LRPZG-C3W1oc9y.js +231 -0
- package/server/client/dist/assets/chunk-JWPE2WC7-_Oqh79OY.js +1 -0
- package/server/client/dist/assets/chunk-MOJQB5TN-DDKNNzI6.js +88 -0
- package/server/client/dist/assets/chunk-RYQCIY6F-DCHah7CC.js +1 -0
- package/server/client/dist/assets/chunk-V7JOEXUC-uUOIzgxj.js +206 -0
- package/server/client/dist/assets/chunk-VR4S4FIN-DDVw2WPs.js +1 -0
- package/server/client/dist/assets/chunk-XXDRQBXY-Coo4UFm2.js +1 -0
- package/server/client/dist/assets/classDiagram-OUVF2IWQ-D13ISIOW.js +1 -0
- package/server/client/dist/assets/classDiagram-v2-EOCWNBFH-D13ISIOW.js +1 -0
- package/server/client/dist/assets/colors-Cc3OSVma.js +1 -0
- package/server/client/dist/assets/cose-bilkent-JH36ORCC-C3pHmHpD.js +1 -0
- package/server/client/dist/assets/cynefin-VYW2F7L2-DU_G4Atc.js +166 -0
- package/server/client/dist/assets/cynefinDiagram-TSTJHNR4-DZ6iiJFo.js +62 -0
- package/server/client/dist/assets/cytoscape.esm-D3_iZ_3b.js +321 -0
- package/server/client/dist/assets/dagre-VKFMJZFB-DNELbhwC.js +4 -0
- package/server/client/dist/assets/defaultLocale-DX6XiGOO.js +1 -0
- package/server/client/dist/assets/diagram-FQU43EPY-CMEvZJ61.js +3 -0
- package/server/client/dist/assets/diagram-G47NLZAW-BYDtf6j9.js +24 -0
- package/server/client/dist/assets/diagram-NH7WQ7WH-CmXfcCQA.js +24 -0
- package/server/client/dist/assets/diagram-OA4YK3LP-BflTKJxU.js +30 -0
- package/server/client/dist/assets/diagram-WEI45ONY-KW3fKqna.js +41 -0
- package/server/client/dist/assets/ebnfDiagram-CCIWWBDH-CbyhY5Nj.js +1 -0
- package/server/client/dist/assets/erDiagram-Q63AITRT-CC2eZV8g.js +85 -0
- package/server/client/dist/assets/{floating-ui.react-dom-wWLZ1CdM.js → floating-ui.react-dom-BWTnA00G.js} +1 -1
- package/server/client/dist/assets/flowDiagram-23GEKE2U-unplo7Qm.js +156 -0
- package/server/client/dist/assets/ganttDiagram-NO4QXBWP-BcBK5HcZ.js +292 -0
- package/server/client/dist/assets/gitGraphDiagram-IHSO6WYX-DgVbbb5k.js +106 -0
- package/server/client/dist/assets/graph-C5DFNLrC.js +1 -0
- package/server/client/dist/assets/image-delete-confirmation-D7xrODQV.js +1 -0
- package/server/client/dist/assets/image.api-QmHYjp3z.js +17 -0
- package/server/client/dist/assets/index-CaF9d-zG.js +1 -0
- package/server/client/dist/assets/infoDiagram-FWYZ7A6U-N_D9RdfG.js +2 -0
- package/server/client/dist/assets/init-Gi6I4Gst.js +1 -0
- package/server/client/dist/assets/isObject-U9U2HXiq.js +1 -0
- package/server/client/dist/assets/ishikawaDiagram-FXEZZL3T-BBKrzmB2.js +70 -0
- package/server/client/dist/assets/journeyDiagram-5HDEW3XC-NdCxLmQB.js +139 -0
- package/server/client/dist/assets/kanban-definition-HUTT4EX6-Ck7t4-tt.js +89 -0
- package/server/client/dist/assets/katex-DywYRkvg.css +1 -0
- package/server/client/dist/assets/katex-HP8lGamR.js +257 -0
- package/server/client/dist/assets/katex-x288kqHd.js +257 -0
- package/server/client/dist/assets/layout-Cz0MDlGi.js +1 -0
- package/server/client/dist/assets/linear-D6yRgDLq.js +1 -0
- package/server/client/dist/assets/manage-image-DCDF8AM9.js +1 -0
- package/server/client/dist/assets/manage-image-detail-e0ViRAj-.js +1 -0
- package/server/client/dist/assets/map-Mm1V-_Na.js +1 -0
- package/server/client/dist/assets/mcp-admin-adapter-D39G3udJ.js +1 -0
- package/server/client/dist/assets/{mcp-CT_9IV2c.js → mcp-uFZkdhCi.js} +4 -4
- package/server/client/dist/assets/mermaid.core-B14ZAmWA.js +308 -0
- package/server/client/dist/assets/min-tv6RD-6E.js +1 -0
- package/server/client/dist/assets/mindmap-definition-LN4V7U3C-BTUqSdcP.js +96 -0
- package/server/client/dist/assets/{note-core-Buwzyxi7.js → note-core-DUTqUh5N.js} +2 -2
- package/server/client/dist/assets/{note-runtime-CPDVOFEo.js → note-runtime-zN5ddTba.js} +1 -1
- package/server/client/dist/assets/{note-ui-CHI-tzj-.js → note-ui-CxK8ymUc.js} +1 -1
- package/server/client/dist/assets/{note.api-D_00ZzJC.js → note.api-BQovzEzd.js} +6 -6
- package/server/client/dist/assets/ordinal-Cboi1Yqb.js +1 -0
- package/server/client/dist/assets/pegDiagram-2B236MQR-Cjcu3mVz.js +1 -0
- package/server/client/dist/assets/pieDiagram-ENE6RG2P-BxI_c22Z.js +39 -0
- package/server/client/dist/assets/{placeholder-DbdGiYGL.js → placeholder-D3b8lZGE.js} +4 -4
- package/server/client/dist/assets/properties-M-yWq1D7.js +1 -0
- package/server/client/dist/assets/quadrantDiagram-ABIIQ3AL-DGm0a-yR.js +7 -0
- package/server/client/dist/assets/railroadDiagram-RFXS5EU6-DmCDu89O.js +1 -0
- package/server/client/dist/assets/requirementDiagram-TGXJPOKE-CBpUt7Ig.js +84 -0
- package/server/client/dist/assets/route-preload.js +2 -2
- package/server/client/dist/assets/sankeyDiagram-HTMAVEWB-BjGnDZlp.js +40 -0
- package/server/client/dist/assets/search-DFnzZKLd.js +1 -0
- package/server/client/dist/assets/sequenceDiagram-DBY2YBRQ-B7rpCfS6.js +162 -0
- package/server/client/dist/assets/sizeCapture-X5ZJPWSS-CUJhD0uW.js +1 -0
- package/server/client/dist/assets/stateDiagram-2N3HPSRC-Y9-3XqRX.js +1 -0
- package/server/client/dist/assets/stateDiagram-v2-6OUMAXLB-DbHXhT02.js +1 -0
- package/server/client/dist/assets/swimlanes-5IMT3BWC-Cs1NO9ng.js +2 -0
- package/server/client/dist/assets/swimlanesDiagram-G3AALYLV-DQnrq2ZC.js +8 -0
- package/server/client/dist/assets/{tag.api-CX0SE06J.js → tag.api-DUfjr8bg.js} +3 -3
- package/server/client/dist/assets/time-CfAYZipR.js +9 -0
- package/server/client/dist/assets/timeline-definition-FHXFAJF6-8fqD4WNL.js +120 -0
- package/server/client/dist/assets/toNumber-DE3J3kMD.js +1 -0
- package/server/client/dist/assets/transform-BUB79_za.js +1 -0
- package/server/client/dist/assets/trash-CClKfP1x.js +1 -0
- package/server/client/dist/assets/url-9nrbQs7Z.js +1 -0
- package/server/client/dist/assets/{useReminderMutate-CLK1tHvT.js → useReminderMutate--omDLmBV.js} +4 -4
- package/server/client/dist/assets/vennDiagram-L72KCM5P-BPqKkd5a.js +34 -0
- package/server/client/dist/assets/wardleyDiagram-EHGQE667-Cq11kU2M.js +78 -0
- package/server/client/dist/assets/xychartDiagram-FW5EYKEG-DJ6UzFj-.js +7 -0
- package/server/client/dist/index.html +7 -7
- package/server/dist/features/image/services/delete.js +25 -1
- package/server/dist/features/note/graphql/note.mutation.resolver.js +38 -12
- package/server/dist/features/note/graphql/note.type-defs.js +1 -1
- package/server/dist/features/note/http/mcp.js +1 -60
- package/server/dist/features/note/services/authoring.js +2 -70
- package/server/dist/features/note/services/markdown-patch.js +80 -8
- package/server/dist/features/note/services/properties.js +21 -1
- package/server/dist/features/note/services/property-restore.js +26 -0
- package/server/dist/features/note/services/snapshot.js +79 -59
- package/server/dist/features/note/services/trash.js +16 -31
- package/server/dist/features/search/embedding-api-key-store.js +57 -0
- package/server/dist/features/search/embedding-client.js +179 -0
- package/server/dist/features/search/graphql/index.js +6 -0
- package/server/dist/features/search/graphql/resolver.js +20 -0
- package/server/dist/features/search/graphql/type-defs.js +30 -0
- package/server/dist/features/search/http/handlers.js +108 -0
- package/server/dist/features/search/hybrid-ranking.js +55 -0
- package/server/dist/features/search/hybrid-search.js +174 -0
- package/server/dist/features/search/note-change.js +16 -0
- package/server/dist/features/search/note-chunking.js +75 -0
- package/server/dist/features/search/search-config.js +150 -0
- package/server/dist/features/search/search-manager.js +431 -0
- package/server/dist/features/search/semantic-indexer.js +138 -0
- package/server/dist/features/search/sqlite-vector-index.js +636 -0
- package/server/dist/features/search/url-normalization.js +10 -0
- package/server/dist/features/tag/services/organization.js +3 -0
- package/server/dist/features/view/services/workspace.js +1 -1
- package/server/dist/main.js +2 -0
- package/server/dist/modules/blocknote.js +4 -5
- package/server/dist/paths.js +7 -2
- package/server/dist/routes/api.js +37 -0
- package/server/dist/routes/mcp.js +0 -5
- package/server/dist/schema/index.js +3 -0
- package/server/client/dist/assets/Calendar-BP6HTuSn.js +0 -25
- package/server/client/dist/assets/Graph-Xha3fwhp.js +0 -46
- package/server/client/dist/assets/Image-BLEjLUqd.js +0 -1
- package/server/client/dist/assets/Note-DjrCYtat.js +0 -24
- package/server/client/dist/assets/Reminders-B4l3KdlK.js +0 -1
- package/server/client/dist/assets/Search-BN5sf7bE.js +0 -1
- package/server/client/dist/assets/SurfaceCard-BZm73nyS.js +0 -1
- package/server/client/dist/assets/Tag-oSnmViVp.js +0 -1
- package/server/client/dist/assets/TagNotes-BDTCcJcL.js +0 -1
- package/server/client/dist/assets/ViewNotes-CiZtGJNE.js +0 -1
- package/server/client/dist/assets/ViewSectionDialog-Ctl_694Y.js +0 -102
- package/server/client/dist/assets/Views-D-zlatYD.js +0 -1
- package/server/client/dist/assets/app-DmqIOMWF.css +0 -1
- package/server/client/dist/assets/app-cTRcKMGc.js +0 -26
- package/server/client/dist/assets/image.api-CVuuvTBk.js +0 -17
- package/server/client/dist/assets/index-DKJChPr4.js +0 -1
- package/server/client/dist/assets/manage-image-BZjaxp-f.js +0 -1
- package/server/client/dist/assets/manage-image-detail-DPv0FQ2m.js +0 -1
- package/server/client/dist/assets/mcp-admin-adapter-xAuyZc_M.js +0 -1
- package/server/client/dist/assets/properties-D447wsWk.js +0 -1
- package/server/client/dist/assets/time-B3pt8vt4.js +0 -9
- package/server/client/dist/assets/trash-8sH7EZgc.js +0 -1
- package/server/client/dist/assets/url-BSnWpmJx.js +0 -1
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import{r as L,b as Po,j as R,a as Io}from"./floating-ui.react-dom-wWLZ1CdM.js";import{ay as w,aq as Ro,Z as at,aw as No,a5 as $t,a7 as sr,ad as ar,ai as jo,aa as Do,aj as Fe,ab as $o,ac as Ct,a9 as Fo,az as Lo,T as Uo,al as Ho}from"./note.api-D_00ZzJC.js";import{G as qo,f as Vo}from"./Graph-D9GeO71k.js";import{N as xn,G as Wo}from"./url-BSnWpmJx.js";import{s as lr}from"./ArrowRight.es-g2YZTklZ.js";function Go(e,n){var r=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(r!=null){var i,o,s,a,l=[],u=!0,c=!1;try{if(s=(r=r.call(e)).next,n===0){if(Object(r)!==r)return;u=!1}else for(;!(u=(i=s.call(r)).done)&&(l.push(i.value),l.length!==n);u=!0);}catch(h){c=!0,o=h}finally{try{if(!u&&r.return!=null&&(a=r.return(),Object(a)!==a))return}finally{if(c)throw o}}return l}}function Bo(e,n,r){return n=es(n),n in e?Object.defineProperty(e,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[n]=r,e}function ur(e,n){return Yo(e)||Go(e,n)||_i(e,n)||Jo()}function Xo(e){return Ko(e)||Zo(e)||_i(e)||Qo()}function Ko(e){if(Array.isArray(e))return bn(e)}function Yo(e){if(Array.isArray(e))return e}function Zo(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function _i(e,n){if(e){if(typeof e=="string")return bn(e,n);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return bn(e,n)}}function bn(e,n){(n==null||n>e.length)&&(n=e.length);for(var r=0,i=new Array(n);r<n;r++)i[r]=e[r];return i}function Qo(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
2
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Jo(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
3
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ts(e,n){if(typeof e!="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,n);if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(n==="string"?String:Number)(e)}function es(e){var n=ts(e,"string");return typeof n=="symbol"?n:String(n)}var ns=function(n,r){var i=new Set(r);return Object.assign.apply(Object,[{}].concat(Xo(Object.entries(n).filter(function(o){var s=ur(o,1),a=s[0];return!i.has(a)}).map(function(o){var s=ur(o,2),a=s[0],l=s[1];return Bo({},a,l)}))))};function wn(e,n){(n==null||n>e.length)&&(n=e.length);for(var r=0,i=Array(n);r<n;r++)i[r]=e[r];return i}function rs(e){if(Array.isArray(e))return e}function is(e){if(Array.isArray(e))return wn(e)}function os(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function ss(e,n){var r=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(r!=null){var i,o,s,a,l=[],u=!0,c=!1;try{if(s=(r=r.call(e)).next,n!==0)for(;!(u=(i=s.call(r)).done)&&(l.push(i.value),l.length!==n);u=!0);}catch(h){c=!0,o=h}finally{try{if(!u&&r.return!=null&&(a=r.return(),Object(a)!==a))return}finally{if(c)throw o}}return l}}function as(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
4
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ls(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
5
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function us(e,n){return rs(e)||ss(e,n)||xi(e,n)||as()}function cr(e){return is(e)||os(e)||xi(e)||ls()}function xi(e,n){if(e){if(typeof e=="string")return wn(e,n);var r={}.toString.call(e).slice(8,-1);return r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set"?Array.from(e):r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?wn(e,n):void 0}}function cs(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=n.wrapperElementType,i=r===void 0?"div":r,o=n.nodeMapper,s=o===void 0?function(h){return h}:o,a=n.methodNames,l=a===void 0?[]:a,u=n.initPropNames,c=u===void 0?[]:u;return L.forwardRef(function(h,f){var d=L.useRef(),g=L.useMemo(function(){var y=Object.fromEntries(c.filter(function(p){return h.hasOwnProperty(p)}).map(function(p){return[p,h[p]]}));return e(y)},[]);fr(function(){g(s(d.current))},L.useLayoutEffect),fr(function(){return g._destructor instanceof Function?g._destructor:void 0});var m=L.useCallback(function(y){for(var p=arguments.length,x=new Array(p>1?p-1:0),C=1;C<p;C++)x[C-1]=arguments[C];return g[y]instanceof Function?g[y].apply(g,x):void 0},[g]),v=L.useRef({});return Object.keys(ns(h,[].concat(cr(l),cr(c)))).filter(function(y){return v.current[y]!==h[y]}).forEach(function(y){return m(y,h[y])}),v.current=h,L.useImperativeHandle(f,function(){return Object.fromEntries(l.map(function(y){return[y,function(){for(var p=arguments.length,x=new Array(p),C=0;C<p;C++)x[C]=arguments[C];return m.apply(void 0,[y].concat(x))}]}))},[m]),Po.createElement(i,{ref:d})})}function fr(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:L.useEffect,r=L.useRef(),i=L.useRef(!1),o=L.useRef(!1),s=L.useState(0),a=us(s,2);a[0];var l=a[1];i.current&&(o.current=!0),n(function(){return i.current||(r.current=e(),i.current=!0),l(function(u){return u+1}),function(){o.current&&r.current&&r.current()}},[])}var kn="http://www.w3.org/1999/xhtml";const hr={svg:"http://www.w3.org/2000/svg",xhtml:kn,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function Je(e){var n=e+="",r=n.indexOf(":");return r>=0&&(n=e.slice(0,r))!=="xmlns"&&(e=e.slice(r+1)),hr.hasOwnProperty(n)?{space:hr[n],local:e}:e}function fs(e){return function(){var n=this.ownerDocument,r=this.namespaceURI;return r===kn&&n.documentElement.namespaceURI===kn?n.createElement(e):n.createElementNS(r,e)}}function hs(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function bi(e){var n=Je(e);return(n.local?hs:fs)(n)}function ds(){}function Hn(e){return e==null?ds:function(){return this.querySelector(e)}}function gs(e){typeof e!="function"&&(e=Hn(e));for(var n=this._groups,r=n.length,i=new Array(r),o=0;o<r;++o)for(var s=n[o],a=s.length,l=i[o]=new Array(a),u,c,h=0;h<a;++h)(u=s[h])&&(c=e.call(u,u.__data__,h,s))&&("__data__"in u&&(c.__data__=u.__data__),l[h]=c);return new ot(i,this._parents)}function ps(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function ms(){return[]}function wi(e){return e==null?ms:function(){return this.querySelectorAll(e)}}function ys(e){return function(){return ps(e.apply(this,arguments))}}function vs(e){typeof e=="function"?e=ys(e):e=wi(e);for(var n=this._groups,r=n.length,i=[],o=[],s=0;s<r;++s)for(var a=n[s],l=a.length,u,c=0;c<l;++c)(u=a[c])&&(i.push(e.call(u,u.__data__,c,a)),o.push(u));return new ot(i,o)}function ki(e){return function(){return this.matches(e)}}function Si(e){return function(n){return n.matches(e)}}var _s=Array.prototype.find;function xs(e){return function(){return _s.call(this.children,e)}}function bs(){return this.firstElementChild}function ws(e){return this.select(e==null?bs:xs(typeof e=="function"?e:Si(e)))}var ks=Array.prototype.filter;function Ss(){return Array.from(this.children)}function Cs(e){return function(){return ks.call(this.children,e)}}function As(e){return this.selectAll(e==null?Ss:Cs(typeof e=="function"?e:Si(e)))}function Ms(e){typeof e!="function"&&(e=ki(e));for(var n=this._groups,r=n.length,i=new Array(r),o=0;o<r;++o)for(var s=n[o],a=s.length,l=i[o]=[],u,c=0;c<a;++c)(u=s[c])&&e.call(u,u.__data__,c,s)&&l.push(u);return new ot(i,this._parents)}function Ci(e){return new Array(e.length)}function Ts(){return new ot(this._enter||this._groups.map(Ci),this._parents)}function Le(e,n){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=n}Le.prototype={constructor:Le,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,n){return this._parent.insertBefore(e,n)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function Es(e){return function(){return e}}function Os(e,n,r,i,o,s){for(var a=0,l,u=n.length,c=s.length;a<c;++a)(l=n[a])?(l.__data__=s[a],i[a]=l):r[a]=new Le(e,s[a]);for(;a<u;++a)(l=n[a])&&(o[a]=l)}function zs(e,n,r,i,o,s,a){var l,u,c=new Map,h=n.length,f=s.length,d=new Array(h),g;for(l=0;l<h;++l)(u=n[l])&&(d[l]=g=a.call(u,u.__data__,l,n)+"",c.has(g)?o[l]=u:c.set(g,u));for(l=0;l<f;++l)g=a.call(e,s[l],l,s)+"",(u=c.get(g))?(i[l]=u,u.__data__=s[l],c.delete(g)):r[l]=new Le(e,s[l]);for(l=0;l<h;++l)(u=n[l])&&c.get(d[l])===u&&(o[l]=u)}function Ps(e){return e.__data__}function Is(e,n){if(!arguments.length)return Array.from(this,Ps);var r=n?zs:Os,i=this._parents,o=this._groups;typeof e!="function"&&(e=Es(e));for(var s=o.length,a=new Array(s),l=new Array(s),u=new Array(s),c=0;c<s;++c){var h=i[c],f=o[c],d=f.length,g=Rs(e.call(h,h&&h.__data__,c,i)),m=g.length,v=l[c]=new Array(m),y=a[c]=new Array(m),p=u[c]=new Array(d);r(h,f,v,y,p,g,n);for(var x=0,C=0,b,_;x<m;++x)if(b=v[x]){for(x>=C&&(C=x+1);!(_=y[C])&&++C<m;);b._next=_||null}}return a=new ot(a,i),a._enter=l,a._exit=u,a}function Rs(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function Ns(){return new ot(this._exit||this._groups.map(Ci),this._parents)}function js(e,n,r){var i=this.enter(),o=this,s=this.exit();return typeof e=="function"?(i=e(i),i&&(i=i.selection())):i=i.append(e+""),n!=null&&(o=n(o),o&&(o=o.selection())),r==null?s.remove():r(s),i&&o?i.merge(o).order():o}function Ds(e){for(var n=e.selection?e.selection():e,r=this._groups,i=n._groups,o=r.length,s=i.length,a=Math.min(o,s),l=new Array(o),u=0;u<a;++u)for(var c=r[u],h=i[u],f=c.length,d=l[u]=new Array(f),g,m=0;m<f;++m)(g=c[m]||h[m])&&(d[m]=g);for(;u<o;++u)l[u]=r[u];return new ot(l,this._parents)}function $s(){for(var e=this._groups,n=-1,r=e.length;++n<r;)for(var i=e[n],o=i.length-1,s=i[o],a;--o>=0;)(a=i[o])&&(s&&a.compareDocumentPosition(s)^4&&s.parentNode.insertBefore(a,s),s=a);return this}function Fs(e){e||(e=Ls);function n(f,d){return f&&d?e(f.__data__,d.__data__):!f-!d}for(var r=this._groups,i=r.length,o=new Array(i),s=0;s<i;++s){for(var a=r[s],l=a.length,u=o[s]=new Array(l),c,h=0;h<l;++h)(c=a[h])&&(u[h]=c);u.sort(n)}return new ot(o,this._parents).order()}function Ls(e,n){return e<n?-1:e>n?1:e>=n?0:NaN}function Us(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function Hs(){return Array.from(this)}function qs(){for(var e=this._groups,n=0,r=e.length;n<r;++n)for(var i=e[n],o=0,s=i.length;o<s;++o){var a=i[o];if(a)return a}return null}function Vs(){let e=0;for(const n of this)++e;return e}function Ws(){return!this.node()}function Gs(e){for(var n=this._groups,r=0,i=n.length;r<i;++r)for(var o=n[r],s=0,a=o.length,l;s<a;++s)(l=o[s])&&e.call(l,l.__data__,s,o);return this}function Bs(e){return function(){this.removeAttribute(e)}}function Xs(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Ks(e,n){return function(){this.setAttribute(e,n)}}function Ys(e,n){return function(){this.setAttributeNS(e.space,e.local,n)}}function Zs(e,n){return function(){var r=n.apply(this,arguments);r==null?this.removeAttribute(e):this.setAttribute(e,r)}}function Qs(e,n){return function(){var r=n.apply(this,arguments);r==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,r)}}function Js(e,n){var r=Je(e);if(arguments.length<2){var i=this.node();return r.local?i.getAttributeNS(r.space,r.local):i.getAttribute(r)}return this.each((n==null?r.local?Xs:Bs:typeof n=="function"?r.local?Qs:Zs:r.local?Ys:Ks)(r,n))}function Ai(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function ta(e){return function(){this.style.removeProperty(e)}}function ea(e,n,r){return function(){this.style.setProperty(e,n,r)}}function na(e,n,r){return function(){var i=n.apply(this,arguments);i==null?this.style.removeProperty(e):this.style.setProperty(e,i,r)}}function ra(e,n,r){return arguments.length>1?this.each((n==null?ta:typeof n=="function"?na:ea)(e,n,r??"")):Zt(this.node(),e)}function Zt(e,n){return e.style.getPropertyValue(n)||Ai(e).getComputedStyle(e,null).getPropertyValue(n)}function ia(e){return function(){delete this[e]}}function oa(e,n){return function(){this[e]=n}}function sa(e,n){return function(){var r=n.apply(this,arguments);r==null?delete this[e]:this[e]=r}}function aa(e,n){return arguments.length>1?this.each((n==null?ia:typeof n=="function"?sa:oa)(e,n)):this.node()[e]}function Mi(e){return e.trim().split(/^|\s+/)}function qn(e){return e.classList||new Ti(e)}function Ti(e){this._node=e,this._names=Mi(e.getAttribute("class")||"")}Ti.prototype={add:function(e){var n=this._names.indexOf(e);n<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var n=this._names.indexOf(e);n>=0&&(this._names.splice(n,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function Ei(e,n){for(var r=qn(e),i=-1,o=n.length;++i<o;)r.add(n[i])}function Oi(e,n){for(var r=qn(e),i=-1,o=n.length;++i<o;)r.remove(n[i])}function la(e){return function(){Ei(this,e)}}function ua(e){return function(){Oi(this,e)}}function ca(e,n){return function(){(n.apply(this,arguments)?Ei:Oi)(this,e)}}function fa(e,n){var r=Mi(e+"");if(arguments.length<2){for(var i=qn(this.node()),o=-1,s=r.length;++o<s;)if(!i.contains(r[o]))return!1;return!0}return this.each((typeof n=="function"?ca:n?la:ua)(r,n))}function ha(){this.textContent=""}function da(e){return function(){this.textContent=e}}function ga(e){return function(){var n=e.apply(this,arguments);this.textContent=n??""}}function pa(e){return arguments.length?this.each(e==null?ha:(typeof e=="function"?ga:da)(e)):this.node().textContent}function ma(){this.innerHTML=""}function ya(e){return function(){this.innerHTML=e}}function va(e){return function(){var n=e.apply(this,arguments);this.innerHTML=n??""}}function _a(e){return arguments.length?this.each(e==null?ma:(typeof e=="function"?va:ya)(e)):this.node().innerHTML}function xa(){this.nextSibling&&this.parentNode.appendChild(this)}function ba(){return this.each(xa)}function wa(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function ka(){return this.each(wa)}function Sa(e){var n=typeof e=="function"?e:bi(e);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function Ca(){return null}function Aa(e,n){var r=typeof e=="function"?e:bi(e),i=n==null?Ca:typeof n=="function"?n:Hn(n);return this.select(function(){return this.insertBefore(r.apply(this,arguments),i.apply(this,arguments)||null)})}function Ma(){var e=this.parentNode;e&&e.removeChild(this)}function Ta(){return this.each(Ma)}function Ea(){var e=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function Oa(){var e=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function za(e){return this.select(e?Oa:Ea)}function Pa(e){return arguments.length?this.property("__data__",e):this.node().__data__}function Ia(e){return function(n){e.call(this,n,this.__data__)}}function Ra(e){return e.trim().split(/^|\s+/).map(function(n){var r="",i=n.indexOf(".");return i>=0&&(r=n.slice(i+1),n=n.slice(0,i)),{type:n,name:r}})}function Na(e){return function(){var n=this.__on;if(n){for(var r=0,i=-1,o=n.length,s;r<o;++r)s=n[r],(!e.type||s.type===e.type)&&s.name===e.name?this.removeEventListener(s.type,s.listener,s.options):n[++i]=s;++i?n.length=i:delete this.__on}}}function ja(e,n,r){return function(){var i=this.__on,o,s=Ia(n);if(i){for(var a=0,l=i.length;a<l;++a)if((o=i[a]).type===e.type&&o.name===e.name){this.removeEventListener(o.type,o.listener,o.options),this.addEventListener(o.type,o.listener=s,o.options=r),o.value=n;return}}this.addEventListener(e.type,s,r),o={type:e.type,name:e.name,value:n,listener:s,options:r},i?i.push(o):this.__on=[o]}}function Da(e,n,r){var i=Ra(e+""),o,s=i.length,a;if(arguments.length<2){var l=this.node().__on;if(l){for(var u=0,c=l.length,h;u<c;++u)for(o=0,h=l[u];o<s;++o)if((a=i[o]).type===h.type&&a.name===h.name)return h.value}return}for(l=n?ja:Na,o=0;o<s;++o)this.each(l(i[o],n,r));return this}function zi(e,n,r){var i=Ai(e),o=i.CustomEvent;typeof o=="function"?o=new o(n,r):(o=i.document.createEvent("Event"),r?(o.initEvent(n,r.bubbles,r.cancelable),o.detail=r.detail):o.initEvent(n,!1,!1)),e.dispatchEvent(o)}function $a(e,n){return function(){return zi(this,e,n)}}function Fa(e,n){return function(){return zi(this,e,n.apply(this,arguments))}}function La(e,n){return this.each((typeof n=="function"?Fa:$a)(e,n))}function*Ua(){for(var e=this._groups,n=0,r=e.length;n<r;++n)for(var i=e[n],o=0,s=i.length,a;o<s;++o)(a=i[o])&&(yield a)}var Pi=[null];function ot(e,n){this._groups=e,this._parents=n}function ke(){return new ot([[document.documentElement]],Pi)}function Ha(){return this}ot.prototype=ke.prototype={constructor:ot,select:gs,selectAll:vs,selectChild:ws,selectChildren:As,filter:Ms,data:Is,enter:Ts,exit:Ns,join:js,merge:Ds,selection:Ha,order:$s,sort:Fs,call:Us,nodes:Hs,node:qs,size:Vs,empty:Ws,each:Gs,attr:Js,style:ra,property:aa,classed:fa,text:pa,html:_a,raise:ba,lower:ka,append:Sa,insert:Aa,remove:Ta,clone:za,datum:Pa,on:Da,dispatch:La,[Symbol.iterator]:Ua};function ut(e){return typeof e=="string"?new ot([[document.querySelector(e)]],[document.documentElement]):new ot([[e]],Pi)}function qa(e){let n;for(;n=e.sourceEvent;)e=n;return e}function vt(e,n){if(e=qa(e),n===void 0&&(n=e.currentTarget),n){var r=n.ownerSVGElement||n;if(r.createSVGPoint){var i=r.createSVGPoint();return i.x=e.clientX,i.y=e.clientY,i=i.matrixTransform(n.getScreenCTM().inverse()),[i.x,i.y]}if(n.getBoundingClientRect){var o=n.getBoundingClientRect();return[e.clientX-o.left-n.clientLeft,e.clientY-o.top-n.clientTop]}}return[e.pageX,e.pageY]}var Va={value:()=>{}};function Se(){for(var e=0,n=arguments.length,r={},i;e<n;++e){if(!(i=arguments[e]+"")||i in r||/[\s.]/.test(i))throw new Error("illegal type: "+i);r[i]=[]}return new Re(r)}function Re(e){this._=e}function Wa(e,n){return e.trim().split(/^|\s+/).map(function(r){var i="",o=r.indexOf(".");if(o>=0&&(i=r.slice(o+1),r=r.slice(0,o)),r&&!n.hasOwnProperty(r))throw new Error("unknown type: "+r);return{type:r,name:i}})}Re.prototype=Se.prototype={constructor:Re,on:function(e,n){var r=this._,i=Wa(e+"",r),o,s=-1,a=i.length;if(arguments.length<2){for(;++s<a;)if((o=(e=i[s]).type)&&(o=Ga(r[o],e.name)))return o;return}if(n!=null&&typeof n!="function")throw new Error("invalid callback: "+n);for(;++s<a;)if(o=(e=i[s]).type)r[o]=dr(r[o],e.name,n);else if(n==null)for(o in r)r[o]=dr(r[o],e.name,null);return this},copy:function(){var e={},n=this._;for(var r in n)e[r]=n[r].slice();return new Re(e)},call:function(e,n){if((o=arguments.length-2)>0)for(var r=new Array(o),i=0,o,s;i<o;++i)r[i]=arguments[i+2];if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(s=this._[e],i=0,o=s.length;i<o;++i)s[i].value.apply(n,r)},apply:function(e,n,r){if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(var i=this._[e],o=0,s=i.length;o<s;++o)i[o].value.apply(n,r)}};function Ga(e,n){for(var r=0,i=e.length,o;r<i;++r)if((o=e[r]).name===n)return o.value}function dr(e,n,r){for(var i=0,o=e.length;i<o;++i)if(e[i].name===n){e[i]=Va,e=e.slice(0,i).concat(e.slice(i+1));break}return r!=null&&e.push({name:n,value:r}),e}const Ba={passive:!1},me={capture:!0,passive:!1};function un(e){e.stopImmediatePropagation()}function Kt(e){e.preventDefault(),e.stopImmediatePropagation()}function Ii(e){var n=e.document.documentElement,r=ut(e).on("dragstart.drag",Kt,me);"onselectstart"in n?r.on("selectstart.drag",Kt,me):(n.__noselect=n.style.MozUserSelect,n.style.MozUserSelect="none")}function Ri(e,n){var r=e.document.documentElement,i=ut(e).on("dragstart.drag",null);n&&(i.on("click.drag",Kt,me),setTimeout(function(){i.on("click.drag",null)},0)),"onselectstart"in r?i.on("selectstart.drag",null):(r.style.MozUserSelect=r.__noselect,delete r.__noselect)}const Me=e=>()=>e;function Sn(e,{sourceEvent:n,subject:r,target:i,identifier:o,active:s,x:a,y:l,dx:u,dy:c,dispatch:h}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},subject:{value:r,enumerable:!0,configurable:!0},target:{value:i,enumerable:!0,configurable:!0},identifier:{value:o,enumerable:!0,configurable:!0},active:{value:s,enumerable:!0,configurable:!0},x:{value:a,enumerable:!0,configurable:!0},y:{value:l,enumerable:!0,configurable:!0},dx:{value:u,enumerable:!0,configurable:!0},dy:{value:c,enumerable:!0,configurable:!0},_:{value:h}})}Sn.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function Xa(e){return!e.ctrlKey&&!e.button}function Ka(){return this.parentNode}function Ya(e,n){return n??{x:e.x,y:e.y}}function Za(){return navigator.maxTouchPoints||"ontouchstart"in this}function Qa(){var e=Xa,n=Ka,r=Ya,i=Za,o={},s=Se("start","drag","end"),a=0,l,u,c,h,f=0;function d(b){b.on("mousedown.drag",g).filter(i).on("touchstart.drag",y).on("touchmove.drag",p,Ba).on("touchend.drag touchcancel.drag",x).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function g(b,_){if(!(h||!e.call(this,b,_))){var k=C(this,n.call(this,b,_),b,_,"mouse");k&&(ut(b.view).on("mousemove.drag",m,me).on("mouseup.drag",v,me),Ii(b.view),un(b),c=!1,l=b.clientX,u=b.clientY,k("start",b))}}function m(b){if(Kt(b),!c){var _=b.clientX-l,k=b.clientY-u;c=_*_+k*k>f}o.mouse("drag",b)}function v(b){ut(b.view).on("mousemove.drag mouseup.drag",null),Ri(b.view,c),Kt(b),o.mouse("end",b)}function y(b,_){if(e.call(this,b,_)){var k=b.changedTouches,S=n.call(this,b,_),M=k.length,z,E;for(z=0;z<M;++z)(E=C(this,S,b,_,k[z].identifier,k[z]))&&(un(b),E("start",b,k[z]))}}function p(b){var _=b.changedTouches,k=_.length,S,M;for(S=0;S<k;++S)(M=o[_[S].identifier])&&(Kt(b),M("drag",b,_[S]))}function x(b){var _=b.changedTouches,k=_.length,S,M;for(h&&clearTimeout(h),h=setTimeout(function(){h=null},500),S=0;S<k;++S)(M=o[_[S].identifier])&&(un(b),M("end",b,_[S]))}function C(b,_,k,S,M,z){var E=s.copy(),I=vt(z||k,_),N,$,A;if((A=r.call(b,new Sn("beforestart",{sourceEvent:k,target:d,identifier:M,active:a,x:I[0],y:I[1],dx:0,dy:0,dispatch:E}),S))!=null)return N=A.x-I[0]||0,$=A.y-I[1]||0,function P(T,j,F){var U=I,H;switch(T){case"start":o[M]=P,H=a++;break;case"end":delete o[M],--a;case"drag":I=vt(F||j,_),H=a;break}E.call(T,b,new Sn(T,{sourceEvent:j,subject:A,target:d,identifier:M,active:H,x:I[0]+N,y:I[1]+$,dx:I[0]-U[0],dy:I[1]-U[1],dispatch:E}),S)}}return d.filter=function(b){return arguments.length?(e=typeof b=="function"?b:Me(!!b),d):e},d.container=function(b){return arguments.length?(n=typeof b=="function"?b:Me(b),d):n},d.subject=function(b){return arguments.length?(r=typeof b=="function"?b:Me(b),d):r},d.touchable=function(b){return arguments.length?(i=typeof b=="function"?b:Me(!!b),d):i},d.on=function(){var b=s.on.apply(s,arguments);return b===s?d:b},d.clickDistance=function(b){return arguments.length?(f=(b=+b)*b,d):Math.sqrt(f)},d}function Vn(e,n,r){e.prototype=n.prototype=r,r.constructor=e}function Ni(e,n){var r=Object.create(e.prototype);for(var i in n)r[i]=n[i];return r}function Ce(){}var ye=.7,Ue=1/ye,Yt="\\s*([+-]?\\d+)\\s*",ve="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",xt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Ja=/^#([0-9a-f]{3,8})$/,tl=new RegExp(`^rgb\\(${Yt},${Yt},${Yt}\\)$`),el=new RegExp(`^rgb\\(${xt},${xt},${xt}\\)$`),nl=new RegExp(`^rgba\\(${Yt},${Yt},${Yt},${ve}\\)$`),rl=new RegExp(`^rgba\\(${xt},${xt},${xt},${ve}\\)$`),il=new RegExp(`^hsl\\(${ve},${xt},${xt}\\)$`),ol=new RegExp(`^hsla\\(${ve},${xt},${xt},${ve}\\)$`),gr={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};Vn(Ce,_e,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:pr,formatHex:pr,formatHex8:sl,formatHsl:al,formatRgb:mr,toString:mr});function pr(){return this.rgb().formatHex()}function sl(){return this.rgb().formatHex8()}function al(){return ji(this).formatHsl()}function mr(){return this.rgb().formatRgb()}function _e(e){var n,r;return e=(e+"").trim().toLowerCase(),(n=Ja.exec(e))?(r=n[1].length,n=parseInt(n[1],16),r===6?yr(n):r===3?new nt(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):r===8?Te(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):r===4?Te(n>>12&15|n>>8&240,n>>8&15|n>>4&240,n>>4&15|n&240,((n&15)<<4|n&15)/255):null):(n=tl.exec(e))?new nt(n[1],n[2],n[3],1):(n=el.exec(e))?new nt(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=nl.exec(e))?Te(n[1],n[2],n[3],n[4]):(n=rl.exec(e))?Te(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=il.exec(e))?xr(n[1],n[2]/100,n[3]/100,1):(n=ol.exec(e))?xr(n[1],n[2]/100,n[3]/100,n[4]):gr.hasOwnProperty(e)?yr(gr[e]):e==="transparent"?new nt(NaN,NaN,NaN,0):null}function yr(e){return new nt(e>>16&255,e>>8&255,e&255,1)}function Te(e,n,r,i){return i<=0&&(e=n=r=NaN),new nt(e,n,r,i)}function ll(e){return e instanceof Ce||(e=_e(e)),e?(e=e.rgb(),new nt(e.r,e.g,e.b,e.opacity)):new nt}function Cn(e,n,r,i){return arguments.length===1?ll(e):new nt(e,n,r,i??1)}function nt(e,n,r,i){this.r=+e,this.g=+n,this.b=+r,this.opacity=+i}Vn(nt,Cn,Ni(Ce,{brighter(e){return e=e==null?Ue:Math.pow(Ue,e),new nt(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?ye:Math.pow(ye,e),new nt(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new nt(Ht(this.r),Ht(this.g),Ht(this.b),He(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:vr,formatHex:vr,formatHex8:ul,formatRgb:_r,toString:_r}));function vr(){return`#${Ut(this.r)}${Ut(this.g)}${Ut(this.b)}`}function ul(){return`#${Ut(this.r)}${Ut(this.g)}${Ut(this.b)}${Ut((isNaN(this.opacity)?1:this.opacity)*255)}`}function _r(){const e=He(this.opacity);return`${e===1?"rgb(":"rgba("}${Ht(this.r)}, ${Ht(this.g)}, ${Ht(this.b)}${e===1?")":`, ${e})`}`}function He(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Ht(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Ut(e){return e=Ht(e),(e<16?"0":"")+e.toString(16)}function xr(e,n,r,i){return i<=0?e=n=r=NaN:r<=0||r>=1?e=n=NaN:n<=0&&(e=NaN),new gt(e,n,r,i)}function ji(e){if(e instanceof gt)return new gt(e.h,e.s,e.l,e.opacity);if(e instanceof Ce||(e=_e(e)),!e)return new gt;if(e instanceof gt)return e;e=e.rgb();var n=e.r/255,r=e.g/255,i=e.b/255,o=Math.min(n,r,i),s=Math.max(n,r,i),a=NaN,l=s-o,u=(s+o)/2;return l?(n===s?a=(r-i)/l+(r<i)*6:r===s?a=(i-n)/l+2:a=(n-r)/l+4,l/=u<.5?s+o:2-s-o,a*=60):l=u>0&&u<1?0:a,new gt(a,l,u,e.opacity)}function cl(e,n,r,i){return arguments.length===1?ji(e):new gt(e,n,r,i??1)}function gt(e,n,r,i){this.h=+e,this.s=+n,this.l=+r,this.opacity=+i}Vn(gt,cl,Ni(Ce,{brighter(e){return e=e==null?Ue:Math.pow(Ue,e),new gt(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?ye:Math.pow(ye,e),new gt(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,n=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,i=r+(r<.5?r:1-r)*n,o=2*r-i;return new nt(cn(e>=240?e-240:e+120,o,i),cn(e,o,i),cn(e<120?e+240:e-120,o,i),this.opacity)},clamp(){return new gt(br(this.h),Ee(this.s),Ee(this.l),He(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=He(this.opacity);return`${e===1?"hsl(":"hsla("}${br(this.h)}, ${Ee(this.s)*100}%, ${Ee(this.l)*100}%${e===1?")":`, ${e})`}`}}));function br(e){return e=(e||0)%360,e<0?e+360:e}function Ee(e){return Math.max(0,Math.min(1,e||0))}function cn(e,n,r){return(e<60?n+(r-n)*e/60:e<180?r:e<240?n+(r-n)*(240-e)/60:n)*255}const Di=e=>()=>e;function fl(e,n){return function(r){return e+r*n}}function hl(e,n,r){return e=Math.pow(e,r),n=Math.pow(n,r)-e,r=1/r,function(i){return Math.pow(e+i*n,r)}}function dl(e){return(e=+e)==1?$i:function(n,r){return r-n?hl(n,r,e):Di(isNaN(n)?r:n)}}function $i(e,n){var r=n-e;return r?fl(e,r):Di(isNaN(e)?n:e)}const wr=(function e(n){var r=dl(n);function i(o,s){var a=r((o=Cn(o)).r,(s=Cn(s)).r),l=r(o.g,s.g),u=r(o.b,s.b),c=$i(o.opacity,s.opacity);return function(h){return o.r=a(h),o.g=l(h),o.b=u(h),o.opacity=c(h),o+""}}return i.gamma=e,i})(1);function Dt(e,n){return e=+e,n=+n,function(r){return e*(1-r)+n*r}}var An=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,fn=new RegExp(An.source,"g");function gl(e){return function(){return e}}function pl(e){return function(n){return e(n)+""}}function ml(e,n){var r=An.lastIndex=fn.lastIndex=0,i,o,s,a=-1,l=[],u=[];for(e=e+"",n=n+"";(i=An.exec(e))&&(o=fn.exec(n));)(s=o.index)>r&&(s=n.slice(r,s),l[a]?l[a]+=s:l[++a]=s),(i=i[0])===(o=o[0])?l[a]?l[a]+=o:l[++a]=o:(l[++a]=null,u.push({i:a,x:Dt(i,o)})),r=fn.lastIndex;return r<n.length&&(s=n.slice(r),l[a]?l[a]+=s:l[++a]=s),l.length<2?u[0]?pl(u[0].x):gl(n):(n=u.length,function(c){for(var h=0,f;h<n;++h)l[(f=u[h]).i]=f.x(c);return l.join("")})}var kr=180/Math.PI,Mn={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Fi(e,n,r,i,o,s){var a,l,u;return(a=Math.sqrt(e*e+n*n))&&(e/=a,n/=a),(u=e*r+n*i)&&(r-=e*u,i-=n*u),(l=Math.sqrt(r*r+i*i))&&(r/=l,i/=l,u/=l),e*i<n*r&&(e=-e,n=-n,u=-u,a=-a),{translateX:o,translateY:s,rotate:Math.atan2(n,e)*kr,skewX:Math.atan(u)*kr,scaleX:a,scaleY:l}}var Oe;function yl(e){const n=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return n.isIdentity?Mn:Fi(n.a,n.b,n.c,n.d,n.e,n.f)}function vl(e){return e==null||(Oe||(Oe=document.createElementNS("http://www.w3.org/2000/svg","g")),Oe.setAttribute("transform",e),!(e=Oe.transform.baseVal.consolidate()))?Mn:(e=e.matrix,Fi(e.a,e.b,e.c,e.d,e.e,e.f))}function Li(e,n,r,i){function o(c){return c.length?c.pop()+" ":""}function s(c,h,f,d,g,m){if(c!==f||h!==d){var v=g.push("translate(",null,n,null,r);m.push({i:v-4,x:Dt(c,f)},{i:v-2,x:Dt(h,d)})}else(f||d)&&g.push("translate("+f+n+d+r)}function a(c,h,f,d){c!==h?(c-h>180?h+=360:h-c>180&&(c+=360),d.push({i:f.push(o(f)+"rotate(",null,i)-2,x:Dt(c,h)})):h&&f.push(o(f)+"rotate("+h+i)}function l(c,h,f,d){c!==h?d.push({i:f.push(o(f)+"skewX(",null,i)-2,x:Dt(c,h)}):h&&f.push(o(f)+"skewX("+h+i)}function u(c,h,f,d,g,m){if(c!==f||h!==d){var v=g.push(o(g)+"scale(",null,",",null,")");m.push({i:v-4,x:Dt(c,f)},{i:v-2,x:Dt(h,d)})}else(f!==1||d!==1)&&g.push(o(g)+"scale("+f+","+d+")")}return function(c,h){var f=[],d=[];return c=e(c),h=e(h),s(c.translateX,c.translateY,h.translateX,h.translateY,f,d),a(c.rotate,h.rotate,f,d),l(c.skewX,h.skewX,f,d),u(c.scaleX,c.scaleY,h.scaleX,h.scaleY,f,d),c=h=null,function(g){for(var m=-1,v=d.length,y;++m<v;)f[(y=d[m]).i]=y.x(g);return f.join("")}}}var _l=Li(yl,"px, ","px)","deg)"),xl=Li(vl,", ",")",")"),bl=1e-12;function Sr(e){return((e=Math.exp(e))+1/e)/2}function wl(e){return((e=Math.exp(e))-1/e)/2}function kl(e){return((e=Math.exp(2*e))-1)/(e+1)}const Sl=(function e(n,r,i){function o(s,a){var l=s[0],u=s[1],c=s[2],h=a[0],f=a[1],d=a[2],g=h-l,m=f-u,v=g*g+m*m,y,p;if(v<bl)p=Math.log(d/c)/n,y=function(S){return[l+S*g,u+S*m,c*Math.exp(n*S*p)]};else{var x=Math.sqrt(v),C=(d*d-c*c+i*v)/(2*c*r*x),b=(d*d-c*c-i*v)/(2*d*r*x),_=Math.log(Math.sqrt(C*C+1)-C),k=Math.log(Math.sqrt(b*b+1)-b);p=(k-_)/n,y=function(S){var M=S*p,z=Sr(_),E=c/(r*x)*(z*kl(n*M+_)-wl(_));return[l+E*g,u+E*m,c*z/Sr(n*M+_)]}}return y.duration=p*1e3*n/Math.SQRT2,y}return o.rho=function(s){var a=Math.max(.001,+s),l=a*a,u=l*l;return e(a,l,u)},o})(Math.SQRT2,2,4);var Qt=0,ue=0,te=0,Ui=1e3,qe,ce,Ve=0,Vt=0,tn=0,xe=typeof performance=="object"&&performance.now?performance:Date,Hi=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Wn(){return Vt||(Hi(Cl),Vt=xe.now()+tn)}function Cl(){Vt=0}function We(){this._call=this._time=this._next=null}We.prototype=Gn.prototype={constructor:We,restart:function(e,n,r){if(typeof e!="function")throw new TypeError("callback is not a function");r=(r==null?Wn():+r)+(n==null?0:+n),!this._next&&ce!==this&&(ce?ce._next=this:qe=this,ce=this),this._call=e,this._time=r,Tn()},stop:function(){this._call&&(this._call=null,this._time=1/0,Tn())}};function Gn(e,n,r){var i=new We;return i.restart(e,n,r),i}function Al(){Wn(),++Qt;for(var e=qe,n;e;)(n=Vt-e._time)>=0&&e._call.call(void 0,n),e=e._next;--Qt}function Cr(){Vt=(Ve=xe.now())+tn,Qt=ue=0;try{Al()}finally{Qt=0,Tl(),Vt=0}}function Ml(){var e=xe.now(),n=e-Ve;n>Ui&&(tn-=n,Ve=e)}function Tl(){for(var e,n=qe,r,i=1/0;n;)n._call?(i>n._time&&(i=n._time),e=n,n=n._next):(r=n._next,n._next=null,n=e?e._next=r:qe=r);ce=e,Tn(i)}function Tn(e){if(!Qt){ue&&(ue=clearTimeout(ue));var n=e-Vt;n>24?(e<1/0&&(ue=setTimeout(Cr,e-xe.now()-tn)),te&&(te=clearInterval(te))):(te||(Ve=xe.now(),te=setInterval(Ml,Ui)),Qt=1,Hi(Cr))}}function Ar(e,n,r){var i=new We;return n=n==null?0:+n,i.restart(o=>{i.stop(),e(o+n)},n,r),i}var El=Se("start","end","cancel","interrupt"),Ol=[],qi=0,Mr=1,En=2,Ne=3,Tr=4,On=5,je=6;function en(e,n,r,i,o,s){var a=e.__transition;if(!a)e.__transition={};else if(r in a)return;zl(e,r,{name:n,index:i,group:o,on:El,tween:Ol,time:s.time,delay:s.delay,duration:s.duration,ease:s.ease,timer:null,state:qi})}function Bn(e,n){var r=mt(e,n);if(r.state>qi)throw new Error("too late; already scheduled");return r}function wt(e,n){var r=mt(e,n);if(r.state>Ne)throw new Error("too late; already running");return r}function mt(e,n){var r=e.__transition;if(!r||!(r=r[n]))throw new Error("transition not found");return r}function zl(e,n,r){var i=e.__transition,o;i[n]=r,r.timer=Gn(s,0,r.time);function s(c){r.state=Mr,r.timer.restart(a,r.delay,r.time),r.delay<=c&&a(c-r.delay)}function a(c){var h,f,d,g;if(r.state!==Mr)return u();for(h in i)if(g=i[h],g.name===r.name){if(g.state===Ne)return Ar(a);g.state===Tr?(g.state=je,g.timer.stop(),g.on.call("interrupt",e,e.__data__,g.index,g.group),delete i[h]):+h<n&&(g.state=je,g.timer.stop(),g.on.call("cancel",e,e.__data__,g.index,g.group),delete i[h])}if(Ar(function(){r.state===Ne&&(r.state=Tr,r.timer.restart(l,r.delay,r.time),l(c))}),r.state=En,r.on.call("start",e,e.__data__,r.index,r.group),r.state===En){for(r.state=Ne,o=new Array(d=r.tween.length),h=0,f=-1;h<d;++h)(g=r.tween[h].value.call(e,e.__data__,r.index,r.group))&&(o[++f]=g);o.length=f+1}}function l(c){for(var h=c<r.duration?r.ease.call(null,c/r.duration):(r.timer.restart(u),r.state=On,1),f=-1,d=o.length;++f<d;)o[f].call(e,h);r.state===On&&(r.on.call("end",e,e.__data__,r.index,r.group),u())}function u(){r.state=je,r.timer.stop(),delete i[n];for(var c in i)return;delete e.__transition}}function De(e,n){var r=e.__transition,i,o,s=!0,a;if(r){n=n==null?null:n+"";for(a in r){if((i=r[a]).name!==n){s=!1;continue}o=i.state>En&&i.state<On,i.state=je,i.timer.stop(),i.on.call(o?"interrupt":"cancel",e,e.__data__,i.index,i.group),delete r[a]}s&&delete e.__transition}}function Pl(e){return this.each(function(){De(this,e)})}function Il(e,n){var r,i;return function(){var o=wt(this,e),s=o.tween;if(s!==r){i=r=s;for(var a=0,l=i.length;a<l;++a)if(i[a].name===n){i=i.slice(),i.splice(a,1);break}}o.tween=i}}function Rl(e,n,r){var i,o;if(typeof r!="function")throw new Error;return function(){var s=wt(this,e),a=s.tween;if(a!==i){o=(i=a).slice();for(var l={name:n,value:r},u=0,c=o.length;u<c;++u)if(o[u].name===n){o[u]=l;break}u===c&&o.push(l)}s.tween=o}}function Nl(e,n){var r=this._id;if(e+="",arguments.length<2){for(var i=mt(this.node(),r).tween,o=0,s=i.length,a;o<s;++o)if((a=i[o]).name===e)return a.value;return null}return this.each((n==null?Il:Rl)(r,e,n))}function Xn(e,n,r){var i=e._id;return e.each(function(){var o=wt(this,i);(o.value||(o.value={}))[n]=r.apply(this,arguments)}),function(o){return mt(o,i).value[n]}}function Vi(e,n){var r;return(typeof n=="number"?Dt:n instanceof _e?wr:(r=_e(n))?(n=r,wr):ml)(e,n)}function jl(e){return function(){this.removeAttribute(e)}}function Dl(e){return function(){this.removeAttributeNS(e.space,e.local)}}function $l(e,n,r){var i,o=r+"",s;return function(){var a=this.getAttribute(e);return a===o?null:a===i?s:s=n(i=a,r)}}function Fl(e,n,r){var i,o=r+"",s;return function(){var a=this.getAttributeNS(e.space,e.local);return a===o?null:a===i?s:s=n(i=a,r)}}function Ll(e,n,r){var i,o,s;return function(){var a,l=r(this),u;return l==null?void this.removeAttribute(e):(a=this.getAttribute(e),u=l+"",a===u?null:a===i&&u===o?s:(o=u,s=n(i=a,l)))}}function Ul(e,n,r){var i,o,s;return function(){var a,l=r(this),u;return l==null?void this.removeAttributeNS(e.space,e.local):(a=this.getAttributeNS(e.space,e.local),u=l+"",a===u?null:a===i&&u===o?s:(o=u,s=n(i=a,l)))}}function Hl(e,n){var r=Je(e),i=r==="transform"?xl:Vi;return this.attrTween(e,typeof n=="function"?(r.local?Ul:Ll)(r,i,Xn(this,"attr."+e,n)):n==null?(r.local?Dl:jl)(r):(r.local?Fl:$l)(r,i,n))}function ql(e,n){return function(r){this.setAttribute(e,n.call(this,r))}}function Vl(e,n){return function(r){this.setAttributeNS(e.space,e.local,n.call(this,r))}}function Wl(e,n){var r,i;function o(){var s=n.apply(this,arguments);return s!==i&&(r=(i=s)&&Vl(e,s)),r}return o._value=n,o}function Gl(e,n){var r,i;function o(){var s=n.apply(this,arguments);return s!==i&&(r=(i=s)&&ql(e,s)),r}return o._value=n,o}function Bl(e,n){var r="attr."+e;if(arguments.length<2)return(r=this.tween(r))&&r._value;if(n==null)return this.tween(r,null);if(typeof n!="function")throw new Error;var i=Je(e);return this.tween(r,(i.local?Wl:Gl)(i,n))}function Xl(e,n){return function(){Bn(this,e).delay=+n.apply(this,arguments)}}function Kl(e,n){return n=+n,function(){Bn(this,e).delay=n}}function Yl(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?Xl:Kl)(n,e)):mt(this.node(),n).delay}function Zl(e,n){return function(){wt(this,e).duration=+n.apply(this,arguments)}}function Ql(e,n){return n=+n,function(){wt(this,e).duration=n}}function Jl(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?Zl:Ql)(n,e)):mt(this.node(),n).duration}function tu(e,n){if(typeof n!="function")throw new Error;return function(){wt(this,e).ease=n}}function eu(e){var n=this._id;return arguments.length?this.each(tu(n,e)):mt(this.node(),n).ease}function nu(e,n){return function(){var r=n.apply(this,arguments);if(typeof r!="function")throw new Error;wt(this,e).ease=r}}function ru(e){if(typeof e!="function")throw new Error;return this.each(nu(this._id,e))}function iu(e){typeof e!="function"&&(e=ki(e));for(var n=this._groups,r=n.length,i=new Array(r),o=0;o<r;++o)for(var s=n[o],a=s.length,l=i[o]=[],u,c=0;c<a;++c)(u=s[c])&&e.call(u,u.__data__,c,s)&&l.push(u);return new Rt(i,this._parents,this._name,this._id)}function ou(e){if(e._id!==this._id)throw new Error;for(var n=this._groups,r=e._groups,i=n.length,o=r.length,s=Math.min(i,o),a=new Array(i),l=0;l<s;++l)for(var u=n[l],c=r[l],h=u.length,f=a[l]=new Array(h),d,g=0;g<h;++g)(d=u[g]||c[g])&&(f[g]=d);for(;l<i;++l)a[l]=n[l];return new Rt(a,this._parents,this._name,this._id)}function su(e){return(e+"").trim().split(/^|\s+/).every(function(n){var r=n.indexOf(".");return r>=0&&(n=n.slice(0,r)),!n||n==="start"})}function au(e,n,r){var i,o,s=su(n)?Bn:wt;return function(){var a=s(this,e),l=a.on;l!==i&&(o=(i=l).copy()).on(n,r),a.on=o}}function lu(e,n){var r=this._id;return arguments.length<2?mt(this.node(),r).on.on(e):this.each(au(r,e,n))}function uu(e){return function(){var n=this.parentNode;for(var r in this.__transition)if(+r!==e)return;n&&n.removeChild(this)}}function cu(){return this.on("end.remove",uu(this._id))}function fu(e){var n=this._name,r=this._id;typeof e!="function"&&(e=Hn(e));for(var i=this._groups,o=i.length,s=new Array(o),a=0;a<o;++a)for(var l=i[a],u=l.length,c=s[a]=new Array(u),h,f,d=0;d<u;++d)(h=l[d])&&(f=e.call(h,h.__data__,d,l))&&("__data__"in h&&(f.__data__=h.__data__),c[d]=f,en(c[d],n,r,d,c,mt(h,r)));return new Rt(s,this._parents,n,r)}function hu(e){var n=this._name,r=this._id;typeof e!="function"&&(e=wi(e));for(var i=this._groups,o=i.length,s=[],a=[],l=0;l<o;++l)for(var u=i[l],c=u.length,h,f=0;f<c;++f)if(h=u[f]){for(var d=e.call(h,h.__data__,f,u),g,m=mt(h,r),v=0,y=d.length;v<y;++v)(g=d[v])&&en(g,n,r,v,d,m);s.push(d),a.push(h)}return new Rt(s,a,n,r)}var du=ke.prototype.constructor;function gu(){return new du(this._groups,this._parents)}function pu(e,n){var r,i,o;return function(){var s=Zt(this,e),a=(this.style.removeProperty(e),Zt(this,e));return s===a?null:s===r&&a===i?o:o=n(r=s,i=a)}}function Wi(e){return function(){this.style.removeProperty(e)}}function mu(e,n,r){var i,o=r+"",s;return function(){var a=Zt(this,e);return a===o?null:a===i?s:s=n(i=a,r)}}function yu(e,n,r){var i,o,s;return function(){var a=Zt(this,e),l=r(this),u=l+"";return l==null&&(u=l=(this.style.removeProperty(e),Zt(this,e))),a===u?null:a===i&&u===o?s:(o=u,s=n(i=a,l))}}function vu(e,n){var r,i,o,s="style."+n,a="end."+s,l;return function(){var u=wt(this,e),c=u.on,h=u.value[s]==null?l||(l=Wi(n)):void 0;(c!==r||o!==h)&&(i=(r=c).copy()).on(a,o=h),u.on=i}}function _u(e,n,r){var i=(e+="")=="transform"?_l:Vi;return n==null?this.styleTween(e,pu(e,i)).on("end.style."+e,Wi(e)):typeof n=="function"?this.styleTween(e,yu(e,i,Xn(this,"style."+e,n))).each(vu(this._id,e)):this.styleTween(e,mu(e,i,n),r).on("end.style."+e,null)}function xu(e,n,r){return function(i){this.style.setProperty(e,n.call(this,i),r)}}function bu(e,n,r){var i,o;function s(){var a=n.apply(this,arguments);return a!==o&&(i=(o=a)&&xu(e,a,r)),i}return s._value=n,s}function wu(e,n,r){var i="style."+(e+="");if(arguments.length<2)return(i=this.tween(i))&&i._value;if(n==null)return this.tween(i,null);if(typeof n!="function")throw new Error;return this.tween(i,bu(e,n,r??""))}function ku(e){return function(){this.textContent=e}}function Su(e){return function(){var n=e(this);this.textContent=n??""}}function Cu(e){return this.tween("text",typeof e=="function"?Su(Xn(this,"text",e)):ku(e==null?"":e+""))}function Au(e){return function(n){this.textContent=e.call(this,n)}}function Mu(e){var n,r;function i(){var o=e.apply(this,arguments);return o!==r&&(n=(r=o)&&Au(o)),n}return i._value=e,i}function Tu(e){var n="text";if(arguments.length<1)return(n=this.tween(n))&&n._value;if(e==null)return this.tween(n,null);if(typeof e!="function")throw new Error;return this.tween(n,Mu(e))}function Eu(){for(var e=this._name,n=this._id,r=Gi(),i=this._groups,o=i.length,s=0;s<o;++s)for(var a=i[s],l=a.length,u,c=0;c<l;++c)if(u=a[c]){var h=mt(u,n);en(u,e,r,c,a,{time:h.time+h.delay+h.duration,delay:0,duration:h.duration,ease:h.ease})}return new Rt(i,this._parents,e,r)}function Ou(){var e,n,r=this,i=r._id,o=r.size();return new Promise(function(s,a){var l={value:a},u={value:function(){--o===0&&s()}};r.each(function(){var c=wt(this,i),h=c.on;h!==e&&(n=(e=h).copy(),n._.cancel.push(l),n._.interrupt.push(l),n._.end.push(u)),c.on=n}),o===0&&s()})}var zu=0;function Rt(e,n,r,i){this._groups=e,this._parents=n,this._name=r,this._id=i}function Gi(){return++zu}var At=ke.prototype;Rt.prototype={constructor:Rt,select:fu,selectAll:hu,selectChild:At.selectChild,selectChildren:At.selectChildren,filter:iu,merge:ou,selection:gu,transition:Eu,call:At.call,nodes:At.nodes,node:At.node,size:At.size,empty:At.empty,each:At.each,on:lu,attr:Hl,attrTween:Bl,style:_u,styleTween:wu,text:Cu,textTween:Tu,remove:cu,tween:Nl,delay:Yl,duration:Jl,ease:eu,easeVarying:ru,end:Ou,[Symbol.iterator]:At[Symbol.iterator]};function Pu(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var Iu={time:null,delay:0,duration:250,ease:Pu};function Ru(e,n){for(var r;!(r=e.__transition)||!(r=r[n]);)if(!(e=e.parentNode))throw new Error(`transition ${n} not found`);return r}function Nu(e){var n,r;e instanceof Rt?(n=e._id,e=e._name):(n=Gi(),(r=Iu).time=Wn(),e=e==null?null:e+"");for(var i=this._groups,o=i.length,s=0;s<o;++s)for(var a=i[s],l=a.length,u,c=0;c<l;++c)(u=a[c])&&en(u,e,n,c,a,r||Ru(u,n));return new Rt(i,this._parents,e,n)}ke.prototype.interrupt=Pl;ke.prototype.transition=Nu;const ze=e=>()=>e;function ju(e,{sourceEvent:n,target:r,transform:i,dispatch:o}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},transform:{value:i,enumerable:!0,configurable:!0},_:{value:o}})}function zt(e,n,r){this.k=e,this.x=n,this.y=r}zt.prototype={constructor:zt,scale:function(e){return e===1?this:new zt(this.k*e,this.x,this.y)},translate:function(e,n){return e===0&n===0?this:new zt(this.k,this.x+this.k*e,this.y+this.k*n)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var Kn=new zt(1,0,0);yt.prototype=zt.prototype;function yt(e){for(;!e.__zoom;)if(!(e=e.parentNode))return Kn;return e.__zoom}function hn(e){e.stopImmediatePropagation()}function ee(e){e.preventDefault(),e.stopImmediatePropagation()}function Du(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function $u(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute("viewBox")?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function Er(){return this.__zoom||Kn}function Fu(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function Lu(){return navigator.maxTouchPoints||"ontouchstart"in this}function Uu(e,n,r){var i=e.invertX(n[0][0])-r[0][0],o=e.invertX(n[1][0])-r[1][0],s=e.invertY(n[0][1])-r[0][1],a=e.invertY(n[1][1])-r[1][1];return e.translate(o>i?(i+o)/2:Math.min(0,i)||Math.max(0,o),a>s?(s+a)/2:Math.min(0,s)||Math.max(0,a))}function Hu(){var e=Du,n=$u,r=Uu,i=Fu,o=Lu,s=[0,1/0],a=[[-1/0,-1/0],[1/0,1/0]],l=250,u=Sl,c=Se("start","zoom","end"),h,f,d,g=500,m=150,v=0,y=10;function p(A){A.property("__zoom",Er).on("wheel.zoom",M,{passive:!1}).on("mousedown.zoom",z).on("dblclick.zoom",E).filter(o).on("touchstart.zoom",I).on("touchmove.zoom",N).on("touchend.zoom touchcancel.zoom",$).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}p.transform=function(A,P,T,j){var F=A.selection?A.selection():A;F.property("__zoom",Er),A!==F?_(A,P,T,j):F.interrupt().each(function(){k(this,arguments).event(j).start().zoom(null,typeof P=="function"?P.apply(this,arguments):P).end()})},p.scaleBy=function(A,P,T,j){p.scaleTo(A,function(){var F=this.__zoom.k,U=typeof P=="function"?P.apply(this,arguments):P;return F*U},T,j)},p.scaleTo=function(A,P,T,j){p.transform(A,function(){var F=n.apply(this,arguments),U=this.__zoom,H=T==null?b(F):typeof T=="function"?T.apply(this,arguments):T,q=U.invert(H),V=typeof P=="function"?P.apply(this,arguments):P;return r(C(x(U,V),H,q),F,a)},T,j)},p.translateBy=function(A,P,T,j){p.transform(A,function(){return r(this.__zoom.translate(typeof P=="function"?P.apply(this,arguments):P,typeof T=="function"?T.apply(this,arguments):T),n.apply(this,arguments),a)},null,j)},p.translateTo=function(A,P,T,j,F){p.transform(A,function(){var U=n.apply(this,arguments),H=this.__zoom,q=j==null?b(U):typeof j=="function"?j.apply(this,arguments):j;return r(Kn.translate(q[0],q[1]).scale(H.k).translate(typeof P=="function"?-P.apply(this,arguments):-P,typeof T=="function"?-T.apply(this,arguments):-T),U,a)},j,F)};function x(A,P){return P=Math.max(s[0],Math.min(s[1],P)),P===A.k?A:new zt(P,A.x,A.y)}function C(A,P,T){var j=P[0]-T[0]*A.k,F=P[1]-T[1]*A.k;return j===A.x&&F===A.y?A:new zt(A.k,j,F)}function b(A){return[(+A[0][0]+ +A[1][0])/2,(+A[0][1]+ +A[1][1])/2]}function _(A,P,T,j){A.on("start.zoom",function(){k(this,arguments).event(j).start()}).on("interrupt.zoom end.zoom",function(){k(this,arguments).event(j).end()}).tween("zoom",function(){var F=this,U=arguments,H=k(F,U).event(j),q=n.apply(F,U),V=T==null?b(q):typeof T=="function"?T.apply(F,U):T,B=Math.max(q[1][0]-q[0][0],q[1][1]-q[0][1]),K=F.__zoom,ft=typeof P=="function"?P.apply(F,U):P,kt=u(K.invert(V).concat(B/K.k),ft.invert(V).concat(B/ft.k));return function(ht){if(ht===1)ht=ft;else{var St=kt(ht),ln=B/St[2];ht=new zt(ln,V[0]-St[0]*ln,V[1]-St[1]*ln)}H.zoom(null,ht)}})}function k(A,P,T){return!T&&A.__zooming||new S(A,P)}function S(A,P){this.that=A,this.args=P,this.active=0,this.sourceEvent=null,this.extent=n.apply(A,P),this.taps=0}S.prototype={event:function(A){return A&&(this.sourceEvent=A),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(A,P){return this.mouse&&A!=="mouse"&&(this.mouse[1]=P.invert(this.mouse[0])),this.touch0&&A!=="touch"&&(this.touch0[1]=P.invert(this.touch0[0])),this.touch1&&A!=="touch"&&(this.touch1[1]=P.invert(this.touch1[0])),this.that.__zoom=P,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(A){var P=ut(this.that).datum();c.call(A,this.that,new ju(A,{sourceEvent:this.sourceEvent,target:p,transform:this.that.__zoom,dispatch:c}),P)}};function M(A,...P){if(!e.apply(this,arguments))return;var T=k(this,P).event(A),j=this.__zoom,F=Math.max(s[0],Math.min(s[1],j.k*Math.pow(2,i.apply(this,arguments)))),U=vt(A);if(T.wheel)(T.mouse[0][0]!==U[0]||T.mouse[0][1]!==U[1])&&(T.mouse[1]=j.invert(T.mouse[0]=U)),clearTimeout(T.wheel);else{if(j.k===F)return;T.mouse=[U,j.invert(U)],De(this),T.start()}ee(A),T.wheel=setTimeout(H,m),T.zoom("mouse",r(C(x(j,F),T.mouse[0],T.mouse[1]),T.extent,a));function H(){T.wheel=null,T.end()}}function z(A,...P){if(d||!e.apply(this,arguments))return;var T=A.currentTarget,j=k(this,P,!0).event(A),F=ut(A.view).on("mousemove.zoom",V,!0).on("mouseup.zoom",B,!0),U=vt(A,T),H=A.clientX,q=A.clientY;Ii(A.view),hn(A),j.mouse=[U,this.__zoom.invert(U)],De(this),j.start();function V(K){if(ee(K),!j.moved){var ft=K.clientX-H,kt=K.clientY-q;j.moved=ft*ft+kt*kt>v}j.event(K).zoom("mouse",r(C(j.that.__zoom,j.mouse[0]=vt(K,T),j.mouse[1]),j.extent,a))}function B(K){F.on("mousemove.zoom mouseup.zoom",null),Ri(K.view,j.moved),ee(K),j.event(K).end()}}function E(A,...P){if(e.apply(this,arguments)){var T=this.__zoom,j=vt(A.changedTouches?A.changedTouches[0]:A,this),F=T.invert(j),U=T.k*(A.shiftKey?.5:2),H=r(C(x(T,U),j,F),n.apply(this,P),a);ee(A),l>0?ut(this).transition().duration(l).call(_,H,j,A):ut(this).call(p.transform,H,j,A)}}function I(A,...P){if(e.apply(this,arguments)){var T=A.touches,j=T.length,F=k(this,P,A.changedTouches.length===j).event(A),U,H,q,V;for(hn(A),H=0;H<j;++H)q=T[H],V=vt(q,this),V=[V,this.__zoom.invert(V),q.identifier],F.touch0?!F.touch1&&F.touch0[2]!==V[2]&&(F.touch1=V,F.taps=0):(F.touch0=V,U=!0,F.taps=1+!!h);h&&(h=clearTimeout(h)),U&&(F.taps<2&&(f=V[0],h=setTimeout(function(){h=null},g)),De(this),F.start())}}function N(A,...P){if(this.__zooming){var T=k(this,P).event(A),j=A.changedTouches,F=j.length,U,H,q,V;for(ee(A),U=0;U<F;++U)H=j[U],q=vt(H,this),T.touch0&&T.touch0[2]===H.identifier?T.touch0[0]=q:T.touch1&&T.touch1[2]===H.identifier&&(T.touch1[0]=q);if(H=T.that.__zoom,T.touch1){var B=T.touch0[0],K=T.touch0[1],ft=T.touch1[0],kt=T.touch1[1],ht=(ht=ft[0]-B[0])*ht+(ht=ft[1]-B[1])*ht,St=(St=kt[0]-K[0])*St+(St=kt[1]-K[1])*St;H=x(H,Math.sqrt(ht/St)),q=[(B[0]+ft[0])/2,(B[1]+ft[1])/2],V=[(K[0]+kt[0])/2,(K[1]+kt[1])/2]}else if(T.touch0)q=T.touch0[0],V=T.touch0[1];else return;T.zoom("touch",r(C(H,q,V),T.extent,a))}}function $(A,...P){if(this.__zooming){var T=k(this,P).event(A),j=A.changedTouches,F=j.length,U,H;for(hn(A),d&&clearTimeout(d),d=setTimeout(function(){d=null},g),U=0;U<F;++U)H=j[U],T.touch0&&T.touch0[2]===H.identifier?delete T.touch0:T.touch1&&T.touch1[2]===H.identifier&&delete T.touch1;if(T.touch1&&!T.touch0&&(T.touch0=T.touch1,delete T.touch1),T.touch0)T.touch0[1]=this.__zoom.invert(T.touch0[0]);else if(T.end(),T.taps===2&&(H=vt(H,this),Math.hypot(f[0]-H[0],f[1]-H[1])<y)){var q=ut(this).on("dblclick.zoom");q&&q.apply(this,arguments)}}}return p.wheelDelta=function(A){return arguments.length?(i=typeof A=="function"?A:ze(+A),p):i},p.filter=function(A){return arguments.length?(e=typeof A=="function"?A:ze(!!A),p):e},p.touchable=function(A){return arguments.length?(o=typeof A=="function"?A:ze(!!A),p):o},p.extent=function(A){return arguments.length?(n=typeof A=="function"?A:ze([[+A[0][0],+A[0][1]],[+A[1][0],+A[1][1]]]),p):n},p.scaleExtent=function(A){return arguments.length?(s[0]=+A[0],s[1]=+A[1],p):[s[0],s[1]]},p.translateExtent=function(A){return arguments.length?(a[0][0]=+A[0][0],a[1][0]=+A[1][0],a[0][1]=+A[0][1],a[1][1]=+A[1][1],p):[[a[0][0],a[0][1]],[a[1][0],a[1][1]]]},p.constrain=function(A){return arguments.length?(r=A,p):r},p.duration=function(A){return arguments.length?(l=+A,p):l},p.interpolate=function(A){return arguments.length?(u=A,p):u},p.on=function(){var A=c.on.apply(c,arguments);return A===c?p:A},p.clickDistance=function(A){return arguments.length?(v=(A=+A)*A,p):Math.sqrt(v)},p.tapDistance=function(A){return arguments.length?(y=+A,p):y},p}class Or extends Map{constructor(n,r=Wu){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:r}}),n!=null)for(const[i,o]of n)this.set(i,o)}get(n){return super.get(zr(this,n))}has(n){return super.has(zr(this,n))}set(n,r){return super.set(qu(this,n),r)}delete(n){return super.delete(Vu(this,n))}}function zr({_intern:e,_key:n},r){const i=n(r);return e.has(i)?e.get(i):r}function qu({_intern:e,_key:n},r){const i=n(r);return e.has(i)?e.get(i):(e.set(i,r),r)}function Vu({_intern:e,_key:n},r){const i=n(r);return e.has(i)&&(r=e.get(i),e.delete(i)),r}function Wu(e){return e!==null&&typeof e=="object"?e.valueOf():e}function Pr(e,n){let r;if(n===void 0)for(const i of e)i!=null&&(r<i||r===void 0&&i>=i)&&(r=i);else{let i=-1;for(let o of e)(o=n(o,++i,e))!=null&&(r<o||r===void 0&&o>=o)&&(r=o)}return r}function Ir(e,n){let r;if(n===void 0)for(const i of e)i!=null&&(r>i||r===void 0&&i>=i)&&(r=i);else{let i=-1;for(let o of e)(o=n(o,++i,e))!=null&&(r>o||r===void 0&&o>=o)&&(r=o)}return r}function Gu(e,n){let r=0;for(let i of e)(i=+i)&&(r+=i);return r}var Bu=typeof global=="object"&&global&&global.Object===Object&&global,Xu=typeof self=="object"&&self&&self.Object===Object&&self,Bi=Bu||Xu||Function("return this")(),Ge=Bi.Symbol,Xi=Object.prototype,Ku=Xi.hasOwnProperty,Yu=Xi.toString,ne=Ge?Ge.toStringTag:void 0;function Zu(e){var n=Ku.call(e,ne),r=e[ne];try{e[ne]=void 0;var i=!0}catch{}var o=Yu.call(e);return i&&(n?e[ne]=r:delete e[ne]),o}var Qu=Object.prototype,Ju=Qu.toString;function tc(e){return Ju.call(e)}var ec="[object Null]",nc="[object Undefined]",Rr=Ge?Ge.toStringTag:void 0;function rc(e){return e==null?e===void 0?nc:ec:Rr&&Rr in Object(e)?Zu(e):tc(e)}function ic(e){return e!=null&&typeof e=="object"}var oc="[object Symbol]";function sc(e){return typeof e=="symbol"||ic(e)&&rc(e)==oc}var ac=/\s/;function lc(e){for(var n=e.length;n--&&ac.test(e.charAt(n)););return n}var uc=/^\s+/;function cc(e){return e&&e.slice(0,lc(e)+1).replace(uc,"")}function Be(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}var Nr=NaN,fc=/^[-+]0x[0-9a-f]+$/i,hc=/^0b[01]+$/i,dc=/^0o[0-7]+$/i,gc=parseInt;function jr(e){if(typeof e=="number")return e;if(sc(e))return Nr;if(Be(e)){var n=typeof e.valueOf=="function"?e.valueOf():e;e=Be(n)?n+"":n}if(typeof e!="string")return e===0?e:+e;e=cc(e);var r=hc.test(e);return r||dc.test(e)?gc(e.slice(2),r?2:8):fc.test(e)?Nr:+e}var dn=function(){return Bi.Date.now()},pc="Expected a function",mc=Math.max,yc=Math.min;function Ki(e,n,r){var i,o,s,a,l,u,c=0,h=!1,f=!1,d=!0;if(typeof e!="function")throw new TypeError(pc);n=jr(n)||0,Be(r)&&(h=!!r.leading,f="maxWait"in r,s=f?mc(jr(r.maxWait)||0,n):s,d="trailing"in r?!!r.trailing:d);function g(k){var S=i,M=o;return i=o=void 0,c=k,a=e.apply(M,S),a}function m(k){return c=k,l=setTimeout(p,n),h?g(k):a}function v(k){var S=k-u,M=k-c,z=n-S;return f?yc(z,s-M):z}function y(k){var S=k-u,M=k-c;return u===void 0||S>=n||S<0||f&&M>=s}function p(){var k=dn();if(y(k))return x(k);l=setTimeout(p,v(k))}function x(k){return l=void 0,d&&i?g(k):(i=o=void 0,a)}function C(){l!==void 0&&clearTimeout(l),c=0,i=u=o=l=void 0}function b(){return l===void 0?a:x(dn())}function _(){var k=dn(),S=y(k);if(i=arguments,o=this,u=k,S){if(l===void 0)return m(u);if(f)return clearTimeout(l),l=setTimeout(p,n),g(u)}return l===void 0&&(l=setTimeout(p,n)),a}return _.cancel=C,_.flush=b,_}var vc="Expected a function";function _c(e,n,r){var i=!0,o=!0;if(typeof e!="function")throw new TypeError(vc);return Be(r)&&(i="leading"in r?!!r.leading:i,o="trailing"in r?!!r.trailing:o),Ki(e,n,{leading:i,maxWait:n,trailing:o})}var qt=Object.freeze({Linear:Object.freeze({None:function(e){return e},In:function(e){return e},Out:function(e){return e},InOut:function(e){return e}}),Quadratic:Object.freeze({In:function(e){return e*e},Out:function(e){return e*(2-e)},InOut:function(e){return(e*=2)<1?.5*e*e:-.5*(--e*(e-2)-1)}}),Cubic:Object.freeze({In:function(e){return e*e*e},Out:function(e){return--e*e*e+1},InOut:function(e){return(e*=2)<1?.5*e*e*e:.5*((e-=2)*e*e+2)}}),Quartic:Object.freeze({In:function(e){return e*e*e*e},Out:function(e){return 1- --e*e*e*e},InOut:function(e){return(e*=2)<1?.5*e*e*e*e:-.5*((e-=2)*e*e*e-2)}}),Quintic:Object.freeze({In:function(e){return e*e*e*e*e},Out:function(e){return--e*e*e*e*e+1},InOut:function(e){return(e*=2)<1?.5*e*e*e*e*e:.5*((e-=2)*e*e*e*e+2)}}),Sinusoidal:Object.freeze({In:function(e){return 1-Math.sin((1-e)*Math.PI/2)},Out:function(e){return Math.sin(e*Math.PI/2)},InOut:function(e){return .5*(1-Math.sin(Math.PI*(.5-e)))}}),Exponential:Object.freeze({In:function(e){return e===0?0:Math.pow(1024,e-1)},Out:function(e){return e===1?1:1-Math.pow(2,-10*e)},InOut:function(e){return e===0?0:e===1?1:(e*=2)<1?.5*Math.pow(1024,e-1):.5*(-Math.pow(2,-10*(e-1))+2)}}),Circular:Object.freeze({In:function(e){return 1-Math.sqrt(1-e*e)},Out:function(e){return Math.sqrt(1- --e*e)},InOut:function(e){return(e*=2)<1?-.5*(Math.sqrt(1-e*e)-1):.5*(Math.sqrt(1-(e-=2)*e)+1)}}),Elastic:Object.freeze({In:function(e){return e===0?0:e===1?1:-Math.pow(2,10*(e-1))*Math.sin((e-1.1)*5*Math.PI)},Out:function(e){return e===0?0:e===1?1:Math.pow(2,-10*e)*Math.sin((e-.1)*5*Math.PI)+1},InOut:function(e){return e===0?0:e===1?1:(e*=2,e<1?-.5*Math.pow(2,10*(e-1))*Math.sin((e-1.1)*5*Math.PI):.5*Math.pow(2,-10*(e-1))*Math.sin((e-1.1)*5*Math.PI)+1)}}),Back:Object.freeze({In:function(e){var n=1.70158;return e===1?1:e*e*((n+1)*e-n)},Out:function(e){var n=1.70158;return e===0?0:--e*e*((n+1)*e+n)+1},InOut:function(e){var n=2.5949095;return(e*=2)<1?.5*(e*e*((n+1)*e-n)):.5*((e-=2)*e*((n+1)*e+n)+2)}}),Bounce:Object.freeze({In:function(e){return 1-qt.Bounce.Out(1-e)},Out:function(e){return e<1/2.75?7.5625*e*e:e<2/2.75?7.5625*(e-=1.5/2.75)*e+.75:e<2.5/2.75?7.5625*(e-=2.25/2.75)*e+.9375:7.5625*(e-=2.625/2.75)*e+.984375},InOut:function(e){return e<.5?qt.Bounce.In(e*2)*.5:qt.Bounce.Out(e*2-1)*.5+.5}}),generatePow:function(e){return e===void 0&&(e=4),e=e<Number.EPSILON?Number.EPSILON:e,e=e>1e4?1e4:e,{In:function(n){return Math.pow(n,e)},Out:function(n){return 1-Math.pow(1-n,e)},InOut:function(n){return n<.5?Math.pow(n*2,e)/2:(1-Math.pow(2-n*2,e))/2+.5}}}}),fe=function(){return performance.now()},Yi=(function(){function e(){for(var n=[],r=0;r<arguments.length;r++)n[r]=arguments[r];this._tweens={},this._tweensAddedDuringUpdate={},this.add.apply(this,n)}return e.prototype.getAll=function(){var n=this;return Object.keys(this._tweens).map(function(r){return n._tweens[r]})},e.prototype.removeAll=function(){this._tweens={}},e.prototype.add=function(){for(var n,r=[],i=0;i<arguments.length;i++)r[i]=arguments[i];for(var o=0,s=r;o<s.length;o++){var a=s[o];(n=a._group)===null||n===void 0||n.remove(a),a._group=this,this._tweens[a.getId()]=a,this._tweensAddedDuringUpdate[a.getId()]=a}},e.prototype.remove=function(){for(var n=[],r=0;r<arguments.length;r++)n[r]=arguments[r];for(var i=0,o=n;i<o.length;i++){var s=o[i];s._group=void 0,delete this._tweens[s.getId()],delete this._tweensAddedDuringUpdate[s.getId()]}},e.prototype.allStopped=function(){return this.getAll().every(function(n){return!n.isPlaying()})},e.prototype.update=function(n,r){n===void 0&&(n=fe()),r===void 0&&(r=!0);var i=Object.keys(this._tweens);if(i.length!==0)for(;i.length>0;){this._tweensAddedDuringUpdate={};for(var o=0;o<i.length;o++){var s=this._tweens[i[o]],a=!r;s&&s.update(n,a)===!1&&!r&&this.remove(s)}i=Object.keys(this._tweensAddedDuringUpdate)}},e})(),zn={Linear:function(e,n){var r=e.length-1,i=r*n,o=Math.floor(i),s=zn.Utils.Linear;return n<0?s(e[0],e[1],i):n>1?s(e[r],e[r-1],r-i):s(e[o],e[o+1>r?r:o+1],i-o)},Utils:{Linear:function(e,n,r){return(n-e)*r+e}}},Zi=(function(){function e(){}return e.nextId=function(){return e._nextId++},e._nextId=0,e})(),Pn=new Yi,Dr=(function(){function e(n,r){this._isPaused=!1,this._pauseStart=0,this._valuesStart={},this._valuesEnd={},this._valuesStartRepeat={},this._duration=1e3,this._isDynamic=!1,this._initialRepeat=0,this._repeat=0,this._yoyo=!1,this._isPlaying=!1,this._reversed=!1,this._delayTime=0,this._startTime=0,this._easingFunction=qt.Linear.None,this._interpolationFunction=zn.Linear,this._chainedTweens=[],this._onStartCallbackFired=!1,this._onEveryStartCallbackFired=!1,this._id=Zi.nextId(),this._isChainStopped=!1,this._propertiesAreSetUp=!1,this._goToEnd=!1,this._object=n,typeof r=="object"?(this._group=r,r.add(this)):r===!0&&(this._group=Pn,Pn.add(this))}return e.prototype.getId=function(){return this._id},e.prototype.isPlaying=function(){return this._isPlaying},e.prototype.isPaused=function(){return this._isPaused},e.prototype.getDuration=function(){return this._duration},e.prototype.to=function(n,r){if(r===void 0&&(r=1e3),this._isPlaying)throw new Error("Can not call Tween.to() while Tween is already started or paused. Stop the Tween first.");return this._valuesEnd=n,this._propertiesAreSetUp=!1,this._duration=r<0?0:r,this},e.prototype.duration=function(n){return n===void 0&&(n=1e3),this._duration=n<0?0:n,this},e.prototype.dynamic=function(n){return n===void 0&&(n=!1),this._isDynamic=n,this},e.prototype.start=function(n,r){if(n===void 0&&(n=fe()),r===void 0&&(r=!1),this._isPlaying)return this;if(this._repeat=this._initialRepeat,this._reversed){this._reversed=!1;for(var i in this._valuesStartRepeat)this._swapEndStartRepeatValues(i),this._valuesStart[i]=this._valuesStartRepeat[i]}if(this._isPlaying=!0,this._isPaused=!1,this._onStartCallbackFired=!1,this._onEveryStartCallbackFired=!1,this._isChainStopped=!1,this._startTime=n,this._startTime+=this._delayTime,!this._propertiesAreSetUp||r){if(this._propertiesAreSetUp=!0,!this._isDynamic){var o={};for(var s in this._valuesEnd)o[s]=this._valuesEnd[s];this._valuesEnd=o}this._setupProperties(this._object,this._valuesStart,this._valuesEnd,this._valuesStartRepeat,r)}return this},e.prototype.startFromCurrentValues=function(n){return this.start(n,!0)},e.prototype._setupProperties=function(n,r,i,o,s){for(var a in i){var l=n[a],u=Array.isArray(l),c=u?"array":typeof l,h=!u&&Array.isArray(i[a]);if(!(c==="undefined"||c==="function")){if(h){var f=i[a];if(f.length===0)continue;for(var d=[l],g=0,m=f.length;g<m;g+=1){var v=this._handleRelativeValue(l,f[g]);if(isNaN(v)){h=!1,console.warn("Found invalid interpolation list. Skipping.");break}d.push(v)}h&&(i[a]=d)}if((c==="object"||u)&&l&&!h){r[a]=u?[]:{};var y=l;for(var p in y)r[a][p]=y[p];o[a]=u?[]:{};var f=i[a];if(!this._isDynamic){var x={};for(var p in f)x[p]=f[p];i[a]=f=x}this._setupProperties(y,r[a],f,o[a],s)}else(typeof r[a]>"u"||s)&&(r[a]=l),u||(r[a]*=1),h?o[a]=i[a].slice().reverse():o[a]=r[a]||0}}},e.prototype.stop=function(){return this._isChainStopped||(this._isChainStopped=!0,this.stopChainedTweens()),this._isPlaying?(this._isPlaying=!1,this._isPaused=!1,this._onStopCallback&&this._onStopCallback(this._object),this):this},e.prototype.end=function(){return this._goToEnd=!0,this.update(this._startTime+this._duration),this},e.prototype.pause=function(n){return n===void 0&&(n=fe()),this._isPaused||!this._isPlaying?this:(this._isPaused=!0,this._pauseStart=n,this)},e.prototype.resume=function(n){return n===void 0&&(n=fe()),!this._isPaused||!this._isPlaying?this:(this._isPaused=!1,this._startTime+=n-this._pauseStart,this._pauseStart=0,this)},e.prototype.stopChainedTweens=function(){for(var n=0,r=this._chainedTweens.length;n<r;n++)this._chainedTweens[n].stop();return this},e.prototype.group=function(n){return n?(n.add(this),this):(console.warn("tween.group() without args has been removed, use group.add(tween) instead."),this)},e.prototype.remove=function(){var n;return(n=this._group)===null||n===void 0||n.remove(this),this},e.prototype.delay=function(n){return n===void 0&&(n=0),this._delayTime=n,this},e.prototype.repeat=function(n){return n===void 0&&(n=0),this._initialRepeat=n,this._repeat=n,this},e.prototype.repeatDelay=function(n){return this._repeatDelayTime=n,this},e.prototype.yoyo=function(n){return n===void 0&&(n=!1),this._yoyo=n,this},e.prototype.easing=function(n){return n===void 0&&(n=qt.Linear.None),this._easingFunction=n,this},e.prototype.interpolation=function(n){return n===void 0&&(n=zn.Linear),this._interpolationFunction=n,this},e.prototype.chain=function(){for(var n=[],r=0;r<arguments.length;r++)n[r]=arguments[r];return this._chainedTweens=n,this},e.prototype.onStart=function(n){return this._onStartCallback=n,this},e.prototype.onEveryStart=function(n){return this._onEveryStartCallback=n,this},e.prototype.onUpdate=function(n){return this._onUpdateCallback=n,this},e.prototype.onRepeat=function(n){return this._onRepeatCallback=n,this},e.prototype.onComplete=function(n){return this._onCompleteCallback=n,this},e.prototype.onStop=function(n){return this._onStopCallback=n,this},e.prototype.update=function(n,r){var i=this,o;if(n===void 0&&(n=fe()),r===void 0&&(r=e.autoStartOnUpdate),this._isPaused)return!0;var s;if(!this._goToEnd&&!this._isPlaying)if(r)this.start(n,!0);else return!1;if(this._goToEnd=!1,n<this._startTime)return!0;this._onStartCallbackFired===!1&&(this._onStartCallback&&this._onStartCallback(this._object),this._onStartCallbackFired=!0),this._onEveryStartCallbackFired===!1&&(this._onEveryStartCallback&&this._onEveryStartCallback(this._object),this._onEveryStartCallbackFired=!0);var a=n-this._startTime,l=this._duration+((o=this._repeatDelayTime)!==null&&o!==void 0?o:this._delayTime),u=this._duration+this._repeat*l,c=function(){if(i._duration===0||a>u)return 1;var v=Math.trunc(a/l),y=a-v*l,p=Math.min(y/i._duration,1);return p===0&&a===i._duration?1:p},h=c(),f=this._easingFunction(h);if(this._updateProperties(this._object,this._valuesStart,this._valuesEnd,f),this._onUpdateCallback&&this._onUpdateCallback(this._object,h),this._duration===0||a>=this._duration)if(this._repeat>0){var d=Math.min(Math.trunc((a-this._duration)/l)+1,this._repeat);isFinite(this._repeat)&&(this._repeat-=d);for(s in this._valuesStartRepeat)!this._yoyo&&typeof this._valuesEnd[s]=="string"&&(this._valuesStartRepeat[s]=this._valuesStartRepeat[s]+parseFloat(this._valuesEnd[s])),this._yoyo&&this._swapEndStartRepeatValues(s),this._valuesStart[s]=this._valuesStartRepeat[s];return this._yoyo&&(this._reversed=!this._reversed),this._startTime+=l*d,this._onRepeatCallback&&this._onRepeatCallback(this._object),this._onEveryStartCallbackFired=!1,!0}else{this._onCompleteCallback&&this._onCompleteCallback(this._object);for(var g=0,m=this._chainedTweens.length;g<m;g++)this._chainedTweens[g].start(this._startTime+this._duration,!1);return this._isPlaying=!1,!1}return!0},e.prototype._updateProperties=function(n,r,i,o){for(var s in i)if(r[s]!==void 0){var a=r[s]||0,l=i[s],u=Array.isArray(n[s]),c=Array.isArray(l),h=!u&&c;h?n[s]=this._interpolationFunction(l,o):typeof l=="object"&&l?this._updateProperties(n[s],a,l,o):(l=this._handleRelativeValue(a,l),typeof l=="number"&&(n[s]=a+(l-a)*o))}},e.prototype._handleRelativeValue=function(n,r){return typeof r!="string"?r:r.charAt(0)==="+"||r.charAt(0)==="-"?n+parseFloat(r):parseFloat(r)},e.prototype._swapEndStartRepeatValues=function(n){var r=this._valuesStartRepeat[n],i=this._valuesEnd[n];typeof i=="string"?this._valuesStartRepeat[n]=this._valuesStartRepeat[n]+parseFloat(i):this._valuesStartRepeat[n]=this._valuesEnd[n],this._valuesEnd[n]=r},e.autoStartOnUpdate=!1,e})();Zi.nextId;var bt=Pn;bt.getAll.bind(bt);bt.removeAll.bind(bt);bt.add.bind(bt);bt.remove.bind(bt);bt.update.bind(bt);function $r(e,n){(n==null||n>e.length)&&(n=e.length);for(var r=0,i=Array(n);r<n;r++)i[r]=e[r];return i}function xc(e){if(Array.isArray(e))return e}function bc(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}function wc(e,n,r){return Object.defineProperty(e,"prototype",{writable:!1}),e}function kc(e,n){var r=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(r!=null){var i,o,s,a,l=[],u=!0,c=!1;try{if(s=(r=r.call(e)).next,n!==0)for(;!(u=(i=s.call(r)).done)&&(l.push(i.value),l.length!==n);u=!0);}catch(h){c=!0,o=h}finally{try{if(!u&&r.return!=null&&(a=r.return(),Object(a)!==a))return}finally{if(c)throw o}}return l}}function Sc(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
6
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Cc(e,n){return xc(e)||kc(e,n)||Ac(e,n)||Sc()}function Ac(e,n){if(e){if(typeof e=="string")return $r(e,n);var r={}.toString.call(e).slice(8,-1);return r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set"?Array.from(e):r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?$r(e,n):void 0}}var Mc=wc(function e(n,r){var i=r.default,o=i===void 0?null:i,s=r.triggerUpdate,a=s===void 0?!0:s,l=r.onChange,u=l===void 0?function(c,h){}:l;bc(this,e),this.name=n,this.defaultVal=o,this.triggerUpdate=a,this.onChange=u});function Yn(e){var n=e.stateInit,r=n===void 0?function(){return{}}:n,i=e.props,o=i===void 0?{}:i,s=e.methods,a=s===void 0?{}:s,l=e.aliases,u=l===void 0?{}:l,c=e.init,h=c===void 0?function(){}:c,f=e.update,d=f===void 0?function(){}:f,g=Object.keys(o).map(function(m){return new Mc(m,o[m])});return function m(){for(var v=arguments.length,y=new Array(v),p=0;p<v;p++)y[p]=arguments[p];var x=!!(this instanceof m&&this.constructor),C=x?y.shift():void 0,b=y[0],_=b===void 0?{}:b,k=Object.assign({},r instanceof Function?r(_):r,{initialised:!1}),S={};function M(I){return z(I,_),E(),M}var z=function(N,$){h.call(M,N,k,$),k.initialised=!0},E=Ki(function(){k.initialised&&(d.call(M,k,S),S={})},1);return g.forEach(function(I){M[I.name]=N(I);function N($){var A=$.name,P=$.triggerUpdate,T=P===void 0?!1:P,j=$.onChange,F=j===void 0?function(q,V){}:j,U=$.defaultVal,H=U===void 0?null:U;return function(q){var V=k[A];if(!arguments.length)return V;var B=q===void 0?H:q;return k[A]=B,F.call(M,B,k,V),!S.hasOwnProperty(A)&&(S[A]=V),T&&E(),M}}}),Object.keys(a).forEach(function(I){M[I]=function(){for(var N,$=arguments.length,A=new Array($),P=0;P<$;P++)A[P]=arguments[P];return(N=a[I]).call.apply(N,[M,k].concat(A))}}),Object.entries(u).forEach(function(I){var N=Cc(I,2),$=N[0],A=N[1];return M[$]=M[A]}),M.resetProps=function(){return g.forEach(function(I){M[I.name](I.defaultVal)}),M},M.resetProps(),k._rerender=E,x&&C&&M(C),M}}var W=(function(e){return typeof e=="function"?e:typeof e=="string"?function(n){return n[e]}:function(n){return e}});function Xe(e){"@babel/helpers - typeof";return Xe=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(n){return typeof n}:function(n){return n&&typeof Symbol=="function"&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},Xe(e)}var Tc=/^\s+/,Ec=/\s+$/;function D(e,n){if(e=e||"",n=n||{},e instanceof D)return e;if(!(this instanceof D))return new D(e,n);var r=Oc(e);this._originalInput=e,this._r=r.r,this._g=r.g,this._b=r.b,this._a=r.a,this._roundA=Math.round(100*this._a)/100,this._format=n.format||r.format,this._gradientType=n.gradientType,this._r<1&&(this._r=Math.round(this._r)),this._g<1&&(this._g=Math.round(this._g)),this._b<1&&(this._b=Math.round(this._b)),this._ok=r.ok}D.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var n=this.toRgb();return(n.r*299+n.g*587+n.b*114)/1e3},getLuminance:function(){var n=this.toRgb(),r,i,o,s,a,l;return r=n.r/255,i=n.g/255,o=n.b/255,r<=.03928?s=r/12.92:s=Math.pow((r+.055)/1.055,2.4),i<=.03928?a=i/12.92:a=Math.pow((i+.055)/1.055,2.4),o<=.03928?l=o/12.92:l=Math.pow((o+.055)/1.055,2.4),.2126*s+.7152*a+.0722*l},setAlpha:function(n){return this._a=Qi(n),this._roundA=Math.round(100*this._a)/100,this},toHsv:function(){var n=Lr(this._r,this._g,this._b);return{h:n.h*360,s:n.s,v:n.v,a:this._a}},toHsvString:function(){var n=Lr(this._r,this._g,this._b),r=Math.round(n.h*360),i=Math.round(n.s*100),o=Math.round(n.v*100);return this._a==1?"hsv("+r+", "+i+"%, "+o+"%)":"hsva("+r+", "+i+"%, "+o+"%, "+this._roundA+")"},toHsl:function(){var n=Fr(this._r,this._g,this._b);return{h:n.h*360,s:n.s,l:n.l,a:this._a}},toHslString:function(){var n=Fr(this._r,this._g,this._b),r=Math.round(n.h*360),i=Math.round(n.s*100),o=Math.round(n.l*100);return this._a==1?"hsl("+r+", "+i+"%, "+o+"%)":"hsla("+r+", "+i+"%, "+o+"%, "+this._roundA+")"},toHex:function(n){return Ur(this._r,this._g,this._b,n)},toHexString:function(n){return"#"+this.toHex(n)},toHex8:function(n){return Rc(this._r,this._g,this._b,this._a,n)},toHex8String:function(n){return"#"+this.toHex8(n)},toRgb:function(){return{r:Math.round(this._r),g:Math.round(this._g),b:Math.round(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+Math.round(this._r)+", "+Math.round(this._g)+", "+Math.round(this._b)+")":"rgba("+Math.round(this._r)+", "+Math.round(this._g)+", "+Math.round(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:Math.round(Y(this._r,255)*100)+"%",g:Math.round(Y(this._g,255)*100)+"%",b:Math.round(Y(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+Math.round(Y(this._r,255)*100)+"%, "+Math.round(Y(this._g,255)*100)+"%, "+Math.round(Y(this._b,255)*100)+"%)":"rgba("+Math.round(Y(this._r,255)*100)+"%, "+Math.round(Y(this._g,255)*100)+"%, "+Math.round(Y(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:Gc[Ur(this._r,this._g,this._b,!0)]||!1},toFilter:function(n){var r="#"+Hr(this._r,this._g,this._b,this._a),i=r,o=this._gradientType?"GradientType = 1, ":"";if(n){var s=D(n);i="#"+Hr(s._r,s._g,s._b,s._a)}return"progid:DXImageTransform.Microsoft.gradient("+o+"startColorstr="+r+",endColorstr="+i+")"},toString:function(n){var r=!!n;n=n||this._format;var i=!1,o=this._a<1&&this._a>=0,s=!r&&o&&(n==="hex"||n==="hex6"||n==="hex3"||n==="hex4"||n==="hex8"||n==="name");return s?n==="name"&&this._a===0?this.toName():this.toRgbString():(n==="rgb"&&(i=this.toRgbString()),n==="prgb"&&(i=this.toPercentageRgbString()),(n==="hex"||n==="hex6")&&(i=this.toHexString()),n==="hex3"&&(i=this.toHexString(!0)),n==="hex4"&&(i=this.toHex8String(!0)),n==="hex8"&&(i=this.toHex8String()),n==="name"&&(i=this.toName()),n==="hsl"&&(i=this.toHslString()),n==="hsv"&&(i=this.toHsvString()),i||this.toHexString())},clone:function(){return D(this.toString())},_applyModification:function(n,r){var i=n.apply(null,[this].concat([].slice.call(r)));return this._r=i._r,this._g=i._g,this._b=i._b,this.setAlpha(i._a),this},lighten:function(){return this._applyModification($c,arguments)},brighten:function(){return this._applyModification(Fc,arguments)},darken:function(){return this._applyModification(Lc,arguments)},desaturate:function(){return this._applyModification(Nc,arguments)},saturate:function(){return this._applyModification(jc,arguments)},greyscale:function(){return this._applyModification(Dc,arguments)},spin:function(){return this._applyModification(Uc,arguments)},_applyCombination:function(n,r){return n.apply(null,[this].concat([].slice.call(r)))},analogous:function(){return this._applyCombination(Vc,arguments)},complement:function(){return this._applyCombination(Hc,arguments)},monochromatic:function(){return this._applyCombination(Wc,arguments)},splitcomplement:function(){return this._applyCombination(qc,arguments)},triad:function(){return this._applyCombination(qr,[3])},tetrad:function(){return this._applyCombination(qr,[4])}};D.fromRatio=function(e,n){if(Xe(e)=="object"){var r={};for(var i in e)e.hasOwnProperty(i)&&(i==="a"?r[i]=e[i]:r[i]=he(e[i]));e=r}return D(e,n)};function Oc(e){var n={r:0,g:0,b:0},r=1,i=null,o=null,s=null,a=!1,l=!1;return typeof e=="string"&&(e=Yc(e)),Xe(e)=="object"&&(Mt(e.r)&&Mt(e.g)&&Mt(e.b)?(n=zc(e.r,e.g,e.b),a=!0,l=String(e.r).substr(-1)==="%"?"prgb":"rgb"):Mt(e.h)&&Mt(e.s)&&Mt(e.v)?(i=he(e.s),o=he(e.v),n=Ic(e.h,i,o),a=!0,l="hsv"):Mt(e.h)&&Mt(e.s)&&Mt(e.l)&&(i=he(e.s),s=he(e.l),n=Pc(e.h,i,s),a=!0,l="hsl"),e.hasOwnProperty("a")&&(r=e.a)),r=Qi(r),{ok:a,format:e.format||l,r:Math.min(255,Math.max(n.r,0)),g:Math.min(255,Math.max(n.g,0)),b:Math.min(255,Math.max(n.b,0)),a:r}}function zc(e,n,r){return{r:Y(e,255)*255,g:Y(n,255)*255,b:Y(r,255)*255}}function Fr(e,n,r){e=Y(e,255),n=Y(n,255),r=Y(r,255);var i=Math.max(e,n,r),o=Math.min(e,n,r),s,a,l=(i+o)/2;if(i==o)s=a=0;else{var u=i-o;switch(a=l>.5?u/(2-i-o):u/(i+o),i){case e:s=(n-r)/u+(n<r?6:0);break;case n:s=(r-e)/u+2;break;case r:s=(e-n)/u+4;break}s/=6}return{h:s,s:a,l}}function Pc(e,n,r){var i,o,s;e=Y(e,360),n=Y(n,100),r=Y(r,100);function a(c,h,f){return f<0&&(f+=1),f>1&&(f-=1),f<1/6?c+(h-c)*6*f:f<1/2?h:f<2/3?c+(h-c)*(2/3-f)*6:c}if(n===0)i=o=s=r;else{var l=r<.5?r*(1+n):r+n-r*n,u=2*r-l;i=a(u,l,e+1/3),o=a(u,l,e),s=a(u,l,e-1/3)}return{r:i*255,g:o*255,b:s*255}}function Lr(e,n,r){e=Y(e,255),n=Y(n,255),r=Y(r,255);var i=Math.max(e,n,r),o=Math.min(e,n,r),s,a,l=i,u=i-o;if(a=i===0?0:u/i,i==o)s=0;else{switch(i){case e:s=(n-r)/u+(n<r?6:0);break;case n:s=(r-e)/u+2;break;case r:s=(e-n)/u+4;break}s/=6}return{h:s,s:a,v:l}}function Ic(e,n,r){e=Y(e,360)*6,n=Y(n,100),r=Y(r,100);var i=Math.floor(e),o=e-i,s=r*(1-n),a=r*(1-o*n),l=r*(1-(1-o)*n),u=i%6,c=[r,a,s,s,l,r][u],h=[l,r,r,a,s,s][u],f=[s,s,l,r,r,a][u];return{r:c*255,g:h*255,b:f*255}}function Ur(e,n,r,i){var o=[pt(Math.round(e).toString(16)),pt(Math.round(n).toString(16)),pt(Math.round(r).toString(16))];return i&&o[0].charAt(0)==o[0].charAt(1)&&o[1].charAt(0)==o[1].charAt(1)&&o[2].charAt(0)==o[2].charAt(1)?o[0].charAt(0)+o[1].charAt(0)+o[2].charAt(0):o.join("")}function Rc(e,n,r,i,o){var s=[pt(Math.round(e).toString(16)),pt(Math.round(n).toString(16)),pt(Math.round(r).toString(16)),pt(Ji(i))];return o&&s[0].charAt(0)==s[0].charAt(1)&&s[1].charAt(0)==s[1].charAt(1)&&s[2].charAt(0)==s[2].charAt(1)&&s[3].charAt(0)==s[3].charAt(1)?s[0].charAt(0)+s[1].charAt(0)+s[2].charAt(0)+s[3].charAt(0):s.join("")}function Hr(e,n,r,i){var o=[pt(Ji(i)),pt(Math.round(e).toString(16)),pt(Math.round(n).toString(16)),pt(Math.round(r).toString(16))];return o.join("")}D.equals=function(e,n){return!e||!n?!1:D(e).toRgbString()==D(n).toRgbString()};D.random=function(){return D.fromRatio({r:Math.random(),g:Math.random(),b:Math.random()})};function Nc(e,n){n=n===0?0:n||10;var r=D(e).toHsl();return r.s-=n/100,r.s=nn(r.s),D(r)}function jc(e,n){n=n===0?0:n||10;var r=D(e).toHsl();return r.s+=n/100,r.s=nn(r.s),D(r)}function Dc(e){return D(e).desaturate(100)}function $c(e,n){n=n===0?0:n||10;var r=D(e).toHsl();return r.l+=n/100,r.l=nn(r.l),D(r)}function Fc(e,n){n=n===0?0:n||10;var r=D(e).toRgb();return r.r=Math.max(0,Math.min(255,r.r-Math.round(255*-(n/100)))),r.g=Math.max(0,Math.min(255,r.g-Math.round(255*-(n/100)))),r.b=Math.max(0,Math.min(255,r.b-Math.round(255*-(n/100)))),D(r)}function Lc(e,n){n=n===0?0:n||10;var r=D(e).toHsl();return r.l-=n/100,r.l=nn(r.l),D(r)}function Uc(e,n){var r=D(e).toHsl(),i=(r.h+n)%360;return r.h=i<0?360+i:i,D(r)}function Hc(e){var n=D(e).toHsl();return n.h=(n.h+180)%360,D(n)}function qr(e,n){if(isNaN(n)||n<=0)throw new Error("Argument to polyad must be a positive number");for(var r=D(e).toHsl(),i=[D(e)],o=360/n,s=1;s<n;s++)i.push(D({h:(r.h+s*o)%360,s:r.s,l:r.l}));return i}function qc(e){var n=D(e).toHsl(),r=n.h;return[D(e),D({h:(r+72)%360,s:n.s,l:n.l}),D({h:(r+216)%360,s:n.s,l:n.l})]}function Vc(e,n,r){n=n||6,r=r||30;var i=D(e).toHsl(),o=360/r,s=[D(e)];for(i.h=(i.h-(o*n>>1)+720)%360;--n;)i.h=(i.h+o)%360,s.push(D(i));return s}function Wc(e,n){n=n||6;for(var r=D(e).toHsv(),i=r.h,o=r.s,s=r.v,a=[],l=1/n;n--;)a.push(D({h:i,s:o,v:s})),s=(s+l)%1;return a}D.mix=function(e,n,r){r=r===0?0:r||50;var i=D(e).toRgb(),o=D(n).toRgb(),s=r/100,a={r:(o.r-i.r)*s+i.r,g:(o.g-i.g)*s+i.g,b:(o.b-i.b)*s+i.b,a:(o.a-i.a)*s+i.a};return D(a)};D.readability=function(e,n){var r=D(e),i=D(n);return(Math.max(r.getLuminance(),i.getLuminance())+.05)/(Math.min(r.getLuminance(),i.getLuminance())+.05)};D.isReadable=function(e,n,r){var i=D.readability(e,n),o,s;switch(s=!1,o=Zc(r),o.level+o.size){case"AAsmall":case"AAAlarge":s=i>=4.5;break;case"AAlarge":s=i>=3;break;case"AAAsmall":s=i>=7;break}return s};D.mostReadable=function(e,n,r){var i=null,o=0,s,a,l,u;r=r||{},a=r.includeFallbackColors,l=r.level,u=r.size;for(var c=0;c<n.length;c++)s=D.readability(e,n[c]),s>o&&(o=s,i=D(n[c]));return D.isReadable(e,i,{level:l,size:u})||!a?i:(r.includeFallbackColors=!1,D.mostReadable(e,["#fff","#000"],r))};var In=D.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},Gc=D.hexNames=Bc(In);function Bc(e){var n={};for(var r in e)e.hasOwnProperty(r)&&(n[e[r]]=r);return n}function Qi(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}function Y(e,n){Xc(e)&&(e="100%");var r=Kc(e);return e=Math.min(n,Math.max(0,parseFloat(e))),r&&(e=parseInt(e*n,10)/100),Math.abs(e-n)<1e-6?1:e%n/parseFloat(n)}function nn(e){return Math.min(1,Math.max(0,e))}function it(e){return parseInt(e,16)}function Xc(e){return typeof e=="string"&&e.indexOf(".")!=-1&&parseFloat(e)===1}function Kc(e){return typeof e=="string"&&e.indexOf("%")!=-1}function pt(e){return e.length==1?"0"+e:""+e}function he(e){return e<=1&&(e=e*100+"%"),e}function Ji(e){return Math.round(parseFloat(e)*255).toString(16)}function Vr(e){return it(e)/255}var dt=(function(){var e="[-\\+]?\\d+%?",n="[-\\+]?\\d*\\.\\d+%?",r="(?:"+n+")|(?:"+e+")",i="[\\s|\\(]+("+r+")[,|\\s]+("+r+")[,|\\s]+("+r+")\\s*\\)?",o="[\\s|\\(]+("+r+")[,|\\s]+("+r+")[,|\\s]+("+r+")[,|\\s]+("+r+")\\s*\\)?";return{CSS_UNIT:new RegExp(r),rgb:new RegExp("rgb"+i),rgba:new RegExp("rgba"+o),hsl:new RegExp("hsl"+i),hsla:new RegExp("hsla"+o),hsv:new RegExp("hsv"+i),hsva:new RegExp("hsva"+o),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}})();function Mt(e){return!!dt.CSS_UNIT.exec(e)}function Yc(e){e=e.replace(Tc,"").replace(Ec,"").toLowerCase();var n=!1;if(In[e])e=In[e],n=!0;else if(e=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var r;return(r=dt.rgb.exec(e))?{r:r[1],g:r[2],b:r[3]}:(r=dt.rgba.exec(e))?{r:r[1],g:r[2],b:r[3],a:r[4]}:(r=dt.hsl.exec(e))?{h:r[1],s:r[2],l:r[3]}:(r=dt.hsla.exec(e))?{h:r[1],s:r[2],l:r[3],a:r[4]}:(r=dt.hsv.exec(e))?{h:r[1],s:r[2],v:r[3]}:(r=dt.hsva.exec(e))?{h:r[1],s:r[2],v:r[3],a:r[4]}:(r=dt.hex8.exec(e))?{r:it(r[1]),g:it(r[2]),b:it(r[3]),a:Vr(r[4]),format:n?"name":"hex8"}:(r=dt.hex6.exec(e))?{r:it(r[1]),g:it(r[2]),b:it(r[3]),format:n?"name":"hex"}:(r=dt.hex4.exec(e))?{r:it(r[1]+""+r[1]),g:it(r[2]+""+r[2]),b:it(r[3]+""+r[3]),a:Vr(r[4]+""+r[4]),format:n?"name":"hex8"}:(r=dt.hex3.exec(e))?{r:it(r[1]+""+r[1]),g:it(r[2]+""+r[2]),b:it(r[3]+""+r[3]),format:n?"name":"hex"}:!1}function Zc(e){var n,r;return e=e||{level:"AA",size:"small"},n=(e.level||"AA").toUpperCase(),r=(e.size||"small").toLowerCase(),n!=="AA"&&n!=="AAA"&&(n="AA"),r!=="small"&&r!=="large"&&(r="small"),{level:n,size:r}}function Rn(e,n){(n==null||n>e.length)&&(n=e.length);for(var r=0,i=Array(n);r<n;r++)i[r]=e[r];return i}function Qc(e){if(Array.isArray(e))return Rn(e)}function to(e,n,r){if(typeof e=="function"?e===n:e.has(n))return arguments.length<3?n:r;throw new TypeError("Private element is not present on this object")}function Jc(e,n){if(n.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function tf(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}function st(e,n){return e.get(to(e,n))}function Wr(e,n,r){Jc(e,n),n.set(e,r)}function Gr(e,n,r){return e.set(to(e,n),r),r}function ef(e,n){for(var r=0;r<n.length;r++){var i=n[r];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,lf(i.key),i)}}function nf(e,n,r){return n&&ef(e.prototype,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function rf(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function of(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
7
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function sf(e){return Qc(e)||rf(e)||uf(e)||of()}function af(e,n){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,n);if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}function lf(e){var n=af(e,"string");return typeof n=="symbol"?n:n+""}function uf(e,n){if(e){if(typeof e=="string")return Rn(e,n);var r={}.toString.call(e).slice(8,-1);return r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set"?Array.from(e):r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Rn(e,n):void 0}}var cf=123,ff=function(n){return"#".concat(Math.min(n,Math.pow(2,24)).toString(16).padStart(6,"0"))},eo=function(n,r,i){return(n<<16)+(r<<8)+i},hf=function(n){var r=D(n).toRgb(),i=r.r,o=r.g,s=r.b;return eo(i,o,s)},Br=function(n,r){return n*cf%Math.pow(2,r)},Ft=new WeakMap,Tt=new WeakMap,df=(function(){function e(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:6;tf(this,e),Wr(this,Ft,void 0),Wr(this,Tt,void 0),Gr(Tt,this,n),this.reset()}return nf(e,[{key:"reset",value:function(){Gr(Ft,this,["__reserved for background__"])}},{key:"register",value:function(r){if(st(Ft,this).length>=Math.pow(2,24-st(Tt,this)))return null;var i=st(Ft,this).length,o=Br(i,st(Tt,this)),s=ff(i+(o<<24-st(Tt,this)));return st(Ft,this).push(r),s}},{key:"lookup",value:function(r){if(!r)return null;var i=typeof r=="string"?hf(r):eo.apply(void 0,sf(r));if(!i)return null;var o=i&Math.pow(2,24-st(Tt,this))-1,s=i>>24-st(Tt,this)&Math.pow(2,st(Tt,this))-1;return Br(o,st(Tt,this))!==s||o>=st(Ft,this).length?null:st(Ft,this)[o]}}])})(),Ae,Z,no,ro,Lt,Xr,io,oo,so,Zn,Nn,jn,be={},ao=[],gf=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,rn=Array.isArray;function _t(e,n){for(var r in n)e[r]=n[r];return e}function Qn(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function pf(e,n,r){var i,o,s,a={};for(s in n)s=="key"?i=n[s]:s=="ref"?o=n[s]:a[s]=n[s];if(arguments.length>2&&(a.children=arguments.length>3?Ae.call(arguments,2):r),typeof e=="function"&&e.defaultProps!=null)for(s in e.defaultProps)a[s]===void 0&&(a[s]=e.defaultProps[s]);return de(e,a,i,o,null)}function de(e,n,r,i,o){var s={type:e,props:n,key:r,ref:i,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:o??++no,__i:-1,__u:0};return o==null&&Z.vnode!=null&&Z.vnode(s),s}function on(e){return e.children}function $e(e,n){this.props=e,this.context=n}function Jt(e,n){if(n==null)return e.__?Jt(e.__,e.__i+1):null;for(var r;n<e.__k.length;n++)if((r=e.__k[n])!=null&&r.__e!=null)return r.__e;return typeof e.type=="function"?Jt(e):null}function lo(e){var n,r;if((e=e.__)!=null&&e.__c!=null){for(e.__e=e.__c.base=null,n=0;n<e.__k.length;n++)if((r=e.__k[n])!=null&&r.__e!=null){e.__e=e.__c.base=r.__e;break}return lo(e)}}function Kr(e){(!e.__d&&(e.__d=!0)&&Lt.push(e)&&!Ke.__r++||Xr!=Z.debounceRendering)&&((Xr=Z.debounceRendering)||io)(Ke)}function Ke(){for(var e,n,r,i,o,s,a,l=1;Lt.length;)Lt.length>l&&Lt.sort(oo),e=Lt.shift(),l=Lt.length,e.__d&&(r=void 0,i=void 0,o=(i=(n=e).__v).__e,s=[],a=[],n.__P&&((r=_t({},i)).__v=i.__v+1,Z.vnode&&Z.vnode(r),Jn(n.__P,r,i,n.__n,n.__P.namespaceURI,32&i.__u?[o]:null,s,o??Jt(i),!!(32&i.__u),a),r.__v=i.__v,r.__.__k[r.__i]=r,fo(s,r,a),i.__e=i.__=null,r.__e!=o&&lo(r)));Ke.__r=0}function uo(e,n,r,i,o,s,a,l,u,c,h){var f,d,g,m,v,y,p,x=i&&i.__k||ao,C=n.length;for(u=mf(r,n,x,u,C),f=0;f<C;f++)(g=r.__k[f])!=null&&(d=g.__i==-1?be:x[g.__i]||be,g.__i=f,y=Jn(e,g,d,o,s,a,l,u,c,h),m=g.__e,g.ref&&d.ref!=g.ref&&(d.ref&&tr(d.ref,null,g),h.push(g.ref,g.__c||m,g)),v==null&&m!=null&&(v=m),(p=!!(4&g.__u))||d.__k===g.__k?u=co(g,u,e,p):typeof g.type=="function"&&y!==void 0?u=y:m&&(u=m.nextSibling),g.__u&=-7);return r.__e=v,u}function mf(e,n,r,i,o){var s,a,l,u,c,h=r.length,f=h,d=0;for(e.__k=new Array(o),s=0;s<o;s++)(a=n[s])!=null&&typeof a!="boolean"&&typeof a!="function"?(typeof a=="string"||typeof a=="number"||typeof a=="bigint"||a.constructor==String?a=e.__k[s]=de(null,a,null,null,null):rn(a)?a=e.__k[s]=de(on,{children:a},null,null,null):a.constructor===void 0&&a.__b>0?a=e.__k[s]=de(a.type,a.props,a.key,a.ref?a.ref:null,a.__v):e.__k[s]=a,u=s+d,a.__=e,a.__b=e.__b+1,l=null,(c=a.__i=yf(a,r,u,f))!=-1&&(f--,(l=r[c])&&(l.__u|=2)),l==null||l.__v==null?(c==-1&&(o>h?d--:o<h&&d++),typeof a.type!="function"&&(a.__u|=4)):c!=u&&(c==u-1?d--:c==u+1?d++:(c>u?d--:d++,a.__u|=4))):e.__k[s]=null;if(f)for(s=0;s<h;s++)(l=r[s])!=null&&(2&l.__u)==0&&(l.__e==i&&(i=Jt(l)),go(l,l));return i}function co(e,n,r,i){var o,s;if(typeof e.type=="function"){for(o=e.__k,s=0;o&&s<o.length;s++)o[s]&&(o[s].__=e,n=co(o[s],n,r,i));return n}e.__e!=n&&(i&&(n&&e.type&&!n.parentNode&&(n=Jt(e)),r.insertBefore(e.__e,n||null)),n=e.__e);do n=n&&n.nextSibling;while(n!=null&&n.nodeType==8);return n}function yf(e,n,r,i){var o,s,a,l=e.key,u=e.type,c=n[r],h=c!=null&&(2&c.__u)==0;if(c===null&&l==null||h&&l==c.key&&u==c.type)return r;if(i>(h?1:0)){for(o=r-1,s=r+1;o>=0||s<n.length;)if((c=n[a=o>=0?o--:s++])!=null&&(2&c.__u)==0&&l==c.key&&u==c.type)return a}return-1}function Yr(e,n,r){n[0]=="-"?e.setProperty(n,r??""):e[n]=r==null?"":typeof r!="number"||gf.test(n)?r:r+"px"}function Pe(e,n,r,i,o){var s,a;t:if(n=="style")if(typeof r=="string")e.style.cssText=r;else{if(typeof i=="string"&&(e.style.cssText=i=""),i)for(n in i)r&&n in r||Yr(e.style,n,"");if(r)for(n in r)i&&r[n]==i[n]||Yr(e.style,n,r[n])}else if(n[0]=="o"&&n[1]=="n")s=n!=(n=n.replace(so,"$1")),a=n.toLowerCase(),n=a in e||n=="onFocusOut"||n=="onFocusIn"?a.slice(2):n.slice(2),e.l||(e.l={}),e.l[n+s]=r,r?i?r.u=i.u:(r.u=Zn,e.addEventListener(n,s?jn:Nn,s)):e.removeEventListener(n,s?jn:Nn,s);else{if(o=="http://www.w3.org/2000/svg")n=n.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if(n!="width"&&n!="height"&&n!="href"&&n!="list"&&n!="form"&&n!="tabIndex"&&n!="download"&&n!="rowSpan"&&n!="colSpan"&&n!="role"&&n!="popover"&&n in e)try{e[n]=r??"";break t}catch{}typeof r=="function"||(r==null||r===!1&&n[4]!="-"?e.removeAttribute(n):e.setAttribute(n,n=="popover"&&r==1?"":r))}}function Zr(e){return function(n){if(this.l){var r=this.l[n.type+e];if(n.t==null)n.t=Zn++;else if(n.t<r.u)return;return r(Z.event?Z.event(n):n)}}}function Jn(e,n,r,i,o,s,a,l,u,c){var h,f,d,g,m,v,y,p,x,C,b,_,k,S,M,z,E,I=n.type;if(n.constructor!==void 0)return null;128&r.__u&&(u=!!(32&r.__u),s=[l=n.__e=r.__e]),(h=Z.__b)&&h(n);t:if(typeof I=="function")try{if(p=n.props,x="prototype"in I&&I.prototype.render,C=(h=I.contextType)&&i[h.__c],b=h?C?C.props.value:h.__:i,r.__c?y=(f=n.__c=r.__c).__=f.__E:(x?n.__c=f=new I(p,b):(n.__c=f=new $e(p,b),f.constructor=I,f.render=_f),C&&C.sub(f),f.state||(f.state={}),f.__n=i,d=f.__d=!0,f.__h=[],f._sb=[]),x&&f.__s==null&&(f.__s=f.state),x&&I.getDerivedStateFromProps!=null&&(f.__s==f.state&&(f.__s=_t({},f.__s)),_t(f.__s,I.getDerivedStateFromProps(p,f.__s))),g=f.props,m=f.state,f.__v=n,d)x&&I.getDerivedStateFromProps==null&&f.componentWillMount!=null&&f.componentWillMount(),x&&f.componentDidMount!=null&&f.__h.push(f.componentDidMount);else{if(x&&I.getDerivedStateFromProps==null&&p!==g&&f.componentWillReceiveProps!=null&&f.componentWillReceiveProps(p,b),n.__v==r.__v||!f.__e&&f.shouldComponentUpdate!=null&&f.shouldComponentUpdate(p,f.__s,b)===!1){for(n.__v!=r.__v&&(f.props=p,f.state=f.__s,f.__d=!1),n.__e=r.__e,n.__k=r.__k,n.__k.some(function(N){N&&(N.__=n)}),_=0;_<f._sb.length;_++)f.__h.push(f._sb[_]);f._sb=[],f.__h.length&&a.push(f);break t}f.componentWillUpdate!=null&&f.componentWillUpdate(p,f.__s,b),x&&f.componentDidUpdate!=null&&f.__h.push(function(){f.componentDidUpdate(g,m,v)})}if(f.context=b,f.props=p,f.__P=e,f.__e=!1,k=Z.__r,S=0,x){for(f.state=f.__s,f.__d=!1,k&&k(n),h=f.render(f.props,f.state,f.context),M=0;M<f._sb.length;M++)f.__h.push(f._sb[M]);f._sb=[]}else do f.__d=!1,k&&k(n),h=f.render(f.props,f.state,f.context),f.state=f.__s;while(f.__d&&++S<25);f.state=f.__s,f.getChildContext!=null&&(i=_t(_t({},i),f.getChildContext())),x&&!d&&f.getSnapshotBeforeUpdate!=null&&(v=f.getSnapshotBeforeUpdate(g,m)),z=h,h!=null&&h.type===on&&h.key==null&&(z=ho(h.props.children)),l=uo(e,rn(z)?z:[z],n,r,i,o,s,a,l,u,c),f.base=n.__e,n.__u&=-161,f.__h.length&&a.push(f),y&&(f.__E=f.__=null)}catch(N){if(n.__v=null,u||s!=null)if(N.then){for(n.__u|=u?160:128;l&&l.nodeType==8&&l.nextSibling;)l=l.nextSibling;s[s.indexOf(l)]=null,n.__e=l}else{for(E=s.length;E--;)Qn(s[E]);Dn(n)}else n.__e=r.__e,n.__k=r.__k,N.then||Dn(n);Z.__e(N,n,r)}else s==null&&n.__v==r.__v?(n.__k=r.__k,n.__e=r.__e):l=n.__e=vf(r.__e,n,r,i,o,s,a,u,c);return(h=Z.diffed)&&h(n),128&n.__u?void 0:l}function Dn(e){e&&e.__c&&(e.__c.__e=!0),e&&e.__k&&e.__k.forEach(Dn)}function fo(e,n,r){for(var i=0;i<r.length;i++)tr(r[i],r[++i],r[++i]);Z.__c&&Z.__c(n,e),e.some(function(o){try{e=o.__h,o.__h=[],e.some(function(s){s.call(o)})}catch(s){Z.__e(s,o.__v)}})}function ho(e){return typeof e!="object"||e==null||e.__b&&e.__b>0?e:rn(e)?e.map(ho):_t({},e)}function vf(e,n,r,i,o,s,a,l,u){var c,h,f,d,g,m,v,y=r.props||be,p=n.props,x=n.type;if(x=="svg"?o="http://www.w3.org/2000/svg":x=="math"?o="http://www.w3.org/1998/Math/MathML":o||(o="http://www.w3.org/1999/xhtml"),s!=null){for(c=0;c<s.length;c++)if((g=s[c])&&"setAttribute"in g==!!x&&(x?g.localName==x:g.nodeType==3)){e=g,s[c]=null;break}}if(e==null){if(x==null)return document.createTextNode(p);e=document.createElementNS(o,x,p.is&&p),l&&(Z.__m&&Z.__m(n,s),l=!1),s=null}if(x==null)y===p||l&&e.data==p||(e.data=p);else{if(s=s&&Ae.call(e.childNodes),!l&&s!=null)for(y={},c=0;c<e.attributes.length;c++)y[(g=e.attributes[c]).name]=g.value;for(c in y)if(g=y[c],c!="children"){if(c=="dangerouslySetInnerHTML")f=g;else if(!(c in p)){if(c=="value"&&"defaultValue"in p||c=="checked"&&"defaultChecked"in p)continue;Pe(e,c,null,g,o)}}for(c in p)g=p[c],c=="children"?d=g:c=="dangerouslySetInnerHTML"?h=g:c=="value"?m=g:c=="checked"?v=g:l&&typeof g!="function"||y[c]===g||Pe(e,c,g,y[c],o);if(h)l||f&&(h.__html==f.__html||h.__html==e.innerHTML)||(e.innerHTML=h.__html),n.__k=[];else if(f&&(e.innerHTML=""),uo(n.type=="template"?e.content:e,rn(d)?d:[d],n,r,i,x=="foreignObject"?"http://www.w3.org/1999/xhtml":o,s,a,s?s[0]:r.__k&&Jt(r,0),l,u),s!=null)for(c=s.length;c--;)Qn(s[c]);l||(c="value",x=="progress"&&m==null?e.removeAttribute("value"):m!=null&&(m!==e[c]||x=="progress"&&!m||x=="option"&&m!=y[c])&&Pe(e,c,m,y[c],o),c="checked",v!=null&&v!=e[c]&&Pe(e,c,v,y[c],o))}return e}function tr(e,n,r){try{if(typeof e=="function"){var i=typeof e.__u=="function";i&&e.__u(),i&&n==null||(e.__u=e(n))}else e.current=n}catch(o){Z.__e(o,r)}}function go(e,n,r){var i,o;if(Z.unmount&&Z.unmount(e),(i=e.ref)&&(i.current&&i.current!=e.__e||tr(i,null,n)),(i=e.__c)!=null){if(i.componentWillUnmount)try{i.componentWillUnmount()}catch(s){Z.__e(s,n)}i.base=i.__P=null}if(i=e.__k)for(o=0;o<i.length;o++)i[o]&&go(i[o],n,r||typeof e.type!="function");r||Qn(e.__e),e.__c=e.__=e.__e=void 0}function _f(e,n,r){return this.constructor(e,r)}function xf(e,n,r){var i,o,s,a;n==document&&(n=document.documentElement),Z.__&&Z.__(e,n),o=(i=!1)?null:n.__k,s=[],a=[],Jn(n,e=n.__k=pf(on,null,[e]),o||be,be,n.namespaceURI,o?null:n.firstChild?Ae.call(n.childNodes):null,s,o?o.__e:n.firstChild,i,a),fo(s,e,a)}function po(e,n,r){var i,o,s,a,l=_t({},e.props);for(s in e.type&&e.type.defaultProps&&(a=e.type.defaultProps),n)s=="key"?i=n[s]:s=="ref"?o=n[s]:l[s]=n[s]===void 0&&a!=null?a[s]:n[s];return arguments.length>2&&(l.children=arguments.length>3?Ae.call(arguments,2):r),de(e.type,l,i||e.key,o||e.ref,null)}Ae=ao.slice,Z={__e:function(e,n,r,i){for(var o,s,a;n=n.__;)if((o=n.__c)&&!o.__)try{if((s=o.constructor)&&s.getDerivedStateFromError!=null&&(o.setState(s.getDerivedStateFromError(e)),a=o.__d),o.componentDidCatch!=null&&(o.componentDidCatch(e,i||{}),a=o.__d),a)return o.__E=o}catch(l){e=l}throw e}},no=0,ro=function(e){return e!=null&&e.constructor===void 0},$e.prototype.setState=function(e,n){var r;r=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=_t({},this.state),typeof e=="function"&&(e=e(_t({},r),this.props)),e&&_t(r,e),e!=null&&this.__v&&(n&&this._sb.push(n),Kr(this))},$e.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),Kr(this))},$e.prototype.render=on,Lt=[],io=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,oo=function(e,n){return e.__v.__b-n.__v.__b},Ke.__r=0,so=/(PointerCapture)$|Capture$/i,Zn=0,Nn=Zr(!1),jn=Zr(!0);function Qr(e,n){(n==null||n>e.length)&&(n=e.length);for(var r=0,i=Array(n);r<n;r++)i[r]=e[r];return i}function bf(e){if(Array.isArray(e))return e}function wf(e,n,r){return(n=Tf(n))in e?Object.defineProperty(e,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[n]=r,e}function kf(e,n){var r=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(r!=null){var i,o,s,a,l=[],u=!0,c=!1;try{if(s=(r=r.call(e)).next,n!==0)for(;!(u=(i=s.call(r)).done)&&(l.push(i.value),l.length!==n);u=!0);}catch(h){c=!0,o=h}finally{try{if(!u&&r.return!=null&&(a=r.return(),Object(a)!==a))return}finally{if(c)throw o}}return l}}function Sf(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
8
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Jr(e,n){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);n&&(i=i.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,i)}return r}function Cf(e){for(var n=1;n<arguments.length;n++){var r=arguments[n]!=null?arguments[n]:{};n%2?Jr(Object(r),!0).forEach(function(i){wf(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Jr(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function Af(e,n){return bf(e)||kf(e,n)||Ef(e,n)||Sf()}function Mf(e,n){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,n);if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(n==="string"?String:Number)(e)}function Tf(e){var n=Mf(e,"string");return typeof n=="symbol"?n:n+""}function Ye(e){"@babel/helpers - typeof";return Ye=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(n){return typeof n}:function(n){return n&&typeof Symbol=="function"&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},Ye(e)}function Ef(e,n){if(e){if(typeof e=="string")return Qr(e,n);var r={}.toString.call(e).slice(8,-1);return r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set"?Array.from(e):r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Qr(e,n):void 0}}var $n=function(n){if(Ye(n)!=="object")return n;var r=po(n);if(r.props){var i;r.props=Cf({},r.props),r!=null&&(i=r.props)!==null&&i!==void 0&&i.children&&(r.props.children=Array.isArray(r.props.children)?r.props.children.map($n):$n(r.props.children))}return r},Of=function(n){return ro(po(n))},zf=function(n,r){delete r.__k,xf($n(n),r)};function Pf(e,n){n===void 0&&(n={});var r=n.insertAt;if(!(typeof document>"u")){var i=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css",r==="top"&&i.firstChild?i.insertBefore(o,i.firstChild):i.appendChild(o),o.styleSheet?o.styleSheet.cssText=e:o.appendChild(document.createTextNode(e))}}var If=`.float-tooltip-kap {
|
|
9
|
-
position: absolute;
|
|
10
|
-
width: max-content; /* prevent shrinking near right edge */
|
|
11
|
-
max-width: max(50%, 150px);
|
|
12
|
-
padding: 3px 5px;
|
|
13
|
-
border-radius: 3px;
|
|
14
|
-
font: 12px sans-serif;
|
|
15
|
-
color: #eee;
|
|
16
|
-
background: rgba(0,0,0,0.6);
|
|
17
|
-
pointer-events: none;
|
|
18
|
-
}
|
|
19
|
-
`;Pf(If);var Rf=Yn({props:{content:{default:!1},offsetX:{triggerUpdate:!1},offsetY:{triggerUpdate:!1}},init:function(n,r){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=i.style,s=o===void 0?{}:o,a=!!n&&Ye(n)==="object"&&!!n.node&&typeof n.node=="function",l=ut(a?n.node():n);l.style("position")==="static"&&l.style("position","relative"),r.tooltipEl=l.append("div").attr("class","float-tooltip-kap"),Object.entries(s).forEach(function(c){var h=Af(c,2),f=h[0],d=h[1];return r.tooltipEl.style(f,d)}),r.tooltipEl.style("left","-10000px").style("display","none");var u="tooltip-".concat(Math.round(Math.random()*1e12));r.mouseInside=!1,l.on("mousemove.".concat(u),function(c){r.mouseInside=!0;var h=vt(c),f=l.node(),d=f.offsetWidth,g=f.offsetHeight,m=[r.offsetX===null||r.offsetX===void 0?"-".concat(h[0]/d*100,"%"):typeof r.offsetX=="number"?"calc(-50% + ".concat(r.offsetX,"px)"):r.offsetX,r.offsetY===null||r.offsetY===void 0?g>130&&g-h[1]<100?"calc(-100% - 6px)":"21px":typeof r.offsetY=="number"?r.offsetY<0?"calc(-100% - ".concat(Math.abs(r.offsetY),"px)"):"".concat(r.offsetY,"px"):r.offsetY];r.tooltipEl.style("left",h[0]+"px").style("top",h[1]+"px").style("transform","translate(".concat(m.join(","),")")),r.content&&r.tooltipEl.style("display","inline")}),l.on("mouseover.".concat(u),function(){r.mouseInside=!0,r.content&&r.tooltipEl.style("display","inline")}),l.on("mouseout.".concat(u),function(){r.mouseInside=!1,r.tooltipEl.style("display","none")})},update:function(n){n.tooltipEl.style("display",n.content&&n.mouseInside?"inline":"none"),n.content?n.content instanceof HTMLElement?(n.tooltipEl.text(""),n.tooltipEl.append(function(){return n.content})):typeof n.content=="string"?n.tooltipEl.html(n.content):Of(n.content)?(n.tooltipEl.text(""),zf(n.content,n.tooltipEl.node())):(n.tooltipEl.style("display","none"),console.warn("Tooltip content is invalid, skipping.",n.content,n.content.toString())):n.tooltipEl.text("")}});function Nf(e,n,r){var i,o=1;e==null&&(e=0),n==null&&(n=0),r==null&&(r=0);function s(){var a,l=i.length,u,c=0,h=0,f=0;for(a=0;a<l;++a)u=i[a],c+=u.x||0,h+=u.y||0,f+=u.z||0;for(c=(c/l-e)*o,h=(h/l-n)*o,f=(f/l-r)*o,a=0;a<l;++a)u=i[a],c&&(u.x-=c),h&&(u.y-=h),f&&(u.z-=f)}return s.initialize=function(a){i=a},s.x=function(a){return arguments.length?(e=+a,s):e},s.y=function(a){return arguments.length?(n=+a,s):n},s.z=function(a){return arguments.length?(r=+a,s):r},s.strength=function(a){return arguments.length?(o=+a,s):o},s}function jf(e){const n=+this._x.call(null,e);return mo(this.cover(n),n,e)}function mo(e,n,r){if(isNaN(n))return e;var i,o=e._root,s={data:r},a=e._x0,l=e._x1,u,c,h,f,d;if(!o)return e._root=s,e;for(;o.length;)if((h=n>=(u=(a+l)/2))?a=u:l=u,i=o,!(o=o[f=+h]))return i[f]=s,e;if(c=+e._x.call(null,o.data),n===c)return s.next=o,i?i[f]=s:e._root=s,e;do i=i?i[f]=new Array(2):e._root=new Array(2),(h=n>=(u=(a+l)/2))?a=u:l=u;while((f=+h)==(d=+(c>=u)));return i[d]=o,i[f]=s,e}function Df(e){Array.isArray(e)||(e=Array.from(e));const n=e.length,r=new Float64Array(n);let i=1/0,o=-1/0;for(let s=0,a;s<n;++s)isNaN(a=+this._x.call(null,e[s]))||(r[s]=a,a<i&&(i=a),a>o&&(o=a));if(i>o)return this;this.cover(i).cover(o);for(let s=0;s<n;++s)mo(this,r[s],e[s]);return this}function $f(e){if(isNaN(e=+e))return this;var n=this._x0,r=this._x1;if(isNaN(n))r=(n=Math.floor(e))+1;else{for(var i=r-n||1,o=this._root,s,a;n>e||e>=r;)switch(a=+(e<n),s=new Array(2),s[a]=o,o=s,i*=2,a){case 0:r=n+i;break;case 1:n=r-i;break}this._root&&this._root.length&&(this._root=o)}return this._x0=n,this._x1=r,this}function Ff(){var e=[];return this.visit(function(n){if(!n.length)do e.push(n.data);while(n=n.next)}),e}function Lf(e){return arguments.length?this.cover(+e[0][0]).cover(+e[1][0]):isNaN(this._x0)?void 0:[[this._x0],[this._x1]]}function It(e,n,r){this.node=e,this.x0=n,this.x1=r}function Uf(e,n){var r,i=this._x0,o,s,a=this._x1,l=[],u=this._root,c,h;for(u&&l.push(new It(u,i,a)),n==null?n=1/0:(i=e-n,a=e+n);c=l.pop();)if(!(!(u=c.node)||(o=c.x0)>a||(s=c.x1)<i))if(u.length){var f=(o+s)/2;l.push(new It(u[1],f,s),new It(u[0],o,f)),(h=+(e>=f))&&(c=l[l.length-1],l[l.length-1]=l[l.length-1-h],l[l.length-1-h]=c)}else{var d=Math.abs(e-+this._x.call(null,u.data));d<n&&(n=d,i=e-d,a=e+d,r=u.data)}return r}function Hf(e){if(isNaN(u=+this._x.call(null,e)))return this;var n,r=this._root,i,o,s,a=this._x0,l=this._x1,u,c,h,f,d;if(!r)return this;if(r.length)for(;;){if((h=u>=(c=(a+l)/2))?a=c:l=c,n=r,!(r=r[f=+h]))return this;if(!r.length)break;n[f+1&1]&&(i=n,d=f)}for(;r.data!==e;)if(o=r,!(r=r.next))return this;return(s=r.next)&&delete r.next,o?(s?o.next=s:delete o.next,this):n?(s?n[f]=s:delete n[f],(r=n[0]||n[1])&&r===(n[1]||n[0])&&!r.length&&(i?i[d]=r:this._root=r),this):(this._root=s,this)}function qf(e){for(var n=0,r=e.length;n<r;++n)this.remove(e[n]);return this}function Vf(){return this._root}function Wf(){var e=0;return this.visit(function(n){if(!n.length)do++e;while(n=n.next)}),e}function Gf(e){var n=[],r,i=this._root,o,s,a;for(i&&n.push(new It(i,this._x0,this._x1));r=n.pop();)if(!e(i=r.node,s=r.x0,a=r.x1)&&i.length){var l=(s+a)/2;(o=i[1])&&n.push(new It(o,l,a)),(o=i[0])&&n.push(new It(o,s,l))}return this}function Bf(e){var n=[],r=[],i;for(this._root&&n.push(new It(this._root,this._x0,this._x1));i=n.pop();){var o=i.node;if(o.length){var s,a=i.x0,l=i.x1,u=(a+l)/2;(s=o[0])&&n.push(new It(s,a,u)),(s=o[1])&&n.push(new It(s,u,l))}r.push(i)}for(;i=r.pop();)e(i.node,i.x0,i.x1);return this}function Xf(e){return e[0]}function Kf(e){return arguments.length?(this._x=e,this):this._x}function yo(e,n){var r=new er(n??Xf,NaN,NaN);return e==null?r:r.addAll(e)}function er(e,n,r){this._x=e,this._x0=n,this._x1=r,this._root=void 0}function ti(e){for(var n={data:e.data},r=n;e=e.next;)r=r.next={data:e.data};return n}var rt=yo.prototype=er.prototype;rt.copy=function(){var e=new er(this._x,this._x0,this._x1),n=this._root,r,i;if(!n)return e;if(!n.length)return e._root=ti(n),e;for(r=[{source:n,target:e._root=new Array(2)}];n=r.pop();)for(var o=0;o<2;++o)(i=n.source[o])&&(i.length?r.push({source:i,target:n.target[o]=new Array(2)}):n.target[o]=ti(i));return e};rt.add=jf;rt.addAll=Df;rt.cover=$f;rt.data=Ff;rt.extent=Lf;rt.find=Uf;rt.remove=Hf;rt.removeAll=qf;rt.root=Vf;rt.size=Wf;rt.visit=Gf;rt.visitAfter=Bf;rt.x=Kf;function Yf(e){const n=+this._x.call(null,e),r=+this._y.call(null,e);return vo(this.cover(n,r),n,r,e)}function vo(e,n,r,i){if(isNaN(n)||isNaN(r))return e;var o,s=e._root,a={data:i},l=e._x0,u=e._y0,c=e._x1,h=e._y1,f,d,g,m,v,y,p,x;if(!s)return e._root=a,e;for(;s.length;)if((v=n>=(f=(l+c)/2))?l=f:c=f,(y=r>=(d=(u+h)/2))?u=d:h=d,o=s,!(s=s[p=y<<1|v]))return o[p]=a,e;if(g=+e._x.call(null,s.data),m=+e._y.call(null,s.data),n===g&&r===m)return a.next=s,o?o[p]=a:e._root=a,e;do o=o?o[p]=new Array(4):e._root=new Array(4),(v=n>=(f=(l+c)/2))?l=f:c=f,(y=r>=(d=(u+h)/2))?u=d:h=d;while((p=y<<1|v)===(x=(m>=d)<<1|g>=f));return o[x]=s,o[p]=a,e}function Zf(e){var n,r,i=e.length,o,s,a=new Array(i),l=new Array(i),u=1/0,c=1/0,h=-1/0,f=-1/0;for(r=0;r<i;++r)isNaN(o=+this._x.call(null,n=e[r]))||isNaN(s=+this._y.call(null,n))||(a[r]=o,l[r]=s,o<u&&(u=o),o>h&&(h=o),s<c&&(c=s),s>f&&(f=s));if(u>h||c>f)return this;for(this.cover(u,c).cover(h,f),r=0;r<i;++r)vo(this,a[r],l[r],e[r]);return this}function Qf(e,n){if(isNaN(e=+e)||isNaN(n=+n))return this;var r=this._x0,i=this._y0,o=this._x1,s=this._y1;if(isNaN(r))o=(r=Math.floor(e))+1,s=(i=Math.floor(n))+1;else{for(var a=o-r||1,l=this._root,u,c;r>e||e>=o||i>n||n>=s;)switch(c=(n<i)<<1|e<r,u=new Array(4),u[c]=l,l=u,a*=2,c){case 0:o=r+a,s=i+a;break;case 1:r=o-a,s=i+a;break;case 2:o=r+a,i=s-a;break;case 3:r=o-a,i=s-a;break}this._root&&this._root.length&&(this._root=l)}return this._x0=r,this._y0=i,this._x1=o,this._y1=s,this}function Jf(){var e=[];return this.visit(function(n){if(!n.length)do e.push(n.data);while(n=n.next)}),e}function th(e){return arguments.length?this.cover(+e[0][0],+e[0][1]).cover(+e[1][0],+e[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]}function tt(e,n,r,i,o){this.node=e,this.x0=n,this.y0=r,this.x1=i,this.y1=o}function eh(e,n,r){var i,o=this._x0,s=this._y0,a,l,u,c,h=this._x1,f=this._y1,d=[],g=this._root,m,v;for(g&&d.push(new tt(g,o,s,h,f)),r==null?r=1/0:(o=e-r,s=n-r,h=e+r,f=n+r,r*=r);m=d.pop();)if(!(!(g=m.node)||(a=m.x0)>h||(l=m.y0)>f||(u=m.x1)<o||(c=m.y1)<s))if(g.length){var y=(a+u)/2,p=(l+c)/2;d.push(new tt(g[3],y,p,u,c),new tt(g[2],a,p,y,c),new tt(g[1],y,l,u,p),new tt(g[0],a,l,y,p)),(v=(n>=p)<<1|e>=y)&&(m=d[d.length-1],d[d.length-1]=d[d.length-1-v],d[d.length-1-v]=m)}else{var x=e-+this._x.call(null,g.data),C=n-+this._y.call(null,g.data),b=x*x+C*C;if(b<r){var _=Math.sqrt(r=b);o=e-_,s=n-_,h=e+_,f=n+_,i=g.data}}return i}function nh(e){if(isNaN(h=+this._x.call(null,e))||isNaN(f=+this._y.call(null,e)))return this;var n,r=this._root,i,o,s,a=this._x0,l=this._y0,u=this._x1,c=this._y1,h,f,d,g,m,v,y,p;if(!r)return this;if(r.length)for(;;){if((m=h>=(d=(a+u)/2))?a=d:u=d,(v=f>=(g=(l+c)/2))?l=g:c=g,n=r,!(r=r[y=v<<1|m]))return this;if(!r.length)break;(n[y+1&3]||n[y+2&3]||n[y+3&3])&&(i=n,p=y)}for(;r.data!==e;)if(o=r,!(r=r.next))return this;return(s=r.next)&&delete r.next,o?(s?o.next=s:delete o.next,this):n?(s?n[y]=s:delete n[y],(r=n[0]||n[1]||n[2]||n[3])&&r===(n[3]||n[2]||n[1]||n[0])&&!r.length&&(i?i[p]=r:this._root=r),this):(this._root=s,this)}function rh(e){for(var n=0,r=e.length;n<r;++n)this.remove(e[n]);return this}function ih(){return this._root}function oh(){var e=0;return this.visit(function(n){if(!n.length)do++e;while(n=n.next)}),e}function sh(e){var n=[],r,i=this._root,o,s,a,l,u;for(i&&n.push(new tt(i,this._x0,this._y0,this._x1,this._y1));r=n.pop();)if(!e(i=r.node,s=r.x0,a=r.y0,l=r.x1,u=r.y1)&&i.length){var c=(s+l)/2,h=(a+u)/2;(o=i[3])&&n.push(new tt(o,c,h,l,u)),(o=i[2])&&n.push(new tt(o,s,h,c,u)),(o=i[1])&&n.push(new tt(o,c,a,l,h)),(o=i[0])&&n.push(new tt(o,s,a,c,h))}return this}function ah(e){var n=[],r=[],i;for(this._root&&n.push(new tt(this._root,this._x0,this._y0,this._x1,this._y1));i=n.pop();){var o=i.node;if(o.length){var s,a=i.x0,l=i.y0,u=i.x1,c=i.y1,h=(a+u)/2,f=(l+c)/2;(s=o[0])&&n.push(new tt(s,a,l,h,f)),(s=o[1])&&n.push(new tt(s,h,l,u,f)),(s=o[2])&&n.push(new tt(s,a,f,h,c)),(s=o[3])&&n.push(new tt(s,h,f,u,c))}r.push(i)}for(;i=r.pop();)e(i.node,i.x0,i.y0,i.x1,i.y1);return this}function lh(e){return e[0]}function uh(e){return arguments.length?(this._x=e,this):this._x}function ch(e){return e[1]}function fh(e){return arguments.length?(this._y=e,this):this._y}function _o(e,n,r){var i=new nr(n??lh,r??ch,NaN,NaN,NaN,NaN);return e==null?i:i.addAll(e)}function nr(e,n,r,i,o,s){this._x=e,this._y=n,this._x0=r,this._y0=i,this._x1=o,this._y1=s,this._root=void 0}function ei(e){for(var n={data:e.data},r=n;e=e.next;)r=r.next={data:e.data};return n}var et=_o.prototype=nr.prototype;et.copy=function(){var e=new nr(this._x,this._y,this._x0,this._y0,this._x1,this._y1),n=this._root,r,i;if(!n)return e;if(!n.length)return e._root=ei(n),e;for(r=[{source:n,target:e._root=new Array(4)}];n=r.pop();)for(var o=0;o<4;++o)(i=n.source[o])&&(i.length?r.push({source:i,target:n.target[o]=new Array(4)}):n.target[o]=ei(i));return e};et.add=Yf;et.addAll=Zf;et.cover=Qf;et.data=Jf;et.extent=th;et.find=eh;et.remove=nh;et.removeAll=rh;et.root=ih;et.size=oh;et.visit=sh;et.visitAfter=ah;et.x=uh;et.y=fh;function hh(e){const n=+this._x.call(null,e),r=+this._y.call(null,e),i=+this._z.call(null,e);return xo(this.cover(n,r,i),n,r,i,e)}function xo(e,n,r,i,o){if(isNaN(n)||isNaN(r)||isNaN(i))return e;var s,a=e._root,l={data:o},u=e._x0,c=e._y0,h=e._z0,f=e._x1,d=e._y1,g=e._z1,m,v,y,p,x,C,b,_,k,S,M;if(!a)return e._root=l,e;for(;a.length;)if((b=n>=(m=(u+f)/2))?u=m:f=m,(_=r>=(v=(c+d)/2))?c=v:d=v,(k=i>=(y=(h+g)/2))?h=y:g=y,s=a,!(a=a[S=k<<2|_<<1|b]))return s[S]=l,e;if(p=+e._x.call(null,a.data),x=+e._y.call(null,a.data),C=+e._z.call(null,a.data),n===p&&r===x&&i===C)return l.next=a,s?s[S]=l:e._root=l,e;do s=s?s[S]=new Array(8):e._root=new Array(8),(b=n>=(m=(u+f)/2))?u=m:f=m,(_=r>=(v=(c+d)/2))?c=v:d=v,(k=i>=(y=(h+g)/2))?h=y:g=y;while((S=k<<2|_<<1|b)===(M=(C>=y)<<2|(x>=v)<<1|p>=m));return s[M]=a,s[S]=l,e}function dh(e){Array.isArray(e)||(e=Array.from(e));const n=e.length,r=new Float64Array(n),i=new Float64Array(n),o=new Float64Array(n);let s=1/0,a=1/0,l=1/0,u=-1/0,c=-1/0,h=-1/0;for(let f=0,d,g,m,v;f<n;++f)isNaN(g=+this._x.call(null,d=e[f]))||isNaN(m=+this._y.call(null,d))||isNaN(v=+this._z.call(null,d))||(r[f]=g,i[f]=m,o[f]=v,g<s&&(s=g),g>u&&(u=g),m<a&&(a=m),m>c&&(c=m),v<l&&(l=v),v>h&&(h=v));if(s>u||a>c||l>h)return this;this.cover(s,a,l).cover(u,c,h);for(let f=0;f<n;++f)xo(this,r[f],i[f],o[f],e[f]);return this}function gh(e,n,r){if(isNaN(e=+e)||isNaN(n=+n)||isNaN(r=+r))return this;var i=this._x0,o=this._y0,s=this._z0,a=this._x1,l=this._y1,u=this._z1;if(isNaN(i))a=(i=Math.floor(e))+1,l=(o=Math.floor(n))+1,u=(s=Math.floor(r))+1;else{for(var c=a-i||1,h=this._root,f,d;i>e||e>=a||o>n||n>=l||s>r||r>=u;)switch(d=(r<s)<<2|(n<o)<<1|e<i,f=new Array(8),f[d]=h,h=f,c*=2,d){case 0:a=i+c,l=o+c,u=s+c;break;case 1:i=a-c,l=o+c,u=s+c;break;case 2:a=i+c,o=l-c,u=s+c;break;case 3:i=a-c,o=l-c,u=s+c;break;case 4:a=i+c,l=o+c,s=u-c;break;case 5:i=a-c,l=o+c,s=u-c;break;case 6:a=i+c,o=l-c,s=u-c;break;case 7:i=a-c,o=l-c,s=u-c;break}this._root&&this._root.length&&(this._root=h)}return this._x0=i,this._y0=o,this._z0=s,this._x1=a,this._y1=l,this._z1=u,this}function ph(){var e=[];return this.visit(function(n){if(!n.length)do e.push(n.data);while(n=n.next)}),e}function mh(e){return arguments.length?this.cover(+e[0][0],+e[0][1],+e[0][2]).cover(+e[1][0],+e[1][1],+e[1][2]):isNaN(this._x0)?void 0:[[this._x0,this._y0,this._z0],[this._x1,this._y1,this._z1]]}function G(e,n,r,i,o,s,a){this.node=e,this.x0=n,this.y0=r,this.z0=i,this.x1=o,this.y1=s,this.z1=a}function yh(e,n,r,i){var o,s=this._x0,a=this._y0,l=this._z0,u,c,h,f,d,g,m=this._x1,v=this._y1,y=this._z1,p=[],x=this._root,C,b;for(x&&p.push(new G(x,s,a,l,m,v,y)),i==null?i=1/0:(s=e-i,a=n-i,l=r-i,m=e+i,v=n+i,y=r+i,i*=i);C=p.pop();)if(!(!(x=C.node)||(u=C.x0)>m||(c=C.y0)>v||(h=C.z0)>y||(f=C.x1)<s||(d=C.y1)<a||(g=C.z1)<l))if(x.length){var _=(u+f)/2,k=(c+d)/2,S=(h+g)/2;p.push(new G(x[7],_,k,S,f,d,g),new G(x[6],u,k,S,_,d,g),new G(x[5],_,c,S,f,k,g),new G(x[4],u,c,S,_,k,g),new G(x[3],_,k,h,f,d,S),new G(x[2],u,k,h,_,d,S),new G(x[1],_,c,h,f,k,S),new G(x[0],u,c,h,_,k,S)),(b=(r>=S)<<2|(n>=k)<<1|e>=_)&&(C=p[p.length-1],p[p.length-1]=p[p.length-1-b],p[p.length-1-b]=C)}else{var M=e-+this._x.call(null,x.data),z=n-+this._y.call(null,x.data),E=r-+this._z.call(null,x.data),I=M*M+z*z+E*E;if(I<i){var N=Math.sqrt(i=I);s=e-N,a=n-N,l=r-N,m=e+N,v=n+N,y=r+N,o=x.data}}return o}const vh=(e,n,r,i,o,s)=>Math.sqrt((e-i)**2+(n-o)**2+(r-s)**2);function _h(e,n,r,i){const o=[],s=e-i,a=n-i,l=r-i,u=e+i,c=n+i,h=r+i;return this.visit((f,d,g,m,v,y,p)=>{if(!f.length)do{const x=f.data;vh(e,n,r,this._x(x),this._y(x),this._z(x))<=i&&o.push(x)}while(f=f.next);return d>u||g>c||m>h||v<s||y<a||p<l}),o}function xh(e){if(isNaN(d=+this._x.call(null,e))||isNaN(g=+this._y.call(null,e))||isNaN(m=+this._z.call(null,e)))return this;var n,r=this._root,i,o,s,a=this._x0,l=this._y0,u=this._z0,c=this._x1,h=this._y1,f=this._z1,d,g,m,v,y,p,x,C,b,_,k;if(!r)return this;if(r.length)for(;;){if((x=d>=(v=(a+c)/2))?a=v:c=v,(C=g>=(y=(l+h)/2))?l=y:h=y,(b=m>=(p=(u+f)/2))?u=p:f=p,n=r,!(r=r[_=b<<2|C<<1|x]))return this;if(!r.length)break;(n[_+1&7]||n[_+2&7]||n[_+3&7]||n[_+4&7]||n[_+5&7]||n[_+6&7]||n[_+7&7])&&(i=n,k=_)}for(;r.data!==e;)if(o=r,!(r=r.next))return this;return(s=r.next)&&delete r.next,o?(s?o.next=s:delete o.next,this):n?(s?n[_]=s:delete n[_],(r=n[0]||n[1]||n[2]||n[3]||n[4]||n[5]||n[6]||n[7])&&r===(n[7]||n[6]||n[5]||n[4]||n[3]||n[2]||n[1]||n[0])&&!r.length&&(i?i[k]=r:this._root=r),this):(this._root=s,this)}function bh(e){for(var n=0,r=e.length;n<r;++n)this.remove(e[n]);return this}function wh(){return this._root}function kh(){var e=0;return this.visit(function(n){if(!n.length)do++e;while(n=n.next)}),e}function Sh(e){var n=[],r,i=this._root,o,s,a,l,u,c,h;for(i&&n.push(new G(i,this._x0,this._y0,this._z0,this._x1,this._y1,this._z1));r=n.pop();)if(!e(i=r.node,s=r.x0,a=r.y0,l=r.z0,u=r.x1,c=r.y1,h=r.z1)&&i.length){var f=(s+u)/2,d=(a+c)/2,g=(l+h)/2;(o=i[7])&&n.push(new G(o,f,d,g,u,c,h)),(o=i[6])&&n.push(new G(o,s,d,g,f,c,h)),(o=i[5])&&n.push(new G(o,f,a,g,u,d,h)),(o=i[4])&&n.push(new G(o,s,a,g,f,d,h)),(o=i[3])&&n.push(new G(o,f,d,l,u,c,g)),(o=i[2])&&n.push(new G(o,s,d,l,f,c,g)),(o=i[1])&&n.push(new G(o,f,a,l,u,d,g)),(o=i[0])&&n.push(new G(o,s,a,l,f,d,g))}return this}function Ch(e){var n=[],r=[],i;for(this._root&&n.push(new G(this._root,this._x0,this._y0,this._z0,this._x1,this._y1,this._z1));i=n.pop();){var o=i.node;if(o.length){var s,a=i.x0,l=i.y0,u=i.z0,c=i.x1,h=i.y1,f=i.z1,d=(a+c)/2,g=(l+h)/2,m=(u+f)/2;(s=o[0])&&n.push(new G(s,a,l,u,d,g,m)),(s=o[1])&&n.push(new G(s,d,l,u,c,g,m)),(s=o[2])&&n.push(new G(s,a,g,u,d,h,m)),(s=o[3])&&n.push(new G(s,d,g,u,c,h,m)),(s=o[4])&&n.push(new G(s,a,l,m,d,g,f)),(s=o[5])&&n.push(new G(s,d,l,m,c,g,f)),(s=o[6])&&n.push(new G(s,a,g,m,d,h,f)),(s=o[7])&&n.push(new G(s,d,g,m,c,h,f))}r.push(i)}for(;i=r.pop();)e(i.node,i.x0,i.y0,i.z0,i.x1,i.y1,i.z1);return this}function Ah(e){return e[0]}function Mh(e){return arguments.length?(this._x=e,this):this._x}function Th(e){return e[1]}function Eh(e){return arguments.length?(this._y=e,this):this._y}function Oh(e){return e[2]}function zh(e){return arguments.length?(this._z=e,this):this._z}function bo(e,n,r,i){var o=new rr(n??Ah,r??Th,i??Oh,NaN,NaN,NaN,NaN,NaN,NaN);return e==null?o:o.addAll(e)}function rr(e,n,r,i,o,s,a,l,u){this._x=e,this._y=n,this._z=r,this._x0=i,this._y0=o,this._z0=s,this._x1=a,this._y1=l,this._z1=u,this._root=void 0}function ni(e){for(var n={data:e.data},r=n;e=e.next;)r=r.next={data:e.data};return n}var Q=bo.prototype=rr.prototype;Q.copy=function(){var e=new rr(this._x,this._y,this._z,this._x0,this._y0,this._z0,this._x1,this._y1,this._z1),n=this._root,r,i;if(!n)return e;if(!n.length)return e._root=ni(n),e;for(r=[{source:n,target:e._root=new Array(8)}];n=r.pop();)for(var o=0;o<8;++o)(i=n.source[o])&&(i.length?r.push({source:i,target:n.target[o]=new Array(8)}):n.target[o]=ni(i));return e};Q.add=hh;Q.addAll=dh;Q.cover=gh;Q.data=ph;Q.extent=mh;Q.find=yh;Q.findAllWithinRadius=_h;Q.remove=xh;Q.removeAll=bh;Q.root=wh;Q.size=kh;Q.visit=Sh;Q.visitAfter=Ch;Q.x=Mh;Q.y=Eh;Q.z=zh;function Pt(e){return function(){return e}}function Ot(e){return(e()-.5)*1e-6}function Ph(e){return e.index}function ri(e,n){var r=e.get(n);if(!r)throw new Error("node not found: "+n);return r}function Ih(e){var n=Ph,r=d,i,o=Pt(30),s,a,l,u,c,h,f=1;e==null&&(e=[]);function d(p){return 1/Math.min(u[p.source.index],u[p.target.index])}function g(p){for(var x=0,C=e.length;x<f;++x)for(var b=0,_,k,S,M=0,z=0,E=0,I,N;b<C;++b)_=e[b],k=_.source,S=_.target,M=S.x+S.vx-k.x-k.vx||Ot(h),l>1&&(z=S.y+S.vy-k.y-k.vy||Ot(h)),l>2&&(E=S.z+S.vz-k.z-k.vz||Ot(h)),I=Math.sqrt(M*M+z*z+E*E),I=(I-s[b])/I*p*i[b],M*=I,z*=I,E*=I,S.vx-=M*(N=c[b]),l>1&&(S.vy-=z*N),l>2&&(S.vz-=E*N),k.vx+=M*(N=1-N),l>1&&(k.vy+=z*N),l>2&&(k.vz+=E*N)}function m(){if(a){var p,x=a.length,C=e.length,b=new Map(a.map((k,S)=>[n(k,S,a),k])),_;for(p=0,u=new Array(x);p<C;++p)_=e[p],_.index=p,typeof _.source!="object"&&(_.source=ri(b,_.source)),typeof _.target!="object"&&(_.target=ri(b,_.target)),u[_.source.index]=(u[_.source.index]||0)+1,u[_.target.index]=(u[_.target.index]||0)+1;for(p=0,c=new Array(C);p<C;++p)_=e[p],c[p]=u[_.source.index]/(u[_.source.index]+u[_.target.index]);i=new Array(C),v(),s=new Array(C),y()}}function v(){if(a)for(var p=0,x=e.length;p<x;++p)i[p]=+r(e[p],p,e)}function y(){if(a)for(var p=0,x=e.length;p<x;++p)s[p]=+o(e[p],p,e)}return g.initialize=function(p,...x){a=p,h=x.find(C=>typeof C=="function")||Math.random,l=x.find(C=>[1,2,3].includes(C))||2,m()},g.links=function(p){return arguments.length?(e=p,m(),g):e},g.id=function(p){return arguments.length?(n=p,g):n},g.iterations=function(p){return arguments.length?(f=+p,g):f},g.strength=function(p){return arguments.length?(r=typeof p=="function"?p:Pt(+p),v(),g):r},g.distance=function(p){return arguments.length?(o=typeof p=="function"?p:Pt(+p),y(),g):o},g}const Rh=1664525,Nh=1013904223,ii=4294967296;function jh(){let e=1;return()=>(e=(Rh*e+Nh)%ii)/ii}var oi=3;function gn(e){return e.x}function si(e){return e.y}function Dh(e){return e.z}var $h=10,Fh=Math.PI*(3-Math.sqrt(5)),Lh=Math.PI*20/(9+Math.sqrt(221));function Uh(e,n){n=n||2;var r=Math.min(oi,Math.max(1,Math.round(n))),i,o=1,s=.001,a=1-Math.pow(s,1/300),l=0,u=.6,c=new Map,h=Gn(g),f=Se("tick","end"),d=jh();e==null&&(e=[]);function g(){m(),f.call("tick",i),o<s&&(h.stop(),f.call("end",i))}function m(p){var x,C=e.length,b;p===void 0&&(p=1);for(var _=0;_<p;++_)for(o+=(l-o)*a,c.forEach(function(k){k(o)}),x=0;x<C;++x)b=e[x],b.fx==null?b.x+=b.vx*=u:(b.x=b.fx,b.vx=0),r>1&&(b.fy==null?b.y+=b.vy*=u:(b.y=b.fy,b.vy=0)),r>2&&(b.fz==null?b.z+=b.vz*=u:(b.z=b.fz,b.vz=0));return i}function v(){for(var p=0,x=e.length,C;p<x;++p){if(C=e[p],C.index=p,C.fx!=null&&(C.x=C.fx),C.fy!=null&&(C.y=C.fy),C.fz!=null&&(C.z=C.fz),isNaN(C.x)||r>1&&isNaN(C.y)||r>2&&isNaN(C.z)){var b=$h*(r>2?Math.cbrt(.5+p):r>1?Math.sqrt(.5+p):p),_=p*Fh,k=p*Lh;r===1?C.x=b:r===2?(C.x=b*Math.cos(_),C.y=b*Math.sin(_)):(C.x=b*Math.sin(_)*Math.cos(k),C.y=b*Math.cos(_),C.z=b*Math.sin(_)*Math.sin(k))}(isNaN(C.vx)||r>1&&isNaN(C.vy)||r>2&&isNaN(C.vz))&&(C.vx=0,r>1&&(C.vy=0),r>2&&(C.vz=0))}}function y(p){return p.initialize&&p.initialize(e,d,r),p}return v(),i={tick:m,restart:function(){return h.restart(g),i},stop:function(){return h.stop(),i},numDimensions:function(p){return arguments.length?(r=Math.min(oi,Math.max(1,Math.round(p))),c.forEach(y),i):r},nodes:function(p){return arguments.length?(e=p,v(),c.forEach(y),i):e},alpha:function(p){return arguments.length?(o=+p,i):o},alphaMin:function(p){return arguments.length?(s=+p,i):s},alphaDecay:function(p){return arguments.length?(a=+p,i):+a},alphaTarget:function(p){return arguments.length?(l=+p,i):l},velocityDecay:function(p){return arguments.length?(u=1-p,i):1-u},randomSource:function(p){return arguments.length?(d=p,c.forEach(y),i):d},force:function(p,x){return arguments.length>1?(x==null?c.delete(p):c.set(p,y(x)),i):c.get(p)},find:function(){var p=Array.prototype.slice.call(arguments),x=p.shift()||0,C=(r>1?p.shift():null)||0,b=(r>2?p.shift():null)||0,_=p.shift()||1/0,k=0,S=e.length,M,z,E,I,N,$;for(_*=_,k=0;k<S;++k)N=e[k],M=x-N.x,z=C-(N.y||0),E=b-(N.z||0),I=M*M+z*z+E*E,I<_&&($=N,_=I);return $},on:function(p,x){return arguments.length>1?(f.on(p,x),i):f.on(p)}}}function Hh(){var e,n,r,i,o,s=Pt(-30),a,l=1,u=1/0,c=.81;function h(m){var v,y=e.length,p=(n===1?yo(e,gn):n===2?_o(e,gn,si):n===3?bo(e,gn,si,Dh):null).visitAfter(d);for(o=m,v=0;v<y;++v)r=e[v],p.visit(g)}function f(){if(e){var m,v=e.length,y;for(a=new Array(v),m=0;m<v;++m)y=e[m],a[y.index]=+s(y,m,e)}}function d(m){var v=0,y,p,x=0,C,b,_,k,S=m.length;if(S){for(C=b=_=k=0;k<S;++k)(y=m[k])&&(p=Math.abs(y.value))&&(v+=y.value,x+=p,C+=p*(y.x||0),b+=p*(y.y||0),_+=p*(y.z||0));v*=Math.sqrt(4/S),m.x=C/x,n>1&&(m.y=b/x),n>2&&(m.z=_/x)}else{y=m,y.x=y.data.x,n>1&&(y.y=y.data.y),n>2&&(y.z=y.data.z);do v+=a[y.data.index];while(y=y.next)}m.value=v}function g(m,v,y,p,x){if(!m.value)return!0;var C=[y,p,x][n-1],b=m.x-r.x,_=n>1?m.y-r.y:0,k=n>2?m.z-r.z:0,S=C-v,M=b*b+_*_+k*k;if(S*S/c<M)return M<u&&(b===0&&(b=Ot(i),M+=b*b),n>1&&_===0&&(_=Ot(i),M+=_*_),n>2&&k===0&&(k=Ot(i),M+=k*k),M<l&&(M=Math.sqrt(l*M)),r.vx+=b*m.value*o/M,n>1&&(r.vy+=_*m.value*o/M),n>2&&(r.vz+=k*m.value*o/M)),!0;if(m.length||M>=u)return;(m.data!==r||m.next)&&(b===0&&(b=Ot(i),M+=b*b),n>1&&_===0&&(_=Ot(i),M+=_*_),n>2&&k===0&&(k=Ot(i),M+=k*k),M<l&&(M=Math.sqrt(l*M)));do m.data!==r&&(S=a[m.data.index]*o/M,r.vx+=b*S,n>1&&(r.vy+=_*S),n>2&&(r.vz+=k*S));while(m=m.next)}return h.initialize=function(m,...v){e=m,i=v.find(y=>typeof y=="function")||Math.random,n=v.find(y=>[1,2,3].includes(y))||2,f()},h.strength=function(m){return arguments.length?(s=typeof m=="function"?m:Pt(+m),f(),h):s},h.distanceMin=function(m){return arguments.length?(l=m*m,h):Math.sqrt(l)},h.distanceMax=function(m){return arguments.length?(u=m*m,h):Math.sqrt(u)},h.theta=function(m){return arguments.length?(c=m*m,h):Math.sqrt(c)},h}function qh(e,n,r,i){var o,s,a=Pt(.1),l,u;typeof e!="function"&&(e=Pt(+e)),n==null&&(n=0),r==null&&(r=0),i==null&&(i=0);function c(f){for(var d=0,g=o.length;d<g;++d){var m=o[d],v=m.x-n||1e-6,y=(m.y||0)-r||1e-6,p=(m.z||0)-i||1e-6,x=Math.sqrt(v*v+y*y+p*p),C=(u[d]-x)*l[d]*f/x;m.vx+=v*C,s>1&&(m.vy+=y*C),s>2&&(m.vz+=p*C)}}function h(){if(o){var f,d=o.length;for(l=new Array(d),u=new Array(d),f=0;f<d;++f)u[f]=+e(o[f],f,o),l[f]=isNaN(u[f])?0:+a(o[f],f,o)}}return c.initialize=function(f,...d){o=f,s=d.find(g=>[1,2,3].includes(g))||2,h()},c.strength=function(f){return arguments.length?(a=typeof f=="function"?f:Pt(+f),h(),c):a},c.radius=function(f){return arguments.length?(e=typeof f=="function"?f:Pt(+f),h(),c):e},c.x=function(f){return arguments.length?(n=+f,c):n},c.y=function(f){return arguments.length?(r=+f,c):r},c.z=function(f){return arguments.length?(i=+f,c):i},c}const{abs:re,cos:Et,sin:Wt,acos:Vh,atan2:ie,sqrt:Nt,pow:lt}=Math;function oe(e){return e<0?-lt(-e,1/3):lt(e,1/3)}const wo=Math.PI,Ie=2*wo,jt=wo/2,Wh=1e-6,pn=Number.MAX_SAFE_INTEGER||9007199254740991,mn=Number.MIN_SAFE_INTEGER||-9007199254740991,Gh={x:0,y:0,z:0},O={Tvalues:[-.06405689286260563,.06405689286260563,-.1911188674736163,.1911188674736163,-.3150426796961634,.3150426796961634,-.4337935076260451,.4337935076260451,-.5454214713888396,.5454214713888396,-.6480936519369755,.6480936519369755,-.7401241915785544,.7401241915785544,-.820001985973903,.820001985973903,-.8864155270044011,.8864155270044011,-.9382745520027328,.9382745520027328,-.9747285559713095,.9747285559713095,-.9951872199970213,.9951872199970213],Cvalues:[.12793819534675216,.12793819534675216,.1258374563468283,.1258374563468283,.12167047292780339,.12167047292780339,.1155056680537256,.1155056680537256,.10744427011596563,.10744427011596563,.09761865210411388,.09761865210411388,.08619016153195327,.08619016153195327,.0733464814110803,.0733464814110803,.05929858491543678,.05929858491543678,.04427743881741981,.04427743881741981,.028531388628933663,.028531388628933663,.0123412297999872,.0123412297999872],arcfn:function(e,n){const r=n(e);let i=r.x*r.x+r.y*r.y;return typeof r.z<"u"&&(i+=r.z*r.z),Nt(i)},compute:function(e,n,r){if(e===0)return n[0].t=0,n[0];const i=n.length-1;if(e===1)return n[i].t=1,n[i];const o=1-e;let s=n;if(i===0)return n[0].t=e,n[0];if(i===1){const l={x:o*s[0].x+e*s[1].x,y:o*s[0].y+e*s[1].y,t:e};return r&&(l.z=o*s[0].z+e*s[1].z),l}if(i<4){let l=o*o,u=e*e,c,h,f,d=0;i===2?(s=[s[0],s[1],s[2],Gh],c=l,h=o*e*2,f=u):i===3&&(c=l*o,h=l*e*3,f=o*u*3,d=e*u);const g={x:c*s[0].x+h*s[1].x+f*s[2].x+d*s[3].x,y:c*s[0].y+h*s[1].y+f*s[2].y+d*s[3].y,t:e};return r&&(g.z=c*s[0].z+h*s[1].z+f*s[2].z+d*s[3].z),g}const a=JSON.parse(JSON.stringify(n));for(;a.length>1;){for(let l=0;l<a.length-1;l++)a[l]={x:a[l].x+(a[l+1].x-a[l].x)*e,y:a[l].y+(a[l+1].y-a[l].y)*e},typeof a[l].z<"u"&&(a[l].z=a[l].z+(a[l+1].z-a[l].z)*e);a.splice(a.length-1,1)}return a[0].t=e,a[0]},computeWithRatios:function(e,n,r,i){const o=1-e,s=r,a=n;let l=s[0],u=s[1],c=s[2],h=s[3],f;if(l*=o,u*=e,a.length===2)return f=l+u,{x:(l*a[0].x+u*a[1].x)/f,y:(l*a[0].y+u*a[1].y)/f,z:i?(l*a[0].z+u*a[1].z)/f:!1,t:e};if(l*=o,u*=2*o,c*=e*e,a.length===3)return f=l+u+c,{x:(l*a[0].x+u*a[1].x+c*a[2].x)/f,y:(l*a[0].y+u*a[1].y+c*a[2].y)/f,z:i?(l*a[0].z+u*a[1].z+c*a[2].z)/f:!1,t:e};if(l*=o,u*=1.5*o,c*=3*o,h*=e*e*e,a.length===4)return f=l+u+c+h,{x:(l*a[0].x+u*a[1].x+c*a[2].x+h*a[3].x)/f,y:(l*a[0].y+u*a[1].y+c*a[2].y+h*a[3].y)/f,z:i?(l*a[0].z+u*a[1].z+c*a[2].z+h*a[3].z)/f:!1,t:e}},derive:function(e,n){const r=[];for(let i=e,o=i.length,s=o-1;o>1;o--,s--){const a=[];for(let l=0,u;l<s;l++)u={x:s*(i[l+1].x-i[l].x),y:s*(i[l+1].y-i[l].y)},n&&(u.z=s*(i[l+1].z-i[l].z)),a.push(u);r.push(a),i=a}return r},between:function(e,n,r){return n<=e&&e<=r||O.approximately(e,n)||O.approximately(e,r)},approximately:function(e,n,r){return re(e-n)<=(r||Wh)},length:function(e){const r=O.Tvalues.length;let i=0;for(let o=0,s;o<r;o++)s=.5*O.Tvalues[o]+.5,i+=O.Cvalues[o]*O.arcfn(s,e);return .5*i},map:function(e,n,r,i,o){const s=r-n,a=o-i,l=e-n,u=l/s;return i+a*u},lerp:function(e,n,r){const i={x:n.x+e*(r.x-n.x),y:n.y+e*(r.y-n.y)};return n.z!==void 0&&r.z!==void 0&&(i.z=n.z+e*(r.z-n.z)),i},pointToString:function(e){let n=e.x+"/"+e.y;return typeof e.z<"u"&&(n+="/"+e.z),n},pointsToString:function(e){return"["+e.map(O.pointToString).join(", ")+"]"},copy:function(e){return JSON.parse(JSON.stringify(e))},angle:function(e,n,r){const i=n.x-e.x,o=n.y-e.y,s=r.x-e.x,a=r.y-e.y,l=i*a-o*s,u=i*s+o*a;return ie(l,u)},round:function(e,n){const r=""+e,i=r.indexOf(".");return parseFloat(r.substring(0,i+1+n))},dist:function(e,n){const r=e.x-n.x,i=e.y-n.y;return Nt(r*r+i*i)},closest:function(e,n){let r=lt(2,63),i,o;return e.forEach(function(s,a){o=O.dist(n,s),o<r&&(r=o,i=a)}),{mdist:r,mpos:i}},abcratio:function(e,n){if(n!==2&&n!==3)return!1;if(typeof e>"u")e=.5;else if(e===0||e===1)return e;const r=lt(e,n)+lt(1-e,n),i=r-1;return re(i/r)},projectionratio:function(e,n){if(n!==2&&n!==3)return!1;if(typeof e>"u")e=.5;else if(e===0||e===1)return e;const r=lt(1-e,n),i=lt(e,n)+r;return r/i},lli8:function(e,n,r,i,o,s,a,l){const u=(e*i-n*r)*(o-a)-(e-r)*(o*l-s*a),c=(e*i-n*r)*(s-l)-(n-i)*(o*l-s*a),h=(e-r)*(s-l)-(n-i)*(o-a);return h==0?!1:{x:u/h,y:c/h}},lli4:function(e,n,r,i){const o=e.x,s=e.y,a=n.x,l=n.y,u=r.x,c=r.y,h=i.x,f=i.y;return O.lli8(o,s,a,l,u,c,h,f)},lli:function(e,n){return O.lli4(e,e.c,n,n.c)},makeline:function(e,n){return new X(e.x,e.y,(e.x+n.x)/2,(e.y+n.y)/2,n.x,n.y)},findbbox:function(e){let n=pn,r=pn,i=mn,o=mn;return e.forEach(function(s){const a=s.bbox();n>a.x.min&&(n=a.x.min),r>a.y.min&&(r=a.y.min),i<a.x.max&&(i=a.x.max),o<a.y.max&&(o=a.y.max)}),{x:{min:n,mid:(n+i)/2,max:i,size:i-n},y:{min:r,mid:(r+o)/2,max:o,size:o-r}}},shapeintersections:function(e,n,r,i,o){if(!O.bboxoverlap(n,i))return[];const s=[],a=[e.startcap,e.forward,e.back,e.endcap],l=[r.startcap,r.forward,r.back,r.endcap];return a.forEach(function(u){u.virtual||l.forEach(function(c){if(c.virtual)return;const h=u.intersects(c,o);h.length>0&&(h.c1=u,h.c2=c,h.s1=e,h.s2=r,s.push(h))})}),s},makeshape:function(e,n,r){const i=n.points.length,o=e.points.length,s=O.makeline(n.points[i-1],e.points[0]),a=O.makeline(e.points[o-1],n.points[0]),l={startcap:s,forward:e,back:n,endcap:a,bbox:O.findbbox([s,e,n,a])};return l.intersections=function(u){return O.shapeintersections(l,l.bbox,u,u.bbox,r)},l},getminmax:function(e,n,r){if(!r)return{min:0,max:0};let i=pn,o=mn,s,a;r.indexOf(0)===-1&&(r=[0].concat(r)),r.indexOf(1)===-1&&r.push(1);for(let l=0,u=r.length;l<u;l++)s=r[l],a=e.get(s),a[n]<i&&(i=a[n]),a[n]>o&&(o=a[n]);return{min:i,mid:(i+o)/2,max:o,size:o-i}},align:function(e,n){const r=n.p1.x,i=n.p1.y,o=-ie(n.p2.y-i,n.p2.x-r),s=function(a){return{x:(a.x-r)*Et(o)-(a.y-i)*Wt(o),y:(a.x-r)*Wt(o)+(a.y-i)*Et(o)}};return e.map(s)},roots:function(e,n){n=n||{p1:{x:0,y:0},p2:{x:1,y:0}};const r=e.length-1,i=O.align(e,n),o=function(S){return 0<=S&&S<=1};if(r===2){const S=i[0].y,M=i[1].y,z=i[2].y,E=S-2*M+z;if(E!==0){const I=-Nt(M*M-S*z),N=-S+M,$=-(I+N)/E,A=-(-I+N)/E;return[$,A].filter(o)}else if(M!==z&&E===0)return[(2*M-z)/(2*M-2*z)].filter(o);return[]}const s=i[0].y,a=i[1].y,l=i[2].y,u=i[3].y;let c=-s+3*a-3*l+u,h=3*s-6*a+3*l,f=-3*s+3*a,d=s;if(O.approximately(c,0)){if(O.approximately(h,0))return O.approximately(f,0)?[]:[-d/f].filter(o);const S=Nt(f*f-4*h*d),M=2*h;return[(S-f)/M,(-f-S)/M].filter(o)}h/=c,f/=c,d/=c;const g=(3*f-h*h)/3,m=g/3,v=(2*h*h*h-9*h*f+27*d)/27,y=v/2,p=y*y+m*m*m;let x,C,b,_,k;if(p<0){const S=-g/3,M=S*S*S,z=Nt(M),E=-v/(2*z),I=E<-1?-1:E>1?1:E,N=Vh(I),$=oe(z),A=2*$;return b=A*Et(N/3)-h/3,_=A*Et((N+Ie)/3)-h/3,k=A*Et((N+2*Ie)/3)-h/3,[b,_,k].filter(o)}else{if(p===0)return x=y<0?oe(-y):-oe(y),b=2*x-h/3,_=-x-h/3,[b,_].filter(o);{const S=Nt(p);return x=oe(-y+S),C=oe(y+S),[x-C-h/3].filter(o)}}},droots:function(e){if(e.length===3){const n=e[0],r=e[1],i=e[2],o=n-2*r+i;if(o!==0){const s=-Nt(r*r-n*i),a=-n+r,l=-(s+a)/o,u=-(-s+a)/o;return[l,u]}else if(r!==i&&o===0)return[(2*r-i)/(2*(r-i))];return[]}if(e.length===2){const n=e[0],r=e[1];return n!==r?[n/(n-r)]:[]}return[]},curvature:function(e,n,r,i,o){let s,a,l,u,c=0,h=0;const f=O.compute(e,n),d=O.compute(e,r),g=f.x*f.x+f.y*f.y;if(i?(s=Nt(lt(f.y*d.z-d.y*f.z,2)+lt(f.z*d.x-d.z*f.x,2)+lt(f.x*d.y-d.x*f.y,2)),a=lt(g+f.z*f.z,3/2)):(s=f.x*d.y-f.y*d.x,a=lt(g,3/2)),s===0||a===0)return{k:0,r:0};if(c=s/a,h=a/s,!o){const m=O.curvature(e-.001,n,r,i,!0).k,v=O.curvature(e+.001,n,r,i,!0).k;u=(v-c+(c-m))/2,l=(re(v-c)+re(c-m))/2}return{k:c,r:h,dk:u,adk:l}},inflections:function(e){if(e.length<4)return[];const n=O.align(e,{p1:e[0],p2:e.slice(-1)[0]}),r=n[2].x*n[1].y,i=n[3].x*n[1].y,o=n[1].x*n[2].y,s=n[3].x*n[2].y,a=18*(-3*r+2*i+3*o-s),l=18*(3*r-i-3*o),u=18*(o-r);if(O.approximately(a,0)){if(!O.approximately(l,0)){let d=-u/l;if(0<=d&&d<=1)return[d]}return[]}const c=2*a;if(O.approximately(c,0))return[];const h=l*l-4*a*u;if(h<0)return[];const f=Math.sqrt(h);return[(f-l)/c,-(l+f)/c].filter(function(d){return 0<=d&&d<=1})},bboxoverlap:function(e,n){const r=["x","y"],i=r.length;for(let o=0,s,a,l,u;o<i;o++)if(s=r[o],a=e[s].mid,l=n[s].mid,u=(e[s].size+n[s].size)/2,re(a-l)>=u)return!1;return!0},expandbox:function(e,n){n.x.min<e.x.min&&(e.x.min=n.x.min),n.y.min<e.y.min&&(e.y.min=n.y.min),n.z&&n.z.min<e.z.min&&(e.z.min=n.z.min),n.x.max>e.x.max&&(e.x.max=n.x.max),n.y.max>e.y.max&&(e.y.max=n.y.max),n.z&&n.z.max>e.z.max&&(e.z.max=n.z.max),e.x.mid=(e.x.min+e.x.max)/2,e.y.mid=(e.y.min+e.y.max)/2,e.z&&(e.z.mid=(e.z.min+e.z.max)/2),e.x.size=e.x.max-e.x.min,e.y.size=e.y.max-e.y.min,e.z&&(e.z.size=e.z.max-e.z.min)},pairiteration:function(e,n,r){const i=e.bbox(),o=n.bbox(),s=1e5,a=r||.5;if(i.x.size+i.y.size<a&&o.x.size+o.y.size<a)return[(s*(e._t1+e._t2)/2|0)/s+"/"+(s*(n._t1+n._t2)/2|0)/s];let l=e.split(.5),u=n.split(.5),c=[{left:l.left,right:u.left},{left:l.left,right:u.right},{left:l.right,right:u.right},{left:l.right,right:u.left}];c=c.filter(function(f){return O.bboxoverlap(f.left.bbox(),f.right.bbox())});let h=[];return c.length===0||(c.forEach(function(f){h=h.concat(O.pairiteration(f.left,f.right,a))}),h=h.filter(function(f,d){return h.indexOf(f)===d})),h},getccenter:function(e,n,r){const i=n.x-e.x,o=n.y-e.y,s=r.x-n.x,a=r.y-n.y,l=i*Et(jt)-o*Wt(jt),u=i*Wt(jt)+o*Et(jt),c=s*Et(jt)-a*Wt(jt),h=s*Wt(jt)+a*Et(jt),f=(e.x+n.x)/2,d=(e.y+n.y)/2,g=(n.x+r.x)/2,m=(n.y+r.y)/2,v=f+l,y=d+u,p=g+c,x=m+h,C=O.lli8(f,d,v,y,g,m,p,x),b=O.dist(C,e);let _=ie(e.y-C.y,e.x-C.x),k=ie(n.y-C.y,n.x-C.x),S=ie(r.y-C.y,r.x-C.x),M;return _<S?((_>k||k>S)&&(_+=Ie),_>S&&(M=S,S=_,_=M)):S<k&&k<_?(M=S,S=_,_=M):S+=Ie,C.s=_,C.e=S,C.r=b,C},numberSort:function(e,n){return e-n}};class ge{constructor(n){this.curves=[],this._3d=!1,n&&(this.curves=n,this._3d=this.curves[0]._3d)}valueOf(){return this.toString()}toString(){return"["+this.curves.map(function(n){return O.pointsToString(n.points)}).join(", ")+"]"}addCurve(n){this.curves.push(n),this._3d=this._3d||n._3d}length(){return this.curves.map(function(n){return n.length()}).reduce(function(n,r){return n+r})}curve(n){return this.curves[n]}bbox(){const n=this.curves;for(var r=n[0].bbox(),i=1;i<n.length;i++)O.expandbox(r,n[i].bbox());return r}offset(n){const r=[];return this.curves.forEach(function(i){r.push(...i.offset(n))}),new ge(r)}}const{abs:se,min:ai,max:li,cos:Bh,sin:Xh,acos:Kh,sqrt:ae}=Math,Yh=Math.PI;class X{constructor(n){let r=n&&n.forEach?n:Array.from(arguments).slice(),i=!1;if(typeof r[0]=="object"){i=r.length;const g=[];r.forEach(function(m){["x","y","z"].forEach(function(v){typeof m[v]<"u"&&g.push(m[v])})}),r=g}let o=!1;const s=r.length;if(i){if(i>4){if(arguments.length!==1)throw new Error("Only new Bezier(point[]) is accepted for 4th and higher order curves");o=!0}}else if(s!==6&&s!==8&&s!==9&&s!==12&&arguments.length!==1)throw new Error("Only new Bezier(point[]) is accepted for 4th and higher order curves");const a=this._3d=!o&&(s===9||s===12)||n&&n[0]&&typeof n[0].z<"u",l=this.points=[];for(let g=0,m=a?3:2;g<s;g+=m){var u={x:r[g],y:r[g+1]};a&&(u.z=r[g+2]),l.push(u)}const c=this.order=l.length-1,h=this.dims=["x","y"];a&&h.push("z"),this.dimlen=h.length;const f=O.align(l,{p1:l[0],p2:l[c]}),d=O.dist(l[0],l[c]);this._linear=f.reduce((g,m)=>g+se(m.y),0)<d/50,this._lut=[],this._t1=0,this._t2=1,this.update()}static quadraticFromPoints(n,r,i,o){if(typeof o>"u"&&(o=.5),o===0)return new X(r,r,i);if(o===1)return new X(n,r,r);const s=X.getABC(2,n,r,i,o);return new X(n,s.A,i)}static cubicFromPoints(n,r,i,o,s){typeof o>"u"&&(o=.5);const a=X.getABC(3,n,r,i,o);typeof s>"u"&&(s=O.dist(r,a.C));const l=s*(1-o)/o,u=O.dist(n,i),c=(i.x-n.x)/u,h=(i.y-n.y)/u,f=s*c,d=s*h,g=l*c,m=l*h,v={x:r.x-f,y:r.y-d},y={x:r.x+g,y:r.y+m},p=a.A,x={x:p.x+(v.x-p.x)/(1-o),y:p.y+(v.y-p.y)/(1-o)},C={x:p.x+(y.x-p.x)/o,y:p.y+(y.y-p.y)/o},b={x:n.x+(x.x-n.x)/o,y:n.y+(x.y-n.y)/o},_={x:i.x+(C.x-i.x)/(1-o),y:i.y+(C.y-i.y)/(1-o)};return new X(n,b,_,i)}static getUtils(){return O}getUtils(){return X.getUtils()}static get PolyBezier(){return ge}valueOf(){return this.toString()}toString(){return O.pointsToString(this.points)}toSVG(){if(this._3d)return!1;const n=this.points,r=n[0].x,i=n[0].y,o=["M",r,i,this.order===2?"Q":"C"];for(let s=1,a=n.length;s<a;s++)o.push(n[s].x),o.push(n[s].y);return o.join(" ")}setRatios(n){if(n.length!==this.points.length)throw new Error("incorrect number of ratio values");this.ratios=n,this._lut=[]}verify(){const n=this.coordDigest();n!==this._print&&(this._print=n,this.update())}coordDigest(){return this.points.map(function(n,r){return""+r+n.x+n.y+(n.z?n.z:0)}).join("")}update(){this._lut=[],this.dpoints=O.derive(this.points,this._3d),this.computedirection()}computedirection(){const n=this.points,r=O.angle(n[0],n[this.order],n[1]);this.clockwise=r>0}length(){return O.length(this.derivative.bind(this))}static getABC(n=2,r,i,o,s=.5){const a=O.projectionratio(s,n),l=1-a,u={x:a*r.x+l*o.x,y:a*r.y+l*o.y},c=O.abcratio(s,n);return{A:{x:i.x+(i.x-u.x)/c,y:i.y+(i.y-u.y)/c},B:i,C:u,S:r,E:o}}getABC(n,r){r=r||this.get(n);let i=this.points[0],o=this.points[this.order];return X.getABC(this.order,i,r,o,n)}getLUT(n){if(this.verify(),n=n||100,this._lut.length===n+1)return this._lut;this._lut=[],n++,this._lut=[];for(let r=0,i,o;r<n;r++)o=r/(n-1),i=this.compute(o),i.t=o,this._lut.push(i);return this._lut}on(n,r){r=r||5;const i=this.getLUT(),o=[];for(let s=0,a,l=0;s<i.length;s++)a=i[s],O.dist(a,n)<r&&(o.push(a),l+=s/i.length);return o.length?t/=o.length:!1}project(n){const r=this.getLUT(),i=r.length-1,o=O.closest(r,n),s=o.mpos,a=(s-1)/i,l=(s+1)/i,u=.1/i;let c=o.mdist,h=a,f=h,d;c+=1;for(let g;h<l+u;h+=u)d=this.compute(h),g=O.dist(n,d),g<c&&(c=g,f=h);return f=f<0?0:f>1?1:f,d=this.compute(f),d.t=f,d.d=c,d}get(n){return this.compute(n)}point(n){return this.points[n]}compute(n){return this.ratios?O.computeWithRatios(n,this.points,this.ratios,this._3d):O.compute(n,this.points,this._3d,this.ratios)}raise(){const n=this.points,r=[n[0]],i=n.length;for(let o=1,s,a;o<i;o++)s=n[o],a=n[o-1],r[o]={x:(i-o)/i*s.x+o/i*a.x,y:(i-o)/i*s.y+o/i*a.y};return r[i]=n[i-1],new X(r)}derivative(n){return O.compute(n,this.dpoints[0],this._3d)}dderivative(n){return O.compute(n,this.dpoints[1],this._3d)}align(){let n=this.points;return new X(O.align(n,{p1:n[0],p2:n[n.length-1]}))}curvature(n){return O.curvature(n,this.dpoints[0],this.dpoints[1],this._3d)}inflections(){return O.inflections(this.points)}normal(n){return this._3d?this.__normal3(n):this.__normal2(n)}__normal2(n){const r=this.derivative(n),i=ae(r.x*r.x+r.y*r.y);return{t:n,x:-r.y/i,y:r.x/i}}__normal3(n){const r=this.derivative(n),i=this.derivative(n+.01),o=ae(r.x*r.x+r.y*r.y+r.z*r.z),s=ae(i.x*i.x+i.y*i.y+i.z*i.z);r.x/=o,r.y/=o,r.z/=o,i.x/=s,i.y/=s,i.z/=s;const a={x:i.y*r.z-i.z*r.y,y:i.z*r.x-i.x*r.z,z:i.x*r.y-i.y*r.x},l=ae(a.x*a.x+a.y*a.y+a.z*a.z);a.x/=l,a.y/=l,a.z/=l;const u=[a.x*a.x,a.x*a.y-a.z,a.x*a.z+a.y,a.x*a.y+a.z,a.y*a.y,a.y*a.z-a.x,a.x*a.z-a.y,a.y*a.z+a.x,a.z*a.z];return{t:n,x:u[0]*r.x+u[1]*r.y+u[2]*r.z,y:u[3]*r.x+u[4]*r.y+u[5]*r.z,z:u[6]*r.x+u[7]*r.y+u[8]*r.z}}hull(n){let r=this.points,i=[],o=[],s=0;for(o[s++]=r[0],o[s++]=r[1],o[s++]=r[2],this.order===3&&(o[s++]=r[3]);r.length>1;){i=[];for(let a=0,l,u=r.length-1;a<u;a++)l=O.lerp(n,r[a],r[a+1]),o[s++]=l,i.push(l);r=i}return o}split(n,r){if(n===0&&r)return this.split(r).left;if(r===1)return this.split(n).right;const i=this.hull(n),o={left:this.order===2?new X([i[0],i[3],i[5]]):new X([i[0],i[4],i[7],i[9]]),right:this.order===2?new X([i[5],i[4],i[2]]):new X([i[9],i[8],i[6],i[3]]),span:i};return o.left._t1=O.map(0,0,1,this._t1,this._t2),o.left._t2=O.map(n,0,1,this._t1,this._t2),o.right._t1=O.map(n,0,1,this._t1,this._t2),o.right._t2=O.map(1,0,1,this._t1,this._t2),r?(r=O.map(r,n,1,0,1),o.right.split(r).left):o}extrema(){const n={};let r=[];return this.dims.forEach((function(i){let o=function(a){return a[i]},s=this.dpoints[0].map(o);n[i]=O.droots(s),this.order===3&&(s=this.dpoints[1].map(o),n[i]=n[i].concat(O.droots(s))),n[i]=n[i].filter(function(a){return a>=0&&a<=1}),r=r.concat(n[i].sort(O.numberSort))}).bind(this)),n.values=r.sort(O.numberSort).filter(function(i,o){return r.indexOf(i)===o}),n}bbox(){const n=this.extrema(),r={};return this.dims.forEach((function(i){r[i]=O.getminmax(this,i,n[i])}).bind(this)),r}overlaps(n){const r=this.bbox(),i=n.bbox();return O.bboxoverlap(r,i)}offset(n,r){if(typeof r<"u"){const i=this.get(n),o=this.normal(n),s={c:i,n:o,x:i.x+o.x*r,y:i.y+o.y*r};return this._3d&&(s.z=i.z+o.z*r),s}if(this._linear){const i=this.normal(0),o=this.points.map(function(s){const a={x:s.x+n*i.x,y:s.y+n*i.y};return s.z&&i.z&&(a.z=s.z+n*i.z),a});return[new X(o)]}return this.reduce().map(function(i){return i._linear?i.offset(n)[0]:i.scale(n)})}simple(){if(this.order===3){const o=O.angle(this.points[0],this.points[3],this.points[1]),s=O.angle(this.points[0],this.points[3],this.points[2]);if(o>0&&s<0||o<0&&s>0)return!1}const n=this.normal(0),r=this.normal(1);let i=n.x*r.x+n.y*r.y;return this._3d&&(i+=n.z*r.z),se(Kh(i))<Yh/3}reduce(){let n,r=0,i=0,o=.01,s,a=[],l=[],u=this.extrema().values;for(u.indexOf(0)===-1&&(u=[0].concat(u)),u.indexOf(1)===-1&&u.push(1),r=u[0],n=1;n<u.length;n++)i=u[n],s=this.split(r,i),s._t1=r,s._t2=i,a.push(s),r=i;return a.forEach(function(c){for(r=0,i=0;i<=1;)for(i=r+o;i<=1+o;i+=o)if(s=c.split(r,i),!s.simple()){if(i-=o,se(r-i)<o)return[];s=c.split(r,i),s._t1=O.map(r,0,1,c._t1,c._t2),s._t2=O.map(i,0,1,c._t1,c._t2),l.push(s),r=i;break}r<1&&(s=c.split(r,1),s._t1=O.map(r,0,1,c._t1,c._t2),s._t2=c._t2,l.push(s))}),l}translate(n,r,i){i=typeof i=="number"?i:r;const o=this.order;let s=this.points.map((a,l)=>(1-l/o)*r+l/o*i);return new X(this.points.map((a,l)=>({x:a.x+n.x*s[l],y:a.y+n.y*s[l]})))}scale(n){const r=this.order;let i=!1;if(typeof n=="function"&&(i=n),i&&r===2)return this.raise().scale(i);const o=this.clockwise,s=this.points;if(this._linear)return this.translate(this.normal(0),i?i(0):n,i?i(1):n);const a=i?i(0):n,l=i?i(1):n,u=[this.offset(0,10),this.offset(1,10)],c=[],h=O.lli4(u[0],u[0].c,u[1],u[1].c);if(!h)throw new Error("cannot scale this curve. Try reducing it first.");return[0,1].forEach(function(f){const d=c[f*r]=O.copy(s[f*r]);d.x+=(f?l:a)*u[f].n.x,d.y+=(f?l:a)*u[f].n.y}),i?([0,1].forEach(function(f){if(!(r===2&&f)){var d=s[f+1],g={x:d.x-h.x,y:d.y-h.y},m=i?i((f+1)/r):n;i&&!o&&(m=-m);var v=ae(g.x*g.x+g.y*g.y);g.x/=v,g.y/=v,c[f+1]={x:d.x+m*g.x,y:d.y+m*g.y}}}),new X(c)):([0,1].forEach(f=>{if(r===2&&f)return;const d=c[f*r],g=this.derivative(f),m={x:d.x+g.x,y:d.y+g.y};c[f+1]=O.lli4(d,m,h,s[f+1])}),new X(c))}outline(n,r,i,o){if(r=r===void 0?n:r,this._linear){const _=this.normal(0),k=this.points[0],S=this.points[this.points.length-1];let M,z,E;i===void 0&&(i=n,o=r),M={x:k.x+_.x*n,y:k.y+_.y*n},E={x:S.x+_.x*i,y:S.y+_.y*i},z={x:(M.x+E.x)/2,y:(M.y+E.y)/2};const I=[M,z,E];M={x:k.x-_.x*r,y:k.y-_.y*r},E={x:S.x-_.x*o,y:S.y-_.y*o},z={x:(M.x+E.x)/2,y:(M.y+E.y)/2};const N=[E,z,M],$=O.makeline(N[2],I[0]),A=O.makeline(I[2],N[0]),P=[$,new X(I),A,new X(N)];return new ge(P)}const s=this.reduce(),a=s.length,l=[];let u=[],c,h=0,f=this.length();const d=typeof i<"u"&&typeof o<"u";function g(_,k,S,M,z){return function(E){const I=M/S,N=(M+z)/S,$=k-_;return O.map(E,0,1,_+I*$,_+N*$)}}s.forEach(function(_){const k=_.length();d?(l.push(_.scale(g(n,i,f,h,k))),u.push(_.scale(g(-r,-o,f,h,k)))):(l.push(_.scale(n)),u.push(_.scale(-r))),h+=k}),u=u.map(function(_){return c=_.points,c[3]?_.points=[c[3],c[2],c[1],c[0]]:_.points=[c[2],c[1],c[0]],_}).reverse();const m=l[0].points[0],v=l[a-1].points[l[a-1].points.length-1],y=u[a-1].points[u[a-1].points.length-1],p=u[0].points[0],x=O.makeline(y,m),C=O.makeline(v,p),b=[x].concat(l).concat([C]).concat(u);return new ge(b)}outlineshapes(n,r,i){r=r||n;const o=this.outline(n,r).curves,s=[];for(let a=1,l=o.length;a<l/2;a++){const u=O.makeshape(o[a],o[l-a],i);u.startcap.virtual=a>1,u.endcap.virtual=a<l/2-1,s.push(u)}return s}intersects(n,r){return n?n.p1&&n.p2?this.lineIntersects(n):(n instanceof X&&(n=n.reduce()),this.curveintersects(this.reduce(),n,r)):this.selfintersects(r)}lineIntersects(n){const r=ai(n.p1.x,n.p2.x),i=ai(n.p1.y,n.p2.y),o=li(n.p1.x,n.p2.x),s=li(n.p1.y,n.p2.y);return O.roots(this.points,n).filter(a=>{var l=this.get(a);return O.between(l.x,r,o)&&O.between(l.y,i,s)})}selfintersects(n){const r=this.reduce(),i=r.length-2,o=[];for(let s=0,a,l,u;s<i;s++)l=r.slice(s,s+1),u=r.slice(s+2),a=this.curveintersects(l,u,n),o.push(...a);return o}curveintersects(n,r,i){const o=[];n.forEach(function(a){r.forEach(function(l){a.overlaps(l)&&o.push({left:a,right:l})})});let s=[];return o.forEach(function(a){const l=O.pairiteration(a.left,a.right,i);l.length>0&&(s=s.concat(l))}),s}arcs(n){return n=n||.5,this._iterate(n,[])}_error(n,r,i,o){const s=(o-i)/4,a=this.get(i+s),l=this.get(o-s),u=O.dist(n,r),c=O.dist(n,a),h=O.dist(n,l);return se(c-u)+se(h-u)}_iterate(n,r){let i=0,o=1,s;do{s=0,o=1;let a=this.get(i),l,u,c,h,f=!1,d=!1,g,m=o,v=1;do if(d=f,h=c,m=(i+o)/2,l=this.get(m),u=this.get(o),c=O.getccenter(a,l,u),c.interval={start:i,end:o},f=this._error(c,a,i,o)<=n,g=d&&!f,g||(v=o),f){if(o>=1){if(c.interval.end=v=1,h=c,o>1){let p={x:c.x+c.r*Bh(c.e),y:c.y+c.r*Xh(c.e)};c.e+=O.angle({x:c.x,y:c.y},p,this.get(1))}break}o=o+(o-i)/2}else o=m;while(!g&&s++<100);if(s>=100)break;h=h||c,r.push(h),i=v}while(o<1);return r}}function Fn(e,n){(n==null||n>e.length)&&(n=e.length);for(var r=0,i=Array(n);r<n;r++)i[r]=e[r];return i}function Zh(e){if(Array.isArray(e))return e}function Qh(e){if(Array.isArray(e))return Fn(e)}function Jh(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function td(e,n){var r=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(r!=null){var i,o,s,a,l=[],u=!0,c=!1;try{if(s=(r=r.call(e)).next,n!==0)for(;!(u=(i=s.call(r)).done)&&(l.push(i.value),l.length!==n);u=!0);}catch(h){c=!0,o=h}finally{try{if(!u&&r.return!=null&&(a=r.return(),Object(a)!==a))return}finally{if(c)throw o}}return l}}function ed(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
20
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function nd(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
21
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function rd(e,n){if(e==null)return{};var r,i,o=id(e,n);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(i=0;i<s.length;i++)r=s[i],n.includes(r)||{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function id(e,n){if(e==null)return{};var r={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(n.includes(i))continue;r[i]=e[i]}return r}function od(e,n){return Zh(e)||td(e,n)||ko(e,n)||ed()}function sd(e){return Qh(e)||Jh(e)||ko(e)||nd()}function ad(e,n){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,n);if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}function ld(e){var n=ad(e,"string");return typeof n=="symbol"?n:n+""}function ko(e,n){if(e){if(typeof e=="string")return Fn(e,n);var r={}.toString.call(e).slice(8,-1);return r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set"?Array.from(e):r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Fn(e,n):void 0}}var ud=(function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,o=(n instanceof Array?n.length?n:[void 0]:[n]).map(function(l){return{keyAccessor:l,isProp:!(l instanceof Function)}}),s=e.reduce(function(l,u){var c=l,h=u;return o.forEach(function(f,d){var g=f.keyAccessor,m=f.isProp,v;if(m){var y=h,p=y[g],x=rd(y,[g].map(ld));v=p,h=x}else v=g(h,d);d+1<o.length?(c.hasOwnProperty(v)||(c[v]={}),c=c[v]):r?(c.hasOwnProperty(v)||(c[v]=[]),c[v].push(h)):c[v]=h}),l},{});r instanceof Function&&(function l(u){var c=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1;c===o.length?Object.keys(u).forEach(function(h){return u[h]=r(u[h])}):Object.values(u).forEach(function(h){return l(h,c+1)})})(s);var a=s;return i&&(a=[],(function l(u){var c=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];c.length===o.length?a.push({keys:c,vals:u}):Object.entries(u).forEach(function(h){var f=od(h,2),d=f[0],g=f[1];return l(g,[].concat(sd(c),[d]))})})(s),n instanceof Array&&n.length===0&&a.length===1&&(a[0].keys=[])),a});function cd(e,n){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(n).domain(e);break}return this}const ui=Symbol("implicit");function So(){var e=new Or,n=[],r=[],i=ui;function o(s){let a=e.get(s);if(a===void 0){if(i!==ui)return i;e.set(s,a=n.push(s)-1)}return r[a%r.length]}return o.domain=function(s){if(!arguments.length)return n.slice();n=[],e=new Or;for(const a of s)e.has(a)||e.set(a,n.push(a)-1);return o},o.range=function(s){return arguments.length?(r=Array.from(s),o):r.slice()},o.unknown=function(s){return arguments.length?(i=s,o):i},o.copy=function(){return So(n,r).unknown(i)},cd.apply(o,arguments),o}function fd(e){for(var n=e.length/6|0,r=new Array(n),i=0;i<n;)r[i]="#"+e.slice(i*6,++i*6);return r}const hd=fd("a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00cab2d66a3d9affff99b15928");function dd(e,n){n===void 0&&(n={});var r=n.insertAt;if(!(typeof document>"u")){var i=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css",r==="top"&&i.firstChild?i.insertBefore(o,i.firstChild):i.appendChild(o),o.styleSheet?o.styleSheet.cssText=e:o.appendChild(document.createTextNode(e))}}var gd=`.force-graph-container canvas {
|
|
22
|
-
display: block;
|
|
23
|
-
user-select: none;
|
|
24
|
-
outline: none;
|
|
25
|
-
-webkit-tap-highlight-color: transparent;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
.force-graph-container .clickable {
|
|
29
|
-
cursor: pointer;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
.force-graph-container .grabbable {
|
|
33
|
-
cursor: move;
|
|
34
|
-
cursor: grab;
|
|
35
|
-
cursor: -moz-grab;
|
|
36
|
-
cursor: -webkit-grab;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
.force-graph-container .grabbable:active {
|
|
40
|
-
cursor: grabbing;
|
|
41
|
-
cursor: -moz-grabbing;
|
|
42
|
-
cursor: -webkit-grabbing;
|
|
43
|
-
}
|
|
44
|
-
`;dd(gd);function Ln(e,n){(n==null||n>e.length)&&(n=e.length);for(var r=0,i=Array(n);r<n;r++)i[r]=e[r];return i}function pd(e){if(Array.isArray(e))return e}function md(e){if(Array.isArray(e))return Ln(e)}function ci(e,n,r){if(Co())return Reflect.construct.apply(null,arguments);var i=[null];i.push.apply(i,n);var o=new(e.bind.apply(e,i));return o}function we(e,n,r){return(n=wd(n))in e?Object.defineProperty(e,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[n]=r,e}function Co(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(Co=function(){return!!e})()}function yd(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function vd(e,n){var r=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(r!=null){var i,o,s,a,l=[],u=!0,c=!1;try{if(s=(r=r.call(e)).next,n!==0)for(;!(u=(i=s.call(r)).done)&&(l.push(i.value),l.length!==n);u=!0);}catch(h){c=!0,o=h}finally{try{if(!u&&r.return!=null&&(a=r.return(),Object(a)!==a))return}finally{if(c)throw o}}return l}}function _d(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
45
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function xd(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
46
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function fi(e,n){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);n&&(i=i.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,i)}return r}function Gt(e){for(var n=1;n<arguments.length;n++){var r=arguments[n]!=null?arguments[n]:{};n%2?fi(Object(r),!0).forEach(function(i){we(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):fi(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function pe(e,n){return pd(e)||vd(e,n)||Ao(e,n)||_d()}function ct(e){return md(e)||yd(e)||Ao(e)||xd()}function bd(e,n){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,n);if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(n==="string"?String:Number)(e)}function wd(e){var n=bd(e,"string");return typeof n=="symbol"?n:n+""}function Un(e){"@babel/helpers - typeof";return Un=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(n){return typeof n}:function(n){return n&&typeof Symbol=="function"&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},Un(e)}function Ao(e,n){if(e){if(typeof e=="string")return Ln(e,n);var r={}.toString.call(e).slice(8,-1);return r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set"?Array.from(e):r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ln(e,n):void 0}}var kd=So(hd);function hi(e,n,r){!n||typeof r!="string"||e.filter(function(i){return!i[r]}).forEach(function(i){i[r]=kd(n(i))})}function Sd(e,n){var r=e.nodes,i=e.links,o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=o.nodeFilter,a=s===void 0?function(){return!0}:s,l=o.onLoopError,u=l===void 0?function(g){throw"Invalid DAG structure! Found cycle in node path: ".concat(g.join(" -> "),".")}:l,c={};r.forEach(function(g){return c[n(g)]={data:g,out:[],depth:-1,skip:!a(g)}}),i.forEach(function(g){var m=g.source,v=g.target,y=b(m),p=b(v);if(!c.hasOwnProperty(y))throw"Missing source node with id: ".concat(y);if(!c.hasOwnProperty(p))throw"Missing target node with id: ".concat(p);var x=c[y],C=c[p];x.out.push(C);function b(_){return Un(_)==="object"?n(_):_}});var h=[];d(Object.values(c));var f=Object.assign.apply(Object,[{}].concat(ct(Object.entries(c).filter(function(g){var m=pe(g,2),v=m[1];return!v.skip}).map(function(g){var m=pe(g,2),v=m[0],y=m[1];return we({},v,y.depth)}))));return f;function d(g){for(var m=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],v=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,y=function(){var b=g[p];if(m.indexOf(b)!==-1){var _=[].concat(ct(m.slice(m.indexOf(b))),[b]).map(function(k){return n(k.data)});return h.some(function(k){return k.length===_.length&&k.every(function(S,M){return S===_[M]})})||(h.push(_),u(_)),1}v>b.depth&&(b.depth=v,d(b.out,[].concat(ct(m),[b]),v+(b.skip?0:1)))},p=0,x=g.length;p<x;p++)y()}}var Cd=2,J=function(n,r){return r.onNeedsRedraw&&r.onNeedsRedraw()},di=function(n,r){if(!r.isShadow){var i=W(r.linkDirectionalParticles);r.graphData.links.forEach(function(o){var s=Math.round(Math.abs(i(o)));s?o.__photons=ct(Array(s)).map(function(){return{}}):delete o.__photons})}},Ze=Yn({props:{graphData:{default:{nodes:[],links:[]},onChange:function(n,r){r.engineRunning=!1,di(n,r)}},dagMode:{onChange:function(n,r){!n&&(r.graphData.nodes||[]).forEach(function(i){return i.fx=i.fy=void 0})}},dagLevelDistance:{},dagNodeFilter:{default:function(n){return!0}},onDagError:{triggerUpdate:!1},nodeRelSize:{default:4,triggerUpdate:!1,onChange:J},nodeId:{default:"id"},nodeVal:{default:"val",triggerUpdate:!1,onChange:J},nodeColor:{default:"color",triggerUpdate:!1,onChange:J},nodeAutoColorBy:{},nodeCanvasObject:{triggerUpdate:!1,onChange:J},nodeCanvasObjectMode:{default:function(){return"replace"},triggerUpdate:!1,onChange:J},nodeVisibility:{default:!0,triggerUpdate:!1,onChange:J},linkSource:{default:"source"},linkTarget:{default:"target"},linkVisibility:{default:!0,triggerUpdate:!1,onChange:J},linkColor:{default:"color",triggerUpdate:!1,onChange:J},linkAutoColorBy:{},linkLineDash:{triggerUpdate:!1,onChange:J},linkWidth:{default:1,triggerUpdate:!1,onChange:J},linkCurvature:{default:0,triggerUpdate:!1,onChange:J},linkCanvasObject:{triggerUpdate:!1,onChange:J},linkCanvasObjectMode:{default:function(){return"replace"},triggerUpdate:!1,onChange:J},linkDirectionalArrowLength:{default:0,triggerUpdate:!1,onChange:J},linkDirectionalArrowColor:{triggerUpdate:!1,onChange:J},linkDirectionalArrowRelPos:{default:.5,triggerUpdate:!1,onChange:J},linkDirectionalParticles:{default:0,triggerUpdate:!1,onChange:di},linkDirectionalParticleSpeed:{default:.01,triggerUpdate:!1},linkDirectionalParticleOffset:{default:0,triggerUpdate:!1},linkDirectionalParticleWidth:{default:4,triggerUpdate:!1},linkDirectionalParticleColor:{triggerUpdate:!1},linkDirectionalParticleCanvasObject:{triggerUpdate:!1},globalScale:{default:1,triggerUpdate:!1},d3AlphaMin:{default:0,triggerUpdate:!1},d3AlphaDecay:{default:.0228,triggerUpdate:!1,onChange:function(n,r){r.forceLayout.alphaDecay(n)}},d3AlphaTarget:{default:0,triggerUpdate:!1,onChange:function(n,r){r.forceLayout.alphaTarget(n)}},d3VelocityDecay:{default:.4,triggerUpdate:!1,onChange:function(n,r){r.forceLayout.velocityDecay(n)}},warmupTicks:{default:0,triggerUpdate:!1},cooldownTicks:{default:1/0,triggerUpdate:!1},cooldownTime:{default:15e3,triggerUpdate:!1},onUpdate:{default:function(){},triggerUpdate:!1},onFinishUpdate:{default:function(){},triggerUpdate:!1},onEngineTick:{default:function(){},triggerUpdate:!1},onEngineStop:{default:function(){},triggerUpdate:!1},onNeedsRedraw:{triggerUpdate:!1},isShadow:{default:!1,triggerUpdate:!1}},methods:{d3Force:function(n,r,i){return i===void 0?n.forceLayout.force(r):(n.forceLayout.force(r,i),this)},d3ReheatSimulation:function(n){return n.forceLayout.alpha(1),this.resetCountdown(),this},resetCountdown:function(n){return n.cntTicks=0,n.startTickTime=new Date,n.engineRunning=!0,this},isEngineRunning:function(n){return!!n.engineRunning},tickFrame:function(n){return!n.isShadow&&r(),o(),!n.isShadow&&s(),!n.isShadow&&a(),i(),this;function r(){n.engineRunning&&(++n.cntTicks>n.cooldownTicks||new Date-n.startTickTime>n.cooldownTime||n.d3AlphaMin>0&&n.forceLayout.alpha()<n.d3AlphaMin?(n.engineRunning=!1,n.onEngineStop()):(n.forceLayout.tick(),n.onEngineTick()))}function i(){var l=W(n.nodeVisibility),u=W(n.nodeVal),c=W(n.nodeColor),h=W(n.nodeCanvasObjectMode),f=n.ctx,d=n.isShadow/n.globalScale,g=n.graphData.nodes.filter(l);f.save(),g.forEach(function(m){var v=h(m);if(n.nodeCanvasObject&&(v==="before"||v==="replace")&&(n.nodeCanvasObject(m,f,n.globalScale),v==="replace")){f.restore();return}var y=Math.sqrt(Math.max(0,u(m)||1))*n.nodeRelSize+d;f.beginPath(),f.arc(m.x,m.y,y,0,2*Math.PI,!1),f.fillStyle=c(m)||"rgba(31, 120, 180, 0.92)",f.fill(),n.nodeCanvasObject&&v==="after"&&n.nodeCanvasObject(m,n.ctx,n.globalScale)}),f.restore()}function o(){var l=W(n.linkVisibility),u=W(n.linkColor),c=W(n.linkWidth),h=W(n.linkLineDash),f=W(n.linkCurvature),d=W(n.linkCanvasObjectMode),g=n.ctx,m=n.isShadow*2,v=n.graphData.links.filter(l);v.forEach(k);var y=[],p=[],x=v;if(n.linkCanvasObject){var C=[],b=[];v.forEach(function(S){return({before:y,after:p,replace:C}[d(S)]||b).push(S)}),x=[].concat(ct(y),p,b),y=y.concat(C)}g.save(),y.forEach(function(S){return n.linkCanvasObject(S,g,n.globalScale)}),g.restore();var _=ud(x,[u,c,h]);g.save(),Object.entries(_).forEach(function(S){var M=pe(S,2),z=M[0],E=M[1],I=!z||z==="undefined"?"rgba(0,0,0,0.15)":z;Object.entries(E).forEach(function(N){var $=pe(N,2),A=$[0],P=$[1],T=(A||1)/n.globalScale+m;Object.entries(P).forEach(function(j){var F=pe(j,2);F[0];var U=F[1],H=h(U[0]);g.beginPath(),U.forEach(function(q){var V=q.source,B=q.target;if(!(!V||!B||!V.hasOwnProperty("x")||!B.hasOwnProperty("x"))){g.moveTo(V.x,V.y);var K=q.__controlPoints;K?g[K.length===2?"quadraticCurveTo":"bezierCurveTo"].apply(g,ct(K).concat([B.x,B.y])):g.lineTo(B.x,B.y)}}),g.strokeStyle=I,g.lineWidth=T,g.setLineDash(H||[]),g.stroke()})})}),g.restore(),g.save(),p.forEach(function(S){return n.linkCanvasObject(S,g,n.globalScale)}),g.restore();function k(S){var M=f(S);if(!M){S.__controlPoints=null;return}var z=S.source,E=S.target;if(!(!z||!E||!z.hasOwnProperty("x")||!E.hasOwnProperty("x"))){var I=Math.sqrt(Math.pow(E.x-z.x,2)+Math.pow(E.y-z.y,2));if(I>0){var N=Math.atan2(E.y-z.y,E.x-z.x),$=I*M,A={x:(z.x+E.x)/2+$*Math.cos(N-Math.PI/2),y:(z.y+E.y)/2+$*Math.sin(N-Math.PI/2)};S.__controlPoints=[A.x,A.y]}else{var P=M*70;S.__controlPoints=[E.x,E.y-P,E.x+P,E.y]}}}}function s(){var l=1.6,u=.2,c=W(n.linkDirectionalArrowLength),h=W(n.linkDirectionalArrowRelPos),f=W(n.linkVisibility),d=W(n.linkDirectionalArrowColor||n.linkColor),g=W(n.nodeVal),m=n.ctx;m.save(),n.graphData.links.filter(f).forEach(function(v){var y=c(v);if(!(!y||y<0)){var p=v.source,x=v.target;if(!(!p||!x||!p.hasOwnProperty("x")||!x.hasOwnProperty("x"))){var C=Math.sqrt(Math.max(0,g(p)||1))*n.nodeRelSize,b=Math.sqrt(Math.max(0,g(x)||1))*n.nodeRelSize,_=Math.min(1,Math.max(0,h(v))),k=d(v)||"rgba(0,0,0,0.28)",S=y/l/2,M=v.__controlPoints&&ci(X,[p.x,p.y].concat(ct(v.__controlPoints),[x.x,x.y])),z=M?function(T){return M.get(T)}:function(T){return{x:p.x+(x.x-p.x)*T||0,y:p.y+(x.y-p.y)*T||0}},E=M?M.length():Math.sqrt(Math.pow(x.x-p.x,2)+Math.pow(x.y-p.y,2)),I=C+y+(E-C-b-y)*_,N=z(I/E),$=z((I-y)/E),A=z((I-y*(1-u))/E),P=Math.atan2(N.y-$.y,N.x-$.x)-Math.PI/2;m.beginPath(),m.moveTo(N.x,N.y),m.lineTo($.x+S*Math.cos(P),$.y+S*Math.sin(P)),m.lineTo(A.x,A.y),m.lineTo($.x-S*Math.cos(P),$.y-S*Math.sin(P)),m.fillStyle=k,m.fill()}}}),m.restore()}function a(){var l=W(n.linkDirectionalParticles),u=W(n.linkDirectionalParticleSpeed),c=W(n.linkDirectionalParticleOffset),h=W(n.linkDirectionalParticleWidth),f=W(n.linkVisibility),d=W(n.linkDirectionalParticleColor||n.linkColor),g=n.ctx;g.save(),n.graphData.links.filter(f).forEach(function(m){var v=l(m);if(!(!m.hasOwnProperty("__photons")||!m.__photons.length)){var y=m.source,p=m.target;if(!(!y||!p||!y.hasOwnProperty("x")||!p.hasOwnProperty("x"))){var x=u(m),C=Math.abs(c(m)),b=m.__photons||[],_=Math.max(0,h(m)/2)/Math.sqrt(n.globalScale),k=d(m)||"rgba(0,0,0,0.28)";g.fillStyle=k;var S=m.__controlPoints?ci(X,[y.x,y.y].concat(ct(m.__controlPoints),[p.x,p.y])):null,M=0,z=!1;b.forEach(function(E){var I=!!E.__singleHop;if(E.hasOwnProperty("__progressRatio")||(E.__progressRatio=I?0:(M+C)/v),!I&&M++,E.__progressRatio+=x,E.__progressRatio>=1)if(!I)E.__progressRatio=E.__progressRatio%1;else{z=!0;return}var N=E.__progressRatio,$=S?S.get(N):{x:y.x+(p.x-y.x)*N||0,y:y.y+(p.y-y.y)*N||0};n.linkDirectionalParticleCanvasObject?n.linkDirectionalParticleCanvasObject($.x,$.y,m,g,n.globalScale):(g.beginPath(),g.arc($.x,$.y,_,0,2*Math.PI,!1),g.fill())}),z&&(m.__photons=m.__photons.filter(function(E){return!E.__singleHop||E.__progressRatio<=1}))}}}),g.restore()}},emitParticle:function(n,r){return r&&(!r.__photons&&(r.__photons=[]),r.__photons.push({__singleHop:!0})),this}},stateInit:function(){return{forceLayout:Uh().force("link",Ih()).force("charge",Hh()).force("center",Nf()).force("dagRadial",null).stop(),engineRunning:!1}},init:function(n,r){r.ctx=n},update:function(n,r){n.engineRunning=!1,n.onUpdate(),n.nodeAutoColorBy!==null&&hi(n.graphData.nodes,W(n.nodeAutoColorBy),n.nodeColor),n.linkAutoColorBy!==null&&hi(n.graphData.links,W(n.linkAutoColorBy),n.linkColor),n.graphData.links.forEach(function(d){d.source=d[n.linkSource],d.target=d[n.linkTarget]}),n.forceLayout.stop().alpha(1).nodes(n.graphData.nodes);var i=n.forceLayout.force("link");i&&i.id(function(d){return d[n.nodeId]}).links(n.graphData.links);var o=n.dagMode&&Sd(n.graphData,function(d){return d[n.nodeId]},{nodeFilter:n.dagNodeFilter,onLoopError:n.onDagError||void 0}),s=Math.max.apply(Math,ct(Object.values(o||[]))),a=n.dagLevelDistance||n.graphData.nodes.length/(s||1)*Cd*(["radialin","radialout"].indexOf(n.dagMode)!==-1?.7:1);if(["lr","rl","td","bu"].includes(r.dagMode)){var l=["lr","rl"].includes(r.dagMode)?"fx":"fy";n.graphData.nodes.filter(n.dagNodeFilter).forEach(function(d){return delete d[l]})}if(["lr","rl","td","bu"].includes(n.dagMode)){var u=["rl","bu"].includes(n.dagMode),c=function(g){return(o[g[n.nodeId]]-s/2)*a*(u?-1:1)},h=["lr","rl"].includes(n.dagMode)?"fx":"fy";n.graphData.nodes.filter(n.dagNodeFilter).forEach(function(d){return d[h]=c(d)})}n.forceLayout.force("dagRadial",["radialin","radialout"].indexOf(n.dagMode)!==-1?qh(function(d){var g=o[d[n.nodeId]]||-1;return(n.dagMode==="radialin"?s-g:g)*a}).strength(function(d){return n.dagNodeFilter(d)?1:0}):null);for(var f=0;f<n.warmupTicks&&!(n.d3AlphaMin>0&&n.forceLayout.alpha()<n.d3AlphaMin);f++)n.forceLayout.tick();this.resetCountdown(),n.onFinishUpdate()}});function Mo(e,n){var r=e instanceof Array?e:[e],i=new n;return i._destructor&&i._destructor(),{linkProp:function(s){return{default:i[s](),onChange:function(l,u){r.forEach(function(c){return u[c][s](l)})},triggerUpdate:!1}},linkMethod:function(s){return function(a){for(var l=arguments.length,u=new Array(l>1?l-1:0),c=1;c<l;c++)u[c-1]=arguments[c];var h=[];return r.forEach(function(f){var d=a[f],g=d[s].apply(d,u);g!==d&&h.push(g)}),h.length?h[0]:this}}}}var Ad=800,Md=4,Td=5,To=Mo("forceGraph",Ze),Ed=Mo(["forceGraph","shadowGraph"],Ze),Od=Object.assign.apply(Object,ct(["nodeColor","nodeAutoColorBy","nodeCanvasObject","nodeCanvasObjectMode","linkColor","linkAutoColorBy","linkLineDash","linkWidth","linkCanvasObject","linkCanvasObjectMode","linkDirectionalArrowLength","linkDirectionalArrowColor","linkDirectionalArrowRelPos","linkDirectionalParticles","linkDirectionalParticleSpeed","linkDirectionalParticleOffset","linkDirectionalParticleWidth","linkDirectionalParticleColor","linkDirectionalParticleCanvasObject","dagMode","dagLevelDistance","dagNodeFilter","onDagError","d3AlphaMin","d3AlphaDecay","d3VelocityDecay","warmupTicks","cooldownTicks","cooldownTime","onEngineTick","onEngineStop"].map(function(e){return we({},e,To.linkProp(e))})).concat(ct(["nodeRelSize","nodeId","nodeVal","nodeVisibility","linkSource","linkTarget","linkVisibility","linkCurvature"].map(function(e){return we({},e,Ed.linkProp(e))})))),zd=Object.assign.apply(Object,ct(["d3Force","d3ReheatSimulation","emitParticle"].map(function(e){return we({},e,To.linkMethod(e))})));function yn(e){if(e.canvas){var n=e.canvas.width,r=e.canvas.height;n===300&&r===150&&(n=r=0);var i=window.devicePixelRatio;n/=i,r/=i,[e.canvas,e.shadowCanvas].forEach(function(s){s.style.width="".concat(e.width,"px"),s.style.height="".concat(e.height,"px"),s.width=e.width*i,s.height=e.height*i,!n&&!r&&s.getContext("2d").scale(i,i)});var o=yt(e.canvas).k;e.zoom.translateBy(e.zoom.__baseElem,(e.width-n)/2/o,(e.height-r)/2/o),e.needsRedraw=!0}}function Eo(e){var n=window.devicePixelRatio;e.setTransform(n,0,0,n,0,0)}function gi(e,n,r){e.save(),Eo(e),e.clearRect(0,0,n,r),e.restore()}var Pd=Yn({props:Gt({width:{default:window.innerWidth,onChange:function(n,r){return yn(r)},triggerUpdate:!1},height:{default:window.innerHeight,onChange:function(n,r){return yn(r)},triggerUpdate:!1},graphData:{default:{nodes:[],links:[]},onChange:function(n,r){[n.nodes,n.links].every(function(o){return(o||[]).every(function(s){return!s.hasOwnProperty("__indexColor")})})&&r.colorTracker.reset(),[{type:"Node",objs:n.nodes},{type:"Link",objs:n.links}].forEach(i),r.forceGraph.graphData(n),r.shadowGraph.graphData(n);function i(o){var s=o.type,a=o.objs;a.filter(function(l){if(!l.hasOwnProperty("__indexColor"))return!0;var u=r.colorTracker.lookup(l.__indexColor);return!u||!u.hasOwnProperty("d")||u.d!==l}).forEach(function(l){l.__indexColor=r.colorTracker.register({type:s,d:l})})}},triggerUpdate:!1},backgroundColor:{onChange:function(n,r){r.canvas&&n&&(r.canvas.style.background=n)},triggerUpdate:!1},nodeLabel:{default:"name",triggerUpdate:!1},nodePointerAreaPaint:{onChange:function(n,r){r.shadowGraph.nodeCanvasObject(n?function(i,o,s){return n(i,i.__indexColor,o,s)}:null),r.flushShadowCanvas&&r.flushShadowCanvas()},triggerUpdate:!1},linkPointerAreaPaint:{onChange:function(n,r){r.shadowGraph.linkCanvasObject(n?function(i,o,s){return n(i,i.__indexColor,o,s)}:null),r.flushShadowCanvas&&r.flushShadowCanvas()},triggerUpdate:!1},linkLabel:{default:"name",triggerUpdate:!1},linkHoverPrecision:{default:4,triggerUpdate:!1},minZoom:{default:.01,onChange:function(n,r){r.zoom.scaleExtent([n,r.zoom.scaleExtent()[1]])},triggerUpdate:!1},maxZoom:{default:1e3,onChange:function(n,r){r.zoom.scaleExtent([r.zoom.scaleExtent()[0],n])},triggerUpdate:!1},enableNodeDrag:{default:!0,triggerUpdate:!1},enableZoomInteraction:{default:!0,triggerUpdate:!1},enablePanInteraction:{default:!0,triggerUpdate:!1},enableZoomPanInteraction:{default:!0,triggerUpdate:!1},enablePointerInteraction:{default:!0,onChange:function(n,r){r.hoverObj=null},triggerUpdate:!1},autoPauseRedraw:{default:!0,triggerUpdate:!1},onNodeDrag:{default:function(){},triggerUpdate:!1},onNodeDragEnd:{default:function(){},triggerUpdate:!1},onNodeClick:{triggerUpdate:!1},onNodeRightClick:{triggerUpdate:!1},onNodeHover:{triggerUpdate:!1},onLinkClick:{triggerUpdate:!1},onLinkRightClick:{triggerUpdate:!1},onLinkHover:{triggerUpdate:!1},onBackgroundClick:{triggerUpdate:!1},onBackgroundRightClick:{triggerUpdate:!1},showPointerCursor:{default:!0,triggerUpdate:!1},onZoom:{triggerUpdate:!1},onZoomEnd:{triggerUpdate:!1},onRenderFramePre:{triggerUpdate:!1},onRenderFramePost:{triggerUpdate:!1}},Od),aliases:{stopAnimation:"pauseAnimation"},methods:Gt({graph2ScreenCoords:function(n,r,i){var o=yt(n.canvas);return{x:r*o.k+o.x,y:i*o.k+o.y}},screen2GraphCoords:function(n,r,i){var o=yt(n.canvas);return{x:(r-o.x)/o.k,y:(i-o.y)/o.k}},centerAt:function(n,r,i,o){if(!n.canvas)return null;if(r!==void 0||i!==void 0){var s=Object.assign({},r!==void 0?{x:r}:{},i!==void 0?{y:i}:{});return o?n.tweenGroup.add(new Dr(a()).to(s,o).easing(qt.Quadratic.Out).onUpdate(l).start()):l(s),this}return a();function a(){var u=yt(n.canvas);return{x:(n.width/2-u.x)/u.k,y:(n.height/2-u.y)/u.k}}function l(u){var c=u.x,h=u.y;n.zoom.translateTo(n.zoom.__baseElem,c===void 0?a().x:c,h===void 0?a().y:h),n.needsRedraw=!0}},zoom:function(n,r,i){if(!n.canvas)return null;if(r!==void 0)return i?n.tweenGroup.add(new Dr({k:o()}).to({k:r},i).easing(qt.Quadratic.Out).onUpdate(function(a){var l=a.k;return s(l)}).start()):s(r),this;return o();function o(){return yt(n.canvas).k}function s(a){n.zoom.scaleTo(n.zoom.__baseElem,a),n.needsRedraw=!0}},zoomToFit:function(n){for(var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:10,o=arguments.length,s=new Array(o>3?o-3:0),a=3;a<o;a++)s[a-3]=arguments[a];var l=this.getGraphBbox.apply(this,s);if(l){var u={x:(l.x[0]+l.x[1])/2,y:(l.y[0]+l.y[1])/2},c=Math.max(1e-12,Math.min(1e12,(n.width-i*2)/(l.x[1]-l.x[0]),(n.height-i*2)/(l.y[1]-l.y[0])));this.centerAt(u.x,u.y,r),this.zoom(c,r)}return this},getGraphBbox:function(n){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:function(){return!0},i=W(n.nodeVal),o=function(l){return Math.sqrt(Math.max(0,i(l)||1))*n.nodeRelSize},s=n.graphData.nodes.filter(r).map(function(a){return{x:a.x,y:a.y,r:o(a)}});return s.length?{x:[Ir(s,function(a){return a.x-a.r}),Pr(s,function(a){return a.x+a.r})],y:[Ir(s,function(a){return a.y-a.r}),Pr(s,function(a){return a.y+a.r})]}:null},pauseAnimation:function(n){return n.animationFrameRequestId&&(cancelAnimationFrame(n.animationFrameRequestId),n.animationFrameRequestId=null),this},resumeAnimation:function(n){return n.animationFrameRequestId||this._animationCycle(),this},_destructor:function(){this.pauseAnimation(),this.graphData({nodes:[],links:[]})}},zd),stateInit:function(){return{lastSetZoom:1,zoom:Hu(),forceGraph:new Ze,shadowGraph:new Ze().cooldownTicks(0).nodeColor("__indexColor").linkColor("__indexColor").isShadow(!0),colorTracker:new df,tweenGroup:new Yi}},init:function(n,r){var i=this;n.innerHTML="";var o=document.createElement("div");o.classList.add("force-graph-container"),o.style.position="relative",n.appendChild(o),r.canvas=document.createElement("canvas"),r.backgroundColor&&(r.canvas.style.background=r.backgroundColor),o.appendChild(r.canvas),r.shadowCanvas=document.createElement("canvas");var s=r.canvas.getContext("2d"),a=r.shadowCanvas.getContext("2d",{willReadFrequently:!0}),l={x:-1e12,y:-1e12},u=function(){var f=null,d=window.devicePixelRatio,g=l.x>0&&l.y>0?a.getImageData(l.x*d,l.y*d,1,1):null;return g&&(f=r.colorTracker.lookup(g.data)),f};ut(r.canvas).call(Qa().subject(function(){if(!r.enableNodeDrag)return null;var h=u();return h&&h.type==="Node"?h.d:null}).on("start",function(h){var f=h.subject;f.__initialDragPos={x:f.x,y:f.y,fx:f.fx,fy:f.fy},h.active||(f.fx=f.x,f.fy=f.y),r.canvas.classList.add("grabbable")}).on("drag",function(h){var f=h.subject,d=f.__initialDragPos,g=h,m=yt(r.canvas).k,v={x:d.x+(g.x-d.x)/m-f.x,y:d.y+(g.y-d.y)/m-f.y};["x","y"].forEach(function(y){return f["f".concat(y)]=f[y]=d[y]+(g[y]-d[y])/m}),!(!f.__dragged&&Td>=Math.sqrt(Gu(["x","y"].map(function(y){return Math.pow(h[y]-d[y],2)}))))&&(r.forceGraph.d3AlphaTarget(.3).resetCountdown(),r.isPointerDragging=!0,f.__dragged=!0,r.onNodeDrag(f,v))}).on("end",function(h){var f=h.subject,d=f.__initialDragPos,g={x:f.x-d.x,y:f.y-d.y};d.fx===void 0&&(f.fx=void 0),d.fy===void 0&&(f.fy=void 0),delete f.__initialDragPos,r.forceGraph.d3AlphaTarget()&&r.forceGraph.d3AlphaTarget(0).resetCountdown(),r.canvas.classList.remove("grabbable"),r.isPointerDragging=!1,f.__dragged&&(delete f.__dragged,r.onNodeDragEnd(f,g))})),r.zoom(r.zoom.__baseElem=ut(r.canvas)),r.zoom.__baseElem.on("dblclick.zoom",null),r.zoom.filter(function(h){return!h.button&&r.enableZoomPanInteraction&&(h.type!=="wheel"||W(r.enableZoomInteraction)(h))&&(h.type==="wheel"||W(r.enablePanInteraction)(h))}).on("zoom",function(h){var f=h.transform;[s,a].forEach(function(d){Eo(d),d.translate(f.x,f.y),d.scale(f.k,f.k)}),r.isPointerDragging=!0,r.onZoom&&r.onZoom(Gt(Gt({},f),i.centerAt())),r.needsRedraw=!0}).on("end",function(h){r.isPointerDragging=!1,r.onZoomEnd&&r.onZoomEnd(Gt(Gt({},h.transform),i.centerAt()))}),yn(r),r.forceGraph.onNeedsRedraw(function(){return r.needsRedraw=!0}).onFinishUpdate(function(){yt(r.canvas).k===r.lastSetZoom&&r.graphData.nodes.length&&(r.zoom.scaleTo(r.zoom.__baseElem,r.lastSetZoom=Md/Math.cbrt(r.graphData.nodes.length)),r.needsRedraw=!0)}),r.tooltip=new Rf(o),["pointermove","pointerdown"].forEach(function(h){return o.addEventListener(h,function(f){h==="pointerdown"&&(r.isPointerPressed=!0,r.pointerDownEvent=f),!r.isPointerDragging&&f.type==="pointermove"&&r.onBackgroundClick&&(f.pressure>0||r.isPointerPressed)&&(f.pointerType==="mouse"||f.movementX===void 0||[f.movementX,f.movementY].some(function(m){return Math.abs(m)>1}))&&(r.isPointerDragging=!0);var d=g(o);l.x=f.pageX-d.left,l.y=f.pageY-d.top;function g(m){var v=m.getBoundingClientRect(),y=window.pageXOffset||document.documentElement.scrollLeft,p=window.pageYOffset||document.documentElement.scrollTop;return{top:v.top+p,left:v.left+y}}},{passive:!0})}),o.addEventListener("pointerup",function(h){if(r.isPointerPressed){if(r.isPointerPressed=!1,r.isPointerDragging){r.isPointerDragging=!1;return}var f=[h,r.pointerDownEvent];requestAnimationFrame(function(){if(h.button===0)if(r.hoverObj){var d=r["on".concat(r.hoverObj.type,"Click")];d&&d.apply(void 0,[r.hoverObj.d].concat(f))}else r.onBackgroundClick&&r.onBackgroundClick.apply(r,f);if(h.button===2)if(r.hoverObj){var g=r["on".concat(r.hoverObj.type,"RightClick")];g&&g.apply(void 0,[r.hoverObj.d].concat(f))}else r.onBackgroundRightClick&&r.onBackgroundRightClick.apply(r,f)})}},{passive:!0}),o.addEventListener("contextmenu",function(h){return!r.onBackgroundRightClick&&!r.onNodeRightClick&&!r.onLinkRightClick?!0:(h.preventDefault(),!1)}),r.forceGraph(s),r.shadowGraph(a);var c=_c(function(){gi(a,r.width,r.height),r.shadowGraph.linkWidth(function(f){return W(r.linkWidth)(f)+r.linkHoverPrecision});var h=yt(r.canvas);r.shadowGraph.globalScale(h.k).tickFrame()},Ad);r.flushShadowCanvas=c.flush,(this._animationCycle=function h(){var f=!r.autoPauseRedraw||!!r.needsRedraw||r.forceGraph.isEngineRunning()||r.graphData.links.some(function(C){return C.__photons&&C.__photons.length});if(r.needsRedraw=!1,r.enablePointerInteraction){var d=r.isPointerDragging?null:u();if(d!==r.hoverObj){var g=r.hoverObj,m=g?g.type:null,v=d?d.type:null;if(m&&m!==v){var y=r["on".concat(m,"Hover")];y&&y(null,g.d)}if(v){var p=r["on".concat(v,"Hover")];p&&p(d.d,m===v?g.d:null)}r.tooltip.content(d&&W(r["".concat(d.type.toLowerCase(),"Label")])(d.d)||null),r.canvas.classList[(d&&r["on".concat(v,"Click")]||!d&&r.onBackgroundClick)&&W(r.showPointerCursor)(d?.d)?"add":"remove"]("clickable"),r.hoverObj=d}f&&c()}if(f){gi(s,r.width,r.height);var x=yt(r.canvas).k;r.onRenderFramePre&&r.onRenderFramePre(s,x),r.forceGraph.globalScale(x).tickFrame(),r.onRenderFramePost&&r.onRenderFramePost(s,x)}r.tweenGroup.update(),r.animationFrameRequestId=requestAnimationFrame(h)})()},update:function(n){}});const sn={width:w.number,height:w.number,graphData:w.shape({nodes:w.arrayOf(w.object).isRequired,links:w.arrayOf(w.object).isRequired}),backgroundColor:w.string,nodeRelSize:w.number,nodeId:w.string,nodeLabel:w.oneOfType([w.string,w.func]),nodeVal:w.oneOfType([w.number,w.string,w.func]),nodeVisibility:w.oneOfType([w.bool,w.string,w.func]),nodeColor:w.oneOfType([w.string,w.func]),nodeAutoColorBy:w.oneOfType([w.string,w.func]),onNodeHover:w.func,onNodeClick:w.func,linkSource:w.string,linkTarget:w.string,linkLabel:w.oneOfType([w.string,w.func]),linkVisibility:w.oneOfType([w.bool,w.string,w.func]),linkColor:w.oneOfType([w.string,w.func]),linkAutoColorBy:w.oneOfType([w.string,w.func]),linkWidth:w.oneOfType([w.number,w.string,w.func]),linkCurvature:w.oneOfType([w.number,w.string,w.func]),linkDirectionalArrowLength:w.oneOfType([w.number,w.string,w.func]),linkDirectionalArrowColor:w.oneOfType([w.string,w.func]),linkDirectionalArrowRelPos:w.oneOfType([w.number,w.string,w.func]),linkDirectionalParticles:w.oneOfType([w.number,w.string,w.func]),linkDirectionalParticleSpeed:w.oneOfType([w.number,w.string,w.func]),linkDirectionalParticleOffset:w.oneOfType([w.number,w.string,w.func]),linkDirectionalParticleWidth:w.oneOfType([w.number,w.string,w.func]),linkDirectionalParticleColor:w.oneOfType([w.string,w.func]),onLinkHover:w.func,onLinkClick:w.func,dagMode:w.oneOf(["td","bu","lr","rl","zin","zout","radialin","radialout"]),dagLevelDistance:w.number,dagNodeFilter:w.func,onDagError:w.func,d3AlphaMin:w.number,d3AlphaDecay:w.number,d3VelocityDecay:w.number,warmupTicks:w.number,cooldownTicks:w.number,cooldownTime:w.number,onEngineTick:w.func,onEngineStop:w.func,getGraphBbox:w.func},Oo={zoomToFit:w.func,onNodeRightClick:w.func,onNodeDrag:w.func,onNodeDragEnd:w.func,onLinkRightClick:w.func,linkHoverPrecision:w.number,onBackgroundClick:w.func,onBackgroundRightClick:w.func,showPointerCursor:w.oneOfType([w.bool,w.func]),enablePointerInteraction:w.bool,enableNodeDrag:w.bool},ir={showNavInfo:w.bool,nodeOpacity:w.number,nodeResolution:w.number,nodeThreeObject:w.oneOfType([w.object,w.string,w.func]),nodeThreeObjectExtend:w.oneOfType([w.bool,w.string,w.func]),nodePositionUpdate:w.func,linkOpacity:w.number,linkResolution:w.number,linkCurveRotation:w.oneOfType([w.number,w.string,w.func]),linkMaterial:w.oneOfType([w.object,w.string,w.func]),linkThreeObject:w.oneOfType([w.object,w.string,w.func]),linkThreeObjectExtend:w.oneOfType([w.bool,w.string,w.func]),linkPositionUpdate:w.func,linkDirectionalArrowResolution:w.number,linkDirectionalParticleResolution:w.number,linkDirectionalParticleThreeObject:w.oneOfType([w.object,w.string,w.func]),forceEngine:w.oneOf(["d3","ngraph"]),ngraphPhysics:w.object,numDimensions:w.oneOf([1,2,3])},Id=Object.assign({},sn,Oo,{linkLineDash:w.oneOfType([w.arrayOf(w.number),w.string,w.func]),nodeCanvasObjectMode:w.oneOfType([w.string,w.func]),nodeCanvasObject:w.func,nodePointerAreaPaint:w.func,linkCanvasObjectMode:w.oneOfType([w.string,w.func]),linkCanvasObject:w.func,linkPointerAreaPaint:w.func,linkDirectionalParticleCanvasObject:w.func,autoPauseRedraw:w.bool,minZoom:w.number,maxZoom:w.number,enableZoomInteraction:w.oneOfType([w.bool,w.func]),enablePanInteraction:w.oneOfType([w.bool,w.func]),onZoom:w.func,onZoomEnd:w.func,onRenderFramePre:w.func,onRenderFramePost:w.func});Object.assign({},sn,Oo,ir,{enableNavigationControls:w.bool,controlType:w.oneOf(["trackball","orbit","fly"]),rendererConfig:w.object,extraRenderers:w.arrayOf(w.shape({render:w.func.isRequired}))});Object.assign({},sn,ir,{nodeDesc:w.oneOfType([w.string,w.func]),linkDesc:w.oneOfType([w.string,w.func])});Object.assign({},sn,ir,{markerAttrs:w.object,yOffset:w.number,glScale:w.number});const or=cs(Pd,{methodNames:["emitParticle","d3Force","d3ReheatSimulation","stopAnimation","pauseAnimation","resumeAnimation","centerAt","zoom","zoomToFit","getGraphBbox","screen2GraphCoords","graph2ScreenCoords"]});or.displayName="ForceGraph2D";or.propTypes=Id;const Rd=e=>{let n=0;for(let r=0;r<e.length;r++)n+=e.charCodeAt(r);return n};function pi(e){return e<=1?3.5:e<=3?4.5:e<=6?5.5:Math.min(7,5.5+Math.sqrt(e)*.5)}function Nd(e){if(e.nodes.length===0)return null;const n=e.nodes.filter(i=>i.connections>0);if(n.length===0)return null;const r=new Set(n.map(i=>i.id));return{nodes:n,links:e.links.filter(i=>r.has(i.source)&&r.has(i.target))}}function jd(e){const n=new Map;for(const r of e)n.has(r.source)||n.set(r.source,new Set),n.has(r.target)||n.set(r.target,new Set),n.get(r.source)?.add(r.target),n.get(r.target)?.add(r.source);return n}function Dd(e){return[...e].sort((n,r)=>r.connections-n.connections||n.title.localeCompare(r.title))}function $d(e,n){const r=n.trim().toLowerCase();return r?e.filter(i=>i.title.toLowerCase().includes(r)):e}function Fd(e,n){return n?e.find(r=>r.id===n)??null:null}function Ld(e,n,r){if(!r)return[];const i=n.get(r);return i?e.filter(o=>i.has(o.id)):[]}const Ud={background:"#f4f6f8",nodeHub:"#2c2f36",nodeSelected:"#111318",nodeConnected:"#636b76",nodeDefault:["#d6dbe1","#c8ced6","#b7bec7","#a7afb9"],nodeDimmed:["rgba(214,219,225,0.28)","rgba(200,206,214,0.24)","rgba(183,190,199,0.24)","rgba(167,175,185,0.2)"],nodeHubDimmed:"rgba(44,47,54,0.16)",nodeStroke:"#eef1f4",nodeSelectedStroke:"#a6b0bc",labelBackground:"rgba(246,248,250,0.92)",labelText:"#222831",labelFontFamily:"Pretendard Variable, Pretendard, system-ui, sans-serif",linkIdle:"rgba(99, 107, 117, 0.34)",linkConnected:"#68717c",linkDimmed:"rgba(127, 136, 146, 0.12)",legendHub:"#2c2f36"},Hd={background:"#121316",nodeHub:"#d6dce3",nodeSelected:"#eef1f5",nodeConnected:"#9099a4",nodeDefault:["#343a43","#2d333c","#262c35","#20262f"],nodeDimmed:["rgba(52,58,67,0.28)","rgba(45,51,60,0.24)","rgba(38,44,53,0.22)","rgba(32,38,47,0.2)"],nodeHubDimmed:"rgba(214,220,227,0.16)",nodeStroke:"#171c23",nodeSelectedStroke:"#7f8a97",labelBackground:"rgba(16,18,22,0.9)",labelText:"#eef2f6",labelFontFamily:"Pretendard Variable, Pretendard, system-ui, sans-serif",linkIdle:"rgba(118, 127, 138, 0.42)",linkConnected:"#a2abb6",linkDimmed:"rgba(118, 127, 138, 0.1)",legendHub:"#d6dce3"};function an(e){return e==="dark"?Hd:Ud}function qd(e,n){const r=an(e),{connections:i,colorIndex:o,selectedNodeId:s,nodeId:a,isConnected:l}=n,u=s===a;return s!==null&&!u&&!l?i>3?r.nodeHubDimmed:r.nodeDimmed[o%r.nodeDimmed.length]:u?r.nodeSelected:l?r.nodeConnected:i>3?r.nodeHub:r.nodeDefault[o%r.nodeDefault.length]}function Vd(e,n){const r=an(e);return n.selectedNodeId!==null&&!n.isConnected?r.linkDimmed:n.isConnected?r.linkConnected:r.linkIdle}function Wd(e,n){const r=an(e);return`${n.emphasize?"700":"400"} ${n.fontSize}px ${r.labelFontFamily}`}function Gd({adjacencyMap:e,graphData:n,onClearSelection:r,onOpenNode:i,onSelectNode:o,selectedNodeId:s}){const a=L.useRef(null),l=L.useRef(null),[u,c]=L.useState({width:0,height:420}),{theme:h}=Ro(k=>k),f=an(h),d=L.useRef(f);d.current=f;const g=L.useRef(s);g.current=s;const m=L.useRef(e);m.current=e,L.useEffect(()=>{const k=()=>{if(!a.current)return;const M=a.current.getBoundingClientRect();M.width<=0||M.height<=0||c({width:M.width,height:M.height})};k();const S=typeof ResizeObserver=="function"?new ResizeObserver(k):null;return S&&a.current&&S.observe(a.current),window.addEventListener("resize",k),()=>{S?.disconnect(),window.removeEventListener("resize",k)}},[]),L.useEffect(()=>{const k=window.setTimeout(()=>{l.current?.zoomToFit(400,u.width<768?80:50)},500);return()=>window.clearTimeout(k)},[u.width,n]);const v=L.useCallback(k=>{if(g.current===k.id){i(k.id);return}o(k.id)},[i,o]),y=L.useCallback(k=>{a.current&&(a.current.style.cursor=k?"pointer":"default")},[]),p=L.useRef(!1),x=L.useCallback(()=>{p.current||(p.current=!0,l.current?.enableZoomInteraction(!1))},[]),C=L.useCallback(()=>{p.current=!1,l.current?.enableZoomInteraction(!0)},[]),b=L.useCallback((k,S,M)=>{const z=d.current,E=s,I=m.current,N=pi(k.connections),$=k.x||0,A=k.y||0,P=E===k.id,T=E?I.get(E)?.has(k.id)??!1:!1,j=E!==null&&!P&&!T,F=Rd(k.id);if(S.beginPath(),S.arc($,A,N,0,Math.PI*2),S.fillStyle=qd(h,{connections:k.connections,colorIndex:F,selectedNodeId:E,nodeId:k.id,isConnected:T}),S.fill(),j)return;S.strokeStyle=z.nodeStroke,S.lineWidth=(P?2:1)/M,S.stroke(),P&&(S.beginPath(),S.arc($,A,N+2/M,0,Math.PI*2),S.strokeStyle=z.nodeSelectedStroke,S.lineWidth=1.5/M,S.stroke());const U=T&&k.connections>=4;if(P||U||M>2.5){const H=k.title||"Untitled",q=Math.max(10/M,2.5);S.font=Wd(h,{fontSize:q,emphasize:P}),S.textAlign="center",S.textBaseline="top";const V=S.measureText(H).width,B=2/M,K=A+N+3/M;S.fillStyle=z.labelBackground,S.fillRect($-V/2-B,K,V+B*2,q+B*2),S.fillStyle=z.labelText,S.fillText(H,$,K+B)}},[s,h]),_=L.useCallback((k,S,M)=>{const z=s,E=k.source,I=k.target,N=z?E.id===z||I.id===z:!1;S.beginPath(),S.moveTo(E.x||0,E.y||0),S.lineTo(I.x||0,I.y||0),S.strokeStyle=Vd(h,{selectedNodeId:z,isConnected:N}),S.lineWidth=N?2/M:.5/M,S.stroke()},[s,h]);return R.jsxs("div",{ref:a,className:"surface-base graph-canvas relative h-[min(34rem,calc(100dvh-12rem))] min-h-[420px] w-full max-w-full overflow-hidden md:h-[520px] xl:h-[min(44rem,calc(100vh-10rem))]",style:{"--graph-bg":f.background},children:[R.jsxs("div",{className:"surface-floating absolute top-3 right-3 z-10 flex flex-col gap-1.5 px-3 py-2.5",children:[R.jsxs("div",{className:"flex items-center gap-2",children:[R.jsx("span",{className:"legend-dot h-2.5 w-2.5 shrink-0 rounded-full",style:{"--legend-color":f.legendHub}}),R.jsx(at,{as:"span",variant:"label",weight:"medium",tone:"secondary",children:"Hub notes (4+ connections)"})]}),R.jsxs("div",{className:"flex items-center gap-2",children:[R.jsx("span",{className:"legend-dot h-2.5 w-2.5 shrink-0 rounded-full",style:{"--legend-color":f.nodeConnected}}),R.jsx(at,{as:"span",variant:"label",weight:"medium",tone:"secondary",children:"Connected notes"})]})]}),R.jsx("div",{"aria-hidden":"true",children:R.jsx(or,{ref:l,graphData:n,width:u.width,height:u.height,nodeId:"id",nodeLabel:"",nodeCanvasObject:b,nodePointerAreaPaint:(k,S,M)=>{M.beginPath(),M.arc(k.x||0,k.y||0,Math.max(pi(k.connections)+4,10),0,2*Math.PI),M.fillStyle=S,M.fill()},linkCanvasObject:_,linkCanvasObjectMode:()=>"replace",linkDirectionalParticles:0,onNodeClick:v,onNodeHover:y,onBackgroundClick:r,onNodeDrag:x,onNodeDragEnd:C,warmupTicks:30,cooldownTicks:80,d3AlphaDecay:.05,d3VelocityDecay:.3,enableZoomInteraction:!0,enablePanInteraction:!0,minZoom:.3,maxZoom:5})})]})}function Bd(e,n,r){const i=new Array(e);return new Proxy(i,{get(o,s,a){if(typeof s=="string"){const l=s.charCodeAt(0);if(l>=48&&l<=57){const u=+s;if(Number.isInteger(u)&&u>=0&&u<e){let c=o[u];if(!c){const h=n[u*2];c=o[u]={index:u,key:r(u),start:h,size:n[u*2+1],end:h+n[u*2+1],lane:0}}return c}}if(s==="length")return e}return Reflect.get(o,s,a)}})}function Bt(e,n,r){let i=r.initialDeps??[],o,s=!0;function a(){const l=e();return(l.length!==i.length||l.some((c,h)=>i[h]!==c))&&(i=l,o=n(...l),r?.onChange&&!(s&&r.skipInitialOnChange)&&r.onChange(o),s=!1),o}return a.updateDeps=l=>{i=l},a}function mi(e,n){if(e===void 0)throw new Error("Unexpected undefined");return e}const Xd=(e,n)=>Math.abs(e-n)<1.01,Kd=(e,n,r)=>{let i;return function(...o){e.clearTimeout(i),i=e.setTimeout(()=>n.apply(this,o),r)}};let le;const vn=()=>{if(le!==void 0)return le;if(typeof navigator>"u")return le=!1;if(/iP(hone|od|ad)/.test(navigator.userAgent))return le=!0;const e=navigator.maxTouchPoints;return le=navigator.platform==="MacIntel"&&e!==void 0&&e>0},yi=e=>{const{offsetWidth:n,offsetHeight:r}=e;return{width:n,height:r}},Yd=e=>e,Zd=e=>{const n=Math.max(e.startIndex-e.overscan,0),i=Math.min(e.endIndex+e.overscan,e.count-1)-n+1,o=new Array(i);for(let s=0;s<i;s++)o[s]=n+s;return o},Qd=(e,n)=>{const r=e.scrollElement;if(!r)return;const i=e.targetWindow;if(!i)return;const o=a=>{const{width:l,height:u}=a;n({width:Math.round(l),height:Math.round(u)})};if(o(yi(r)),!i.ResizeObserver)return()=>{};const s=new i.ResizeObserver(a=>{const l=()=>{const u=a[0];if(u?.borderBoxSize){const c=u.borderBoxSize[0];if(c){o({width:c.inlineSize,height:c.blockSize});return}}o(yi(r))};e.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(l):l()});return s.observe(r,{box:"border-box"}),()=>{s.unobserve(r)}},Qe={passive:!0},Jd=typeof window>"u"?!0:"onscrollend"in window,tg=(e,n,r)=>{const i=e.scrollElement;if(!i)return;const o=e.targetWindow;if(!o)return;const s=e.options.useScrollendEvent&&Jd;let a=0;const l=s?null:Kd(o,()=>n(a,!1),e.options.isScrollingResetDelay),u=f=>()=>{a=r(i),l?.(),n(a,f)},c=u(!0),h=u(!1);return i.addEventListener("scroll",c,Qe),s&&i.addEventListener("scrollend",h,Qe),()=>{i.removeEventListener("scroll",c),s&&i.removeEventListener("scrollend",h)}},eg=(e,n)=>tg(e,n,r=>{const{horizontal:i,isRtl:o}=e.options;return i?r.scrollLeft*(o&&-1||1):r.scrollTop}),ng=(e,n,r)=>{if(r.options.useCachedMeasurements){const i=r.indexFromElement(e),o=r.options.getItemKey(i);return r.itemSizeCache.get(o)??r.options.estimateSize(i)}if(n?.borderBoxSize){const i=n.borderBoxSize[0];if(i)return Math.round(i[r.options.horizontal?"inlineSize":"blockSize"])}if(!n){const i=r.indexFromElement(e),o=r.options.getItemKey(i),s=r.itemSizeCache.get(o);if(s!==void 0)return s}return e[r.options.horizontal?"offsetWidth":"offsetHeight"]},rg=(e,{adjustments:n=0,behavior:r},i)=>{var o,s;(s=(o=i.scrollElement)==null?void 0:o.scrollTo)==null||s.call(o,{[i.options.horizontal?"left":"top"]:e+n,behavior:r})},ig=rg;class og{constructor(n){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.scrollState=null,this.measurementsCache=[],this._flatMeasurements=null,this.itemSizeCache=new Map,this.itemSizeCacheVersion=0,this.laneAssignments=new Map,this.pendingMin=null,this.prevLanes=void 0,this.lanesChangedFlag=!1,this.lanesSettling=!1,this.pendingScrollAnchor=null,this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this.scrollAdjustments=0,this._iosDeferredAdjustment=0,this._iosTouching=!1,this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._intendedScrollOffset=null,this.elementsCache=new Map,this.now=()=>{var r,i,o;return((o=(i=(r=this.targetWindow)==null?void 0:r.performance)==null?void 0:i.now)==null?void 0:o.call(i))??Date.now()},this.observer=(()=>{let r=null;const i=()=>r||(!this.targetWindow||!this.targetWindow.ResizeObserver?null:r=new this.targetWindow.ResizeObserver(o=>{o.forEach(s=>{const a=()=>{const l=s.target,u=this.indexFromElement(l);if(!l.isConnected){this.observer.unobserve(l);for(const[c,h]of this.elementsCache)if(h===l){this.elementsCache.delete(c);break}return}this.shouldMeasureDuringScroll(u)&&this.resizeItem(u,this.options.measureElement(l,s,this))};this.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(a):a()})}));return{disconnect:()=>{var o;(o=i())==null||o.disconnect(),r=null},observe:o=>{var s;return(s=i())==null?void 0:s.observe(o,{box:"border-box"})},unobserve:o=>{var s;return(s=i())==null?void 0:s.unobserve(o)}}})(),this.range=null,this.setOptions=r=>{var i,o;const s={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:Yd,rangeExtractor:Zd,onChange:()=>{},measureElement:ng,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:"data-index",initialMeasurementsCache:[],lanes:1,anchorTo:"start",followOnAppend:!1,scrollEndThreshold:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!1,useAnimationFrameWithResizeObserver:!1,laneAssignmentMode:"estimate",useCachedMeasurements:!1};for(const d in r){const g=r[d];g!==void 0&&(s[d]=g)}const a=this.options;let l=null,u=null,c=!1;if(a!==void 0&&a.enabled&&s.enabled&&s.anchorTo==="end"&&this.scrollElement!==null){const d=a.count,g=s.count,m=this.getMeasurements(),v=d>0?((i=m[0])==null?void 0:i.key)??a.getItemKey(0):null,y=d>0?((o=m[d-1])==null?void 0:o.key)??a.getItemKey(d-1):null;if(g!==d||d>0&&g>0&&(s.getItemKey(0)!==v||s.getItemKey(g-1)!==y)){c=!0;const C=d>0?this.getVirtualItemForOffset(this.getScrollOffset())??m[0]:null;C&&(l=[C.key,this.getScrollOffset()-C.start]);const b=s.followOnAppend===!0?"auto":s.followOnAppend||null;b&&g>d&&this.isAtEnd(a.scrollEndThreshold)&&(d===0||s.getItemKey(g-1)!==y)&&(u=b)}}this.options=s,c&&(this.pendingMin=0,this.itemSizeCacheVersion++);let h=!1,f=0;if(l&&this.scrollOffset!==null){const[d,g]=l,m=this.getMeasurements(),{count:v,getItemKey:y}=this.options;let p=0;for(;p<v&&y(p)!==d;)p++;if(p<v){const x=m[p];if(x){const C=x.start+g;C!==this.scrollOffset&&(f=C-this.scrollOffset,this.scrollOffset=C,h=!0)}}}(h||u)&&(this.pendingScrollAnchor=[h?l[0]:null,h?l[1]:0,u,f])},this.notify=r=>{var i,o;(o=(i=this.options).onChange)==null||o.call(i,this,r)},this.maybeNotify=Bt(()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]),r=>{this.notify(r)},{key:!1,debug:()=>this.options.debug,initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]}),this.cleanup=()=>{this.unsubs.filter(Boolean).forEach(r=>r()),this.unsubs=[],this.observer.disconnect(),this.rafId!=null&&this.targetWindow&&(this.targetWindow.cancelAnimationFrame(this.rafId),this.rafId=null),this.scrollState=null,this.scrollElement=null,this.targetWindow=null},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{var r;const i=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==i){if(this.cleanup(),!i){this.maybeNotify();return}if(this.scrollElement=i,this.scrollElement&&"ownerDocument"in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=((r=this.scrollElement)==null?void 0:r.window)??null,this.elementsCache.forEach(s=>{this.observer.observe(s)}),this.unsubs.push(this.options.observeElementRect(this,s=>{this.scrollRect=s,this.maybeNotify()})),this.unsubs.push(this.options.observeElementOffset(this,(s,a)=>{this._intendedScrollOffset!==null&&Math.abs(s-this._intendedScrollOffset)<1.5&&(s=this._intendedScrollOffset),this._intendedScrollOffset=null,this.scrollAdjustments=0,this.scrollDirection=a?this.getScrollOffset()<s?"forward":"backward":null,this.scrollOffset=s,this.isScrolling=a,this._flushIosDeferredIfReady(),this.scrollState&&this.scheduleScrollReconcile(),this.maybeNotify()})),"addEventListener"in this.scrollElement){const s=this.scrollElement,a=()=>{this._iosTouching=!0,this._iosJustTouchEnded=!1,this._iosTouchEndTimerId!==null&&this.targetWindow!=null&&(this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null)},l=()=>{this._iosTouching=!1,!(!vn()||this.targetWindow==null)&&(this._iosJustTouchEnded=!0,this._iosTouchEndTimerId=this.targetWindow.setTimeout(()=>{this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._flushIosDeferredIfReady()},150))};s.addEventListener("touchstart",a,Qe),s.addEventListener("touchend",l,Qe),this.unsubs.push(()=>{s.removeEventListener("touchstart",a),s.removeEventListener("touchend",l),this._iosTouchEndTimerId!==null&&this.targetWindow!=null&&(this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null)})}this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})}const o=this.pendingScrollAnchor;if(this.pendingScrollAnchor=null,o&&this.scrollElement&&this.options.enabled){const[s,a,l,u]=o;s!==null&&!l&&(vn()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?u!==0&&(this._iosDeferredAdjustment+=u):this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})),l&&this.scrollToEnd({behavior:l})}},this._flushIosDeferredIfReady=()=>{if(this._iosDeferredAdjustment===0||this.isScrolling||this._iosTouching||this._iosJustTouchEnded)return;const r=this.getScrollOffset(),i=this.getMaxScrollOffset();if(r<0||r>i)return;const o=this._iosDeferredAdjustment;this._iosDeferredAdjustment=0,this._scrollToOffset(r,{adjustments:this.scrollAdjustments+=o,behavior:void 0})},this.rafId=null,this.getSize=()=>this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?"width":"height"]):(this.scrollRect=null,0),this.getScrollOffset=()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??(typeof this.options.initialOffset=="function"?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0),this.getFurthestMeasurement=(r,i)=>{const o=new Map,s=new Map;for(let a=i-1;a>=0;a--){const l=r[a];if(o.has(l.lane))continue;const u=s.get(l.lane);if(u==null||l.end>u.end?s.set(l.lane,l):l.end<u.end&&o.set(l.lane,!0),o.size===this.options.lanes)break}return s.size===this.options.lanes?Array.from(s.values()).sort((a,l)=>a.end===l.end?a.index-l.index:a.end-l.end)[0]:void 0},this.getMeasurementOptions=Bt(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled,this.options.lanes,this.options.laneAssignmentMode],(r,i,o,s,a,l,u)=>(this.prevLanes!==void 0&&this.prevLanes!==l&&(this.lanesChangedFlag=!0),this.prevLanes=l,this.pendingMin=null,{count:r,paddingStart:i,scrollMargin:o,getItemKey:s,enabled:a,lanes:l,laneAssignmentMode:u}),{key:!1}),this.getMeasurements=Bt(()=>[this.getMeasurementOptions(),this.itemSizeCacheVersion],({count:r,paddingStart:i,scrollMargin:o,getItemKey:s,enabled:a,lanes:l,laneAssignmentMode:u},c)=>{const h=this.itemSizeCache;if(!a)return this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),[];if(this.laneAssignments.size>r)for(const m of this.laneAssignments.keys())m>=r&&this.laneAssignments.delete(m);this.lanesChangedFlag&&(this.lanesChangedFlag=!1,this.lanesSettling=!0,this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),this.pendingMin=null),this.measurementsCache.length===0&&!this.lanesSettling&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(m=>{this.itemSizeCache.set(m.key,m.size)}));const f=this.lanesSettling?0:this.pendingMin??0;if(this.pendingMin=null,this.lanesSettling&&this.measurementsCache.length===r&&(this.lanesSettling=!1),l===1){const m=this.options.gap,v=r*2;let y=this._flatMeasurements;if(!y||y.length<v){const C=new Float64Array(v);y&&f>0&&C.set(y.subarray(0,f*2)),y=C,this._flatMeasurements=y}let p;if(f===0)p=i+o;else{const C=f-1;p=y[C*2]+y[C*2+1]+m}for(let C=f;C<r;C++){const b=s(C),_=h.get(b),k=typeof _=="number"?_:this.options.estimateSize(C);y[C*2]=p,y[C*2+1]=k,p+=k+m}const x=Bd(r,y,s);return this.measurementsCache=x,x}const d=this.measurementsCache.slice(0,f),g=new Array(l).fill(void 0);for(let m=0;m<f;m++){const v=d[m];v&&(g[v.lane]=m)}for(let m=f;m<r;m++){const v=s(m),y=this.laneAssignments.get(m);let p,x;const C=u==="estimate"||h.has(v);if(y!==void 0&&this.options.lanes>1){p=y;const S=g[p],M=S!==void 0?d[S]:void 0;x=M?M.end+this.options.gap:i+o}else{const S=this.options.lanes===1?d[m-1]:this.getFurthestMeasurement(d,m);x=S?S.end+this.options.gap:i+o,p=S?S.lane:m%this.options.lanes,this.options.lanes>1&&C&&this.laneAssignments.set(m,p)}const b=h.get(v),_=typeof b=="number"?b:this.options.estimateSize(m),k=x+_;d[m]={index:m,start:x,size:_,end:k,key:v,lane:p},g[p]=m}return this.measurementsCache=d,d},{key:!1,debug:()=>this.options.debug}),this.calculateRange=Bt(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(r,i,o,s)=>this.range=r.length>0&&i>0?sg({measurements:r,outerSize:i,scrollOffset:o,lanes:s,flat:s===1&&this._flatMeasurements!=null?this._flatMeasurements:null}):null,{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=Bt(()=>{let r=null,i=null;const o=this.calculateRange();return o&&(r=o.startIndex,i=o.endIndex),this.maybeNotify.updateDeps([this.isScrolling,r,i]),[this.options.rangeExtractor,this.options.overscan,this.options.count,r,i]},(r,i,o,s,a)=>s===null||a===null?[]:r({startIndex:s,endIndex:a,overscan:i,count:o}),{key:!1,debug:()=>this.options.debug}),this.indexFromElement=r=>{const i=this.options.indexAttribute,o=r.getAttribute(i);return o?parseInt(o,10):(console.warn(`Missing attribute name '${i}={index}' on measured element.`),-1)},this.shouldMeasureDuringScroll=r=>{var i;if(!this.scrollState||this.scrollState.behavior!=="smooth")return!0;const o=this.scrollState.index??((i=this.getVirtualItemForOffset(this.scrollState.lastTargetOffset))==null?void 0:i.index);if(o!==void 0&&this.range){const s=Math.max(this.options.overscan,Math.ceil((this.range.endIndex-this.range.startIndex)/2)),a=Math.max(0,o-s),l=Math.min(this.options.count-1,o+s);return r>=a&&r<=l}return!0},this.measureElement=r=>{if(!r){this.elementsCache.forEach((a,l)=>{a.isConnected||(this.observer.unobserve(a),this.elementsCache.delete(l))});return}const i=this.indexFromElement(r),o=this.options.getItemKey(i),s=this.elementsCache.get(o);s!==r&&(s&&this.observer.unobserve(s),this.observer.observe(r),this.elementsCache.set(o,r)),(!this.isScrolling||this.scrollState)&&this.shouldMeasureDuringScroll(i)&&this.resizeItem(i,this.options.measureElement(r,void 0,this))},this.resizeItem=(r,i)=>{var o,s;if(r<0||r>=this.options.count)return;let a,l,u;const c=this._flatMeasurements;if(this.options.lanes===1&&c!==null)u=this.options.getItemKey(r),l=c[r*2],a=c[r*2+1];else{const d=this.measurementsCache[r];if(!d)return;u=d.key,l=d.start,a=d.size}const h=this.itemSizeCache.get(u)??a,f=i-h;if(f!==0){const d=this.options.anchorTo==="end"&&((o=this.scrollState)==null?void 0:o.behavior)!=="smooth"&&this.getVirtualDistanceFromEnd()<=this.options.scrollEndThreshold,g=d?this.getTotalSize():0,m=((s=this.scrollState)==null?void 0:s.behavior)!=="smooth"&&(this.shouldAdjustScrollPositionOnItemSizeChange!==void 0?this.shouldAdjustScrollPositionOnItemSizeChange(this.measurementsCache[r]??{index:r,key:u,start:l,size:a,end:l+a,lane:0},f,this):l<this.getScrollOffset()+this.scrollAdjustments&&(!this.itemSizeCache.has(u)||this.scrollDirection!=="backward"));(this.pendingMin===null||r<this.pendingMin)&&(this.pendingMin=r),this.itemSizeCache.set(u,i),this.itemSizeCacheVersion++,d?this.applyScrollAdjustment(this.getTotalSize()-g):m&&this.applyScrollAdjustment(f),this.notify(!1)}},this.getVirtualItems=Bt(()=>[this.getVirtualIndexes(),this.getMeasurements()],(r,i)=>{const o=[];for(let s=0,a=r.length;s<a;s++){const l=r[s],u=i[l];o.push(u)}return o},{key:!1,debug:()=>this.options.debug}),this.getVirtualItemForOffset=r=>{const i=this.getMeasurements();if(i.length===0)return;const o=this._flatMeasurements,s=this.options.lanes===1&&o!=null,a=zo(0,i.length-1,s?l=>o[l*2]:l=>mi(i[l]).start,r);return mi(i[a])},this.getMaxScrollOffset=()=>{if(!this.scrollElement)return 0;if("scrollHeight"in this.scrollElement)return this.options.horizontal?this.scrollElement.scrollWidth-this.scrollElement.clientWidth:this.scrollElement.scrollHeight-this.scrollElement.clientHeight;{const r=this.scrollElement.document.documentElement;return this.options.horizontal?r.scrollWidth-this.scrollElement.innerWidth:r.scrollHeight-this.scrollElement.innerHeight}},this.getVirtualDistanceFromEnd=()=>Math.max(this.getTotalSize()-this.getSize()-this.getScrollOffset(),0),this.getDistanceFromEnd=()=>Math.max(this.getMaxScrollOffset()-this.getScrollOffset(),0),this.isAtEnd=(r=this.options.scrollEndThreshold)=>this.getDistanceFromEnd()<=r,this.getOffsetForAlignment=(r,i,o=0)=>{if(!this.scrollElement)return 0;const s=this.getSize(),a=this.getScrollOffset();i==="auto"&&(i=r>=a+s?"end":"start"),i==="center"?r+=(o-s)/2:i==="end"&&(r-=s);const l=this.getMaxScrollOffset();return Math.max(Math.min(l,r),0)},this.getOffsetForIndex=(r,i="auto")=>{r=Math.max(0,Math.min(r,this.options.count-1));const o=this.getSize(),s=this.getScrollOffset(),a=this.measurementsCache[r];if(!a)return;if(i==="auto")if(a.end>=s+o-this.options.scrollPaddingEnd)i="end";else if(a.start<=s+this.options.scrollPaddingStart)i="start";else return[s,i];if(i==="end"&&r===this.options.count-1)return[this.getMaxScrollOffset(),i];const l=i==="end"?a.end+this.options.scrollPaddingEnd:a.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(l,i,a.size),i]},this.scrollToOffset=(r,{align:i="start",behavior:o="auto"}={})=>{const s=this.getOffsetForAlignment(r,i),a=this.now();this.scrollState={index:null,align:i,behavior:o,startedAt:a,lastTargetOffset:s,stableFrames:0},this._scrollToOffset(s,{adjustments:void 0,behavior:o}),this.scheduleScrollReconcile()},this.scrollToIndex=(r,{align:i="auto",behavior:o="auto"}={})=>{r=Math.max(0,Math.min(r,this.options.count-1));const s=this.getOffsetForIndex(r,i);if(!s)return;const[a,l]=s,u=this.now();this.scrollState={index:r,align:l,behavior:o,startedAt:u,lastTargetOffset:a,stableFrames:0},this._scrollToOffset(a,{adjustments:void 0,behavior:o}),this.scheduleScrollReconcile()},this.scrollBy=(r,{behavior:i="auto"}={})=>{const o=this.getScrollOffset()+r,s=this.now();this.scrollState={index:null,align:"start",behavior:i,startedAt:s,lastTargetOffset:o,stableFrames:0},this._scrollToOffset(o,{adjustments:void 0,behavior:i}),this.scheduleScrollReconcile()},this.scrollToEnd=({behavior:r="auto"}={})=>{if(this.options.count>0){this.scrollToIndex(this.options.count-1,{align:"end",behavior:r});return}this.scrollToOffset(Math.max(this.getTotalSize()-this.getSize(),0),{behavior:r})},this.getTotalSize=()=>{var r;const i=this.getMeasurements();let o;if(i.length===0)o=this.options.paddingStart;else if(this.options.lanes===1){const s=i.length-1,a=this._flatMeasurements;a!=null?o=a[s*2]+a[s*2+1]:o=((r=i[s])==null?void 0:r.end)??0}else{const s=Array(this.options.lanes).fill(null);let a=i.length-1;for(;a>=0&&s.some(l=>l===null);){const l=i[a];s[l.lane]===null&&(s[l.lane]=l.end),a--}o=Math.max(...s.filter(l=>l!==null))}return Math.max(o-this.options.scrollMargin+this.options.paddingEnd,0)},this.takeSnapshot=()=>{const r=[];if(this.itemSizeCache.size===0)return r;const i=this.getMeasurements();for(const o of i)o&&this.itemSizeCache.has(o.key)&&r.push({index:o.index,key:o.key,start:o.start,size:o.size,end:o.end,lane:o.lane});return r},this._scrollToOffset=(r,{adjustments:i,behavior:o})=>{this._intendedScrollOffset=r+(i??0),this.options.scrollToFn(r,{behavior:o,adjustments:i},this)},this.measure=()=>{this.pendingMin=null,this.itemSizeCache.clear(),this.laneAssignments.clear(),this.itemSizeCacheVersion++,this.notify(!1)},this.setOptions(n)}applyScrollAdjustment(n,r){n!==0&&(vn()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?this._iosDeferredAdjustment+=n:this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=n,behavior:r}))}scheduleScrollReconcile(){if(!this.targetWindow){this.scrollState=null;return}this.rafId==null&&(this.rafId=this.targetWindow.requestAnimationFrame(()=>{this.rafId=null,this.reconcileScroll()}))}reconcileScroll(){if(!this.scrollState||!this.scrollElement)return;if(this.now()-this.scrollState.startedAt>5e3){this.scrollState=null;return}const i=this.scrollState.index!=null?this.getOffsetForIndex(this.scrollState.index,this.scrollState.align):void 0,o=i?i[0]:this.scrollState.lastTargetOffset,s=1,a=o!==this.scrollState.lastTargetOffset;if(!a&&Xd(o,this.getScrollOffset())){if(this.scrollState.stableFrames++,this.scrollState.stableFrames>=s){this.getScrollOffset()!==o&&this._scrollToOffset(o,{adjustments:void 0,behavior:"auto"}),this.scrollState=null;return}}else if(this.scrollState.stableFrames=0,a){const l=this.getSize()||600,u=Math.abs(o-this.getScrollOffset()),c=this.scrollState.behavior==="smooth"&&u>l;this.scrollState.lastTargetOffset=o,c||(this.scrollState.behavior="auto"),this._scrollToOffset(o,{adjustments:void 0,behavior:c?"smooth":"auto"})}this.scheduleScrollReconcile()}}const zo=(e,n,r,i)=>{for(;e<=n;){const o=(e+n)/2|0,s=r(o);if(s<i)e=o+1;else if(s>i)n=o-1;else return o}return e>0?e-1:0};function sg({measurements:e,outerSize:n,scrollOffset:r,lanes:i,flat:o}){const s=e.length-1,a=o?h=>o[h*2]:h=>e[h].start,l=o?h=>o[h*2]+o[h*2+1]:h=>e[h].end;if(e.length<=i)return{startIndex:0,endIndex:s};let u=zo(0,s,a,r),c=u;if(i===1)for(;c<s&&l(c)<r+n;)c++;else if(i>1){const h=Array(i).fill(0);for(;c<s&&h.some(d=>d<r+n);){const d=e[c];h[d.lane]=d.end,c++}const f=Array(i).fill(r+n);for(;u>=0&&f.some(d=>d>=r);){const d=e[u];f[d.lane]=d.start,u--}u=Math.max(0,u-u%i),c=Math.min(s,c+(i-1-c%i))}return{startIndex:u,endIndex:c}}const _n=typeof document<"u"?L.useLayoutEffect:L.useEffect;function ag({useFlushSync:e=!0,directDomUpdates:n=!1,directDomUpdatesMode:r="transform",...i}){const o=L.useReducer(c=>c+1,0)[1],s=L.useRef({enabled:n,mode:r,container:null,lastSize:null,lastPositions:new WeakMap,prevRange:null});s.current.enabled=n,s.current.mode=r;const a=c=>{const h=s.current;if(!h.enabled||!h.container)return;const f=c.getTotalSize();if(f!==h.lastSize){h.lastSize=f;const p=c.options.horizontal?"width":"height";h.container.style[p]=`${f}px`}const d=!!c.options.horizontal,g=h.mode==="transform",m=d?"left":"top",v=c.options.scrollMargin,y=c.getVirtualItems();for(const p of y){const x=p.start-v,C=c.elementsCache.get(p.key);C&&h.lastPositions.get(C)!==x&&(h.lastPositions.set(C,x),g?C.style.transform=d?`translate3d(${x}px, 0, 0)`:`translate3d(0, ${x}px, 0)`:C.style[m]=`${x}px`)}},l={...i,onChange:(c,h)=>{var f;const d=s.current;let g=!0;if(d.enabled){a(c);const m=c.range,v=d.prevRange;g=!v||v.isScrolling!==c.isScrolling||v.startIndex!==m?.startIndex||v.endIndex!==m?.endIndex,g&&(d.prevRange=m?{startIndex:m.startIndex,endIndex:m.endIndex,isScrolling:c.isScrolling}:null)}g&&(e&&h?Io.flushSync(o):o()),(f=i.onChange)==null||f.call(i,c,h)}},[u]=L.useState(()=>{const c=new og(l);return Object.assign(c,{containerRef:h=>{const f=s.current;if(f.container=h,f.lastSize=null,h&&f.enabled){const d=c.getTotalSize();f.lastSize=d;const g=c.options.horizontal?"width":"height";h.style[g]=`${d}px`}}})});return u.setOptions(l),_n(()=>u._didMount(),[]),_n(()=>u._willUpdate()),_n(()=>{a(u)}),u}function lg(e){return ag({observeElementRect:Qd,observeElementOffset:eg,scrollToFn:ig,...e})}const Xt=57;function ug({filteredGraphNodes:e,graphNodes:n,nodeSearchQuery:r,onClearSelection:i,onNodeSearchQueryChange:o,onSelectNode:s,selectedConnectedNodes:a,selectedNode:l,selectedNodeId:u}){const c=L.useRef(null),h=L.useRef(r),f=lg({count:e.length,estimateSize:()=>Xt,getItemKey:y=>e[y]?.id??y,getScrollElement:()=>c.current,initialRect:{width:360,height:480},overscan:8}),d=l?`${l.title||"Untitled"} selected, ${l.connections} links`:"No graph node selected",g=`${e.length} graph notes shown`,m=f.getVirtualItems(),v=L.useCallback(y=>{if(y.currentTarget!==y.target||y.altKey||y.ctrlKey||y.metaKey)return;const p=c.current?.clientHeight||Xt*8,x=c.current?.scrollTop??0,C=Math.max(0,f.getTotalSize()-p),b=Math.max(Xt,p-Xt);let _=null;switch(y.key){case"ArrowDown":_=x+Xt;break;case"ArrowUp":_=x-Xt;break;case"PageDown":_=x+b;break;case"PageUp":_=x-b;break;case"Home":_=0;break;case"End":_=C;break;default:return}y.preventDefault(),f.scrollToOffset(Math.min(C,Math.max(0,_)),{behavior:"auto"})},[f]);return L.useEffect(()=>{const y=h.current!==r;if(h.current=r,y){f.scrollToOffset(0,{behavior:"auto"});return}if(!u)return;const p=e.findIndex(C=>C.id===u);if(p<0)return;const x=typeof window.matchMedia=="function"&&window.matchMedia("(prefers-reduced-motion: reduce)").matches;f.scrollToIndex(p,{align:"auto",behavior:x?"auto":"smooth"})},[e,r,f,u]),R.jsxs("section",{className:"surface-base flex h-[min(34rem,calc(100dvh-12rem))] min-h-[420px] w-full max-w-full flex-col overflow-hidden md:h-[520px] xl:h-[min(44rem,calc(100vh-10rem))]","aria-labelledby":"graph-explorer-heading",children:[R.jsxs("div",{className:"border-b border-border-subtle/80 px-4 py-3",children:[R.jsxs("div",{className:"flex items-center justify-between gap-3",children:[R.jsxs("div",{className:"flex min-w-0 items-center gap-2 text-fg-tertiary",children:[R.jsx(qo,{className:"h-3.5 w-3.5 shrink-0","aria-hidden":"true"}),R.jsx(at,{id:"graph-explorer-heading",as:"h2",variant:"label",weight:"semibold",className:"text-current",children:"Graph Explorer"})]}),R.jsx(at,{id:"graph-node-results-summary",as:"span","aria-live":"polite","aria-atomic":"true",variant:"meta",tone:"tertiary",className:"shrink-0",children:g})]}),R.jsxs("div",{className:"relative mt-2.5",children:[R.jsx(Vo,{className:"pointer-events-none absolute top-1/2 left-3 h-4 w-4 -translate-y-1/2 text-fg-tertiary","aria-hidden":"true"}),R.jsx(No,{id:"graph-node-search",size:"sm",value:r,onChange:y=>o(y.target.value),placeholder:"Find graph notes","aria-label":"Search graph notes","aria-describedby":"graph-node-results-summary",className:$t("pl-9",r&&"pr-9")}),r&&R.jsx("button",{type:"button",onClick:()=>o(""),className:"focus-ring-soft absolute top-1/2 right-1.5 inline-flex h-6 w-6 -translate-y-1/2 items-center justify-center rounded-[8px] text-fg-tertiary outline-none transition-colors hover:bg-hover-subtle hover:text-fg-default","aria-label":"Clear graph search",children:R.jsx(sr,{className:"h-3.5 w-3.5","aria-hidden":"true"})})]})]}),R.jsx(at,{id:"graph-selection-status",as:"p",role:"status","aria-live":"polite",className:"sr-only",children:l?`${d}${a.length>0?`. Linked to ${a.map(y=>y.title||"Untitled").join(", ")}`:""}`:d}),R.jsx("div",{className:"flex h-[76px] shrink-0 items-center overflow-hidden border-b border-border-subtle/80 px-4 py-2.5",children:l?R.jsxs("div",{className:"flex min-w-0 flex-1 items-center justify-between gap-3 overflow-hidden",children:[R.jsxs("div",{className:"min-w-0 flex-1",children:[R.jsx(at,{as:"p",variant:"body",weight:"semibold",truncate:!0,children:l.title||"Untitled"}),R.jsxs(at,{as:"p",variant:"meta",tone:"tertiary",className:"mt-0.5",children:[l.connections," links",a.length>0?` · ${a.length} connected notes`:""]})]}),R.jsxs("div",{className:"flex shrink-0 items-center gap-1",children:[R.jsx("button",{type:"button",onClick:i,className:"focus-ring-soft inline-flex h-8 w-8 items-center justify-center rounded-[10px] text-fg-secondary outline-none transition-colors hover:bg-hover-subtle hover:text-fg-default","aria-label":"Deselect node",children:R.jsx(sr,{className:"h-3.5 w-3.5","aria-hidden":"true"})}),R.jsx(ar,{to:xn,params:{id:l.id},"aria-label":`Open ${l.title||"Untitled"}`,className:"focus-ring-soft inline-flex h-8 w-8 items-center justify-center rounded-[10px] text-fg-secondary outline-none transition-colors hover:bg-hover-subtle hover:text-fg-default",children:R.jsx(lr,{className:"h-4 w-4","aria-hidden":"true"})})]})]}):R.jsx(at,{as:"p",variant:"meta",tone:"secondary",className:"line-clamp-2",children:n[0]?.title?`Select a node to preview links. Most linked: ${n[0].title}`:"Select a node to preview links."})}),R.jsxs("div",{className:"flex min-h-0 flex-1 flex-col",children:[R.jsx(at,{id:"graph-node-list-keyboard-help",as:"p",className:"sr-only",children:"Focus the graph notes list and use arrow, page, home, or end keys to browse more results."}),e.length>0?R.jsx("div",{ref:c,role:"list","aria-label":"Graph notes","aria-describedby":"graph-node-results-summary graph-node-list-keyboard-help",tabIndex:0,onKeyDown:v,className:"focus-ring-soft min-h-0 flex-1 overflow-x-hidden overflow-y-auto outline-none",children:R.jsx("div",{className:"relative w-full",style:{height:`${f.getTotalSize()}px`},children:m.map(y=>{const p=e[y.index];if(!p)return null;const x=u===p.id,C=p.title||"Untitled";return R.jsx("div",{ref:f.measureElement,role:"listitem","aria-posinset":y.index+1,"aria-setsize":e.length,"data-index":y.index,className:$t("absolute top-0 left-0 w-full min-w-0 overflow-hidden border-b border-border-subtle/60",y.index===e.length-1&&"border-b-0"),style:{transform:`translateY(${y.start}px)`},children:R.jsxs("div",{className:$t("grid min-w-0 grid-cols-[minmax(0,1fr)_3.5rem] items-center overflow-hidden transition-colors",x?"bg-elevated text-fg-default":"text-fg-secondary hover:bg-hover-subtle hover:text-fg-default"),children:[R.jsxs("button",{type:"button","aria-pressed":x,"aria-describedby":x?"graph-selection-status":void 0,onClick:()=>s(p.id),className:"focus-ring-soft group grid min-w-0 grid-cols-[3px_minmax(0,1fr)_2.75rem] items-center gap-3 overflow-hidden px-4 py-3 text-left outline-none",children:[R.jsx("span",{className:$t("h-8 rounded-full transition-colors",x?"bg-fg-default":"bg-border-subtle group-hover:bg-border-secondary"),"aria-hidden":"true"}),R.jsx("span",{className:"min-w-0 overflow-hidden",children:R.jsx(at,{as:"span",variant:"meta",weight:x?"semibold":"medium",truncate:!0,className:"block min-w-0",children:C})}),R.jsxs(at,{as:"span",variant:"label",weight:"medium",tone:x?"secondary":"tertiary",className:"min-w-8 justify-self-end text-right tabular-nums",children:[R.jsx("span",{"aria-hidden":"true",children:p.connections}),R.jsxs("span",{className:"sr-only",children:[p.connections," links"]})]})]}),R.jsx(ar,{to:xn,params:{id:p.id},"aria-label":`Open ${C}`,className:"focus-ring-soft inline-flex h-9 w-9 shrink-0 items-center justify-center justify-self-center rounded-[10px] text-fg-secondary outline-none transition-colors hover:bg-hover-subtle hover:text-fg-default",children:R.jsx(lr,{className:"h-4 w-4","aria-hidden":"true"})})]})},y.key)})})}):R.jsx(at,{as:"p",variant:"meta",tone:"tertiary",className:"px-4 py-5 text-center",children:"No matching graph nodes"})]})]})}const vi=jo(Wo);function cg(){const e=vi.useNavigate(),{selected:n}=vi.useSearch(),r=n??null,i=L.useCallback(s=>{e({search:a=>({...a,selected:s??void 0}),replace:!0})},[e]),o=L.useCallback(s=>{e({to:xn,params:{id:s}})},[e]);return{selectedNodeId:r,selectNode:i,clearSelection:()=>i(null),openNode:o}}const fg=R.jsxs(Fe,{title:"Knowledge Graph",description:R.jsx(Ct,{width:184,height:16,className:"rounded-full"}),children:[R.jsxs("div",{className:"mb-3 grid min-w-0 grid-cols-2 gap-2 xl:hidden","aria-hidden":"true",children:[R.jsx(Ct,{width:"100%",height:36,className:"rounded-[12px]"}),R.jsx(Ct,{width:"100%",height:36,className:"rounded-[12px]"})]}),R.jsxs("div",{className:"grid min-w-0 gap-4 xl:grid-cols-[minmax(0,1fr)_23rem]",children:[R.jsx("div",{className:"surface-base h-[min(34rem,calc(100dvh-12rem))] min-h-[420px] w-full max-w-full overflow-hidden md:h-[520px] xl:order-1 xl:h-[min(44rem,calc(100vh-10rem))]",children:R.jsx(Ct,{width:"100%",height:"100%"})}),R.jsxs("div",{className:"surface-base hidden h-[min(34rem,calc(100dvh-12rem))] min-h-[420px] w-full max-w-full flex-col gap-3 p-4 md:h-[520px] xl:order-2 xl:flex xl:h-[min(44rem,calc(100vh-10rem))]",children:[R.jsxs("div",{className:"flex items-center justify-between gap-3",children:[R.jsx(Ct,{width:120,height:14,className:"rounded-full"}),R.jsx(Ct,{width:92,height:12,className:"rounded-full"})]}),R.jsx(Ct,{width:"100%",height:34,className:"rounded-[12px]"}),R.jsx(Ct,{width:"78%",height:12,className:"rounded-full"}),R.jsx("div",{className:"flex min-h-0 flex-1 flex-col gap-2",children:Array.from({length:6}).map((e,n)=>R.jsx(Ct,{width:"100%",height:40,className:"rounded-[12px]"},n))})]})]})]});function hg(){const[e,n]=L.useState(()=>typeof window>"u"?!1:window.matchMedia("(max-width: 1279px)").matches);return L.useEffect(()=>{const r=window.matchMedia("(max-width: 1279px)"),i=()=>n(r.matches);return i(),r.addEventListener("change",i),()=>r.removeEventListener("change",i)},[]),e}function dg(){const[e,n]=L.useState(""),[r,i]=L.useState("graph"),o=hg(),{clearSelection:s,openNode:a,selectNode:l,selectedNodeId:u}=cg(),{data:c}=Fo({queryKey:Uo.notes.graph(),queryFn:async()=>{const y=await Lo();if(y.type==="error")throw y;return y.noteGraph}}),h=L.useMemo(()=>Nd(c),[c]),f=L.useMemo(()=>h?jd(h.links):new Map,[h]),d=L.useMemo(()=>h?Dd(h.nodes):[],[h]),g=L.useMemo(()=>$d(d,e),[d,e]),m=L.useMemo(()=>Fd(d,u),[d,u]),v=L.useMemo(()=>Ld(d,f,u),[f,d,u]);return h?R.jsxs(Fe,{title:"Knowledge Graph",description:`${h.nodes.length} linked notes, ${h.links.length} connections`,children:[R.jsxs("div",{role:"tablist","aria-label":"Graph mobile view",className:"surface-base mb-3 grid min-w-0 grid-cols-2 gap-1 p-1 xl:hidden",children:[R.jsx("button",{type:"button",role:"tab",id:"graph-mobile-tab-graph","aria-controls":"graph-mobile-panel-graph","aria-selected":r==="graph",onClick:()=>i("graph"),className:$t("focus-ring-soft rounded-[10px] px-3 py-2 text-sm font-semibold outline-none transition-colors",r==="graph"?"bg-elevated text-fg-default shadow-sm":"text-fg-secondary hover:bg-hover-subtle hover:text-fg-default"),children:"Graph"}),R.jsx("button",{type:"button",role:"tab",id:"graph-mobile-tab-list","aria-controls":"graph-mobile-panel-list","aria-selected":r==="list",onClick:()=>i("list"),className:$t("focus-ring-soft rounded-[10px] px-3 py-2 text-sm font-semibold outline-none transition-colors",r==="list"?"bg-elevated text-fg-default shadow-sm":"text-fg-secondary hover:bg-hover-subtle hover:text-fg-default"),children:"List"})]}),R.jsxs("div",{className:"grid min-w-0 gap-4 xl:grid-cols-[minmax(0,1fr)_23rem]",children:[R.jsx("div",{id:"graph-mobile-panel-graph",role:"tabpanel","aria-labelledby":"graph-mobile-tab-graph","aria-hidden":o&&r!=="graph",inert:o&&r!=="graph"?!0:void 0,className:$t("col-start-1 row-start-1 min-w-0 xl:col-auto xl:row-auto xl:order-1 xl:pointer-events-auto xl:visible",r==="graph"?"pointer-events-auto visible":"pointer-events-none invisible"),children:R.jsx(Gd,{adjacencyMap:f,graphData:h,onClearSelection:s,onOpenNode:a,onSelectNode:l,selectedNodeId:u})}),R.jsx("div",{id:"graph-mobile-panel-list",role:"tabpanel","aria-labelledby":"graph-mobile-tab-list","aria-hidden":o&&r!=="list",inert:o&&r!=="list"?!0:void 0,className:$t("col-start-1 row-start-1 min-w-0 xl:col-auto xl:row-auto xl:order-2 xl:pointer-events-auto xl:visible",r==="list"?"pointer-events-auto visible":"pointer-events-none invisible"),children:R.jsx(ug,{filteredGraphNodes:g,graphNodes:d,nodeSearchQuery:e,onClearSelection:s,onNodeSearchQueryChange:n,onSelectNode:l,selectedConnectedNodes:v,selectedNode:m,selectedNodeId:u})})]})]}):R.jsx(Fe,{title:"Knowledge Graph",description:"0 linked notes, 0 connections",children:R.jsx(Ho,{title:"No constellations yet",description:"Link your notes together and watch your own starry sky unfold"})})}function _g(){return R.jsx(Do,{fallback:fg,errorTitle:"Failed to load graph",errorDescription:"Retry loading your linked note constellation",renderError:({error:e,retry:n})=>R.jsx(Fe,{title:"Knowledge Graph",children:R.jsx($o,{title:"Failed to load graph",description:"Retry loading your linked note constellation",error:e,onRetry:n})}),children:R.jsx(dg,{})})}export{_g as default};
|