@panphora/clayjs 1.15.2 → 1.16.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 +4 -5
- package/THIRD-PARTY-NOTICES.md +16 -0
- package/compat/highlight-11.9.0.min.js +1213 -0
- package/compat/highlight-LICENSE +29 -0
- package/compat/journal-assets.lock.json +22 -0
- package/compat/overtype-2.6.1.min.js +116 -0
- package/compat/overtype-LICENSE +21 -0
- package/dist/all.js +90 -0
- package/dist/clay-dom.js +84 -0
- package/dist/clay-events.js +103 -0
- package/dist/clay-internals.js +85 -0
- package/dist/clay-options.js +93 -0
- package/dist/clay-router.js +98 -0
- package/dist/clay-ui.js +95 -0
- package/dist/clay-utils.js +84 -0
- package/dist/clay.js +146 -0
- package/dist/clay.standalone.js +83090 -58706
- package/dist/m/attrs/add-from-T5LJXFFI.js +1 -0
- package/dist/m/attrs/onaftersave-OKSWEJQF.js +1 -0
- package/dist/m/attrs/refetch-on-save-NWPPXOCZ.js +1 -0
- package/dist/m/attrs/save-freeze-FUP4Q4X3.js +1 -0
- package/dist/m/c-2AZDZWCK.js +1 -0
- package/dist/m/c-2JL6E75N.js +1 -0
- package/dist/m/c-2M73252O.js +1 -0
- package/dist/m/c-2SPVQSHC.js +1 -0
- package/dist/m/c-33HUYEDI.js +1 -0
- package/dist/m/c-33JJ6CBX.js +2 -0
- package/dist/m/c-35NBGMZB.js +1 -0
- package/dist/m/c-3GJ4SDE2.js +1 -0
- package/dist/m/c-3IQRECYS.js +1 -0
- package/dist/m/c-3OWDMNJR.js +2 -0
- package/dist/m/c-46XYM55L.js +1 -0
- package/dist/m/c-4B6H4G5V.js +1 -0
- package/dist/m/c-4DRMS4QG.js +9 -0
- package/dist/m/c-4FFHZM32.js +1 -0
- package/dist/m/c-4JZDZFF6.js +1 -0
- package/dist/m/c-4L3BTFRK.js +1 -0
- package/dist/m/c-4Q2XTQ2N.js +2 -0
- package/dist/m/c-4WKFKEKF.js +1 -0
- package/dist/m/c-4YSCRICO.js +1 -0
- package/dist/m/c-54RCDCBU.js +1 -0
- package/dist/m/c-5M4YEKCX.js +4 -0
- package/dist/m/c-5R4PTRG2.js +1 -0
- package/dist/m/c-5V3MOVJT.js +1 -0
- package/dist/m/c-5VYOWDTI.js +1 -0
- package/dist/m/c-5Y6TNX5W.js +34 -0
- package/dist/m/c-5YIHJ3TJ.js +1 -0
- package/dist/m/c-66O32MV3.js +28 -0
- package/dist/m/c-6HMB24EV.js +1 -0
- package/dist/m/c-7DJDKPGL.js +1 -0
- package/dist/m/c-7O6AFR65.js +1 -0
- package/dist/m/c-7SWMYKAI.js +1 -0
- package/dist/m/c-7VGZ7RU5.js +1 -0
- package/dist/m/c-A7LS5UZW.js +1 -0
- package/dist/m/c-ANQTJ3B5.js +2 -0
- package/dist/m/c-AQLFEATB.js +1 -0
- package/dist/m/c-AYVOREBE.js +1 -0
- package/dist/m/c-B2ZXPOS3.js +3 -0
- package/dist/m/c-BBVGTQG7.js +1 -0
- package/dist/m/c-BMIZKMPV.js +1 -0
- package/dist/m/c-BTDI4Y23.js +1 -0
- package/dist/m/c-BWFVSBDF.js +1 -0
- package/dist/m/c-BYTKL6UX.js +1 -0
- package/dist/m/c-CFHW5AMY.js +6 -0
- package/dist/m/c-CJZSLMVQ.js +1 -0
- package/dist/m/c-CYWLPPUS.js +1 -0
- package/dist/m/c-CZUSOB7V.js +1 -0
- package/dist/m/c-DBE6ORSI.js +1 -0
- package/dist/m/c-DCFSEJZG.js +1 -0
- package/dist/m/c-DNZ5IFM6.js +1 -0
- package/dist/m/c-EDHUR4MX.js +1 -0
- package/dist/m/c-EJTGYSLN.js +1 -0
- package/dist/m/c-EY6UOM54.js +1 -0
- package/dist/m/c-F3CKJTJS.js +1 -0
- package/dist/m/c-F7Y6FLPY.js +1 -0
- package/dist/m/c-FA4DZVTC.js +1 -0
- package/dist/m/c-FILLTJA7.js +1 -0
- package/dist/m/c-G2BUZITR.js +1 -0
- package/dist/m/c-GB3JTV6E.js +1 -0
- package/dist/m/c-GBGWXTX4.js +1 -0
- package/dist/m/c-GHBCCVG4.js +1 -0
- package/dist/m/c-GJAEGGXY.js +1 -0
- package/dist/m/c-GOWBDM6J.js +1 -0
- package/dist/m/c-GQ6F6IDK.js +1 -0
- package/dist/m/c-H4LG442Q.js +1 -0
- package/dist/m/c-HA6INT6J.js +1 -0
- package/dist/m/c-HPURYVZS.js +2 -0
- package/dist/m/c-HRDCD3WN.js +67 -0
- package/dist/m/c-HT33EQRN.js +1 -0
- package/dist/m/c-HVYXIS72.js +1 -0
- package/dist/m/c-IB52R237.js +1 -0
- package/dist/m/c-IJUK2GPW.js +1 -0
- package/dist/m/c-IKWNE4R4.js +1 -0
- package/dist/m/c-IU3IYEU6.js +1 -0
- package/dist/m/c-IZ2EBRAJ.js +1 -0
- package/dist/m/c-J7CA54IP.js +1 -0
- package/dist/m/c-JAX2667S.js +6 -0
- package/dist/m/c-KI7M4AY3.js +1 -0
- package/dist/m/c-KIPQJX4B.js +1 -0
- package/dist/m/c-KKWLDOPM.js +1 -0
- package/dist/m/c-KR4UW4KW.js +1 -0
- package/dist/m/c-KY3VJGUA.js +8 -0
- package/dist/m/c-L4WQSC27.js +1 -0
- package/dist/m/c-LFPHCXY3.js +1 -0
- package/dist/m/c-LR4CGEPT.js +91 -0
- package/dist/m/c-LRPUO2MX.js +1 -0
- package/dist/m/c-LTGMXXKO.js +1 -0
- package/dist/m/c-LXENEBV7.js +1 -0
- package/dist/m/c-LZJPNR2W.js +1 -0
- package/dist/m/c-MMUIUUZG.js +2 -0
- package/dist/m/c-MTQHWQC3.js +1 -0
- package/dist/m/c-N326R2JD.js +1 -0
- package/dist/m/c-N7JPUPGC.js +1 -0
- package/dist/m/c-NMJRXKPC.js +8 -0
- package/dist/m/c-NRPJEVJS.js +1 -0
- package/dist/m/c-NUHP2XDB.js +1 -0
- package/dist/m/c-NZMNXVF6.js +1 -0
- package/dist/m/c-OCSZ4QGN.js +1 -0
- package/dist/m/c-OIBUTDXI.js +1 -0
- package/dist/m/c-OIDRZKAF.js +1 -0
- package/dist/m/c-OYTFP5QN.js +1 -0
- package/dist/m/c-P7KNDG34.js +1 -0
- package/dist/m/c-PPOSCAQD.js +1 -0
- package/dist/m/c-PQ5LK6QE.js +993 -0
- package/dist/m/c-PZ4XEPUP.js +2 -0
- package/dist/m/c-QHIWXHRO.js +1 -0
- package/dist/m/c-QHWJ5ZIJ.js +1 -0
- package/dist/m/c-QIX5BJYN.js +1 -0
- package/dist/m/c-QNKREOL6.js +1 -0
- package/dist/m/c-QQHEX6HA.js +1 -0
- package/dist/m/c-R7RMANJI.js +9 -0
- package/dist/m/c-RI4NT75Y.js +1 -0
- package/dist/m/c-RM7J7BV2.js +1 -0
- package/dist/m/c-RUJKSUQW.js +1 -0
- package/dist/m/c-RVMWGXEJ.js +1 -0
- package/dist/m/c-S7H2DRCB.js +1 -0
- package/dist/m/c-S7LK4KUE.js +1 -0
- package/dist/m/c-SGCCC4FW.js +25 -0
- package/dist/m/c-SGIA4IEQ.js +188 -0
- package/dist/m/c-SWRJFCNN.js +1 -0
- package/dist/m/c-T4VO4OCB.js +1 -0
- package/dist/m/c-TCCA5BZN.js +2 -0
- package/dist/m/c-TQEMVJCS.js +1 -0
- package/dist/m/c-TQZ2JYHD.js +1 -0
- package/dist/m/c-TR6RMDQ7.js +3 -0
- package/dist/m/c-TRS6TM6O.js +1 -0
- package/dist/m/c-UGHH4MB3.js +1 -0
- package/dist/m/c-UKHTLWUW.js +1 -0
- package/dist/m/c-UL2YUY52.js +1 -0
- package/dist/m/c-UNN7LWCT.js +1 -0
- package/dist/m/c-UXBMRDZB.js +235 -0
- package/dist/m/c-V7PZZRG7.js +1 -0
- package/dist/m/c-VAK7SG37.js +1 -0
- package/dist/m/c-VDSS4K3Z.js +1 -0
- package/dist/m/c-VFX45IZQ.js +1 -0
- package/dist/m/c-VHNSBD2M.js +1 -0
- package/dist/m/c-VKEDWYDF.js +1 -0
- package/dist/m/c-VL52ADDR.js +1 -0
- package/dist/m/c-WN5AY3OZ.js +1 -0
- package/dist/m/c-WNYBLIOZ.js +1 -0
- package/dist/m/c-WRBKEJD4.js +1 -0
- package/dist/m/c-WWDBYXLK.js +1 -0
- package/dist/m/c-WYFDLITL.js +1 -0
- package/dist/m/c-XN6MBKI6.js +67 -0
- package/dist/m/c-XNNW2CWK.js +1 -0
- package/dist/m/c-XPELB6E5.js +1 -0
- package/dist/m/c-XQXZAO7N.js +1 -0
- package/dist/m/c-Y6USGTS5.js +5 -0
- package/dist/m/c-YDH7Q3NY.js +1 -0
- package/dist/m/c-YG2NJYS6.js +135 -0
- package/dist/m/c-Z36J63PP.js +1 -0
- package/dist/m/c-Z4VRC7GU.js +7 -0
- package/dist/m/c-Z6K52OLP.js +19 -0
- package/dist/m/c-ZDY2MDAA.js +21 -0
- package/dist/m/c-ZE46QDIH.js +1 -0
- package/dist/m/c-ZUCOKOHT.js +1 -0
- package/dist/m/core/admin-attrs-VGNLAUDK.js +1 -0
- package/dist/m/core/autosave-E4PEFPZ6.js +1 -0
- package/dist/m/core/conflict-notice-VQ6Y64PH.js +1 -0
- package/dist/m/core/draft-mode-WSQAT67S.js +1 -0
- package/dist/m/core/host-permission-XN3K2IW3.js +1 -0
- package/dist/m/core/is-edit-mode-JXHDVGUL.js +1 -0
- package/dist/m/core/persist-HKHA66IY.js +3 -0
- package/dist/m/core/recovery-TBBSICE2.js +1 -0
- package/dist/m/core/save-WUCHTQBE.js +1 -0
- package/dist/m/core/save-core-FJVHT5M3.js +1 -0
- package/dist/m/core/snapshot-F3SWDZMM.js +1 -0
- package/dist/m/core/unsaved-warning-STKBHE6G.js +1 -0
- package/dist/m/dom/all-APS5ZSKP.js +1 -0
- package/dist/m/dom/dom-helpers-L7OSR6S4.js +1 -0
- package/dist/m/events/index-23DPTUT4.js +1 -0
- package/dist/m/internals/index-WOVAP3RU.js +1 -0
- package/dist/m/lib/cache-bust-CGWT6ZJI.js +1 -0
- package/dist/m/lib/region-policy-SB2AWVG5.js +1 -0
- package/dist/m/loader-HXX6YNH5.js +1 -0
- package/dist/m/manifest-F22DEDAC.js +1 -0
- package/dist/m/manifest-edit-C3C7376B.js +1 -0
- package/dist/m/manifest.json +3491 -0
- package/dist/m/options/options-2LH76JQ3.js +1 -0
- package/dist/m/page/editor-XUTB2HB2.js +189 -0
- package/dist/m/plugins/ai-edit-ZQ4CGWIP.js +6 -0
- package/dist/m/plugins/bind-text-NX46N5UV.js +1 -0
- package/dist/m/plugins/cms-HP3LSTPN.js +2293 -0
- package/dist/m/plugins/demo-ZIBFAA3R.js +1 -0
- package/dist/m/plugins/derive-UAAA4V4S.js +1 -0
- package/dist/m/plugins/indicator-PV4YW2ID.js +1 -0
- package/dist/m/plugins/live-NUTTXSBS.js +1 -0
- package/dist/m/plugins/menu-HCKO3DSP.js +138 -0
- package/dist/m/plugins/message-LQ6EDH4V.js +1 -0
- package/dist/m/plugins/page-KSUH7G6J.js +2 -0
- package/dist/m/plugins/page-view-W73OW7WI.js +1 -0
- package/dist/m/plugins/people-AJJ32YCG.js +1 -0
- package/dist/m/plugins/quickcrop-QNY3PKLD.js +26 -0
- package/dist/m/plugins/quickcrop-QNY3PKLD.js.LEGAL.txt +7 -0
- package/dist/m/plugins/richclay-RC3L2F6X.js +517 -0
- package/dist/m/plugins/richclay-RC3L2F6X.js.LEGAL.txt +1 -0
- package/dist/m/plugins/sortable-YRMQX3ZU.js +1 -0
- package/dist/m/plugins/source-KHK5UUSK.js +1 -0
- package/dist/m/plugins/undo-OF2L3CXU.js +1 -0
- package/dist/m/plugins/unsent-HJFLQJ2O.js +1 -0
- package/dist/m/plugins/upgrade-ZNYODP5Y.js +1 -0
- package/dist/m/plugins/upload-XSGNILUY.js +1 -0
- package/dist/m/plugins/visitor-drafts-XK5GW55Q.js +21 -0
- package/dist/m/plugins/visitor-drafts-owner-KSSH75EV.js +1 -0
- package/dist/m/plugins/wire-ZWVWKF76.js +1 -0
- package/dist/m/reader-core-ILWLXVMP.js +68 -0
- package/dist/m/route/route-KOCZSEGN.js +1 -0
- package/dist/m/sync/live-sync-4AUVXVJU.js +1 -0
- package/dist/m/ui/index-EVHKMKBL.js +1 -0
- package/dist/m/utils/index-4TJCVLT7.js +1 -0
- package/dist/m/vendor/Sortable.vendor-A755ITLN.js +3 -0
- package/dist/m/vendor/Sortable.vendor-A755ITLN.js.LEGAL.txt +1 -0
- package/dist/m/vendor/sap-core.vendor-A7BMUYZT.js +6 -0
- package/dist/offline-manifest.json +3800 -0
- package/dist/page/themes/light-1.css +406 -0
- package/dist/server/core.cjs +23662 -22860
- package/dist/server/offline-runtime.cjs +4954 -0
- package/dist/server/offline-runtime.mjs +4923 -0
- package/dist/server/rooms.mjs +9 -0
- package/docs/guide.md +1078 -669
- package/entries/all.js +2 -0
- package/entries/clay-data.js +1 -1
- package/entries/clay-dom.js +2 -0
- package/entries/clay-events.js +2 -0
- package/entries/clay-internals.js +2 -0
- package/entries/clay-options.js +2 -0
- package/entries/clay-router.js +2 -0
- package/entries/clay-ui.js +2 -0
- package/entries/clay-utils.js +2 -0
- package/entries/clay.js +2 -0
- package/entries/sap.js +6 -6
- package/fonts/ibm-plex-mono-LICENSE +93 -0
- package/fonts/ibm-plex-mono-latin-300-normal.woff2 +0 -0
- package/fonts/ibm-plex-mono-latin-400-italic.woff2 +0 -0
- package/fonts/ibm-plex-mono-latin-400-normal.woff2 +0 -0
- package/fonts/ibm-plex-mono-latin-500-normal.woff2 +0 -0
- package/fonts/ibm-plex-mono-latin-600-normal.woff2 +0 -0
- package/fonts/ibm-plex-sans-LICENSE +93 -0
- package/fonts/ibm-plex-sans-latin-400-normal.woff2 +0 -0
- package/fonts/ibm-plex-sans-latin-500-normal.woff2 +0 -0
- package/fonts/ibm-plex-sans-latin-600-normal.woff2 +0 -0
- package/fonts/ibm-plex.css +71 -0
- package/fonts/inter-LICENSE +93 -0
- package/fonts/inter-cyrillic-ext-wght-normal.woff2 +0 -0
- package/fonts/inter-cyrillic-wght-normal.woff2 +0 -0
- package/fonts/inter-greek-ext-wght-normal.woff2 +0 -0
- package/fonts/inter-greek-wght-normal.woff2 +0 -0
- package/fonts/inter-latin-ext-wght-normal.woff2 +0 -0
- package/fonts/inter-latin-wght-normal.woff2 +0 -0
- package/fonts/inter-vietnamese-wght-normal.woff2 +0 -0
- package/fonts/inter.css +62 -0
- package/fonts/newsreader-LICENSE +93 -0
- package/fonts/newsreader-latin-ext-opsz-normal.woff2 +0 -0
- package/fonts/newsreader-latin-opsz-normal.woff2 +0 -0
- package/fonts/newsreader-vietnamese-opsz-normal.woff2 +0 -0
- package/fonts/newsreader.css +26 -0
- package/fonts/work-sans-LICENSE +93 -0
- package/fonts/work-sans-latin-wght-normal.woff2 +0 -0
- package/fonts/work-sans.css +8 -0
- package/package.json +20 -3
- package/packed-contract.json +1 -0
- package/src/attrs/add-from.js +27 -4
- package/src/attrs/save-freeze.js +7 -52
- package/src/core/admin-attrs.js +119 -12
- package/src/core/admin-contenteditable.js +12 -10
- package/src/core/admin-inputs.js +14 -15
- package/src/core/admin-onclick.js +2 -0
- package/src/core/autosave.js +74 -21
- package/src/core/conflict-download.js +22 -0
- package/src/core/conflict-notice-ui.js +1173 -0
- package/src/core/conflict-notice.js +140 -697
- package/src/core/edit-mode.js +147 -14
- package/src/core/etag.js +30 -12
- package/src/core/host-meta.js +72 -8
- package/src/core/host-permission.js +29 -0
- package/src/core/is-edit-mode.js +145 -12
- package/src/core/mode-key.js +125 -0
- package/src/core/mode-lifecycle.js +544 -0
- package/src/core/mode-receipt.js +30 -0
- package/src/core/mode-refusal.js +13 -0
- package/src/core/mode-resources.js +52 -0
- package/src/core/mode-support.js +82 -0
- package/src/core/mode-switch.js +259 -0
- package/src/core/mode-transition.js +112 -0
- package/src/core/page-data-write.js +305 -0
- package/src/core/page-data.js +26 -227
- package/src/core/page-format-wire.js +4 -0
- package/src/core/page-format.js +58 -0
- package/src/core/persist.js +37 -9
- package/src/core/preserve-authored.js +114 -0
- package/src/core/recovery.js +772 -0
- package/src/core/runtime-url.js +105 -0
- package/src/core/save-core.js +109 -12
- package/src/core/save-replace.js +72 -0
- package/src/core/save-size-notice.js +134 -0
- package/src/core/save-size.js +140 -0
- package/src/core/save.js +805 -118
- package/src/core/snapshot.js +121 -11
- package/src/core/source-map.js +157 -9
- package/src/core/unsaved-warning.js +14 -4
- package/src/core/upgrade-run.js +408 -0
- package/src/core/version.js +18 -0
- package/src/lib/assets.js +30 -0
- package/src/lib/autosave-debug-gate.js +50 -0
- package/src/lib/autosave-scheduler.js +141 -0
- package/src/lib/boot-imports.js +8 -0
- package/src/lib/derived.js +3 -1
- package/src/lib/dirty-gate.js +15 -0
- package/src/lib/doc-storage.js +33 -0
- package/src/lib/effect.js +9 -4
- package/src/lib/mutation.js +4 -2
- package/src/lib/offline-runtime.js +226 -0
- package/src/lib/preload.js +48 -0
- package/src/lib/root-attrs.js +1 -1
- package/src/lib/trash.js +18 -0
- package/src/lib/undo/capture-move.js +152 -0
- package/src/live/local-channel.js +61 -0
- package/src/live/local-lane.js +60 -9
- package/src/live/server-lane.js +6 -3
- package/src/loader-logic.js +76 -15
- package/src/loader.js +218 -30
- package/src/page/adopt-boot.js +76 -22
- package/src/page/adopt.js +25 -4
- package/src/page/awareness.js +230 -0
- package/src/page/blocks.js +79 -5
- package/src/page/blocksel.js +20 -4
- package/src/page/board-face.js +13 -0
- package/src/page/board-panel.js +5 -17
- package/src/page/board-style.js +2 -13
- package/src/page/board-view.js +1 -11
- package/src/page/board-views.js +17 -0
- package/src/page/board.js +2 -2
- package/src/page/boot-pack.js +26 -0
- package/src/page/boot.js +237 -0
- package/src/page/checklist.js +1 -1
- package/src/page/chrome.js +411 -61
- package/src/page/csv-import.js +17 -2
- package/src/page/document-title-dom.js +40 -0
- package/src/page/document-title-runtime.js +76 -0
- package/src/page/document-title.js +9 -0
- package/src/page/drag.js +48 -13
- package/src/page/drop.js +2 -1
- package/src/page/editor.js +330 -86
- package/src/page/feature-loader.js +72 -0
- package/src/page/features/board.js +12 -0
- package/src/page/features/code.js +13 -0
- package/src/page/features/media.js +290 -0
- package/src/page/features/registry.js +23 -0
- package/src/page/features/table.js +383 -0
- package/src/page/{tool-view.js → features/tool.js} +33 -2
- package/src/page/format-codec.js +215 -0
- package/src/page/format-gate.js +179 -0
- package/src/page/format-level.js +157 -0
- package/src/page/highlight-slot.js +23 -0
- package/src/page/highlight.js +30 -16
- package/src/page/history-intent.js +78 -0
- package/src/page/inline.js +18 -25
- package/src/page/items.js +52 -11
- package/src/page/link.js +1 -0
- package/src/page/markdown.js +86 -1
- package/src/page/media-views.js +3 -0
- package/src/page/media.js +33 -245
- package/src/page/outline-cache.js +11 -0
- package/src/page/placeholder.js +27 -7
- package/src/page/projection.js +196 -50
- package/src/page/reader-patch.js +306 -0
- package/src/page/recover.js +1 -1
- package/src/page/rich/page-tool.js +1 -4
- package/src/page/runtime-owner.js +27 -0
- package/src/page/save-projection.js +7 -4
- package/src/page/schema.js +14 -0
- package/src/page/table-rect-key.js +3 -0
- package/src/page/table-select.js +4 -3
- package/src/page/table-style.js +1 -1
- package/src/page/table-views.js +3 -0
- package/src/page/table.js +8 -293
- package/src/page/themes/light-1.css +139 -2
- package/src/page/themes/light-1.source.css +269 -0
- package/src/page/tool-capability.js +3 -0
- package/src/page/tool-views.js +3 -0
- package/src/page/view.js +390 -107
- package/src/page/ybind/awareness.js +172 -0
- package/src/page/ybind/binding.js +9 -1
- package/src/page/ybind/bridge.js +50 -47
- package/src/page/ybind/decode.js +52 -19
- package/src/page/ybind/doc.js +27 -2
- package/src/page/ybind/group.js +12 -3
- package/src/page/ybind/index.js +2 -0
- package/src/page/ybind/lineage.js +71 -0
- package/src/page/ybind/marks.js +25 -1
- package/src/page/ybind/migrate.js +48 -13
- package/src/page/ybind/moves.js +32 -21
- package/src/page/ybind/positions.js +50 -0
- package/src/page/ybind/provider.js +84 -22
- package/src/page/ybind/recovery-proof.js +191 -0
- package/src/page/ybind/recovery-replay.js +130 -0
- package/src/page/ybind/tokens.js +15 -6
- package/src/page/ybind/walk.js +10 -3
- package/src/page/ybind/writer.js +48 -4
- package/src/plugins/ai-edit.js +167 -32
- package/src/plugins/bind-text.js +218 -0
- package/src/plugins/cms.js +93 -0
- package/src/plugins/indicator.js +57 -5
- package/src/plugins/live.js +282 -34
- package/src/plugins/menu/claygoo.svg.js +1 -0
- package/src/plugins/menu/seo-head.js +323 -0
- package/src/plugins/menu/seo.js +849 -0
- package/src/plugins/menu.js +425 -0
- package/src/plugins/page-view.js +131 -0
- package/src/plugins/page.js +1022 -275
- package/src/plugins/people.js +158 -31
- package/src/plugins/richclay.js +119 -9
- package/src/plugins/sortable.js +370 -60
- package/src/plugins/source.js +189 -366
- package/src/plugins/undo.js +289 -19
- package/src/plugins/unsent.js +132 -0
- package/src/plugins/upgrade-run.js +1 -0
- package/src/plugins/upgrade.js +210 -0
- package/src/plugins/upload-task.js +571 -0
- package/src/plugins/upload-ui.js +265 -0
- package/src/plugins/upload.js +34 -153
- package/src/plugins/visitor-drafts/inert.js +32 -0
- package/src/plugins/visitor-drafts/owner-chip.js +3 -0
- package/src/plugins/visitor-drafts/prompt.js +2 -2
- package/src/plugins/visitor-drafts-owner.js +85 -0
- package/src/plugins/visitor-drafts.js +31 -42
- package/src/plugins/wire.js +82 -1
- package/src/reader-core.js +26 -0
- package/src/recovery/conflicts.js +287 -0
- package/src/recovery/identity.js +154 -0
- package/src/recovery/store.js +792 -0
- package/src/recovery/undo.js +257 -0
- package/src/server/checkpoint/index.js +68 -4
- package/src/server/offline-runtime/index.js +214 -0
- package/src/server/rooms/index.js +2 -1
- package/src/server/rooms/live-data-rooms.js +2 -2
- package/src/server/rooms/page-admission.js +33 -0
- package/src/server/rooms/page-lineage.js +56 -0
- package/src/server/rooms/page-rebase.js +11 -5
- package/src/server/rooms/page-state.js +2 -0
- package/src/server/rooms/page-write-admission.js +9 -3
- package/src/source/session.js +705 -0
- package/src/sync/conflict-revert.js +5 -4
- package/src/sync/conflicts-edit.js +119 -0
- package/src/sync/conflicts-facade.js +49 -0
- package/src/sync/conflicts.js +99 -1
- package/src/sync/editing-marker.js +37 -6
- package/src/sync/editing-sender.js +8 -1
- package/src/sync/live-sync-edit.js +63 -0
- package/src/sync/live-sync.js +364 -119
- package/src/sync/local-presence.js +187 -0
- package/src/sync/merge-declarations.js +10 -0
- package/src/sync/merge-engine.js +12 -0
- package/src/sync/presence-store.js +412 -0
- package/src/sync/presence-target.js +243 -0
- package/src/sync/presence.js +72 -41
- package/src/sync/saved-handoff.js +200 -0
- package/src/sync/saved-stream.js +535 -0
- package/src/sync/version-guard.js +92 -0
- package/src/sync/wire-profile.js +81 -0
- package/src/ui/bevel-controls.js +2 -8
- package/src/ui/page-scheme.js +7 -0
- package/src/ui/skins/cms.js +1 -1
- package/src/ui/theme-config.js +150 -0
- package/src/ui/theme.js +6 -138
- package/src/ui/toast-lazy.js +11 -0
- package/src/vendor/LICENSES-optional.md +253 -0
- package/src/vendor/highlight.vendor.js +3 -0
- package/src/vendor/hljs-bash.vendor.js +2 -0
- package/src/vendor/hljs-css.vendor.js +2 -0
- package/src/vendor/hljs-javascript.vendor.js +2 -0
- package/src/vendor/hljs-json.vendor.js +2 -0
- package/src/vendor/hljs-python.vendor.js +2 -0
- package/src/vendor/hljs-xml.vendor.js +2 -0
- package/src/vendor/hyper-html-api-data.vendor.js +1 -1
- package/src/vendor/hyper-html-api-upgrade.vendor.js +5 -0
- package/src/vendor/hyper-morph-identity.vendor.js +2 -0
- package/src/vendor/hyper-morph-json.vendor.js +3 -0
- package/src/vendor/hyper-morph.vendor.js +6 -6
- package/src/vendor/hyper-undo.vendor.js +1 -1
- package/src/vendor/hypercms.vendor.js +169 -84
- package/src/vendor/marked.vendor.js +68 -0
- package/src/vendor/overtype.vendor.js +994 -0
- package/src/vendor/richclay.vendor.js +17 -17
- package/src/vendor/sap-core.vendor.js +5 -5
- package/src/vendor/sap-ownership.vendor.js +11 -7
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
var il=(()=>{var ql=Object.defineProperty,Po=Object.getOwnPropertyDescriptor,Wo=Object.getOwnPropertyNames,Bo=Object.prototype.hasOwnProperty,Do=(e,l)=>{for(var t in l)ql(e,t,{get:l[t],enumerable:!0})},jo=(e,l,t,n)=>{if(l&&typeof l=="object"||typeof l=="function")for(let r of Wo(l))!Bo.call(e,r)&&r!==t&&ql(e,r,{get:()=>l[r],enumerable:!(n=Po(l,r))||n.enumerable});return e},Uo=e=>jo(ql({},"__esModule",{value:!0}),e),mr={};Do(mr,{createIdentityStore:()=>qo,createParseCache:()=>br,default:()=>Ua,diff:()=>Tl,findChangedRoots:()=>Oa,importMap:()=>yr,merge3:()=>Mo,merge3Text:()=>Zl,mergeDocument:()=>ml,mergeJson:()=>ro,mergeScriptText:()=>oo,morph:()=>No,morphDocument:()=>Eo,morphElement:()=>hr,parseJsonRelaxed:()=>no,parseRulesRelaxed:()=>Ui,spliceProtected:()=>Ca,tieredIdentity:()=>vr});function Vl(e,l){if(typeof e=="string"){let t=l&&l.defaultView,n=t&&t.DOMParser||globalThis.DOMParser;return new n().parseFromString(e,"text/html")}if(e&&e.nodeType===9)return e;throw new TypeError("expected an HTML string or a Document")}function br(e){let l=new Map;return(t,n)=>{if(typeof n!="string")return Vl(n,e);let r=l.get(t);if(r&&r.text===n)return r.doc;let u=Vl(n,e);return l.set(t,{text:n,doc:u}),u}}function Ho(e,l){let t=l.doctype;if(!t)return!1;let n=e.doctype;if(n&&n.name===t.name&&n.publicId===t.publicId&&n.systemId===t.systemId)return!1;let r=e.implementation.createDocumentType(t.name,t.publicId,t.systemId);return n?e.replaceChild(r,n):e.insertBefore(r,e.documentElement),!0}var kr=()=>!1;function wr(e,l=[]){if(typeof e!="function")return kr;let t=new WeakMap,n=new Set(l);return r=>{if(!r||r.nodeType!==1)return!1;let u=t.get(r);if(u!==void 0)return u;let o=[],a=r,i=!1;for(;a&&a.nodeType===1;){let f=t.get(a);if(f!==void 0){i=f;break}if(o.push(a),e(a,n.has(a))){i=!0;break}if(n.has(a))break;a=a.parentElement}for(let f of o)t.set(f,i);return i}}var qa=Object.freeze(["root-tag","equal","root-attrs","root-level","not-in-body","ignored-ancestor","remote-wins-ancestor","form-ancestor","script-or-template","no-live-twin","live-detached","ancestor-live","sibling-live","outside-id-changed","chain-unpaired"]);function Kn(){return{lazyTwins:0,hashRejected:0,similarTiesStrict:0,similarTiesLoose:0,ambiguousMoves:0,certificationPairs:0,certificationVisited:0,fastPathAttempted:0,fastPathTaken:0,fastPathFallback:null}}function qo(e){let l=new WeakMap,t=0,n=u=>l.get(u)||null,r=u=>{let o=l.get(u);return o||(o=`${e}:${++t}`,l.set(u,o)),o};return{idOf:n,ensure:r,adopt:(u,o)=>{u&&typeof o=="string"&&o&&l.set(u,o)},exportMap:(u,o)=>{let a={},i=[],f=[],y=(c,g)=>{let w=o(c);w&&(a[g]=r(w));let N=c.children;i.push(N.length),f.push(c.tagName.toLowerCase());for(let R=0;R<N.length;R++)y(N[R],g===""?String(R):`${g}.${R}`)};return y(u,""),a["~"]=i.join(","),a["^"]=f.join(","),a}}}function yr(e,l){let t=new WeakMap;if(!e||!l||typeof l!="object"||Array.isArray(l))return t;let n=l["~"],r=typeof n=="string"?n.split(",").map(Number):null,u=r&&typeof l["^"]=="string"?l["^"].split(","):null,o=c=>Number.isInteger(c)&&c>=0,a=0,i=!1,f=c=>{let g=c;for(;g>0;){let w=r[a++];if(a>r.length||!o(w))return!1;g+=w-1}return!0},y=(c,g)=>{if(i)return;if(r){let R=a++,m=r[R];if(R>=r.length||!o(m)){i=!0;return}let d=!u||u[R]===c.tagName.toLowerCase();if(!d||m!==c.children.length){let p=d&&l[g];typeof p=="string"&&p&&t.set(c,p),f(m)||(i=!0);return}}let w=l[g];typeof w=="string"&&w&&t.set(c,w);let N=c.children;for(let R=0;R<N.length;R++)y(N[R],g===""?String(R):`${g}.${R}`)};return y(e,""),t}function vr(e){return l=>{for(let t of e){let n=t(l);if(typeof n=="string"&&n!=="")return n}return null}}var kn=vr([e=>e.getAttribute("data-id"),e=>e.getAttribute("id")]);function zl(e,l,t,n=null,r=null){let u=new Map,o=new Set,a=i=>{if(t(i))return;let f=l(i);f&&(u.has(f)?o.add(f):u.set(f,i))};if(n){let i=f=>{for(let y of f.querySelectorAll(n))a(y);for(let y of f.querySelectorAll("template"))y.content&&i(y.content)};a(e),i(e.tagName==="TEMPLATE"&&e.content?e.content:e)}else{let i=f=>{a(f);let y=f.tagName==="TEMPLATE"&&f.content?f.content.children:f.children;for(let c=0;c<y.length;c++)i(y[c])};i(e)}for(let i of o)u.delete(i),r&&r.add(i),xr(i);return u}function xr(e){e.startsWith("merge:")&&console.warn(`[hyper-morph] merge disabled for duplicate identity "${e.slice(e.indexOf(":",6)+1)}"`)}var Vo=new Set(["href","src","name","type","role"]),zo=new Set(["SCRIPT","STYLE","TEXTAREA","TEMPLATE","IFRAME","OBJECT","CANVAS","VIDEO","AUDIO","svg","SVG"]);function _n(e,l=5381){let t=l;for(let n=0;n<e.length;n++)t=(t<<5)+t^e.charCodeAt(n);return t>>>0}function Nr(e){return e.replace(/\s+/g," ")}var Ko=0;function _o({ignored:e=()=>!1,ignoreAttribute:l=()=>!1,stats:t=null}={}){let n=new WeakMap,r=new WeakMap;function u(E){let B=E.attributes,T=B.length;if(T===0)return{all:"",sig:E.tagName+"|"};let M=[],D="",z=[];for(let U=0;U<T;U++){let j=B[U],k=j.name;l(E,k)||M.push(k+"="+j.value),k==="class"?D=j.value.indexOf(" ")<0?j.value:j.value.split(/\s+/).filter(Boolean).sort().join(" "):Vo.has(k)&&z.push(k+"="+j.value)}return M.length>1&&M.sort(),z.length>1&&z.sort(),{all:M.join(""),sig:E.tagName+"|"+D+(z.length?"|"+z.join("|"):"")}}function o(E){return E.nodeType===1&&E.tagName==="TEMPLATE"&&E.content?E.content.childNodes:E.childNodes}function a(E){let B=n.get(E);if(B)return B;if(E.nodeType===3)B={hash:"T"+_n(E.nodeValue),hint:Nr(E.nodeValue).slice(0,64),sig:null,tok:null};else if(E.nodeType===8)B={hash:"C"+_n(E.nodeValue),hint:"",sig:null,tok:null};else if(E.nodeType===1){let T=u(E),M=_n(E.tagName+""+T.all),D="";for(let z of f(E))if(z.nodeType===1){let U=a(z);M=_n(U.hash,M),D.length<64&&(D+=" "+U.hint)}else M=_n(y(z),M),z.kind==="text"&&D.length<64&&(D+=z.value.slice(0,64));B={hash:"E"+M,hint:Nr(D).trim().slice(0,64),sig:T.sig,tok:null}}else B={hash:"N"+E.nodeType,hint:"",sig:null,tok:null};return n.set(E,B),B}function i(E){if(!E.tok){E.tok=new Set;for(let B of E.hint.toLowerCase().split(/[^\p{L}\p{N}]+/u))B&&E.tok.add(B)}return E.tok}function f(E){let B=r.get(E);if(B)return B;B=[];let T=null,M=()=>{T&&(T.value=T.nodes.map(D=>D.nodeValue).join(""),B.push(T),T=null)};for(let D of o(E)){if(D.nodeType===3){T||(T={kind:"text",nodes:[],value:"",parent:E,hash:void 0}),T.nodes.push(D);continue}M(),D.nodeType===8?B.push({kind:"comment",nodes:[D],value:D.nodeValue,parent:E,hash:void 0}):D.nodeType===1&&!e(D)&&B.push(D)}return M(),r.set(E,B),B}function y(E){return E.nodeType===1?a(E).hash:(E.hash===void 0&&(E.hash=(E.kind==="text"?"T":"C")+_n(E.value)),E.hash)}function c(E,B){let T=i(a(E)),M=i(a(B));if(T.size===0&&M.size===0)return{coef:1,share:1};if(T.size===0||M.size===0)return null;let D=0;for(let z of T)M.has(z)&&D++;return{coef:D/Math.min(T.size,M.size),share:D/Math.max(T.size,M.size)}}function g(E,B){let T=c(E,B);return!!T&&T.coef>=.5}let w=new WeakMap;function N(E){let B=w.get(E);if(B)return B;B=[];for(let T of E.attributes)l(E,T.name)||B.push([T.namespaceURI||"",T.localName,T.value]);return B.sort((T,M)=>T[0]<M[0]?-1:T[0]>M[0]?1:T[1]<M[1]?-1:T[1]>M[1]?1:0),w.set(E,B),B}let R=new WeakMap;function m(E,B){if(E===B)return!0;if(y(E)!==y(B))return!1;let T=R.get(E);if(T&&T.has(B))return T.get(B);let M=R.get(B);if(M&&M.has(E))return M.get(E);let D=d(E,B),z=D===!0;return D===!1&&t&&t.hashRejected++,T||R.set(E,T=new WeakMap),T.set(B,z),z}function d(E,B){if(E.nodeType===1){if(B.nodeType!==1||E.tagName!==B.tagName||E.namespaceURI!==B.namespaceURI)return!1;let T=N(E),M=N(B);if(T.length!==M.length)return!1;for(let U=0;U<T.length;U++)if(T[U][0]!==M[U][0]||T[U][1]!==M[U][1]||T[U][2]!==M[U][2])return!1;let D=f(E),z=f(B);if(D.length!==z.length)return!1;for(let U=0;U<D.length;U++){if(y(D[U])!==y(z[U]))return!1;if(!m(D[U],z[U]))return Ko}return!0}return B.nodeType===1?!1:E.kind===B.kind&&E.value===B.value}let p=new WeakMap,O=new Map,b=0;function A(E){let B=p.get(E);if(B)return B;let T=y(E),M=O.get(T);M||O.set(T,M=[]);let D=M.find(z=>m(z.unit,E));return B=D?D.key:"K"+b++,D||M.push({unit:E,key:B}),p.set(E,B),B}return{meta:a,unitsOf:f,unitHash:y,similar:g,score:c,childrenOf:o,equalUnits:m,exactUnitKey:A,ignored:e}}var Tr=16,Lo=2e3,Go=3,Kl={align:0,certifyVisited:0,certifyScheduled:0};function Mr(e,l,t){let{meta:n,unitsOf:r,unitHash:u,similar:o,score:a,childrenOf:i,equalUnits:f,ignored:y}=t.analyzer,c=t.baseId||(()=>null),g=t.sideId||(()=>null),w=t.baseKey||(()=>null),N=t.sideKey||(()=>null),R=t.baseDropped||new Set,m=t.sideDropped||new Set,d=t.stats||null,p=d?new Set:null,O=d?new Set:null,b=new Map,A=new Map,E=new Set,B=new Map,T=new Set,M=new Set,D=new Set,z=[],U=[],j=[],k=[],v=Lo,J=new Map,q=new Map,V=(_,K)=>{b.set(_,K),A.set(K,_)},Ae=new Set,Ie=new Set,De=null,ce=_=>{let K=_.nodeType?_.parentNode:_.parent;if(!K||K.nodeType!==11)return K;if(!De){De=new WeakMap;let de=Ee=>{for(let ge of Ee.querySelectorAll("template"))ge.content&&(De.set(ge.content,ge),de(ge.content))};for(let Ee of[e,l])de(Ee.tagName==="TEMPLATE"&&Ee.content?Ee.content:Ee)}return De.get(K)||null},Ne=(_,K)=>{for(let de=ce(_);de&&!Ae.has(de);de=ce(de))Ae.add(de);for(let de=ce(K);de&&!Ie.has(de);de=ce(de))Ie.add(de)},Xe=_=>{for(let K=ce(_);K;K=ce(K))if(b.has(K))return M.has(K);return!1},ie=_=>{for(let K=ce(_);K;K=ce(K)){let de=A.get(K);if(de!==void 0)return M.has(de)}return!1},x=_=>!!_&&_.nodeType===1,Z=(_,K)=>{let de=B.get(_);return!!de&&de.has(K)},ue=_=>zo.has(_.tagName),fe=t.comparisons||t.scope,Pe=(_,K)=>{if(fe){if(fe.same.get(_)===K)return!0;if(fe.differ.get(_)===K)return!1}if(!_.isEqualNode(K))return!1;if(_.tagName==="TEMPLATE")return f(_,K);let de=_.getElementsByTagName("template");if(de.length===0)return!0;let Ee=K.getElementsByTagName("template");if(de.length!==Ee.length)return!1;for(let ge=0;ge<de.length;ge++)if(!f(de[ge],Ee[ge]))return!1;return!0},Ve=(_,K)=>{let de=c(_);if(!de)return!0;let Ee=g(K);return!Ee||de===Ee},Oe=_=>{let K=w(_);return K&&t.baseIndex.get(K)===_&&!m.has(K)?K:null},tt=_=>{let K=N(_);return K&&t.sideIndex.get(K)===_&&!R.has(K)?K:null},et=(_,K)=>{let de=Oe(_);if(!de)return!0;let Ee=tt(K);return!Ee||de===Ee},ct=globalThis.__hyperMorphProfile,Qe=ct?performance.now():0;ct&&!t.scope&&(n(e),n(l),ct.meta=(ct.meta||0)+(performance.now()-Qe),Qe=performance.now()),V(e,l);let lt=new Set;for(let[_,K]of t.baseIndex){let de=t.sideIndex.get(_);de&&de.tagName===K.tagName&&!b.has(K)&&!A.has(de)&&(V(K,de),Ne(K,de),lt.add(K))}if(lt.size){let _=[];if(t.scope)for(let ge of t.scope.chain)lt.has(ge)&&_.push(ge);let K=[t.scope?t.scope.root:e];for(;K.length;){let ge=K.pop();lt.has(ge)&&_.push(ge);let ee=i(ge);for(let pe=ee.length-1;pe>=0;pe--)ee[pe].nodeType===1&&K.push(ee[pe])}let de=new Set;for(let ge=_.length-1;ge>=0;ge--){let ee=_[ge];t.scope&&t.scope.onChain.has(ee)?de.add(ee):Bt(ee,b.get(ee),de)?(M.add(ee),D.add(ee),d&&d.certificationPairs++):de.add(ee)}let Ee=new Set;for(let ge of _)M.has(ge)&&!Ee.has(ge)&&Mt(ge,Ee)}t.scope&&t.scope.head&&G(t.scope.head[0],t.scope.head[1]);function Mt(_,K){let de=[_];for(;de.length;){let Ee=de.pop();if(!K.has(Ee)){K.add(Ee),P(Ee);for(let ge of r(Ee))x(ge)&&b.has(ge)&&de.push(ge)}}}k.push([e,l]);for(let[_,K]of b)x(_)&&_!==e&&k.push([_,K]);return St(),Ut(),ct&&(ct.align=(ct.align||0)+(performance.now()-Qe)),{map:b,reverse:A,moved:T,identical:M,pairIdenticalChildren:P,weak:E,unpair:bt,rematch:Ut,insertedByHash:vt,refused:O,identityPaired:lt};function Ut(){Be(),St();for(let _=0;_<j.length;){let K=j.length;Et(_,K),_=K,St(),Be(),St()}}function bt(_){let K=b.get(_);if(!K)return;B.has(_)||B.set(_,new Set),B.get(_).add(K);let de=(ge,ee)=>{b.delete(ge),A.delete(ee),T.delete(ge),M.delete(ge),E.delete(ge),D.delete(ge)},Ee=(ge,ee)=>{for(let pe of r(ge)){let F=b.get(pe);!F||lt.has(pe)||!(x(F)?ee.contains(F):ee.contains(F.nodes[0]))||(de(pe,F),x(pe)&&Ee(pe,F))}};de(_,K),x(_)&&Ee(_,K),z.push(_),U.push(K)}function vt(){let _=new Map;for(let K of new Set(U)){if(A.has(K))continue;let de=n(K).hash;_.has(de)||_.set(de,[]),_.get(de).push(K)}return _}function St(){for(;k.length;){let[_,K]=k.shift();b.get(_)!==K||D.has(_)||M.has(_)||ln(_,K)}}function Kt(_,K){if(!ue(_))for(let de of r(_))x(de)&&(K.push(de),Kt(de,K))}function ln(_,K){D.add(_);let de=r(_),Ee=r(K);Kl.align+=de.length+Ee.length,J=new Map,q=new Map;for(let re=0;re<de.length;re++)J.set(de[re],re);for(let re=0;re<Ee.length;re++)q.set(Ee[re],re);if(_.tagName==="HTML")for(let re of["HEAD","BODY"]){let Se=de.find(Ue=>x(Ue)&&Ue.tagName===re),je=Ee.find(Ue=>x(Ue)&&Ue.tagName===re);Se&&je&&!b.has(Se)&&!A.has(je)&&V(Se,je)}for(let re=0;re<de.length&&re<Ee.length;re++){let Se=de[re],je=Ee[re];b.has(Se)||A.has(je)||(x(Se)?x(je)&&Se.tagName===je.tagName&&Pe(Se,je)&&G(Se,je):!x(je)&&Se.kind===je.kind&&Se.value===je.value&&G(Se,je))}Te(de,Ee);let ge=de.filter(re=>!b.has(re)),ee=Ee.filter(re=>!A.has(re));ge.length&&ee.length&&(on(ge,ee),X(ge,ee),le(ge,ee,de,Ee),ke(de,Ee));let pe=!1,F=!1;for(let re of de){if(!b.has(re)){x(re)&&(z.push(re),Kt(re,z),pe=!0);continue}x(re)&&!M.has(re)&&k.push([re,b.get(re)])}for(let re of Ee)!A.has(re)&&x(re)&&(U.push(re),Kt(re,U),F=!0);pe&&F&&j.push([_,K])}function Et(_,K){for(let de=_;de<K;de++){let[Ee,ge]=j[de];if(b.get(Ee)!==ge)continue;let ee=r(Ee),pe=r(ge),F=new Map,re=new Map,Se=null;for(let je of ee)x(je)&&(b.has(je)?Se=je:(F.has(Se)||F.set(Se,[]),F.get(Se).push(je)));Se=null;for(let je of pe)x(je)&&(A.has(je)?Se=A.get(je):(re.has(Se)||re.set(Se,[]),re.get(Se).push(je)));for(let[je,Ue]of F){let xe=re.get(je);if(!(!xe||Ue.length!==xe.length)&&Ue.every((Je,it)=>xe[it].tagName===Je.tagName&&Ve(Je,xe[it])&&!Z(Je,xe[it])))for(let Je=0;Je<Ue.length;Je++)_t(Ue[Je],xe[Je])}}}function _t(_,K){V(_,K),E.add(_),k.push([_,K]),St()}function on(_,K){let de=Ln(_,u),Ee=Ln(K,u),ge=new Map;for(let ee of K){let pe=u(ee);Ee.get(pe)===1&&ge.set(pe,ee)}for(let ee of _){if(b.has(ee))continue;let pe=u(ee);if(de.get(pe)!==1)continue;let F=ge.get(pe);F&&!A.has(F)&&f(ee,F)&&G(ee,F)}}function Bt(_,K,de){let Ee=[[_,K]];for(;Ee.length;){let[ge,ee]=Ee.pop();if(Kl.certifyVisited++,d&&d.certificationVisited++,ge.nodeType!==ee.nodeType)return!1;if(ge.nodeType===3||ge.nodeType===8){if(ge.nodeValue!==ee.nodeValue)return!1;continue}if(ge.nodeType!==1){if(!ge.isEqualNode(ee))return!1;continue}if(ge.tagName!==ee.tagName||ge.namespaceURI!==ee.namespaceURI||y(ge)!==y(ee))return!1;let pe=ge.attributes,F=ee.attributes;if(pe.length!==F.length)return!1;for(let xe=0;xe<pe.length;xe++){let Je=pe[xe];if(ee.getAttributeNS(Je.namespaceURI,Je.localName)!==Je.value)return!1}let re=b.get(ge);if(re!==void 0&&re!==ee)return!1;let Se=A.get(ee);if(Se!==void 0&&Se!==ge)return!1;if(ge!==_){if(M.has(ge))continue;if(de.has(ge))return!1}let je=i(ge),Ue=i(ee);if(je.length!==Ue.length)return!1;Kl.certifyScheduled+=je.length;for(let xe=je.length-1;xe>=0;xe--)Ee.push([je[xe],Ue[xe]])}return!0}function Lt(_,K){return!x(_)||!(Ae.has(_)||Ie.has(K))?!0:!!we(_,K)||!(Oe(_)||tt(K))}function G(_,K){if(x(_)&&(Ae.has(_)||Ie.has(K))){let de=we(_,K);if(!de){if(Oe(_)||tt(K))return;V(_,K),k.push([_,K]);return}for(let Ee=0;Ee<de.length;Ee+=2){let ge=de[Ee],ee=de[Ee+1],pe=b.get(ge);pe!==void 0&&pe!==ee&&Y(ge,pe);let F=A.get(ee);F!==void 0&&F!==ge&&Y(F,ee),b.get(ge)===ee&&(T.delete(ge),E.delete(ge),M.add(ge),D.add(ge))}}h(_,K)}function Y(_,K){b.delete(_),A.delete(K),T.delete(_),M.delete(_),E.delete(_),D.delete(_)}function we(_,K){let de=[_,K,!1],Ee=[];for(;de.length;){let ge=de.pop(),ee=de.pop(),pe=de.pop(),F=b.get(pe),re=A.get(ee);if(pe!==_&&(F!==void 0&&F!==ee&<.has(pe)||re!==void 0&&re!==pe&<.has(re)))return null;if(!(F===ee&&M.has(pe))&&((F!==void 0||re!==void 0)&&Ee.push(pe,ee),!!x(pe))){if(ge||F!==void 0&&F!==ee||re!==void 0&&re!==pe){let Se=r(pe),je=r(ee);for(let Ue=0;Ue<Se.length&&Ue<je.length;Ue++)de.push(Se[Ue],je[Ue],!0)}else if(Ae.has(pe)||Ie.has(ee)){let Se=pe.tagName==="TEMPLATE"?pe.content:pe,je=ee.tagName==="TEMPLATE"?ee.content:ee;for(let Ue=Se.firstElementChild,xe=je.firstElementChild;Ue&&xe;){if(y(Ue)){Ue=Ue.nextElementSibling;continue}if(y(xe)){xe=xe.nextElementSibling;continue}(b.has(Ue)||A.has(xe)||Ae.has(Ue)||Ie.has(xe))&&de.push(Ue,xe,!1),Ue=Ue.nextElementSibling,xe=xe.nextElementSibling}}}}return Ee}function h(_,K){V(_,K),M.add(_),x(_)&&D.add(_)}function P(_){let K=b.get(_);if(!K||!x(_))return;let de=r(_),Ee=r(K);for(let ge=0;ge<de.length&&ge<Ee.length;ge++)b.has(de[ge])||h(de[ge],Ee[ge])}function X(_,K){let de=pe=>x(pe)&&!ue(pe)?n(pe).sig+""+n(pe).hint:null,Ee=Ln(_,de),ge=Ln(K,de),ee=new Map;for(let pe of K){let F=de(pe);F!=null&&ge.get(F)===1&&ee.set(F,pe)}for(let pe of _){if(b.has(pe))continue;let F=de(pe);if(F==null||Ee.get(F)!==1)continue;let re=ee.get(F);re&&!A.has(re)&&Ve(pe,re)&&V(pe,re)}}function le(_,K,de,Ee){let ge=new Map;for(let pe of K){if(!x(pe)||A.has(pe)||ue(pe))continue;let F=n(pe).sig;ge.has(F)||ge.set(F,[]),ge.get(F).push({el:pe,index:q.get(pe)})}let ee=[];for(let pe of _){if(b.has(pe)||!x(pe)||ue(pe))continue;let F=ge.get(n(pe).sig);if(!F||!F.length)continue;let re=J.get(pe),Se=F.filter(je=>!A.has(je.el)).map(je=>({c:je,d:Math.abs(je.index-re)}));Se.sort((je,Ue)=>je.d-Ue.d),Se.length>Tr&&(Se=Se.slice(0,Tr));for(let{c:je,d:Ue}of Se){if(!Ve(pe,je.el))continue;let xe=a(pe,je.el);xe&&xe.coef>=.5&&ee.push({b:pe,s:je.el,coef:xe.coef,share:xe.share,d:Ue,bi:re})}}if(ee.sort((pe,F)=>F.coef-pe.coef||F.share-pe.share||pe.d-F.d||pe.bi-F.bi),d&&ee.length>1){let pe=new Map;for(let F of ee){let re=pe.get(F.b);re?re.coef===F.coef&&(re.share===F.share?re.strict++:re.loose++):pe.set(F.b,{coef:F.coef,share:F.share,strict:0,loose:0})}for(let[F,re]of pe)p.has(F)||!(re.strict||re.loose)||(p.add(F),re.strict?d.similarTiesStrict++:d.similarTiesLoose++)}for(let pe of ee)!b.has(pe.b)&&!A.has(pe.s)&&V(pe.b,pe.s)}function te(_,K){return x(_)!==x(K)?!1:x(_)?_.tagName!==K.tagName||!Ve(_,K)?!1:ue(_)||n(_).hint===""||n(K).hint===""?!0:o(_,K):_.kind===K.kind}function H(_,K){let de=(ge,ee)=>{let pe=ee===null?-1:ge===K?q.get(ee):J.get(ee),F=ge[pe+1];return F&&!x(F)?F:null},Ee=null;for(let ge of _){if(x(ge)){Ee=ge;continue}if(b.has(ge))continue;let ee=Ee===null?null:b.get(Ee);if(Ee!==null&&!ee)continue;let pe=de(K,ee);pe&&!A.has(pe)&&pe.kind===ge.kind&&V(ge,pe)}}function ke(_,K){H(_,K);let de=Me(_,K),Ee=(ee,pe)=>x(ee)&&n(ee).hint!==""&&n(pe).hint===""&&!!pe.querySelector("br")&&!de(ee,pe),ge=0;for(let ee of _){if(b.has(ee)){let F=q.get(b.get(ee));F!==void 0&&F>=ge&&(ge=F+1);continue}let pe=0;for(let F=ge;F<K.length&&pe<Go;F++){let re=K[F];if(!A.has(re)&&(pe++,te(ee,re)&&!Z(ee,re)&&!Ee(ee,re))){V(ee,re),x(ee)&&(n(ee).hint===""||n(re).hint==="")&&E.add(ee),ge=F+1;break}}}Te(_,K)}function Me(_,K){let de=(Ee,ge,ee)=>{for(let pe=ge-1;pe>=0;pe--)if(x(Ee[pe])&&ee(Ee[pe]))return Ee[pe];return null};return(Ee,ge)=>{let ee=J.get(Ee),pe=q.get(ge);if(ee===pe)return!0;let F=de(_,ee,Se=>b.has(Se)),re=de(K,pe,Se=>A.has(Se));return F?b.get(F)===re:!re}}function Te(_,K){let de=_.filter(F=>x(F)&&!b.has(F)),Ee=K.filter(F=>x(F)&&!A.has(F));if(!de.length||!Ee.length)return;let ge=Ln(de,F=>F.tagName),ee=Ln(Ee,F=>F.tagName),pe=Me(_,K);for(let F of de){let re=F.tagName;if(ge.get(re)!==1||ee.get(re)!==1)continue;let Se=Ee.find(je=>je.tagName===re);Se&&!A.has(Se)&&pe(F,Se)&&Ve(F,Se)&&!Z(F,Se)&&(f(F,Se)?G(F,Se):(V(F,Se),E.add(F)))}}function Be(){let _=new Map;for(let F of E)if(x(F)&&x(b.get(F))){let re=n(F).hash;_.has(re)||_.set(re,[]),_.get(re).push(F)}if(_.size)for(let F of U){if(A.has(F)||!x(F)||ie(F))continue;let re=_.get(n(F).hash),Se=re&&re.find(je=>E.has(je)&&!Z(je,F)&&Ve(je,F)&&et(je,F)&&f(je,F)&&Lt(je,F));Se&&(bt(Se),G(Se,F),Ne(Se,F),T.add(Se))}let K=new Map,de=new Map,Ee=new Map;for(let F of E){let re=b.get(F);x(F)&&x(re)&&Ee.set(re,F)}let ge=(F,re)=>{if(!A.has(F))return!ie(F);let Se=Ee.get(F);return Se===A.get(F)&&Se!==re&&!Se.contains(re)},ee=F=>{if(A.has(F)){let re=Ee.get(F);Ee.delete(F),bt(re)}};for(let F of[...U,...Ee.keys()]){if(A.has(F)&&!Ee.has(F))continue;let re=n(F).hash;if(K.has(re)||K.set(re,[]),K.get(re).push(F),ue(F))continue;let Se=n(F).sig;de.has(Se)||de.set(Se,[]),de.get(Se).push(F)}let pe=new Set;for(let F of E){let re=b.get(F);!x(F)||!x(re)||ue(F)||n(F).hint===""||n(re).hint===""||o(F,re)||pe.add(F)}for(let F of[...z,...pe]){let re=b.get(F);if(re?!(E.has(F)&&pe.has(F)):Xe(F))continue;let Se=it=>{re&&bt(F),ee(it)},je=K.get(n(F).hash);if(je){let it=je.find(ft=>ft!==re&&ge(ft,F)&&!Z(F,ft)&&et(F,ft)&&f(F,ft)&&Lt(F,ft));if(it){Se(it),G(F,it),Ne(F,it),T.add(F);continue}}if(ue(F)||v<=0)continue;let Ue=de.get(n(F).sig);if(!Ue)continue;let xe=null,Je=0;for(let it of Ue)if(!(it===re||!ge(it,F)||!Ve(F,it)||!et(F,it)||Z(F,it))&&(v--<=0||o(F,it)&&(Je++,xe=it,Je>1)))break;Je>1&&O&&O.add(F),Je===1&&(Se(xe),V(F,xe),Ne(F,xe),T.add(F),k.push([F,xe]))}}}function Ln(e,l){let t=new Map;for(let n of e){let r=l(n);r!=null&&t.set(r,(t.get(r)||0)+1)}return t}var Xo={diff:0},Ar=typeof Intl<"u"&&typeof Intl.Segmenter=="function"?new Intl.Segmenter(void 0,{granularity:"word"}):null,$o=/[\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Thai}\p{Script=Lao}\p{Script=Khmer}\p{Script=Myanmar}]/u,Fo=/[\p{L}\p{M}\p{N}_'’]+|\s+|[\s\S]/gu,Zo=/\P{M}\p{M}*/gu;function Qo(e){if(e==="")return[];if(Ar){let t=[];for(let n of Ar.segment(e))t.push(n.segment);return t}let l=[];for(let t of e.match(Fo))if($o.test(t))for(let n of t.match(Zo))l.push(n);else l.push(t);return l}var Jo=/^[ ]+$/,Yo=e=>Jo.test(e)?" ".repeat(e.length):e,Pn=e=>typeof e.k=="string"&&/^\s+$/.test(e.k),xt="",_l=e=>e.every(l=>Pn(l)||l.k===xt),ei=/^[\x00-\x7f\u00A0]*$/,ti=/[A-Za-z0-9_']+|[ \u00A0]+|\s|./g;function ni(e){return e===""?[]:e.match(ti)}function tn(e,l=!1){return(l?ni(e):Qo(e)).map(t=>({k:Yo(t),raw:t,len:t.length}))}var wn=(...e)=>e.every(l=>ei.test(l));function Ll(e,l,t){let n=e.length,r=l.length,u=Math.min(n+r,t),o=u+1,a=new Int32Array(2*u+3),i=[],f=n===0&&r===0;for(let w=0;w<=u&&!f;w++){i.push(a.slice(o-w,o+w+1));for(let N=-w;N<=w;N+=2){let R;N===-w||N!==w&&a[o+N-1]<a[o+N+1]?R=a[o+N+1]:R=a[o+N-1]+1;let m=R-N,d=R;for(;R<n&&m<r&&e[R].k===l[m].k;)R++,m++;if(Xo.diff+=1+R-d,a[o+N]=R,R>=n&&m>=r){f=!0;break}}}if(!f)return null;let y=[],c=n,g=r;for(let w=i.length-1;w>0;w--){let N=i[w],R=c-g,m=R+w,d=R===-w||R!==w&&N[m-1]<N[m+1]?R+1:R-1,p=N[d+w],O=p-d;for(;c>p&&g>O;)y.push([0,c-1,g-1]),c--,g--;c===p?(y.push([1,c,g-1]),g--):(y.push([-1,c-1,g]),c--)}for(;c>0&&g>0;)y.push([0,c-1,g-1]),c--,g--;return y.reverse(),y}function li(e,l,t){let n=c=>c.k===xt;if(!e.some(n)&&!l.some(n))return Ll(e,l,t);let r=[],u=[];for(let c=0;c<e.length;c++)n(e[c])||r.push(c);for(let c=0;c<l.length;c++)n(l[c])||u.push(c);let o=Ll(r.map(c=>e[c]),u.map(c=>l[c]),t);if(!o)return null;let a=[],i=0,f=0,y=(c,g)=>{for(;i<c&&f<g&&e[i].k===l[f].k;)a.push([0,i++,f++]);let w=Ll(e.slice(i,c),l.slice(f,g),t);if(!w)return!1;for(let[N,R,m]of w)a.push([N,R+i,m+f]);return i=c,f=g,!0};for(let[c,g,w]of o)if(c===0){if(!y(r[g],u[w]))return null;a.push([0,i,f]),i++,f++}return y(e.length,l.length)?a:null}function jn(e,l,t=4e3){let n=[],r=0;for(;r<e.length&&r<l.length&&e[r].k===l[r].k;)e[r].raw!==l[r].raw&&n.push({bi:r,tok:l[r]}),r++;let u=0;for(;u<e.length-r&&u<l.length-r&&e[e.length-1-u].k===l[l.length-1-u].k;)e[e.length-1-u].raw!==l[l.length-1-u].raw&&n.push({bi:e.length-1-u,tok:l[l.length-1-u]}),u++;let o=e.slice(r,e.length-u),a=l.slice(r,l.length-u),i=fi(o,a)?null:li(o,a,t);if(!i){let d=o.length||a.length?[{bs:r,be:r+o.length,toks:a}]:[];return{hunks:d,cosmetic:n,coarse:!0,parts:d.map(p=>({...p,gap:[],group:0})),cosmeticEq:n}}let f=[],y=(d,p)=>{o[d].raw!==a[p].raw&&n.push({bi:r+d,tok:a[p]})},c=null,g=[],w=0,N=0,R=()=>{c&&f.push(c),c=null;for(let[d,p]of g)y(d,p);g=[],w++};for(let[d,p,O]of i){if(d===0){c&&Pn(o[p])&&!o[p].k.includes(`
|
|
2
|
+
`)?g.push([p,O]):(R(),y(p,O)),N=p+1;continue}(!c||g.length)&&(c&&f.push(c),c={bs:r+N,be:r+N,toks:[],gap:g.map(([b,A])=>({bi:r+b,tok:a[A]})),group:w},g=[]),d===-1?(c.be=r+N+1,N=p+1):c.toks.push(a[O])}R(),ri(f,e);let m=Gl(f);return{hunks:m.hunks,cosmetic:n.concat(m.cosmetic),parts:f,cosmeticEq:n}}function ri(e,l){for(let t=0;t<e.length;t++){let n=e[t];if(n.gap.length)continue;let r=t+1<e.length?e[t+1].bs:1/0;if(n.toks.length){if(n.bs===n.be)for(;n.bs+1<r&&n.bs<l.length&&n.toks[0].k===xt&&l[n.bs].k===xt;)n.toks=[...n.toks.slice(1),n.toks[0]],n.bs++,n.be++}else for(;n.be+1<r&&n.be<l.length&&l[n.bs].k===xt&&l[n.be].k===xt;)n.bs++,n.be++}}function Gl(e,l=()=>!1){let t=[],n=[],r=null,u=-1;for(let o of e){let a=l(o);if(r&&!r.alone&&!a&&o.group===u){r.be=o.be;for(let i of o.gap)r.toks.push(i.tok);for(let i of o.toks)r.toks.push(i);continue}r&&t.push({bs:r.bs,be:r.be,toks:r.toks});for(let i of o.gap)n.push(i);r={bs:o.bs,be:o.be,toks:o.toks.slice(),alone:a},u=o.group}return r&&t.push({bs:r.bs,be:r.be,toks:r.toks}),{hunks:t,cosmetic:n}}var oi=(e,l)=>e.bs===l.bs&&e.be===l.be&&Xl(e.toks,l.toks);function Sr(e,l,t){let n=y=>c=>y.some(g=>oi(c,g)),r=Gl(e.parts,n(l.parts)),u=Gl(l.parts,n(e.parts)),o=e.cosmeticEq.concat(r.cosmetic),a=l.cosmeticEq.concat(u.cosmetic),[i,f]=t?ii(r.hunks,u.hunks,t,o,a):[r.hunks,u.hunks];return{lh:i,rh:f,cosL:o,cosR:a}}function ii(e,l,t,n,r){let u=(N,R)=>N.k===R.k&&N.raw===R.raw,o=[{list:e.map(N=>({...N})),resp:new Set(n.map(N=>N.bi)),raw:new Map(n.map(N=>[N.bi,N.tok]))},{list:l.map(N=>({...N})),resp:new Set(r.map(N=>N.bi)),raw:new Map(r.map(N=>[N.bi,N.tok]))}],a=N=>N.bs===N.be,i=(N,R,m,d)=>{let p=N.list[R];if(!a(p))return d(p)===m?p.toks:null;let O=R?N.list[R-1].be:0,b=R+1<N.list.length?N.list[R+1].bs:t.length;if(m<O||m>b)return null;let A=p.toks,E=p.bs;for(;E>m;){let B=A[A.length-1];if(!u(B,t[E-1])||N.resp.has(E-1))return null;A=[B,...A.slice(0,-1)],E--}for(;E<m;){if(!u(A[0],t[E])||N.resp.has(E))return null;A=[...A.slice(1),A[0]],E++}return A},f=(N,R,m,d,p,O)=>{let b=N.list[R],A=p?m.slice(m.length-d):m.slice(0,d),E=p?m.slice(0,m.length-d):m.slice(d),B={bs:O,be:O,toks:A};if(a(b)){if(!E.length){N.list[R]=B;return}let M={bs:O,be:O,toks:E};p&&(M.lead=!0),N.list.splice(R,1,...p?[M,B]:[B,M]);return}let T={bs:b.bs,be:b.be,toks:E};N.list.splice(R,1,...p?[T,B]:[B,T])},y=(N,R,m,d,p)=>{let O=N.list[R],b=p?m.slice(m.length-d):m.slice(0,d),A=p?m.slice(0,m.length-d):m.slice(d),E={bs:O.bs,be:O.be,toks:b};if(!A.length){N.list[R]=E;return}let B=p?{bs:O.bs,be:O.bs,toks:A,lead:!0}:{bs:O.be,be:O.be,toks:A};N.list.splice(R,1,...p?[B,E]:[E,B])},c=(N,R,m,d)=>{let p=N.list[R],O=m.list[d],b=p.be,A=O.bs;if(b>=A||R+1<N.list.length&&N.list[R+1].bs<=O.be||d>0&&m.list[d-1].be>=p.bs)return!1;for(let q=b;q<A;q++)if(!Pn(t[q])||t[q].k.includes(`
|
|
3
|
+
`))return!1;let E=q=>t.slice(b,A).map((V,Ae)=>q.raw.get(b+Ae)||V),B=[...p.toks,...E(N)],T=[...E(m),...O.toks],M=(q,V,Ae)=>V>=0&&V+Ae.length<=q.length&&Ae.every((Ie,De)=>q[V+De].k===Ie.k),D=(q,V,Ae)=>_l(q)&&t.slice(V,Ae).some(Ie=>!Pn(Ie)),z=q=>q.some(V=>!Pn(V)),U,j,k,v;if(a(p)&&z(p.toks)&&M(T,0,p.toks)){let q=T.slice(p.toks.length);D(q,b,O.be)||(U=b,j=p.toks,k=T.slice(0,p.toks.length),v=[null,{bs:b,be:O.be,toks:q}])}if(U===void 0&&a(O)&&z(O.toks)){let q=B.length-O.toks.length,V=B.slice(0,q);M(B,q,O.toks)&&!D(V,p.bs,A)&&(U=A,j=B.slice(q),k=O.toks,v=[{bs:p.bs,be:A,toks:V},null])}if(U===void 0)return!1;let J=q=>q&&(q.bs<q.be||q.toks.length);return N.list.splice(R,1,...[v[0],{bs:U,be:U,toks:j}].filter(J)),m.list.splice(d,1,...[{bs:U,be:U,toks:k},v[1]].filter(J)),!0},g=o[0],w=o[1];for(let N=0;N<64;N++){let R=!1;e:for(let m=0;m<g.list.length;m++)for(let d=0;d<w.list.length;d++){let p=g.list[m],O=w.list[d];if(!(p.bs===O.bs&&p.be===O.be&&Xl(p.toks,O.toks))){for(let b of[!0,!1]){let A=B=>b?B.be:B.bs,E=a(p)?[A(O),p.bs]:[A(p)];for(let B of E){let T=i(g,m,B,A),M=T&&i(w,d,B,A);if(!M)continue;let D=(k,v)=>b?k[k.length-1-v]:k[v],z=0;for(;z<T.length&&z<M.length&&D(T,z).k===D(M,z).k;)z++;if(!z)continue;let U=b?T.slice(0,T.length-z):T.slice(z),j=b?M.slice(0,M.length-z):M.slice(z);if(!(z<T.length&&z<M.length&&!_l(U)&&!_l(j)&&(a(p)&&a(O)||p.bs===O.bs&&p.be===O.be)||!(b?T.slice(T.length-z):T.slice(0,z)).some(k=>!Pn(k)))){if(z===T.length&&z===M.length&&a(p)&&a(O)){if(p.bs===B&&O.bs===B)continue;g.list[m]={bs:B,be:B,toks:T},w.list[d]={bs:B,be:B,toks:M}}else!a(p)&&p.bs===O.bs&&p.be===O.be?(y(g,m,T,z,b),y(w,d,M,z,b)):(f(g,m,T,z,b,B),f(w,d,M,z,b,B));R=!0;break e}}}if(c(g,m,w,d)||c(w,d,g,m)){R=!0;break e}}}if(!R)break}return[g.list,w.list]}var ai=48,si=.3;function fi(e,l){let t=e.filter(o=>!Pn(o)),n=l.filter(o=>!Pn(o));if(Math.min(t.length,n.length)<ai)return!1;let r=new Map;for(let o of t)r.set(o.k,(r.get(o.k)||0)+1);let u=0;for(let o of n){let a=r.get(o.k);a>0&&(u++,r.set(o.k,a-1))}return u/Math.min(t.length,n.length)<si}var ui=(e,l)=>{let t=new Set;for(let n of e.toks)typeof n.k!="string"&&t.add(n.k.el);for(let n=e.bs;n<e.be;n++)typeof l[n].k!="string"&&t.add(l[n].k.el);return t},Xl=(e,l)=>e.length===l.length&&e.every((t,n)=>t.k===l[n].k);function Er(e,l,t,n="remote"){let r=jn(e,l),u=jn(e,t),{lh:o,rh:a,cosL:i,cosR:f}=Sr(r,u,e),y=x=>x.bs===x.be,c=x=>x.toks.some(Z=>typeof Z.k=="string"),g=x=>y(x)&&!c(x),w=(x,Z)=>Z.bs<x.be&&x.bs<Z.be,N=(x,Z)=>!w(x,Z)&&Z.bs<=x.be&&x.bs<=Z.be&&(y(x)&&c(x)||y(Z)&&c(Z))&&!(y(x)&&y(Z)),R=(x,Z)=>x.bs===Z.bs&&x.be===Z.be&&Xl(x.toks,Z.toks),m=[],d=new Set;for(let x of o){let Z=a.find(ue=>!d.has(ue)&&R(x,ue));Z?(d.add(Z),m.push({bs:x.bs,be:x.be,side:"both",l:x,r:Z,toks:x.toks})):m.push({bs:x.bs,be:x.be,side:"L",l:x,toks:x.toks,lead:!!x.lead})}for(let x of a)d.has(x)||m.push({bs:x.bs,be:x.be,side:"R",r:x,toks:x.toks,lead:!!x.lead});m.sort((x,Z)=>x.bs-Z.bs||x.be-Z.be||Z.lead-x.lead);let p=0,O=0;for(let x of m)x.side==="both"&&(p+=x.toks.length-(x.be-x.bs));let b=m.map((x,Z)=>Z),A=x=>b[x]===x?x:b[x]=A(b[x]),E=(x,Z)=>(x=A(x),Z=A(Z),x===Z?!1:(b[x]=Z,!0)),B=m.map(x=>ui({bs:x.bs,be:x.be,toks:x.toks},e)),T={L:new Map,R:new Map};m.forEach((x,Z)=>{let ue=x.side==="both"?["L","R"]:[x.side];for(let fe of ue)for(let Pe of B[Z])T[fe].has(Pe)||T[fe].set(Pe,[]),T[fe].get(Pe).push(Z)});for(let x of[T.L,T.R])for(let Z of x.values())for(let ue=1;ue<Z.length;ue++)E(Z[0],Z[ue]);for(let x=0;x<m.length;x++)for(let Z=x+1;Z<m.length;Z++){let ue=m[x],fe=m[Z];ue.side===fe.side&&ue.side!=="both"||ue.bs>fe.be||(w(ue,fe)||N(ue,fe)?E(x,Z):ue.bs===fe.bs&&y(ue)&&y(fe)&&O++)}let M=(x,Z)=>{let ue=x==="L"?o:a;for(let fe of ue)if(fe.toks.some(Pe=>Pe.kind==="close"&&Pe.k.el===Z.el))return fe.bs;for(let fe=0;fe<e.length;fe++)if(e[fe].kind==="close"&&e[fe].k.el===Z.el)return fe;return-1};m.forEach((x,Z)=>{if(!(!g(x)||x.side==="both"))for(let ue of x.toks){if(ue.kind!=="open")continue;let fe=M(x.side,ue.k);if(fe<=x.bs)continue;let Pe=new Uint8Array(fe-x.bs),Ve=[];if(m.forEach((Oe,tt)=>{if(!(Oe.side===x.side||y(Oe))&&Oe.bs<fe&&Oe.be>x.bs){Ve.push(tt);for(let et=Math.max(Oe.bs,x.bs);et<Math.min(Oe.be,fe);et++)Pe[et-x.bs]=1}}),Ve.length&&Pe.every(Oe=>Oe===1))for(let Oe of Ve)E(Z,Oe)}});let D=!0;for(;D;){D=!1;let x=new Map;m.forEach((Z,ue)=>{let fe=A(ue),Pe=x.get(fe)||{bs:Z.bs,be:Z.be,L:!1,R:!1};Pe.bs=Math.min(Pe.bs,Z.bs),Pe.be=Math.max(Pe.be,Z.be),Z.side!=="R"&&(Pe.L=!0),Z.side!=="L"&&(Pe.R=!0),x.set(fe,Pe)}),m.forEach((Z,ue)=>{for(let[fe,Pe]of x){if(A(ue)===A(fe)||!(Pe.L&&Pe.R))continue;let Ve=Z.bs<Pe.be&&Z.be>Pe.bs,Oe=y(Z)&&c(Z)&&(Z.bs===Pe.be||Z.bs===Pe.bs);(Ve||Oe)&&E(ue,fe)&&(D=!0)}})}let z=new Map;m.forEach((x,Z)=>{let ue=A(Z);z.has(ue)||z.set(ue,[]),z.get(ue).push(x)});let U=[];for(let x of z.values()){let Z=x.some(fe=>fe.side==="L"),ue=x.some(fe=>fe.side==="R");if(Z&&ue){let fe=Math.min(...x.map(tt=>tt.bs)),Pe=Math.max(...x.map(tt=>tt.be)),Ve=x.filter(tt=>tt.side!=="R").map(tt=>tt.l).sort((tt,et)=>tt.bs-et.bs),Oe=x.filter(tt=>tt.side!=="L").map(tt=>tt.r).sort((tt,et)=>tt.bs-et.bs);U.push({bs:fe,be:Pe,kind:"conflict",localHunks:Ve,remoteHunks:Oe})}else for(let fe of x)U.push({bs:fe.bs,be:fe.be,kind:fe.side,u:fe})}let j=(x,Z)=>{let ue=x==="L"?o:a;for(let fe of ue)if(fe.toks.some(Pe=>Pe.kind==="close"&&Pe.k.el===Z.el))return fe.bs+.5;for(let fe=0;fe<e.length;fe++)if(e[fe].kind==="close"&&e[fe].k.el===Z.el)return fe;return 1/0},k=(x,Z)=>{let ue=x==="L"?o:a;for(let fe of ue)if(fe.toks.some(Pe=>Pe.kind==="open"&&Pe.k.el===Z.el))return fe.bs-.5;for(let fe=0;fe<e.length;fe++)if(e[fe].kind==="open"&&e[fe].k.el===Z.el)return fe;return-1/0},v=x=>x.kind==="R"?"R":"L",J=x=>x.kind==="R"?1:0;U.sort((x,Z)=>{if(x.bs!==Z.bs)return x.bs-Z.bs;let ue=x.bs===x.be,fe=Z.bs===Z.be;if(ue!==fe)return ue?-1:1;if(ue&&fe&&x.kind!=="conflict"&&Z.kind!=="conflict"){let Ve=x.u.toks,Oe=Z.u.toks,tt=ct=>ct.length&&ct.every(Qe=>Qe.kind==="open"),et=ct=>ct.length&&ct.every(Qe=>Qe.kind==="close");if(tt(Ve)&&tt(Oe)){let ct=Math.max(...Ve.map(lt=>j(v(x),lt.k))),Qe=Math.max(...Oe.map(lt=>j(v(Z),lt.k)));if(ct!==Qe)return Qe-ct}if(et(Ve)&&et(Oe)){let ct=Math.min(...Ve.map(lt=>k(v(x),lt.k))),Qe=Math.min(...Oe.map(lt=>k(v(Z),lt.k)));return ct!==Qe?Qe-ct:J(Z)-J(x)}}let Pe=Ve=>Ve.u&&Ve.u.lead?1:0;return Pe(Z)-Pe(x)||J(x)-J(Z)||x.be-Z.be});let q=[],V=[],Ae=0,Ie=x=>{x>Ae&&(q.push({bs:Ae,be:x,toks:e.slice(Ae,x),source:"base"}),Ae=x)};for(let x of U){if(Ie(x.bs),x.kind==="conflict"){let Z=$l(e,x.localHunks,x.bs,x.be),ue=$l(e,x.remoteHunks,x.bs,x.be),fe=n==="local"?Z:n==="both"?Z.concat(ue):ue,Pe=(tt,et)=>{let ct=0;for(let Qe of tt)Qe.be<=x.bs&&!et.includes(Qe)&&(ct+=Qe.toks.length-(Qe.be-Qe.bs));return ct},Ve=x.bs+Pe(o,x.localHunks),Oe=x.bs+Pe(a,x.remoteHunks);V.push({bs:x.bs,be:x.be,ls:Ve,le:Ve+Z.length,rs:Oe,re:Oe+ue.length,ms:0,me:0,base:e.slice(x.bs,x.be),local:Z,remote:ue,resolved:fe}),q.push({bs:x.bs,be:x.be,toks:fe,source:"conflict",localHunks:x.localHunks,localToks:Z,keepsLocal:n!=="remote"})}else q.push({bs:x.bs,be:x.be,toks:x.u.toks,source:x.kind==="R"?"remote":"local",localHunks:x.kind==="R"?[]:[x.u.l]});Ae=Math.max(Ae,x.be)}Ie(e.length);let De=0,ce=0;for(let x of q)x.source==="conflict"&&(V[ce].ms=De,V[ce].me=De+x.toks.length,ce++),De+=x.toks.length;let Ne=new Map(i.map(x=>[x.bi,x.tok])),Xe=new Map(f.map(x=>[x.bi,x.tok])),ie=[];for(let x of q){x.source==="base"&&(x.toks=x.toks.map((Z,ue)=>{let fe=x.bs+ue,Pe=Ne.get(fe),Ve=Xe.get(fe),Oe=Pe&&Ve?n==="remote"?Ve:Pe:Pe||Ve||Z;return Oe===Z?Z:{...Oe,cosmetic:!0}}));for(let Z of x.toks)ie.push({...Z,src:x.source})}return{tokens:ie,segments:q,conflicts:V,localHunks:o,remoteHunks:a,collapsedDelta:p,samePoint:O,mapLocalOffset:di(e,o,q)}}function $l(e,l,t,n){let r=[],u=t;for(let o of l)r=r.concat(e.slice(u,o.bs),o.toks),u=o.be;return r.concat(e.slice(u,n))}var Fl=e=>e.reduce((l,t)=>l+t.len,0);function di(e,l,t){let n=new Int32Array(e.length+1);for(let o=0;o<e.length;o++)n[o+1]=n[o]+e[o].len;let r=l.map(o=>({bs:n[o.bs],be:n[o.be],text:o.toks.map(a=>a.raw).join(""),ref:o})),u=t.map(o=>({bs:n[o.bs],be:n[o.be],len:Fl(o.toks),source:o.source,localHunks:o.localHunks||[],localLen:o.localToks?Fl(o.localToks):0,keepsLocal:o.keepsLocal,ref:o}));return o=>{let a=null,i=null,f=0,y=0,c=0;for(let w of r){let N=w.bs-c;if(o<=y+N){a=c+(o-y);break}if(y+=N,c=w.bs,o<=y+w.text.length){i=w,f=o-y,a=w.bs;break}y+=w.text.length,c=w.be}a===null&&(a=c+(o-y));let g=0;for(let w of u){if(!i&&a<=w.bs)return g;if(!(i?w.localHunks.includes(i.ref):a<w.be)){g+=w.len;continue}if(w.source==="base")return g+(a-w.bs);if(w.source==="remote")return g+w.len;if(w.source==="local")return g+Math.min(f,w.len);if(!w.keepsLocal||!i)return g+w.len;let N=w.localHunks.indexOf(i.ref),R=Fl($l(e,w.localHunks.slice(0,N),w.ref.bs,i.ref.bs));return g+Math.min(R+f,w.localLen)}return g}}function Zl(e,l,t,n="remote"){if(l===t||t===e)return{text:l,conflicts:[],mapLocalOffset:d=>Math.min(d,l.length),granularity:"word"};let r=wn(e,l,t),u=tn(e,r),o=tn(l,r),a=tn(t,r),i=u.length<=2e4&&o.length<=2e4&&a.length<=2e4?Er(u,o,a,n):null,f="word",y=u;if(!i){let d=p=>p.split(/(?<=\n)/).map(O=>({k:O,raw:O,len:O.length}));y=d(e),i=Er(y,d(l),d(t),n),f="line"}let c=d=>d.map(p=>p.raw).join(""),g=d=>{let p=[0];for(let O of d)p.push(p[p.length-1]+O.len);return p},w=g(y),N=null,R=null,m=null;if(i.conflicts.length){let d=p=>p.split(/(?<=\n)/).map(O=>({k:O,raw:O,len:O.length}));N=g(f==="line"?d(l):o),R=g(f==="line"?d(t):a),m=g(i.tokens)}return{text:c(i.tokens),conflicts:i.conflicts.map(d=>({bs:w[d.bs],be:w[d.be],ls:N[d.ls],le:N[d.le],rs:R[d.rs],re:R[d.re],ms:m[d.ms],me:m[d.me],base:c(d.base),local:c(d.local),remote:c(d.remote),resolved:c(d.resolved)})),mapLocalOffset:i.mapLocalOffset,granularity:f}}function Tl(e,l,t=4e3){if(e===l)return[];let n=wn(e,l),r=tn(e,n),u=tn(l,n),o=jn(r,u,t),a=[0];for(let i of r)a.push(a[a.length-1]+i.len);return o.hunks.map(i=>({bs:a[i.bs],be:a[i.be],text:i.toks.map(f=>f.raw).join("")}))}function Qt(e=16e4){return{remaining:e,comparisons:0,sortComparisons:0,mapCells:0,mapWrites:0,coverageChecks:0}}function Gn({base:e,side:l,retained:t,transfers:n,baseAtomKey:r=a=>a.el,sideAtomKey:u=a=>a.el,budget:o=Qt()}){let a=[],i=b=>({status:"fallback",reason:b}),f=b=>b>o.remaining?!1:(o.remaining-=b,!0);if(!f((t.length+n.length)*3))return i("work-limit");for(let[b,A]of[["retained",t],["transfer",n]])for(let E of A){let{from:B,to:T,target:M}=E;if(!Number.isInteger(B)||!Number.isInteger(T)||!Number.isInteger(M)||B<0||T<=B||T>e.text.length||M<0||M+T-B>l.text.length)return i("invalid-range");a.push({...E,kind:b})}let y=Symbol(),c=b=>(A,E)=>{if(!f(1))throw y;return o.sortComparisons++,b(A,E)},g,w;try{g=a.slice().sort(c((b,A)=>b.from-A.from||b.to-A.to)),w=a.slice().sort(c((b,A)=>b.target-A.target||b.to-b.from-(A.to-A.from)))}catch(b){if(b===y)return i("work-limit");throw b}if(!f(a.length*2))return i("work-limit");for(let b=1;b<g.length;b++)if(g[b].from<g[b-1].to)return i("source-overlap");for(let b=1;b<w.length;b++)if(w[b].target<w[b-1].target+w[b-1].to-w[b-1].from)return i("target-overlap");for(let b of g){let A=b.to-b.from;if(!f(A))return i("work-limit");for(let E=0;E<A;E++){let B=b.from+E,T=b.target+E;if(o.comparisons++,e.text[B]!==l.text[T])return i("unequal-occurrence");let M=e.atomAt.get(B),D=l.atomAt.get(T);if(!!M!=!!D||M&&r(M)!==u(D))return i("different-atom")}}let N=e.text.length+l.text.length+2,R=a.reduce((b,A)=>b+(A.to-A.from)*2,2);if(!f(N+R+a.length))return i("work-limit");let m=new Int32Array(e.text.length+1).fill(-1),d=new Int32Array(l.text.length+1).fill(-1);o.mapCells+=N,o.mapWrites+=R;let p=-1,O=!0;for(let b of g){b.target<p&&(O=!1),p=b.target+b.to-b.from;for(let A=0;A<b.to-b.from;A++)m[b.from+A]=b.target+A,d[b.target+A]=b.from+A}return m[e.text.length]=l.text.length,d[l.text.length]=e.text.length,{status:"ready",runs:g,bTo:m,toB:d,monotone:O,covers:(b,A)=>{if(!f(A-b))return null;o.coverageChecks+=A-b;for(let E=b;E<A;E++)if(e.text[E]!==xt&&!/\s/.test(e.text[E])&&m[E]<0)return!1;return!0}}}function Or({base:e,side:l,baseOf:t=()=>null,budget:n=Qt()}){if(e.text===l.text||!e.text.includes(xt)&&!l.text.includes(xt))return{status:"none"};let r=(e.text.length+l.text.length)*8;if(r>n.remaining)return{status:"fallback",reason:"work-limit"};n.remaining-=r,n.boundarySteps=(n.boundarySteps||0)+r;let u=(N,R)=>R<N.length&&(N[R]===xt||/\s/.test(N[R])),o=new Map,a=Symbol(),i=(N,R)=>{let m=N.stackAt[R]||[];if(!o.has(m)){if(m.length>n.remaining)throw a;n.remaining-=m.length,n.boundarySteps+=m.length,o.set(m,m.find(d=>d.block)?.el||null)}return o.get(m)},f=[],y=(N,R)=>{let m=i(e,N),d=i(l,R),p=m&&d&&t(d)!==m?"transfer":"retained",O=f[f.length-1];O&&O.to===N&&O.target+O.to-O.from===R&&O.kind===p&&O.destination===d?O.to++:f.push({from:N,to:N+1,target:R,destination:d,kind:p})},c=0,g=0,w=!1;try{for(;c<e.text.length||g<l.text.length;){if(c<e.text.length&&g<l.text.length&&e.text[c]===l.text[g]){let O=e.atomAt.get(c),b=l.atomAt.get(g);if(!!O!=!!b||O&&t(b.el)!==O.el)return{status:"none"};y(c++,g++);continue}if(!u(e.text,c)&&!u(l.text,g))return{status:"none"};let N=c,R=g;for(;u(e.text,c);)c++;for(;u(l.text,g);)g++;let m=e.text.slice(N,c),d=l.text.slice(R,g);(m.includes(xt)||d.includes(xt))&&(w=!0);let p=0;for(;p<c-N&&p<g-R&&e.text[c-p-1]===l.text[g-p-1];)p++;for(let O=p;O>0;O--)y(c-O,g-O)}}catch(N){if(N===a)return{status:"fallback",reason:"work-limit"};throw N}return w?Gn({base:e,side:l,retained:f.filter(N=>N.kind==="retained"),transfers:f.filter(N=>N.kind==="transfer"),sideAtomKey:N=>t(N.el)||N.el,budget:n}):{status:"none"}}var Cr=/\s/,Ml=/\S/;function yn(e,l,t,n,r,u,o=-1,a=-1){if(!e.length)return-1;r(n,e.length);let i=new Int32Array(e.length),f=0;for(let w=1;w<e.length;w++){for(r(n,1);f&&(r(n,1),e[f]!==e[w]);)f=i[f-1];r(n,1),e[f]===e[w]&&f++,i[w]=f}let y=-1,c=0,g=0;f=0;for(let w=0;w<l.length;w++){for(r(n,1);f&&(r(n,1),e[f]!==l[w]);)f=i[f-1];if(r(n,1),e[f]===l[w]&&f++,f!==e.length)continue;let N=w+1-e.length,R=w+1;for(f=i[f-1];c<t.length&&t[c].from<N;)r(n,1),c++;for(;g<t.length&&t[g].to<R;)r(n,1),g++;if(r(n,6),!(c===t.length||g===t.length||t[c].from!==N||t[g].to!==R||o>=0&&N<a&&R>o)){if(!u)return N;if(y>=0)return-1;y=N}}return y}function al(e){return!e.flat.atoms.length&&!e.flat.pins?.length}function Rr(e,l,t,n){let r=null;for(let o of l)if(n(t,1),!(o.source!==e.source||o.side!==e.side))for(let a of o.runs){if(n(t,1),a.source!==e.source)continue;let i=Math.max(e.from,a.from),f=Math.min(e.to,a.to);i>=f||(r||(n(t,e.to-e.from),r=new Uint8Array(e.to-e.from)),n(t,f-i),r.fill(1,i-e.from,f-e.from))}if(!r)return!1;n(t,e.to-e.from);let u=!1;for(let o=e.from;o<e.to;o++)if(Ml.test(e.flat.text[o])){if(!r[o-e.from])return!1;u=!0}return u}function Ir({source:e,side:l,views:t,eligible:n,blocked:r,baseId:u,model:o,tokensOf:a,budget:i,charge:f}){let{V:y,A:c,idOf:g}=t[l],w=t[1-l];if(e.nodeType!==1||c.identical.has(e)||w.A.identical.has(e)||r.has(e)||!n(e))return null;let N=y.twin(e),R=w.V.twin(e);if(!N||!R||c.map.get(e)!==N||c.reverse.get(N)!==e||w.A.map.get(e)!==R||w.A.reverse.get(R)!==e||!y.here(N)||!w.V.here(R)||!n(N)||!n(R))return null;let m=u(e);if(m!==g(N)||m!==w.idOf(R))return null;let d=o(e,null,i),p=o(N,c,i),O=o(R,w.A,i);if(!al(d)||!al(p)||!al(O))return null;let b=d.flat.text,A=p.flat.text;if(f(i,b.length+A.length*3),!Ml.test(A)||A.length>=b.length)return null;let E=b.startsWith(A),B=b.endsWith(A);if(E===B)return null;let T=E?A.length:0,M=E?b.length:b.length-A.length,D=T,z=M;for(;D<z&&(f(i,1),!!Cr.test(b[D]));)D++;for(;z>D&&(f(i,1),!!Cr.test(b[z-1]));)z--;if(D===z)return null;let U=a(d,i),j=!1,k=!1;for(let v of U)f(i,1),v.from===D&&(j=!0),v.to===z&&(k=!0);return!j||!k?null:{source:e,side:l,flat:d.flat,from:T,to:M}}function ci({base:e,views:l,side:t,attempt:n,eligible:r,blocked:u,baseId:o,model:a,tokensOf:i,certificates:f,charge:y,exhausted:c,limit:g}){if(g<=0)return null;let w=Qt(g),{V:N,A:R,idOf:m}=l[t],d=l[1-t],[p,O,b,A]=n,E=null;try{for(let B=p;B<=O;B++){y(w,1);let T=e[B];if(T.nodeType!==1||R.identical.has(T)||d.A.identical.has(T)||u.has(T)||!r(T))continue;let M=Ir({source:T,side:t,views:l,eligible:r,blocked:u,baseId:o,model:a,tokensOf:i,budget:w,charge:y});if(!M||Rr(M,f,w,y))continue;let{flat:D,from:z,to:U}=M;y(w,(U-z)*2);let j=D.text.slice(z,U).trim();for(let k=b;k<=A;k++){y(w,1);let v=N.units[k],J=N.baseOf(v);if(!J||J===T||J.nodeType!==1||v.nodeType!==1||J.parentNode!==T.parentNode||v.parentNode!==R.map.get(T).parentNode||R.map.get(J)!==v||R.reverse.get(v)!==J||u.has(J)||!r(J)||!r(v)||o(J)!==m(v))continue;let q=a(J,null,w),V=a(v,R,w);if(!al(q)||!al(V))continue;let Ae=q.flat.text,Ie=V.flat.text;if(y(w,Ae.length),!Ml.test(Ae)||Ie.length<=Ae.length)continue;let De=i(V,w),ce=yn(Ae,Ie,De,w,y,!0);if(!(ce<0)&&!(yn(j,Ie,De,w,y,!1,ce,ce+Ae.length)<0)){(E||=[]).push(M);break}}}}catch(B){if(B!==c)throw B}return E}function hi(e,l,t,n,r,u,o){if(u==="both"||t.atoms.length||n.atoms.length||r.atoms.length)return u;let a=u==="remote";if(a?o.rss!==o.rse||o.lss===o.lse||o.local===o.base:o.lss!==o.lse||o.rss===o.rse||o.remote===o.base)return u;for(let i of e){if(i.source!==l||i.side!==(a?1:0)||i.flat.text!==t.text||i.flat.nodes.length!==t.nodes.length||o.be<=i.from||o.bs>=i.to)continue;let f=!0;for(let c=0;c<t.nodes.length;c++){let g=i.flat.nodes[c],w=t.nodes[c];if(g.node!==w.node||g.s!==w.s||g.e!==w.e){f=!1;break}}if(!f)continue;let y=!1;for(let c=o.bs;c<o.be;c++)if(Ml.test(t.text[c])){if(c<i.from||c>=i.to){f=!1;break}y=!0}if(f&&y)return a?"local":"remote"}return u}var Sn="\uFFFC",gi={caret:0},vn=new Set("A ABBR B BDI BDO CITE CODE DATA DEL DFN EM FONT I INS KBD MARK Q S SAMP SMALL SPAN STRIKE STRONG SUB SUP TIME TT U VAR".split(" ")),Pr=new Set(["BR","WBR","IMG"]),Wr=new Set("ADDRESS ARTICLE ASIDE AUDIO BLOCKQUOTE BODY CANVAS CAPTION CENTER COL COLGROUP DD DETAILS DIALOG DIR DIV DL DT FIELDSET FIGCAPTION FIGURE FOOTER FORM FRAME FRAMESET H1 H2 H3 H4 H5 H6 HEAD HEADER HGROUP HR HTML IFRAME LEGEND LI MAIN MATH MENU NAV NOSCRIPT OBJECT OL OPTGROUP OPTION P PRE SCRIPT SECTION SELECT STYLE SUMMARY SVG TABLE TBODY TD TEMPLATE TEXTAREA TFOOT TH THEAD TITLE TR UL VIDEO".split(" "));function En(e,l={}){if(e.nodeType===3)return!0;if(e.nodeType!==1)return!1;if(l.ignored&&l.ignored(e)||Pr.has(e.tagName))return!0;if(!vn.has(e.tagName))return!Wr.has(e.tagName);if(l.remoteWins&&l.remoteWins(e))return!1;let t=l.inlineCache&&l.inlineCache.get(e);if(t!==void 0)return t;let n=!0;for(let r of e.childNodes)if(!En(r,l)){n=!1;break}return l.inlineCache&&l.inlineCache.set(e,n),n}function pi(e){return!e.firstChild||e.textContent===""&&!e.querySelector("br,img,wbr")}function Jt(e,l={}){let t={text:"",marks:[],atoms:[],nodes:[],stackAt:[],pins:[],placeholder:null,via:null},n=(r,u)=>{for(let o of r){if(o.nodeType===3){let c=o.nodeValue;if(!c)continue;t.nodes.push({node:o,s:t.text.length,e:t.text.length+c.length}),t.text+=c;for(let g=0;g<c.length;g++)t.stackAt.push(u);continue}if(o.nodeType!==1)continue;if(l.ignored&&l.ignored(o)){t.pins.push({el:o,i:t.text.length});continue}if(l.skip&&l.skip.has(o))continue;let a=l.via&&l.via(o)||o;a!==o&&(t.via||(t.via=new Map)).set(a,o);let i=o.tagName;if(l.blocks&&l.blocks.has(o)){t.text.length&&t.text[t.text.length-1]!==xt&&(t.stackAt.push(u),t.text+=xt);let c={el:o,tag:i,from:t.text.length,to:-1,depth:u.length,block:!0};t.marks.push(c);let g=u.concat([c]);n(a.childNodes,g),t.stackAt.push(g),t.text+=xt,c.to=t.text.length;continue}let f=vn.has(i)&&pi(a);if(Pr.has(i)||!vn.has(i)||l.remoteWins&&l.remoteWins(o)||l.atomize&&l.atomize(o)||f){t.atoms.push({i:t.text.length,el:o,key:f?i+":empty":i,stack:u}),t.stackAt.push(u),t.text+=Sn;continue}let y={el:o,tag:i,from:t.text.length,to:-1,depth:u.length};t.marks.push(y),n(a.childNodes,u.concat([y])),y.to=t.text.length}};if(n(e,[]),t.atoms.length===1&&t.atoms[0].el.tagName==="BR"&&t.marks.length===0&&Al(t).trim()===""){let r=t.atoms[0];t.placeholder=r.el,t.text=t.text.slice(0,r.i)+t.text.slice(r.i+1),t.stackAt.splice(r.i,1);for(let u of t.nodes)u.s>r.i&&(u.s--,u.e--);t.atoms=[]}return t.atomAt=new Map(t.atoms.map(r=>[r.i,r])),t}function mi(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/ /g," ")}function bi(e){let l="<"+e.tagName.toLowerCase();for(let t of e.attributes)l+=` ${t.name}="${t.value.replace(/"/g,""")}"`;return l+">"}function sl(e,l,t){let n="",r=[];for(let u=l;u<t;u++){let o=e.stackAt[u],a=0;for(;a<r.length&&a<o.length&&r[a]===o[a];)a++;for(;r.length>a;)n+=`</${r.pop().tag.toLowerCase()}>`;for(;r.length<o.length;){let f=o[r.length];n+=bi(f.el),r.push(f)}let i=e.atomAt.get(u);n+=i?i.el.outerHTML:e.text[u]===xt?"":mi(e.text[u])}for(;r.length;)n+=`</${r.pop().tag.toLowerCase()}>`;return n}function ki(e,l){let t=[...e.el.attributes].filter(n=>!l(e.el,n.name)).map(n=>n.name+"="+n.value).sort().join("");return e.tag+"|"+t}function Br(e,l){let t=[...e.attributes].filter(n=>!l(e,n.name)).map(n=>n.name+"="+n.value).sort().join("");return e.tagName+"|"+t+"|"+e.innerHTML}function Dr(e,l=()=>!1){let t=new Map,n=u=>{let o=t.get(u);return o===void 0&&(o="{"+u.map(a=>ki(a,l)).sort().join(",")+"}",t.set(u,o)),o},r="";for(let u=0;u<e.text.length;u++){let o=e.atomAt.get(u);r+=(o?"["+Br(o.el,l)+"]":e.text[u])+n(e.stackAt[u])}return e.text.length===0&&e.placeholder&&(r+="[br]"),r}function Xn(e,l,t,n=r=>r.key){let r=[],u=e.text,o=0,a=i=>{if(i<=o)return;let f=u.slice(o,i);if(t)for(let y of f.split(/(?<=\n)/))r.push({k:y,raw:y,len:y.length});else for(let y of tn(f,l))r.push(y)};for(let i of e.atoms)a(i.i),r.push({k:"\0"+n(i),raw:Sn,len:1,atom:!0}),o=i.i+1;return a(u.length),r}function Al(e){if(!e.atoms.length)return e.text;let l="",t=0;for(let n of e.atoms)l+=e.text.slice(t,n.i),t=n.i+1;return l+e.text.slice(t)}var $n=e=>{let l=new Int32Array(e.length+1);for(let t=0;t<e.length;t++)l[t+1]=l[t]+e[t].len;return l};function Sl(e,l,t,n){let r=$n(l),u=$n(t),o=[],a=0,i=0;for(let y of n.hunks){i+=y.bs-a;let c=i+y.toks.length;o.push({bs:r[y.bs],be:r[y.be],ss:u[i],se:u[c],text:e.text.slice(u[i],u[c]),toks:y.toks,lead:!!y.lead}),i=c,a=y.be}let f=new Map;for(let y of n.cosmetic)f.set(y.bi,y.tok.raw);return{hunks:o,respell:f}}function jr(e,l,t){let n=o=>o===xt||/\s/.test(o),r=o=>o.replace(/[\u001E\s]/g,""),u=[];for(let o of e){let a=l.slice(o.bs,o.be),i=t.slice(o.ss,o.se);if(!a.includes(xt)&&!i.includes(xt)||a.includes(Sn)||i.includes(Sn)||r(a)!==r(i)){u.push(o);continue}let f=0,y=0;for(;;){let c=f,g=y;for(;c<a.length&&n(a[c]);)c++;for(;g<i.length&&n(i[g]);)g++;let w=f,N=y;for(;w<c&&N<g&&a[w]===i[N];)w++,N++;let R=c,m=g;for(;R>w&&m>N&&a[R-1]===i[m-1];)R--,m--;if(R>w||m>N){let d=i.slice(N,m);u.push({bs:o.bs+w,be:o.bs+R,ss:o.ss+N,se:o.ss+m,text:d,toks:[...d].map(p=>({k:p,raw:p,len:1})),lead:o.lead})}if(c>=a.length)break;f=c+1,y=g+1}}return u}function Ur(e,l,t){let n=new Int32Array(l+1).fill(-1),r=new Int32Array(t+1).fill(-1),u=0,o=0,a=i=>{for(;u<i;)n[u]=o,r[o]=u,u++,o++};for(let i of e)a(i.bs),u=i.be,o=i.se;return a(l),n[l]=o,r[o]=l,{bTo:n,toB:r}}function Hr(e,l,t){let n=[],r=0,u=0,o=(a,i)=>{if(r===a&&u===i)return;let f=l.text.slice(u,i);n.push({bs:r,be:a,ss:u,se:i,text:f,toks:tn(f,wn(f)),lead:!1})};for(let a of t.runs)o(a.from,a.target),r=a.to,u=a.target+a.to-a.from;return o(e.text.length,l.text.length),{hunks:n,respell:new Map}}function qr(e,l,t,n){let r=$n(l),u=$n(t),o=(i,f)=>{let y=0,c=i.length;for(;y<c;){let g=y+c>>>1;i[g]<f?y=g+1:c=g}return i[y]===f?y:-1};for(let i of e.hunks)if(o(r,i.bs)<0||o(r,i.be)<0)return null;if(e.hunks.some(i=>o(u,i.ss)<0||o(u,i.se)<0)){if(!n)return null;let i=[];for(let g of e.hunks)i.push(g.ss,g.se);let f=[],y=0,c=0;for(let g of t){let w=c+g.len;for(;y<i.length&&i[y]<=c;)y++;let N=c;for(;y<i.length&&i[y]<w;){let R=i[y++];if(R>N){let m=g.raw.slice(N-c,R-c);f.push(...tn(m,wn(m))),N=R}}if(N===c)f.push(g);else{let R=g.raw.slice(N-c);f.push(...tn(R,wn(R)))}c=w}t=f,u=$n(t)}let a=[];for(let i of e.hunks){let f=o(r,i.bs),y=o(r,i.be),c=o(u,i.ss),g=o(u,i.se);if(f<0||y<0||c<0||g<0)return null;a.push({bs:f,be:y,toks:t.slice(c,g),gap:[],group:a.length})}return{parts:a,cosmeticEq:[],tokens:t}}function Vr(e,l,t,n={},r=null){return zr(e,l,t,n.base,n.local,n.remote,r,{})}function zr(e,l,t,n,r,u,o,a){let i=wn(Al(e),Al(l),Al(t)),f=Xn(e,i,!1,n),y=Xn(l,i,!1,r),c=Xn(t,i,!1,u),g=f.length>2e4||y.length>2e4||c.length>2e4;g&&(f=Xn(e,i,!0,n),y=Xn(l,i,!0,r),c=Xn(t,i,!0,u));let w=o?.local?Hr(e,l,o.local):null,N=o?.remote?Hr(e,t,o.remote):null,R=w?qr(w,f,y,!g):jn(f,y),m=N?qr(N,f,c,!g):jn(f,c);w&&R&&(y=R.tokens),N&&m&&(c=m.tokens);let d,p;if(R&&m){let O=Sr(R,m,f);d=Sl(l,f,y,{hunks:O.lh,cosmetic:O.cosL}),p=Sl(t,f,c,{hunks:O.rh,cosmetic:O.cosR})}else d=w||Sl(l,f,y,R),p=N||Sl(t,f,c,m);return d.hunks=jr(d.hunks,e.text,l.text),p.hunks=jr(p.hunks,e.text,t.text),a.base=e,a.local=l,a.remote=t,a.lines=g,a.baseTokens=f,a.localEdits=d,a.remoteEdits=p,a.localMap=Ur(d.hunks,e.text.length,l.text.length),a.remoteMap=Ur(p.hunks,e.text.length,t.text.length),a.full=null,a}function Kr(e,l){if(e.size!==l.size)return!1;for(let t of e)if(!l.has(t))return!1;return!0}var Fn=/\s/;function El(e,l,t){for(let n=l;n<t;n++)if(!Fn.test(e[n]))return!1;return!0}function wi(e,l,t){let n=e.cache[t]||(e.cache[t]=new Map);if(n.has(l))return n.get(l);let r=t===0?"local":"remote",u=t===0?"remote":"local",o=l.baseMark,a=l[u+"Mark"],i=!l.block&&!l[r]&&!!a&&o.to>o.from;if(i){let f=t===0?e.ML:e.MR,y=t===0?e.MR:e.ML,c=t===0?e.fr:e.fl,g=!1;for(let w=o.from;w<o.to;w++){if(f.bTo[w]>=0){i=!1;break}y.bTo[w]<0&&!Fn.test(e.fb.text[w])&&(g=!0)}if(i&&!g){for(let w=a.from;w<a.to;w++)if(y.toB[w]<0&&!Fn.test(c.text[w])){g=!0;break}}i&&=g}return n.set(l,i),i}function _r(e,l,t,n,r,u,o,a,i){let f=a===0?e.fl:e.fr,y=null;for(let c=t;c<n;c++){let g=l[c];if(!El(f.text,g.ss,g.se))return null;if(El(e.fb.text,g.bs,g.be)){if(g.bs<g.be&&g.ss<g.se||Fn.test(e.fb.text[g.bs-1]||"")||Fn.test(e.fb.text[g.be]||""))continue;return null}let w=!1;for(let N=g.bs;N<g.be;N++){if(Fn.test(e.fb.text[N]))continue;let R=null;for(let m of e.fb.stackAt[N]){let d=e.byEl.get(m.el);if(d&&wi(e,d,a)){R=d;break}}if(!R)return null;(y||(y=new Set)).add(R),w=!0}if(!w)return null}if(!y){if((a===0?"local":"remote")!==i)return null;let c=a===0?e.fr:e.fl,g=!1;for(let w=u;w<o;w++){let N=r[w];if(!El(e.fb.text,N.bs,N.be))return null;El(c.text,N.ss,N.se)||(g=!0)}if(!g)return null}return y||0}function Lr(e){let{out:l,policy:t="remote",L:n,R:r}=e,u=e.provenance||new WeakMap,o=e.textMappers||new WeakMap,a=e.conflicts||[],i=e.decisions||[],f=a.length,y=e.conflict||(s=>a.push(s)),c={textNodes:null,text:"",out:null,atomOut:new Map,breakOut:new Map,node:e.node||null},g=[],w=!!(n&&n.reverse&&n.map&&r&&r.reverse&&r.map),N={base:null,local:null,remote:null};if(!e.prepared&&w&&e.moveIn){let s=ve=>We=>ve.some(be=>be===We||be.nodeType===1&&be.contains(We)),S=s(e.local),I=s(e.remote),W=s(e.base),$=new Set,Q=ve=>{if(!vn.has(ve.tagName))return;let We=n.map.get(ve),be=r.map.get(ve);(We&&!S(We)||be&&!I(be))&&$.add(ve);for(let Ce of ve.children)Q(Ce)};for(let ve of e.base)ve.nodeType===1&&Q(ve);let ye=ve=>We=>{if(!vn.has(We.tagName))return!1;let be=ve.reverse.get(We);return!!be&&($.has(be)||!W(be))};$.size&&(N.base=ve=>$.has(ve)),N.local=ye(n),N.remote=ye(r)}let R={base:new Set,local:new Set,remote:new Set};if(!e.prepared&&w&&e.moveIn){let s=W=>$=>W.some(Q=>Q===$||Q.nodeType===1&&Q.contains($)),S=s(e.local),I=s(e.remote);for(let W of Jt(e.base,{...e,atomize:N.base}).atoms){let $=n.map.get(W.el),Q=r.map.get(W.el),ye=!!$&&!S($),ve=!!Q&&!I(Q);!ye&&!ve||(ye&&e.movePlanned?.(W.el,"local",$,null),ve&&e.movePlanned?.(W.el,"remote",Q,null),R.base.add(W.el),$&&!ye&&R.local.add($),Q&&!ve&&R.remote.add(Q),S(W.el)&&R.local.add(W.el),I(W.el)&&R.remote.add(W.el))}}let m=e.prepared?.base||Jt(e.base,{...e,atomize:N.base,skip:R.base}),d=e.prepared?.local||Jt(e.local,{...e,atomize:N.local,skip:R.local}),p=e.prepared?.remote||Jt(e.remote,{...e,atomize:N.remote,skip:R.remote}),O=new Map(m.atoms.map(s=>[s.el,s])),b={},A=s=>e.prepared?e.prepared.full?.(s)||null:R[s].size?(b[s]||(b[s]=Jt(e[s],{...e,atomize:N[s]})),b[s]):null,E=(s,S,I)=>{S.namespaceURI?s.setAttributeNS(S.namespaceURI,S.name,I):s.setAttribute(S.name,I)},B=(s,S,I,W)=>{if(!S&&(!I||!W)){for(let Q of(I||W).attributes)E(s,Q,Q.value);return}let $=new Map;for(let Q of[S,I,W])if(Q)for(let ye of Q.attributes)$.set(ye.name,ye);for(let[Q,ye]of $){let ve=S?S.getAttribute(Q):null,We=I?I.getAttribute(Q):ve,be=W?W.getAttribute(Q):ve,Ce;We===be?Ce=We:We===ve?(Ce=be,i.push({kind:"attr",el:s,name:Q,source:"remote"})):be===ve?(Ce=We,i.push({kind:"attr",el:s,name:Q,source:"local"})):(Ce=t==="local"?We:be,y({kind:"attr",el:s,name:Q,base:ve,local:We,remote:be,resolved:Ce},{el:s,sample:ye}),i.push({kind:"attr",el:s,name:Q,source:"both"})),Ce!=null&&E(s,ye,Ce)}},T=(s,S,I,W)=>s&&e.mergeAttrs?e.mergeAttrs(s,S,I,W):B(W,s,S,I),M=e.mergeElement||((s,S,I)=>{let W=l.createElement(s.tagName);T(s,S,I,W);let $=S||s,Q=I||s,ye=t==="local"?$.isEqualNode(s)?Q:$:Q.isEqualNode(s)?$:Q;for(let ve of ye.childNodes)W.appendChild(l.importNode(ve,!0));return u.set(W,{base:s,local:S,remote:I}),W}),D=e.cloneUnit||((s,S)=>{let I=l.importNode(s,!0);return u.set(I,{base:null,local:S==="local"?s:null,remote:S==="remote"?s:null}),I}),z=e.atomKey||(s=>Br(s,()=>!1)),U=(s,S)=>{let I=new Map;for(let W of s.atoms)if(e.remoteWins&&e.remoteWins(W.el)&&vn.has(W.el.tagName))I.set(W,"w"+W.el.tagName+"#"+(W.el.id||""));else if(!w)I.set(W,W.key);else if(s===m)I.set(W,"="+z(W.el));else{let $=S.reverse.get(W.el),Q=$?O.get($):null;Q?I.set(W,"="+z(Q.el)):$?I.set(W,"m"+z(W.el)):I.set(W,"="+z(W.el))}return W=>I.get(W)},j=U(m,null),k=U(d,n),v=U(p,r),J=e.certifiedOrigins?e.certifiedOrigins(m,d,p,j,k,v):null;if(J?.fallback)return null;if(!J&&!e.prepared&&e.blocks){let s=Qt(),S=Or({base:m,side:d,baseOf:W=>n?.reverse?.get(W)||null,budget:s}),I=Or({base:m,side:p,baseOf:W=>r?.reverse?.get(W)||null,budget:s});(S.status==="ready"||I.status==="ready")&&(J={local:S.status==="ready"?S:null,remote:I.status==="ready"?I:null})}let q=e.prepared||zr(m,d,p,j,k,v,J,c),V=q.lines,Ae=q.baseTokens,Ie=q.localEdits,De=q.remoteEdits,ce=q.localMap,Ne=q.remoteMap,Xe=m.text.length,ie=s=>new Map(s.atoms.map(S=>[S.el,S])),x=ie(d),Z=ie(p),ue=(s,S,I)=>{let W=new Set;if(!w)return W;for(let $ of s.atoms){let Q=O.get(S.reverse.get($.el));Q&&I.bTo[Q.i]<0&&W.add(Q)}return W},fe=ue(d,n,ce),Pe=ue(p,r,Ne),Ve=s=>!En(s,{...e,remoteWins:null}),Oe=new Set;if(w)for(let s of m.atoms){if(!Ve(s.el))continue;let S=n.map.get(s.el)||null,I=r.map.get(s.el)||null,W=S&&!I?S:I&&!S?I:null;W&&(x.has(W)||Z.has(W))&&!W.isEqualNode(s.el)&&Oe.add(s)}let tt=1,et=(s,S)=>({id:tt++,tag:s,base:null,local:null,remote:null,rank:S}),ct=new Map,Qe=[];for(let s of m.marks){let S=et(s.tag,s.depth);S.block=!!s.block,S.base=s.el,S.baseMark=s,ct.set(s.el,S),Qe.push(S)}let lt=(s,S)=>{let I=-1,W=-1;for(let $=s.from;$<s.to;$++){let Q=S[$];Q>=0&&(I<0&&(I=Q),W=Q+1)}return I<0?null:[I,W]},Mt=(s,S,I,W)=>{for(let $ of s.marks){let Q=I?I.reverse.get($.el):null;Q&&I.identical.has(Q)&&I.pairIdenticalChildren&&I.pairIdenticalChildren(Q);let ye=Q?ct.get(Q):null;if(ye&&ye[S]&&(ye=null),!ye){let ve=lt($,W),We=0;if(ve)for(let be of Qe){if(be.tag!==$.tag||be[S]||!!be.block!=!!$.block)continue;let Ce=Math.min(ve[1],be.baseMark.to)-Math.max(ve[0],be.baseMark.from);(Ce>We||Ce===We&&Ce>0&&Math.abs(be.rank-$.depth)<Math.abs(ye.rank-$.depth))&&(ye=be,We=Ce)}}ye||(ye=et($.tag,$.depth),ye.block=!!$.block,ye.new=S),ye[S]=$.el,ye[S+"Mark"]=$,ct.set($.el,ye)}};Mt(d,"local",n,ce.toB),Mt(p,"remote",r,Ne.toB);let Ut=s=>s.merged||s,bt=s=>{let S=new Set;for(let I of s)I.block||S.add(ct.get(I.el));return S},vt=new Map,St=s=>{let S=vt.get(s);return S||(S=bt(s),vt.set(s,S)),S},Kt=(s,S)=>{let I=[],W=null;for(let $=0;$<Xe;$++){let Q=S[$];if(Q<0){W&&I.push(W),W=null;continue}let ye=St(m.stackAt[$]),ve=St(s.stackAt[Q]),We=new Set,be=new Set;for(let Ce of ve)ye.has(Ce)||We.add(Ce);for(let Ce of ye)ve.has(Ce)||be.add(Ce);if(!We.size&&!be.size){W&&I.push(W),W=null;continue}if(W&&Kr(W.added,We)&&Kr(W.removed,be)){W.be=$+1;continue}W&&I.push(W),W={bs:$,be:$+1,added:We,removed:be}}return W&&I.push(W),I},ln=Kt(d,ce.bTo),Et=Kt(p,Ne.bTo),_t=s=>s.be>s.bs?[s.bs,s.be-1]:[s.bs-1,s.bs],on=(s,S)=>{if(Xe===0)return null;let[I,W]=_t(s);for(let $ of S){if($.be<=I)continue;if($.bs>W)break;let Q=$.bs<=I&&W<$.be;return Q&&s.text===""&&$.bs===s.bs&&$.be===s.be?"straddle":Q?$:s.be>s.bs?"straddle":null}return null},Bt=s=>s.bs===s.be,Lt=(s,S,I=null)=>{let W=!1;for(let $=s.bs;$<s.be;$++){let Q=m.text[$];if(Q===xt)W=!0;else if(!/\s/.test(Q))return!1}for(let $=s.ss;$<s.se;$++){let Q=S.text[$];if(Q===xt)W=!0;else if(!/\s/.test(Q)){let ye=I&&e.scopeUnits&&Bt(s)&&S.atomAt.get($);if(!ye||!Ve(ye.el)||I.ss!==I.se||I.bs>=I.be)return!1;for(let We=I.bs;We<I.be;We++)if(!/\s/.test(m.text[We]))return!1;let ve=S===d?1:2;if(!e.scopeUnits[ve].includes(ye.el)||(ve===1?n:r)?.reverse.has(ye.el))return!1;W=!0}}return W},G=(s,S)=>s.bs<S.be&&S.bs<s.be,Y=(s,S)=>s.bs<=S.be&&S.bs<=s.be&&Bt(s)!==Bt(S),we=(s,S)=>m.text.slice(s.bs,s.be).includes(xt)||S.text.slice(s.ss,s.se).includes(xt),h=s=>{if(Bt(s))return!1;let S=s.bs,I=s.be;for(;S>0&&/\s/.test(m.text[S-1]);)S--;for(;I<m.text.length&&/\s/.test(m.text[I]);)I++;return(S===0||m.text[S-1]===xt)&&(I===m.text.length||m.text[I]===xt)},P=(s,S)=>!we(s,S)&&!h(s),X=(s,S)=>G(s,S)||Y(s,S)&&!(s.transferIn||s.transferOut||S.transferIn||S.transferOut)&&!(Lt(s,d,S)&&P(S,p))&&!(Lt(S,p,s)&&P(s,d)),le=(s,S)=>{if(s.bs!==S.bs||s.be!==S.be||s.toks.length!==S.toks.length)return!1;let I=s.ss,W=S.ss;for(let $=0;$<s.toks.length;$++){let Q=s.toks[$],ye=S.toks[$];if(Q.k!==ye.k||Q.atom&&!d.atomAt.get(I).el.isEqualNode(p.atomAt.get(W).el))return!1;I+=Q.len,W+=ye.len}return!0},te=(s,S,I,W)=>{for(let $ of m.atoms){if($.i<s.bs||$.i>=s.be||W.has($)||Oe.has($))continue;let Q=S.bTo[$.i],ye=Q>=0?I.atomAt.get(Q):null;if(ye&&!ye.el.isEqualNode($.el))return!0}return!1},H=[],ke=null,Me=null,Te=Ie.hunks,Be=De.hunks,_=0,K=0,de=0,Ee=0,ge=0,ee=s=>{s>de&&(H.push({src:"base",from:de,to:s,dL:Ee,dR:ge}),de=s)};for(;_<Te.length||K<Be.length;){let s=Te[_],S=Be[K],I=!!s&&(!S||s.bs<S.bs||s.bs===S.bs&&s.be<=S.be&&!S.lead);if(s&&S&&s.bs===S.bs&&Bt(s)&&Bt(S)){let zt=Lt(s,d),Nl=Lt(S,p);zt!==Nl&&(I=Nl)}let W=I?s:S,$=I?S:s,Q=!!$&&le(s,S),ye=!!$&&(I?!!Te[_+1]&&le(Te[_+1],S):!!Be[K+1]&&le(s,Be[K+1])),ve=!!$&&!Q&&!ye&&(Xe===0||X(s,S)),We=ve,be=on(W,I?Et:ln);if(be==="straddle"&&(We=!0),!We&&W.be>W.bs&&(We=te(W,I?Ne:ce,I?p:d,I?fe:Pe)),!We&&Q){ee(W.bs),H.push({src:"both",lfrom:s.ss,rfrom:S.ss,len:W.text.length,owner:s.owner||S.owner||null,transfer:s.transferIn||S.transferIn||null}),de=W.be,Ee+=W.text.length-(W.be-W.bs),ge+=W.text.length-(W.be-W.bs),_++,K++;continue}if(!We){ee(W.bs),H.push({src:I?"local":"remote",from:W.ss,to:W.se,inherit:be&&be!=="straddle"?be:null,owner:W.owner||null,transfer:W.transferIn||null}),de=W.be,I?(Ee+=W.text.length-(W.be-W.bs),_++):(ge+=W.text.length-(W.be-W.bs),K++);continue}let Ce=W.bs,Ze=W.be,dt=_,ht=K,Dt=zt=>zt.bs<Ze&&zt.be>Ce||Bt(zt)&&(zt.bs===Ce||zt.bs===Ze);I?dt++:ht++,ve&&(Ce=Math.min(Ce,$.bs),Ze=Math.max(Ze,$.be),I?ht++:dt++);let Pt=!0;for(;Pt;){for(Pt=!1;dt<Te.length&&Dt(Te[dt]);)Ce=Math.min(Ce,Te[dt].bs),Ze=Math.max(Ze,Te[dt].be),dt++,Pt=!0;for(;ht<Be.length&&Dt(Be[ht]);)Ce=Math.min(Ce,Be[ht].bs),Ze=Math.max(Ze,Be[ht].be),ht++,Pt=!0}let Yt=Ce+Ee,en=Ce+ge,sn=Ze-Ce,dn=Ze-Ce;for(let zt=_;zt<dt;zt++)sn+=Te[zt].text.length-(Te[zt].be-Te[zt].bs);for(let zt=K;zt<ht;zt++)dn+=Be[zt].text.length-(Be[zt].be-Be[zt].bs);let Mn=Yt+sn,cn=en+dn;if(ee(Ce),_<dt&&K<ht&&!J&&!e.prepared&&!e.nativeTransfers&&!e.sourceRetentions&&!m.atoms.length&&!d.atoms.length&&!p.atoms.length&&!m.pins.length&&!d.pins.length&&!p.pins.length){ke||={fb:m,fl:d,fr:p,ML:ce,MR:Ne,byEl:ct,cache:[null,null]};let zt=_r(ke,Te,_,dt,Be,K,ht,0,t),Nl=_r(ke,Be,K,ht,Te,_,dt,1,t);if(zt===null!=(Nl===null)){let pr=zt!==null,Ro=pr?zt:Nl;if(Ro){Me||=new Map;for(let Ha of Ro)Me.set(Ha,pr?"local":"remote")}H.push(pr?{src:"remote",from:en,to:cn}:{src:"local",from:Yt,to:Mn}),de=Ze,Ee+=sn-(Ze-Ce),ge+=dn-(Ze-Ce),_=dt,K=ht;continue}}let Ft={kind:"text",node:e.node||null,base:sl(m,Ce,Ze),local:sl(d,Yt,Mn),remote:sl(p,en,cn),resolved:null,range:null,bs:Ce,be:Ze,lss:Yt,lse:Mn,rss:en,rse:cn},An=e.sourceRetentions?hi(e.sourceRetentions,e.scope?.base,m,d,p,t,Ft):t;Ft.resolved=An==="local"?Ft.local:An==="remote"?Ft.remote:Ft.local+Ft.remote,An!=="remote"&&H.push({src:"local",from:Yt,to:Mn,conflict:Ft}),An!=="local"&&H.push({src:"remote",from:en,to:cn,conflict:Ft});let xl={site:"inline",policy:An,fb:m,fl:d,fr:p,scope:e.scope||null,synthetic:!!e.synthetic,full:A,merged:c};g.push(xl),y(Ft,xl),de=Ze,Ee+=sn-(Ze-Ce),ge+=dn-(Ze-Ce),_=dt,K=ht}ee(Xe);let pe=m.text,F=[];if(Ie.respell.size||De.respell.size){let s=$n(Ae),S=[];for(let I=0;I<Ae.length;I++){let W=Ae[I].raw,$=Ie.respell.get(I)??W,Q=De.respell.get(I)??W;($!==W||Q!==W)&&F.push([s[I],$!==W&&Q!==W?"both":$!==W?"local":"remote"]),S.push($===Q?$:$===W?Q:Q===W||t==="local"?$:Q)}pe=S.join("")}let re="",Se=[],je=[],Ue=[],xe=[];for(let s of H){let S=re.length;if(s.src==="base"){for(let I=s.from;I<s.to;I++)Se.push(I),je.push(e.nativeTransfers?ce.bTo[I]:I+s.dL),Ue.push(e.nativeTransfers?Ne.bTo[I]:I+s.dR),xe.push(s);re+=pe.slice(s.from,s.to)}else if(s.src==="both"){for(let I=0;I<s.len;I++){let W=s.transfer&&(s.transfer.side==="remote"?s.rfrom+I:s.lfrom+I);Se.push(s.transfer&&W>=s.transfer.ss&&W<s.transfer.se?s.transfer.bs+W-s.transfer.ss:-1),je.push(s.lfrom+I),Ue.push(s.rfrom+I),xe.push(s)}re+=d.text.slice(s.lfrom,s.lfrom+s.len)}else{let I=s.src==="local"?d:p,W=s.transfer&&e.nativeTransfers.byOrigin[s.src==="local"?"remote":"local"].get(s.transfer.key);for(let $=s.from;$<s.to;$++){let Q=s.transfer&&$>=s.transfer.ss&&$<s.transfer.se?s.transfer.bs+$-s.transfer.ss:-1,ye=Q>=0&&(!W||W.destination===s.owner)?(s.src==="local"?Ne:ce).bTo[Q]:-1;Se.push(Q),je.push(s.src==="local"?$:ye),Ue.push(s.src==="remote"?$:ye),xe.push(s)}re+=I.text.slice(s.from,s.to)}s.ms=S,s.me=re.length,s.conflict&&(s.conflict.range||(s.conflict.range=[S,S]),s.conflict.range[1]=re.length)}let Je=re.length,it=new Int32Array(Xe+1).fill(-1),ft=new Int32Array(d.text.length+1).fill(-1),Ht=new Int32Array(p.text.length+1).fill(-1);for(let s=0;s<Je;s++)Se[s]>=0&&(it[Se[s]]=s),je[s]>=0&&(ft[je[s]]=s),Ue[s]>=0&&(Ht[Ue[s]]=s);let Wt=(s,S)=>{let I=-1,W=-1;for(let $=s.from;$<s.to;$++){let Q=S[$];Q>=0&&(I<0&&(I=Q),W=Q+1)}return I<0?null:[I,W]},Gt=[],Ct=[];for(let s of new Set(ct.values()))s.new==="local"?Gt.push(s):s.new==="remote"&&Ct.push(s);let Vt=(s,S)=>{s.remote=S.remote,s.remoteMark=S.remoteMark,s.new="both",S.merged=s,ct.set(S.remote,s)};if(Gt.length&&Ct.length){let s=e.idOf;for(let S of Gt){let I=s?s.local(S.local):null;if(!I)continue;let W=Ct.find($=>!$.merged&&$.tag===S.tag&&!!$.block==!!S.block&&s.remote($.remote)===I);W&&Vt(S,W)}for(let S of Gt){if(S.remote)continue;let I=Wt(S.localMark,ft);if(I)for(let W of Ct){if(W.merged||W.tag!==S.tag||!!W.block!=!!S.block)continue;let $=Wt(W.remoteMark,Ht);if($&&Math.min(I[1],$[1])-Math.max(I[0],$[0])>0){Vt(S,W);break}}}}vt.clear();let C=s=>{for(let S of s)if(S.block)return Ut(ct.get(S.el));return null},L=m.marks.some(s=>s.block)||d.marks.some(s=>s.block)||p.marks.some(s=>s.block),ne=new Array(Je).fill(null),me=new Set;if(e.nativeTransfers)for(let s=0;s<Je;s++){let S=xe[s].owner;ne[s]=S?Ut(ct.get(S)):Se[s]>=0?C(m.stackAt[Se[s]]):null}else if(L){let s=(be,Ce,Ze)=>{let dt=new Set([be,Ce,Ze]);dt.delete(null);let ht=[];for(let Pt of dt){let Yt=Pt===be,en=Pt===Ce,sn=Pt===Ze;(en===sn?en:en===Yt?sn:en)&&ht.push(Pt)}if(ht.length<=1)return ht[0]||null;let Dt=t==="local"?Ce:Ze;return ht.includes(Dt)?Dt:ht[0]},S=(be,Ce)=>Ce>=0?C(be.stackAt[Ce]):null,I=new Map;for(let be=0;be<Je;be++){if(re[be]!==xt)continue;let Ce=Se[be]>=0?S(m,Se[be]):null,Ze=S(d,je[be]),dt=S(p,Ue[be]);I.set(be,[Ce,Se[be]>=0?s(Ce,Ze,dt):Ze||dt])}let W=new Set([...I.values()].map(be=>be[1])),$=be=>be!==xt&&be!==Sn&&!/\s/.test(be),Q=(be,Ce)=>{let Ze=be;for(;Ze<Ce&&!$(re[Ze]);)Ze++;return Ze<Ce&&Se[Ze]>=0?S(m,Se[Ze]):null},ye=new Map,ve=0;for(let be=0;be<Je;be++){if(re[be]!==xt)continue;let[Ce,Ze]=I.get(be),dt=Q(ve,be),ht=Ze,Dt=ye.get(ht)===ht&&dt===ht;ht&&ye.has(ht)&&!Dt&&Ce&&!ye.has(Ce)&&!W.has(Ce)&&(ht=Ce),ht&&!ye.has(ht)&&ye.set(ht,dt);for(let Pt=ve;Pt<=be;Pt++)ne[Pt]=ht;ve=be+1}let We=be=>{for(let Ce=0;Ce<be.text.length;Ce++)if($(be.text[Ce])&&!S(be,Ce))return!0;return!1};if(!We(m)&&!We(d)&&!We(p)){let be=[],Ce=0;for(let dt=0;dt<Je;dt++)(re[dt]===xt||dt===Je-1)&&(be.push([Ce,dt]),Ce=dt+1);let Ze=new Set(ne);for(let dt=0;dt<be.length;dt++){let[ht,Dt]=be[dt];if(ne[Dt])continue;let Pt=ht;for(;Pt<=Dt&&!$(re[Pt]);)Pt++;if(Pt>Dt)continue;let Yt=S(m,Se[Pt]),en=S(d,je[Pt]),sn=S(p,Ue[Pt]),dn=s(Yt,en,sn)||en||sn||Yt;if(dn&&!Ze.has(dn)){Ze.add(dn);for(let Ft=ht;Ft<=Dt;Ft++)ne[Ft]=dn;continue}let Mn=dt>0&&ne[be[dt-1][1]],cn=dt+1<be.length&&ne[be[dt+1][1]];if(Mn)me.add(be[dt-1][1]);else if(cn&&re[Dt]===xt)me.add(Dt);else continue;for(let Ft=ht;Ft<=Dt;Ft++)ne[Ft]=Mn||cn}}}let he=new Map,ae=s=>{let S=he.get(s);if(S)return S;S=[1/0,-1/0];for(let[I,W]of[[s.baseMark,it],[s.localMark,ft],[s.remoteMark,Ht]]){let $=I&&Wt(I,W);$&&(S[0]=Math.min(S[0],$[0]),S[1]=Math.max(S[1],$[1]))}return he.set(s,S),S},se=(s,S,I)=>{let W=-1,$=-1;for(let Q=0;Q<s.length;Q++){let ye=ct.get(s[Q].el);ye===S&&(W=Q),ye===I&&($=Q)}return W>=0&&$>=0?W-$:0},Re=(s,S)=>[...s].sort((I,W)=>{for(let ye of S){let ve=se(ye,I,W);if(ve)return ve}let $=ae(I),Q=ae(W);return $[0]-Q[0]||Q[1]-$[1]||I.rank-W.rank||I.id-W.id}),_e=new Map,$e=new Map,rt=e.nativeTransfers?[]:null,Ye=s=>{if(rt)return rt;let S=Se[s],I=je[s],W=Ue[s],$=xe[s];if(S>=0){let Ze=m.stackAt[S],dt=d.stackAt[I],ht=p.stackAt[W],Dt=_e.get(Ze);Dt||_e.set(Ze,Dt=new Map);let Pt=Dt.get(dt);Pt||Dt.set(dt,Pt=new Map);let Yt=Pt.get(ht);if(Yt)return Yt;let en=St(Ze),sn=St(dt),dn=St(ht),Mn=new Set;for(let cn of new Set([...en,...sn,...dn])){let Ft=en.has(cn),An=sn.has(cn),xl=dn.has(cn);(An===xl?An:An===Ft?xl:An)&&Mn.add(cn)}return Yt=Re(Mn,[dt,ht,Ze]),Pt.set(ht,Yt),Yt}if($.src==="both"){let Ze=d.stackAt[I],dt=p.stackAt[W];return Re(new Set([...St(Ze),...St(dt)]),[Ze,dt])}let Q=($.src==="local"?d:p).stackAt[$.src==="local"?I:W];if(!$.inherit)return Re(St(Q),[Q]);let ye=$e.get($);ye||$e.set($,ye=new Map);let ve=ye.get(Q);if(ve)return ve;let We=new Set(St(Q));for(let Ze of $.inherit.added)We.add(Ut(Ze));for(let Ze of $.inherit.removed)We.delete(Ut(Ze));let be=$.src==="local"?p:d,Ce=($.src==="local"?Ne.bTo:ce.bTo)[$.inherit.bs];return ve=Re(We,[Q,be.stackAt[Ce]]),ye.set(Q,ve),ve},at=new Int32Array(d.text.length+1);at[d.text.length]=Je;for(let s=d.text.length-1;s>=0;s--)at[s]=ft[s]>=0?ft[s]:at[s+1];gi.caret+=d.text.length;let pt=s=>s<=0?0:(s>d.text.length&&(s=d.text.length),ft[s-1]>=0?ft[s-1]+1:at[s]),Nt=[],Tt=[],Rt=null,Le=[],wt="",At=-1,jt=s=>{Rt?Rt.appendChild(s):Nt.push(s)},Ot=s=>{if(!wt)return;let S=l.createTextNode(wt);jt(S),Tt.push({node:S,ms:At,me:s,local:[],u:Le.length?Le[Le.length-1].u:null}),wt=""},mn=new Set,$t=new Map,Wn=new Set,an=s=>{let S=l.createElement(s.tag);if(s.block&&He.add(S),!$t.has(s)){$t.set(s,S),T(s.base,s.local,s.remote,S),u.set(S,{base:s.base,local:s.local,remote:s.remote});let I=(Q,ye)=>w&&s[ye]&&Q.reverse.get(s[ye])?ye:null,W=!s.base&&(I(n,"local")||I(r,"remote"));if(W){let Q=W==="local"?n.reverse.get(s.local):r.reverse.get(s.remote),ye=u.get(S);ye.local=ye.local||n.map.get(Q)||null,ye.remote=ye.remote||r.map.get(Q)||null,i.push({kind:"move",el:S,source:W}),e.moveBuilt?.(Q,W,s[W],S)}else s.base||i.push({kind:"insert",el:S,source:s.local&&s.remote?"both":s.local?"local":"remote"});let $=u.get(S);$.local&&(Wn.has($.local)?$.local=null:Wn.add($.local))}else{let I=$t.get(s);for(let W of I.attributes)W.name!=="id"&&W.name!=="data-id"&&E(S,W,W.value);u.set(S,{base:null,local:null,remote:null})}jt(S),Le.push({u:s,el:S}),Rt=S},qn=new Set,bn=new Map;for(let s of d.pins){let S=pt(s.i);bn.has(S)||bn.set(S,[]),bn.get(S).push(s)}let nl=s=>{let S=bn.get(s);if(S){Ot(s);for(let I of S){let W=I.el.namespaceURI&&I.el.namespaceURI!=="http://www.w3.org/1999/xhtml"?l.createElementNS(I.el.namespaceURI,I.el.tagName):l.createElement(I.el.tagName);u.set(W,{base:null,local:I.el,remote:null,pinned:!0}),qn.add(W),jt(W)}}},bl=m.atoms.length||d.atoms.length||p.atoms.length,Xt=s=>{if(!bl)return null;let S=Se[s]>=0?m.atomAt.get(Se[s]):null,I=je[s]>=0?d.atomAt.get(je[s]):null,W=Ue[s]>=0?p.atomAt.get(Ue[s]):null;return S||I||W?{ab:S,al:I,ar:W}:null},Cn=(s,S,I)=>{let W=e.idOf;if(!W||!W.base)return!1;let $=W.base(s.el);return $!=null&&$===W[I](S.el)},kl=(s,S,I,W,$)=>{if(!s||!w)return null;let Q=O.get(S.reverse.get(s.el))||null;return!Q||Q===W||(W?Q.el.isEqualNode(W.el)&&!Cn(Q,s,$):I.bTo[Q.i]>=0)?null:Q},ll=(s,S)=>{if(!s||!w||!e.moveIn)return null;let I=S.reverse.get(s.el);return I&&!O.has(I)?I:null},Vn=(s,S)=>{let I=new Map;for(let W of s.atoms)I.set(S(W),(I.get(S(W))||0)+1);return I},Nn=Vn(m,j),Dl=Vn(d,k),jl=Vn(p,v),Ul=s=>{let S=j(s);return Nn.get(S)===1&&(Dl.get(S)||0)<=1&&(jl.get(S)||0)<=1},Rn=new Map,Bn=new Set,zn=new Set,wl=new Set,rl=null;for(let s=0;s<Je;s++){let S=Xt(s);if(!S)continue;let{ab:I,al:W,ar:$}=S,Q=kl($,r,Ne,I,"remote"),ye=kl(W,n,ce,I,"local"),ve=I,We=null;if(Q?(ve=Q,We="remote"):ye&&(ve=ye,We="local"),ve){I&&ve!==I&&(rl||=new Map).set(I,We),Bn.has(ve)?Rn.set(s,{dup:ve.el}):(Bn.add(ve),Rn.set(s,{bk:ve,from:We,al:W,ar:$}));continue}let be=ll($,r),Ce=ll(W,n),Ze=be||Ce;if(Ze){zn.has(Ze)?Rn.set(s,{dup:Ze}):(zn.add(Ze),Rn.set(s,{moveIn:Ze,side:be?"remote":"local",sideEl:be?$.el:W.el}));continue}let dt=(Dt,Pt)=>Dt&&w&&O.get(Pt.reverse.get(Dt.el))||null,ht=dt($,r)||dt(W,n);if(ht&&(wl.add(ht),xe[s].conflict&&(Ul(ht)||$&&($.el===ht.el||r.identityPaired?.has(ht.el))&&Cn(ht,$,"remote")||W&&(W.el===ht.el||n.identityPaired?.has(ht.el))&&Cn(ht,W,"local")))){if(Bn.has(ht)){Rn.set(s,{dup:ht.el});continue}Bn.add(ht)}Rn.set(s,{al:W,ar:$})}let Tn=new Map,yl,vl,Hl=(s,S)=>{if(s[S]>=0)return s[S];for(let I=S-1;I>=0;I--)if(s[I]>=0)return s[I]+1;return 0};if(w)for(let s of m.atoms){if(Bn.has(s)||wl.has(s))continue;let S=n.map.get(s.el)||null,I=r.map.get(s.el)||null,W=S&&x.get(S),$=I&&Z.get(I);if(S&&!W||I&&!$)continue;let Q=!(W&&$)&&Oe.has(s);if(!Q&&!(W&&$&&(Ul(s)||rl?.has(s)||(W.el===s.el||n.identityPaired?.has(s.el))&&($.el===s.el||r.identityPaired?.has(s.el))&&Cn(s,W,"local")&&Cn(s,$,"remote"))))continue;let ye=rl?.get(s),ve=t;if(ye){let dt=ye==="local"?p:d,ht=ye==="local"?r:n,Dt=ye==="local"?vl:yl;if(Dt===void 0){Dt=dt.atoms.length===m.atoms.length;for(let Pt=0;Dt&&Pt<m.atoms.length;Pt++)Dt=ht.reverse.get(dt.atoms[Pt].el)===m.atoms[Pt].el;ye==="local"?vl=Dt:yl=Dt}Dt&&(ve=ye)}let We=ve==="local"?[[W,ft],[$,Ht]]:[[$,Ht],[W,ft]],[be,Ce]=We.find(([dt])=>dt),Ze=Hl(Ce,be.i);Tn.has(Ze)||Tn.set(Ze,[]),Tn.get(Ze).push({a:s,lt:S,rt:I,edited:Q}),Bn.add(s)}if(w&&e.moveIn){let s=[[d,n,ft,"local"],[p,r,Ht,"remote"]];t!=="local"&&s.reverse();for(let[S,I,W,$]of s)for(let Q of S.atoms){let ye=ll(Q,I);if(!ye||zn.has(ye))continue;zn.add(ye);let ve=Hl(W,Q.i);Tn.has(ve)||Tn.set(ve,[]),Tn.get(ve).push({move:ye,side:$,sideEl:Q.el})}}let oe=s=>{let S=Tn.get(s);if(S){if(Ot(s),S.some(I=>Ve(I.move?I.sideEl:I.a.el)))for(;Le.length;)Le.pop(),Rt=Le.length?Le[Le.length-1].el:null;for(let{a:I,lt:W,rt:$,edited:Q,move:ye,side:ve,sideEl:We}of S){if(ye){let Ce=e.moveIn(ye,ve,We);Ce&&jt(Ce);continue}mn.add(I);let be=M(I.el,W,$);Q&&(y({kind:"structure",el:be,detail:"edit-beats-delete",base:I.el},{subject:I.el,deleted:W?"remote":"local"}),i.push({kind:"insert",el:be,source:W?"local":"remote"})),jt(be)}}},He=new Set,qe=a.length>f;for(let s=0;s<Je;s++){let S=Xt(s),I=e.scopeUnits&&S&&(S.ab?.stack.some(Q=>Q.block)||S.al?.stack.some(Q=>Q.block)||S.ar?.stack.some(Q=>Q.block)),W=S&&Ve((S.ab||S.al||S.ar).el)&&!I?[]:ne[s]?[ne[s],...Ye(s)]:Ye(s),$=0;for(;$<Le.length&&$<W.length&&Le[$].u===W[$];)$++;if($<Le.length)for(Ot(s);Le.length>$;)Le.pop(),Rt=Le.length?Le[Le.length-1].el:null;if(nl(s),oe(s),W.length>Le.length)for(Ot(s);Le.length<W.length;)an(W[Le.length]);if(re[s]===xt){if(me.has(s))continue;Ot(s);let Q=Le.length;for(;Q>0&&!Le[Q-1].u.block;)Q--;if(Q>0)for(qe&&c.breakOut.set(s,Le[Q-1].el);Le.length>=Q;)Le.pop(),Rt=Le.length?Le[Le.length-1].el:null;continue}if(S){Ot(s);let Q=Rn.get(s),ye;if(Q.dup){y({kind:"structure",el:null,detail:"both-moved",base:Q.dup},{subject:Q.dup});continue}if(Q.moveIn){if(ye=e.moveIn(Q.moveIn,Q.side,Q.sideEl),!ye)continue}else if(Q.bk){let ve=Q.bk;if(mn.add(ve),ve===S.ab)ye=M(ve.el,Q.al.el,Q.ar.el);else{let We=n.map.get(ve.el)||null,be=r.map.get(ve.el)||null;ye=M(ve.el,We,be),(!We||!be)&&y({kind:"structure",el:null,detail:"move-beats-delete",base:ve.el},{subject:ve.el,deleted:We?"remote":"local"}),i.push({kind:"move",el:ye,source:Q.from})}}else Q.al?(ye=D(Q.al.el,"local"),Q.ar&&(u.get(ye).remote=Q.ar.el),i.push({kind:"insert",el:ye,source:Q.ar?"both":"local"})):(ye=D(Q.ar.el,"remote"),i.push({kind:"insert",el:ye,source:"remote"}));qe&&c.atomOut.set(s,ye),jt(ye);continue}wt||(At=s),wt+=re[s]}if(Ot(Je),(bn.has(Je)||Tn.has(Je))&&(Le.length=0,Rt=null,nl(Je),oe(Je)),Je===0&&(d.placeholder||p.placeholder||m.placeholder)){let s=l.createElement("br");u.set(s,{base:m.placeholder,local:d.placeholder,remote:p.placeholder}),Nt.push(s)}let Ke=0,mt=s=>{for(;Ke>0&&Tt[Ke-1].me>=s;)Ke--;for(;Ke<Tt.length&&Tt[Ke].me<s;)Ke++;let S=Tt[Ke];if(!S)return Tt[Tt.length-1]||null;let I=Tt[Ke+1];return S.me===s&&I&&I.ms===s?I:S},Ge=new Map,ze={},nt=(s,S,I)=>{let W=mt(s)||(I?ze:null);if(!W)return;let $=Ge.get(W)||{l:!1,r:!1};S!=="remote"&&($.l=!0),S!=="local"&&($.r=!0),Ge.set(W,$)},Fe=s=>{if(s.conflict)return!0;let S=s.src==="local"?d.text:s.src==="remote"?p.text:"";for(let I=s.from;I<s.to;I++)if(S[I]!==Sn&&S[I]!==xt)return!0;return!1};for(let s of H)s.src!=="base"&&nt(s.ms,s.conflict?"both":s.src,Fe(s));for(let[s,S]of F)it[s]>=0&&nt(it[s],S);for(let s of Tt.length?Tt:[ze]){let S=Ge.get(s);S&&i.push({kind:"text",node:s.node||null,source:S.l&&S.r?"both":S.l?"local":"remote"})}for(let s of Qe){if($t.has(s))continue;let S=!s.local&&!(w&&n.map.get(s.base)),I=!s.remote&&!(w&&r.map.get(s.base));!S&&!I||i.push({kind:"remove",source:S&&I?"both":S?"local":"remote",base:s.base})}if(Me)for(let[s,S]of Me)$t.has(s)&&y({kind:"structure",el:$t.get(s),detail:"edit-beats-delete",base:s.base},{subject:s.base,deleted:S});let gt=(s,S,I)=>{if(S<=s)return!1;for(let W=s;W<S;W++)if(I[W]>=0)return!1;return!0};for(let s of Qe)for(let S of["local","remote"]){let I=s[S+"Mark"],W=s.baseMark;if(!I)continue;let $=S==="local"?ce:Ne;if(!gt(W.from,W.to,$.bTo)||!gt(I.from,I.to,$.toB))continue;let Q=(S==="local"?Te:Be).find(ye=>ye.ss<=I.from&&I.from<ye.se);Q&&(Q.be<=W.from||Q.bs>=W.to)&&i.push({kind:"move",el:$t.get(s)||null,source:S})}let st=s=>{let S=ct.get(s.node.parentNode);return S?Ut(S):null};for(let s of d.nodes){let S=-1;for(let W=s.s;W<s.e;W++)if(ft[W]>=0){S=ft[W];break}let I;if(S>=0)I=mt(S);else{let W=pt(s.s),$=st(s);I=Tt.find(Q=>Q.u===$&&Q.me>=W)||Tt.filter(Q=>Q.u===$).pop()}I&&I.local.push(s)}let yt=new Map,kt=Tt[Tt.length-1]||null,It=0;for(let s of d.nodes){let S=null;for(let I=s.s;I<=s.e;I++){let W=pt(I);for(;It>0&&Tt[It-1].me>=W;)It--;for(;It<Tt.length&&Tt[It].me<W;)It++;let $=ye=>ye&&W>=ye.ms&&W<=ye.me&&(W<ye.me||I===s.e||ye===S),Q=$(Tt[It])?Tt[It]:$(Tt[It+1])?Tt[It+1]:Tt[It]||kt;if(!Q)break;if(S===Q){let ye=yt.get(Q);ye[ye.length-1].to=I-s.s;continue}S=Q,yt.has(Q)||yt.set(Q,[]),yt.get(Q).push({node:s.node,from:I-s.s,to:I-s.s,flatStart:s.s})}}for(let s of Tt){let S=s.local,I=!1;for(let ye of S)for(let ve=ye.s;ve<ye.e&&!I;ve++)(ft[ve]<s.ms||ft[ve]>=s.me)&&(I=!0);u.set(s.node,{base:null,local:S.map(ye=>ye.node),remote:null,caret:yt.get(s)||[],partial:I});let W=s.ms,$=s.me-s.ms,Q=ye=>{let ve=0,We=-1;for(let be of S){let Ce=be.e-be.s;if(ye<=ve+Ce){We=be.s+(ye-ve);break}ve+=Ce}return We<0&&(We=S.length?S[S.length-1].e:0),Math.max(0,Math.min(pt(We)-W,$))};Q.flat=ye=>Math.max(0,Math.min(pt(ye)-W,$)),o.set(s.node,Q)}function In(){if(!d.text.includes(xt))return[{flatLocal:d.text,localNodes:d.nodes,textNodes:Tt,lToM:ft,mapLocal:pt}];let s=[],S=0,I=0;for(let W=0;W<=d.text.length;W++){if(W<d.text.length&&d.text[W]!==xt)continue;let $=S,Q=W;if(Q>$){let ye=[];for(;I<d.nodes.length&&d.nodes[I].e<=$;)I++;for(let ve=I;ve<d.nodes.length&&d.nodes[ve].s<Q;ve++){let We=d.nodes[ve],be=Math.max(We.s,$),Ce=Math.min(We.e,Q);be<Ce&&ye.push({node:We.node,s:be-$,e:Ce-$})}s.push({flatLocal:d.text.slice($,Q),localNodes:ye,textNodes:Tt,lToM:ft.subarray?ft.subarray($,Q+1):ft.slice($,Q+1),mapLocal:ve=>pt($+Math.max(0,Math.min(ve,Q-$)))})}S=W+1}return s}let Dn={...e,blocks:He,ignored:s=>qn.has(s)||(e.ignored?e.ignored(s):!1)},ol=e.ignoreAttribute||(()=>!1),gr=Dr(Jt(Nt,Dn),ol)!==Dr(p,ol);if(g.length){let s=S=>{let I=u.get(S);return I&&I.unchanged?I.remote:null};c.text=re,c.textNodes=Tt,c.out=Jt(Nt,{...Dn,via:s})}let ut=null;if(e.scopeUnits){ut=new Map;let s=new Set(Nt),S=ve=>{for(;ve&&!s.has(ve);)ve=ve.parentNode;return ve},I=e.scopeUnits.map(ve=>{let We=new Map;for(let be of ve)if(be.nodeType===1)We.set(be,be);else for(let Ce of be.nodes)We.set(Ce,be);return We}),W=(ve,We)=>{for(;ve&&!We.has(ve);)ve=ve.parentNode;return ve?We.get(ve):null},$=[m,d,p].map((ve,We)=>{let be=new Array(ve.text.length);for(let Ce of ve.nodes){let Ze=W(Ce.node,I[We]);Ze&&be.fill(Ze,Ce.s,Ce.e)}for(let Ce of ve.atoms)be[Ce.i]=W(Ce.el,I[We]);return be}),Q=(ve,We)=>{if(!ve||!We)return;let be=ut.get(ve);be||ut.set(ve,be=new Set),be.add(We)};for(let ve of Nt){let We=u.get(ve);We&&(Q(W(We.base,I[0]),ve),Q(W(We.local,I[1]),ve),Q(W(We.remote,I[2]),ve))}for(let ve of Tt){let We=S(ve.node);for(let be=ve.ms;be<ve.me;be++)Q($[0][Se[be]],We),Q($[1][je[be]],We),Q($[2][Ue[be]],We)}let ye=new Map(Nt.map((ve,We)=>[ve,We]));for(let[ve,We]of ut)ut.set(ve,Array.from(We).sort((be,Ce)=>ye.get(be)-ye.get(Ce)))}return{unitOutputs:ut,nodes:Nt,text:re,textNodes:Tt,localDiverged:gr,mapLocal:pt,conflicts:a.slice(f),granularity:V?"line":"word",segments:In(),localHunks:Te,remoteHunks:Be,lToM:ft}}var Ql=Symbol("lost");function yi(){return{links:new Map,removed:new Set,consumed:new Set,link(e,l){this.links.set(e,l)},remove(e){if(e)if(e.nodeType===1)this.removed.add(e);else for(let l of e.nodes)this.removed.add(l)},consume(e){for(let l of e)this.consumed.add(l)}}}var Gr=e=>e.nodeType===1&&e.tagName==="TEMPLATE"&&e.content?e.content:e;function vi({locals:e,rec:l,root:t,provenance:n,segments:r,ignored:u}){let o=new Map,a=(b,A)=>{let E=o.get(b);E||o.set(b,E=new Set),E.add(A)},i=new Set,f=new Set;for(let b of r){let A=b.textNodes;for(let E of A)i.add(E.node);for(let E of b.localNodes){f.add(E.node);let B=0,T=null;for(let M=E.s;M<E.e;M++){let D=b.lToM[M];if(D<0)continue;for((!A[B]||D<A[B].ms)&&(B=0);B<A.length&&A[B].me<=D;)B++;let z=A[B]&&A[B].ms<=D?A[B].node:Ql;z!==T&&a(E.node,z),T=z}}}let y=new Set,c=new Map,g=new Set;(function b(A){y.add(A);let E=n.get(A);if(A.nodeType===1)E&&E.local&&E.local.nodeType===1&&(a(E.local,A),E.unchanged&&g.add(E.local)),A.tagName==="TEMPLATE"&&A.content&&c.set(A.content,A);else if(E&&Array.isArray(E.local)&&!i.has(A))for(let B of E.local)a(B,A);for(let B=Gr(A).firstChild;B;B=B.nextSibling)b(B)})(t);let w=new Set;for(let[b,A]of l.links)a(b,A),w.add(b);let N=b=>{let A=b.parentNode;return A&&A.nodeType===11?c.get(A)||null:A},R=(b,A)=>{for(let E=b;E;E=N(E))if(E===A)return!0;return!1},m=b=>l.removed.has(b)||l.consumed.has(b),d=b=>{for(let A=b.parentNode;A&&A.nodeType===1;A=A.parentNode){if(g.has(A))return"kept";if(m(A))return"decided";if(o.has(A))return null}return null},p=new Map;for(let b of e)p.set(b,O(b));return p;function O(b){let A=o.get(b);if(A&&(A.size!==1||A.has(Ql)))return{kind:"unknown",reason:"several-outputs"};let E=A?A.values().next().value:null;if(E&&(E.nodeType!==1||!y.has(E)))return{kind:"unknown",reason:"output-not-placed"};if(!E){let D=m(b)?"decided":d(b);if(D==="kept")return{kind:"untouched"};if(D!=="decided")return{kind:"unknown",reason:"unmapped"}}let B=[],T=M(b,!!E&&(g.has(b)||w.has(b)),!E||m(b));if(T)return{kind:"unknown",reason:T};return E?{kind:"single",output:E,owned:B,carried:w.has(b)}:{kind:"removed"};function M(D,z,U){for(let j=Gr(D).firstChild;j;j=j.nextSibling){if(j.nodeType===1?u(j):j.nodeType!==3&&j.nodeType!==8)continue;let k=o.get(j);if(k)for(let v of k){if(v===Ql||!y.has(v))return"output-not-placed";if(!E)return"survives-elsewhere";if(!R(v,E))return"escaped";B.push(v)}else if(!z&&!U&&!m(j)&&!f.has(j))return"unmapped";if(j.nodeType===1){let v=M(j,z||g.has(j)||w.has(j),U||m(j));if(v)return v}}return null}}}function Xr(e,l){if(!l)return!1;let t=l.nodeType===1&&l.tagName==="TEMPLATE"?[l,...l.querySelectorAll("template")]:[...l.querySelectorAll("template")];for(let n of t)if(n.content.contains(e)||Xr(e,n.content))return!0;return!1}function $r(e,l){if(!e||typeof e!="object"||typeof e.onResult!="function"||!e.elements||!Number.isSafeInteger(e.elements.length)||e.elements.length<0)throw new TypeError("lineage must be { elements, onResult }");let t=[],n=new Set;for(let r of Array.from(e.elements)){if(!r||r.nodeType!==1||r.ownerDocument!==l&&!Xr(r,l.documentElement))throw new TypeError("lineage.elements must be elements of the live document");n.has(r)||(n.add(r),t.push(r))}return t}var Fr=new WeakMap;function Zr(e){let l=new Map;for(let t of e){let n=[],r=!1;(function u(o){o.nodeType===1&&o.namespaceURI==="http://www.w3.org/1999/xhtml"&&o.localName==="template"&&(r=!0);for(let a=o.firstChild;a;a=a.nextSibling)n.push(a),a.nodeType===1&&u(a)})(t),l.set(t,{nodes:n,opaque:r})}return l}function Qr(e,l,t){if(e.lineage===void 0)return t(e);if(!l||l.nodeType!==1)throw new TypeError("lineage requires an element root");let n=e.lineage,r=$r(n,l.ownerDocument),u=!1,o={...e,lineage:{elements:r,onResult(a,i){if(!u)return u=!0,n.onResult(a,i)}}};try{return Fr.set(o.lineage,Zr(r)),t(o)}catch(a){if(!u){u=!0;try{n.onResult({version:1,root:l,status:"incomplete",entries:r.map(hn)},null)}catch{}}throw a}}function Jr(e,{liveRoot:l,localRoot:t,toLive:n}){let r=$r(e,l.ownerDocument),u=i=>i===l||l.contains(i),o=new Map,a=new Set(r.filter(u));if(a.size&&t===l)for(let i of a)o.set(i,i);else a.size&&(function i(f){let y=n(f);a.delete(y)&&o.set(y,f);for(let c=f.firstElementChild;c&&a.size;c=c.nextElementSibling)i(c)})(t);return{spec:e,watched:r,root:l,locals:Array.from(new Set(o.values())),before:Fr.get(e)||Zr(r),delivered:!1,result:null,finish(i,f){return this.resolve=f,this.plans=i,this.result={version:1,root:this.root,status:"complete",entries:r.map(y=>xi(y,o.get(y),i,f,this))},this.result},recheck(){return this.finish(this.plans,this.resolve)},remapRoot(i,f){this.root=f;let y=this.resolve,c=g=>{let w=y(g);return w===i?f:w};return this.finish(this.plans,c)},deliver(i){this.delivered||(this.delivered=!0,e.onResult(this.result,i))}}}var hn=e=>({from:e,to:[],kind:"unknown",complete:!1});function xi(e,l,t,n,r){let u=r.root,o=g=>!!g&&(g===u||u.contains(g)),a=l&&t?t.get(l):null;if(!a||a.kind==="unknown")return hn(e);let i=r.before.get(e);if(!i||i.opaque)return hn(e);let f=i.nodes,y=g=>o(g)||!!(g&&g.ownerDocument===u.ownerDocument&&u.ownerDocument.documentElement?.contains(g));if(a.kind==="untouched"){if(!o(e))return hn(e);for(let g of f)if(y(g)&&!e.contains(g))return hn(e);return{from:e,to:[e],kind:"retained",complete:!0}}if(a.kind==="removed")return y(e)||f.some(y)?hn(e):{from:e,to:[],kind:"removed",complete:!0};let c=n(a.output);if(!c||c.nodeType!==1||!o(c)||c!==e&&y(e))return hn(e);for(let g of f)if(y(g)&&!c.contains(g))return hn(e);for(let g of a.owned){let w=n(g),N=Array.isArray(w)?w:[w];for(let R of N)if(!R||!o(R)||!c.contains(R))return hn(e)}return a.carried&&!Yr(c,a.output,n)?hn(e):{from:e,to:[c],kind:c===e?"retained":"replaced",complete:!0}}function Yr(e,l,t){for(let n=l.firstChild;n;n=n.nextSibling){let r=t(n),u=Array.isArray(r)?r:[r];for(let o of u)if(!o||!e.contains(o))return!1;if(n.nodeType===1&&!Yr(e,n,t))return!1}return!0}function Ol(e,l,t){let n=Jr(e,{liveRoot:l,localRoot:l,toLive:r=>r});return n.result={version:1,root:l,status:"complete",entries:n.watched.map(r=>hn(r))},t.lineage=n.result,n}function eo(e,l,t,n,r){if(!r(e.length*8+1))return null;let u=0,o=l===0,a=!1;for(let i of tn(e,n)){if(!r(1))return null;if(u+=i.len,u===l&&(o=!0),u===t&&(a=!0),u>=t)break}return o&&a}function Ni(e,l,t,n,r,u,o){if(!o(l.length*2))return!1;let a=new Map,i=new Map,f=new Set;for(let y of l){let c=y.bs<y.be,g=c?t[y.ownerIndex].text.base:t[y.ownerIndex].text[e],w=c?y.bs:y.ss,N=c?y.be:y.se;if(!o((N-w)*4+1))return!1;for(;w<N&&/\s/.test(g[w]);)w++;for(;N>w&&/\s/.test(g[N-1]);)N--;if(w===N)continue;let R=g.slice(w,N),m=c?a:i;c&&y.text&&f.add(R),m.has(R)?m.set(R,null):m.set(R,{h:y,from:w,to:N})}for(let y of n){if(!o(1))return!1;if(y.side!==e)continue;let c=y.deletion,g=t[c.ownerIndex].text.base;if(!o((c.be-c.bs)*3)||f.has(g.slice(c.bs,c.be).trim()))return!1}for(let[y,c]of a){if(!o(y.length+1))return!1;let g=i.get(y);if(!c||!g)continue;let w=c.h,N=g.h;if(!w.text||w.transferOut||N.transferIn||w.owner===N.owner)continue;let R=t[w.ownerIndex],m=t[N.ownerIndex];if(!o(R.text.base.length))return!1;if(!/\S/.test(R.text.base.slice(0,w.bs)+R.text.base.slice(w.be)))continue;let d=eo(R.text.base,c.from,c.to,u,o),p=eo(m.text[e],g.from,g.to,u,o);if(d===null||p===null)return!1;if(!d||!p)continue;let O=`${R.index}:${c.from}:${c.to}`,b={key:O,side:e,source:w.owner,destination:N.owner,deletion:w,insertion:N,sourceOffset:c.from-w.bs,targetOffset:g.from-N.ss,length:c.to-c.from};w.transferOut=b,N.transferIn=b,r[e].set(O,b),n.push(b)}return!0}function Ti({base:e,local:l,remote:t,localTwin:n,remoteTwin:r,eligible:u,nodes:o,budget:a=Qt(64e4)}){let i=T=>T>a.remaining?!1:(a.remaining-=T,a.nativeSteps=(a.nativeSteps||0)+T,!0);if(e.length<2||l.length!==e.length||t.length!==e.length||!i(e.length*12))return null;for(let[T,M]of[["base",e],["local",l],["remote",t]]){let D=o[T];if(D.length!==M.length||D.some((z,U)=>z!==M[U]))return null}let f=[],y=0;for(let T=0;T<e.length;T++){let M=e[T],D=l[T],z=t[T];if(n(M)!==D||r(M)!==z)return null;let U={};for(let[j,k]of[["base",M],["local",D],["remote",z]]){if(!u(k)||k.tagName!==M.tagName||k.namespaceURI!==M.namespaceURI||!i(k.childNodes.length+1))return null;let v="";for(let J of k.childNodes){if(J.nodeType!==3||!i(J.data.length*4+1))return null;v+=J.data}if(v.includes(xt)||(y+=v.length+1,y>2e4))return null;U[j]=v}f.push({base:M,local:D,remote:z,index:T,text:U})}let c=f.every(T=>wn(T.text.base,T.text.local,T.text.remote)),g={local:[],remote:[]};for(let T of f){T.hunks={local:[],remote:[]};for(let M of["local","remote"]){let D=T.text.base,z=T.text[M];if(D===z)continue;let U=D.length+z.length+4,j=U*8;if(!i(j))return null;let k=Math.floor(a.remaining/8),v=Math.min(4e3,Math.max(0,Math.floor((Math.sqrt(U*U+k)-U)/2)));if(v<1||!i(4*(v+1)*(U+v+1)))return null;let J=0;for(let q of Tl(D,z,v)){if(!i(q.text.length+1))return null;let V=q.bs+J,Ae={...q,ss:V,se:V+q.text.length,toks:tn(q.text,c),owner:T.base,ownerIndex:T.index};T.hunks[M].push(Ae),g[M].push(Ae),J+=q.text.length-(q.be-q.bs)}}}let w=[],N={local:new Map,remote:new Map};for(let T of["local","remote"]){let M=new Map,D=new Map,z=!1,U=(j,k,v)=>{j.has(k)?j.set(k,null):j.set(k,v)};for(let j of g[T]){if(!i(1))return null;let k=f[j.ownerIndex].text.base;if(j.bs<j.be&&j.text===""){let v=k.slice(j.bs,j.be);if(!i(v.length*2))return null;/\S/.test(v)&&U(M,v,j)}else if(j.bs===j.be&&/\S/.test(j.text)){if(!i(j.text.length*2))return null;U(D,j.text,j)}else j.bs<j.be&&(z=!0)}for(let[j,k]of M){if(!i(j.length+1))return null;let v=D.get(j);if(!k||!v||k.owner===v.owner)continue;let J=f[k.ownerIndex];if(!i(J.text.base.length))return null;if(!/\S/.test(J.text.base.slice(0,k.bs)+J.text.base.slice(k.be)))continue;let q=`${J.index}:${k.bs}:${k.be}`,V={key:q,side:T,source:k.owner,destination:v.owner,deletion:k,insertion:v};k.transferOut=V,v.transferIn=V,N[T].set(q,V),w.push(V)}if(z&&D.size&&!Ni(T,g[T],f,w,N,c,i))return null}if(!w.length)return null;let R=(T,M)=>T.bs<M.be&&M.bs<T.be,m=T=>T.bs===T.be,d=(T,M)=>T.bs<=M.be&&M.bs<=T.be&&m(T)!==m(M),p=(T,M)=>T.bs===M.bs&&T.be===M.be&&T.text===M.text,O=(T,M)=>!!(T.transferIn||T.transferOut&&(!T.text||M.bs===T.be&&/\s/.test(M.text[0])||M.bs===T.bs&&/\s/.test(M.text[M.text.length-1])));for(let T of w){let M=T.side==="local"?"remote":"local",D=f[T.deletion.ownerIndex];for(let z of D.hunks[M])if(!i(1)||R(T.deletion,z)&&z.transferOut?.key!==T.key)return null}for(let T of f)for(let M of T.hunks.local)for(let D of T.hunks.remote){if(!i(1))return null;if(p(M,D)){if(M.transferIn?.key!==D.transferIn?.key)return null;continue}if(R(M,D)||d(M,D)&&!O(M,D)&&!O(D,M))return null}if(!i(y*8))return null;let b=new Set([...e,...l,...t]),A={base:Jt(e,{blocks:b}),local:Jt(l,{blocks:b}),remote:Jt(t,{blocks:b})},E={};for(let T of["base","local","remote"]){let M=A[T];if(M.atoms.length||M.pins.length)return null;E[T]=new Map(M.marks.filter(D=>D.block).map(D=>[D.el,D.from]))}for(let T of f){let M=E.base.get(T.base);if(M===void 0)return null;for(let D of["local","remote"]){let z=E[D].get(T[D]);if(z===void 0)return null;for(let U of T.hunks[D])U.bs+=M,U.be+=M,U.ss+=z,U.se+=z}}for(let T of w)T.bs=T.deletion.bs+(T.sourceOffset||0),T.be=T.length===void 0?T.deletion.be:T.bs+T.length,T.ss=T.insertion.ss+(T.targetOffset||0),T.se=T.length===void 0?T.insertion.se:T.ss+T.length;let B={};for(let T of["local","remote"]){let M=0,D=0,z=[];for(let j of g[T]){if(!i(1))return null;j.bs>M&&z.push({from:M,to:j.bs,target:D}),M=j.be,D=j.se}M<A.base.text.length&&z.push({from:M,to:A.base.text.length,target:D});let U=w.filter(j=>j.side===T).map(j=>({from:j.bs,to:j.be,target:j.ss,destination:j.destination}));if(B[T]=Gn({base:A.base,side:A[T],retained:z,transfers:U,budget:a}),B[T].status!=="ready")return null}return i(A.base.text.length)?{owners:f,blocks:b,transfers:w,byOrigin:N,budget:a,prepared:{base:A.base,local:A.local,remote:A.remote,lines:!1,baseTokens:tn(A.base.text,c),localEdits:{hunks:g.local,respell:new Map},remoteEdits:{hunks:g.remote,respell:new Map},localMap:B.local,remoteMap:B.remote,full:null}}:null}var Jl=/\S/;function Mi({certificates:e,scopes:l,views:t,eligible:n,baseId:r,limit:u=64e4}){let o=Qt(u),a=Symbol(),i=[],f=c=>{if(c>o.remaining)throw a;o.remaining-=c},y=(c,g=null)=>{if(f(1),!c||c.nodeType!==1||c.parentNode?.nodeType!==1||!n(c))return null;for(let R=c.parentNode;R;R=R.parentNode)if(f(1),R.nodeType===11)return null;let w="",N=0;for(let R of c.childNodes){if(f(1),R.nodeType!==3)return null;if(f(R.data.length*4+1),g){let m=g.flat.nodes[N++];if(!m||m.node!==R||m.s!==w.length||m.e!==w.length+R.data.length)return null}w+=R.data}return f(w.length*3+1),g&&(g.flat.atoms.length||g.flat.pins?.length||N!==g.flat.nodes.length||g.flat.text!==w)?null:Jl.test(w)?w:null};try{f(l[0].length+l[1].length+l[2].length+e.length);let c=l.map(w=>new Set(w)),g=new Map;for(let w of e){f(1);let N=g.get(w.source);N||g.set(w.source,N=[]),N.push(w)}for(let w of g.values()){let N=[null,null],R=[];for(let m of w){f(1);let{source:d,target:p,side:O,models:b,runs:A}=m;if(O!==0&&O!==1||!c[0].has(d)||!c[O+1].has(p))continue;let{V:E,A:B,idOf:T}=t[O],M=t[1-O],D=E.twin(d),z=M.V.twin(d),U=E.baseOf(p);if(!D||!z||!U||U===d||!c[0].has(U)||!c[O+1].has(D)||!c[2-O].has(z)||B.map.get(d)!==D||B.reverse.get(D)!==d||M.A.map.get(d)!==z||M.A.reverse.get(z)!==d||B.map.get(U)!==p||B.reverse.get(p)!==U||p.parentNode!==D.parentNode||U.parentNode!==d.parentNode||d.tagName!==D.tagName||d.tagName!==z.tagName||r(d)!==T(D)||r(d)!==M.idOf(z)||r(U)!==T(p))continue;let j=b.get(d),k=b.get(p);if(!j||!k)continue;let v=y(d,j),J=y(p,k),q=y(D),V=y(z);if(f((v?.length||0)+(V?.length||0)),v===null||J===null||q===null||V===null||V===v)continue;let Ae=A.length>0,Ie=!1;for(let ce of A){if(f(1),ce.source!==d||ce.target!==p||!Number.isInteger(ce.from)||!Number.isInteger(ce.to)||!Number.isInteger(ce.targetFrom)||ce.from<0||ce.to<=ce.from||ce.to>v.length||ce.targetFrom<0||ce.targetFrom+ce.to-ce.from>J.length){Ae=!1;break}f((ce.to-ce.from)*3);for(let Ne=ce.from;Ne<ce.to;Ne++){if(v[Ne]!==J[ce.targetFrom+Ne-ce.from]){Ae=!1;break}Jl.test(v[Ne])&&(Ie=!0)}if(!Ae)break}if(!Ae||!Ie)continue;let De=N[O];De||(f(v.length),De=N[O]={source:d,side:O,flat:j.flat,before:v,covered:new Uint8Array(v.length)});for(let ce of A)f(ce.to-ce.from),De.covered.fill(1,ce.from,ce.to)}for(let m of N){if(!m)continue;let{source:d,side:p,flat:O,before:b,covered:A}=m;f(b.length*3+1);let E=-1,B=-1;for(let T=0;T<=b.length;T++)T<b.length&&A[T]?(E<0&&(E=T),B=T+1):(T===b.length||Jl.test(b[T]))&&E>=0&&(R.push({source:d,side:p,flat:O,from:E,to:B}),E=B=-1)}f(R.length),i.push(...R)}}catch(c){if(c!==a)throw c}return{records:i,budget:o}}var Ai="http://www.w3.org/1999/xhtml";function Si(e){let l=5381;for(let t=0;t<e.length;t++)l=(l<<5)+l^e.charCodeAt(t);return(l>>>0).toString(36)}function rn(e){return!!e&&e.nodeType===1&&e.tagName==="SCRIPT"&&e.namespaceURI===Ai}function Ei(e){let l=(e.getAttribute("type")||"").split(";")[0].trim().toLowerCase();return l==="application/json"||l.endsWith("+json")}function Yl(e,l){let t=e.getAttribute("src"),n=(e.getAttribute("type")||"text/javascript").split(";")[0].trim().toLowerCase();if(t){let r=t;try{let u=new URL(t,l);r=u.origin+u.pathname+u.search}catch{}return"script|src|"+n+"|"+r}return"script|inline|"+n+"|"+Si(e.textContent.trim())}var Oi={match:e=>e.hasAttribute("merge"),identity:e=>e.getAttribute("merge")};function Cl(e,l=[],t=!1){if(!rn(e)||e.hasAttribute("src"))return null;let n=[Oi,...l];for(let r=0;r<n.length;r++){let u=n[r];if(!u.match(e))continue;if(!Ei(e))return t&&console.warn("[hyper-morph] merge ignored: script type is not JSON",e),null;let o=u.identity(e);return o==null||o===""?null:{key:r+":"+o,raw:o,recognizer:u}}return null}function Ci(e,l,t){let n=new Set,r=u=>{rn(u)&&!l(u)&&n.add(Yl(u,t))};r(e);for(let u of e.querySelectorAll("script"))r(u);return n}function er(e,l){let t=l.createElement("div");t.innerHTML="<script><\/script>";let n=t.firstChild;for(let r of e.attributes)n.setAttribute(r.name,r.value);return n.textContent=e.textContent,n}function Ri(e,l,t){let n=[],r=[],u=new Map,o=t.trackRecovery?new Set:null,a=Array.from(e.querySelectorAll("script"));rn(e)&&a.unshift(e);for(let i of a){if(!rn(i)||t.ignored(i)||t.skip.has(i)||l.has(Yl(i,t.baseURI)))continue;let f=i.ownerDocument.createElement("script");for(let y of i.attributes)f.setAttribute(y.name,y.value);if(f.textContent=i.textContent,t.beforeNodeAdded(f)===!1){o?.add(i);continue}f.hasAttribute("src")&&r.push(new Promise(y=>{f.addEventListener("load",()=>y()),f.addEventListener("error",()=>y())})),i.replaceWith(f),u.set(i,f),t.afterNodeAdded(f),n.push(f)}return{executed:n,loads:r,swapped:u,vetoed:o}}function Ii(e){let l=5381;for(let t=0;t<e.length;t++)l=(l<<5)+l^e.charCodeAt(t);return(l>>>0).toString(36)}function Pi(e,l){try{let t=new URL(e,l);return t.origin+t.pathname+t.search}catch{return e}}function Wi(e,l){let t=e.tagName;if(t==="TITLE"||t==="BASE")return t;if(t==="SCRIPT")return Yl(e,l);if(t==="LINK"){let n=e.getAttribute("href");return n?"link|"+(e.getAttribute("rel")||"")+"|"+Pi(n,l):e.outerHTML}if(t==="META"){for(let n of["charset","name","property","http-equiv","itemprop"])if(e.hasAttribute(n))return"meta|"+n+"="+e.getAttribute(n);return e.outerHTML}return t==="STYLE"?"style|"+Ii(e.textContent):e.outerHTML}function tr(e,l){for(;;){for(;l<e.length&&/\s/.test(e[l]);)l++;if(e[l]==="/"&&e[l+1]==="/"){for(;l<e.length&&e[l]!==`
|
|
4
|
+
`;)l++;continue}if(e[l]==="/"&&e[l+1]==="*"){let t=e.indexOf("*/",l+2);if(t===-1)return e.length;l=t+2;continue}return l}}function to(e){return e.replace(/\\'/g,"'").replace(/(\\*)"/g,(l,t)=>t.length%2===0?t+'\\"':l)}var Bi=/^-?(0|[1-9]\d*)(\.\d+)?([eE][+-]?\d+)?$/,Di=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function no(e){try{return JSON.parse(e)}catch{return JSON.parse(ji(e))}}function ji(e){let l="",t=0,n=(r,u)=>{throw new Error(`Invalid relaxed JSON: ${r} at position ${u}`)};for(;t<e.length&&(t=tr(e,t),!(t>=e.length));){let r=e[t];if("{}[]:".includes(r)){l+=r,t++;continue}if(r===","){let a=tr(e,t+1);if(e[a]==="}"||e[a]==="]"){t++;continue}l+=r,t++;continue}if(r==='"'||r==="'"){let a=t+1;for(;a<e.length&&e[a]!==r;)e[a]==="\\"&&a++,a++;a>=e.length&&n("unterminated string",t);let i=e.slice(t+1,a);r==="'"&&(i=to(i)),l+='"'+i+'"',t=a+1;continue}let u=t;for(;u<e.length&&/[A-Za-z0-9_$.+\-]/.test(e[u]);)u++;u===t&&n("unexpected character "+JSON.stringify(r),t);let o=e.slice(t,u);if(o==="true"||o==="false"||o==="null"||Bi.test(o)){l+=o,t=u;continue}if(Di.test(o)){if(e[tr(e,u)]===":"){l+='"'+o+'"',t=u;continue}n("unquoted value "+JSON.stringify(o),t)}n("invalid token "+JSON.stringify(o),t)}return l}function Ui(e){try{return JSON.parse(e)}catch{}let l={BRACE_OPEN:"{",BRACE_CLOSE:"}",BRACKET_OPEN:"[",BRACKET_CLOSE:"]",COLON:":",COMMA:",",STRING:"STRING",SELECTOR:"SELECTOR",IDENTIFIER:"IDENTIFIER",NUMBER:"NUMBER",BOOLEAN:"BOOLEAN"};function t(r){let u=[],o=0;for(;o<r.length;){let a=r[o];if(/\s/.test(a)){o++;continue}if("{}".includes(a)){u.push({type:a,value:a}),o++;continue}if(a==="["){let c=!1,g=o+1;for(;g<r.length&&/\s/.test(r[g]);)g++;if(g<r.length&&/[a-zA-Z_]/.test(r[g])&&(c=!0),!c){u.push({type:a,value:a}),o++;continue}}if(a==="]"){u.push({type:a,value:a}),o++;continue}if(a===":"){u.push({type:l.COLON,value:a}),o++;continue}if(a===","){u.push({type:l.COMMA,value:a}),o++;continue}if(a==='"'||a==="'"){let c=a,g=o+1;for(;g<r.length&&r[g]!==c;)r[g]==="\\"&&g++,g++;u.push({type:l.STRING,value:r.substring(o+1,g),quoted:!0,sourceQuote:c}),o=g+1;continue}let i=o,f;for(;i<r.length&&!/[{},]/.test(r[i]);)if(r[i]===":"){let c=[":first",":last",":nth-child",":nth-of-type",":first-child",":last-child",":first-of-type",":last-of-type",":only-child",":only-of-type",":hover",":focus",":active",":visited",":disabled",":enabled",":checked",":empty",":root",":target",":not",":before",":after",":nth-last-child",":nth-last-of-type"],g=!1;for(let w of c){let N=w.substring(1);if(r.substring(i+1,i+1+N.length)===N){g=!0,i+=N.length;break}}if(!g)break}else if(r[i]==="["){for(i++;i<r.length&&r[i]!=="]";){if(r[i]==='"'||r[i]==="'"){let c=r[i];for(i++;i<r.length&&r[i]!==c;)r[i]==="\\"&&i++,i++}i++}i<r.length&&r[i]==="]"&&i++}else i++;f=r.substring(o,i);let y=l.IDENTIFIER;/^-?\d+(\.\d+)?$/.test(f)?y=l.NUMBER:f==="true"||f==="false"||f==="null"?y=l.BOOLEAN:/^[.#@\[]|[.#@\[]| /.test(f)&&(y=l.SELECTOR),u.push({type:y,value:f,quoted:!1}),o=i}return u}function n(r){let u="";for(let o=0;o<r.length;o++){let a=r[o];if("{}".includes(a.type)||"[]".includes(a.type)){u+=a.value;continue}if(a.type===l.COLON){u+=a.value;continue}if(a.type===l.COMMA){let i=r[o+1];if(i&&(i.type==="}"||i.type==="]"))continue;u+=a.value;continue}if(a.type===l.STRING){let i=a.value;a.sourceQuote==="'"&&(i=to(i)),u+=`"${i}"`;continue}if(a.type===l.NUMBER||a.type===l.BOOLEAN){u+=a.value;continue}u+=`"${a.value}"`}return u}try{let r=t(e),u=n(r);return JSON.parse(u)}catch(r){throw new Error("Invalid extraction rules syntax: "+r.message)}}var qt=Symbol("hyper-morph-json-merge:missing"),Hi=["id","_id","uuid","key","slug","code","name"];function Zn(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function fl(e,l){return Object.prototype.hasOwnProperty.call(e,l)}function qi(e,l,t){Object.defineProperty(e,l,{value:t,enumerable:!0,writable:!0,configurable:!0})}var Vi=/^[A-Za-z_$][\w$]*$/;function zi(e,l){return Vi.test(l)?e===""?l:e+"."+l:e+"["+JSON.stringify(l)+"]"}function Ki(e,l){return e===""?l:e+"."+l}function Rl(e,l,t,n,r,u){if(e.onConflict){let o=a=>a===qt?void 0:a;e.onConflict({path:l,base:o(t),local:o(n),remote:o(r),resolved:o(u)})}return u}function On(e,l){if(e===l)return!0;if(Array.isArray(e)&&Array.isArray(l)){if(e.length!==l.length)return!1;for(let t=0;t<e.length;t++)if(!On(e[t],l[t]))return!1;return!0}if(Zn(e)&&Zn(l)){let t=Object.keys(e);if(t.length!==Object.keys(l).length)return!1;for(let n of t)if(!fl(l,n)||!On(e[n],l[n]))return!1;return!0}return!1}function nr(e,l,t,n,r,u){return On(l,t)?l:On(l,e)?t:On(t,e)?l:Zn(l)&&Zn(t)?_i(Zn(e)?e:{},l,t,n,r,u):Array.isArray(l)&&Array.isArray(t)?$i(e,l,t,n,r,u):Rl(n,r,e,l,t,t)}function lo(e,l,t,n,r,u){return l===qt&&t===qt?qt:l===qt?e===qt?t:On(t,e)?qt:Rl(n,r,e,l,t,t):t===qt?e===qt?l:On(l,e)?qt:Rl(n,r,e,l,t,qt):nr(e,l,t,n,r,u)}function _i(e,l,t,n,r,u){let o={},a=new Set([...Object.keys(e),...Object.keys(l),...Object.keys(t)]);for(let i of a){let f=lo(fl(e,i)?e[i]:qt,fl(l,i)?l[i]:qt,fl(t,i)?t[i]:qt,n,zi(r,i),Ki(u,i));f!==qt&&qi(o,i,f)}return o}function Li(e){return e===null||typeof e!="object"}function Il(e){return typeof e+":"+String(e)}function Gi(e,l){for(let t of l){let n=new Set;for(let r of t){if(!fl(r,e))return!1;let u=r[e];if(typeof u!="string"&&typeof u!="number")return!1;let o=Il(u);if(n.has(o))return!1;n.add(o)}}return!0}function Xi(e,l,t,n,r){let u=[e,l,t],o=!0;for(let a of u)for(let i of a)Zn(i)||(o=!1);if(o){let a=n.keyPaths.get(r),i=a!==void 0?[a]:n.keyCandidates;for(let f of i)if(Gi(f,u))return{kind:"keyed",field:f};return null}for(let a of u){let i=new Set;for(let f of a){if(!Li(f))return null;let y=Il(f);if(i.has(y))return null;i.add(y)}}return{kind:"self"}}function $i(e,l,t,n,r,u){let o=Array.isArray(e)?e:[],a=Xi(o,l,t,n,u),i=Array.isArray(e)&&e.length===l.length&&e.length===t.length;if(!a||a.kind==="self"&&i)return i?l.map((O,b)=>nr(e[b],O,t[b],n,r+"["+b+"]",u)):Rl(n,r,e,l,t,t);let f=a.kind==="self"?Il:O=>Il(O[a.field]),y=O=>a.kind==="self"?r+"["+JSON.stringify(O)+"]":r+"["+a.field+"="+JSON.stringify(O[a.field])+"]",c=new Map,g=O=>{let b=new Map;for(let A of O){let E=f(A);b.set(E,A),c.has(E)||c.set(E,y(A))}return b},w=g(o),N=g(l),R=g(t),m=new Map,d=new Set([...w.keys(),...N.keys(),...R.keys()]);for(let O of d){let b=lo(w.has(O)?w.get(O):qt,N.has(O)?N.get(O):qt,R.has(O)?R.get(O):qt,n,c.get(O),u);b!==qt&&m.set(O,b)}let p=[];for(let O of t){let b=f(O);m.has(b)&&p.push(b)}for(let O=0;O<l.length;O++){let b=f(l[O]);if(!m.has(b)||p.includes(b))continue;let A=0;for(let E=O-1;E>=0;E--){let B=p.indexOf(f(l[E]));if(B!==-1){A=B+1;break}}p.splice(A,0,b)}return p.map(O=>m.get(O))}function Fi(e){let l=new Map,t=[];for(let n of e.keyCandidates||[]){let r=n.lastIndexOf(":");r>=0?l.set(n.slice(0,r),n.slice(r+1)):t.push(n)}return{keyCandidates:[...t,...Hi],keyPaths:l,onConflict:e.onConflict||null}}function ro(e,l,t,n={}){return nr(e===void 0?qt:e,l,t,Fi(n),"","")}function Zi(e,l){let t=/^\s*/.exec(l)[0],n=/\s*$/.exec(l.slice(t.length))[0],r=l.slice(t.length,l.length-n.length),u=t.slice(t.lastIndexOf(`
|
|
5
|
+
`)+1),o=/\n([ \t]+)\S/.exec(r),a;if(!o)a=JSON.stringify(e);else{let i=o[1],f=i.length>u.length&&i.startsWith(u)?i.slice(u.length):" ";a=JSON.stringify(e,null,f).replace(/\n/g,`
|
|
6
|
+
`+u)}return t+a.replace(/</g,"\\u003c")+n}function oo(e,l,t,n={}){let r=n.parse||no,u=[],o=[],a=(g,w)=>{if(typeof g!="string")return qt;try{return r(g)}catch(N){return u.push(`${w} side is not valid JSON (${N.message})`),qt}},i=a(l,"local"),f=a(t,"remote");if(i===qt)return{text:t,warnings:u,conflicts:o};if(f===qt)return{text:l,warnings:u,conflicts:o};let y=a(e,"base"),c=ro(y===qt?void 0:y,i,f,{...n,onConflict:g=>{o.push(g),n.onConflict?.(g)}});return On(c,f)?{text:t,warnings:u,conflicts:o}:On(c,i)?{text:l,warnings:u,conflicts:o}:{text:Zi(c,t),warnings:u,conflicts:o}}var io=e=>e.nodeType===3||e.nodeType===8?e.nodeValue.length:e.childNodes.length;function ul(e){if(!e)return!1;let{startContainer:l,startOffset:t,endContainer:n,endOffset:r}=e;if(!l||!n||!Number.isInteger(t)||!Number.isInteger(r)||t<0||r<0||t>io(l)||r>io(n)||l.getRootNode()!==n.getRootNode())return!1;let u=l.ownerDocument.createRange();return u.setStart(l,t),u.setEnd(n,r),u.startContainer===l&&u.startOffset===t}function Qn(e,l,t={}){if(!ul(e))return null;let{startContainer:n,startOffset:r,endContainer:u,endOffset:o}=e;if(n===u&&(n.nodeType===3||n.nodeType===8))return n.nodeValue.slice(r,o);if(n===u&&r===o)return"";let a=new Set;for(let m=n;m;m=m.parentNode)a.add(m);let i=u;for(;!a.has(i);)i=i.parentNode;let f=(m,d)=>{let p=i.ownerDocument.createRange(),O=i.ownerDocument.createRange();return p.setStart(m[0],m[1]),p.collapse(!0),O.setStart(d[0],d[1]),O.collapse(!0),p.compareBoundaryPoints(0,O)},y=(m,d=!1)=>[m.parentNode,Array.prototype.indexOf.call(m.parentNode.childNodes,m)+Number(d)],c=[],g;if(l==="plain"){g="";let m=d=>{if(d.nodeType===3||d.nodeType===8){let p=g.length;g+=d.nodeValue,c.push({s:p,e:g.length,a:[d,0],b:[d,d.nodeValue.length],node:d})}else for(let p of d.childNodes)m(p)};m(i)}else{let m=t.blocks;if(!m){m=new Set;let p=O=>{O!==i&&O.nodeType===1&&Wr.has(O.tagName)&&m.add(O);for(let b of O.childNodes)p(b)};p(i)}let d=Jt(Array.from(i.childNodes),{blocks:m,atomize:p=>!!t.atoms?.has(p),ignored:t.ignored});g=d.text;for(let p of d.nodes)c.push({s:p.s,e:p.e,a:[p.node,0],b:[p.node,p.e-p.s],node:p.node});for(let p of d.atoms)c.push({s:p.i,e:p.i+1,a:y(p.el),b:y(p.el,!0)});for(let p=0;p<d.text.length;p++){if(d.text[p]!==xt)continue;let O=d.marks.find(A=>A.block&&A.to===p+1),b=d.marks.find(A=>A.block&&A.from===p+1);if(O)c.push({s:p,e:p+1,a:[O.el,O.el.childNodes.length],b:y(O.el,!0)});else if(b)c.push({s:p,e:p+1,a:y(b.el),b:[b.el,0]});else return null}}c.sort((m,d)=>m.s-d.s);let w=m=>{if(m[0].nodeType===3||m[0].nodeType===8){let p=c.find(O=>O.node===m[0]);return p?p.s+m[1]:null}let d=0;for(let p of c){if(f(m,p.a)<=0)return p.s;if(f(m,p.b)<0)return null;d=p.e}return d},N=w([n,r]),R=w([u,o]);return N!==null&&R!==null&&N<=R?g.slice(N,R):null}function dl(e,l){let t=e;for(let n of l.path)if(t=n==="content"?t?.content:t?.childNodes[n],!t)return null;return[t,l.offset]}function Qi(e,l){if(!e||!l)return null;let t=dl(e,l.start),n=dl(e,l.end);return t&&n?{startContainer:t[0],startOffset:t[1],endContainer:n[0],endOffset:n[1]}:null}var ao=e=>e.nodeType===1?e.outerHTML:e.nodeValue;function Ji(e,l,t){if(!l)return;let n=new Map,r=new Map,u=a=>{if(!a)return null;if(r.has(a))return r.get(a);let i=a.local.map(f=>dl(l.localRoot,{path:f,offset:0})?.[0]).map(f=>f&&t(f)).filter(Boolean).map(f=>({node:f,parent:f.parentNode,previous:f.previousSibling,next:f.nextSibling,fragment:ao(f)}));return r.set(a,i),i},o=a=>{let i=Qi(l.localRoot,a);if(!i)return null;let f=t(i.startContainer),y=t(i.endContainer);if(!f||!y)return null;let c={...i,startContainer:f,endContainer:y};return ul(c)?c:null};for(let a of e){let i=a.recovery;if(!i||n.has(i))continue;let f={subject:u(i.subject),span:null,scope:null,touched:new Set};if(i.text){f.span=o(i.text.local.span),f.scope=o(i.text.local.scope);let y=f.span;if(y){let c=y.startContainer.ownerDocument.createRange();c.setStart(y.startContainer,y.startOffset),c.setEnd(y.endContainer,y.endOffset);let g=w=>{if(c.intersectsNode(w)){f.touched.add(w);for(let N of w.childNodes)g(N)}};g(c.commonAncestorContainer)}}if(i.structure){for(let y of[i.structure.localPlacement])y&&(u(y.parent),y.before.forEach(u),y.after.forEach(u));for(let y of i.structure.localOrder||[])u(y)}n.set(i,f)}l.localState={states:n,refs:r}}function Yi(e,l,t,n){let r=t.localState?.states.get(e);if(!r)return!1;let u=a=>{let i=a.node;if(!n(i)||i.parentNode!==a.parent)return!1;let f=y=>Array.prototype.indexOf.call(i.parentNode.childNodes,y);return!(a.previous&&n(a.previous)&&a.previous.parentNode===i.parentNode&&f(a.previous)>=f(i)||a.next&&n(a.next)&&a.next.parentNode===i.parentNode&&f(a.next)<=f(i))};if(e.structure?.localAction==="deleted")return e.subject.live.length===0;if(!r.subject.length||!r.subject.every(u))return!1;if(e.text){let a=e.text.local,i=f=>f&&n(f.startContainer)&&n(f.endContainer);return i(r.span)&&i(r.scope)&&Qn(r.scope,e.text.encoding)===a.text&&Qn(r.span,e.text.encoding)===a.text.slice(a.start,a.end)}if(e.attribute){let a=e.attribute,i=r.subject[0].node;return(a.namespaceURI?i.getAttributeNS(a.namespaceURI,a.localName):i.getAttribute(a.qualifiedName))===l.local}let o=e.structure;if(o.localOrder){let a=-1,i=null;for(let f of o.localOrder){let y=t.localState.refs.get(f)?.[0]?.node;if(!y||!n(y)||i&&y.parentNode!==i)return!1;let c=Array.prototype.indexOf.call(y.parentNode.childNodes,y);if(c<=a)return!1;i=y.parentNode,a=c}return!0}return o.localAction==="moved"||r.subject.every(a=>ao(a.node)===a.fragment)}var ea=1,Zt=e=>!!e&&e.nodeType===1,Pl=e=>Zt(e)&&e.tagName==="TEMPLATE"&&!!e.content;function Un(e,l=null,t=null){let n=new Map,r=new Map,u=i=>{if(!l){l=new WeakMap;let f=[e];for(;f.length;){let y=f.pop();Pl(y)&&(l.set(y.content,y),f.push(y.content));for(let c=y.firstChild;c;c=c.nextSibling)c.nodeType===1&&f.push(c)}}return l.get(i)||null},o=(i,f)=>{let y=r.get(i);if(!y){y=new Map;let c=0;for(let g=i.firstChild;g;g=g.nextSibling)y.set(g,c++);r.set(i,y)}return y.get(f)},a=i=>{if(!i)return null;if(t&&t.has(i))return a(t.get(i));if(i===e)return[];let f=n.get(i);if(f!==void 0)return f;let y=i.parentNode,c=null;if(y&&y.nodeType===11){let g=u(y),w=g?a(g):null;w&&(c=w.concat(["content",o(y,i)]))}else if(y){let g=a(y);g&&(c=g.concat([o(y,i)]))}return n.set(i,c),c};return{root:e,pathOf:a,logicalParent:i=>{let f=i.parentNode;return f&&f.nodeType===11?u(f):f},indexIn:o,containerPath:i=>{if(i.nodeType===11){let y=u(i),c=a(y);return c?c.concat(["content"]):null}let f=a(i);return f&&Pl(i)?f.concat(["content"]):f},ownerOf:u}}var gn=e=>Pl(e)?e.content:e;function ta(e){let{L:l,R:t,unitsOf:n,provenance:r,policy:u}=e,o=[];return{note:(i,f)=>{o.push([i,f])},finish:i=>o.length?a(i):null};function a(i){let f={base:Un(e.roots.base),local:Un(e.roots.local),remote:Un(e.roots.remote)},y=G=>G==="local"?l:t,c=(G,Y)=>{if(!Y)return null;if(G.map.has(Y))return G.map.get(Y);let we=[],h=Zt(Y)?f.base.logicalParent(Y):Y.parent;for(;h&&!G.map.has(h);h=f.base.logicalParent(h))we.push(h);if(!h||!G.identical.has(h))return null;let P=G.map.get(h);for(let X=we.length-1;X>=0&&P;X--)P=gn(P).childNodes[f.base.indexIn(we[X].parentNode,we[X])];return P?Zt(Y)?gn(P).childNodes[f.base.indexIn(Y.parentNode,Y)]||null:n(P)[n(Y.parent).indexOf(Y)]||null:null},g=new Map,w=new Map,N=new WeakMap,R=0,m=(G,Y)=>{let we=g.get(G);we||g.set(G,we=[]),we.push(Y)};(function G(Y){w.set(Y,R++);let we=r.get(Y);if(we&&!we.pinned){for(let h of[we.base,we.local,we.remote])if(h)if(Array.isArray(h))for(let P of h)m(P,Y);else m(h,Y)}if(Pl(Y)){N.set(Y.content,Y);for(let h=Y.content.firstChild;h;h=h.nextSibling)G(h)}for(let h=Y.firstChild;h;h=h.nextSibling)G(h)})(i);let d=new Map;f.out=Un(i,N,d);let p={refs:new Map,spans:new Map,anchors:new Map,via:d,outOwners:N,outRoot:i,localRoot:e.roots.local},O=G=>Zt(G)?[G]:G.nodes,b=(G,Y)=>{let we=f[Y].logicalParent(G);if(!we)return null;for(let h of n(we))if(!Zt(h)&&h.nodes.includes(G))return h;return null},A=(G,Y)=>G==null?null:Array.isArray(G)?G.length?b(G[0],Y):null:G,E=G=>{let Y=new Set,we=[];for(let h of G)for(let P of g.get(h)||[])Y.has(P)||(Y.add(P),we.push(P));return we.sort((h,P)=>w.get(h)-w.get(P))},B=new Map,T=G=>{let Y=G.b||G.l||G.r,we=B.get(Y);if(we)return we;let h=[];for(let P of[G.b,G.l,G.r])P&&h.push(...O(P));return we=E(h),B.set(Y,we),we},M=G=>({b:G,l:c(l,G),r:c(t,G)}),D=(G,Y)=>{let we=y(Y).reverse.get(G);if(we)return M(we);for(let h of E(O(G))){let P=r.get(h);if(P&&!P.base&&P.local&&P.remote)return{b:null,l:A(P.local,"local"),r:A(P.remote,"remote")}}return Y==="local"?{b:null,l:G,r:null}:{b:null,l:null,r:G}},z=new Map,U=G=>{let Y=r.get(G);if(!Y||Y.pinned)return null;let we=A(Y.base,"base");if(we)return M(we);let h=A(Y.local,"local"),P=A(Y.remote,"remote");if(h){let X=l.reverse.get(h);if(X)return M(X)}if(P){let X=t.reverse.get(P);if(X)return M(X)}return h||P?{b:null,l:h,r:P}:null},j=G=>(z.has(G)||z.set(G,U(G)),z.get(G)),k=(G,Y)=>Zt(G)?f[Y].logicalParent(G):G.parent,v=new Map,J=new Map,q=(G,Y)=>(Zt(G)?[f[Y].pathOf(G)]:G.nodes.map(we=>f[Y].pathOf(we))).filter(Boolean),V=G=>{let Y=G.b||G.l||G.r,we=G.b?"base":G.l?"local":"remote",h=J.get(Y);if(h)return h;let P=!Zt(Y),X=q(Y,we)[0],le=`${we[0]}:${JSON.stringify(X===void 0?null:X)}${P?":run":""}`,te=v.get(le);if(te)return J.set(Y,te),te;let H=T(G);return te={key:le,nodeType:Zt(Y)?1:Y.kind==="comment"?8:3,base:G.b?q(G.b,"base"):[],local:G.l?q(G.l,"local"):[],remote:G.r?q(G.r,"remote"):[],merged:H.map(ke=>f.out.pathOf(ke)).filter(Boolean),live:[]},v.set(le,te),J.set(Y,te),p.refs.set(te,H),te},Ae={base:new Map,local:new Map,remote:new Map},Ie=new Map,De=(G,Y)=>{let we=k(G,Y);if(!we||we.nodeType!==1)return null;let h=Ae[Y].get(we);if(!h){let X=n(we),le=te=>V(Y==="base"?M(te):D(te,Y));h={parent:le(we),refs:X.map(le),index:new Map(X.map((te,H)=>[te,H]))},Ae[Y].set(we,h)}let P=h.index.get(G)??-1;return{parent:h.parent,before:h.refs.slice(P+1),after:h.refs.slice(0,Math.max(0,P)).reverse()}},ce=G=>{let Y=G.parentNode;if(!Y)return null;let we=Ie.get(Y);if(!we){let P=Y.nodeType===11?N.get(Y):Y,X=P&&P.nodeType===1?j(P):null;if(!X)return null;let le=[],te=[],H=new Map;for(let Me of Y.childNodes){let Te=j(Me),Be=Te&&V(Te),_=le.length,K=le.length-1;Be&&Be!==le[K]&&(le.push(Be),K++);let de={ref:Be,group:K,after:_};te.push(de),H.set(Me,de)}let ke=le.length;for(let Me=te.length-1;Me>=0;Me--){let Te=te[Me];Te.before=ke,Te.ref&&(ke=Te.group)}we={parent:V(X),refs:le,index:H},Ie.set(Y,we)}let h=we.index.get(G);return{parent:we.parent,before:we.refs.slice(h.before),after:we.refs.slice(0,h.after).reverse()}},Ne=G=>Zt(G)?G.outerHTML:G.value,Xe=G=>Zt(G)?"element":G.kind==="comment"?"comment":"text",ie=(G,Y)=>({path:G,offset:Y}),x=(G,Y,we)=>{if(!G)return null;let h=f[we],P=0;if(Y){let X=Zt(Y)?Y:Y.nodes[Y.nodes.length-1];X.parentNode&&(P=h.indexIn(X.parentNode,X)+1)}return ie(h.containerPath(G),P)},Z=(G,Y)=>{let we=k(G,"base"),h=we?c(y(Y),we):null;if(!Zt(h))return null;let P=n(we),X=null;for(let le=P.indexOf(G)-1;le>=0&&!X;le--){let te=c(y(Y),P[le]);te&&k(te,Y)===h&&(X=te)}return x(h,X,Y)},ue=(G,Y,we,h)=>{let P=f[h],X=0;for(let le=0;le<G.nodes.length;le++){let te=G.nodes[le],H=te.nodeValue.length,ke=le===G.nodes.length-1;if((we==="start"?Y<X+H:Y<=X+H)||ke)return ie(P.pathOf(te),Math.max(0,Math.min(Y-X,H)));X+=H}return null},fe=(G,Y)=>{let we=f[Y],h=G.firstChild,P=G.lastChild;return h&&h.nodeType===3&&P.nodeType===3?{start:ie(we.pathOf(h),0),end:ie(we.pathOf(P),P.nodeValue.length)}:{start:ie(we.pathOf(G),0),end:ie(we.pathOf(G),G.childNodes.length)}},Pe=(G,Y,we)=>{for(let le of G.nodes)if(we==="start"?le.s<=Y&&Y<le.e:le.s<Y&&Y<=le.e)return{kind:"text",node:le.node,offset:Y-le.s};let h=we==="start"?Y:Y-1,P=()=>{for(let le of G.nodes)if(le.s===Y||le.e===Y)return{kind:"text",node:le.node,offset:Y-le.s};return null},X=G.atomAt.get(h);if(X)return{kind:we==="start"?"before":"after",node:X.el};if(G.text[h]===xt){let le=G.marks.find(H=>H.block&&H.to===h+1);if(le)return we==="start"?{kind:"end",node:le.el}:{kind:"after",node:le.el};let te=G.marks.find(H=>H.block&&H.from===h+1);if(te)return we==="start"?{kind:"before",node:te.el}:{kind:"startOf",node:te.el}}return P()},Ve=(G,Y)=>Pe(G,Y,"end")||Pe(G,Y,"start"),Oe=(G,Y)=>{switch(Y.kind){case"text":return ie(G.pathOf(Y.node),Y.offset);case"end":return ie(G.containerPath(Y.node),gn(Y.node).childNodes.length);case"startOf":return ie(G.containerPath(Y.node),0);default:{let we=Y.node.parentNode;return ie(G.containerPath(we),G.indexIn(we,Y.node)+(Y.kind==="after"?1:0))}}},tt=(G,Y,we,h,P)=>{let X=Pe(G,Y,we);return X?Oe(f[h],X):P()},et=(G,Y,we,h)=>{let P=G.textNodes.map(ke=>({s:ke.ms,e:ke.me,start:{kind:"text",node:ke.node,offset:0},end:{kind:"text",node:ke.node,offset:ke.me-ke.ms}}));for(let[ke,Me]of G.atomOut)P.push({s:ke,e:ke+1,start:{kind:"before",node:Me},end:{kind:"after",node:Me}});for(let[ke,Me]of G.breakOut)P.push({s:ke,e:ke+1,start:{kind:"end",node:Me},end:{kind:"after",node:Me}});for(let ke of P)if(ke.start.kind==="text"&&ke.s<Y&&Y<ke.e)return{kind:"text",node:ke.start.node,offset:Y-ke.s};if(we!=="empty"){let ke=P.find(Me=>we==="start"?Me.s===Y:Me.e===Y);if(ke)return we==="start"?ke.start:ke.end}let X=P.find(ke=>ke.e===Y);if(X)return X.end;let le=P.find(ke=>ke.s===Y);if(le)return le.start;let te=null,H=null;for(let ke of P)ke.e<=Y&&(!te||ke.e>te.e)&&(te=ke),ke.s>=Y&&(!H||ke.s<H.s)&&(H=ke);return te?te.end:H?H.start:h()},ct=(G,Y)=>{if(!Y)return null;if(Y.kind==="text"){let P=G.nodes.find(X=>X.node===Y.node);return P?P.s+Math.min(Y.offset,P.e-P.s):null}let we=G.atoms.find(P=>P.el===Y.node);if(we)return Y.kind==="after"?we.i+1:we.i;let h=G.marks.find(P=>P.el===Y.node);return h?Y.kind==="before"&&h.block&&G.text[h.from-1]===xt&&!G.marks.some(P=>P.block&&P.to===h.from)?h.from-1:Y.kind==="startOf"||Y.kind==="before"?h.from:Y.kind==="end"&&h.block?h.to-1:h.to:null},Qe=(G,Y,we,h)=>{for(let te of G.nodes)if(we==="start"?te.s<=Y&&Y<te.e:te.s<Y&&Y<=te.e)return{kind:"text",node:te.node,offset:Y-te.s};let P=we==="start"?Y:Y-1;if(!G.atomAt.has(P)&&G.text[P]!==xt){for(let te of G.nodes)if(te.s===Y||te.e===Y)return{kind:"text",node:te.node,offset:Y-te.s}}let X=G.atomAt.get(P);if(X)return{kind:we==="start"?"before":"after",node:X.el};if(G.text[P]===xt){let te=G.marks.find(ke=>ke.block&&ke.to===P+1);if(te)return we==="start"?{kind:"end",node:te.el}:{kind:"after",node:te.el};let H=G.marks.find(ke=>ke.block&&ke.from===P+1);if(H)return we==="start"?{kind:"before",node:H.el}:{kind:"startOf",node:H.el}}let le=G.marks.find(te=>te.block&&te.from===Y);return le?{kind:"startOf",node:le.el}:h?{kind:we==="start"?"startOf":"end",node:h}:null},lt=G=>{if(!G)return null;if(G.kind==="wholeStart"||G.kind==="wholeEnd"){let Y=Mt(G.node);return G.kind==="wholeStart"?Y.start:Y.end}return Oe(f.out,G)},Mt=G=>{let Y=G.firstChild,we=G.lastChild;return Y&&Y.nodeType===3&&we.nodeType===3?{start:ie(f.out.pathOf(Y),0),end:ie(f.out.pathOf(we),we.nodeValue.length)}:{start:ie(f.out.pathOf(G),0),end:ie(f.out.pathOf(G),G.childNodes.length)}},Ut=G=>{let Y=k(G,"base"),we=Y?T(M(Y))[0]:null;if(!we)return null;let h=gn(we),P=n(Y);for(let X=P.indexOf(G)-1;X>=0;X--){let le=T(M(P[X])).filter(te=>te.parentNode===h);if(le.length)return{kind:"after",node:le[le.length-1]}}return{kind:"startOf",node:we}},bt=(G,Y,we,h,P,X)=>({text:G,start:Y,end:we,fragment:h,span:P,scope:X}),vt=(G,Y,we,h,P)=>bt(G,Y,we,G.slice(Y,we),h,P),St=(G,Y,we,h,P)=>(p.spans.set(G,{start:Y,end:we,scopeStart:h,scopeEnd:P}),G),Kt=new Map,ln=new Map,Et=(G,Y,we)=>{let h=`text:${G.key}:${Y}:${we}`,P=ln.get(h)||0;return ln.set(h,P+1),`${h}:${P}`},_t=(G,Y)=>{let we,h,P,X="plain",le,te,H,ke,Me,Te=(K,de,Ee,ge,ee)=>{if(!K){let pe=Z(ee,ge);return vt("",0,0,{start:pe,end:pe},{start:pe,end:pe})}return vt(K.value,de,Ee,{start:ue(K,de,de===Ee?"end":"start",ge),end:ue(K,Ee,"end",ge)},{start:ue(K,0,"start",ge),end:ue(K,K.value.length,"end",ge)})};if(Y.site==="run"){let{bRun:K,lRun:de,rRun:Ee,node:ge,c:ee}=Y;we=M(K),h=ee.bs,P=ee.be,le=Te(K,ee.bs,ee.be,"base",K),te=Te(de,ee.ls,ee.le,"local",K),H=Te(Ee,ee.rs,ee.re,"remote",K);let pe=ge?ge.nodeValue:"",F=re=>ge?{kind:"text",node:ge,offset:re}:Ut(K);ke=St(vt(pe,ee.ms,ee.me,{start:lt(F(ee.ms)),end:lt(F(ee.me))},{start:lt(F(0)),end:lt(F(pe.length))}),F(ee.ms),F(ee.me),F(0),F(pe.length)),Me=ge||(Ut(K)||{}).node||null}else if(Y.site==="whole"){let K=Y.el,de=r.get(K);we=M(de.base),h=0,P=G.base.length;let Ee=(ee,pe,F)=>{let re=fe(pe,F);return vt(ee,0,ee.length,re,re)};le=Ee(G.base,de.base,"base"),te=Ee(G.local,de.local,"local"),H=Ee(G.remote,de.remote,"remote");let ge=Mt(K);ke=St(vt(G.resolved,0,G.resolved.length,ge,ge),{kind:"wholeStart",node:K},{kind:"wholeEnd",node:K},{kind:"wholeStart",node:K},{kind:"wholeEnd",node:K}),Me=K}else if(Y.site==="comment"){let{bRun:K,lRun:de,rRun:Ee,node:ge}=Y;we=M(K),h=0,P=G.base.length;let ee=(Se,je)=>{if(!Se){let Je=Z(K,je);return vt("",0,0,{start:Je,end:Je},{start:Je,end:Je})}let Ue=Se.nodes[0],xe={start:ie(f[je].pathOf(Ue),0),end:ie(f[je].pathOf(Ue),Se.value.length)};return vt(Se.value,0,Se.value.length,xe,xe)};le=ee(K,"base"),te=ee(de,"local"),H=ee(Ee,"remote");let pe=G.resolved,F=Se=>ge?{kind:"text",node:ge,offset:Se}:Ut(K),re={start:lt(F(0)),end:lt(F(pe.length))};ke=St(vt(pe,0,pe.length,re,re),F(0),F(pe.length),F(0),F(pe.length)),Me=ge||(Ut(K)||{}).node||null}else{let{fb:K,fl:de,fr:Ee,scope:ge}=Y,ee=Y.merged;X="html",we=ge.base?M(ge.base):D(ge.local,"local"),h=G.bs,P=G.be;let pe=L=>{let ne=ge[L];for(let me=ge.at-1;me>=0;me--){let he=ge.units[me],ae=L==="base"?he:c(y(L),he);if(ae&&k(ae,L)===ne)return ae}return null},F=L=>()=>x(ge[L],pe(L),L),re=(L,ne,me,he,ae)=>{let se=Le=>Le?Oe(f[ae],Le):F(ae)(),Re=ne===me?Ve(L,ne):Pe(L,ne,"start"),_e=ne===me?Ve(L,ne):Pe(L,me,"end"),$e=se(Re),rt={start:$e,end:ne===me?$e:se(_e)},Ye=Y.full?Y.full(ae):null;if(!Ye)return bt(L.text,ne,me,he,rt,{start:se(Pe(L,0,"start")),end:se(Pe(L,L.text.length,"end"))});let at=Re?ct(Ye,Re):null,pt=_e?ct(Ye,_e):null,Nt=at===null?0:at,Tt=Math.max(Nt,pt===null?Ye.text.length:pt),Rt=se(Pe(Ye,0,"start"));return bt(Ye.text,Nt,Tt,sl(Ye,Nt,Tt),rt,{start:Rt,end:Ye.text.length?se(Pe(Ye,Ye.text.length,"end")):Rt})};le=Y.synthetic?null:re(K,G.bs,G.be,G.base,"base"),te=re(de,G.lss,G.lse,G.local,"local"),H=re(Ee,G.rss,G.rse,G.remote,"remote");let[Se,je]=G.range||[0,0],Ue=ee.out,xe=()=>{let L=gn(ee.node);for(let ne=ge.at-1;ne>=0;ne--){let me=T(M(ge.units[ne])).filter(he=>he.parentNode===L);if(me.length)return{kind:"after",node:me[me.length-1]}}for(let ne=ge.at;ne<ge.units.length;ne++){let me=T(M(ge.units[ne])).filter(he=>he.parentNode===L);if(me.length)return{kind:"before",node:me[0]}}return{kind:"startOf",node:ee.node}};if(Ue.via)for(let[L,ne]of Ue.via)d.set(L,ne);let Je=et(ee,Se,Se===je?"empty":"start",xe),it=Se===je?Je:et(ee,je,"end",xe),ft=Ue.text.length?Qe(Ue,0,"start",ee.node):xe(),Ht=Ue.text.length?Qe(Ue,Ue.text.length,"end",ee.node):ft,Wt=ct(Ue,Je),Gt=ct(Ue,it),Ct=Wt===null?0:Wt,Vt=Math.max(Ct,Gt===null?Ue.text.length:Gt);ke=St(bt(Ue.text,Ct,Vt,sl(Ue,Ct,Vt),{start:lt(Je),end:lt(it)},{start:lt(ft),end:lt(Ht)}),Je,it,ft,Ht);let C=p.spans.get(ke);if(C.flat=Ue,!Ue.text.length){let L=lt(ft),ne=dl(i,L),me=ne[0],he=ne[1];C.empty={parent:me.nodeType===11?N.get(me):me,previous:me.childNodes[he-1]||null,next:me.childNodes[he]||null}}Me=Je?Je.node:ee.node}let Be=V(we),_=(Y.site==="whole"||Y.site==="comment"||(Y.policy||u)!=="both")&&G.resolved!==G.local;return{key:Y.site==="comment"&&Kt.get(we.b||we.l||we.r)||Et(Be,h,P),subject:Be,localLost:_,anchor:Me,text:{encoding:X,base:le,local:te,remote:H,merged:ke,liveSpan:null,liveScope:null}}},on=(G,Y)=>{let we=j(Y.el),h=V(we),P=Y.sample;return{key:`attr:${h.key}:${P.namespaceURI||""}:${P.localName}`,subject:h,localLost:G.resolved!==G.local,anchor:Y.el,attribute:{namespaceURI:P.namespaceURI||null,localName:P.localName,qualifiedName:P.name}}},Bt=(G,Y)=>{let we=G.detail,h=Y.unit||M(Y.subject),P=V(h),X=p.refs.get(P),le=h.l?De(h.l,"local"):null,te=h.r?De(h.r,"remote"):null,H=X.length?ce(X[0]):null,ke,Me,Te,Be=null,_=null,K=Y.deleted;switch(we){case"both-reordered":{ke=Me="reordered";let de=new Set(Y.rKept),Ee=Y.lKept.filter(re=>de.has(re)&&T(M(re)).length),ge=re=>w.get(T(M(re))[0]);Be=Ee.map(re=>V(M(re))),_=Ee.slice().sort((re,Se)=>ge(re)-ge(Se)).map(re=>V(M(re)));let ee=re=>!Zt(re)&&re.kind!=="comment"&&re.nodes.every(Se=>!/[^\t\n\f\r ]/.test(Se.data)),pe=Ee.filter(re=>!ee(re)),F=pe.slice().sort((re,Se)=>ge(re)-ge(Se));Te=pe.some((re,Se)=>re!==F[Se]);break}case"both-moved":ke=Me="moved",Te=!le||!X.some(de=>{let Ee=de===X[0]?H:ce(de);return Ee&&Ee.parent===le.parent});break;case"edit-beats-delete":ke=K==="local"?"deleted":"edited",Me=K==="remote"?"deleted":"edited",Te=K==="local";break;case"move-beats-delete":ke=K==="local"?"deleted":"moved",Me=K==="remote"?"deleted":"moved",Te=K==="local";break;case"remote-wins":ke="edited",Me="edited",Te=!0;break;default:ke=Me="inserted",Te=Y.localLost}return{key:`structure:${P.key}:${we}`,subject:P,localLost:Te,anchor:X[0]||null,structure:{localAction:ke,remoteAction:Me,localPlacement:le,remotePlacement:te,mergedPlacement:H,localOrder:Be,mergedOrder:_,localFragment:we==="both-reordered"||!h.l?null:Ne(h.l),fragmentKind:Xe(h.b||h.l||h.r)}}};for(let[G,Y]of o){if(G.kind!=="structure")continue;let we=Y.unit||M(Y.subject),h=we.b||we.l||we.r;!Zt(h)&&h.kind==="comment"&&Kt.set(h,`structure:${V(we).key}:${G.detail}`)}let Lt=new Map;for(let[G,Y]of o){if(G.kind==="structure"){let X=V(Y.unit||M(Y.subject)),le=`structure:${X.key}:${G.detail}`,te=Lt.get(le);if(te&&te.structure){G.recovery=te;let H=p.refs.get(X);G.el==null&&H.length&&(G.el=Zt(H[0])?H[0]:f.out.logicalParent(H[0]));continue}}let we=G.kind==="text"?_t(G,Y):G.kind==="attr"?on(G,Y):Bt(G,Y),h=Lt.get(we.key);h||(h={version:ea,key:we.key,localLost:we.localLost,subject:we.subject,applied:!1,unavailable:null},Lt.set(we.key,h),p.anchors.set(h,we.anchor)),we.text&&(h.text=we.text),we.attribute&&(h.attribute=we.attribute),we.structure&&(h.structure=we.structure),we.text&&(h.localLost=we.localLost),G.recovery=h;let P=p.refs.get(we.subject);G.kind==="structure"&&G.el==null&&P.length&&(G.el=Zt(P[0])?P[0]:f.out.logicalParent(P[0])),G.kind==="text"&&G.node==null&&P.length&&we.subject.nodeType===8&&(G.node=P[0])}return p}}function na(e,l,t){if(!l)return;let{lookup:n,vetoed:r,vetoedAttrs:u,liveAttr:o}=t,a=t.ignored||(()=>!1),i=Un(t.liveRoot),f=k=>!!k&&i.containerPath(k)!==null,y=k=>{let v=k.parentNode;return v&&v.nodeType===11?l.outOwners.get(v)||null:v},c=k=>{for(let v=k;v;v=y(v))if(l.via.has(v)&&(v=l.via.get(v)),r.has(v)||t.vetoedLive?.has(d(v)))return!0;return!1},g=k=>Array.from(gn(k).children).filter(v=>!a(v)),w=(k,v)=>g(k)[g(v.parentNode).indexOf(v)],N=(k,v)=>{let J=null,q=null,V=0;for(let ce=v.previousSibling;ce;ce=ce.previousSibling){if(ce.nodeType===1&&!a(ce)){J=ce;break}ce.nodeType===3&&(V+=ce.nodeValue.length)}for(let ce=v.nextSibling;ce&&!q;ce=ce.nextSibling)ce.nodeType===1&&!a(ce)&&(q=ce);let Ae=J?w(k,J):null,Ie=q?w(k,q):null;if(J&&!Ae||q&&!Ie)return null;let De=[];for(let ce=Ae?Ae.nextSibling:gn(k).firstChild;ce&&ce!==Ie;ce=ce.nextSibling)ce.nodeType===3&&De.push(ce);return De.length?{nodes:De,lead:V}:null},R=k=>{let v=[],J=k;for(;J&&!l.via.has(J);J=J.parentNode)v.push(J);if(!J||!v.length)return null;let q=d(l.via.get(J));for(let Ie=v.length-1;Ie>0&&q;Ie--)q=w(q,v[Ie]);if(!q)return null;let V=v[0];if(V.nodeType===3)return N(q,V);let Ae=V.nodeType===1?w(q,V):null;return Ae?{nodes:[Ae],lead:0}:null},m=k=>{let v=n(k),J=v?{nodes:Array.isArray(v)?v:[v],lead:0}:l.via.size?R(k):null;if(!J)return null;let q=J.nodes.filter(f);return q.length?{nodes:q,lead:J.lead}:null},d=k=>{let v=m(k);return v?v.nodes[0]:null},p=k=>{if(!k)return null;if(k.kind==="text"){let V=m(k.node);if(!V)return null;let Ae=V.nodes,Ie=k.offset+V.lead,De=0;for(let ce=0;ce<Ae.length;ce++){let Ne=Ae[ce].nodeValue.length;if(Ie<=De+Ne||ce===Ae.length-1)return Ie>=De&&Ie<=De+Ne?[Ae[ce],Ie-De]:null;De+=Ne}return null}let v=d(k.node);if(!v)return null;if(k.kind==="end")return[gn(v),gn(v).childNodes.length];if(k.kind==="startOf")return[gn(v),0];if(k.kind==="wholeStart")return v.firstChild?[v.firstChild,0]:[v,0];if(k.kind==="wholeEnd")return v.lastChild?[v.lastChild,v.lastChild.nodeValue.length]:[v,v.childNodes.length];let J=v.parentNode;if(!J)return null;let q=Array.prototype.indexOf.call(J.childNodes,v);return[J,k.kind==="after"?q+1:q]},O=k=>({blocks:new Set((k.flat?.marks||[]).filter(v=>v.block).map(v=>d(v.el)).filter(Boolean)),atoms:new Set((k.flat?.atoms||[]).map(v=>d(v.el)).filter(Boolean)),ignored:a}),b=(k,v,J,q)=>{if(!k||!v||!ul(k)||!ul(v))return!1;for(let Ie of[k,v])if(!f(Ie.startContainer)||!f(Ie.endContainer))return!1;let V=J.merged;if(V.start===V.end&&(k.startContainer!==k.endContainer||k.startOffset!==k.endOffset))return!1;let Ae=O(q);return Qn(v,J.encoding,Ae)===V.text&&Qn(k,J.encoding,Ae)===V.text.slice(V.start,V.end)},A=new Map,E=k=>{let v=k.parentNode;return v?(A.has(v)||A.set(v,new Map(Array.from(v.childNodes,(J,q)=>[J,q]))),A.get(v).get(k)):-1},B=(k,v)=>{if(!v)return!1;let J=i.logicalParent(k);if(!v.parent.live.includes(J))return!1;let q=E(k);for(let[V,Ae]of[["before",1],["after",-1]]){let Ie=q;for(let De of v[V]){if(De.live.includes(k))continue;let ce=De.live.filter(Xe=>Xe!==k&&Xe.parentNode===k.parentNode);if(!ce.length)continue;let Ne=Ae===1?Math.min(...ce.map(E)):Math.max(...ce.map(E));if(Ae*(Ne-Ie)<=0)return!1;Ie=Ne}}return!0},T=k=>{let v=k.structure;if(v.mergedOrder){let J=new Set(k.subject.live.map(gn)),q=null,V=-1;for(let Ae of v.mergedOrder){let Ie=Ae.live.find(De=>J.has(De.parentNode));if(!Ie||q&&Ie.parentNode!==q||E(Ie)<=V)return!1;q=Ie.parentNode,V=E(Ie)}return k.subject.live.length>0}return k.subject.live.some(J=>B(J,v.mergedPlacement))},M=(k,v)=>{let J=p(k),q=p(v);return J&&q?{startContainer:J[0],startOffset:J[1],endContainer:q[0],endOffset:q[1]}:null},D=new Set,z=k=>{if(!k||D.has(k))return;D.add(k);let v=[];for(let J of l.refs.get(k)||[]){let q=m(J);if(q)for(let V of q.nodes)v.includes(V)||v.push(V)}k.live=v},U=k=>{k&&(z(k.parent),k.before.forEach(z),k.after.forEach(z))},j=new Set;for(let k of e){let v=k.recovery;if(!v||j.has(v))continue;j.add(v),z(v.subject),v.structure&&(U(v.structure.localPlacement),U(v.structure.remotePlacement),U(v.structure.mergedPlacement),(v.structure.localOrder||[]).forEach(z),(v.structure.mergedOrder||[]).forEach(z));let J=l.anchors.get(v),q=J?d(J):null,V=!!q;if(v.text){let Z=l.spans.get(v.text.merged),ue=Z?M(Z.start,Z.end):null,fe=Z?M(Z.scopeStart,Z.scopeEnd):null;if(Z?.empty){let Pe=Z.empty,Ve=Pe.previous?{kind:"after",node:Pe.previous}:{kind:"startOf",node:Pe.parent},Oe=Pe.next?{kind:"before",node:Pe.next}:{kind:"end",node:Pe.parent},tt=M(Ve,Oe);!tt||tt.startContainer!==tt.endContainer||tt.startOffset!==tt.endOffset?ue=null:ue=fe=tt}b(ue,fe,v.text,Z)||(ue=fe=null),v.text.liveSpan=ue,v.text.liveScope=ue?fe:null,ue||(V=!1)}v.structure&&V&&(V=T(v)),v.attribute&&V&&(V=o(q,v.attribute,k.resolved));let Ae=Z=>Z?.tagName==="TEXTAREA"?Z:Z?.parentNode?.tagName==="TEXTAREA"?Z.parentNode:null,Ie=(!!v.attribute||!!v.text&&!!(Ae(q)||Ae(J)))&&!!u&&[J,q,Ae(q),Ae(J)].some(Z=>u.get(Z)?.has(v.attribute?v.attribute.qualifiedName:"value")),De=l.localState?.states.get(v),ce=!!v.text&&[...t.removedVetoes||[]].some(Z=>De?.touched.has(Z)),Ne=v.structure?.localAction==="inserted"&&[...r].some(Z=>Z===J||J?.contains(Z)),Xe=J&&c(J)||Ie||ce||Ne,ie=Xe&&Yi(v,k,l,f);ie&&(ce||Ne&&v.localLost)&&(V=!1);let x=!V&&ie&&Xe;v.applied=V,v.unavailable=V?null:x?"hook-veto":"missing-output",x&&(v.localLost=!1),!V&&v.text&&(v.text.liveSpan=v.text.liveScope=null)}}function lr(e,l,t){let n=Un(l),r=Un(t),u=c=>!!c&&r.containerPath(c)!==null,o=c=>{if(c===l)return t;let g=n.pathOf(c);if(g&&l!==t){let w=dl(t,{path:g,offset:0});if(w&&w[0].nodeType===c.nodeType)return w[0]}return c},a=new Set,i=c=>{!c||a.has(c)||(a.add(c),c.live=c.live.map(o).filter(u))},f=c=>{c&&(c.startContainer=o(c.startContainer),c.endContainer=o(c.endContainer))},y=new Set;for(let c of e){c.node===l&&t.tagName==="SCRIPT"&&(c.node=t),c.el===l&&c.kind==="structure"&&(c.el=t);let g=c.recovery;if(!g||y.has(g))continue;if(y.add(g),i(g.subject),g.text){f(g.text.liveSpan),f(g.text.liveScope);let N=g.text.liveSpan,R=g.text.liveScope,m=g.text.merged,d=p=>!!p&&ul(p)&&u(p.startContainer)&&u(p.endContainer);(!d(N)||!d(R)||Qn(R,g.text.encoding)!==m.text||Qn(N,g.text.encoding)!==m.text.slice(m.start,m.end))&&(g.text.liveSpan=null,g.text.liveScope=null,g.applied=!1,g.unavailable="missing-output")}let w=g.structure;if(w){for(let N of[w.localPlacement,w.remotePlacement,w.mergedPlacement])N&&(i(N.parent),N.before.forEach(i),N.after.forEach(i));(w.localOrder||[]).forEach(i),(w.mergedOrder||[]).forEach(i),g.subject.live.length||(g.applied=!1,g.unavailable="missing-output")}}}var Jn=e=>e?.nodeType===1,cl=e=>e?.tagName==="TEMPLATE"&&e.content?e.content:e;function la({provenance:e,parentOf:l,twins:t,baseOf:n,build:r,ignored:u,remoteWins:o,discarded:a}){let i=new Map,f=new WeakMap;function y(w,N,R,m=!1){if(!Jn(w)||!Jn(R))return null;let d=i.get(w);if(d)(m||!d.selected&&N==="remote")&&(d.parent=l(R),d.port=R,d.sourceSide=N,d.selected=m);else{let p=f.get(w)||null;d={owner:w,parent:l(R),port:R,sourceSide:N,originalParent:l(w),originalPort:w,selected:m,state:p?"built":"planned",output:p,disposition:null},i.set(w,d)}return d}function c(w,N){if(!Jn(w)||!Jn(N))return;f.has(w)||f.set(w,N);let R=i.get(w);R&&R.state!=="attached"&&!R.output&&(R.output=N,R.state="built")}function g(w){if(!i.size)return;let N=new Map,R=new WeakMap,m=new WeakMap,d=new WeakSet,p=new Set,O=(U,j)=>{if(!U)return;if(Array.isArray(U)){for(let v of U)O(v,j);return}let k=N.get(U);k||N.set(U,k=[]),k.push(j)},b=(U,j)=>{if(!U)return;let k=[U];for(;k.length;){let v=k.pop();O(v,j);for(let J of cl(v).childNodes)k.push(J)}};function A(U,j=null,k=!1){if(d.has(U))return;d.add(U),R.set(U,j);let v=e.get(U),J=k||!!(v&&o(v.remote||v.base));m.set(U,J);let q={node:U,kind:"node",authority:J};if(v?.pinned)b(v.local,{...q,kind:"ignored"});else if(v?.unchanged)for(let V of[v.base,v.local,v.remote])b(V,{...q,kind:"unchanged"});else if(v){for(let V of[v.base,v.local,v.remote])O(V,q);if(Jn(v.local))for(let V of cl(v.local).children)u(V)&&b(V,{...q,kind:"ignored"})}for(let V of cl(U).childNodes)A(V,U,J)}let E=U=>{if(U.output&&d.has(U.output))return U.state="attached",U.disposition="node",!0;let{local:j,remote:k}=t(U.owner);for(let v of[U.owner,j,k]){let J=N.get(v);if(J?.length){let q=J.find(V=>V.kind==="node")||J[0];return U.output=q.node,U.state="attached",U.disposition=q.kind,!0}}return!1},B=(U,j)=>(N.get(U)||[]).find(k=>k.kind==="node"&&Jn(k.node)&&(!k.authority||j.sourceSide==="remote"))?.node,T=(U,j,k)=>{let v=N.get(U)||[],J=k?[...v].reverse():v;for(let q of J){if(q.kind!=="node")continue;let V=q.node;for(;V&&R.get(V)!==j;)V=R.get(V);if(V)return V}return null},M=(U,j,k)=>{let v=cl(j);for(let J=k?.previousSibling;J;J=J.previousSibling){let q=T(J,j,!0);if(q){v.insertBefore(U,q.nextSibling);return}}for(let J=k?.nextSibling;J;J=J.nextSibling){let q=T(J,j,!1);if(q){v.insertBefore(U,q);return}}v.appendChild(U)};function D(U,j,k){let v=j==="base"?U:n(U,j),J=i.get(v);J&&J!==k&&z(J)}function z(U){if(U.state==="attached"||U.disposition==="remote-wins"||p.has(U)||E(U))return;p.add(U);let{local:j,remote:k}=t(U.owner);if(o(k||U.owner)){if(!k){U.disposition="remote-wins",a(U.owner,j),p.delete(U);return}U.parent=l(k),U.port=k,U.sourceSide="remote"}if(D(U.parent,U.sourceSide,U),E(U)){p.delete(U);return}let v=B(U.parent,U),J=U.port;if(!v){if(D(U.originalParent,"base",U),E(U)){p.delete(U);return}let V=U.originalParent;for(J=U.originalPort;V&&!v;)v=B(V,U),v||(J=V,V=l(V))}if(!v)throw new Error("A planned move has no allowed surviving parent");let q=U.output||r(U.owner);U.output=q,U.state="built",M(q,v,J),A(q,v,m.get(v)||!1),E(U),p.delete(U)}A(w);for(let U of i.values())z(U)}return{planned:i,has:w=>i.has(w),plan:y,produced:c,drain:g}}function hl(e,l,t,n,r,u,o,a,i,f,y,c,g){let w=null;return la({provenance:e,parentOf:N=>{if(!N)return null;let R=l(N);if(R||N.parentNode?.nodeType!==11)return R;if(!w){w=new WeakMap;let m=[c,g];for(;m.length;){let d=m.pop(),p=cl(d);p!==d&&w.set(p,d);for(let O of p.children)m.push(O)}}return w.get(N.parentNode)||null},twins:N=>({local:r(t,N),remote:r(n,N)}),baseOf:(N,R)=>N&&(R==="local"?t:n).reverse.get(N)||null,build:N=>u(N,r(t,N),r(n,N),!1),ignored:o,remoteWins:a,discarded:(N,R)=>{R&&y(N,R,t)&&!i.some(m=>m.detail==="remote-wins"&&m.base===N)&&f({kind:"structure",el:null,detail:"remote-wins",base:N,local:R,remote:null},{subject:N})}})}function ra({parent:e,base:l,views:t,eligible:n,ignored:r,remoteWins:u,budget:o=Qt(64e4),maxUnits:a=256,maxCharacters:i=2e4}){let f=(d,p=null)=>({status:d,reason:p,parent:e,records:[]});if(t.some(({V:d})=>d.asBase)||r(e)||u(e)||t.some(({V:d})=>!d.el||r(d.el)||u(d.el)))return f("none");let y=l.length+t[0].V.units.length+t[1].V.units.length;if(y>a)return f("fallback","unit-limit");let c=Symbol(),g=d=>{if(d>o.remaining)throw c;o.remaining-=d,o.crossParentSteps=(o.crossParentSteps||0)+d},w=new Map,N=0,R=d=>{if(g(1),w.has(d))return w.get(d);let p=d.nodeType===1?d.childNodes:d.nodes;g(p.length*4+1);let O=d.nodeType===1?Array.from(p):p,b=0;for(let B=0;B<O.length;B++){let T=O[B];if(T.nodeType!==3||B&&O[B-1].nextSibling!==T)return w.set(d,null),null;b+=T.data.length}if(b>i-N)throw c;g(b*8+1),N+=b;let A=Jt(O);if(A.text.includes(xt))return w.set(d,null),null;let E={unit:d,nodes:O,flat:A};return w.set(d,E),E},m=[];try{g(y*8+1);for(let d=0;d<2;d++){let p=t[d].V,O=t[1-d].V,b=[],A=new Map;for(let E=0;E<l.length;E++){g(1);let B=l[E];if(B.kind!=="text"||p.twin(B))continue;let T=O.twin(B);if(!T||T.kind!=="text"||!O.here(T))continue;let M=R(B),D=R(T);if(!M||!D||!/\S/.test(M.flat.text))continue;g(M.flat.text.length*2+1);let z=M.flat.text;A.set(z,(A.get(z)||0)+1),b.push({source:B,opposite:T,sourceModel:M,oppositeModel:D,index:E})}for(let E of b){let{source:B,opposite:T,sourceModel:M,oppositeModel:D,index:z}=E,U=[];for(let Z of[-1,1]){g(1);let ue=l[z+Z];if(!ue||ue.nodeType!==1||!n(ue)||r(ue)||u(ue))continue;let fe=M.nodes[0],Pe=M.nodes.at(-1);if(Z===-1?fe?.previousSibling!==ue:Pe?.nextSibling!==ue)continue;let Ve=p.twin(ue),Oe=O.twin(ue);if(!Ve||!Oe||!p.here(Ve)||O.here(Oe)||p.baseOf(Ve)!==ue||O.baseOf(Oe)!==ue||!n(Ve)||!n(Oe)||r(Ve)||r(Oe)||u(Ve)||u(Oe)||Ve.tagName!==ue.tagName||Oe.tagName!==ue.tagName||Ve.namespaceURI!==ue.namespaceURI||Oe.namespaceURI!==ue.namespaceURI)continue;let tt=R(ue),et=R(Ve),ct=R(Oe);if(!tt||!et||!ct||!/\S/.test(tt.flat.text))continue;let Qe=tt.flat.text,lt=M.flat.text,Mt=et.flat.text;if(g((Qe.length+lt.length+Mt.length)*3+1),Mt.length!==Qe.length+lt.length)continue;let Ut=Z===-1;(Ut?!Mt.startsWith(Qe)||!Mt.endsWith(lt):!Mt.startsWith(lt)||!Mt.endsWith(Qe))||U.push({owner:ue,target:Ve,moved:Oe,ownerBase:tt,joined:et,ownerOther:ct,targetFrom:Ut?Qe.length:0,retainedFrom:Ut?0:lt.length})}if(!U.length)continue;if(U.length!==1||A.get(M.flat.text)!==1)return f("fallback","ambiguous-origin");let j=U[0],{owner:k,target:v,moved:J,ownerBase:q,joined:V,ownerOther:Ae,targetFrom:Ie,retainedFrom:De}=j;if(g(m.length+1),m.some(Z=>Z.owner===k))return f("fallback","ambiguous-owner");let ce={source:B,target:v,from:0,to:M.flat.text.length,targetFrom:Ie},Ne=Gn({base:M.flat,side:V.flat,retained:[],transfers:[{from:ce.from,to:ce.to,target:Ie,destination:k}],budget:o});if(Ne.status!=="ready"||Ne.covers(ce.from,ce.to)!==!0)return f("fallback",Ne.reason||"work-limit");let Xe=[{unit:B,model:M,from:0,to:M.flat.text.length},null,null];Xe[d+1]={unit:v,model:V,from:Ie,to:Ie+M.flat.text.length},Xe[2-d]={unit:T,model:D,from:0,to:D.flat.text.length};let ie=[q,null,null];ie[d+1]=V,ie[2-d]=Ae;let x=[k,null,null];x[d+1]=v,x[2-d]=J,m.push({side:d,parent:e,source:B,target:v,owner:k,owners:x,ownerModels:ie,native:Xe,models:w,runs:[ce],proof:Ne,retained:[{source:k,target:v,from:0,to:q.flat.text.length,targetFrom:De}]})}}return m.length?{status:"ready",reason:null,parent:e,records:m}:f("none")}catch(d){if(d!==c)throw d;return f("fallback","work-limit")}}function oa({describe:e,parentOf:l,...t}){let n=new WeakMap,r=new WeakMap,u=t.budget||Qt(2e4*32),o=a=>{if(!a)return null;if(n.has(a))return n.get(a);n.set(a,{status:"planning",parent:a,records:[]});let i=e(a),f=i?ra({...t,...i,parent:a,budget:u}):{status:"none",reason:null,parent:a,records:[]};if(n.set(a,f),f.status==="ready")for(let y of f.records)r.set(y.owner,[y]);return f};return{get:o,forOwner(a){return o(l(a))?.status==="ready"&&r.get(a)||null}}}function ia(e,l){if(e.side!==0)return null;let t=e.native[0].model,n=e.ownerModels[0],r=e.native[1].from!==0,u=(O,b)=>r?[...O.nodes,...b.nodes]:[...b.nodes,...O.nodes],o=e.ownerModels.reduce((O,b)=>O+b.flat.text.length,0)+t.flat.text.length+e.native[2].model.flat.text.length;if(o*8>l.remaining)return null;l.remaining-=o*8;let a={base:u(n,t),local:e.ownerModels[1].nodes,remote:u(e.ownerModels[2],e.native[2].model)},i=Jt(a.base),f=e.ownerModels[1].flat,y=Jt(a.remote),c=r?n.flat.text.length:0,g=r?0:t.flat.text.length,w=Gn({base:i,side:f,retained:e.retained.map(O=>({from:g+O.from,to:g+O.to,target:O.targetFrom})),transfers:e.runs.map(O=>({from:c+O.from,to:c+O.to,target:O.targetFrom,destination:e.owner})),budget:l});if(w.status!=="ready"||w.covers(0,i.text.length)!==!0)return null;let N=e.ownerModels[2].flat,R=e.native[2].model.flat,m=[];for(let[O,b,A,E]of[[n.flat,N,g,r?0:R.text.length],[t.flat,R,c,r?N.text.length:0]]){let B=Vr(O,O,b).remoteMap.bTo,T=-1;for(let M=0;M<O.text.length;M++){if(B[M]<0){T=-1;continue}let D=m.at(-1);T>=0&&D.to===A+M&&D.target+D.to-D.from===E+B[M]?D.to++:(m.push({from:A+M,to:A+M+1,target:E+B[M]}),T=M)}}let d=Gn({base:i,side:y,retained:m,transfers:[],budget:l});if(d.status!=="ready")return null;let p=Vr(i,f,y,{},{local:w,remote:d});return p.localEdits.hunks.length?null:(p.localMap=w,p.remoteMap=d,{nodes:a,prepared:p})}function aa({L:e,R:l,twinIn:t,unitsOf:n,view:r,parentOf:u,ignored:o,remoteWins:a,eligible:i,build:f,out:y,policy:c,provenance:g,textMappers:w,segments:N,conflicts:R,conflict:m,decisions:d}){let p=Qt(64e4),O=U=>{let j=0;for(let k=U;k;k=u(k))if(++j>64||k.nodeType===1&&(o(k)||a(k)))return!1;return!0},b=oa({parentOf:u,eligible:i,ignored:o,remoteWins:a,budget:p,describe(U){let j=t(e,U),k=t(l,U);return!j||!k||!O(U)||!O(j)||!O(k)?null:{base:n(U),views:[{A:e,V:r(e,j,U,!1)},{A:l,V:r(l,k,U,!1)}]}}}),A=new WeakSet,E=new WeakMap,B=new WeakSet,T=[];function M(U){if(!U||A.has(U))return;A.add(U);let j=b.get(U);if(j?.status==="ready")for(let k of j.records){if((U.tagName==="TEMPLATE"&&U.content?U.content:U).childNodes.length!==k.native[0].model.nodes.length+1||!k.owners.every(O))continue;let v=ia(k,p);if(!v)continue;let J={record:k,payload:v,state:"planned",output:null,result:null};E.set(k.owner,J),B.add(k.source),B.add(k.native[2].unit),T.push(J)}}function D(U,j){let k=E.get(U);if(!k)return!1;if(!k.result){if(k.result=Lr({...k.payload.nodes,prepared:k.payload.prepared,out:y,policy:c,provenance:g,textMappers:w,conflicts:R,conflict:m,decisions:d,node:j}),k.result.conflicts.length)throw new Error("Unsupported cross-parent payload conflict");N.push(...k.result.segments),k.decision={kind:"text",node:j,source:"local"},d.push(k.decision)}return k.decision.node=j,j.replaceChildren(...k.result.nodes),k.output=j,k.state="built",!0}function z(U){if(!T.length)return;let j=new WeakSet,k=new WeakMap,v=new WeakMap,J=new WeakMap,q=Ne=>Ne.tagName==="TEMPLATE"&&Ne.content?Ne.content:Ne,V=(Ne,Xe)=>{if(!Ne)return;if(Array.isArray(Ne)){for(let x of Ne)V(x,Xe);return}let ie=J.get(Ne);ie||J.set(Ne,ie=[]),ie.push(Xe)},Ae=(Ne,Xe=null,ie=!1)=>{j.add(Ne),k.set(Ne,Xe);let x=g.get(Ne),Z=ie||!!(x&&a(x.remote||x.base));if(v.set(Ne,Z),x)for(let ue of[x.base,x.local,x.remote])V(ue,Ne);if(!(x?.pinned||x?.unchanged))for(let ue of q(Ne).childNodes)Ae(ue,Ne,Z)},Ie=Ne=>(J.get(Ne)||[]).find(Xe=>Xe.nodeType===1&&!v.get(Xe)&&!g.get(Xe)?.pinned&&!g.get(Xe)?.unchanged),De=(Ne,Xe)=>{for(let ie of J.get(Ne)||[]){let x=ie;for(;x&&k.get(x)!==Xe;)x=k.get(x);if(x)return x}return null},ce=(Ne,Xe,ie)=>{let x=q(Xe);for(let Z=ie.nextSibling;Z;Z=Z.nextSibling){let ue=De(Z,Xe);if(ue){x.insertBefore(Ne,ue);return}}for(let Z=ie.previousSibling;Z;Z=Z.previousSibling){let ue=De(Z,Xe);if(ue){x.insertBefore(Ne,ue.nextSibling);return}}x.appendChild(Ne)};Ae(U);for(let Ne of T){let{record:Xe}=Ne,ie=Ie(Xe.owner)||Ie(Xe.owners[1])||Ie(Xe.owners[2]);if(ie)(!Ne.result||Ne.output!==ie||Ne.result.nodes.some(x=>!j.has(x)||k.get(x)!==ie)||ie.textContent!==Ne.result.text)&&(D(Xe.owner,ie),Ae(ie,k.get(ie),v.get(ie)));else{let x=Xe.parent,Z=Xe.owner,ue=null;for(;x&&!ue;)ue=Ie(x),ue||(Z=x,x=u(x));if(!ue)throw new Error("A cross-parent payload has no allowed surviving parent");ie=Ne.output||f(Xe.owner,Xe.owners[1],Xe.owners[2],!1),Ne.result||D(Xe.owner,ie),ce(ie,ue,Z),Ae(ie,ue,v.get(ue))}Ne.state="attached"}}return{ensureParent:M,ensureOwner(U){M(u(U))},consumes(U){return B.has(U)},render:D,drain:z}}var fn=/\S/,so=/[\p{L}\p{N}]/u;function Hn(e,l,t,n){if(e?.nodeType!==1||!l(e))return!1;for(let r=e.firstChild;r;r=r.nextSibling)if(n(t,1),r.nodeType!==3)return!1;return!!e.firstChild}function rr(e,l,t){for(let n=e.parentNode;n;n=n.parentNode)if(t(l,1),n.nodeType===11)return!1;return!0}function fo(e,l,t,n,r){let u=t(e,n),o=t(l,n),a=null,i=null,f=null,y=null;r(n,u.length+o.length);for(let c of u)so.test(c.raw)&&(a||=c,i=c);for(let c of o)so.test(c.raw)&&(f||=c,y=c);return!!(a&&f&&(a.raw===f.raw||i.raw===y.raw))}function sa({base:e,V:l,A:t,source:n,original:r,current:u,edited:o,destination:a,at:i,ownLength:f,eligible:y,model:c,tokensOf:g,budget:w,charge:N}){let R=r.flat.text,m=u.flat.text,d=o.flat.text,p=a.flat.text;if(N(w,R.length+m.length+p.length),R.startsWith(m)||R.endsWith(m))return!1;let O=fn.test(p.slice(0,i)),b=fn.test(p.slice(i+f));if(O===b)return!1;let A=O?0:i+f,E=O?i:p.length;for(;A<E&&!fn.test(p[A]);)A++;for(;E>A&&!fn.test(p[E-1]);)E--;let B=p.slice(A,E);if(yn(B,p,g(a,w),w,N,!0)!==A)return!1;let T=yn(B,R,g(r,w),w,N,!0);if(T<0)return!1;let M=T+B.length,D=!fn.test(R.slice(0,T)),z=!fn.test(R.slice(M));if(D===z||yn(B,m,g(u,w),w,N,!1)>=0)return!1;let U=D?R.slice(M):R.slice(0,T),j=D?d.length-U.length:0;if(N(w,R.length+d.length),j<0||!fn.test(U)||yn(U,d,g(o,w),w,N,!0)!==j||!fn.test(D?d.slice(0,j):d.slice(U.length)))return!1;for(let k of e){if(N(w,1),k===n||!Hn(k,y,w,N))continue;let v=c(k,null,w);if(yn(B,v.flat.text,g(v,w),w,N,!1)>=0)return!1}for(let k of l.units){if(N(w,1),k===u.unit||k===a.unit||!Hn(k,y,w,N))continue;let v=c(k,t,w);if(yn(B,v.flat.text,g(v,w),w,N,!1)>=0)return!1}return!0}function fa({base:e,views:l,side:t,attempt:n,eligible:r,blocked:u,baseId:o,model:a,tokensOf:i,charge:f,exhausted:y,limit:c}){if(c<=0)return null;let g=Qt(c),{V:w,A:N,idOf:R}=l[t],m=l[1-t],[d,p,O,b]=n,A=null;try{for(let E=d;E<=p;E++){f(g,1);let B=e[E];if(B.parentNode?.nodeType!==1||u.has(B)||N.identical.has(B)||m.A.identical.has(B)||!Hn(B,r,g,f)||o(B))continue;let T=w.twin(B),M=m.V.twin(B);if(!T||!M||!w.here(T)||!m.V.here(M)||N.map.get(B)!==T||N.reverse.get(T)!==B||m.A.map.get(B)!==M||m.A.reverse.get(M)!==B||R(T)||m.idOf(M)||T.tagName!==B.tagName||M.tagName!==B.tagName||!Hn(T,r,g,f)||!Hn(M,r,g,f)||!rr(B,g,f)||!rr(T,g,f)||!rr(M,g,f))continue;let D=a(B,null,g),z=a(T,N,g),U=a(M,m.A,g),j=D.flat.text,k=z.flat.text,v=U.flat.text;if(f(g,j.length+k.length+v.length),!fn.test(j)||!fn.test(k)||!fn.test(v)||j===k||j===v||k===v||!fo(D,z,i,g,f)||!fo(D,U,i,g,f))continue;let J=null,q=!1;for(let Ie=O;Ie<=b;Ie++){f(g,1);let De=w.units[Ie],ce=w.baseOf(De);if(!ce||ce===B||u.has(ce)||ce.parentNode!==B.parentNode||De.parentNode!==T.parentNode||ce.tagName!==B.tagName||De.tagName!==B.tagName||N.map.get(ce)!==De||N.reverse.get(De)!==ce||o(ce)!==R(De)||!Hn(ce,r,g,f)||!Hn(De,r,g,f))continue;let Ne=a(ce,null,g),Xe=a(De,N,g),ie=Ne.flat.text,x=Xe.flat.text;if(f(g,ie.length),!fn.test(ie)||x.length<=ie.length)continue;let Z=i(Xe,g),ue=yn(ie,x,Z,g,f,!0);if(!(ue<0||yn(j,x,Z,g,f,!0,ue,ue+ie.length)<0&&!sa({base:e,V:w,A:N,source:B,original:D,current:z,edited:U,destination:Xe,at:ue,ownLength:ie.length,eligible:r,model:a,tokensOf:i,budget:g,charge:f}))){if(J){q=!0;break}J=De}}if(!J||q)continue;let V=t===0?T:M,Ae=t===0?M:T;(A||=[]).push({source:B,local:V,remote:Ae,models:[D,t===0?z:U,t===0?U:z]})}}catch(E){if(E!==y)throw E}return A}var xn=/\S/,nn=/\s/,ua=/[\s\u001e]/g,or=/[^\s\p{P}\u001e\ufffc]/u;function da(e,l,t,n,r,u,o){let a=0;for(let i of e)o(u,1),i.nodeType===1&&!n.baseOf(i)&&a++;if(a<2)return!1;for(let i of e){if(i.nodeType!==1||n.baseOf(i))continue;let f=r.get(i).flat;if(f.atoms.length||f.pins?.length)continue;o(u,f.text.length*2+l.length+t.length);let y=new Uint8Array(f.text.length);for(let c of t)c.target===i&&y.fill(1,c.targetFrom,c.targetFrom+c.to-c.from);for(let c of l)c.target===i&&y.fill(1,c.targetFrom,c.targetFrom+c.to-c.from);for(let c=0;c<f.text.length;c++)if(!y[c]&&xn.test(f.text[c]))return!0}return!1}function ca(e,l,t){let{source:n,models:r,retained:u,runs:o}=e,a=r.get(n).flat.text;t(l,a.length*2+u.length+o.length);let i=new Uint8Array(a.length);for(let f of u)f.source===n&&(t(l,f.to-f.from),i.fill(1,f.from,f.to));for(let f of o)t(l,f.to-f.from),i.fill(1,f.from,f.to);for(let f=0;f<a.length;f++)if(!i[f]&&xn.test(a[f]))return!1;return!0}function ha(e,l,t,n,r,u,o,a,i,f){let y=u.get(e),c=u.get(l),g=y.flat.text,w=o.get(e);i(f,g.length*2+t.length);let N=g.length,R=0;for(let p=0;p<g.length;p++)!nn.test(g[p])&&!w[p]&&(N=Math.min(N,p),R=p+1);if(N>=R)return null;for(let p=N;p<R;p++)if(!nn.test(g[p])&&w[p])return null;let m=-1;for(let p of t)if(p.target===l&&p.from<=N&&p.to>N){m=p.targetFrom+N-p.from;break}if(m<0)return null;let d=g.slice(N,R);if(i(f,d.length*(t.length+2)),c.flat.text.slice(m,m+d.length)!==d)return null;for(let p=N;p<R;p++){if(nn.test(g[p]))continue;let O=!1;for(let b of t)if(b.target===l&&b.from<=p&&b.to>p&&b.targetFrom+p-b.from===m+p-N){O=!0;break}if(!O)return null}if(y.flat.atoms.length||c.flat.atoms.length){i(f,y.flat.atoms.length+c.flat.atoms.length);let p=0,O=c.flat.atoms;for(;p<O.length&&O[p].i<m;)p++;for(let b of y.flat.atoms){if(b.i<N||b.i>=R)continue;let A=O[p++];if(!A||A.i!==m+b.i-N||c.alignment?.reverse.get(A.el)!==b.el)return null}if(p<O.length&&O[p].i<m+R-N)return null}for(let[p,O,b]of[[n,e,N],[r,l,m]]){let A=!1;for(let E of p){let B=u.get(E),T=o.get(E),M=a(B,f);for(let D=0;D<M.length;D++){let z=M[D].from,U=z+d.length;if(i(f,d.length*2+1),B.flat.text.slice(z,U)!==d)continue;let j=D;for(;j<M.length&&M[j].to<U;)i(f,1),j++;if(j===M.length||M[j].to!==U)continue;let k=!0;for(let v=z;v<U;v++)if(!nn.test(B.flat.text[v])&&T[v]){k=!1;break}if(k){if(A||E!==O||z!==b)return null;A=!0}}}if(!A)return null}return d}function ga(e,l,t,n,r,u,o,a){if(o(a,r.length+u.length+(n.length+1)*t.length*2),!t)return!1;let i=n.indexOf(t);return i<0||n.lastIndexOf(t)!==i||!u.some(f=>f.from===i)||!u.some(f=>f.to===i+t.length)?!1:r.some(f=>f.source===e&&f.target===l&&f.from===0&&f.to===t.length&&f.targetFrom===i)}function pa({base:e,views:l,eligible:t,baseId:n,ignored:r,remoteWins:u,atomKey:o,limit:a=16e4}){if(a<=0)return null;let i=Symbol(),f=(b,A)=>{if(A>b.remaining)throw i;b.remaining-=A},y=[new Map,new Map];for(let b=0;b<2;b++)for(let A=0;A<l[b].V.units.length;A++)y[b].set(l[b].V.units[A],A);let c=new Int32Array(e.length),g=new Int32Array(e.length),w=b=>l.every(({V:A},E)=>{let B=A.twin(b);return B&&y[E].has(B)}),N=-1;for(let b=0;b<e.length;b++)c[b]=N,w(e[b])&&(N=b);N=e.length;for(let b=e.length-1;b>=0;b--)g[b]=N,w(e[b])&&(N=b);let R=new Map,m=(b,A)=>{if(f(A,1),R.has(b))return R.get(b);let E=b.firstChild,B=1;for(;E;){if(f(A,B*8+8),E.nodeType===3&&f(A,E.data.length*8),E.nodeType===1&&vn.has(E.tagName)&&!r(E)&&!u(E)&&E.firstChild){E=E.firstChild,B++;continue}for(;E&&E!==b&&!E.nextSibling;)E=E.parentNode,B--;E=!E||E===b?null:E.nextSibling}let T=Jt(Array.from(b.childNodes),{ignored:r,remoteWins:u});return R.set(b,T),T},d=(b,A,E,B,T,M)=>{for(let D of b.atoms){f(M,1);let z=A.atomAt.get(D.i+E);if(!z)return!1;let U=B?.reverse.get(D.el)||o(D.el),j=T?.reverse.get(z.el)||o(z.el);if(U!==j)return!1}return!0},p=(b,A,E,B,T)=>{let M=b.text.length<=A.text.length?b:A,D=M===b?A:b;if(f(T,M.text.length+D.text.length),!M.text||!xn.test(M.text.replaceAll(Sn,"")))return!1;let z;if(M.text===D.text)z=0;else{let U=D.text.length-M.text.length;if(f(T,(U+1)*M.text.length*2),D.text.startsWith(M.text))z=0;else if(D.text.endsWith(M.text))z=U;else return!1;if(D.text.indexOf(M.text)!==z||D.text.lastIndexOf(M.text)!==z)return!1;f(T,D.text.length*2);let j=0,k=z===0,v=!1;for(let J of tn(D.text,wn(D.text)))j+=J.len,j===z&&(k=!0),j===z+M.text.length&&(v=!0);if(!k||!v)return!1}return M===b?d(M,D,z,E,B,T):d(M,D,z,B,E,T)},O=null;for(let b=0;b<2;b++){let{V:A,A:E,idOf:B}=l[b],T=l[1-b];if(!A.asBase)for(let M=0;M<e.length;M++){let D=e[M];if(A.twin(D)||!t(D))continue;let z=T.V.twin(D);if(!z||!y[1-b].has(z)||!t(z))continue;let U={remaining:a};try{let j=c[M],k=g[M],v=0;for(let Ae=j+1;Ae<k;Ae++)f(U,1),!A.twin(e[Ae])&&T.V.twin(e[Ae])&&t(e[Ae])&&v++;if(v!==1||m(D,U).text===m(z,U).text)continue;let J=j<0?-1:y[b].get(A.twin(e[j])),q=k===e.length?A.units.length:y[b].get(A.twin(e[k]));if(J===void 0||q===void 0||J>=q)continue;let V=null;for(let Ae=J+1;Ae<q;Ae++){f(U,1);let Ie=A.units[Ae];if(A.baseOf(Ie)||!t(Ie)||Ie.tagName!==D.tagName||Ie.namespaceURI!==D.namespaceURI)continue;let De=n(D),ce=T.idOf(z),Ne=B(Ie);if(!(De&&ce&&De!==ce||De&&Ne&&De!==Ne||ce&&Ne&&ce!==Ne)&&p(m(z,U),m(Ie,U),T.A,E,U)){if(V){V=null;break}V=Ie}}if(!V)continue;O||(O=[new Map,new Map]),O[b].set(D,V)}catch(j){if(j!==i)throw j}}}return O?l.map(({V:b},A)=>{let E=O[A];if(!E.size)return b;let B=new Map;for(let[T,M]of E)B.set(M,T);return{...b,twin:T=>E.get(T)||b.twin(T),baseOf:T=>B.get(T)||b.baseOf(T)}}):null}function ma({onUncertainSource:e,onUncertainOwner:l,base:t,views:n,eligible:r,ignored:u,remoteWins:o,baseId:a,atomKey:i,limit:f=64e4}){if(f<=0)return null;let y=new Set(t),c=new Map(t.map((j,k)=>[j,k])),g=new Map,w=[],N=null,R=null,m=null,d=new Set;for(let j of t)for(let{V:k}of n){let v=k.twin(j);v&&!k.asBase&&!k.here(v)&&d.add(j)}let p=new Set,O=Symbol(),b=(j,k)=>{if(k>j.remaining)throw O;j.remaining-=k},A=(j,k,v)=>{b(v,1);let J=g.get(j);if(J)return J;if(j.nodeType===1){let Ae=j.firstChild,Ie=1;for(;Ae;){if(b(v,Ie*8+8),Ae.nodeType===3&&b(v,Ae.data.length*8),Ae.nodeType===1&&vn.has(Ae.tagName)&&!u(Ae)&&!o(Ae)&&Ae.firstChild){Ae=Ae.firstChild,Ie++;continue}for(;Ae&&Ae!==j&&!Ae.nextSibling;)Ae=Ae.parentNode,Ie--;Ae=!Ae||Ae===j?null:Ae.nextSibling}}else b(v,j.value.length*8+j.nodes.length);let q=j.nodeType===1?Array.from(j.childNodes):j.nodes,V=q.length===1&&q[0].nodeType===3?{text:q[0].data,nodes:[{node:q[0],s:0,e:q[0].data.length}],atoms:[]}:Jt(q,{ignored:u,remoteWins:o});return J={unit:j,flat:V,alignment:k,tokens:null},g.set(j,J),J},E=(j,k)=>{if(j.tokens)return j.tokens;b(k,j.flat.text.length*8);let{unit:v,flat:J,alignment:q}=j,V=[],Ae=wn(J.text),Ie=0,De=ce=>{for(let Ne of tn(J.text.slice(Ie,ce),Ae))Ne.from=Ie,Ne.to=Ie+Ne.len,Ne.unit=v,V.push(Ne),Ie+=Ne.len};for(let ce of J.atoms){De(ce.i);let Ne=o(ce.el)&&ce.el.nodeType===1?"w"+ce.el.tagName+"#"+(ce.el.id||""):i(q?.reverse.get(ce.el)||ce.el);V.push({k:Ne,raw:Sn,len:1,from:Ie,to:Ie+1,unit:v,atom:!0}),Ie++}return De(J.text.length),j.tokens=V,V},B=(j,k,v,J,q)=>{if(!j.flat.atoms.length&&!k.flat.atoms.length)return!0;let V=E(j,q),Ae=E(k,q);b(q,V.length+Ae.length);let Ie=0;for(let De of Ae){if(!De.atom||De.from<v||De.from>=v+J)continue;for(;Ie<V.length&&!V[Ie].atom;)Ie++;let ce=V[Ie++];if(!ce||ce.from!==De.from-v||ce.k!==De.k)return!1}for(;Ie<V.length;)if(V[Ie++].atom)return!1;return!0},T=(j,k,v)=>{let J=j.length+k.length+4;if(J*8>v.remaining)return null;v.remaining-=J*8;let q=Math.floor(v.remaining/8),V=Math.min(j.length+k.length,4e3,Math.floor((Math.sqrt(J*J+q)-J)/2)),Ae=4*(V+1)*(J+V+1);if(V<1||Ae>v.remaining)return null;v.remaining-=Ae;let Ie=jn(j,k,V),De=[],ce=0,Ne=0;for(let Xe of Ie.hunks){for(;ce<Xe.bs;)j[ce].raw===k[Ne].raw&&De.push([j[ce],k[Ne]]),ce++,Ne++;ce=Xe.be,Ne+=Xe.toks.length}for(;ce<j.length&&Ne<k.length;)j[ce].raw===k[Ne].raw&&De.push([j[ce],k[Ne]]),ce++,Ne++;return De},M=(j,k,v,J,q,V,Ae)=>{if(q<=J)return;let Ie=j[j.length-1];if(Ie&&Ie.source===k&&Ie.target===v&&Ie.to<=J&&Ie.targetFrom-Ie.from===V-J){b(Ae,(J-Ie.to)*3);let De=g.get(k).flat.text,ce=g.get(v).flat.text,Ne=!0;for(let Xe=Ie.to;Xe<J;Xe++)if(!nn.test(De[Xe])||De[Xe]!==ce[V+Xe-J]){Ne=!1;break}if(Ne){Ie.to=q;return}}j.push({source:k,target:v,from:J,to:q,targetFrom:V})},D=j=>j.replace(ua,"");for(let j=0;j<n.length;j++){let{V:k,A:v,idOf:J}=n[j];if(k.asBase)continue;let q=new Map(k.units.map((x,Z)=>[x,Z])),V=x=>{let Z=k.twin(x);return Z&&q.has(Z)?Z:null},Ae=(x,Z)=>{let ue=new Int32Array(x.length),fe=new Int32Array(x.length),Pe=-1;for(let Ve=0;Ve<x.length;Ve++)ue[Ve]=Pe,Z(x[Ve])&&(Pe=Ve);Pe=x.length;for(let Ve=x.length-1;Ve>=0;Ve--)fe[Ve]=Pe,Z(x[Ve])&&(Pe=Ve);return{prev:ue,next:fe}},Ie=Ae(t,x=>(x.nodeType===1||x.kind==="text"&&xn.test(x.value))&&V(x)),De=Ae(k.units,x=>(x.nodeType===1||x.kind==="text"&&xn.test(x.value))&&y.has(k.baseOf(x))),ce=new Map,Ne=(x,Z,ue,fe)=>{if(x>Z||ue>fe)return;let Pe=`${x}:${Z}:${ue}:${fe}`;ce.set(Pe,[x,Z,ue,fe])};for(let x=0;x<k.units.length;x++){let Z=k.units[x];if(k.baseOf(Z)||!r(Z))continue;let ue=De.prev[x],fe=De.next[x],Pe=ue<0?0:c.get(k.baseOf(k.units[ue])),Ve=fe===k.units.length?t.length-1:c.get(k.baseOf(k.units[fe]));Ne(Pe,Ve,Math.max(0,ue),Math.min(k.units.length-1,fe))}for(let x=0;x<t.length;x++){let Z=t[x];if(d.has(Z)||!r(Z))continue;if(!k.twin(Z)){let tt=Ie.prev[x],et=Ie.next[x],ct=tt<0?0:q.get(V(t[tt])),Qe=et===t.length?k.units.length-1:q.get(V(t[et]));Ne(Math.max(0,tt),Math.min(t.length-1,et),ct,Qe)}let ue=V(Z);if(!ue||v.identical.has(Z)||!r(ue))continue;let fe=x+1;for(;fe<t.length&&t[fe].kind==="text"&&!t[fe].value.trim();)fe++;if(fe>=t.length||!r(t[fe]))continue;let Pe=V(t[fe]);if(!Pe||v.identical.has(t[fe])||!r(Pe))continue;let Ve=q.get(ue),Oe=q.get(Pe);Ve<Oe&&Ne(x,fe,Ve,Oe)}let Xe=Array.from(ce.values()),ie=new Set;if(Xe.length>1){let x=Qt(f);try{b(x,Xe.length*4);let Z=Xe.slice().sort((Pe,Ve)=>(b(x,1),Pe[0]-Ve[0]||Pe[2]-Ve[2])),ue=[],fe=null;for(let Pe of Z)b(x,1),fe&&Pe[0]<=fe[1]&&Pe[2]<=fe[3]&&Pe[3]>=fe[2]?(fe[1]=Math.max(fe[1],Pe[1]),fe[2]=Math.min(fe[2],Pe[2]),fe[3]=Math.max(fe[3],Pe[3]),fe[4].push(Pe)):(fe?.[4].length>1&&ue.push(fe),fe=[Pe[0],Pe[1],Pe[2],Pe[3],[Pe]]);fe?.[4].length>1&&ue.push(fe),Xe=ue.concat(Xe)}catch(Z){if(Z!==O)throw Z}}for(let x of Xe){if(ie.has(x))continue;let[Z,ue,fe,Pe,Ve]=x,Oe=Qt(f),tt=[],et=new Set,ct=!1;try{b(Oe,(ue-Z+Pe-fe+2)*4);let Qe=t.slice(Z,ue+1).filter(H=>!v.identical.has(H)&&r(H)&&!d.has(H)),lt=k.units.slice(fe,Pe+1).filter(H=>r(H)&&(!k.baseOf(H)||y.has(k.baseOf(H)))&&!v.identical.has(k.baseOf(H))&&!d.has(k.baseOf(H))),Mt=new Set(lt),Ut=!1,bt="",vt="",St=0;for(let H of Qe){let ke=A(H,null,Oe);bt+=ke.flat.text,St+=ke.flat.text.length}for(let H of lt){let ke=A(H,v,Oe);vt+=ke.flat.text,St+=ke.flat.text.length}b(Oe,St);let Kt=D(bt),ln=D(vt),Et=Kt===ln;if(ct=Et,Ve&&!Et)continue;let _t=Et?null:new Map;if(_t)for(let H of Qe.concat(lt)){let ke=g.get(H).flat.text.length;b(Oe,ke*16),_t.set(H,new Uint8Array(ke))}let on=H=>{let ke=[];for(let Me of H){let Te=g.get(Me);Te.flat.atoms.length?ke.push(...E(Te,Oe)):ke.push({unit:Me,raw:Te.flat.text,from:0})}return ke},Bt=[];for(let H of Et?[]:Qe){let ke=V(H);if(!Mt.has(ke))continue;let Me=A(H,null,Oe),Te=A(ke,v,Oe);b(Oe,Me.flat.text.length+Te.flat.text.length);let Be=Me.flat.text&&Te.flat.text.startsWith(Me.flat.text)?0:Me.flat.text&&Te.flat.text.endsWith(Me.flat.text)?Te.flat.text.length-Me.flat.text.length:-1;if(Be>=0&&B(Me,Te,Be,Me.flat.text.length,Oe)){_t.get(H).fill(1),_t.get(ke).fill(1,Be,Be+Me.flat.text.length),M(Bt,H,ke,0,Me.flat.text.length,Be,Oe);continue}let _=T(E(Me,Oe),E(Te,Oe),Oe);if(!_){Ut=!0;break}for(let[K,de]of _)_t.get(H).fill(1,K.from,K.to),_t.get(ke).fill(1,de.from,de.to),M(Bt,H,ke,K.from,K.to,de.from,Oe)}if(Ut)continue;let Lt=null,G=null;if(!Et)for(let H of Qe){let ke=V(H),Me=g.get(H);if(!ke||Me.flat.atoms.length||!Mt.has(ke))continue;let Te=Me.flat.text,Be=_t.get(H);b(Oe,Te.length*3+lt.length);let _=-1,K=-1,de=!1;for(let Ue=0;Ue<Te.length;Ue++)nn.test(Te[Ue])||(Be[Ue]?de=!0:(_<0&&(_=Ue),K=Ue+1));if(!de||_<0)continue;let Ee=!0;for(let Ue=_;Ue<K;Ue++)if(Be[Ue]&&!nn.test(Te[Ue])){Ee=!1;break}if(!Ee)continue;let ge=D(Te.slice(_,K)),ee=null,pe=!1;for(let Ue of lt){if(k.baseOf(Ue))continue;let xe=g.get(Ue);if(!xe.flat.atoms.length&&(b(Oe,xe.flat.text.length),D(xe.flat.text)===ge)){if(ee){pe=!0;break}ee=Ue}}if(pe){(G||=new Set).add(H);continue}if(!ee||G?.has(H))continue;let F=!1;for(let Ue of Qe){if(Ue===H||!Mt.has(V(Ue)))continue;let xe=g.get(Ue);if(xe.flat.atoms.length)continue;let Je=_t.get(Ue);b(Oe,xe.flat.text.length*3);let it="",ft=!1;for(let Ht=0;Ht<xe.flat.text.length;Ht++)nn.test(xe.flat.text[Ht])||(Je[Ht]?ft=!0:it+=xe.flat.text[Ht]);ft&&it===ge&&(G||=new Set,G.add(H),G.add(Ue),F=!0)}if(F)continue;let re=g.get(ee).flat.text;b(Oe,K-_+re.length);let Se=_,je=0;for(;Se<K&&je<re.length;){for(;Se<K&&nn.test(Te[Se]);)Se++;for(;je<re.length&&nn.test(re[je]);)je++;if(Se>=K||je>=re.length)break;M(Lt||=[],H,ee,Se,Se+1,je,Oe),Se++,je++}Be.fill(1,_,K),_t.get(ee).fill(1)}let Y=H=>{let ke=[];for(let Me of H){let Te=A(Me,y.has(Me)?null:v,Oe),Be=_t.get(Me);for(let _ of E(Te,Oe)){let K=_.from;for(;K<_.to;){for(;K<_.to&&Be[K];)K++;let de=K;for(;K<_.to&&!Be[K];)K++;if(K>de){let Ee=Te.flat.text.slice(de,K);xn.test(Ee)&&ke.push({..._,raw:Ee,len:K-de,k:_.atom?_.k:Ee,from:de,to:K})}}}}return ke},we=Et?on(Qe):Y(Qe),h=Et?on(lt):Y(lt),P=Et?Kt:we.map(H=>D(H.raw)).join(""),X=Et?ln:h.map(H=>D(H.raw)).join("");if((!P||!X)&&!Lt)continue;let le=Lt||[];if(P&&X&&P===X){let H=0,ke=0,Me=0,Te=0;for(;H<we.length&&ke<h.length;){let Be=we[H],_=h[ke];for(;Me<Be.raw.length&&nn.test(Be.raw[Me]);)Me++;for(;Te<_.raw.length&&nn.test(_.raw[Te]);)Te++;if(Me===Be.raw.length){H++,Me=0;continue}if(Te===_.raw.length){ke++,Te=0;continue}if((Be.atom||_.atom)&&Be.k!==_.k){Ut=!0;break}M(le,Be.unit,_.unit,Be.from+Me,Be.from+Me+1,_.from+Te,Oe),Me++,Te++}}else if(P&&X){let H=T(we,h,Oe);if(!H)continue;for(let[ke,Me]of H)M(le,ke.unit,Me.unit,ke.from,ke.to,Me.from,Oe)}if(Ut)continue;let te=new Map;for(let H of le)if(!G?.has(H.source)){if(V(H.source)===H.target){Et&&Bt.push(H);continue}te.has(H.source)||te.set(H.source,[]),te.get(H.source).push(H)}for(let[H,ke]of te){let Me=A(H,null,Oe),Te=V(H),Be=Me.flat.text,_=[],K=new Set,de=n[1-j],Ee=de.V.twin(H),ge=Ee&&de.V.here(Ee)?A(Ee,de.A,Oe):null,ee=(xe,Je)=>{let it=E(xe,Oe),ft=E(Je,Oe);return b(Oe,xe.flat.text.length+Je.flat.text.length+it.length+ft.length),xe.flat.text===Je.flat.text&&it.length===ft.length&&it.every((Ht,Wt)=>Ht.k===ft[Wt].k)},pe=Te&&ge&&ge.flat.text!==Be&&ee(A(Te,v,Oe),ge);for(let xe of new Set(ke.map(Je=>Je.target))){if(H.nodeType!==1&&xe.nodeType!==1)continue;let Je=A(xe,v,Oe),it=k.baseOf(xe);if(H.nodeType!==1&&it||(b(Oe,Be.length*2+Je.flat.text.length*3+Bt.length*2),Te&&D(Be)===D(Je.flat.text)&&A(Te,v,Oe).flat.text.trim()))continue;if(!Te&&!it&&H.nodeType===1&&xe.nodeType===1){let Ct=a(H),Vt=J(xe);if(Ct&&Vt&&Ct!==Vt)continue}let ft=Je.flat.text,Ht=Be&&(ft.startsWith(Be)||ft.endsWith(Be)),Wt=!1;if(!Te&&ge&&it&&ge.flat.text!==Be){let Ct=A(it,null,Oe).flat.text,Vt=c.get(H)<c.get(it)?ge.flat.text:Ct,C=c.get(H)<c.get(it)?Ct:ge.flat.text;b(Oe,Vt.length+C.length+ft.length),Wt=!!Vt&&!!C&&Vt.length+C.length<=ft.length&&ft.startsWith(Vt)&&ft.endsWith(C)&&!ft.slice(Vt.length,ft.length-C.length).trim()}let Gt=!Me.flat.atoms.length&&!ge?.flat.atoms.length&&!Je.flat.atoms.length&&(pe&&Ht||Wt);if(Te&&it){let Ct=A(Te,v,Oe).flat.text,Vt=Be.startsWith(Ct)||Be.endsWith(Ct),C=A(it,null,Oe).flat.text,L=Je.flat.text,ne=L.startsWith(C)||L.endsWith(C),me=!n[1-j].V.twin(it)&&!Bt.some(he=>he.source===it&&xn.test(C.slice(he.from,he.to)));if(!Et&&(!Vt&&!Gt||!ne&&!me)){let he=ha(H,xe,ke,Qe,lt,g,_t,E,b,Oe);if(!he)continue;let ae=v.weak?.has(H)&&!v.identityPaired?.has(H)&&Be.trim()===he;if(!Vt&&!Gt&&!ae)continue;let se=v.weak?.has(it)&&!v.identityPaired?.has(it)&&ft.trim()===he&&!g.get(it).flat.atoms.length&&!Bt.some(Re=>Re.source===it&&xn.test(C.slice(Re.from,Re.to)));if(!ne&&!me&&!se&&!ga(it,xe,C,ft,Bt,E(Je,Oe),b,Oe))continue;ae&&K.add(xe)}}Gt&&K.add(xe),b(Oe,ke.length),_.push(...ke.filter(Ct=>Ct.target===xe))}if(!_.length)continue;let F=new Uint8Array(Be.length);b(Oe,Be.length*4+Bt.length);for(let xe of _)F.fill(1,xe.from,xe.to);let re=[];for(let xe=0;xe<Be.length;xe++)nn.test(Be[xe])||re.push(xe);if(!re.length)continue;let Se=new Set(_.map(xe=>xe.target));if(!Et&&Te&&Se.size>1&&da(Se,le,Bt,k,g,Oe,b)){if(m||=new Map,m.set(H,(m.get(H)||0)|1<<j),e){let xe=Ir({source:H,side:j,views:n,eligible:r,blocked:d,baseId:a,model:A,tokensOf:E,budget:Oe,charge:b});if(xe){b(Oe,xe.to-xe.from);let Je=!0;for(let it=xe.from;it<xe.to;it++)if(xn.test(Be[it])&&!F[it]){Je=!1;break}Je&&(N||=[]).push(xe)}}continue}let je=re.filter(xe=>or.test(Be[xe]));if(!_.some(xe=>or.test(Be.slice(xe.from,xe.to)))&&!re.every(xe=>F[xe]))continue;if(!Te&&!Array.from(Se).some(xe=>K.has(xe))&&!re.every(xe=>F[xe])&&!(je.length&&F[je[0]]&&F[je[je.length-1]]&&Se.size===1)){let xe=null,Je=0,it=0,ft=null,Ht=null;if(!Te&&ge&&H.nodeType===1&&!Me.flat.atoms.length){let Wt=E(Me,Oe).filter(Gt=>or.test(Gt.raw));b(Oe,lt.length+Be.length);for(let Gt of lt){let Ct=k.baseOf(Gt);if(!Ct||Ct===H||Ct.nodeType!==1||Gt.nodeType!==1||Ct.tagName!==H.tagName||Gt.tagName!==Ct.tagName)continue;let Vt=c.get(H),C=c.get(Ct),L=!0;for(let $e=Math.min(Vt,C)+1;$e<Math.max(Vt,C);$e++){let rt=t[$e];if(b(Oe,rt.nodeType===1?1:rt.value.length+1),rt.nodeType===1||rt.value.trim()){L=!1;break}}if(!L)continue;let ne=A(Ct,null,Oe),me=A(Gt,v,Oe);if(ne.flat.atoms.length||me.flat.atoms.length)continue;let he=ne.flat.text,ae=me.flat.text;if(b(Oe,he.length+ae.length+Be.length),!he||!Wt.length)continue;let se=0,Re=ae.length;if(Vt<C&&ae.endsWith(he))Re-=he.length;else if(Vt>C&&ae.startsWith(he))se=he.length;else continue;for(;se<Re&&nn.test(ae[se]);)se++;for(;Re>se&&nn.test(ae[Re-1]);)Re--;let _e=ae.slice(se,Re);if(!(!_e||!(_e.startsWith(Wt[0].raw)||_e.endsWith(Wt[Wt.length-1].raw)))){if(xe){xe=null;break}xe=Gt,Je=se,it=Re,ft=Wt[0],Ht=Wt[Wt.length-1]}}}if(b(Oe,_.length),!xe||!Se.has(xe)||!_.some(Wt=>Wt.target===xe&&(Wt.from<=ft.from&&Wt.to>=ft.to&&Wt.targetFrom+ft.from-Wt.from===Je||Wt.from<=Ht.from&&Wt.to>=Ht.to&&Wt.targetFrom+Ht.to-Wt.from===it)))continue}if(Te&&!(re.every(xe=>F[xe])&&(Et||Array.from(Se).some(xe=>K.has(xe))))&&!Bt.some(xe=>xe.source===H&&xn.test(Be.slice(xe.from,xe.to))))continue;let Ue=!1;if(Et){b(Oe,Bt.length+re.length);for(let xe of Bt)xe.source===H&&(b(Oe,xe.to-xe.from),F.fill(1,xe.from,xe.to));Ue=!0;for(let xe of re)if(!F[xe]){Ue=!1;break}}for(let xe of Se){b(Oe,_.length);let Je=_.filter(ft=>ft.target===xe);tt.push({side:j,source:H,target:xe,runs:Je,models:g,retained:Bt,conservedSource:Ue}),H.nodeType===1&&et.add(H),xe.nodeType===1&&et.add(xe);let it=k.baseOf(xe);it?.nodeType===1&&et.add(it)}}if(w.push(...tt),Ve&&tt.length)for(let H of Ve)ie.add(H);for(let H of et)p.add(H)}catch(Qe){if(Qe!==O)throw Qe}finally{if(l&&!Ve&&!ct){let Qe=fa({base:t,views:n,side:j,attempt:x,eligible:r,blocked:d,baseId:a,model:A,tokensOf:E,charge:b,exhausted:O,limit:f});Qe&&(R||=[]).push(...Qe)}if(e&&!Ve&&!ct){let Qe=ci({base:t,views:n,side:j,attempt:x,eligible:r,blocked:d,baseId:a,model:A,tokensOf:E,certificates:w,charge:b,exhausted:O,limit:f});Qe&&(N||=[]).push(...Qe)}}}}let z=w.length?new Map:null;for(let j of w){let k=z.get(j.source);k||z.set(j.source,k=[]),k.push(j)}let U=null;if(z){let j=null;for(let[k,v]of z){let J=m?.get(k)||0;if(v.length<2&&!J)continue;let q=0;for(let V of v)V.conservedSource&&(q|=1<<V.side);for(let V of v){if(V.conservedSource)continue;let Ae=1<<V.side,Ie=!0;if(q&Ae)Ie=!1;else if(J&Ae){Ie=!1;try{Ie=ca(V,j||=Qt(f),b)}catch(De){if(De!==O)throw De}}Ie||(U||=new Set).add(V)}}}if(U){let j=0;for(let k of w)U.has(k)||(w[j++]=k);w.length=j;for(let[k,v]of z){j=0;for(let J of v)U.has(J)||(v[j++]=J);v.length=j,j||z.delete(k)}p.clear();for(let k of w){let{source:v,target:J,side:q}=k;v.nodeType===1&&p.add(v),J.nodeType===1&&p.add(J);let V=n[q].V.baseOf(J);V?.nodeType===1&&p.add(V)}}if(N){let j=Qt(f),k=!1;for(let v of N){let J=!1,q=z?.get(v.source);if(q&&!k)try{J=Rr(v,q,j,b)}catch(V){if(V!==O)throw V;k=!0}J||e(v)}}if(R){let j=new Set,k=Qt(f);try{for(let v of R){if(b(k,1),j.has(v.source))continue;j.add(v.source);let J=!1;for(let q of w)if(b(k,1),q.source===v.source||q.target===v.local||q.target===v.remote){J=!0;break}J||l(v)}}catch(v){if(v!==O)throw v}}for(let j of t)if(p.has(j))for(let{V:k}of n){let v=k.twin(j);v&&k.here(v)&&p.add(v)}return w.length?{blocks:p,certificates:w,certificatesBySource:z,models:g}:null}function ba({certificates:e,scopes:l,flats:t,keys:n,limit:r=64e4}){let u=Symbol(),o=Qt(r),a=m=>{if(m>o.remaining)throw u;o.remaining-=m},i=l.map(m=>new Set(m)),f=new Map,y=new Map,c=(m,d)=>{let p=f.get(m);if(p||f.set(m,p=new Map),p.has(d))return p.get(d);a(m.text.length);let O=y.get(d);if(!O){a(d.nodes.length+d.atoms.length),O={nodes:new Map,atoms:new Map};for(let B of d.nodes)O.nodes.set(B.node,B);for(let B of d.atoms)O.atoms.set(B.el,B.i);y.set(d,O)}let{nodes:b,atoms:A}=O,E=new Int32Array(m.text.length).fill(-1);for(let B of m.nodes){let T=b.get(B.node);if(!(!T||B.e-B.s!==T.e-T.s)){a(B.e-B.s);for(let M=B.s;M<B.e;M++)E[M]=T.s+M-B.s}}for(let B of m.atoms){let T=A.get(B.el);T!==void 0&&(E[B.i]=T)}return p.set(d,E),E},g=(m,d,p,O,b)=>{let A=m[m.length-1];A&&A.to===d&&A.target+A.to-A.from===O&&A.kind===b?A.to=p:m.push({from:d,to:p,target:O,kind:b})},w=(m,d,p,O)=>{a((O-p)*4);let b=[],A=p,E=M=>{let D=m.text.slice(A,M);for(let z of tn(D,wn(D)))z.from=A,z.to=A+z.len,b.push(z),A+=z.len},B=0,T=m.atoms.length;for(;B<T;){a(1);let M=B+T>>>1;m.atoms[M].i<p?B=M+1:T=M}for(let M=B;M<m.atoms.length&&m.atoms[M].i<O;M++){a(1);let D=m.atoms[M];E(D.i),b.push({k:d(D),raw:Sn,len:1,from:A,to:A+1}),A++}return E(O),b},N=(m,d,p,O,b,A)=>{if(p===O||b===A)return;if(O-p===A-b){a((O-p)*4);let k=!0;for(let v=p,J=b;v<O;v++,J++){if(t[0].text[v]!==t[d].text[J]){k=!1;break}let q=t[0].atomAt.get(v),V=t[d].atomAt.get(J);if(!!q!=!!V||q&&n[0](q)!==n[d](V)){k=!1;break}}if(k){g(m,p,O,b,"retained");return}}let E=w(t[0],n[0],p,O),B=w(t[d],n[d],b,A),T=E.length+B.length+4,M=Math.min(E.length+B.length,4e3,Math.floor((Math.sqrt(T*T+o.remaining/2)-T)/2));if(M<1)throw u;a(4*(M+1)*(T+M+1));let D=jn(E,B,M),z=0,U=0,j=()=>{let k=E[z++],v=B[U++];a(k.len),k.raw===v.raw&&g(m,k.from,k.to,v.from,"retained")};for(let k of D.hunks){for(;z<k.bs;)j();z=k.be,U+=k.toks.length}for(;z<E.length&&U<B.length;)j()},R=m=>{let d=e.filter(D=>D.side===m-1&&i[0].has(D.source)&&i[m].has(D.target));if(!d.length)return null;let p=[],O=(D,z,U)=>{if(!i[0].has(D.source)||!i[m].has(D.target))return;let j=c(z.get(D.source).flat,t[0]),k=c(z.get(D.target).flat,t[m]);a(D.to-D.from);for(let v=0;v<D.to-D.from;v++){let J=j[D.from+v],q=k[D.targetFrom+v];if(J<0||q<0)throw u;g(p,J,J+1,q,U)}},b=new Set;for(let D of d){if(!b.has(D.retained)){b.add(D.retained);for(let z of D.retained)O(z,D.models,"retained")}for(let z of D.runs)O(z,D.models,"transfer")}p.sort((D,z)=>(a(1),D.from-z.from||D.target-z.target));let A=[];for(let D of p){a(1);let z=A[A.length-1];if(z&&D.from<z.to){if(D.target-D.from!==z.target-z.from)throw u;z.to=Math.max(z.to,D.to),D.kind==="transfer"&&(z.kind="transfer")}else A.push(D)}let E=[],B=0,T=0;for(let D of A){if(D.target<T)throw u;N(E,m,B,D.from,T,D.target),E.push(D),B=D.to,T=D.target+D.to-D.from}N(E,m,B,t[0].text.length,T,t[m].text.length);let M=Gn({base:t[0],side:t[m],retained:E.filter(D=>D.kind==="retained"),transfers:E.filter(D=>D.kind==="transfer"),baseAtomKey:n[0],sideAtomKey:n[m],budget:o});if(M.status!=="ready"||!M.monotone)throw u;return M};try{let m=R(1),d=R(2);return m||d?{local:m,remote:d}:{fallback:!0}}catch(m){if(m!==u)throw m;return{fallback:!0}}}function uo(e,l,t=!1){let n=-1,r=-1;for(let o=0;o<e.list.length;o++){let a=e.list[o];a.bLo<l.lo||a.bLo>l.hi||(n<0&&(n=o),r=o)}let u=[];for(let o=n;o>=0&&o<=r;o++){let a=e.list[o],i=!t&&o===n?a.inlineStart<0?a.to:a.inlineStart:a.from,f=!t&&o===r?a.inlineEnd<0?a.from:a.inlineEnd:a.to;for(let y=i;y<f;y++)u.push(e.units[y]);o<r&&u.push(e.units[a.next])}return u}var ot=e=>!!e&&e.nodeType===1,Wl=e=>ot(e)?e.getAttribute("data-id")||e.textContent||"":e.value!==void 0?e.value:e.nodeValue||"",pn=new Set("P H1 H2 H3 H4 H5 H6 DIV LI DD DT BLOCKQUOTE FIGCAPTION SUMMARY ADDRESS".split(" "));function ir(e){for(let l of e)if(pn.has(l.tagName))return!0;return!1}function ka(e,l,t){let n=null;for(let r of l.childNodes)if(!(!ot(r)||!t(r)||!r.isEqualNode(e))){if(n)return null;n=r}if(!n)return null;for(let r of e.parentNode.childNodes)if(r!==e&&r.isEqualNode(e))return null;return n}var Bl="[id],[data-id],script,head>*";function co(e,l){return t=>{if(e!==null&&t.tagName==="SCRIPT"){let n=Cl(t,e);if(n)return"merge:"+n.key}return t.parentElement&&t.parentElement.tagName==="HEAD"?Wi(t,l):null}}function ar(e,l,t,n){let r=n.ignored,u=n.stats||Kn(),o=_o({ignored:r,ignoreAttribute:n.ignoreAttribute,stats:u}),{unitsOf:a,meta:i}=o,f=n.baseURI,y=n.mergeTags!==null,c=co(n.mergeTags,f),g=C=>L=>{let ne=c(L);return ne!==null?ne:C(L)},w=g(n.identity.base),N=g(n.identity.local),R=g(n.identity.remote),m=n.authored||n.identity,d=C=>C&&C.nodeType===9?C.documentElement:C,p=d(e),O=d(l),b=d(t),A=globalThis.__hyperMorphProfile,E=A?performance.now():0,B=C=>C===kn?Bl:null,T=n.scope||null,M=T?T.baseDropped:new Set,D=new Set,z=T?T.remoteDropped:new Set,U=T?T.baseIndex:zl(p,w,r,B(n.identity.base),M),j=n.localIsBase||p===O?null:zl(O,N,r,B(n.identity.local),D),k=T?T.remoteIndex:zl(b,R,r,B(n.identity.remote),z),v=C=>{let L=ot(C)&&N(C);return L&&j?.get(L)===C&&!U.has(L)?L:null},J=C=>{let L=ot(C)&&R(C);return L&&k.get(L)===C&&!U.has(L)?L:null},q=j?Mr(p,O,{analyzer:o,baseIndex:U,sideIndex:j,baseId:m.base,sideId:m.local,baseKey:w,sideKey:N,baseDropped:M,sideDropped:D,stats:u}):go(),V=Mr(p,b,{analyzer:o,baseIndex:U,sideIndex:k,baseId:m.base,sideId:m.remote,baseKey:w,sideKey:R,baseDropped:M,sideDropped:z,stats:u,scope:T,comparisons:n.comparisons});if(T){if(!T.held(V))return null;for(let C of T.dropped)xr(C)}let Ae=null;function Ie(C){if(!Ae){Ae=new WeakMap;let L=[p];for(;L.length;){let ne=L.pop();ne.tagName==="TEMPLATE"&&ne.content&&Ae.set(ne.content,ne);for(let me of o.childrenOf(ne))me.nodeType===1&&L.push(me)}}return Ae.get(C)||null}let De=C=>{let L=ot(C)||C.nodeType?C.parentNode:C.parent;return L&&L.nodeType===11?Ie(L):L};if(V.moved.size){let C=!1;for(let L of Array.from(V.moved))!ot(L)||V.identityPaired.has(L)||!m.base(L)||h(V,De(L))||(V.unpair(L),C=!0);C&&V.rematch()}Y(),we(q,V),we(V,q);for(let C of[q,V])if(C.refused)for(let L of C.refused)C.moved.has(L)||u.ambiguousMoves++;A&&(A.alignTotal=(A.alignTotal||0)+(performance.now()-E),E=performance.now());let ce=p.ownerDocument.implementation.createHTMLDocument(""),Ne=new WeakMap,Xe=new WeakMap,ie=[],x=[],Z=new Set,ue=[],fe=new Set,Pe=new Set,Ve=new Set,Oe=new WeakMap,tt=null,et=n.lineage?.locals.length?yi():null,ct=C=>{let L=Lr(C);return L&&et&&et.consume(C.local),L},Qe=n.conflicts||"remote",lt=C=>ie.push(C),Mt=C=>ie.push(C),Ut=ta({roots:{base:p,local:O,remote:b},L:q,R:V,unitsOf:a,provenance:Ne,policy:Qe}),bt=(C,L)=>{x.push(C),L&&Ut.note(C,L)},vt=null,St=null,Kt=Lt(),ln=null,Et=H(p,q.map.get(p),V.map.get(p),!!n.localIsBase,!!n.childrenOnly);Et.tagName==="HTML"?ce.replaceChild(Et,ce.documentElement):ce.body.appendChild(Et),vt?.drain(Et),St?.drain(Et),A&&(A.build=(A.build||0)+(performance.now()-E));let _t=n.childrenOnly?!it(xe(Et),xe(b)):!Se(Et,b),on=Ut.finish(Et),Bt=et?vi({locals:n.lineage.locals,rec:et,root:Et,provenance:Ne,segments:ue,ignored:r}):null;return{doc:ce,root:Et,provenance:Ne,textMappers:Xe,decisions:ie,conflicts:x,recoveryLinks:on,localDiverged:_t,mergedScripts:Z,segments:ue,remoteIdOf:n.identity.remote,customIdentity:n.identity.remote!==kn,L:q,R:V,stats:u,lineage:Bt};function Lt(){let C=new Map,L=new Set;if(n.localIsBase||!q.insertedByHash)return{partner:C,drop:L};let ne=q.insertedByHash(),me=V.insertedByHash();if(!ne.size||!me.size)return{partner:C,drop:L};let he={ignored:r,remoteWins:n.remoteWins,inlineCache:Oe},ae=Le=>{let wt=0;for(let At=Le.parentNode;At;At=At.parentNode)wt++;return wt},se=[],Re=Le=>{let wt=Le.textContent.trim();return wt.split(/\s+/).length>=3||wt.replace(/\s/g,"").length>=12},_e=Le=>{let wt=h(q,Le),At=h(V,Le);return wt&&q.reverse.get(wt.parentNode)!==Le.parentNode||At&&V.reverse.get(At.parentNode)!==Le.parentNode},$e=(Le,wt,At)=>{for(let Ot of At.parentNode.children){let mn=Ot!==At&&Le.reverse.get(Ot);if(mn&&_e(mn))return!0}let jt=Le.reverse.get(At.parentNode);if(jt){for(let Ot of jt.children)if(!h(wt,Ot)&&!r(Ot))return!0}return!1},rt=new Map([[q,new Map],[V,new Map]]),Ye=(Le,wt)=>{let At=rt.get(Le),jt=At.get(wt);if(jt===void 0){jt=!1;for(let Ot of wt.children)if(Le.reverse.has(Ot)||Ye(Le,Ot)){jt=!0;break}At.set(wt,jt)}return jt},at=new Map;for(let Le of me.values())for(let wt of Le){let At=J(wt);At&&at.set(At,wt)}for(let Le of ne.values())for(let wt of Le){let At=v(wt),jt=At?at.get(At):null;jt&&jt.tagName===wt.tagName&&!En(wt,he)&&!En(jt,he)&&!n.remoteWins(wt)&&!n.remoteWins(jt)&&se.push([wt,[jt],ae(wt),!0,!0])}for(let[Le,wt]of ne){let At=me.get(Le);if(!At)continue;let jt=wt.length===1&&At.length===1;for(let Ot of wt)!En(Ot,he)&&!v(Ot)&&se.push([Ot,At,ae(Ot),jt&&(Re(Ot)||$e(q,V,Ot)||$e(V,q,At[0]))])}if(!se.length)return{partner:C,drop:L};se.sort((Le,wt)=>Le[2]-wt[2]);let pt=new Set,Nt=new Set,Tt=Le=>{for(let wt of Le.querySelectorAll("*"))pt.add(wt)},Rt=(Le,wt)=>Le.reverse.get(wt.parentNode)||null;for(let[Le,wt,,At,jt]of se){if(pt.has(Le)||Nt.has(Le)||jt&&(Ye(q,Le)||Ye(V,wt[0])))continue;let Ot=Rt(q,Le),mn=an=>!Nt.has(an)&&!pt.has(an)&&(jt||an.tagName===Le.tagName&&!J(an)&&o.equalUnits(Le,an)),$t=wt.find(an=>Ot&&Rt(V,an)===Ot&&mn(an))||(At?wt.find(mn):null);if(!$t)continue;Nt.add(Le),Nt.add($t);let Wn=Ot&&Rt(V,$t)===Ot;(!jt||!Wn||o.equalUnits(Le,$t))&&(Tt(Le),Tt($t)),!Wn&&(C.set(Le,$t),C.set($t,Le),L.add(Qe==="local"?$t:Le))}return{partner:C,drop:L}}function G(C,L,ne){if(fe.add(C),Kt.drop.has(C))return null;fe.add(ne);let me=L==="local"?C:ne,he=L==="local"?ne:C,ae;return o.equalUnits(me,he)?(ae=F(me,"local",!0),Ne.get(ae).remote=he):ae=pe(me,he),bt({kind:"structure",el:ae,detail:"both-moved",base:null,local:me,remote:he},{unit:{b:null,l:me,r:he}}),lt({kind:"insert",el:ae,source:"both"}),ae}function Y(){if(!q.weak||!V.weak||!q.weak.size||!V.weak.size||!q.unpair)return;let C=new Map;for(let ne of q.weak){let me=h(q,ne);ot(ne)&&ot(me)&&C.set(o.unitHash(me),ne)}let L=!1;for(let ne of Array.from(V.weak)){let me=h(V,ne);if(!ot(ne)||!ot(me))continue;let he=C.get(o.unitHash(me));if(!he||he===ne||!q.weak.has(he)||h(q,ne)&&h(V,he))continue;let ae=h(q,he);ae.tagName===me.tagName&&o.equalUnits(ae,me)&&(q.unpair(he),V.unpair(ne),L=!0)}L&&(q.rematch(),V.rematch())}function we(C,L){if(!C.weak||!C.weak.size||!L.insertedByHash)return;let ne=L.insertedByHash();if(!ne.size)return;let me=!1;for(let he of Array.from(C.weak)){let ae=h(C,he);if(!ae)continue;let se=C===q?v(ae):J(ae);if(se){let _e=(C===q?k:j)?.get(se);_e&&_e.tagName===ae.tagName&&!L.reverse.has(_e)&&(C.unpair(he),me=!0);continue}let Re=ne.get(o.unitHash(ae));Re&&Re.some(_e=>_e.tagName===ae.tagName&&o.equalUnits(_e,ae))&&(C.unpair(he),me=!0)}me&&C.rematch()}function h(C,L){if(!L)return null;if(C.map.has(L))return C.map.get(L);let ne=[],me=De(L);for(;me&&!C.map.has(me);me=De(me))ne.push(me);let he=me;if(!he||!C.identical.has(he))return null;C.pairIdenticalChildren(he);for(let se=ne.length-1;se>=0;se--)C.pairIdenticalChildren(ne[se]);let ae=C.map.get(L)||null;return ae&&u.lazyTwins++,ae}function P(C,L,ne,me){if(ot(C)&&pn.has(C.tagName)&&!q.identical.has(C)&&(C.previousSibling?.nodeType===3||C.nextSibling?.nodeType===3)){let Re=De(C),_e=h(q,C),$e=h(V,C);_e&&$e&&Ct(_e,h(q,Re),q)&&!Ct($e,h(V,Re),V)&&(St||=aa({L:q,R:V,twinIn:h,unitsOf:a,view:X,parentOf:De,ignored:r,remoteWins:n.remoteWins,eligible:rt=>ot(rt)&&pn.has(rt.tagName),build:H,out:ce,policy:Qe,provenance:Ne,textMappers:Xe,segments:ue,conflicts:x,conflict:bt,decisions:ie}),St.ensureOwner(C))}if(L===null)return null;if(me!==void 0)return vt||=hl(Ne,De,q,V,h,H,r,n.remoteWins,x,bt,le,O,b),vt.plan(C,L,ne,!!me),me&&(vt.produced(C,me),Pe.add(C)),me;if(Pe.has(C)||Ve.has(C))return bt({kind:"structure",el:null,detail:"both-moved",base:C},{subject:C}),Pe.has(C)?null:F(ne,L);vt||=hl(Ne,De,q,V,h,H,r,n.remoteWins,x,bt,le,O,b),vt.plan(C,L,ne,!0);let he=h(q,C),ae=h(V,C);(!he||!ae)&&bt({kind:"structure",el:null,detail:"move-beats-delete",base:C},{subject:C,deleted:he?"remote":"local"});let se=H(C,he,ae,!1);return(L==="local"?lt:Mt)({kind:"move",el:se,source:L}),se}function X(C,L,ne,me){return me||!L||L===ne?{el:ne,asBase:!0,twin:he=>he,baseOf:he=>he,units:a(ne),here:()=>!0,parentOfTwin:()=>ne}:{el:L,asBase:!1,twin:he=>h(C,he),baseOf:he=>C.reverse.get(he),units:a(L),here:he=>ot(he)?he.parentNode===L||L.tagName==="TEMPLATE"&&he.parentNode===L.content:he.parent===L||L.tagName==="TEMPLATE"&&he.parent===L.content}}function le(C,L,ne){return!L||ne&&ne.identical.has(C)?!1:ot(C)?!o.equalUnits(C,L)||!te(C,L,ne):C.value!==L.value}function te(C,L,ne){if(!ne||C===L)return!0;let me=[[C,L]];for(;me.length;){let[he,ae]=me.pop(),se=a(he),Re=a(ae);for(let _e=0;_e<se.length&&_e<Re.length;_e++){let $e=se[_e],rt=Re[_e];if(!ot($e)||!ot(rt))continue;let Ye=ne.map.get($e);if(Ye!==void 0&&Ye!==rt)return!1;let at=ne.reverse.get(rt);if(at!==void 0&&at!==$e)return!1;me.push([$e,rt])}}return!0}function H(C,L,ne,me,he=!1){let ae=me||(ne?n.remoteWins(ne):n.remoteWins(C)),se=C.namespaceURI&&C.namespaceURI!=="http://www.w3.org/1999/xhtml"?ce.createElementNS(C.namespaceURI,C.tagName):ce.createElement(C.tagName),Re={base:C,local:L||null,remote:ne||null};if(Ne.set(se,Re),ae&&!me&&L&&le(C,L,q)&&(!ne||!o.equalUnits(L,ne))&&bt({kind:"structure",el:se,detail:"remote-wins",base:C,local:L,remote:ne||null},{subject:C}),fe.add(C),Pe.add(C),L&&fe.add(L),ne&&fe.add(ne),n.skipUnchanged&&!he&&(n.localIsBase||q.identical.has(C))&&ne&&V.identical.has(C)&&!n.remoteWins(C)){Re.unchanged=!0;for(let $e of C.attributes)$e.namespaceURI?se.setAttributeNS($e.namespaceURI,$e.name,$e.value):se.setAttribute($e.name,$e.value);return vt?.produced(C,se),se}Ve.add(C),he||Be(C,ae?C:L,ne,se);let _e=C.tagName;if(rn(C))Te(C,ae?C:L,ne,se);else if(_e==="TEXTAREA"){let $e=ae?C:L,rt=C.textContent,Ye=$e?$e.textContent:rt,at=ne?ne.textContent:rt,pt=ke(C);if(pt&&Ye!==rt&&at!==rt){let Nt=Ee(pt,ke($e),ke(ne),ae);Nt&&se.appendChild(Nt)}else se.textContent=Me(rt,Ye,at,se,"text")}else if(!St?.render(C,se)){let $e=re(C,L,ne,ae,se),rt=_e==="TEMPLATE"&&se.content?se.content:se;for(let Ye of $e)rt.appendChild(Ye)}return Ve.delete(C),vt?.produced(C,se),se}function ke(C){if(!C)return null;let L=a(C)[0];return L&&!ot(L)&&L.kind==="text"?L:null}function Me(C,L,ne,me,he){if(L===ne)return L;if(L===C)return ne!==C&&Mt({kind:he,node:me,source:"remote"}),ne;if(ne===C)return lt({kind:he,node:me,source:"local"}),L;let ae=Qe==="local"?L:ne;return bt({kind:he,node:me,base:C,local:L,remote:ne,resolved:ae},{site:"whole",el:me}),ie.push({kind:he,node:me,source:"both"}),ae}function Te(C,L,ne,me){let he=C.textContent,ae=L?L.textContent:he,se=ne?ne.textContent:he,Re=y?Cl(C,n.mergeTags,!0):null;if(Re&&ae!==se){let _e=ne&&ne.getAttribute("merge-key")||C.getAttribute("merge-key"),{text:$e,warnings:rt,conflicts:Ye}=oo(n.localIsBase?void 0:he,ae,se,{parse:Re.recognizer.parse,keyCandidates:_e?_e.split(/[\s,]+/).filter(Boolean):void 0});for(let at of rt)console.warn(`[hyper-morph] merge "${Re.raw}": ${at}`);for(let at of n.localIsBase?[]:Ye)bt({kind:"json",node:me,name:Re.raw,path:at.path,base:at.base,local:at.local,remote:at.remote,resolved:at.resolved});me.textContent=$e,Z.add(me),$e!==se?lt({kind:"text",node:me,source:$e===ae?"local":"both"}):$e!==he&&Mt({kind:"text",node:me,source:"remote"});return}me.textContent=Me(he,ae,se,me,"text")}function Be(C,L,ne,me){let he=new Map;for(let ae of[C,L,ne])if(ae)for(let se of ae.attributes)n.ignoreAttribute(ae,se.name)||he.set(se.name,se);for(let[ae,se]of he){let Re=C?C.getAttribute(ae):null,_e=L?L.getAttribute(ae):Re,$e=ne?ne.getAttribute(ae):Re,rt;_e===$e?rt=_e:_e===Re?(rt=$e,Mt({kind:"attr",el:me,name:ae,source:"remote"})):$e===Re?(rt=_e,lt({kind:"attr",el:me,name:ae,source:"local"})):(rt=de(ae,Re,_e,$e)??_(ae,[C,L,ne],Re,_e,$e),rt===void 0&&(rt=Qe==="local"?_e:$e,bt({kind:"attr",el:me,name:ae,base:Re,local:_e,remote:$e,resolved:rt},{el:me,sample:se})),ie.push({kind:"attr",el:me,name:ae,source:"both"})),rt!=null&&(se.namespaceURI?me.setAttributeNS(se.namespaceURI,se.name,rt):me.setAttribute(ae,rt))}}function _(C,L,ne,me,he){let ae=n.attributeMerge;if(typeof ae!="function")return;let se=L.filter(Boolean).map(Re=>ae(Re,C));if(!(!se.length||se.some(Re=>Re!==se[0]))){if(se[0]==="tokens")return K(ne,me,he);if(se[0]==="max"){let Re=Number(me),_e=Number(he);return Number.isFinite(Re)&&Number.isFinite(_e)&&me!==""&&he!==""?String(Math.max(Re,_e)):void 0}}}function K(C,L,ne){let me=at=>[...new Set((at||"").split(/\s+/).filter(Boolean))],he=me(C),ae=new Set(he),se=new Set(me(L)),Re=new Set(me(ne)),_e=at=>se.has(at)===Re.has(at)?se.has(at):se.has(at)===ae.has(at)?Re.has(at):se.has(at),$e=he.filter(_e),rt=[...new Set([...se,...Re])].filter(at=>!ae.has(at)&&_e(at)).sort(),Ye=[...$e,...rt];return Ye.length?Ye.join(" "):null}function de(C,L,ne,me){if(C==="class"){let he=$e=>new Set(($e||"").split(/\s+/).filter(Boolean)),ae=he(L),se=he(ne),Re=he(me),_e=new Set;for(let $e of new Set([...ae,...se,...Re])){let rt=ae.has($e),Ye=se.has($e),at=Re.has($e);(Ye===at?Ye:Ye===rt?at:Ye)&&_e.add($e)}return[..._e].join(" ")}if(C==="style"){let he=rt=>{let Ye=new Map;if(!rt)return Ye;let at=0,pt=null,Nt="",Tt=()=>{let Rt=Nt.indexOf(":");Rt>0&&Ye.set(Nt.slice(0,Rt).trim(),Nt.slice(Rt+1).trim()),Nt=""};for(let Rt of rt){if(pt){Nt+=Rt,Rt===pt&&(pt=null);continue}if(Rt==='"'||Rt==="'"){pt=Rt,Nt+=Rt;continue}if(Rt==="("?at++:Rt===")"&&at--,Rt===";"&&at===0){Tt();continue}Nt+=Rt}return Nt.trim()&&Tt(),Ye},ae=he(L),se=he(ne),Re=he(me),_e=new Map,$e=!1;for(let rt of new Set([...ae.keys(),...se.keys(),...Re.keys()])){let Ye=ae.get(rt)??null,at=se.get(rt)??null,pt=Re.get(rt)??null,Nt;at===pt?Nt=at:at===Ye?Nt=pt:pt===Ye?Nt=at:(Nt=Qe==="local"?at:pt,$e=!0),Nt!=null&&_e.set(rt,Nt)}return $e?void 0:[..._e].map(([rt,Ye])=>`${rt}: ${Ye}`).join("; ")}}function Ee(C,L,ne,me){let he=C.value,ae=me?he:L?L.value:"",se=ne?ne.value:"";fe.add(C),L&&fe.add(L),ne&&fe.add(ne);let Re=Zl(he,ae,se,Qe),_e=Re.text===""?null:ce.createTextNode(Re.text);_e&&(Ne.set(_e,{base:C.nodes,local:L?L.nodes:null,remote:ne?ne.nodes:null}),Xe.set(_e,Re.mapLocalOffset)),ae!==he&&se!==he?ie.push({kind:"text",node:_e,source:"both"}):ae!==he?lt({kind:"text",node:_e,source:"local"}):se!==he&&Mt({kind:"text",node:_e,source:"remote"});for(let $e of Re.conflicts)bt({kind:"text",node:_e,base:he.slice($e.bs,$e.be),local:$e.local,remote:$e.remote,resolved:$e.resolved},{site:"run",bRun:C,lRun:L,rRun:ne,node:_e,c:$e});return _e}function ge(C,L){return Tl(C,L).every(ne=>ne.bs===ne.be)}function ee(C,L){let ne=C?C.value:"",me=L?L.value:"",he;if(ne===me||!me?he=ne:ne?ge(ne,me)?he=me:ge(me,ne)?he=ne:(he=Qe==="local"?ne:Qe==="both"?ne+me:me,bt({kind:"structure",el:null,detail:"insert-collision",local:ne,remote:me,resolved:he},{unit:{b:null,l:C,r:L},localLost:Qe==="remote"})):he=me,C&&fe.add(C),L&&fe.add(L),he==="")return null;let ae=ce.createTextNode(he);return Ne.set(ae,{base:null,local:C?C.nodes:null,remote:L?L.nodes:null}),ne?lt({kind:"insert",el:ae,source:me&&ne===me?"both":"local"}):Mt({kind:"insert",el:ae,source:"remote"}),ae}function pe(C,L){let ne={ignored:r,remoteWins:n.remoteWins,inlineCache:Oe},me=Re=>a(Re).every(_e=>ot(_e)?En(_e,ne):_e.kind==="text"),he=null;if(me(C)&&me(L)){let Re=C.textContent,_e=L.textContent;Re===_e||ge(_e,Re)?he=L:ge(Re,_e)&&(he=C)}if(!he){let Re=Qe==="local",_e=F(Re?C:L,Re?"local":"remote",!0),$e=Ne.get(_e);return Re?$e.remote=L:$e.local=C,bt({kind:"structure",el:_e,detail:"insert-collision",local:C,remote:L,resolved:Re?C:L},{unit:{b:null,l:C,r:L},localLost:!Re}),_e}let ae=C.namespaceURI&&C.namespaceURI!=="http://www.w3.org/1999/xhtml"?ce.createElementNS(C.namespaceURI,C.tagName):ce.createElement(C.tagName);Be(null,C,L,ae),Ne.set(ae,{base:null,local:C,remote:L}),fe.add(C),fe.add(L);let se=ct({base:Array.from(he.childNodes),local:Array.from(C.childNodes),remote:Array.from(L.childNodes),out:ce,policy:Qe,idOf:{local:N,remote:R},ignored:r,ignoreAttribute:n.ignoreAttribute,remoteWins:n.remoteWins,provenance:Ne,textMappers:Xe,conflicts:x,conflict:bt,scope:{base:null,local:C,remote:L,units:[],at:0},synthetic:!0,decisions:ie,node:ae});ue.push(...se.segments);for(let Re of se.nodes)ae.appendChild(Re);return ae}function F(C,L,ne=!1){if(!ne&&ot(C)){let se=Kt.partner.get(C);if(se)return G(C,L,se)}if(!ot(C)){if(C.value==="")return null;let se=C.kind==="comment"?ce.createComment(C.value):ce.createTextNode(C.value);return Ne.set(se,{base:null,local:L==="local"?C.nodes:null,remote:L==="remote"?C.nodes:null}),fe.add(C),se}let me=C.namespaceURI&&C.namespaceURI!=="http://www.w3.org/1999/xhtml"?ce.createElementNS(C.namespaceURI,C.tagName):ce.createElement(C.tagName);for(let se of C.attributes)se.namespaceURI?me.setAttributeNS(se.namespaceURI,se.name,se.value):me.setAttribute(se.name,se.value);Ne.set(me,{base:null,local:L==="local"?C:null,remote:L==="remote"?C:null}),fe.add(C);let he=C.tagName==="TEMPLATE"&&me.content?me.content:me,ae=L==="local"?q:V;for(let se of a(C)){let Re=ot(se)?ae.reverse.get(se):null;if(Re&&P(Re,null,null),Re&&Pe.has(Re)){bt({kind:"structure",el:null,detail:"both-moved",base:Re},{subject:Re});continue}if(Re&&!Ve.has(Re)){let $e=h(q,Re)||null,rt=h(V,Re)||null;if($e||rt){vt||=hl(Ne,De,q,V,h,H,r,n.remoteWins,x,bt,le,O,b),vt.plan(Re,L,se,!0);let Ye=H(Re,$e,rt,!1);L==="local"?lt({kind:"move",el:Ye,source:"local"}):Mt({kind:"move",el:Ye,source:"remote"}),he.appendChild(Ye);continue}}let _e=F(se,L);_e&&he.appendChild(_e)}if(!ne&&Kt.drop.size&&C.tagName==="DIV"&&!he.firstChild&&!C.attributes.length&&!(L==="local"?N(C):R(C))&&!ae.reverse.has(C)&&!r(C)&&!n.remoteWins(C)){let se=C.firstChild;if(se&&se===C.lastChild&&ot(se)&&(Kt.drop.has(se)||ln?.has(se)))return(ln||=new WeakSet).add(C),null}return me}function re(C,L,ne,me,he){L&&q.identical.has(C)&&q.pairIdenticalChildren(C),ne&&V.identical.has(C)&&V.pairIdenticalChildren(C);let ae=X(q,L,C,me),se=X(V,ne,C,!1),Re=a(C),_e=new Set(Re),$e=new Map;for(let oe=0;oe<Re.length;oe++)$e.set(Re[oe],oe);let rt=oe=>!ot(oe)&&oe.kind==="text"&&!/[^\t\n\f\r ]/.test(oe.value),Ye=[],at=new Set,pt=new Map,Nt=new Set,Tt=et&&[],Rt=et&&[],Le=new Set,wt=[],At=null,jt=new Map;if(!ae.asBase&&!se.asBase&&!q.identical.has(C)&&!V.identical.has(C))for(let oe of Re){if(!ot(oe)||!pn.has(oe.tagName))continue;let He=ae.twin(oe),qe=se.twin(oe);He&&qe&&(!ae.here(He)||!se.here(qe))&&P(oe,null,null)}let Ot=(oe,He=!1)=>{let qe=[];for(let Ke of oe.units){if(Le.has(Ke)||!He&&rt(Ke))continue;let mt=oe.baseOf(Ke);mt&&_e.has(mt)&&qe.push(mt)}return qe},mn=oe=>Ot(oe).map(He=>$e.get(He)),$t=oe=>oe.every((He,qe)=>qe===0||He>=oe[qe-1]),Wn=()=>{let oe=!ae.asBase&&!$t(mn(ae)),He=!se.asBase&&!$t(mn(se)),qe=null;if(oe&&He){let Ke=Ot(ae),mt=Ot(se);if(qe=ya(Re.filter(Ge=>!Le.has(Ge)&&!rt(Ge)),$e,Ke,mt),qe){let Ge=sr(Ke.map(nt=>$e.get(nt))),ze=sr(mt.map(nt=>$e.get(nt)));for(let nt of Ge)ze.has(nt)&&(qe=null)}}return{lRe:oe,rRe:He,settled:qe}},an=Wn();Hl(an.lRe&&an.rRe);let{lRe:qn,rRe:bn,settled:nl}=Wn(),bl=qn&&bn;bl&&!nl&&bt({kind:"structure",el:he,detail:"both-reordered",base:C},{subject:C,lKept:Ot(ae,!0),rKept:Ot(se,!0)});let Xt=bn||!qn?{V:se,A:V,side:"remote",other:ae,otherA:q,otherSide:"local"}:{V:ae,A:q,side:"local",other:se,otherA:V,otherSide:"remote"},Cn=null,kl=null;if(bl){Cn=rl(Xt.V.units),kl=Xt.V.units,nl&&(Xt.V=va(Xt.V,nl));for(let oe of Re)rt(oe)&&fe.add(oe);for(let oe of[ae,se])for(let He of oe.units)rt(He)&&fe.add(He)}qn?lt({kind:"move",el:null,source:bn?"both":"local",base:C}):bn&&Mt({kind:"move",el:null,source:"remote",base:C});let ll=ae.asBase?[]:ae.units.filter(oe=>!ae.baseOf(oe)&&!Le.has(oe)&&!Kt.partner.has(oe)),Vn=se.asBase?[]:se.units.filter(oe=>!se.baseOf(oe)&&!Le.has(oe)&&!Kt.partner.has(oe)),Nn=new Map;if(ll.length&&Vn.length){let oe=new Map,He=new Map;for(let Ge of Vn){if(ot(Ge)){let nt=R(Ge);nt&&oe.set(nt,Ge)}let ze=o.unitHash(Ge);He.has(ze)||He.set(ze,[]),He.get(ze).push(Ge)}let qe=(Ge,ze)=>{let nt=Ge.units.indexOf(ze);for(let Fe=nt-1;Fe>=0;Fe--){let gt=Ge.baseOf(Ge.units[Fe]);if(gt)return gt}return"start"},Ke=new Map,mt=new Map;for(let Ge of Vn){let ze=qe(se,Ge);ot(Ge)?(mt.has(ze)||mt.set(ze,[]),mt.get(ze).push(Ge)):Ge.kind==="text"&&!Ke.has(ze)&&Ke.set(ze,Ge)}for(let Ge of ll){let ze=null;if(ot(Ge)){let Fe=N(Ge);Fe&&oe.has(Fe)&&!Nn.has(oe.get(Fe))&&(ze=oe.get(Fe))}else if(Ge.kind==="text"){let Fe=Ke.get(qe(ae,Ge));Fe&&!Nn.has(Fe)&&(ze=Fe)}let nt=!!v(Ge);if(!ze&&!nt){let Fe=He.get(o.unitHash(Ge));Fe&&(ze=Fe.find(gt=>!Nn.has(gt)&&ot(gt)===ot(Ge)&&(ot(gt)?gt.tagName===Ge.tagName&&!J(gt):gt.kind===Ge.kind)&&o.equalUnits(Ge,gt))||null)}if(!ze&&ot(Ge)&&!nt){let Fe=m.local(Ge),gt=(mt.get(qe(ae,Ge))||[]).filter(st=>{let yt=m.remote(st);return!Nn.has(st)&&st.tagName===Ge.tagName&&!J(st)&&!(Fe&&yt&&Fe!==yt)&&o.similar(Ge,st)});gt.length===1&&(ze=gt[0])}ze&&(Nn.set(ze,Ge),Nn.set(Ge,ze))}}let Dl=oe=>{if(St?.consumes(oe))return null;if(fe.has(oe)||vt?.has(oe))return pt.get(oe)||null;let He=ae.twin(oe),qe=se.twin(oe),Ke=He&&!ae.asBase&&!ae.here(He),mt=qe&&!se.asBase&&!se.here(qe);if(Ke||mt){if((!He||!qe)&&bt({kind:"structure",el:null,detail:"move-beats-delete",base:oe},{subject:oe,deleted:He?"remote":"local"}),!Gt(oe))return ot(oe)?(vt||=hl(Ne,De,q,V,h,H,r,n.remoteWins,x,bt,le,O,b),Ke&&vt.plan(oe,"local",He),mt&&vt.plan(oe,"remote",qe)):fe.add(oe),null;bt({kind:"structure",el:null,detail:"both-moved",base:oe},{subject:oe})}if(He&&!qe&&!ae.asBase&&!se.asBase&&ot(oe)&&pn.has(oe.tagName)&&!n.remoteWins(oe)&&!n.remoteWins(He)&&le(oe,He,q)&&ka(oe,xe(se.el),r)){let gt={ignored:r,remoteWins:n.remoteWins,inlineCache:Oe},st=yt=>ot(yt)?En(yt,gt):yt.kind==="text";if(a(oe).every(st)&&a(He).every(st)){let yt=ct({base:[oe],local:[He],remote:[],blocks:new Set([oe,He]),out:ce,policy:Qe,L:q,R:V,idOf:{base:w,local:N,remote:R},ignored:r,ignoreAttribute:n.ignoreAttribute,remoteWins:n.remoteWins,mergeElement:(It,In,Dn)=>H(It,In,Dn,!1),cloneUnit:F,mergeAttrs:Be,atomKey:o.exactUnitKey,moveIn:P,moveBuilt:P,movePlanned:P,provenance:Ne,textMappers:Xe,conflicts:x,conflict:bt,scope:{base:C,local:ae.el,remote:se.el,units:Re,at:$e.get(oe)},decisions:ie,node:he});ue.push(...yt.segments),fe.add(oe),fe.add(He);let kt=ce.createDocumentFragment();for(let It of yt.nodes)kt.appendChild(It);return pt.set(oe,kt),pt.set(He,kt),kt}}if(!He&&!qe)return fe.add(oe),Mt({kind:"remove",source:"both",base:oe}),null;if(!He&&!le(oe,qe,V))return fe.add(oe),lt({kind:"remove",source:"local",base:oe}),null;if(!qe&&!le(oe,He,q))return fe.add(oe),Mt({kind:"remove",source:"remote",base:oe}),et&&(et.remove(He),Tt.push({bk:oe,lk:He})),null;let Ge=!He||!qe,ze=ae.asBase?h(q,oe)||null:He,nt=se.asBase&&ot(oe)&&(V.identityPaired.has(oe)||!m.base(oe))&&h(V,oe)||qe,Fe;return ot(oe)?Fe=H(oe,ze,nt,ae.asBase):oe.kind==="comment"?Fe=Ht(oe,ze,qe,ae.asBase):Fe=Ee(oe,ze,qe,ae.asBase),fe.add(oe),Fe&&(pt.set(oe,Fe),He&&pt.set(He,Fe),qe&&pt.set(qe,Fe),Ge&&(bt({kind:"structure",el:Fe,detail:"edit-beats-delete",base:oe},{subject:oe,deleted:He?"remote":"local"}),He?lt({kind:"insert",el:Fe,source:"local"}):Mt({kind:"insert",el:Fe,source:"remote"}))),Fe},jl=(oe,He,qe,Ke)=>{if(St?.consumes(oe))return null;if(fe.has(oe))return pt.get(oe)||null;let mt=He.baseOf(oe);if(mt&&_e.has(mt))return Le.has(mt)&&!Le.has(oe)?Ul(mt,oe,Ke):Dl(mt);if(mt)return Rn(mt,oe,Ke);let Ge=Nn.get(oe);if(Ge){let nt=Ke==="local"?oe:Ge,Fe=Ke==="local"?Ge:oe,gt;return ot(nt)?o.equalUnits(nt,Fe)?(gt=F(nt,"local"),gt&&(Ne.get(gt).remote=Fe)):gt=pe(nt,Fe):gt=ee(nt,Fe),fe.add(nt),fe.add(Fe),gt&&(pt.set(nt,gt),pt.set(Fe,gt),ot(nt)&<({kind:"insert",el:gt,source:"both"})),gt}let ze=F(oe,Ke);return ze&&(pt.set(oe,ze),Ke==="local"?lt({kind:"insert",el:ze,source:"local"}):(Mt({kind:"insert",el:ze,source:"remote"}),et&&ot(oe)&&!Kt.partner.has(oe)&&Rt.push({su:oe,node:ze}))),ze},Ul=(oe,He,qe)=>{let Ke;return ot(oe)?(Ke=P(oe,qe,He),Ke&&fe.add(He)):(Ke=F(He,qe),fe.add(He),Ke&&(qe==="local"?lt:Mt)({kind:"insert",el:Ke,source:qe})),Ke&&pt.set(He,Ke),Ke},Rn=(oe,He,qe)=>{P(oe,null,null);let Ke=h(qe==="local"?V:q,oe),mt=He,Ge=Ke?Ct(Ke,qe==="local"?ne:L,qe==="local"?V:q):!1,ze=Ke&&!Ge&&!Vt(oe,Ke);if(ze&&qe===Xt.otherSide)return bt({kind:"structure",el:null,detail:"both-moved",base:oe},{subject:oe}),null;if(ze&&bt({kind:"structure",el:null,detail:"both-moved",base:oe},{subject:oe}),Ke||bt({kind:"structure",el:null,detail:"move-beats-delete",base:oe},{subject:oe,deleted:qe==="local"?"remote":"local"}),Ve.has(oe)){bt({kind:"structure",el:null,detail:"both-moved",base:oe},{subject:oe});let Fe=F(mt,qe);return Fe&&pt.set(He,Fe),Fe}ot(oe)&&(vt||=hl(Ne,De,q,V,h,H,r,n.remoteWins,x,bt,le,O,b),vt.plan(oe,qe,mt,!0));let nt=ot(oe)?H(oe,qe==="local"?mt:h(q,oe)||null,qe==="remote"?mt:h(V,oe)||null,!1):null;return nt&&(pt.set(oe,nt),pt.set(He,nt),Ke&&pt.set(Ke,nt),qe==="local"?lt({kind:"move",el:nt,source:"local"}):Mt({kind:"move",el:nt,source:"remote"})),nt};for(let oe of Xt.V.units){if(Le.has(oe)){if(At?.has(oe)){for(let Ke of At.get(oe))at.has(Ke)||(Ye.push(Ke),at.add(Ke));continue}let qe=pt.get(oe);at.has(qe)||(Ye.push(qe),at.add(qe));continue}if(fe.has(oe)&&!(pt.get(oe)&&at.has(pt.get(oe)))){let qe=Xt.V.baseOf(oe);qe&&!_e.has(qe)&&bt({kind:"structure",el:null,detail:"both-moved",base:qe},{subject:qe});continue}let He=jl(oe,Xt.V,Xt.A,Xt.side);He&&!at.has(He)&&(Ye.push(He),at.add(He),!Xt.V.baseOf(oe)&&!Nn.has(oe)&&!Le.has(oe)&&Nt.add(He))}for(let oe of wt)at.has(oe.frag)||(Ye.splice(oe.previous&&at.has(oe.previous)?Ye.indexOf(oe.previous)+1:vl(oe.at),0,oe.frag),at.add(oe.frag));if(!Xt.other.asBase){let oe=Xt.other,He=Xt.otherSide,qe=Xt.otherA,Ke=null,mt=0,Ge=null;for(let ze of oe.units){let nt=jt.get(ze)||pt.get(ze);if(nt&&at.has(nt)){Ke=nt,Ge=null;continue}if(fe.has(ze)){let kt=oe.baseOf(ze);kt&&!_e.has(kt)&&bt({kind:"structure",el:null,detail:"both-moved",base:kt},{subject:kt});continue}let Fe=jl(ze,oe,qe,He);if(!Fe)continue;let gt=!oe.baseOf(ze)&&!Le.has(ze),st=!Ke&&!Ge,yt=Ge?Ye.indexOf(Ge)+1:Ke?Ye.indexOf(Ke)+1:mt;if(gt&&ot(Fe)){let kt=Wl(Fe);for(;yt<Ye.length&&Nt.has(Ye[yt])&&ot(Ye[yt])&&Wl(Ye[yt])<kt;)yt++}else if(Ke&&!Ge&&He==="remote")for(;yt<Ye.length&&Nt.has(Ye[yt]);)yt++;Ye.splice(yt,0,Fe),at.add(Fe),gt&&Nt.add(Fe),st&&(mt=yt+1),Ge=Fe}}for(let oe=0;oe<Re.length;oe++){let He=Re[oe];if(fe.has(He))continue;let qe=Dl(He);qe&&Ye.splice(vl(oe),0,qe)}return et&&Tt.length&&Rt.length&&Bn(),bl?Tn(Ye):Ye;function Bn(){if(qn||bn)return;let oe=new Set(Ye),He=st=>st&&_e.has(st)&&oe.has(pt.get(st))?st:null,qe=(st,yt)=>{let kt=[{prev:null,units:[]}];for(let It of st){let In=He(yt(It));In?kt.push({prev:In,units:[]}):kt[kt.length-1].units.push(It)}return kt},Ke=qe(Re,st=>st),mt=qe(se.units,se.baseOf),Ge=ae.asBase?null:qe(ae.units,ae.baseOf),ze=st=>st.length===Ke.length&&st.every((yt,kt)=>yt.prev===Ke[kt].prev);if(!ze(mt)||Ge&&!ze(Ge))return;let nt=new Map(Tt.map(st=>[st.bk,st])),Fe=new Map(Rt.map(st=>[st.su,st])),gt=st=>st?Ye.indexOf(pt.get(st)):-1;for(let st=0;st<Ke.length;st++){if(Ke[st].units.length!==1||mt[st].units.length!==1)continue;let yt=nt.get(Ke[st].units[0]),kt=Fe.get(mt[st].units[0]);if(!yt||!kt||Ge&&(Ge[st].units.length!==1||Ge[st].units[0]!==yt.lk))continue;let It=gt(Ke[st].prev);(st+1<Ke.length?gt(Ke[st+1].prev):Ye.length)-It!==2||Ye[It+1]!==kt.node||wl(yt.bk,yt.lk,kt.su)&&et.link(yt.lk,kt.node)}}function zn(oe,He,qe,Ke){let mt=kt=>{let It=kt.filter(ot);return It.length===1?It[0]:null},Ge=mt(oe),ze=mt(He),nt=mt(qe);if(!Ge||!ze||!nt)return;let Fe=oe.indexOf(Ge);if(He.indexOf(ze)!==Fe||qe.indexOf(nt)!==Fe||oe.length!==He.length||oe.length!==qe.length)return;for(let kt=0;kt<oe.length;kt++)if(kt!==Fe&&(oe[kt].value!==He[kt].value||oe[kt].value!==qe[kt].value))return;if((ae.asBase?Ge:ae.twin(Ge))!==ze||se.twin(Ge)||V.reverse.get(nt)||ze!==Ge&&le(Ge,ze,q))return;let gt=Ke.filter(kt=>kt.nodeType===1);if(gt.length!==1||Ne.get(gt[0])?.remote!==nt)return;let st=kt=>kt.map(It=>ot(It)?"":It.value??It.nodeValue).join(""),yt=Ke.indexOf(gt[0]);st(Ke.slice(0,yt))!==st(oe.slice(0,Fe))||st(Ke.slice(yt+1))!==st(oe.slice(Fe+1))||wl(Ge,ze,nt)&&et.link(ze,gt[0])}function wl(oe,He,qe){if(!ot(He)||!ot(qe)||!ot(oe)||He.namespaceURI!==qe.namespaceURI||He.localName===qe.localName)return!1;for(let ze of[He,qe])if(ze.tagName==="TEMPLATE"||rn(ze)||ze.querySelector("template"))return!1;if(n.remoteWins(oe)||n.remoteWins(qe)||r(qe)||He.attributes.length!==qe.attributes.length)return!1;for(let ze of He.attributes)if(qe.getAttributeNS(ze.namespaceURI,ze.localName)!==ze.value)return!1;let Ke=He.childNodes,mt=qe.childNodes;if(Ke.length!==mt.length)return!1;for(let ze=0;ze<Ke.length;ze++)if(!Ke[ze].isEqualNode(mt[ze]))return!1;let Ge=[[oe,qe]];for(;Ge.length;){let[ze,nt]=Ge.pop();if(ze.children.length!==nt.children.length)return!1;for(let Fe=0;Fe<nt.children.length;Fe++){let gt=V.reverse.get(nt.children[Fe]);if(gt!==void 0&>!==ze.children[Fe])return!1;Ge.push([ze.children[Fe],nt.children[Fe]])}}return!0}function rl(oe){let He=[[]];for(let qe of oe)rt(qe)?He[He.length-1].push(qe):He.push([]);return He}function Tn(oe){let He=rl(Re),qe=(Fe,gt)=>{let st=new Map,yt=Fe.filter(kt=>!rt(kt));for(let kt=0;kt<yt.length;kt++)st.set(yt[kt],gt[kt+1]);return st},Ke=qe(Re,He),mt=qe(kl,Cn),Ge=new Map;for(let[Fe,gt]of pt){if(!gt||Ge.has(gt))continue;let st=Ke.get(Fe),yt=mt.get(Fe);(st||yt)&&Ge.set(gt,[st,yt])}let ze=[],nt=yl(He[0],Cn[0]);nt&&ze.push(nt);for(let Fe of oe){ze.push(Fe);let gt=Ge.get(Fe),st=gt?yl(gt[0],gt[1]):null;st&&ze.push(st)}return ze}function yl(oe,He){let qe=!!oe&&oe.length>0,Ke=qe?oe:He||[],mt=Ke.map(nt=>nt.value).join("");if(mt==="")return null;let Ge=ce.createTextNode(mt),ze=nt=>{let Fe=[];for(let gt of nt||[])gt&&Fe.push(...gt.nodes);return Fe.length?Fe:null};return Ne.set(Ge,qe?{base:ze(oe),local:ze(oe.map(nt=>ae.asBase?null:ae.twin(nt))),remote:ze(oe.map(nt=>se.asBase?null:se.twin(nt)))}:{base:null,local:Xt.side==="local"?ze(Ke):null,remote:Xt.side==="remote"?ze(Ke):null}),Ge}function vl(oe){for(let He=oe-1;He>=0;He--){let qe=pt.get(Re[He]);if(qe){let Ke=Ye.indexOf(qe);if(Ke>=0)return Ke+1}}return 0}function Hl(oe){if((ae.asBase||q.identical.has(C))&&(se.asBase||V.identical.has(C)))return;let He={ignored:r,remoteWins:n.remoteWins,inlineCache:Oe},qe=ut=>ot(ut)?En(ut,He):ut.kind==="text";if(!ae.asBase&&!se.asBase)for(let ut of Re){if(!ot(ut)||!pn.has(ut.tagName))continue;let s=ae.twin(ut),S=se.twin(ut);if(!s&&S||s&&!S){let I=pa({base:Re,views:[{V:ae,A:q,idOf:m.local},{V:se,A:V,idOf:m.remote}],eligible:W=>ot(W)&&pn.has(W.tagName)&&!r(W)&&!n.remoteWins(W),baseId:m.base,ignored:r,remoteWins:n.remoteWins,atomKey:o.exactUnitKey});I&&(ae=I[0],se=I[1]);break}}let Ke=!ae.asBase&&!se.asBase&&Re.length>=2&&pn.has(Re[0].tagName)&&ae.units.length===Re.length&&se.units.length===Re.length?Ti({base:Re,local:ae.units,remote:se.units,localTwin:ae.twin,remoteTwin:se.twin,eligible:ut=>ot(ut)&&pn.has(ut.tagName)&&!r(ut)&&!n.remoteWins(ut),nodes:{base:Array.from(xe(C).childNodes),local:Array.from(xe(ae.el).childNodes),remote:Array.from(xe(se.el).childNodes)}}):null,mt=null,Ge=null;if(!Ke&&!ae.asBase&&!se.asBase&&(ir(Re)||ir(ae.units)||ir(se.units))){let ut={ignored:r,remoteWins:()=>!1},s=I=>qe(I)||ot(I)&&n.remoteWins(I)&&vn.has(I.tagName)&&En(I,ut),S=I=>ot(I)?pn.has(I.tagName)&&!r(I)&&!n.remoteWins(I)&&a(I).every(s):I.kind==="text";mt=ma({onUncertainOwner:I=>{let W=n.identity.local(I.local);W&&W===n.identity.remote(I.remote)||(Ge||=[]).push(I)},onUncertainSource:I=>{tt||(tt=new Map);let W=tt.get(I.source);W||tt.set(I.source,W=[]);for(let $ of W)if($.side===I.side&&$.from===I.from&&$.to===I.to)return;W.push(I)},base:Re,views:[{V:ae,A:q,idOf:m.local},{V:se,A:V,idOf:m.remote}],eligible:S,ignored:r,remoteWins:n.remoteWins,baseId:m.base,atomKey:o.exactUnitKey})}if(Ge){At||=new Map;for(let ut of Ge){let{source:s,local:S,remote:I}=ut,W={map:new Map,reverse:new Map,identical:new Set},$=ct({base:[s],local:[S],remote:[I],out:ce,policy:"both",L:W,R:W,ignored:r,remoteWins:n.remoteWins,atomKey:o.exactUnitKey,cloneUnit:F,provenance:Ne,textMappers:Xe,conflicts:x,decisions:ie,conflict:(Q,ye)=>bt(Q,{...ye,policy:"both"}),scope:{base:C,local:ae.el,remote:se.el,units:Re,at:$e.get(s)},node:he});ue.push(...$.segments);for(let Q of[s,S,I])fe.add(Q),Le.add(Q),At.set(Q,$.nodes),pt.set(Q,$.nodes[$.nodes.length-1]);for(let Q=0;Q<$.nodes.length;Q++)wt.push({frag:$.nodes[Q],at:$e.get(s),previous:Q?$.nodes[Q-1]:null})}}let ze=Ke?Ke.blocks:null;if(mt){ze=new Set;for(let ut of mt.blocks)ze.add(ut)}let nt=ut=>!St?.consumes(ut)&&(ze&&ze.has(ut)||qe(ut)),Fe=Re.map(nt);if(!Fe.includes(!0))return;let gt=ut=>{let s=ut.units,S=new Map;for(let ve=0;ve<s.length;ve++)S.set(s[ve],ve);let I=[],W=-1;for(let ve=0;ve<Re.length;ve++){if(Fe[ve])continue;let We=ut.twin(Re[ve]),be=We?S.get(We):void 0;be===void 0||be<=W||nt(We)||(I.push([ve,be]),W=be)}let $=[],Q=-1,ye=-1;for(let ve=0;ve<=I.length;ve++){let[We,be]=ve<I.length?I[ve]:[Re.length,s.length],Ce={bLo:-1,bHi:-1,from:ye+1,to:be,inlineStart:-1,inlineEnd:-1,next:be};for(let Ze=Q+1;Ze<We;Ze++)Fe[Ze]&&(Ce.bLo<0&&(Ce.bLo=Ze),Ce.bHi=Ze);for(let Ze=ye+1;Ze<be;Ze++){let dt=s[Ze];nt(dt)&&(Ce.inlineStart<0&&(Ce.inlineStart=Ze),Ce.inlineEnd=Ze+1)}$.push(Ce),Q=We,ye=be}return{units:s,list:$}},st=gt(ae),yt=gt(se),kt=[];for(let ut of[st,yt])for(let s of ut.list)s.bLo>=0&&kt.push([s.bLo,s.bHi]);kt.sort((ut,s)=>ut[0]-s[0]);let It=[];for(let[ut,s]of kt){let S=It[It.length-1];S&&ut<=S.hi?S.hi=Math.max(S.hi,s):It.push({lo:ut,hi:s})}let In=(ut,s)=>ut.length===s.length&&ut.every((S,I)=>o.equalUnits(S,s[I])),Dn=ut=>!ot(ut)&&ut.kind==="comment",ol=ut=>{if(!ut.length)return[];let s=(Q,ye)=>ot(Q)?Q:Q.nodes[ye?Q.nodes.length-1:0],S=s(ut[0]),I=s(ut[ut.length-1],!0),W=Q=>Q&&ot(Q)&&r(Q);for(;W(S.previousSibling);)S=S.previousSibling;for(;W(I.nextSibling);)I=I.nextSibling;let $=[];for(let Q=S;Q&&($.push(Q),Q!==I);Q=Q.nextSibling);return $},gr=ut=>ut.some(s=>ot(s)&&r(s));for(let ut of It){let s=Re.slice(ut.lo,ut.hi+1);if(oe&&!s.some(We=>nt(We)&&!rt(We)))continue;let S=null;if(mt)for(let We of s){let be=mt.certificatesBySource.get(We);be&&(S||=[]).push(...be)}let I=ae.asBase?null:uo(st,ut),W=se.asBase?null:uo(yt,ut);if(S){let We=[new Set(I||s),new Set(W||s)],be=S.some(Ce=>!We[Ce.side].has(Ce.target));for(let Ce of s)if(ze.has(Ce))for(let[Ze,dt]of[[0,ae],[1,se]]){let ht=dt.twin(Ce);ht&&dt.here(ht)&&!We[Ze].has(ht)&&(be=!0)}if(be)continue}if(s.some(Dn)||I&&I.some(Dn)||W&&W.some(Dn))continue;let $=ol(I||s),Q=ol(W||s);if((!I||In(s,I))&&(!W||In(s,W))&&!(I&&gr($)))continue;let ye=ct({base:ol(s),sourceRetentions:tt?.get(C),local:$,remote:Q,out:ce,policy:Qe,blocks:ze,scopeUnits:S?[s,I||s,W||s]:null,certifiedOrigins:S?(We,be,Ce,Ze,dt,ht)=>ba({certificates:S,scopes:[s,I||s,W||s],flats:[We,be,Ce],keys:[Ze,dt,ht]}):null,prepared:Ke?Ke.prepared:null,nativeTransfers:Ke,L:I?q:ho(q,C),R:W?V:ho(V,C),idOf:{base:w,local:N,remote:R},ignored:r,ignoreAttribute:n.ignoreAttribute,remoteWins:n.remoteWins,mergeElement:(We,be,Ce)=>H(We,be,Ce,!1),cloneUnit:F,mergeAttrs:Be,atomKey:o.exactUnitKey,moveIn:P,moveBuilt:P,movePlanned:P,provenance:Ne,textMappers:Xe,conflicts:x,conflict:bt,scope:{base:C,local:ae.asBase?null:ae.el,remote:se.asBase?null:se.el,units:Re,at:ut.lo},decisions:ie,node:he});if(!ye){if(S){let We=Mi({certificates:S,scopes:[s,I||s,W||s],views:[{V:ae,A:q,idOf:m.local},{V:se,A:V,idOf:m.remote}],eligible:be=>ot(be)&&pn.has(be.tagName)&&!r(be)&&!n.remoteWins(be),baseId:m.base});for(let be of We.records){tt||=new Map;let Ce=tt.get(be.source);Ce||tt.set(be.source,Ce=[]),Ce.push(be)}}continue}if(ue.push(...ye.segments),Ke){let We=new Map;for(let be of ye.nodes){let Ce=Ne.get(be)?.base;if(!Ce||We.has(Ce))throw new Error("Invalid native transfer owner output");We.set(Ce,be)}if(We.size!==Ke.owners.length)throw new Error("Incomplete native transfer owner output");for(let be of Ke.owners){let Ce=We.get(be.base);if(!Ce)throw new Error("Missing native transfer owner output");for(let Ze of[be.base,be.local,be.remote])fe.add(Ze),Le.add(Ze),pt.set(Ze,Ce);wt.push({frag:Ce,at:$e.get(be.base)})}continue}if(et&&zn(s,I||s,W||s,ye.nodes),ye.unitOutputs){At||=new Map;for(let be of[...s,...I||[],...W||[]]){let Ce=ye.unitOutputs.get(be)||[];fe.add(be),Le.add(be),At.set(be,Ce),Ce.length&&pt.set(be,Ce[Ce.length-1])}let We=ye.nodes[ye.nodes.length-1];if(We)for(let be of[I||s,W||s]){let Ce=be[be.length-1];Ce&&jt.set(Ce,We)}for(let be=0;be<ye.nodes.length;be++)wt.push({frag:ye.nodes[be],at:ut.lo,previous:be>0?ye.nodes[be-1]:null});continue}et&&zn(s,I||s,W||s,ye.nodes);let ve=ce.createDocumentFragment();for(let We of ye.nodes)ve.appendChild(We);for(let We of[...s,...I||[],...W||[]])fe.add(We),Le.add(We),pt.set(We,ve);wt.push({frag:ve,at:ut.lo})}}}function Se(C,L){let ne=Ne.get(C);return ne&&ne.unchanged?!ne.remote||ne.remote===L?!0:je(ne.remote,L):C.tagName!==L.tagName||!Je(C,L)?!1:it(xe(C),xe(L))}function je(C,L){return C===L?!0:C.tagName!==L.tagName||C.namespaceURI!==L.namespaceURI||!Je(C,L)?!1:Ue(xe(C),xe(L))}function Ue(C,L){let ne=ft(C,r),me=ft(L,r);if(ne.length!==me.length)return!1;for(let he=0;he<ne.length;he++){let ae=ne[he],se=me[he];if(typeof ae=="string"||typeof se=="string"){if(ae!==se)return!1}else{if(ae.nodeType!==se.nodeType)return!1;if(ae.nodeType===1){if(!je(ae,se))return!1}else if(ae.nodeValue!==se.nodeValue)return!1}}return!0}function xe(C){return C.tagName==="TEMPLATE"&&C.content?C.content:C}function Je(C,L){let ne=0;for(let me of C.attributes)if(!n.ignoreAttribute(C,me.name)&&(ne++,L.getAttribute(me.name)!==me.value))return!1;for(let me of L.attributes)n.ignoreAttribute(L,me.name)||ne--;return ne===0}function it(C,L){let ne=ft(C,he=>{let ae=Ne.get(he);return!!(ae&&ae.pinned)}),me=ft(L,r);if(ne.length!==me.length)return!1;for(let he=0;he<ne.length;he++){let ae=ne[he],se=me[he];if(typeof ae=="string"||typeof se=="string"){if(ae!==se)return!1}else{if(ae.nodeType!==se.nodeType)return!1;if(ae.nodeType===1){if(!Se(ae,se))return!1}else if(ae.nodeValue!==se.nodeValue)return!1}}return!0}function ft(C,L){let ne=[],me=null;for(let he=C.firstChild;he;he=he.nextSibling){if(he.nodeType===3){me=me===null?he.nodeValue:me+he.nodeValue;continue}he.nodeType===1&&L(he)||(me!==null&&(me!==""&&ne.push(me),me=null),ne.push(he))}return me!==null&&me!==""&&ne.push(me),ne}function Ht(C,L,ne,me){let he=C.value,ae=me?he:L?L.value:"",se=ne?ne.value:"";fe.add(C),L&&fe.add(L),ne&&fe.add(ne);let Re=ae===se?ae:ae===he?se:se===he||Qe==="local"?ae:se,_e={site:"comment",bRun:C,lRun:L,rRun:ne,node:null};if(ae!==he&&se!==he&&ae!==se&&bt({kind:"text",node:null,base:he,local:ae,remote:se,resolved:Re},_e),!L&&!ne)return null;let $e=ce.createComment(Re);return _e.node=$e,Ne.set($e,{base:C.nodes,local:L?L.nodes:null,remote:ne?ne.nodes:null}),$e}function Wt(C,L){let ne=h(L,C);if(!ne)return null;let me=ot(ne)?ne.parentNode:ne.parent,he=ot(C)?C.parentNode:C.parent;return h(L,he)===me?null:L.reverse.get(me)||null}function Gt(C){let L=new Set([C]),ne=C;for(let me=0;me<64;me++){let he=Wt(ne,q)||Wt(ne,V);if(!he)return!1;if(he===C||ot(C)&&ot(he)&&C.contains(he)||L.has(he))return!0;L.add(he),ne=he}return!0}function Ct(C,L,ne){if(!L)return!1;let me=ot(C)?C.parentNode:C.parent;return me===L||L.tagName==="TEMPLATE"&&me===L.content}function Vt(C,L){let ne=De(C),me=h(q,ne);if(me&&Ct(L,me,q))return!0;let he=h(V,ne);return!!(he&&Ct(L,he,V))}}function ho(e,l){return e.map.get(l)?go():{map:{get:t=>t&&t.nodeType===1&&e.map.get(t)||t,has:()=>!0},reverse:{get:t=>e.reverse.get(t)||t,has:()=>!0},moved:new Set,identical:{has:()=>!0},pairIdenticalChildren:()=>{}}}function go(){let e={get:l=>l,has:()=>!0};return{map:e,reverse:e,moved:new Set,identical:{has:()=>!0},pairIdenticalChildren:()=>{}}}function wa(e){let l=[],t=[],n=new Array(e.length).fill(-1);for(let u=0;u<e.length;u++){let o=0,a=l.length;for(;o<a;){let i=o+a>>1;l[i]<e[u]?o=i+1:a=i}l[o]=e[u],t[o]=u,n[u]=o>0?t[o-1]:-1}let r=new Set;for(let u=t[l.length-1];u!==void 0&&u>=0;u=n[u])r.add(u);return r}function po(e){let l=[],t=new Array(e.length);for(let n=0;n<e.length;n++){let r=0,u=l.length;for(;r<u;){let o=r+u>>1;l[o]<e[n]?r=o+1:u=o}l[r]=e[n],t[n]=r+1}return t}function sr(e){let l=po(e),t=po(e.map(o=>-o).reverse()).reverse(),n=0;for(let o=0;o<l.length;o++)l[o]>n&&(n=l[o]);let r=new Map;for(let o=0;o<e.length;o++)l[o]+t[o]-1===n&&r.set(l[o],(r.get(l[o])||0)+1);let u=new Set;for(let o=0;o<e.length;o++)(l[o]+t[o]-1!==n||r.get(l[o])>1)&&u.add(e[o]);return u}function ya(e,l,t,n){let r=m=>{let d=wa(m.map(p=>l.get(p)));return new Set(m.filter((p,O)=>!d.has(O)))},u=r(t),o=r(n);for(let m of u)if(o.has(m))return null;let a=new Set(t),i=new Set(n),f=e.filter(m=>a.has(m)&&i.has(m)&&!u.has(m)&&!o.has(m)),y=new Set(f),c=(m,d)=>{let p=new Map,O=null;for(let b of m){if(y.has(b)){O=b;continue}d.has(b)&&(p.has(O)||p.set(O,[]),p.get(O).push(b))}return p},g=(m,d)=>sr(m.map(p=>l.get(p))).size>d.size,w=[{at:c(n,o),ambiguous:g(n,o)},{at:c(t,u),ambiguous:g(t,u)}],N=m=>w.map(d=>{let p=d.at.get(m);return p?{group:p,ambiguous:d.ambiguous}:null}).filter(Boolean).sort((d,p)=>d.ambiguous-p.ambiguous||l.get(d.group[0])-l.get(p.group[0])).flatMap(d=>d.group),R=N(null);for(let m of f)R.push(m,...N(m));return new Map(R.map((m,d)=>[m,d]))}function va(e,l){let t=[],n=new Map,r=null;for(let a of e.units){let i=e.baseOf(a);if(i&&l.has(i)){r=a,n.set(a,[]);continue}(r?n.get(r):t).push(a)}let u=[...n.keys()].sort((a,i)=>l.get(e.baseOf(a))-l.get(e.baseOf(i))),o=a=>{let i=[],f=[],y=()=>{f.length&&i.push(...f.sort((c,g)=>Wl(c)<Wl(g)?-1:1)),f=[]};for(let c of a){if(e.baseOf(c)){y(),i.push(c);continue}f.push(c)}return y(),i};return{...e,units:[...o(t),...u.flatMap(a=>[a,...o(n.get(a))])]}}var mo=new Set(["INPUT","OPTION","TEXTAREA"]),fr=/[\t\n\f\r ]+/;function xa(e,l,t,n){let r=e.ownerDocument,{provenance:u,textMappers:o}=t,a=n.hooks,i=[],f=[],y=[],c=new Set,g=[],w=[],N=new Map,R=new Set,m=new Map,d=t.conflicts.length>0||n.trackInserted===!0,p=new Map,O=new Set,b=new Map,A=(h,P)=>{let X=b.get(h);X||b.set(h,X=new Set),X.add(P)},E=d?new Set:null,B=(h,P,X)=>{let le=a.beforeAttributeUpdated(h,P,X);return d&&le===!1&&A(P,h),le},T=h=>!!h&&(h===e||e.contains(h)||e.nodeType===1&&e.tagName==="TEMPLATE"&&e.content.contains(h)),M=new Map,D=new Map,z=new Map,U=new Set,j=new Map;(function h(P){let X=u.get(P);if(X){if(P.nodeType===1){let te=X.local?n.toLive(X.local):null;te&&T(te)&&te.nodeType===1&&(M.set(P,te),D.set(te,P))}else if(Array.isArray(X.local)){let te=V(X.local,X.local.map(H=>n.toLive(H)).filter(H=>H&&T(H)&&H.nodeType===P.nodeType));if(te.length&&(M.set(P,te[0]),D.set(te[0],P),z.set(P,te)),Array.isArray(X.caret))for(let H of X.caret){let ke=n.toLive(H.node);if(!ke||!T(ke)||ke.nodeType!==3)continue;let Me=j.get(ke);Array.isArray(Me)||j.set(ke,Me=[]),Me.push({merged:P,from:H.from,to:H.to,flatStart:H.flatStart})}else{let H=0;for(let ke of te)j.set(ke,{merged:P,shift:H}),H+=ke.nodeValue.length}}}let le=P.nodeType===1&&P.tagName==="TEMPLATE"&&P.content?P.content.childNodes:P.childNodes;for(let te of le)h(te)})(l);let k=new Set;for(let h of M.values())k.add(h);for(let h of z.values())for(let P of h)k.add(P);let v=n.localRoot&&n.localRoot!==e?new Set:null;if(v){for(let h=n.localRoot.firstElementChild;h;h=h.nextElementSibling)if(h.tagName==="HEAD")for(let P=h.firstElementChild;P;P=P.nextElementSibling){let X=n.toLive(P);X&&v.add(X)}}for(let h of t.segments||[])Ae(h);let J=n.restoreFocus===!1?null:Na(r,j);n.childrenOnly?Ne(Ie(e),Ie(l)):De(e,l);for(let{node:h,parent:P}of g)c.has(h)||!h.parentNode||h.nodeType===1&&(n.ignored(h)||Xe(h))||tt(h,P);return Ta(r,J,j,o,z,m,U),{applied:i,moved:f,replaced:y,identities:w,mergedScriptsLive:R,liveOf:M,heldBy:m,runOf:z,keptRuns:U,insertedLive:p,vetoed:O,vetoedAttrs:b,removedVetoes:E};function q(h,P){let X=h.slice(P.bs,P.be),le=0;for(;le<X.length&&le<P.text.length&&X[le]===P.text[le];)le++;let te=0;for(;te<X.length-le&&te<P.text.length-le&&X[X.length-1-te]===P.text[P.text.length-1-te];)te++;return{bs:P.bs+le,be:P.be-te,text:P.text.slice(le,P.text.length-te)}}function V(h,P){if(!P.length)return P;let X=[];for(let H of h){let ke=H.parentNode;if(!ke)continue;let Me=N.get(ke);if(!Me){Me=new Set;for(let Te=ke.firstChild;Te;Te=Te.nextSibling)Te.nodeType===3&&Me.add(n.toLive(Te));N.set(ke,Me)}X.includes(Me)||X.push(Me)}let le={has:H=>X.some(ke=>ke.has(H))},te=[];for(let H of P){te.push(H);for(let ke=H.nextSibling;ke&&ke.nodeType===3&&!le.has(ke)&&!te.includes(ke);ke=ke.nextSibling)te.push(ke)}return te}function Ae(h){let P=[];for(let ee of h.localNodes){let pe=n.toLive(ee.node);if(!pe||!T(pe)||pe.nodeType!==3)return;P.push(pe)}let X=V(h.localNodes.map(ee=>ee.node),P);if(!X.length)return;let le=X.map(ee=>ee.nodeValue).join(""),{flatLocal:te,lToM:H,mapLocal:ke}=h;if(le===te)return;let Me=h.textNodes.map(ee=>({node:ee.node,ms:ee.ms,me:ee.me})),Te=[],Be=0;for(let ee of X)Te.push(Be),Be+=ee.nodeValue.length;let _=(ee,pe)=>X.find((F,re)=>Te[re]<=ee&&ee+pe<=Te[re]+F.nodeValue.length)||null,K=[],de=0;for(let ee of Tl(te,le).map(pe=>q(te,pe))){let pe=ee.bs+de;de+=ee.text.length-(ee.be-ee.bs);let F,re;if(ee.be>ee.bs){F=H[ee.bs];let Se=F>=0;for(let je=ee.bs;Se&&je<ee.be;je++)H[je]!==F+(je-ee.bs)&&(Se=!1);if(!Se)continue;re=F+(ee.be-ee.bs)}else{let Se=ee.bs>0?H[ee.bs-1]:0,je=ee.bs<te.length?H[ee.bs]:0;if(Se<0||je<0)continue;F=re=ke(ee.bs)}K.push({ms:F,me:re,text:ee.text,live:re===F?_(pe,ee.text.length):null})}K.sort((ee,pe)=>pe.ms-ee.ms);let Ee=(ee,pe)=>(z.get(ee.node)||[M.get(ee.node)]).includes(pe),ge=ee=>!!ee&&ee.nodeType===1&&vn.has(ee.tagName);for(let ee of K){let pe=Me.find(re=>re.ms<=ee.ms&&ee.me<=re.me&&ee.ms<re.me);if(pe&&ee.live&&pe.ms===ee.ms&&!Ee(pe,ee.live)){let re=Me.find(Se=>Se.me===ee.ms&&Ee(Se,ee.live));re&&(pe=re)}if(!pe&&ee.me===ee.ms){let re=Me.find(xe=>xe.me===ee.ms),Se=Me.find(xe=>xe.ms===ee.ms),je=re||Se;if(!je)continue;let Ue=je.node;for(;ge(Ue.parentNode)&&(re?Ue.parentNode.lastChild:Ue.parentNode.firstChild)===Ue;)Ue=Ue.parentNode;if(Ue===je.node)pe=je;else{let xe=Ue.ownerDocument.createTextNode(ee.text);Ue.parentNode.insertBefore(xe,re?Ue.nextSibling:Ue);continue}}if(!pe)continue;let F=pe.node.nodeValue;pe.node.nodeValue=F.slice(0,ee.ms-pe.ms)+ee.text+F.slice(ee.me-pe.ms),pe.me+=ee.text.length-(ee.me-ee.ms)}}function Ie(h){return h.nodeType===1&&h.tagName==="TEMPLATE"&&h.content?h.content:h}function De(h,P){c.add(h);let X=u.get(P);if(X&&X.remote&&t.remoteIdOf){let te=t.remoteIdOf(X.remote);te&&w.push([h,te])}if(X&&X.unchanged){n.opaque&&n.opaque(h)||(t.customIdentity&&X.remote&&ue(h,X.remote),X.remote&&Z(h,X.remote));return}if(a.beforeNodeMorphed(h,P)===!1){O.add(P);return}Ut(h,P,n.keepLiveOnly&&X&&X.local&&X.local.nodeType===1&&X.local!==h?X.local:null);let le=h.tagName;if(rn(h))h.textContent!==P.textContent&&(i.push({kind:"text",node:h,before:h.textContent,after:P.textContent}),h.textContent=P.textContent),t.mergedScripts.has(P)&&R.add(h);else if(le==="TEXTAREA")we(h,P,X);else{G(h,P,X);let te=le==="TEMPLATE"&&h.content?h.content:h,H=le==="TEMPLATE"&&P.content?P.content:P;n.opaque&&n.opaque(h)||n.protectFocusedValue==="subtree"&&vt(h)&&h!==r.body?ce(te):Ne(te,H)}a.afterNodeMorphed(h,P)}function ce(h){for(let P=h.firstChild;P;P=P.nextSibling){let X=D.get(P);X&&M.get(X.parentNode)!==h||(c.add(P),P.nodeType===1&&ce(P))}}function Ne(h,P){let X=Ve(h.firstChild),le=new Set;for(let te of Array.from(P.childNodes)){let H=M.get(te);H&&c.has(H)&&!le.has(H)&&(H=null);let ke=u.get(te);if(ke&&ke.pinned){H&&H.nodeType===1&&((H.parentNode!==h||Ve(H.nextSibling)!==X)&&Oe(h,H,X),c.add(H),le.add(H));continue}if(H&&H.nodeType===1){if(H!==X){let Be=H.parentNode;if(Be===h&&X&&St(H)){let _=H.nextSibling;for(let K=X;K&&K!==H;){let de=K.nextSibling;Oe(h,K,_),K=de}}else Oe(h,H,X),Be!==h&&(f.push(H),i.push({kind:"move",el:H,from:Be,to:h}))}le.add(H),De(H,te),X=Ve(H.nextSibling);continue}if(H&&H.nodeType!==1){let Be=z.get(te)||[H],_=Be.map(de=>de.nodeValue).join(""),K=te.nodeValue;if(te.nodeType===3){let de=ie(te);de!=null&&_!==de&&(K=Zl(de,_,te.nodeValue).text)}if(Be.length>1&&_===K&&!Be.includes(X,1)&&Be.every((de,Ee)=>de.parentNode===h&&(Ee===0||Be[Ee-1].nextSibling===de))){if(H!==X)for(let de of Be)Oe(h,de,X);a.beforeNodeMorphed(H,te)!==!1?a.afterNodeMorphed(H,te):d&&O.add(te);for(let de of Be)c.add(de),le.add(de);m.set(te,H),U.add(te),X=Ve(Be[Be.length-1].nextSibling);continue}H!==X&&Oe(h,H,X),a.beforeNodeMorphed(H,te)!==!1?(H.nodeValue!==K&&(i.push({kind:"text",node:H,before:H.nodeValue,after:K}),H.nodeValue=K),a.afterNodeMorphed(H,te)):O.add(te),c.add(H),le.add(H),m.set(te,H),X=Ve(H.nextSibling);continue}if(te.nodeType===3&&X&&X.nodeType===3&&!c.has(X)&&!j.has(X)){X.nodeValue!==te.nodeValue&&(i.push({kind:"text",node:X,before:X.nodeValue,after:te.nodeValue}),X.nodeValue=te.nodeValue),c.add(X),m.set(te,X),X=Ve(X.nextSibling);continue}let Me=u.get(te),Te=et(Me&&Me.unchanged&&Me.remote?Me.remote:te);if(a.beforeNodeAdded(Te)===!1){O.add(te);continue}h.insertBefore(Te,X),c.add(Te),d&&p.set(te,Te),Te.nodeType===3&&m.set(te,Te),Te.nodeType===1&&(y.push(Te),Pe(Te,te),t.customIdentity&&Me&&Me.unchanged&&Me.remote&&ue(Te,Me.remote),rn(Te)||ct(Te,te),n.formState==="property"&&Lt(Me)&&Z(Te,Me.remote)),X=Ve(Te.nextSibling),i.push({kind:"insert",node:Te,parent:h}),a.afterNodeAdded(Te)}for(let te of Array.from(h.childNodes))c.has(te)||le.has(te)||te.nodeType===1&&(n.ignored(te)||Xe(te))||(k.has(te)?g.push({node:te,parent:h}):tt(te,h))}function Xe(h){return h.parentNode&&h.parentNode.nodeType===1&&h.parentNode.tagName==="HEAD"&&(v&&!v.has(h)||n.preserve&&n.preserve(h)===!0)}function ie(h){let P=u.get(h);return!P||!Array.isArray(P.local)?null:P.local.map(X=>X.nodeValue).join("")}function x(h){return u.get(h)}function Z(h,P){if(!mo.has(h.tagName)&&!h.querySelector("input,option,textarea"))return;let X=(le,te)=>{if(le.tagName!==te.tagName||(le.tagName==="TEXTAREA"?we(le,te,{remote:te}):mo.has(le.tagName)&&G(le,te,{remote:te}),n.opaque&&n.opaque(le)))return;let H=fe(le),ke=fe(te);if(H.length===ke.length)for(let Me=0;Me<H.length;Me++)X(H[Me],ke[Me])};X(h,P)}function ue(h,P){if(n.opaque&&n.opaque(h))return;let X=fe(h),le=fe(P);if(X.length===le.length)for(let te=0;te<X.length;te++){let H=t.remoteIdOf(le[te]);H&&w.push([X[te],H]),ue(X[te],le[te])}}function fe(h){let P=h.tagName==="TEMPLATE"&&h.content?h.content:h;return Array.from(P.children).filter(X=>!n.ignored(X))}function Pe(h,P){if(!t.remoteIdOf)return;let X=(le,te)=>{let H=u.get(te);if(H&&H.remote&&te.nodeType===1){let Te=t.remoteIdOf(H.remote);Te&&w.push([le,Te])}let ke=le.childNodes,Me=te.childNodes;for(let Te=0;Te<ke.length&&Te<Me.length;Te++)X(ke[Te],Me[Te])};X(h,P)}function Ve(h){for(;h&&h.nodeType===1&&n.ignored(h);)h=h.nextSibling;return h}function Oe(h,P,X){if(typeof h.moveBefore=="function"&&P.ownerDocument===h.ownerDocument)try{h.moveBefore(P,X);return}catch{}h.insertBefore(P,X)}function tt(h,P){if(a.beforeNodeRemoved(h)===!1){d&&E.add(h);return}h.parentNode.removeChild(h),i.push({kind:"remove",node:h,parent:P}),a.afterNodeRemoved(h)}function et(h){if(rn(h))return er(h,r);let P=r.importNode(h,!0);if(P.nodeType===1)for(let X of Array.from(P.querySelectorAll("script")))rn(X)&&X.replaceWith(er(X,r));return P}function ct(h,P){let X=h.tagName==="TEMPLATE"&&h.content?h.content:h,le=P.tagName==="TEMPLATE"&&P.content?P.content:P,te=Array.from(X.childNodes),H=Array.from(le.childNodes);for(let ke=0;ke<H.length&&ke<te.length;ke++){let Me=H[ke],Te=te[ke],Be=M.get(Me);Be&&c.has(Be)&&(Be=null);let _=u.get(Me);if(_&&_.pinned){if(Be&&Be.nodeType===1){let K=Be.parentNode;Oe(X,Be,Te),K!==X&&(f.push(Be),i.push({kind:"move",el:Be,from:K,to:X})),c.add(Be)}Te.remove();continue}if(Be){let K=Be.parentNode;Oe(X,Be,Te),Te.remove(),Be.nodeType===1?(K!==X&&(f.push(Be),i.push({kind:"move",el:Be,from:K,to:X})),De(Be,Me)):(c.add(Be),m.set(Me,Be),Be.nodeValue!==Me.nodeValue&&(i.push({kind:"text",node:Be,before:Be.nodeValue,after:Me.nodeValue}),Be.nodeValue=Me.nodeValue));continue}c.add(Te),d&&p.set(Me,Te),Te.nodeType===3&&m.set(Me,Te),_&&_.unchanged&&_.remote?(Qe(Te,_.remote),t.customIdentity&&ue(Te,_.remote)):Me.nodeType===1&&!rn(Me)&&ct(Te,Me)}}function Qe(h,P){let X=h.tagName==="TEMPLATE"&&h.content?h.content:h,le=P.tagName==="TEMPLATE"&&P.content?P.content:P;for(let te of Array.from(le.childNodes))X.appendChild(et(te))}function lt(h,P){return P.namespaceURI?h.getAttributeNS(P.namespaceURI,P.localName):h.getAttribute(P.name)}function Mt(h,P){let X=new Set((P||"").split(fr).filter(Boolean));return(h||"").split(fr).filter(le=>le&&!X.has(le))}function Ut(h,P,X){for(let le of Array.from(P.attributes)){if(bt(h,le.name)||n.ignoreAttribute(h,le.name,P))continue;let te=lt(h,le);if(te===le.value||X&<(X,le)===le.value)continue;let H=le.value;if(X&&le.name==="class"&&!le.namespaceURI){let ke=le.value.split(fr).filter(Boolean),Me=Mt(te,X.getAttribute("class")).filter(Te=>!ke.includes(Te));Me.length&&(H=[...ke,...Me].join(" "))}if(te!==H){if(a.beforeAttributeUpdated(le.name,h,"update")===!1){d&&A(P,le.name);continue}le.namespaceURI?h.setAttributeNS(le.namespaceURI,le.name,H):h.setAttribute(le.name,H),i.push({kind:"attr",el:h,name:le.name,before:te,after:H})}}for(let le of Array.from(h.attributes)){if(bt(h,le.name)||n.ignoreAttribute(h,le.name,P)||(le.namespaceURI?P.hasAttributeNS(le.namespaceURI,le.localName):P.hasAttribute(le.name)))continue;if(X&&le.name==="class"&&!le.namespaceURI){let H=Mt(le.value,X.getAttribute("class"));if(H.length){let ke=H.join(" ");if(ke===le.value)continue;if(a.beforeAttributeUpdated("class",h,"update")===!1){d&&A(P,"class");continue}h.setAttribute("class",ke),i.push({kind:"attr",el:h,name:"class",before:le.value,after:ke});continue}}if(X&<(X,le)===null&&!n.ignoreAttribute(X,le.name))continue;if(a.beforeAttributeUpdated(le.name,h,"remove")===!1){d&&A(P,le.name);continue}let te=le.value;le.namespaceURI?h.removeAttributeNS(le.namespaceURI,le.localName):h.removeAttribute(le.name),i.push({kind:"attr",el:h,name:le.name,before:te,after:null})}}function bt(h,P){let X=h.tagName;return X==="INPUT"?P==="value"||P==="checked"||P==="disabled":X==="OPTION"?P==="selected":!1}function vt(h){return h===r.activeElement}function St(h){let P=r.activeElement;return!!P&&P!==r.body&&h.contains(P)}function Kt(h,P){let X=P&&P.local&&P.local.nodeType===1&&P.local!==h?P.local:null;if(!X)return!0;let le=h.tagName==="TEXTAREA"?X.textContent:X.getAttribute("value")??"";return h.value!==le}function ln(h,P){return!!n.protectFocusedValue&&vt(h)&&Kt(h,P)}function Et(h,P,X){let le=Math.min(h.length,P.length),te=0;for(;te<le&&h[te]===P[te];)te++;if(X<=te)return X;let H=0;for(;H<le-te&&h[h.length-1-H]===P[P.length-1-H];)H++;return X>=h.length-H?X+P.length-h.length:P.length-H}function _t(h){try{return h.selectionStart==null?null:[h.selectionStart,h.selectionEnd,h.selectionDirection]}catch{return null}}function on(h,P,X,le){try{h.setSelectionRange(Et(P,X,le[0]),Et(P,X,le[1]),le[2]||"none")}catch{}}function Bt(h,P){let X=h.value,le=_t(h);h.value=P,le&&on(h,X,P,le)}function Lt(h){let P=h&&h.remote;return P&&P.nodeType===1?P:null}function G(h,P,X){let le=h.tagName,te=Lt(X),H=n.formState==="property"&&te?te:P;if(le==="INPUT"){let ke=ln(h,X),Me=(h.getAttribute("type")||"").toLowerCase(),Te=Me!=="file"&&Me!=="checkbox"&&Me!=="radio",Be=te&&te.hasAttribute("value")&&te.value!==te.getAttribute("value")?te.value:null;if(Te&&!ke)if(n.formState==="property"){let _=P.getAttribute("value"),K=h.getAttribute("value");(K!==_||h.value!==H.value)&&B("value",h,_==null?"remove":"update")!==!1&&(K!==_&&(_==null?h.removeAttribute("value"):h.setAttribute("value",_),i.push({kind:"attr",el:h,name:"value",before:K,after:_})),h.value!==H.value&&(vt(h)?Bt(h,H.value):h.value=H.value))}else if(P.hasAttribute("value")||Be!=null){let _=Be??P.getAttribute("value");h.getAttribute("value")!==_&&B("value",h,"update")!==!1?(h.setAttribute("value",_),h.value!==_&&(vt(h)?Bt(h,_):h.value=_),i.push({kind:"attr",el:h,name:"value",before:null,after:_})):h.value!==_&&h.getAttribute("value")===_&&(vt(h)?Bt(h,_):h.value=_)}else(h.hasAttribute("value")||h.value!=="")&&B("value",h,"remove")!==!1&&(h.removeAttribute("value"),h.value="",i.push({kind:"attr",el:h,name:"value",before:"",after:null}));if(!Te&&Me!=="file"){let _=P.getAttribute("value");_==null?h.hasAttribute("value")&&B("value",h,"remove")!==!1&&h.removeAttribute("value"):h.getAttribute("value")!==_&&B("value",h,"update")!==!1&&h.setAttribute("value",_)}n.protectFocusedValue&&vt(h)||(Y(h,H,"checked"),n.formState==="property"&&h.indeterminate!==H.indeterminate&&(h.indeterminate=H.indeterminate)),Y(h,H,"disabled")}else if(le==="OPTION"){let ke=h.parentNode&&h.closest("select");n.protectFocusedValue&&ke&&vt(ke)||Y(h,H,"selected")}}function Y(h,P,X){if(n.ignoreAttribute(h,X,P))return;let le=n.formState==="property"?!!P[X]:P.hasAttribute(X);if(n.formState!=="property"){let te=h.hasAttribute(X);if(te!==le){if(B(X,h,le?"update":"remove")===!1)return;le?h.setAttribute(X,""):h.removeAttribute(X),i.push({kind:"attr",el:h,name:X,before:te?"":null,after:le?"":null})}}h[X]!==le&&(h[X]=le)}function we(h,P,X){if(ln(h,X)||B("value",h,"update")===!1)return;let le=Lt(X),te=P.textContent,H=le&&le.value!==le.defaultValue?le.value:te,ke=vt(h)?_t(h):null,Me=h.value;if(n.formState!=="property"&&h.textContent!==te){i.push({kind:"text",node:h,before:h.textContent,after:te});let Te=h.firstChild;Te&&Te.nodeType===3&&!Te.nextSibling?Te.data=te:h.textContent=te}h.value!==H&&(h.value=H),ke&&h.value!==Me&&on(h,Me,h.value,ke)}}function Na(e,l){let t=e.activeElement;if(!t||t===e.body||t===e.documentElement)return null;let n={el:t,id:t.getAttribute&&t.getAttribute("id"),scrollTop:t.scrollTop,scrollLeft:t.scrollLeft};if(t.tagName==="INPUT"||t.tagName==="TEXTAREA"){try{n.selection=[t.selectionStart,t.selectionEnd,t.selectionDirection]}catch{}return n}let r=e.getSelection&&e.getSelection();if(r&&r.rangeCount){let u=r.getRangeAt(0);n.range={sc:u.startContainer,so:u.startOffset,ec:u.endContainer,eo:u.endOffset}}return n}function Ta(e,l,t,n,r,u,o){if(!l)return;let a=l.el;if(!a.isConnected&&l.id&&(a=e.getElementById(l.id)),!a||!a.isConnected)return;if(e.activeElement!==a)try{a.focus({preventScroll:!0})}catch{}try{a.scrollTop=l.scrollTop,a.scrollLeft=l.scrollLeft}catch{}if(l.selection){try{a.setSelectionRange&&!a.selectionEnd&&l.selection[1]!=null&&a.setSelectionRange(l.selection[0],l.selection[1],l.selection[2]||"none")}catch{}return}if(!l.range)return;let i=(c,g)=>{let w=t.get(c);if(Array.isArray(w)){let N=w.find(p=>g>=p.from&&g<p.to)||w.find(p=>g===p.to)||w[w.length-1],R=u.get(N.merged);if(!R||!R.isConnected)return null;let m=n.get(N.merged),d=m&&m.flat?m.flat(N.flatStart+g):g;return[R,Math.max(0,Math.min(d,R.nodeValue.length))]}if(w&&!o.has(w.merged)){let N=(r.get(w.merged)||[c])[0];if(!N.isConnected)return null;let R=n.get(w.merged),m=w.shift+g,d=R?R(m):m;return[N,Math.max(0,Math.min(d,N.nodeValue.length))]}return c.isConnected?[c,Math.min(g,c.nodeType===3?c.nodeValue.length:c.childNodes.length)]:null},f=i(l.range.sc,l.range.so),y=i(l.range.ec,l.range.eo);if(!(!f||!y))try{let c=e.createRange();c.setStart(f[0],f[1]),c.setEnd(y[0],y[1]);let g=e.getSelection();g.removeAllRanges(),g.addRange(c)}catch{}}var Ma={compared:0},Aa=new Set(["INPUT","SELECT","OPTION","TEXTAREA"]);function Sa(e,l,t,n){let r=(o,a)=>l.getAttribute(a)!==null&&typeof n=="function"&&!!n(o,a),u=0;for(let o of e.attributes)if(!(t(e,o.name)||r(e,o.name))&&(u++,l.getAttribute(o.name)!==o.value))return!1;for(let o of l.attributes)!t(l,o.name)&&!r(l,o.name)&&u--;return u===0}function ur(e,l){if(e.namespaceURI!==l.namespaceURI||e.prefix!==l.prefix||e.localName!==l.localName)return!1;let t=e.attributes;if(t.length!==l.attributes.length)return!1;for(let n of t)if(l.getAttributeNS(n.namespaceURI,n.localName)!==n.value)return!1;return!0}function bo(e,l,t,n,r,u,o,a){let i=new Map,f=new Set,y=c=>{if(n(c))return;let g=t(c);g&&(u.add(g),r.has(g)||i.has(g)?f.add(g):i.set(g,c))};for(let c of e)y(c);y(l);for(let c of o||l.querySelectorAll("*"))y(c);for(let c of f)i.delete(c),a.add(c);return i}function ko(e,l,t,n,r,u){let o=!1;for(let y of r)y.startsWith("merge:")&&(o=!0);if(!o)return[...n];let a=new Map,i=[],f=u===kn?Bl:"*";for(let y of[e,...e.querySelectorAll(f)]){if(t(y))continue;let c=l(y);if(!c||!(n.has(c)||r.has(c)))continue;let g=(a.get(c)||0)+1;a.set(c,g),g===2&&i.push(c)}return i}function Ea({baseRoot:e,remoteRoot:l,liveRoot:t,toLive:n,o:r,identity:u,baseURI:o}){if(e.tagName!==l.tagName)return{bail:"root-tag"};if(e.getElementsByTagName("template").length||l.getElementsByTagName("template").length)return{bail:"script-or-template"};if(!Sa(e,l,r.ignoreAttribute,r.attributeMerge))return{bail:"root-attrs"};let{ignored:a,remoteWins:i}=r,f=co(r.scripts.merge===!1?null:r.scripts.mergeTags,o),y=ie=>{let x=f(ie);return x!==null?x:u.base(ie)||null},c=ie=>{let x=f(ie);return x!==null?x:u.remote(ie)||null},g=[],w=[],N=new Map,R=new Map,m={same:N,differ:R},d=ie=>({bail:ie,comparisons:m}),p=(ie,x,Z=!0)=>{if(N.get(ie)===x)return!0;if(R.get(ie)===x)return!1;if(Ma.compared++,Z&&ie.isEqualNode(x))return N.set(ie,x),!0;let ue=ie.nodeType===x.nodeType;if(ue&&ie.nodeType===1){if(ue=ur(ie,x),ue){let fe=ie.firstChild,Pe=x.firstChild;for(;fe&&Pe;fe=fe.nextSibling,Pe=Pe.nextSibling)if(!p(fe,Pe,!1)){ue=!1;break}(fe||Pe)&&(ue=!1)}}else ue&&(ue=ie.isEqualNode(x));return(ue?N:R).set(ie,x),ue},O=e,b=l,A=!1,E=()=>{N.set(O,b);for(let ie=0;ie<g.length;ie++)N.set(g[ie],w[ie]);return d("equal")};for(;;){let ie=O.childNodes,x=b.childNodes;if(ie.length!==x.length)break;let Z=et=>p(ie[et],x[et])?(N.set(ie[et],x[et]),!1):!0,ue=-1,fe=-1;for(let et=0;et<ie.length;et++){if(ie[et].nodeType!==1)continue;let ct=0;for(let Qe=ie[et].firstElementChild;Qe;Qe=Qe.nextElementSibling)ct++;ct>=fe&&(fe=ct,ue=et)}let Pe=[],Ve=!1;for(let et=0;et<ie.length&&Pe.length<2;et++)et!==ue&&Z(et)&&Pe.push(et);if(ue>=0&&Pe.length<2&&(Pe.length===0&&ur(O,b)?(Pe.push(ue),Ve=!0):Z(ue)&&Pe.push(ue)),Pe.length!==1){if(!A&&Pe.length===0&&ur(O,b))return E();break}let Oe=ie[Pe[0]],tt=x[Pe[0]];if(A=A||!Ve,A&&R.set(Oe,tt),Oe.nodeType!==1||tt.nodeType!==1||Oe.tagName!==tt.tagName)break;if(y(Oe)!==c(tt)){if(!A&&p(Oe,tt))return E();break}g.push(O),w.push(b),O=Oe,b=tt}R.set(O,b);for(let ie=0;ie<g.length;ie++)R.set(g[ie],w[ie]);if(O===e||O.tagName==="HEAD"||O.tagName==="BODY")return d("root-level");if(g.length<2||g[1].tagName!=="BODY")return d("not-in-body");if(a(O)||a(b))return d("ignored-ancestor");if(i(O)||i(b))return d("remote-wins-ancestor");for(let ie of g)if(Aa.has(ie.tagName))return d("form-ancestor");if(O.tagName==="SCRIPT"||O.getElementsByTagName("script").length||b.getElementsByTagName("script").length)return d("script-or-template");let B=n(O);if(!B||B.nodeType!==1||B.tagName!==O.tagName)return d("no-live-twin");if(!t.contains(B))return d("live-detached");for(let ie of g){let x=n(ie);if(!x||x.nodeType!==1)return d("ancestor-live")}let T=u.base===kn&&u.remote===kn&&a===kr,M=new Set,D=new Set,z=[],U=null,j=ie=>{ie&&(M.has(ie)?D.add(ie):M.add(ie))},k=(ie,x)=>{let Z=f(ie),ue=Z!==null?Z:u.base(ie)||null;return ue!==(Z!==null?Z:u.remote(x)||null)?!1:(j(ue),!0)},v=(ie,x)=>{for(let Z=ie.firstElementChild,ue=x.firstElementChild;Z;Z=Z.nextElementSibling,ue=ue.nextElementSibling){let fe=a(Z);if(fe!==a(ue)||!fe&&(!k(Z,ue)||!v(Z,ue)))return!1}return!0},J=ie=>{let x=ie+1<g.length?g[ie+1]:O;for(let Z=g[ie].firstElementChild,ue=w[ie].firstElementChild;Z;Z=Z.nextElementSibling,ue=ue.nextElementSibling){if(Z===x){let Ve=ie+1<g.length?J(ie+1):null;if(Ve)return Ve;continue}let fe=a(Z);if(fe!==a(ue))return"outside-id-changed";if(fe)continue;let Pe=n(Z);if(!Pe||Pe.nodeType!==1)return"sibling-live";if(z.push([Z,ue]),!T&&(!k(Z,ue)||!v(Z,ue)))return"outside-id-changed";ie===0&&Z.tagName==="HEAD"&&y(Z)&&(U=[Z,ue])}return null},q=J(0);if(q)return d(q);let V=new Set(g),Ae=null;if(u.base===kn){Ae=[];for(let ie of e.querySelectorAll(Bl))ie===O||V.has(ie)||(O.contains(ie)?Ae.push(ie):T&&j(y(ie)))}let Ie=new Set,De=new Set,ce=new Set,Ne=bo(g,O,y,a,M,Ie,Ae,De),Xe=bo(w,b,c,a,M,Ie,u.remote===kn&&b.querySelectorAll(Bl),ce);return U&&(D.has(y(U[0]))||Ie.has(y(U[0])))&&(U=null),{scope:{chain:g,root:O,onChain:V,baseIndex:Ne,remoteIndex:Xe,baseDropped:De,remoteDropped:ce,head:U,same:N,differ:R,dropped:[...ko(e,y,a,D,De,u.base),...ko(l,c,a,D,ce,u.remote)],held:ie=>{for(let x=1;x<g.length;x++)if(ie.map.get(g[x])!==w[x])return!1;for(let[x,Z]of z)if(ie.map.get(x)!==Z)return!1;return!0}}}}var wo=Symbol("hyper-morph-duplicate-key"),yo=[e=>e.getAttribute("data-id"),e=>e.getAttribute("id")];function gl(e,l){return l.map(t=>{let n=new Map;for(let r of e){if(r.nodeType!==1)continue;let u=t(r);u==null||u===""||n.set(u,n.has(u)?wo:r)}return n})}function vo(e,l,t,n){for(let r=0;r<n.length;r++){let u=n[r](e);if(u==null||u===""||l[r].get(u)!==e)continue;let o=t[r].get(u);if(!(!o||o===wo)&&o.tagName===e.tagName)return o}return null}function Yn(e,l,t){for(let n=0;n<t.length;n++){let r=t[n](e);if(!(r==null||r==="")&&l[n].get(r)===e)return!0}return!1}function Oa(e,l,t={}){let n=t.skip||(()=>!1),r=t.ignoreAttr||(()=>!1),u=t.tiers&&t.tiers.length?t.tiers:yo,o=null;function a(){return o||(o=gl([e,...e.querySelectorAll("*")],u)),o}let i=null;function f(){return i||(i=gl([l,...l.querySelectorAll("*")],u)),i}function y(M){return!M.parentElement||!M.parentElement.parentElement}function c(M,D,z){return y(M)||Yn(M,a(),u)?(z.push({type:"subtree",el:M,base:D}),!1):!0}function g(M,D){let z=[];for(let U of M.attributes)r(M,U.name)||D.getAttribute(U.name)!==U.value&&z.push(U.name);for(let U of D.attributes)r(M,U.name)||M.hasAttribute(U.name)||z.push(U.name);return z}function w(M){let D=[],z=null,U=()=>{z!==null&&(D.push({nodeType:3,nodeValue:z}),z=null)};for(let j of M.childNodes){if(j.nodeType===3){z=(z===null?"":z)+j.nodeValue;continue}j.nodeType===1&&n(j)||(U(),(j.nodeType===1||j.nodeType===8)&&D.push(j))}return U(),D}function N(M,D){if(M.nodeType!==D.nodeType)return!1;if(M.nodeType!==1)return!0;if(M.tagName!==D.tagName)return!1;for(let z of u){let U=z(M),j=z(D);if(U!=null&&U!==""&&j!=null&&j!==""&&U!==j)return!1}return!0}function R(M){let D="";for(let z of M)z.nodeType===3&&z.nodeValue.trim()!==""?D+="\0"+z.nodeValue:z.nodeType===8&&(D+=""+z.nodeValue);return D}function m(M,D,z){let U=w(M),j=w(D);if(U.length===j.length){let ie=!0;for(let x=0;x<U.length;x++)if(!N(U[x],j[x])){ie=!1;break}if(ie){for(let x=0;x<U.length;x++){let Z=U[x];if(Z.nodeType===1){if(d(Z,j[x],z))return!0}else if(Z.nodeValue!==j[x].nodeValue)return!0}return!1}}let k=U.filter(ie=>ie.nodeType===1),v=j.filter(ie=>ie.nodeType===1);if(R(U)!==R(j))return!0;let J=gl(k,u),q=gl(v,u),V=[],Ae=new Set,Ie=[];for(let ie of k){let x=vo(ie,J,q,u);x&&!Ae.has(x)?(V.push([ie,x]),Ae.add(x)):Ie.push(ie)}let De=[];for(let ie of Ie)Yn(ie,J,u)?z.push({type:"subtree",el:ie,base:null}):De.push(ie);let ce=[];for(let ie of v)Ae.has(ie)||(Yn(ie,q,u)?z.push({type:"deletion",el:ie}):ce.push(ie));if(De.length!==ce.length)return!0;for(let ie=0;ie<De.length;ie++)if(!N(De[ie],ce[ie]))return!0;let Ne=new Map(V);for(let ie=0;ie<De.length;ie++)Ne.set(De[ie],ce[ie]);let Xe=-1;for(let ie of k){let x=Ne.get(ie);if(!x)continue;let Z=v.indexOf(x);if(Z<Xe)return!0;Xe=Z}for(let ie=0;ie<De.length;ie++)if(d(De[ie],ce[ie],z))return!0;for(let[ie,x]of V)if(d(ie,x,z))return!0;return!1}function d(M,D,z){if(M.tagName!==D.tagName)return c(M,D,z);let U=g(M,D),j=[];if(m(M,D,j))return c(M,D,z);if(U.length){if(!y(M)&&!Yn(D,f(),u))return!0;z.push({type:"attrs",el:M,names:U,base:D})}return z.push(...j),!1}let p=[],O=g(e,l);O.length&&p.push({type:"attrs",el:e,names:O});let b=(M,D)=>Array.from(M.children).find(z=>z.tagName===D)||null,A=b(e,"HEAD"),E=b(l,"HEAD");if(A&&E){let M=[];d(A,E,M),M.length&&p.push({type:"head",el:A})}else(A||E)&&A&&p.push({type:"head",el:A});let B=b(e,"BODY"),T=b(l,"BODY");return B&&T?d(B,T,p):B&&p.push({type:"subtree",el:B,base:null}),{entries:p}}function Ca(e,l,t={}){let n=t.tiers&&t.tiers.length?t.tiers:yo,r=e.documentElement,u=[],o=0,a=d=>({ok:!1,placed:u,held:d,skippedAttrs:o});if(!r)return a(null);function i(d){let p=[d,...d.querySelectorAll("*")];return gl(p,n)}let f=i(r),y=new Map,c=d=>{let p=d.getRootNode(),O=y.get(p);if(!O){let b=p.nodeType===9?p.documentElement:p;O=i(b),y.set(p,O)}return O};function g(d){if(!d.parentElement&&d.tagName==="HTML")return r;if(d.parentElement&&!d.parentElement.parentElement&&d.parentElement.tagName==="HTML"){if(d.tagName==="BODY")return e.body||null;if(d.tagName==="HEAD")return e.head||null}return null}function w(d){return g(d)||vo(d,c(d),f,n)}function N(d){if(!d)return null;let p=w(d);return p&&p.isConnected?p:null}function R(d){for(let p=0;p<n.length;p++){let O=n[p](d);O!=null&&O!==""&&f[p].set(O,d)}}for(let d of l){if(d.type!=="deletion")continue;let p=w(d.el);p&&p!==r&&p.remove()}let m=l.filter(d=>d.type!=="deletion").sort((d,p)=>d.el===p.el?0:d.el.compareDocumentPosition(p.el)&Node.DOCUMENT_POSITION_FOLLOWING?-1:1);for(let d of m){if(d.type==="head"){let T=e.importNode(d.el,!0);e.head?e.head.replaceWith(T):r.insertBefore(T,r.firstChild),u.push({entry:d,imported:T});continue}if(d.type==="attrs"){let T=N(d.el)||N(d.base);if(!T){o++;continue}for(let M of d.names)d.el.hasAttribute(M)?T.setAttribute(M,d.el.getAttribute(M)):T.removeAttribute(M);continue}let p=d.el;if(g(p))return a(d);let O=N(p)||N(d.base);if(O){let T=e.importNode(p,!0);O.replaceWith(T),R(T),u.push({entry:d,imported:T});continue}if(d.base!=null&&!Yn(d.base,c(d.base),n)||!Yn(p,c(p),n))return a(d);let b=p.parentElement;if(!b)return a(d);let A=N(b);if(!A)return a(d);let E=null;for(let T=p.previousElementSibling;T;T=T.previousElementSibling){let M=N(T);if(M&&M.parentNode===A){E=M;break}}let B=e.importNode(p,!0);if(E)A.insertBefore(B,E.nextSibling);else{let T=Array.prototype.indexOf.call(b.children,p);A.insertBefore(B,A.children[T]||null)}R(B),u.push({entry:d,imported:B})}return{ok:!0,placed:u,held:null,skippedAttrs:o}}var Ra='[editor-ui],[clay~="editor-ui"],[save-ignore],[snapshot-remove],[no-snapshot],[no-save],[save-remove],[freeze],[save-freeze],[clay~="no-save"],[clay~="no-snapshot"],[clay~="freeze"]',Ia='[editor-ui],[clay~="editor-ui"],[no-undo],[clay~="no-undo"]',Pa='[no-undo]:not([editor-ui]):not([clay~="editor-ui"]),[clay~="no-undo"]:not([editor-ui]):not([clay~="editor-ui"])';function Wa(e){if(e.tagName!=="LINK"&&e.tagName!=="SCRIPT")return!1;let l=e.getAttribute("src")||e.getAttribute("href")||"";return/^(chrome|moz|safari-web)-extension:/.test(l)}function Ba(e,l,t,n){if(l==null)return;if(typeof l=="string")return l;let r=l;if(r.nodeType===9){let u=e.getAttribute("id");r=u&&r.getElementById(u)||(e.tagName==="BODY"?r.body:e.tagName==="HTML"?r.documentElement:r.body&&r.body.firstElementChild)}if((!r||r.nodeType!==1||r.tagName!==e.tagName)&&(r=Da(e,l,n)),!!r)return t?Array.from(r.childNodes):r}function Da(e,l,t){let n=l.nodeType===9?l.documentElement:l;if(!n||n.nodeType!==1)return null;let r=new Map,u=[n,...n.querySelectorAll("script")];for(let i of u){let f=Cl(i,t);f&&!r.has(f.key)&&r.set(f.key,i.textContent)}if(!r.size)return null;let o=e.cloneNode(!0),a=!1;for(let i of[o,...o.querySelectorAll("script")]){let f=Cl(i,t);f&&r.has(f.key)&&(i.textContent=r.get(f.key),a=!0)}return a?o:null}function xo(e,l){if(typeof e=="string"||e.nodeType===9)return e;if(e.nodeType===1&&e===e.ownerDocument.documentElement)return e.ownerDocument;let t=l.implementation.createHTMLDocument(""),n=e.nodeType===1&&e.tagName==="HTML"?e:null;if(n)return t.replaceChild(t.adoptNode(n),t.documentElement),t;let r=e.nodeType===11?Array.from(e.childNodes):e.nodeType?[e]:Array.from(e);for(let u of r)t.body.appendChild(t.adoptNode(u));return t}function No(e,l,t={}){let n=t||{};if(!n.head?.block)return To(e,l,n);try{return To(e,l,n)}catch(r){return Promise.reject(r)}}function To(e,l,t){let n=t.policy||"sync",r=n==="raw"?void 0:(i,f)=>Wa(i)||(n==="history"?!(f&&i.matches(Pa))&&i.matches(Ia):i.matches(Ra)),u=t.callbacks||{},o={ignore:r,hooks:u,protectFocusedValue:t.ignoreActiveValue===!0?"subtree":!1,restoreFocus:t.restoreFocus!==!1,formState:t.formStateSync||"attribute",scripts:{execute:t.scripts?.handle!==!1,merge:t.scripts?.merge!==!1,mergeTags:t.scripts?.mergeTags||[]},head:{awaitLoads:!!t.head?.block,preserve:t.head?.shouldPreserve||(()=>!1)}};if(typeof t.key=="function"&&(o.identity={base:t.key,local:t.key,remote:t.key}),e&&e.nodeType===9)return ml(Object.assign({},o,{live:e,base:t.scripts?.mergeBase||null,remote:xo(l,e)}));if(e.tagName==="HTML"&&e.parentNode&&e.parentNode.nodeType===9){let i=Object.assign({},o,{live:e.ownerDocument,base:t.scripts?.mergeBase||null,remote:xo(l,e.ownerDocument)});return ml(i)}t.morphStyle==="innerHTML"&&(o.children=!0);let a=Ba(e,t.scripts?.mergeBase,!!o.children,o.scripts.mergeTags);return a!==void 0&&(o.base=a),hr(e,l,o)}var ja=new Set(["live","base","remote","local","identity","ignore","opaque","remoteWins","ignoreAttribute","attributeMerge","conflicts","protectFocusedValue","restoreFocus","head","scripts","formState","children","hooks","beforeApply","fastPath","keepLiveOnly","lineage"]),un=()=>{};function pl(e,l=[]){if(!e||typeof e!="object")throw new TypeError("options object required");for(let a of Object.keys(e))if(!ja.has(a))throw new TypeError(`unknown option "${a}"`);let t=Object.assign({beforeNodeAdded:un,afterNodeAdded:un,beforeNodeRemoved:un,afterNodeRemoved:un,beforeNodeMorphed:un,afterNodeMorphed:un,beforeAttributeUpdated:un},e.hooks||{}),n=e.conflicts||"remote";if(!["remote","local","both"].includes(n))throw new TypeError("conflicts must be remote, local or both");let r=e.formState||"attribute";if(!["attribute","property"].includes(r))throw new TypeError("formState must be attribute or property");let u=e.protectFocusedValue;if(u!==void 0&&typeof u!="boolean"&&u!=="subtree")throw new TypeError('protectFocusedValue must be a boolean or "subtree"');if(e.fastPath!==void 0&&typeof e.fastPath!="boolean")throw new TypeError("fastPath must be a boolean");if(e.keepLiveOnly!==void 0&&typeof e.keepLiveOnly!="boolean")throw new TypeError("keepLiveOnly must be a boolean");if(e.attributeMerge!==void 0&&typeof e.attributeMerge!="function")throw new TypeError("attributeMerge must be a function");let o=e.lineage;if(o!==void 0&&(!o||typeof o!="object"||typeof o.onResult!="function"||!o.elements||typeof o.elements.length!="number"))throw new TypeError("lineage must be { elements, onResult }");return{ignored:wr(e.ignore,l),remoteWins:wr(e.remoteWins,l),ignoreAttribute:typeof e.ignoreAttribute=="function"?e.ignoreAttribute:()=>!1,attributeMerge:typeof e.attributeMerge=="function"?e.attributeMerge:()=>null,opaque:typeof e.opaque=="function"?e.opaque:()=>!1,conflicts:n,protectFocusedValue:u===void 0?!0:u,restoreFocus:e.restoreFocus!==!1,head:Object.assign({awaitLoads:!1,preserve:()=>!1},e.head||{}),scripts:Object.assign({execute:!0,merge:!0,mergeTags:[]},e.scripts||{}),formState:r,hooks:t,children:!!e.children,beforeApply:typeof e.beforeApply=="function"?e.beforeApply:null,fastPath:e.fastPath===!0,keepLiveOnly:e.keepLiveOnly===!0,lineage:o||null}}function el(e){if(typeof e=="function")return e;if(e&&typeof e=="object"&&e.map){if(typeof e.first=="function")return e.first;if(typeof e.then=="function")return e.then}return kn}function tl(e,l){if(typeof e=="function")return e;if(e&&typeof e=="object"&&e.map){let t=yr(l,e.map),n=typeof e.then=="function"?e.then:kn;if(typeof e.first=="function"){let r=e.first;return u=>r(u)||t.get(u)||n(u)}return r=>t.get(r)||n(r)}return kn}function Mo(e,l,t,n={}){let r=w=>w&&w.nodeType===9?w.documentElement:w,u=r(l),o=r(t),a=r(e)||u;if(n.lineage!==void 0)throw new TypeError("lineage needs a live apply: use mergeDocument, morphDocument or morphElement");let i=Object.assign({},n);delete i.live,delete i.base,delete i.remote;let f=pl(i,[a,u,o].filter(Boolean)),y=n.identity||{},c=Kn(),g=ar(a,u,o,{identity:{base:tl(y.base,a),local:tl(y.local,u),remote:tl(y.remote,o)},authored:{base:el(y.base),local:el(y.local),remote:el(y.remote)},skipUnchanged:f.hooks.beforeNodeMorphed===un&&f.hooks.afterNodeMorphed===un,ignored:f.ignored,remoteWins:f.remoteWins,ignoreAttribute:f.ignoreAttribute,attributeMerge:f.attributeMerge,conflicts:f.conflicts,mergeTags:f.scripts.merge===!1?null:f.scripts.mergeTags,baseURI:u.ownerDocument&&u.ownerDocument.baseURI||"about:blank",localIsBase:!e||e===l,childrenOnly:f.children,stats:c});return delete g.recoveryLinks,delete g.lineage,g}function dr({liveRoot:e,baseRoot:l,localRoot:t,remoteRoot:n,toLive:r,options:u,identity:o,childrenOnly:a,isDocument:i}){let f=pl(u,[e,l,t,n].filter(Boolean));if(f.ignored(e)){let k=cr(),v=f.lineage?Ol(f.lineage,e,k):null;return{report:k,loads:[],lineage:v}}let y=e.ownerDocument,c=f.lineage?Jr(f.lineage,{liveRoot:e,localRoot:t,toLive:r}):null,g=f.scripts.execute?Ci(e,f.ignored,y.baseURI):null,w=Kn(),N=f.hooks.beforeNodeMorphed===un&&f.hooks.afterNodeMorphed===un,R={identity:{base:tl(o.base,l||t),local:tl(o.local,t),remote:tl(o.remote,n)},authored:{base:el(o.base),local:el(o.local),remote:el(o.remote)},ignored:f.ignored,remoteWins:f.remoteWins,ignoreAttribute:f.ignoreAttribute,attributeMerge:f.attributeMerge,conflicts:f.conflicts,mergeTags:f.scripts.merge===!1?null:f.scripts.mergeTags,baseURI:y.baseURI,localIsBase:!l,childrenOnly:a,skipUnchanged:N,lineage:c?{locals:c.locals}:null},m=f.fastPath&&i&&!a&&N&&l===t,d=null,p=null;if(m){let k=Ea({baseRoot:l,remoteRoot:n,liveRoot:e,toLive:r,o:f,identity:R.identity,baseURI:y.baseURI});R.comparisons=k.comparisons||k.scope,k.bail?p=k.bail:(d=ar(l,t,n,Object.assign({},R,{stats:w,scope:k.scope})),d||(p="chain-unpaired",w=Kn()))}d||(d=ar(l||t,t,n,Object.assign({},R,{stats:w}))),m&&(w.fastPathAttempted=1,w.fastPathTaken=p?0:1,w.fastPathFallback=p),d.recoveryLinks&&["beforeNodeMorphed","beforeNodeAdded","beforeNodeRemoved","beforeAttributeUpdated"].some(k=>f.hooks[k]!==un)&&Ji(d.conflicts,d.recoveryLinks,r),f.beforeApply&&f.beforeApply(d.doc);let O=globalThis.__hyperMorphProfile,b=O?performance.now():0,A=xa(e,d.root,d,{toLive:r,localRoot:t,ignored:f.ignored,ignoreAttribute:f.ignoreAttribute,opaque:f.opaque,formState:f.formState,protectFocusedValue:f.protectFocusedValue,restoreFocus:f.restoreFocus,preserve:f.head.preserve,hooks:f.hooks,childrenOnly:a,keepLiveOnly:f.keepLiveOnly,trackInserted:!!c});O&&(O.apply=(O.apply||0)+(performance.now()-b));let E=[];if(f.head.awaitLoads)for(let k of A.applied){if(k.kind!=="insert"||k.node.nodeType!==1)continue;let v=k.node;v.tagName==="LINK"&&/\bstylesheet\b/i.test(v.getAttribute("rel")||"")&&v.getAttribute("href")&&v.closest("head")&&E.push(new Promise(J=>{v.addEventListener("load",()=>J()),v.addEventListener("error",()=>J())}))}let B=null,T=null;if(g){let k=Ri(e,g,{ignored:f.ignored,skip:A.mergedScriptsLive,baseURI:y.baseURI,beforeNodeAdded:f.hooks.beforeNodeAdded,afterNodeAdded:f.hooks.afterNodeAdded,trackRecovery:!!d.recoveryLinks});E.push(...k.loads),B=k.swapped,T=k.vetoed}let M=k=>B&&B.get(k)||k,D=k=>{if(A.keptRuns.has(k))return A.runOf.get(k);let v=A.liveOf.get(k)||A.heldBy.get(k)||A.insertedLive.get(k);return v?M(v):null},z=k=>{let v=k&&A.liveOf.get(k);return v?M(v):null},U=k=>{let v=k&&D(k);return Array.isArray(v)?v[0]:v};if(d.recoveryLinks){let k=(v,J,q)=>(J.namespaceURI?v.getAttributeNS(J.namespaceURI,J.localName):v.getAttribute(J.qualifiedName))===q;na(d.conflicts,d.recoveryLinks,{lookup:D,vetoed:A.vetoed,vetoedAttrs:A.vetoedAttrs,removedVetoes:A.removedVetoes,vetoedLive:T,liveAttr:k,ignored:f.ignored,liveRoot:e})}let j={applied:A.applied,decisions:d.decisions.map(k=>Object.assign({},k,{node:k.node?z(k.node):null,el:k.el?z(k.el):null,applied:!!(k.node?z(k.node):k.el&&z(k.el))})),conflicts:d.conflicts.map(k=>Object.assign({},k,{node:k.node?k.kind==="text"&&k.recovery.subject.nodeType===8?U(k.node):z(k.node):k.node,el:k.el?k.kind==="structure"?U(k.el):z(k.el):k.el})),localDiverged:d.localDiverged,identities:A.identities,moved:A.moved,replaced:A.replaced,stats:w};return c&&(j.lineage=c.finish(d.lineage,D)),{report:j,loads:E,lineage:c}}var Ao=new WeakMap;function cr(){return{applied:[],decisions:[],conflicts:[],localDiverged:!1,identities:[],moved:[],replaced:[],stats:Kn()}}function ml(e){let l=e||{},t=l.live;if(!t||t.nodeType!==9)throw new TypeError("live must be a Document");return l.lineage===void 0?So(l):Qr(l,l.live.documentElement,n=>So(n))}function So(e){let l=e||{},t=l.live;if(!t||t.nodeType!==9)throw new TypeError("live must be a Document");let n=Ao.get(t);n||(n=br(t),Ao.set(t,n));let r=n("remote",l.remote),u=typeof l.base=="string"&&l.base===""?null:l.base,o=u?n("base",u):null,a=l.local?l.local.root:t.documentElement,i=l.local?l.local.toLive:g=>g;Ho(t,r);let{report:f,loads:y,lineage:c}=dr({liveRoot:t.documentElement,baseRoot:o?o.documentElement:null,localRoot:a,remoteRoot:r.documentElement,toLive:i,options:l,identity:l.identity||{},childrenOnly:!1,isDocument:!0});return c?.deliver(f),Promise.all(y).then(()=>f)}function Eo(e,l,t={}){return ml(Object.assign({},t,{live:e,base:null,remote:l}))}function Oo(e,l){if(e==null)return{root:l.createElement("template"),first:null};if(typeof e=="string"){let n=/^\s*(?:<!--[\s\S]*?-->\s*)*(?:<!doctype[^>]*>\s*)?<(html|body)[\s>]/i.exec(e);if(n){let u=Vl(e,l),o=n[1].toLowerCase()==="html"?u.documentElement:u.body;return{root:o,first:o}}let r=l.createElement("template");return r.innerHTML=e,{root:r,first:r.content.firstElementChild}}if(e.nodeType===9)return{root:e.documentElement,first:e.documentElement};if(e.nodeType===1){let n=l.createElement("template"),r=e.isConnected;return n.content.appendChild(r?l.importNode(e,!0):e),{root:n,first:e}}if(e.nodeType===11){let n=l.createElement("template");return n.content.appendChild(e),{root:n,first:n.content.firstElementChild}}let t=l.createElement("template");for(let n of Array.from(e))t.content.appendChild(n.parentNode?l.importNode(n,!0):n);return{root:t,first:t.content.firstElementChild}}function hr(e,l,t={}){if(!e||e.nodeType!==1)throw new TypeError("oldEl must be an Element");return t.lineage===void 0?Co(e,l,t):Qr(t,e,n=>Co(e,l,n))}function Co(e,l,t={}){let n=e.ownerDocument,{base:r,...u}=t,o=!!u.children,a=pl(u,[e]);if(a.ignored(e)){let R=cr();return a.lineage&&Ol(a.lineage,e,R).deliver(R),Promise.resolve(R)}let i=Oo(l,n),f=r!=null?Oo(r,n):null,y,c=null;if(o)y=i.root,c=f?f.root:null;else{if(y=i.first,c=f?f.first:null,!y){let R=pl(u),m=R.lineage?Ol(R.lineage,e,{}):null;R.hooks.beforeNodeRemoved(e)!==!1&&(e.remove(),R.hooks.afterNodeRemoved(e));let d={applied:[{kind:"remove",node:e,parent:null}],decisions:[],conflicts:[],localDiverged:!1,identities:[],moved:[],replaced:[e],stats:Kn()};return m&&(d.lineage=m.result,m.deliver(d)),Promise.resolve(d)}if(y.tagName!==e.tagName){let R=pl(u,[e,y]);if(R.hooks.beforeNodeMorphed(e,y)===!1){let p=cr();return R.lineage&&Ol(R.lineage,e,p).deliver(p),Promise.resolve(p)}let m=dr({liveRoot:e,baseRoot:c&&c.tagName===e.tagName?c:null,localRoot:e,remoteRoot:y,toLive:p=>p,options:u,identity:u.identity||{},childrenOnly:!0,isDocument:!1}),d=rn(y)?er(y,n):n.importNode(y,!1);if(!rn(d))for(;e.firstChild;)d.appendChild(e.firstChild);return R.hooks.beforeNodeAdded(d)===!1||R.hooks.beforeNodeRemoved(e)===!1?(lr(m.report.conflicts,e,e),m.lineage&&(m.report.lineage=m.lineage.recheck(),m.lineage.deliver(m.report)),Promise.resolve(m.report)):(e.replaceWith(d),lr(m.report.conflicts,e,d),R.hooks.afterNodeRemoved(e),R.hooks.afterNodeAdded(d),R.hooks.afterNodeMorphed(e,y),m.report.replaced.push(d),m.report.applied.push({kind:"insert",node:d,parent:d.parentNode},{kind:"remove",node:e,parent:d.parentNode}),m.lineage&&(m.report.lineage=m.lineage.remapRoot(e,d),m.lineage.deliver(m.report)),Promise.all(m.loads).then(()=>m.report))}}let{report:g,loads:w,lineage:N}=dr({liveRoot:e,baseRoot:c,localRoot:e,remoteRoot:y,toLive:R=>R,options:u,identity:u.identity||{},childrenOnly:o,isDocument:!1});return N?.deliver(g),Promise.all(w).then(()=>g)}var Ua={mergeDocument:ml,morphDocument:Eo,morphElement:hr,merge3:Mo,morph:No};return Uo(mr)})(),Io=il.morph;window.__hyperclayNoAutoExport||(window.hyperclay=window.hyperclay||{},window.hyperclay.HyperMorph=il,window.hyperclay.morph=Io,window.HyperMorph=il,window.morph=Io,window.h=window.hyperclay);var Va=il.findChangedRoots,za=il.spliceProtected,Ka=il;export{il as a,Io as b,Va as c,za as d,Ka as e};
|